| 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 9d d1 4b 04 a9 02 00 00 | ontainer>.PK..........!R..K..... |
| 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 35 2e 31 3c 2f 64 63 3a 69 64 65 6e 74 69 66 69 65 72 3e 0a 20 20 20 20 3c 64 63 3a | :0.15.1</dc:identifier>.....<dc: |
| 02a0 | 74 69 74 6c 65 3e 5a 69 67 20 4c 61 6e 67 75 61 67 65 20 52 65 66 65 72 65 6e 63 65 20 28 30 2e | title>Zig.Language.Reference.(0. |
| 02c0 | 31 35 2e 31 29 3c 2f 64 63 3a 74 69 74 6c 65 3e 0a 20 20 20 20 3c 64 63 3a 6c 61 6e 67 75 61 67 | 15.1)</dc:title>.....<dc:languag |
| 02e0 | 65 3e 65 6e 3c 2f 64 63 3a 6c 61 6e 67 75 61 67 65 3e 0a 20 20 20 20 3c 6d 65 74 61 20 70 72 6f | e>en</dc:language>.....<meta.pro |
| 0300 | 70 65 72 74 79 3d 22 64 63 74 65 72 6d 73 3a 6d 6f 64 69 66 69 65 64 22 3e 32 30 32 31 2d 30 31 | perty="dcterms:modified">2021-01 |
| 0320 | 2d 30 31 54 30 30 3a 30 30 3a 30 30 5a 3c 2f 6d 65 74 61 3e 0a 20 20 3c 2f 6d 65 74 61 64 61 74 | -01T00:00:00Z</meta>...</metadat |
| 0340 | 61 3e 0a 20 20 3c 6d 61 6e 69 66 65 73 74 3e 0a 20 20 20 20 3c 69 74 65 6d 20 69 64 3d 22 6e 61 | a>...<manifest>.....<item.id="na |
| 0360 | 76 22 20 68 72 65 66 3d 22 6e 61 76 2e 78 68 74 6d 6c 22 20 6d 65 64 69 61 2d 74 79 70 65 3d 22 | v".href="nav.xhtml".media-type=" |
| 0380 | 61 70 70 6c 69 63 61 74 69 6f 6e 2f 78 68 74 6d 6c 2b 78 6d 6c 22 20 70 72 6f 70 65 72 74 69 65 | application/xhtml+xml".propertie |
| 03a0 | 73 3d 22 6e 61 76 22 2f 3e 0a 20 20 20 20 3c 69 74 65 6d 20 69 64 3d 22 69 6e 64 65 78 22 20 68 | s="nav"/>.....<item.id="index".h |
| 03c0 | 72 65 66 3d 22 69 6e 64 65 78 2e 78 68 74 6d 6c 22 20 6d 65 64 69 61 2d 74 79 70 65 3d 22 61 70 | ref="index.xhtml".media-type="ap |
| 03e0 | 70 6c 69 63 61 74 69 6f 6e 2f 78 68 74 6d 6c 2b 78 6d 6c 22 2f 3e 0a 20 20 3c 2f 6d 61 6e 69 66 | plication/xhtml+xml"/>...</manif |
| 0400 | 65 73 74 3e 0a 20 20 3c 73 70 69 6e 65 3e 0a 20 20 20 20 3c 69 74 65 6d 72 65 66 20 69 64 72 65 | est>...<spine>.....<itemref.idre |
| 0420 | 66 3d 22 69 6e 64 65 78 22 2f 3e 0a 20 20 3c 2f 73 70 69 6e 65 3e 0a 3c 2f 70 61 63 6b 61 67 65 | f="index"/>...</spine>.</package |
| 0440 | 3e 0a 50 4b 03 04 14 00 00 00 00 00 00 00 21 52 0c 6a f4 9d 88 01 00 00 88 01 00 00 0f 00 00 00 | >.PK..........!R.j.............. |
| 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 | 35 2e 31 29 3c 2f 74 69 74 6c 65 3e 3c 2f 68 65 61 64 3e 0a 20 20 3c 62 6f 64 79 3e 0a 20 20 20 | 5.1)</title></head>...<body>.... |
| 0540 | 20 3c 6e 61 76 20 65 70 75 62 3a 74 79 70 65 3d 22 74 6f 63 22 20 69 64 3d 22 74 6f 63 22 3e 0a | .<nav.epub:type="toc".id="toc">. |
| 0560 | 20 20 20 20 20 20 3c 68 31 3e 43 6f 6e 74 65 6e 74 73 3c 2f 68 31 3e 0a 20 20 20 20 20 20 3c 6f | ......<h1>Contents</h1>.......<o |
| 0580 | 6c 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 69 6e 64 65 78 2e 78 68 | l>.........<li><a.href="index.xh |
| 05a0 | 74 6d 6c 22 3e 5a 69 67 20 4c 61 6e 67 75 61 67 65 20 52 65 66 65 72 65 6e 63 65 20 28 30 2e 31 | tml">Zig.Language.Reference.(0.1 |
| 05c0 | 35 2e 31 29 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 6f 6c 3e 0a 20 20 20 20 3c 2f | 5.1)</a></li>.......</ol>.....</ |
| 05e0 | 6e 61 76 3e 0a 20 20 3c 2f 62 6f 64 79 3e 0a 3c 2f 68 74 6d 6c 3e 0a 50 4b 03 04 14 00 00 00 00 | nav>...</body>.</html>.PK....... |
| 0600 | 00 00 00 21 52 8b e8 b0 a5 4e c9 0e 00 4e c9 0e 00 11 00 00 00 4f 45 42 50 53 2f 69 6e 64 65 78 | ...!R....N...N.......OEBPS/index |
| 0620 | 2e 78 68 74 6d 6c 3c 3f 78 6d 6c 20 76 65 72 73 69 6f 6e 3d 22 31 2e 30 22 20 65 6e 63 6f 64 69 | .xhtml<?xml.version="1.0".encodi |
| 0640 | 6e 67 3d 22 75 74 66 2d 38 22 3f 3e 0a 0a 3c 68 74 6d 6c 20 78 6d 6c 6e 73 3d 22 68 74 74 70 3a | ng="utf-8"?>..<html.xmlns="http: |
| 0660 | 2f 2f 77 77 77 2e 77 33 2e 6f 72 67 2f 31 39 39 39 2f 78 68 74 6d 6c 22 20 6c 61 6e 67 3d 22 65 | //www.w3.org/1999/xhtml".lang="e |
| 0680 | 6e 22 3e 0a 20 20 3c 68 65 61 64 3e 0a 20 20 20 20 3c 6d 65 74 61 20 63 68 61 72 73 65 74 3d 22 | n">...<head>.....<meta.charset=" |
| 06a0 | 75 74 66 2d 38 22 2f 3e 0a 20 20 20 20 3c 6d 65 74 61 20 6e 61 6d 65 3d 22 76 69 65 77 70 6f 72 | utf-8"/>.....<meta.name="viewpor |
| 06c0 | 74 22 20 63 6f 6e 74 65 6e 74 3d 22 77 69 64 74 68 3d 64 65 76 69 63 65 2d 77 69 64 74 68 2c 20 | t".content="width=device-width,. |
| 06e0 | 69 6e 69 74 69 61 6c 2d 73 63 61 6c 65 3d 31 2e 30 22 2f 3e 0a 20 20 20 20 3c 6d 65 74 61 20 6e | initial-scale=1.0"/>.....<meta.n |
| 0700 | 61 6d 65 3d 22 63 6f 6c 6f 72 2d 73 63 68 65 6d 65 22 20 63 6f 6e 74 65 6e 74 3d 22 6c 69 67 68 | ame="color-scheme".content="ligh |
| 0720 | 74 20 64 61 72 6b 22 2f 3e 0a 20 20 20 20 3c 74 69 74 6c 65 3e 44 6f 63 75 6d 65 6e 74 61 74 69 | t.dark"/>.....<title>Documentati |
| 0740 | 6f 6e 20 2d 20 54 68 65 20 5a 69 67 20 50 72 6f 67 72 61 6d 6d 69 6e 67 20 4c 61 6e 67 75 61 67 | on.-.The.Zig.Programming.Languag |
| 0760 | 65 3c 2f 74 69 74 6c 65 3e 0a 20 20 20 20 3c 6c 69 6e 6b 20 72 65 6c 3d 22 69 63 6f 6e 22 20 68 | e</title>.....<link.rel="icon".h |
| 0780 | 72 65 66 3d 22 64 61 74 61 3a 69 6d 61 67 65 2f 70 6e 67 3b 62 61 73 65 36 34 2c 69 56 42 4f 52 | ref="data:image/png;base64,iVBOR |
| 07a0 | 77 30 4b 47 67 6f 41 41 41 41 4e 53 55 68 45 55 67 41 41 41 42 41 41 41 41 41 51 43 41 59 41 41 | w0KGgoAAAANSUhEUgAAABAAAAAQCAYAA |
| 07c0 | 41 41 66 38 2f 39 68 41 41 41 41 67 6b 6c 45 51 56 52 34 41 57 4d 59 57 75 44 37 45 6c 6c 4a 49 | AAf8/9hAAAAgklEQVR4AWMYWuD7EllJI |
| 07e0 | 4d 34 47 34 67 34 67 35 6f 49 4a 2f 6f 64 68 4f 4a 38 77 54 6f 4f 78 53 54 58 67 4e 78 44 48 6f | M4G4g4g5oIJ/odhOJ8wToOxSTXgNxDHo |
| 0800 | 65 69 42 4d 66 41 34 2b 77 47 53 68 6a 79 59 4f 43 6b 47 2f 49 47 71 57 51 7a 69 45 7a 59 41 6f | eiBMfA4+wGShjyYOCkG/IGqWQziEzYAo |
| 0820 | 55 41 65 69 46 39 44 35 55 2b 44 78 45 67 31 34 44 52 55 37 6a 57 49 54 35 49 42 49 4f 64 43 78 | UAeiF9D5U+DxEg14DRU7jWIT5IBIOdCx |
| 0840 | 66 2b 41 2b 43 51 5a 41 41 6f 6f 70 45 42 37 51 4a 77 42 43 42 77 48 69 69 70 38 55 59 6d 52 64 | f+A+CQZAAoopEB7QJwBCBwHiip8UYmRd |
| 0860 | 72 41 6c 44 70 49 4d 67 41 70 77 51 5a 4e 6e 4e 69 69 35 44 71 30 4d 42 67 43 78 78 79 63 42 6e | rAlDpIMgApwQZNnNii5Dq0MBgCxxycBn |
| 0880 | 77 45 64 2b 77 41 41 41 41 42 4a 52 55 35 45 72 6b 4a 67 67 67 3d 3d 22 2f 3e 0a 20 20 20 20 3c | wEd+wAAAABJRU5ErkJggg=="/>.....< |
| 08a0 | 6c 69 6e 6b 20 72 65 6c 3d 22 69 63 6f 6e 22 20 68 72 65 66 3d 22 64 61 74 61 3a 69 6d 61 67 65 | link.rel="icon".href="data:image |
| 08c0 | 2f 73 76 67 2b 78 6d 6c 3b 62 61 73 65 36 34 2c 50 48 4e 32 5a 79 42 34 62 57 78 75 63 7a 30 69 | /svg+xml;base64,PHN2ZyB4bWxucz0i |
| 08e0 | 61 48 52 30 63 44 6f 76 4c 33 64 33 64 79 35 33 4d 79 35 76 63 6d 63 76 4d 6a 41 77 4d 43 39 7a | aHR0cDovL3d3dy53My5vcmcvMjAwMC9z |
| 0900 | 64 6d 63 69 49 48 5a 70 5a 58 64 43 62 33 67 39 49 6a 41 67 4d 43 41 78 4e 54 4d 67 4d 54 51 77 | dmciIHZpZXdCb3g9IjAgMCAxNTMgMTQw |
| 0920 | 49 6a 34 38 5a 79 42 6d 61 57 78 73 50 53 49 6a 52 6a 64 42 4e 44 46 45 49 6a 34 38 5a 7a 34 38 | Ij48ZyBmaWxsPSIjRjdBNDFEIj48Zz48 |
| 0940 | 63 47 39 73 65 57 64 76 62 69 42 77 62 32 6c 75 64 48 4d 39 49 6a 51 32 4c 44 49 79 49 44 49 34 | cG9seWdvbiBwb2ludHM9IjQ2LDIyIDI4 |
| 0960 | 4c 44 51 30 49 44 45 35 4c 44 4d 77 49 69 38 2b 50 48 42 76 62 48 6c 6e 62 32 34 67 63 47 39 70 | LDQ0IDE5LDMwIi8+PHBvbHlnb24gcG9p |
| 0980 | 62 6e 52 7a 50 53 49 30 4e 69 77 79 4d 69 41 7a 4d 79 77 7a 4d 79 41 79 4f 43 77 30 4e 43 41 79 | bnRzPSI0NiwyMiAzMywzMyAyOCw0NCAy |
| 09a0 | 4d 69 77 30 4e 43 41 79 4d 69 77 35 4e 53 41 7a 4d 53 77 35 4e 53 41 79 4d 43 77 78 4d 44 41 67 | Miw0NCAyMiw5NSAzMSw5NSAyMCwxMDAg |
| 09c0 | 4d 54 49 73 4d 54 45 33 49 44 41 73 4d 54 45 33 49 44 41 73 4d 6a 49 69 49 48 4e 6f 59 58 42 6c | MTIsMTE3IDAsMTE3IDAsMjIiIHNoYXBl |
| 09e0 | 4c 58 4a 6c 62 6d 52 6c 63 6d 6c 75 5a 7a 30 69 59 33 4a 70 63 33 42 46 5a 47 64 6c 63 79 49 76 | LXJlbmRlcmluZz0iY3Jpc3BFZGdlcyIv |
| 0a00 | 50 6a 78 77 62 32 78 35 5a 32 39 75 49 48 42 76 61 57 35 30 63 7a 30 69 4d 7a 45 73 4f 54 55 67 | Pjxwb2x5Z29uIHBvaW50cz0iMzEsOTUg |
| 0a20 | 4d 54 49 73 4d 54 45 33 49 44 51 73 4d 54 41 32 49 69 38 2b 50 43 39 6e 50 6a 78 6e 50 6a 78 77 | MTIsMTE3IDQsMTA2Ii8+PC9nPjxnPjxw |
| 0a40 | 62 32 78 35 5a 32 39 75 49 48 42 76 61 57 35 30 63 7a 30 69 4e 54 59 73 4d 6a 49 67 4e 6a 49 73 | b2x5Z29uIHBvaW50cz0iNTYsMjIgNjIs |
| 0a60 | 4d 7a 59 67 4d 7a 63 73 4e 44 51 69 4c 7a 34 38 63 47 39 73 65 57 64 76 62 69 42 77 62 32 6c 75 | MzYgMzcsNDQiLz48cG9seWdvbiBwb2lu |
| 0a80 | 64 48 4d 39 49 6a 55 32 4c 44 49 79 49 44 45 78 4d 53 77 79 4d 69 41 78 4d 54 45 73 4e 44 51 67 | dHM9IjU2LDIyIDExMSwyMiAxMTEsNDQg |
| 0aa0 | 4d 7a 63 73 4e 44 51 67 4e 54 59 73 4d 7a 49 69 49 48 4e 6f 59 58 42 6c 4c 58 4a 6c 62 6d 52 6c | MzcsNDQgNTYsMzIiIHNoYXBlLXJlbmRl |
| 0ac0 | 63 6d 6c 75 5a 7a 30 69 59 33 4a 70 63 33 42 46 5a 47 64 6c 63 79 49 76 50 6a 78 77 62 32 78 35 | cmluZz0iY3Jpc3BFZGdlcyIvPjxwb2x5 |
| 0ae0 | 5a 32 39 75 49 48 42 76 61 57 35 30 63 7a 30 69 4d 54 45 32 4c 44 6b 31 49 44 6b 33 4c 44 45 78 | Z29uIHBvaW50cz0iMTE2LDk1IDk3LDEx |
| 0b00 | 4e 79 41 35 4d 43 77 78 4d 44 51 69 4c 7a 34 38 63 47 39 73 65 57 64 76 62 69 42 77 62 32 6c 75 | NyA5MCwxMDQiLz48cG9seWdvbiBwb2lu |
| 0b20 | 64 48 4d 39 49 6a 45 78 4e 69 77 35 4e 53 41 78 4d 44 41 73 4d 54 41 30 49 44 6b 33 4c 44 45 78 | dHM9IjExNiw5NSAxMDAsMTA0IDk3LDEx |
| 0b40 | 4e 79 41 30 4d 69 77 78 4d 54 63 67 4e 44 49 73 4f 54 55 69 49 48 4e 6f 59 58 42 6c 4c 58 4a 6c | NyA0MiwxMTcgNDIsOTUiIHNoYXBlLXJl |
| 0b60 | 62 6d 52 6c 63 6d 6c 75 5a 7a 30 69 59 33 4a 70 63 33 42 46 5a 47 64 6c 63 79 49 76 50 6a 78 77 | bmRlcmluZz0iY3Jpc3BFZGdlcyIvPjxw |
| 0b80 | 62 32 78 35 5a 32 39 75 49 48 42 76 61 57 35 30 63 7a 30 69 4d 54 55 77 4c 44 41 67 4e 54 49 73 | b2x5Z29uIHBvaW50cz0iMTUwLDAgNTIs |
| 0ba0 | 4d 54 45 33 49 44 4d 73 4d 54 51 77 49 44 45 77 4d 53 77 79 4d 69 49 76 50 6a 77 76 5a 7a 34 38 | MTE3IDMsMTQwIDEwMSwyMiIvPjwvZz48 |
| 0bc0 | 5a 7a 34 38 63 47 39 73 65 57 64 76 62 69 42 77 62 32 6c 75 64 48 4d 39 49 6a 45 30 4d 53 77 79 | Zz48cG9seWdvbiBwb2ludHM9IjE0MSwy |
| 0be0 | 4d 69 41 78 4e 44 41 73 4e 44 41 67 4d 54 49 79 4c 44 51 31 49 69 38 2b 50 48 42 76 62 48 6c 6e | MiAxNDAsNDAgMTIyLDQ1Ii8+PHBvbHln |
| 0c00 | 62 32 34 67 63 47 39 70 62 6e 52 7a 50 53 49 78 4e 54 4d 73 4d 6a 49 67 4d 54 55 7a 4c 44 45 78 | b24gcG9pbnRzPSIxNTMsMjIgMTUzLDEx |
| 0c20 | 4e 79 41 78 4d 44 59 73 4d 54 45 33 49 44 45 79 4d 43 77 78 4d 44 55 67 4d 54 49 31 4c 44 6b 31 | NyAxMDYsMTE3IDEyMCwxMDUgMTI1LDk1 |
| 0c40 | 49 44 45 7a 4d 53 77 35 4e 53 41 78 4d 7a 45 73 4e 44 55 67 4d 54 49 79 4c 44 51 31 49 44 45 7a | IDEzMSw5NSAxMzEsNDUgMTIyLDQ1IDEz |
| 0c60 | 4d 69 77 7a 4e 69 41 78 4e 44 45 73 4d 6a 49 69 49 48 4e 6f 59 58 42 6c 4c 58 4a 6c 62 6d 52 6c | MiwzNiAxNDEsMjIiIHNoYXBlLXJlbmRl |
| 0c80 | 63 6d 6c 75 5a 7a 30 69 59 33 4a 70 63 33 42 46 5a 47 64 6c 63 79 49 76 50 6a 78 77 62 32 78 35 | cmluZz0iY3Jpc3BFZGdlcyIvPjxwb2x5 |
| 0ca0 | 5a 32 39 75 49 48 42 76 61 57 35 30 63 7a 30 69 4d 54 49 31 4c 44 6b 31 49 44 45 7a 4d 43 77 78 | Z29uIHBvaW50cz0iMTI1LDk1IDEzMCwx |
| 0cc0 | 4d 54 41 67 4d 54 41 32 4c 44 45 78 4e 79 49 76 50 6a 77 76 5a 7a 34 38 4c 32 63 2b 50 43 39 7a | MTAgMTA2LDExNyIvPjwvZz48L2c+PC9z |
| 0ce0 | 64 6d 63 2b 22 2f 3e 0a 20 20 20 20 3c 73 74 79 6c 65 3e 0a 20 20 20 20 20 20 3a 72 6f 6f 74 7b | dmc+"/>.....<style>.......:root{ |
| 0d00 | 0a 20 20 20 20 20 20 20 20 20 2d 2d 6e 61 76 2d 77 69 64 74 68 3a 20 32 36 65 6d 3b 0a 20 20 20 | ..........--nav-width:.26em;.... |
| 0d20 | 20 20 20 20 20 20 2d 2d 6e 61 76 2d 6d 61 72 67 69 6e 2d 6c 3a 20 31 65 6d 3b 0a 20 20 20 20 20 | ......--nav-margin-l:.1em;...... |
| 0d40 | 20 7d 0a 20 20 20 20 20 20 62 6f 64 79 7b 0a 20 20 20 20 20 20 20 20 66 6f 6e 74 2d 66 61 6d 69 | .}.......body{.........font-fami |
| 0d60 | 6c 79 3a 20 73 79 73 74 65 6d 2d 75 69 2c 20 2d 61 70 70 6c 65 2d 73 79 73 74 65 6d 2c 20 52 6f | ly:.system-ui,.-apple-system,.Ro |
| 0d80 | 62 6f 74 6f 2c 20 22 53 65 67 6f 65 20 55 49 22 2c 20 73 61 6e 73 2d 73 65 72 69 66 3b 0a 20 20 | boto,."Segoe.UI",.sans-serif;... |
| 0da0 | 20 20 20 20 20 20 6d 61 72 67 69 6e 3a 20 30 3b 0a 20 20 20 20 20 20 20 20 6c 69 6e 65 2d 68 65 | ......margin:.0;.........line-he |
| 0dc0 | 69 67 68 74 3a 20 31 2e 35 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 68 65 61 64 65 72 20 | ight:.1.5;.......}.......header. |
| 0de0 | 7b 0a 20 20 20 20 20 20 20 20 70 61 64 64 69 6e 67 3a 20 30 20 31 65 6d 3b 0a 20 20 20 20 20 20 | {.........padding:.0.1em;....... |
| 0e00 | 7d 0a 20 20 20 20 20 20 23 63 6f 6e 74 65 6e 74 73 20 7b 0a 20 20 20 20 20 20 20 20 6d 61 78 2d | }.......#contents.{.........max- |
| 0e20 | 77 69 64 74 68 3a 20 36 30 65 6d 3b 0a 20 20 20 20 20 20 20 20 6d 61 72 67 69 6e 3a 20 61 75 74 | width:.60em;.........margin:.aut |
| 0e40 | 6f 3b 0a 20 20 20 20 20 20 20 20 70 61 64 64 69 6e 67 3a 20 30 20 31 65 6d 3b 0a 20 20 20 20 20 | o;.........padding:.0.1em;...... |
| 0e60 | 20 7d 0a 20 20 20 20 20 20 23 6e 61 76 69 67 61 74 69 6f 6e 20 7b 0a 20 20 20 20 20 20 20 20 70 | .}.......#navigation.{.........p |
| 0e80 | 61 64 64 69 6e 67 3a 20 30 20 31 65 6d 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 74 61 62 | adding:.0.1em;.......}.......tab |
| 0ea0 | 6c 65 20 75 6c 20 7b 0a 20 20 20 20 20 20 20 20 6c 69 73 74 2d 73 74 79 6c 65 2d 74 79 70 65 3a | le.ul.{.........list-style-type: |
| 0ec0 | 20 6e 6f 6e 65 3b 0a 20 20 20 20 20 20 20 20 70 61 64 64 69 6e 67 3a 20 30 65 6d 3b 0a 20 20 20 | .none;.........padding:.0em;.... |
| 0ee0 | 20 20 20 7d 0a 20 20 20 20 20 20 74 61 62 6c 65 20 6c 69 20 7b 0a 20 20 20 20 20 20 20 20 70 61 | ...}.......table.li.{.........pa |
| 0f00 | 64 64 69 6e 67 2d 62 6f 74 74 6f 6d 3a 20 31 65 6d 3b 0a 20 20 20 20 20 20 20 20 6c 69 6e 65 2d | dding-bottom:.1em;.........line- |
| 0f20 | 68 65 69 67 68 74 3a 31 2e 32 65 6d 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 74 61 62 6c | height:1.2em;.......}.......tabl |
| 0f40 | 65 2c 20 74 68 2c 20 74 64 20 7b 0a 20 20 20 20 20 20 20 20 62 6f 72 64 65 72 2d 63 6f 6c 6c 61 | e,.th,.td.{.........border-colla |
| 0f60 | 70 73 65 3a 20 63 6f 6c 6c 61 70 73 65 3b 0a 20 20 20 20 20 20 20 20 62 6f 72 64 65 72 3a 20 31 | pse:.collapse;.........border:.1 |
| 0f80 | 70 78 20 73 6f 6c 69 64 20 67 72 65 79 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 74 68 2c | px.solid.grey;.......}.......th, |
| 0fa0 | 20 74 64 20 7b 0a 20 20 20 20 20 20 20 20 70 61 64 64 69 6e 67 3a 20 30 2e 35 65 6d 3b 0a 20 20 | .td.{.........padding:.0.5em;... |
| 0fc0 | 20 20 20 20 7d 0a 20 20 20 20 20 20 74 68 5b 73 63 6f 70 65 3d 72 6f 77 5d 20 7b 0a 20 20 20 20 | ....}.......th[scope=row].{..... |
| 0fe0 | 20 20 20 20 20 20 74 65 78 74 2d 61 6c 69 67 6e 3a 20 6c 65 66 74 3b 0a 20 20 20 20 20 20 20 20 | ......text-align:.left;......... |
| 1000 | 20 20 66 6f 6e 74 2d 77 65 69 67 68 74 3a 20 6e 6f 72 6d 61 6c 3b 0a 20 20 20 20 20 20 7d 0a 0a | ..font-weight:.normal;.......}.. |
| 1020 | 20 20 20 20 20 20 40 6d 65 64 69 61 20 73 63 72 65 65 6e 20 61 6e 64 20 28 6d 69 6e 2d 77 69 64 | ......@media.screen.and.(min-wid |
| 1040 | 74 68 3a 20 31 30 32 35 70 78 29 20 7b 0a 20 20 20 20 20 20 20 20 68 65 61 64 65 72 20 7b 0a 20 | th:.1025px).{.........header.{.. |
| 1060 | 20 20 20 20 20 20 20 20 20 6d 61 72 67 69 6e 2d 6c 65 66 74 3a 20 63 61 6c 63 28 76 61 72 28 2d | .........margin-left:.calc(var(- |
| 1080 | 2d 6e 61 76 2d 77 69 64 74 68 29 20 2b 20 76 61 72 28 2d 2d 6e 61 76 2d 6d 61 72 67 69 6e 2d 6c | -nav-width).+.var(--nav-margin-l |
| 10a0 | 29 29 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 68 65 61 64 65 72 20 68 31 20 | ));.........}.........header.h1. |
| 10c0 | 7b 0a 20 20 20 20 20 20 20 20 20 20 6d 61 72 67 69 6e 3a 20 61 75 74 6f 3b 0a 20 20 20 20 20 20 | {...........margin:.auto;....... |
| 10e0 | 20 20 20 20 6d 61 78 2d 77 69 64 74 68 3a 20 33 30 65 6d 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 | ....max-width:.30em;.........}.. |
| 1100 | 20 20 20 20 20 20 20 23 6e 61 76 69 67 61 74 69 6f 6e 20 7b 0a 20 20 20 20 20 20 20 20 20 20 6f | .......#navigation.{...........o |
| 1120 | 76 65 72 66 6c 6f 77 3a 20 61 75 74 6f 3b 0a 20 20 20 20 20 20 20 20 20 20 77 69 64 74 68 3a 20 | verflow:.auto;...........width:. |
| 1140 | 76 61 72 28 2d 2d 6e 61 76 2d 77 69 64 74 68 29 3b 0a 20 20 20 20 20 20 20 20 20 20 68 65 69 67 | var(--nav-width);...........heig |
| 1160 | 68 74 3a 20 31 30 30 76 68 3b 0a 20 20 20 20 20 20 20 20 20 20 70 6f 73 69 74 69 6f 6e 3a 20 66 | ht:.100vh;...........position:.f |
| 1180 | 69 78 65 64 3b 0a 20 20 20 20 20 20 20 20 20 20 74 6f 70 3a 30 3b 0a 20 20 20 20 20 20 20 20 20 | ixed;...........top:0;.......... |
| 11a0 | 20 6c 65 66 74 3a 30 3b 0a 20 20 20 20 20 20 20 20 20 20 62 6f 74 74 6f 6d 3a 30 3b 0a 20 20 20 | .left:0;...........bottom:0;.... |
| 11c0 | 20 20 20 20 20 20 20 70 61 64 64 69 6e 67 3a 20 75 6e 73 65 74 3b 0a 20 20 20 20 20 20 20 20 20 | .......padding:.unset;.......... |
| 11e0 | 20 6d 61 72 67 69 6e 2d 6c 65 66 74 3a 20 76 61 72 28 2d 2d 6e 61 76 2d 6d 61 72 67 69 6e 2d 6c | .margin-left:.var(--nav-margin-l |
| 1200 | 29 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 23 6e 61 76 69 67 61 74 69 6f 6e | );.........}.........#navigation |
| 1220 | 20 6e 61 76 20 75 6c 20 7b 0a 20 20 20 20 20 20 20 20 20 20 70 61 64 64 69 6e 67 2d 6c 65 66 74 | .nav.ul.{...........padding-left |
| 1240 | 3a 20 31 65 6d 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 23 63 6f 6e 74 65 6e | :.1em;.........}.........#conten |
| 1260 | 74 73 2d 77 72 61 70 70 65 72 20 7b 0a 20 20 20 20 20 20 20 20 20 20 6d 61 72 67 69 6e 2d 6c 65 | ts-wrapper.{...........margin-le |
| 1280 | 66 74 3a 20 63 61 6c 63 28 76 61 72 28 2d 2d 6e 61 76 2d 77 69 64 74 68 29 20 2b 20 76 61 72 28 | ft:.calc(var(--nav-width).+.var( |
| 12a0 | 2d 2d 6e 61 76 2d 6d 61 72 67 69 6e 2d 6c 29 29 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 | --nav-margin-l));.........}..... |
| 12c0 | 20 20 7d 0a 0a 20 20 20 20 20 20 61 3a 68 6f 76 65 72 2c 61 3a 66 6f 63 75 73 20 7b 0a 20 20 20 | ..}........a:hover,a:focus.{.... |
| 12e0 | 20 20 20 20 20 62 61 63 6b 67 72 6f 75 6e 64 3a 20 23 66 66 66 32 61 38 3b 0a 20 20 20 20 20 20 | .....background:.#fff2a8;....... |
| 1300 | 7d 0a 20 20 20 20 20 20 64 74 20 7b 0a 20 20 20 20 20 20 20 20 66 6f 6e 74 2d 77 65 69 67 68 74 | }.......dt.{.........font-weight |
| 1320 | 3a 20 62 6f 6c 64 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 2e 73 67 72 2d 31 6d 20 7b 0a | :.bold;.......}........sgr-1m.{. |
| 1340 | 20 20 20 20 20 20 20 20 66 6f 6e 74 2d 77 65 69 67 68 74 3a 20 62 6f 6c 64 3b 0a 20 20 20 20 20 | ........font-weight:.bold;...... |
| 1360 | 20 7d 0a 20 20 20 20 20 20 2e 73 67 72 2d 32 6d 20 7b 0a 20 20 20 20 20 20 20 20 63 6f 6c 6f 72 | .}........sgr-2m.{.........color |
| 1380 | 3a 20 23 35 37 35 37 35 37 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 2e 73 67 72 2d 33 31 | :.#575757;.......}........sgr-31 |
| 13a0 | 5f 31 6d 20 7b 0a 20 20 20 20 20 20 20 20 63 6f 6c 6f 72 3a 20 23 62 34 30 30 30 30 3b 0a 20 20 | _1m.{.........color:.#b40000;... |
| 13c0 | 20 20 20 20 7d 0a 20 20 20 20 20 20 2e 73 67 72 2d 33 32 5f 31 6d 20 7b 0a 20 20 20 20 20 20 20 | ....}........sgr-32_1m.{........ |
| 13e0 | 20 63 6f 6c 6f 72 3a 20 67 72 65 65 6e 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 2e 73 67 | .color:.green;.......}........sg |
| 1400 | 72 2d 33 36 5f 31 6d 20 7b 0a 20 20 20 20 20 20 20 20 63 6f 6c 6f 72 3a 20 23 30 30 35 43 37 41 | r-36_1m.{.........color:.#005C7A |
| 1420 | 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 2e 66 69 6c 65 20 7b 0a 20 20 20 20 20 20 20 20 | ;.......}........file.{......... |
| 1440 | 66 6f 6e 74 2d 77 65 69 67 68 74 3a 20 62 6f 6c 64 3b 0a 20 20 20 20 20 20 20 20 62 6f 72 64 65 | font-weight:.bold;.........borde |
| 1460 | 72 3a 20 75 6e 73 65 74 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 63 6f 64 65 20 7b 0a 20 | r:.unset;.......}.......code.{.. |
| 1480 | 20 20 20 20 20 20 20 62 61 63 6b 67 72 6f 75 6e 64 3a 20 23 66 38 66 38 66 38 3b 0a 20 20 20 20 | .......background:.#f8f8f8;..... |
| 14a0 | 20 20 20 20 62 6f 72 64 65 72 3a 20 31 70 78 20 64 6f 74 74 65 64 20 73 69 6c 76 65 72 3b 0a 20 | ....border:.1px.dotted.silver;.. |
| 14c0 | 20 20 20 20 20 20 20 70 61 64 64 69 6e 67 2d 6c 65 66 74 3a 20 30 2e 33 65 6d 3b 0a 20 20 20 20 | .......padding-left:.0.3em;..... |
| 14e0 | 20 20 20 20 70 61 64 64 69 6e 67 2d 72 69 67 68 74 3a 20 30 2e 33 65 6d 3b 0a 20 20 20 20 20 20 | ....padding-right:.0.3em;....... |
| 1500 | 7d 0a 20 20 20 20 20 20 70 72 65 20 3e 20 63 6f 64 65 20 7b 0a 20 20 20 20 20 20 20 20 64 69 73 | }.......pre.>.code.{.........dis |
| 1520 | 70 6c 61 79 3a 20 62 6c 6f 63 6b 3b 0a 20 20 20 20 20 20 20 20 6f 76 65 72 66 6c 6f 77 3a 20 61 | play:.block;.........overflow:.a |
| 1540 | 75 74 6f 3b 0a 20 20 20 20 20 20 20 20 70 61 64 64 69 6e 67 3a 20 30 2e 35 65 6d 3b 0a 20 20 20 | uto;.........padding:.0.5em;.... |
| 1560 | 20 20 20 20 20 62 6f 72 64 65 72 3a 20 31 70 78 20 73 6f 6c 69 64 20 23 65 65 65 3b 0a 20 20 20 | .....border:.1px.solid.#eee;.... |
| 1580 | 20 20 20 20 20 6c 69 6e 65 2d 68 65 69 67 68 74 3a 20 6e 6f 72 6d 61 6c 3b 0a 20 20 20 20 20 20 | .....line-height:.normal;....... |
| 15a0 | 7d 0a 20 20 20 20 20 20 73 61 6d 70 20 7b 0a 20 20 20 20 20 20 20 20 62 61 63 6b 67 72 6f 75 6e | }.......samp.{.........backgroun |
| 15c0 | 64 3a 20 23 66 61 66 61 66 61 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 70 72 65 20 3e 20 | d:.#fafafa;.......}.......pre.>. |
| 15e0 | 73 61 6d 70 20 7b 0a 20 20 20 20 20 20 20 20 64 69 73 70 6c 61 79 3a 20 62 6c 6f 63 6b 3b 0a 20 | samp.{.........display:.block;.. |
| 1600 | 20 20 20 20 20 20 20 6f 76 65 72 66 6c 6f 77 3a 20 61 75 74 6f 3b 0a 20 20 20 20 20 20 20 20 70 | .......overflow:.auto;.........p |
| 1620 | 61 64 64 69 6e 67 3a 20 30 2e 35 65 6d 3b 0a 20 20 20 20 20 20 20 20 62 6f 72 64 65 72 3a 20 31 | adding:.0.5em;.........border:.1 |
| 1640 | 70 78 20 73 6f 6c 69 64 20 23 65 65 65 3b 0a 20 20 20 20 20 20 20 20 6c 69 6e 65 2d 68 65 69 67 | px.solid.#eee;.........line-heig |
| 1660 | 68 74 3a 20 6e 6f 72 6d 61 6c 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 6b 62 64 20 7b 0a | ht:.normal;.......}.......kbd.{. |
| 1680 | 20 20 20 20 20 20 20 20 66 6f 6e 74 2d 77 65 69 67 68 74 3a 20 6e 6f 72 6d 61 6c 3b 0a 20 20 20 | ........font-weight:.normal;.... |
| 16a0 | 20 20 20 7d 0a 20 20 20 20 20 20 2e 74 61 62 6c 65 2d 77 72 61 70 70 65 72 20 7b 0a 20 20 20 20 | ...}........table-wrapper.{..... |
| 16c0 | 20 20 20 20 77 69 64 74 68 3a 20 31 30 30 25 3b 0a 20 20 20 20 20 20 20 20 6f 76 65 72 66 6c 6f | ....width:.100%;.........overflo |
| 16e0 | 77 2d 78 3a 20 61 75 74 6f 3b 0a 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 20 20 2e 74 6f 6b 2d 6b | w-x:.auto;.......}.........tok-k |
| 1700 | 77 20 7b 0a 20 20 20 20 20 20 20 20 20 20 63 6f 6c 6f 72 3a 20 23 33 33 33 3b 0a 20 20 20 20 20 | w.{...........color:.#333;...... |
| 1720 | 20 20 20 20 20 66 6f 6e 74 2d 77 65 69 67 68 74 3a 20 62 6f 6c 64 3b 0a 20 20 20 20 20 20 7d 0a | .....font-weight:.bold;.......}. |
| 1740 | 20 20 20 20 20 20 2e 74 6f 6b 2d 73 74 72 20 7b 0a 20 20 20 20 20 20 20 20 20 20 63 6f 6c 6f 72 | .......tok-str.{...........color |
| 1760 | 3a 20 23 64 31 34 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 2e 74 6f 6b 2d 62 75 69 6c 74 | :.#d14;.......}........tok-built |
| 1780 | 69 6e 20 7b 0a 20 20 20 20 20 20 20 20 20 20 63 6f 6c 6f 72 3a 20 23 30 30 35 43 37 41 3b 0a 20 | in.{...........color:.#005C7A;.. |
| 17a0 | 20 20 20 20 20 7d 0a 20 20 20 20 20 20 2e 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 20 7b 0a 20 20 20 20 | .....}........tok-comment.{..... |
| 17c0 | 20 20 20 20 20 20 63 6f 6c 6f 72 3a 20 23 35 34 35 34 35 34 3b 0a 20 20 20 20 20 20 20 20 20 20 | ......color:.#545454;........... |
| 17e0 | 66 6f 6e 74 2d 73 74 79 6c 65 3a 20 69 74 61 6c 69 63 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 | font-style:.italic;.......}..... |
| 1800 | 20 20 2e 74 6f 6b 2d 66 6e 20 7b 0a 20 20 20 20 20 20 20 20 20 20 63 6f 6c 6f 72 3a 20 23 39 30 | ...tok-fn.{...........color:.#90 |
| 1820 | 30 3b 0a 20 20 20 20 20 20 20 20 20 20 66 6f 6e 74 2d 77 65 69 67 68 74 3a 20 62 6f 6c 64 3b 0a | 0;...........font-weight:.bold;. |
| 1840 | 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 2e 74 6f 6b 2d 6e 75 6c 6c 20 7b 0a 20 20 20 20 20 20 | ......}........tok-null.{....... |
| 1860 | 20 20 20 20 63 6f 6c 6f 72 3a 20 23 30 30 35 43 35 43 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 | ....color:.#005C5C;.......}..... |
| 1880 | 20 20 2e 74 6f 6b 2d 6e 75 6d 62 65 72 20 7b 0a 20 20 20 20 20 20 20 20 20 20 63 6f 6c 6f 72 3a | ...tok-number.{...........color: |
| 18a0 | 20 23 30 30 35 43 35 43 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 2e 74 6f 6b 2d 74 79 70 | .#005C5C;.......}........tok-typ |
| 18c0 | 65 20 7b 0a 20 20 20 20 20 20 20 20 20 20 63 6f 6c 6f 72 3a 20 23 34 35 38 3b 0a 20 20 20 20 20 | e.{...........color:.#458;...... |
| 18e0 | 20 20 20 20 20 66 6f 6e 74 2d 77 65 69 67 68 74 3a 20 62 6f 6c 64 3b 0a 20 20 20 20 20 20 7d 0a | .....font-weight:.bold;.......}. |
| 1900 | 0a 20 20 20 20 20 20 66 69 67 75 72 65 20 7b 0a 20 20 20 20 20 20 20 20 6d 61 72 67 69 6e 3a 20 | .......figure.{.........margin:. |
| 1920 | 61 75 74 6f 20 30 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 66 69 67 75 72 65 20 70 72 65 | auto.0;.......}.......figure.pre |
| 1940 | 20 7b 0a 20 20 20 20 20 20 20 20 6d 61 72 67 69 6e 2d 74 6f 70 3a 20 30 3b 0a 20 20 20 20 20 20 | .{.........margin-top:.0;....... |
| 1960 | 7d 0a 0a 20 20 20 20 20 20 66 69 67 63 61 70 74 69 6f 6e 20 7b 0a 20 20 20 20 20 20 20 20 70 61 | }........figcaption.{.........pa |
| 1980 | 64 64 69 6e 67 2d 6c 65 66 74 3a 20 30 2e 35 65 6d 3b 0a 20 20 20 20 20 20 20 20 66 6f 6e 74 2d | dding-left:.0.5em;.........font- |
| 19a0 | 73 69 7a 65 3a 20 73 6d 61 6c 6c 3b 0a 20 20 20 20 20 20 20 20 62 6f 72 64 65 72 2d 74 6f 70 2d | size:.small;.........border-top- |
| 19c0 | 6c 65 66 74 2d 72 61 64 69 75 73 3a 20 35 70 78 3b 0a 20 20 20 20 20 20 20 20 62 6f 72 64 65 72 | left-radius:.5px;.........border |
| 19e0 | 2d 74 6f 70 2d 72 69 67 68 74 2d 72 61 64 69 75 73 3a 20 35 70 78 3b 0a 20 20 20 20 20 20 7d 0a | -top-right-radius:.5px;.......}. |
| 1a00 | 20 20 20 20 20 20 66 69 67 63 61 70 74 69 6f 6e 2e 7a 69 67 2d 63 61 70 20 7b 0a 20 20 20 20 20 | ......figcaption.zig-cap.{...... |
| 1a20 | 20 20 20 62 61 63 6b 67 72 6f 75 6e 64 3a 20 23 66 63 64 62 61 35 3b 0a 20 20 20 20 20 20 7d 0a | ...background:.#fcdba5;.......}. |
| 1a40 | 20 20 20 20 20 20 66 69 67 63 61 70 74 69 6f 6e 2e 63 2d 63 61 70 20 7b 0a 20 20 20 20 20 20 20 | ......figcaption.c-cap.{........ |
| 1a60 | 20 62 61 63 6b 67 72 6f 75 6e 64 3a 20 23 61 38 62 39 63 63 3b 0a 20 20 20 20 20 20 20 20 63 6f | .background:.#a8b9cc;.........co |
| 1a80 | 6c 6f 72 3a 20 23 30 30 30 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 66 69 67 63 61 70 74 | lor:.#000;.......}.......figcapt |
| 1aa0 | 69 6f 6e 2e 70 65 67 2d 63 61 70 20 7b 0a 20 20 20 20 20 20 20 20 62 61 63 6b 67 72 6f 75 6e 64 | ion.peg-cap.{.........background |
| 1ac0 | 3a 20 23 66 63 64 62 61 35 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 66 69 67 63 61 70 74 | :.#fcdba5;.......}.......figcapt |
| 1ae0 | 69 6f 6e 2e 6a 61 76 61 73 63 72 69 70 74 2d 63 61 70 20 7b 0a 20 20 20 20 20 20 20 20 62 61 63 | ion.javascript-cap.{.........bac |
| 1b00 | 6b 67 72 6f 75 6e 64 3a 20 23 33 36 35 64 39 35 3b 0a 20 20 20 20 20 20 20 20 63 6f 6c 6f 72 3a | kground:.#365d95;.........color: |
| 1b20 | 20 23 66 66 66 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 66 69 67 63 61 70 74 69 6f 6e 2e | .#fff;.......}.......figcaption. |
| 1b40 | 73 68 65 6c 6c 2d 63 61 70 20 7b 0a 20 20 20 20 20 20 20 20 62 61 63 6b 67 72 6f 75 6e 64 3a 20 | shell-cap.{.........background:. |
| 1b60 | 23 63 63 63 3b 0a 20 20 20 20 20 20 20 20 63 6f 6c 6f 72 3a 20 23 30 30 30 3b 0a 20 20 20 20 20 | #ccc;.........color:.#000;...... |
| 1b80 | 20 7d 0a 0a 20 20 20 20 20 20 61 73 69 64 65 20 7b 0a 20 20 20 20 20 20 20 20 62 6f 72 64 65 72 | .}........aside.{.........border |
| 1ba0 | 2d 6c 65 66 74 3a 20 30 2e 32 35 65 6d 20 73 6f 6c 69 64 20 23 66 37 61 34 31 64 3b 0a 20 20 20 | -left:.0.25em.solid.#f7a41d;.... |
| 1bc0 | 20 20 20 20 20 70 61 64 64 69 6e 67 3a 20 30 20 31 65 6d 20 30 20 31 65 6d 3b 0a 20 20 20 20 20 | .....padding:.0.1em.0.1em;...... |
| 1be0 | 20 7d 0a 0a 20 20 20 20 20 20 68 31 20 61 2c 20 68 32 20 61 2c 20 68 33 20 61 2c 20 68 34 20 61 | .}........h1.a,.h2.a,.h3.a,.h4.a |
| 1c00 | 2c 20 68 35 20 61 20 7b 0a 20 20 20 20 20 20 20 20 74 65 78 74 2d 64 65 63 6f 72 61 74 69 6f 6e | ,.h5.a.{.........text-decoration |
| 1c20 | 3a 20 6e 6f 6e 65 3b 0a 20 20 20 20 20 20 20 20 63 6f 6c 6f 72 3a 20 23 33 33 33 3b 0a 20 20 20 | :.none;.........color:.#333;.... |
| 1c40 | 20 20 20 7d 0a 0a 20 20 20 20 20 20 61 2e 68 64 72 20 7b 0a 20 20 20 20 20 20 20 20 76 69 73 69 | ...}........a.hdr.{.........visi |
| 1c60 | 62 69 6c 69 74 79 3a 20 68 69 64 64 65 6e 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 68 31 | bility:.hidden;.......}.......h1 |
| 1c80 | 3a 68 6f 76 65 72 20 3e 20 61 2e 68 64 72 2c 20 68 32 3a 68 6f 76 65 72 20 3e 20 61 2e 68 64 72 | :hover.>.a.hdr,.h2:hover.>.a.hdr |
| 1ca0 | 2c 20 68 33 3a 68 6f 76 65 72 20 3e 20 61 2e 68 64 72 2c 20 68 34 3a 68 6f 76 65 72 20 3e 20 61 | ,.h3:hover.>.a.hdr,.h4:hover.>.a |
| 1cc0 | 2e 68 64 72 2c 20 68 35 3a 68 6f 76 65 72 20 3e 20 61 2e 68 64 72 20 7b 0a 20 20 20 20 20 20 20 | .hdr,.h5:hover.>.a.hdr.{........ |
| 1ce0 | 20 76 69 73 69 62 69 6c 69 74 79 3a 20 76 69 73 69 62 6c 65 3b 0a 20 20 20 20 20 20 7d 0a 0a 20 | .visibility:.visible;.......}... |
| 1d00 | 20 20 20 20 20 74 68 20 70 72 65 20 63 6f 64 65 20 7b 0a 20 20 20 20 20 20 20 20 20 20 62 61 63 | .....th.pre.code.{...........bac |
| 1d20 | 6b 67 72 6f 75 6e 64 3a 20 6e 6f 6e 65 3b 0a 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 20 20 40 6d | kground:.none;.......}........@m |
| 1d40 | 65 64 69 61 20 28 70 72 65 66 65 72 73 2d 63 6f 6c 6f 72 2d 73 63 68 65 6d 65 3a 20 64 61 72 6b | edia.(prefers-color-scheme:.dark |
| 1d60 | 29 20 7b 0a 20 20 20 20 20 20 20 20 62 6f 64 79 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 62 61 | ).{.........body{.............ba |
| 1d80 | 63 6b 67 72 6f 75 6e 64 3a 23 31 32 31 32 31 32 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 63 6f | ckground:#121212;.............co |
| 1da0 | 6c 6f 72 3a 20 23 63 63 63 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 61 20 7b | lor:.#ccc;.........}.........a.{ |
| 1dc0 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6c 6f 72 3a 20 23 38 38 66 3b 0a 20 20 20 20 20 20 | .............color:.#88f;....... |
| 1de0 | 20 20 7d 0a 20 20 20 20 20 20 20 20 61 3a 68 6f 76 65 72 2c 61 3a 66 6f 63 75 73 20 7b 0a 20 20 | ..}.........a:hover,a:focus.{... |
| 1e00 | 20 20 20 20 20 20 20 20 20 20 63 6f 6c 6f 72 3a 20 23 30 30 30 3b 0a 20 20 20 20 20 20 20 20 7d | ..........color:.#000;.........} |
| 1e20 | 0a 20 20 20 20 20 20 20 20 74 61 62 6c 65 2c 20 74 68 2c 20 74 64 20 7b 0a 20 20 20 20 20 20 20 | .........table,.th,.td.{........ |
| 1e40 | 20 20 20 20 20 62 6f 72 64 65 72 2d 63 6f 6c 6f 72 3a 20 67 72 65 79 3b 0a 20 20 20 20 20 20 20 | .....border-color:.grey;........ |
| 1e60 | 20 7d 0a 20 20 20 20 20 20 20 20 2e 73 67 72 2d 32 6d 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 | .}..........sgr-2m.{............ |
| 1e80 | 20 63 6f 6c 6f 72 3a 20 67 72 65 79 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 | .color:.grey;.........}......... |
| 1ea0 | 2e 73 67 72 2d 33 31 5f 31 6d 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6c 6f 72 3a 20 | .sgr-31_1m.{.............color:. |
| 1ec0 | 72 65 64 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 2e 73 67 72 2d 33 32 5f 31 | red;.........}..........sgr-32_1 |
| 1ee0 | 6d 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6c 6f 72 3a 20 23 30 30 42 38 30 30 3b 0a | m.{.............color:.#00B800;. |
| 1f00 | 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 2e 73 67 72 2d 33 36 5f 31 6d 20 7b 0a 20 | ........}..........sgr-36_1m.{.. |
| 1f20 | 20 20 20 20 20 20 20 20 20 20 20 63 6f 6c 6f 72 3a 20 23 30 30 38 36 62 33 3b 0a 20 20 20 20 20 | ...........color:.#0086b3;...... |
| 1f40 | 20 20 20 7d 0a 20 20 20 20 20 20 20 20 63 6f 64 65 20 7b 0a 20 20 20 20 20 20 20 20 20 20 62 61 | ...}.........code.{...........ba |
| 1f60 | 63 6b 67 72 6f 75 6e 64 3a 20 23 32 32 32 3b 0a 20 20 20 20 20 20 20 20 20 20 62 6f 72 64 65 72 | ckground:.#222;...........border |
| 1f80 | 2d 63 6f 6c 6f 72 3a 20 23 34 34 34 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 | -color:.#444;.........}......... |
| 1fa0 | 70 72 65 20 3e 20 63 6f 64 65 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6c 6f 72 3a 20 | pre.>.code.{.............color:. |
| 1fc0 | 23 63 63 63 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 62 61 63 6b 67 72 6f 75 6e 64 3a 20 23 32 | #ccc;.............background:.#2 |
| 1fe0 | 32 32 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 62 6f 72 64 65 72 3a 20 75 6e 73 65 74 3b 0a 20 | 22;.............border:.unset;.. |
| 2000 | 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 73 61 6d 70 20 7b 0a 20 20 20 20 20 20 20 20 | .......}.........samp.{......... |
| 2020 | 20 20 62 61 63 6b 67 72 6f 75 6e 64 3a 20 23 30 30 30 3b 0a 20 20 20 20 20 20 20 20 20 20 63 6f | ..background:.#000;...........co |
| 2040 | 6c 6f 72 3a 20 23 63 63 63 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 70 72 65 | lor:.#ccc;.........}.........pre |
| 2060 | 20 3e 20 73 61 6d 70 20 7b 0a 20 20 20 20 20 20 20 20 20 20 62 6f 72 64 65 72 3a 20 75 6e 73 65 | .>.samp.{...........border:.unse |
| 2080 | 74 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 2e 74 6f 6b 2d 6b 77 20 7b 0a 20 | t;.........}..........tok-kw.{.. |
| 20a0 | 20 20 20 20 20 20 20 20 20 20 20 63 6f 6c 6f 72 3a 20 23 65 65 65 3b 0a 20 20 20 20 20 20 20 20 | ...........color:.#eee;......... |
| 20c0 | 7d 0a 20 20 20 20 20 20 20 20 2e 74 6f 6b 2d 73 74 72 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 | }..........tok-str.{............ |
| 20e0 | 20 63 6f 6c 6f 72 3a 20 23 32 65 35 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 | .color:.#2e5;.........}......... |
| 2100 | 2e 74 6f 6b 2d 62 75 69 6c 74 69 6e 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6c 6f 72 | .tok-builtin.{.............color |
| 2120 | 3a 20 23 66 66 38 39 34 63 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 2e 74 6f | :.#ff894c;.........}..........to |
| 2140 | 6b 2d 63 6f 6d 6d 65 6e 74 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6c 6f 72 3a 20 23 | k-comment.{.............color:.# |
| 2160 | 61 61 37 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 2e 74 6f 6b 2d 66 6e 20 7b | aa7;.........}..........tok-fn.{ |
| 2180 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6c 6f 72 3a 20 23 42 31 41 30 46 38 3b 0a 20 20 20 | .............color:.#B1A0F8;.... |
| 21a0 | 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 2e 74 6f 6b 2d 6e 75 6c 6c 20 7b 0a 20 20 20 20 20 | .....}..........tok-null.{...... |
| 21c0 | 20 20 20 20 20 20 20 63 6f 6c 6f 72 3a 20 23 66 66 38 30 38 30 3b 0a 20 20 20 20 20 20 20 20 7d | .......color:.#ff8080;.........} |
| 21e0 | 0a 20 20 20 20 20 20 20 20 2e 74 6f 6b 2d 6e 75 6d 62 65 72 20 7b 0a 20 20 20 20 20 20 20 20 20 | ..........tok-number.{.......... |
| 2200 | 20 20 20 63 6f 6c 6f 72 3a 20 23 66 66 38 30 38 30 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 | ...color:.#ff8080;.........}.... |
| 2220 | 20 20 20 20 20 2e 74 6f 6b 2d 74 79 70 65 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6c | ......tok-type.{.............col |
| 2240 | 6f 72 3a 20 23 36 38 66 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 68 31 20 61 | or:.#68f;.........}.........h1.a |
| 2260 | 2c 20 68 32 20 61 2c 20 68 33 20 61 2c 20 68 34 20 61 2c 20 68 35 20 61 20 7b 0a 20 20 20 20 20 | ,.h2.a,.h3.a,.h4.a,.h5.a.{...... |
| 2280 | 20 20 20 20 20 20 20 63 6f 6c 6f 72 3a 20 23 61 61 61 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 | .......color:.#aaa;.........}... |
| 22a0 | 20 20 20 20 20 20 66 69 67 63 61 70 74 69 6f 6e 2e 7a 69 67 2d 63 61 70 20 7b 0a 20 20 20 20 20 | ......figcaption.zig-cap.{...... |
| 22c0 | 20 20 20 20 20 20 20 62 61 63 6b 67 72 6f 75 6e 64 2d 63 6f 6c 6f 72 3a 20 23 62 32 37 33 30 36 | .......background-color:.#b27306 |
| 22e0 | 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6c 6f 72 3a 20 23 30 30 30 3b 0a 20 20 20 20 20 | ;.............color:.#000;...... |
| 2300 | 20 20 20 7d 0a 20 20 20 20 20 20 20 20 66 69 67 63 61 70 74 69 6f 6e 2e 70 65 67 2d 63 61 70 20 | ...}.........figcaption.peg-cap. |
| 2320 | 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 62 61 63 6b 67 72 6f 75 6e 64 2d 63 6f 6c 6f 72 3a 20 | {.............background-color:. |
| 2340 | 23 62 32 37 33 30 36 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6c 6f 72 3a 20 23 30 30 30 | #b27306;.............color:.#000 |
| 2360 | 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 66 69 67 63 61 70 74 69 6f 6e 2e 73 | ;.........}.........figcaption.s |
| 2380 | 68 65 6c 6c 2d 63 61 70 20 7b 0a 20 20 20 20 20 20 20 20 20 20 62 61 63 6b 67 72 6f 75 6e 64 3a | hell-cap.{...........background: |
| 23a0 | 20 23 32 61 32 61 32 61 3b 0a 20 20 20 20 20 20 20 20 20 20 63 6f 6c 6f 72 3a 20 23 66 66 66 3b | .#2a2a2a;...........color:.#fff; |
| 23c0 | 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 3c 2f 73 74 79 6c 65 3e 0a | .........}.......}.....</style>. |
| 23e0 | 3c 2f 68 65 61 64 3e 0a 3c 62 6f 64 79 3e 0a 20 20 3c 68 65 61 64 65 72 3e 3c 68 31 3e 5a 69 67 | </head>.<body>...<header><h1>Zig |
| 2400 | 20 4c 61 6e 67 75 61 67 65 20 52 65 66 65 72 65 6e 63 65 3c 2f 68 31 3e 3c 2f 68 65 61 64 65 72 | .Language.Reference</h1></header |
| 2420 | 3e 0a 20 20 3c 64 69 76 20 69 64 3d 22 6d 61 69 6e 2d 77 72 61 70 70 65 72 22 3e 0a 20 20 20 20 | >...<div.id="main-wrapper">..... |
| 2440 | 20 20 3c 64 69 76 20 69 64 3d 22 6e 61 76 69 67 61 74 69 6f 6e 22 3e 0a 20 20 20 20 20 20 20 20 | ..<div.id="navigation">......... |
| 2460 | 3c 6e 61 76 20 61 72 69 61 2d 6c 61 62 65 6c 6c 65 64 62 79 3d 22 7a 69 67 2d 76 65 72 73 69 6f | <nav.aria-labelledby="zig-versio |
| 2480 | 6e 22 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 7a 69 67 2d 76 65 72 73 69 6f | n">...........<h2.id="zig-versio |
| 24a0 | 6e 22 3e 5a 69 67 20 56 65 72 73 69 6f 6e 3c 2f 68 32 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 61 | n">Zig.Version</h2>...........<a |
| 24c0 | 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 7a 69 67 6c 61 6e 67 2e 6f 72 67 2f 64 6f 63 75 6d | .href="https://ziglang.org/docum |
| 24e0 | 65 6e 74 61 74 69 6f 6e 2f 30 2e 31 2e 31 2f 22 3e 30 2e 31 2e 31 3c 2f 61 3e 20 7c 0a 3c 61 20 | entation/0.1.1/">0.1.1</a>.|.<a. |
| 2500 | 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 7a 69 67 6c 61 6e 67 2e 6f 72 67 2f 64 6f 63 75 6d 65 | href="https://ziglang.org/docume |
| 2520 | 6e 74 61 74 69 6f 6e 2f 30 2e 32 2e 30 2f 22 3e 30 2e 32 2e 30 3c 2f 61 3e 20 7c 0a 3c 61 20 68 | ntation/0.2.0/">0.2.0</a>.|.<a.h |
| 2540 | 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 7a 69 67 6c 61 6e 67 2e 6f 72 67 2f 64 6f 63 75 6d 65 6e | ref="https://ziglang.org/documen |
| 2560 | 74 61 74 69 6f 6e 2f 30 2e 33 2e 30 2f 22 3e 30 2e 33 2e 30 3c 2f 61 3e 20 7c 0a 3c 61 20 68 72 | tation/0.3.0/">0.3.0</a>.|.<a.hr |
| 2580 | 65 66 3d 22 68 74 74 70 73 3a 2f 2f 7a 69 67 6c 61 6e 67 2e 6f 72 67 2f 64 6f 63 75 6d 65 6e 74 | ef="https://ziglang.org/document |
| 25a0 | 61 74 69 6f 6e 2f 30 2e 34 2e 30 2f 22 3e 30 2e 34 2e 30 3c 2f 61 3e 20 7c 0a 3c 61 20 68 72 65 | ation/0.4.0/">0.4.0</a>.|.<a.hre |
| 25c0 | 66 3d 22 68 74 74 70 73 3a 2f 2f 7a 69 67 6c 61 6e 67 2e 6f 72 67 2f 64 6f 63 75 6d 65 6e 74 61 | f="https://ziglang.org/documenta |
| 25e0 | 74 69 6f 6e 2f 30 2e 35 2e 30 2f 22 3e 30 2e 35 2e 30 3c 2f 61 3e 20 7c 0a 3c 61 20 68 72 65 66 | tion/0.5.0/">0.5.0</a>.|.<a.href |
| 2600 | 3d 22 68 74 74 70 73 3a 2f 2f 7a 69 67 6c 61 6e 67 2e 6f 72 67 2f 64 6f 63 75 6d 65 6e 74 61 74 | ="https://ziglang.org/documentat |
| 2620 | 69 6f 6e 2f 30 2e 36 2e 30 2f 22 3e 30 2e 36 2e 30 3c 2f 61 3e 20 7c 0a 3c 61 20 68 72 65 66 3d | ion/0.6.0/">0.6.0</a>.|.<a.href= |
| 2640 | 22 68 74 74 70 73 3a 2f 2f 7a 69 67 6c 61 6e 67 2e 6f 72 67 2f 64 6f 63 75 6d 65 6e 74 61 74 69 | "https://ziglang.org/documentati |
| 2660 | 6f 6e 2f 30 2e 37 2e 31 2f 22 3e 30 2e 37 2e 31 3c 2f 61 3e 20 7c 0a 3c 61 20 68 72 65 66 3d 22 | on/0.7.1/">0.7.1</a>.|.<a.href=" |
| 2680 | 68 74 74 70 73 3a 2f 2f 7a 69 67 6c 61 6e 67 2e 6f 72 67 2f 64 6f 63 75 6d 65 6e 74 61 74 69 6f | https://ziglang.org/documentatio |
| 26a0 | 6e 2f 30 2e 38 2e 31 2f 22 3e 30 2e 38 2e 31 3c 2f 61 3e 20 7c 0a 3c 61 20 68 72 65 66 3d 22 68 | n/0.8.1/">0.8.1</a>.|.<a.href="h |
| 26c0 | 74 74 70 73 3a 2f 2f 7a 69 67 6c 61 6e 67 2e 6f 72 67 2f 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e | ttps://ziglang.org/documentation |
| 26e0 | 2f 30 2e 39 2e 31 2f 22 3e 30 2e 39 2e 31 3c 2f 61 3e 20 7c 0a 3c 61 20 68 72 65 66 3d 22 68 74 | /0.9.1/">0.9.1</a>.|.<a.href="ht |
| 2700 | 74 70 73 3a 2f 2f 7a 69 67 6c 61 6e 67 2e 6f 72 67 2f 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 2f | tps://ziglang.org/documentation/ |
| 2720 | 30 2e 31 30 2e 31 2f 22 3e 30 2e 31 30 2e 31 3c 2f 61 3e 20 7c 0a 3c 61 20 68 72 65 66 3d 22 68 | 0.10.1/">0.10.1</a>.|.<a.href="h |
| 2740 | 74 74 70 73 3a 2f 2f 7a 69 67 6c 61 6e 67 2e 6f 72 67 2f 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e | ttps://ziglang.org/documentation |
| 2760 | 2f 30 2e 31 31 2e 30 2f 22 3e 30 2e 31 31 2e 30 3c 2f 61 3e 20 7c 0a 3c 61 20 68 72 65 66 3d 22 | /0.11.0/">0.11.0</a>.|.<a.href=" |
| 2780 | 68 74 74 70 73 3a 2f 2f 7a 69 67 6c 61 6e 67 2e 6f 72 67 2f 64 6f 63 75 6d 65 6e 74 61 74 69 6f | https://ziglang.org/documentatio |
| 27a0 | 6e 2f 30 2e 31 32 2e 31 2f 22 3e 30 2e 31 32 2e 31 3c 2f 61 3e 20 7c 0a 3c 61 20 68 72 65 66 3d | n/0.12.1/">0.12.1</a>.|.<a.href= |
| 27c0 | 22 68 74 74 70 73 3a 2f 2f 7a 69 67 6c 61 6e 67 2e 6f 72 67 2f 64 6f 63 75 6d 65 6e 74 61 74 69 | "https://ziglang.org/documentati |
| 27e0 | 6f 6e 2f 30 2e 31 33 2e 30 2f 22 3e 30 2e 31 33 2e 30 3c 2f 61 3e 20 7c 0a 3c 61 20 68 72 65 66 | on/0.13.0/">0.13.0</a>.|.<a.href |
| 2800 | 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 |
| 2820 | 69 6f 6e 2f 30 2e 31 34 2e 31 2f 22 3e 30 2e 31 34 2e 31 3c 2f 61 3e 20 7c 0a 30 2e 31 35 2e 31 | ion/0.14.1/">0.14.1</a>.|.0.15.1 |
| 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 35 2e 32 2f 22 3e 30 2e 31 35 2e 32 3c 2f 61 | documentation/0.15.2/">0.15.2</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 30 2e 31 36 2e 30 2f 22 3e 30 2e 31 36 2e 30 3c 2f | /documentation/0.16.0/">0.16.0</ |
| 28c0 | 61 3e 20 7c 0a 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 7a 69 67 6c 61 6e 67 2e 6f 72 | a>.|.<a.href="https://ziglang.or |
| 28e0 | 67 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 | g/documentation/master/">master< |
| 2900 | 2f 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 | /a>.........</nav>.........<nav. |
| 2920 | 61 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 | aria-labelledby="table-of-conten |
| 2940 | 74 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 | ts">...........<h2.id="table-of- |
| 2960 | 63 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 | contents">Table.of.Contents</h2> |
| 2980 | 0a 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 | .................<ul>.........<l |
| 29a0 | 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 49 6e 74 72 6f 64 75 63 74 69 6f 6e 22 20 68 72 65 66 3d | i><a.id="toc-Introduction".href= |
| 29c0 | 22 23 49 6e 74 72 6f 64 75 63 74 69 6f 6e 22 3e 49 6e 74 72 6f 64 75 63 74 69 6f 6e 3c 2f 61 3e | "#Introduction">Introduction</a> |
| 29e0 | 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 5a 69 67 | </li>.........<li><a.id="toc-Zig |
| 2a00 | 2d 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 | -Standard-Library".href="#Zig-St |
| 2a20 | 61 6e 64 61 72 64 2d 4c 69 62 72 61 72 79 22 3e 5a 69 67 20 53 74 61 6e 64 61 72 64 20 4c 69 62 | andard-Library">Zig.Standard.Lib |
| 2a40 | 72 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 | rary</a></li>.........<li><a.id= |
| 2a60 | 22 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 | "toc-Hello-World".href="#Hello-W |
| 2a80 | 6f 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 | orld">Hello.World</a></li>...... |
| 2aa0 | 20 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 | ...<li><a.id="toc-Comments".href |
| 2ac0 | 3d 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 | ="#Comments">Comments</a>....... |
| 2ae0 | 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 |
| 2b00 | 63 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 | c-Doc-Comments".href="#Doc-Comme |
| 2b20 | 6e 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 | nts">Doc.Comments</a></li>...... |
| 2b40 | 20 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 | .......<li><a.id="toc-Top-Level- |
| 2b60 | 44 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 | Doc-Comments".href="#Top-Level-D |
| 2b80 | 6f 63 2d 43 6f 6d 6d 65 6e 74 73 22 3e 54 6f 70 2d 4c 65 76 65 6c 20 44 6f 63 20 43 6f 6d 6d 65 | oc-Comments">Top-Level.Doc.Comme |
| 2ba0 | 6e 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 | nts</a></li>.........</ul></li>. |
| 2bc0 | 20 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 | ........<li><a.id="toc-Values".h |
| 2be0 | 72 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 | ref="#Values">Values</a>........ |
| 2c00 | 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 |
| 2c20 | 2d 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 | -Primitive-Types".href="#Primiti |
| 2c40 | 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 2f 6c | ve-Types">Primitive.Types</a></l |
| 2c60 | 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 50 72 | i>.............<li><a.id="toc-Pr |
| 2c80 | 69 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 | imitive-Values".href="#Primitive |
| 2ca0 | 2d 56 61 6c 75 65 73 22 3e 50 72 69 6d 69 74 69 76 65 20 56 61 6c 75 65 73 3c 2f 61 3e 3c 2f 6c | -Values">Primitive.Values</a></l |
| 2cc0 | 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 53 74 | i>.............<li><a.id="toc-St |
| 2ce0 | 72 69 6e 67 2d 4c 69 74 65 72 61 6c 73 2d 61 6e 64 2d 55 6e 69 63 6f 64 65 2d 43 6f 64 65 2d 50 | ring-Literals-and-Unicode-Code-P |
| 2d00 | 6f 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 | oint-Literals".href="#String-Lit |
| 2d20 | 65 72 61 6c 73 2d 61 6e 64 2d 55 6e 69 63 6f 64 65 2d 43 6f 64 65 2d 50 6f 69 6e 74 2d 4c 69 74 | erals-and-Unicode-Code-Point-Lit |
| 2d40 | 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 6e 69 63 6f | erals">String.Literals.and.Unico |
| 2d60 | 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 0a 20 20 20 20 20 | de.Code.Point.Literals</a>...... |
| 2d80 | 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e | .......<ul>.................<li> |
| 2da0 | 3c 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 | <a.id="toc-Escape-Sequences".hre |
| 2dc0 | 66 3d 22 23 45 73 63 61 70 65 2d 53 65 71 75 65 6e 63 65 73 22 3e 45 73 63 61 70 65 20 53 65 71 | f="#Escape-Sequences">Escape.Seq |
| 2de0 | 75 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 | uences</a></li>................. |
| 2e00 | 3c 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 | <li><a.id="toc-Multiline-String- |
| 2e20 | 4c 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 | Literals".href="#Multiline-Strin |
| 2e40 | 67 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 | g-Literals">Multiline.String.Lit |
| 2e60 | 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 2f 75 6c 3e | erals</a></li>.............</ul> |
| 2e80 | 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 |
| 2ea0 | 2d 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 | -Assignment".href="#Assignment"> |
| 2ec0 | 41 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 | Assignment</a>.............<ul>. |
| 2ee0 | 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 75 | ................<li><a.id="toc-u |
| 2f00 | 6e 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 | ndefined".href="#undefined">unde |
| 2f20 | 66 69 6e 65 64 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c | fined</a></li>.................< |
| 2f40 | 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 44 65 73 74 72 75 63 74 75 72 69 6e 67 22 20 68 72 65 | li><a.id="toc-Destructuring".hre |
| 2f60 | 66 3d 22 23 44 65 73 74 72 75 63 74 75 72 69 6e 67 22 3e 44 65 73 74 72 75 63 74 75 72 69 6e 67 | f="#Destructuring">Destructuring |
| 2f80 | 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> |
| 2fa0 | 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> |
| 2fc0 | 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 5a 69 67 2d | <a.id="toc-Zig-Test".href="#Zig- |
| 2fe0 | 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 75 6c 3e 0a | Test">Zig.Test</a>.........<ul>. |
| 3000 | 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 65 73 74 2d | ............<li><a.id="toc-Test- |
| 3020 | 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 63 6c 61 72 | Declarations".href="#Test-Declar |
| 3040 | 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 0a 20 20 | ations">Test.Declarations</a>... |
| 3060 | 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c | ..........<ul>.................< |
| 3080 | 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 3d 22 23 44 | li><a.id="toc-Doctests".href="#D |
| 30a0 | 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 20 20 20 20 | octests">Doctests</a></li>...... |
| 30c0 | 20 20 20 20 20 20 20 3c 2f 75 6c 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c | .......</ul></li>.............<l |
| 30e0 | 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 72 65 66 3d | i><a.id="toc-Test-Failure".href= |
| 3100 | 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 3c 2f 61 3e | "#Test-Failure">Test.Failure</a> |
| 3120 | 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 |
| 3140 | 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 74 73 22 3e | -Skip-Tests".href="#Skip-Tests"> |
| 3160 | 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 20 20 20 20 | Skip.Tests</a></li>............. |
| 3180 | 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 2d 4c 65 61 | <li><a.id="toc-Report-Memory-Lea |
| 31a0 | 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 6b 73 22 3e | ks".href="#Report-Memory-Leaks"> |
| 31c0 | 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 0a 20 20 20 | Report.Memory.Leaks</a></li>.... |
| 31e0 | 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 63 74 69 6e | .........<li><a.id="toc-Detectin |
| 3200 | 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 6e 67 2d 54 | g-Test-Build".href="#Detecting-T |
| 3220 | 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 69 6c 64 3c | est-Build">Detecting.Test.Build< |
| 3240 | 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=" |
| 3260 | 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 20 68 72 65 | toc-Test-Output-and-Logging".hre |
| 3280 | 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 3e 54 65 73 | f="#Test-Output-and-Logging">Tes |
| 32a0 | 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 3e 0a 20 20 | t.Output.and.Logging</a></li>... |
| 32c0 | 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 54 68 65 2d 54 65 73 | ..........<li><a.id="toc-The-Tes |
| 32e0 | 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 65 73 74 69 | ting-Namespace".href="#The-Testi |
| 3300 | 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 6d 65 73 70 | ng-Namespace">The.Testing.Namesp |
| 3320 | 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 3c 61 20 | ace</a></li>.............<li><a. |
| 3340 | 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 69 6f 6e 22 | id="toc-Test-Tool-Documentation" |
| 3360 | 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 69 6f 6e 22 | .href="#Test-Tool-Documentation" |
| 3380 | 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 3c 2f 6c 69 | >Test.Tool.Documentation</a></li |
| 33a0 | 3e 0a 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 | >.........</ul></li>.........<li |
| 33c0 | 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 22 23 56 61 | ><a.id="toc-Variables".href="#Va |
| 33e0 | 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 20 20 20 3c | riables">Variables</a>.........< |
| 3400 | 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 49 | ul>.............<li><a.id="toc-I |
| 3420 | 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 72 73 22 3e | dentifiers".href="#Identifiers"> |
| 3440 | 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 20 20 20 20 | Identifiers</a></li>............ |
| 3460 | 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 76 65 6c 2d | .<li><a.id="toc-Container-Level- |
| 3480 | 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 4c 65 76 65 | Variables".href="#Container-Leve |
| 34a0 | 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 20 56 61 72 | l-Variables">Container.Level.Var |
| 34c0 | 69 61 62 6c 65 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e | iables</a></li>.............<li> |
| 34e0 | 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 61 62 6c 65 | <a.id="toc-Static-Local-Variable |
| 3500 | 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 62 6c 65 73 | s".href="#Static-Local-Variables |
| 3520 | 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 3c 2f 6c 69 | ">Static.Local.Variables</a></li |
| 3540 | 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 72 | >.............<li><a.id="toc-Thr |
| 3560 | 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 54 68 72 65 | ead-Local-Variables".href="#Thre |
| 3580 | 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 |
| 35a0 | 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>............. |
| 35c0 | 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 65 73 22 20 | <li><a.id="toc-Local-Variables". |
| 35e0 | 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 6c 20 56 61 | href="#Local-Variables">Local.Va |
| 3600 | 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 6c 3e 3c 2f | riables</a></li>.........</ul></ |
| 3620 | 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 6e 74 65 67 | li>.........<li><a.id="toc-Integ |
| 3640 | 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 72 73 3c 2f | ers".href="#Integers">Integers</ |
| 3660 | 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> |
| 3680 | 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 20 68 72 65 | <a.id="toc-Integer-Literals".hre |
| 36a0 | 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 20 4c 69 | f="#Integer-Literals">Integer.Li |
| 36c0 | 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 3e | terals</a></li>.............<li> |
| 36e0 | 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 61 6c 75 65 | <a.id="toc-Runtime-Integer-Value |
| 3700 | 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 6c 75 65 73 | s".href="#Runtime-Integer-Values |
| 3720 | 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 3c 2f 6c 69 | ">Runtime.Integer.Values</a></li |
| 3740 | 3e 0a 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 | >.........</ul></li>.........<li |
| 3760 | 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 6c 6f 61 74 | ><a.id="toc-Floats".href="#Float |
| 3780 | 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 20 20 20 20 | s">Floats</a>.........<ul>...... |
| 37a0 | 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 4c 69 74 65 | .......<li><a.id="toc-Float-Lite |
| 37c0 | 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 3e 46 6c 6f | rals".href="#Float-Literals">Flo |
| 37e0 | 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 20 20 20 20 | at.Literals</a></li>............ |
| 3800 | 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 6e 74 2d 4f | .<li><a.id="toc-Floating-Point-O |
| 3820 | 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 6f 69 6e 74 | perations".href="#Floating-Point |
| 3840 | 2d 4f 70 65 72 61 74 69 6f 6e 73 22 3e 46 6c 6f 61 74 69 6e 67 20 50 6f 69 6e 74 20 4f 70 65 72 | -Operations">Floating.Point.Oper |
| 3860 | 61 74 69 6f 6e 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 3c 2f 6c | ations</a></li>.........</ul></l |
| 3880 | 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 65 72 61 74 | i>.........<li><a.id="toc-Operat |
| 38a0 | 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 74 6f 72 73 | ors".href="#Operators">Operators |
| 38c0 | 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 |
| 38e0 | 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 6f 72 73 22 | i><a.id="toc-Table-of-Operators" |
| 3900 | 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 54 61 62 6c | .href="#Table-of-Operators">Tabl |
| 3920 | 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 20 20 20 20 | e.of.Operators</a></li>......... |
| 3940 | 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 65 22 20 68 | ....<li><a.id="toc-Precedence".h |
| 3960 | 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 3c 2f 61 3e | ref="#Precedence">Precedence</a> |
| 3980 | 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>........ |
| 39a0 | 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 3d 22 23 41 | .<li><a.id="toc-Arrays".href="#A |
| 39c0 | 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 6c 3e 0a 20 | rrays">Arrays</a>.........<ul>.. |
| 39e0 | 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 4d 75 6c 74 69 64 | ...........<li><a.id="toc-Multid |
| 3a00 | 69 6d 65 6e 73 69 6f 6e 61 6c 2d 41 72 72 61 79 73 22 20 68 72 65 66 3d 22 23 4d 75 6c 74 69 64 | imensional-Arrays".href="#Multid |
| 3a20 | 69 6d 65 6e 73 69 6f 6e 61 6c 2d 41 72 72 61 79 73 22 3e 4d 75 6c 74 69 64 69 6d 65 6e 73 69 6f | imensional-Arrays">Multidimensio |
| 3a40 | 6e 61 6c 20 41 72 72 61 79 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | nal.Arrays</a></li>............. |
| 3a60 | 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 |
| 3a80 | 65 64 2d 41 72 72 61 79 73 22 20 68 72 65 66 3d 22 23 53 65 6e 74 69 6e 65 6c 2d 54 65 72 6d 69 | ed-Arrays".href="#Sentinel-Termi |
| 3aa0 | 6e 61 74 65 64 2d 41 72 72 61 79 73 22 3e 53 65 6e 74 69 6e 65 6c 2d 54 65 72 6d 69 6e 61 74 65 | nated-Arrays">Sentinel-Terminate |
| 3ac0 | 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 20 20 20 20 3c 6c | d.Arrays</a></li>.............<l |
| 3ae0 | 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 44 65 73 74 72 75 63 74 75 72 69 6e 67 2d 41 72 72 61 79 | i><a.id="toc-Destructuring-Array |
| 3b00 | 73 22 20 68 72 65 66 3d 22 23 44 65 73 74 72 75 63 74 75 72 69 6e 67 2d 41 72 72 61 79 73 22 3e | s".href="#Destructuring-Arrays"> |
| 3b20 | 44 65 73 74 72 75 63 74 75 72 69 6e 67 20 41 72 72 61 79 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 | Destructuring.Arrays</a></li>... |
| 3b40 | 20 20 20 20 20 20 3c 2f 75 6c 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 | ......</ul></li>.........<li><a. |
| 3b60 | 69 64 3d 22 74 6f 63 2d 56 65 63 74 6f 72 73 22 20 68 72 65 66 3d 22 23 56 65 63 74 6f 72 73 22 | id="toc-Vectors".href="#Vectors" |
| 3b80 | 3e 56 65 63 74 6f 72 73 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 | >Vectors</a>.........<ul>....... |
| 3ba0 | 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 44 65 73 74 72 75 63 74 75 72 69 | ......<li><a.id="toc-Destructuri |
| 3bc0 | 6e 67 2d 56 65 63 74 6f 72 73 22 20 68 72 65 66 3d 22 23 44 65 73 74 72 75 63 74 75 72 69 6e 67 | ng-Vectors".href="#Destructuring |
| 3be0 | 2d 56 65 63 74 6f 72 73 22 3e 44 65 73 74 72 75 63 74 75 72 69 6e 67 20 56 65 63 74 6f 72 73 3c | -Vectors">Destructuring.Vectors< |
| 3c00 | 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>..... |
| 3c20 | 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 50 6f 69 6e 74 65 72 73 22 20 68 72 65 | ....<li><a.id="toc-Pointers".hre |
| 3c40 | 66 3d 22 23 50 6f 69 6e 74 65 72 73 22 3e 50 6f 69 6e 74 65 72 73 3c 2f 61 3e 0a 20 20 20 20 20 | f="#Pointers">Pointers</a>...... |
| 3c60 | 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 |
| 3c80 | 6f 63 2d 76 6f 6c 61 74 69 6c 65 22 20 68 72 65 66 3d 22 23 76 6f 6c 61 74 69 6c 65 22 3e 76 6f | oc-volatile".href="#volatile">vo |
| 3ca0 | 6c 61 74 69 6c 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e | latile</a></li>.............<li> |
| 3cc0 | 3c 61 20 69 64 3d 22 74 6f 63 2d 41 6c 69 67 6e 6d 65 6e 74 22 20 68 72 65 66 3d 22 23 41 6c 69 | <a.id="toc-Alignment".href="#Ali |
| 3ce0 | 67 6e 6d 65 6e 74 22 3e 41 6c 69 67 6e 6d 65 6e 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 | gnment">Alignment</a></li>...... |
| 3d00 | 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 61 6c 6c 6f 77 7a 65 72 6f 22 | .......<li><a.id="toc-allowzero" |
| 3d20 | 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 61 3e | .href="#allowzero">allowzero</a> |
| 3d40 | 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 |
| 3d60 | 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 22 20 68 | -Sentinel-Terminated-Pointers".h |
| 3d80 | 72 65 66 3d 22 23 53 65 6e 74 69 6e 65 6c 2d 54 65 72 6d 69 6e 61 74 65 64 2d 50 6f 69 6e 74 65 | ref="#Sentinel-Terminated-Pointe |
| 3da0 | 72 73 22 3e 53 65 6e 74 69 6e 65 6c 2d 54 65 72 6d 69 6e 61 74 65 64 20 50 6f 69 6e 74 65 72 73 | rs">Sentinel-Terminated.Pointers |
| 3dc0 | 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>.... |
| 3de0 | 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 53 6c 69 63 65 73 22 20 68 72 65 66 | .....<li><a.id="toc-Slices".href |
| 3e00 | 3d 22 23 53 6c 69 63 65 73 22 3e 53 6c 69 63 65 73 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 3c 75 | ="#Slices">Slices</a>.........<u |
| 3e20 | 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 53 65 | l>.............<li><a.id="toc-Se |
| 3e40 | 6e 74 69 6e 65 6c 2d 54 65 72 6d 69 6e 61 74 65 64 2d 53 6c 69 63 65 73 22 20 68 72 65 66 3d 22 | ntinel-Terminated-Slices".href=" |
| 3e60 | 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 65 6e | #Sentinel-Terminated-Slices">Sen |
| 3e80 | 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 69 3e | tinel-Terminated.Slices</a></li> |
| 3ea0 | 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> |
| 3ec0 | 3c 61 20 69 64 3d 22 74 6f 63 2d 73 74 72 75 63 74 22 20 68 72 65 66 3d 22 23 73 74 72 75 63 74 | <a.id="toc-struct".href="#struct |
| 3ee0 | 22 3e 73 74 72 75 63 74 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 | ">struct</a>.........<ul>....... |
| 3f00 | 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 44 65 66 61 75 6c 74 2d 46 69 65 | ......<li><a.id="toc-Default-Fie |
| 3f20 | 6c 64 2d 56 61 6c 75 65 73 22 20 68 72 65 66 3d 22 23 44 65 66 61 75 6c 74 2d 46 69 65 6c 64 2d | ld-Values".href="#Default-Field- |
| 3f40 | 56 61 6c 75 65 73 22 3e 44 65 66 61 75 6c 74 20 46 69 65 6c 64 20 56 61 6c 75 65 73 3c 2f 61 3e | Values">Default.Field.Values</a> |
| 3f60 | 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>............... |
| 3f80 | 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 46 61 75 6c 74 79 2d 44 65 66 61 75 6c 74 2d | ..<li><a.id="toc-Faulty-Default- |
| 3fa0 | 46 69 65 6c 64 2d 56 61 6c 75 65 73 22 20 68 72 65 66 3d 22 23 46 61 75 6c 74 79 2d 44 65 66 61 | Field-Values".href="#Faulty-Defa |
| 3fc0 | 75 6c 74 2d 46 69 65 6c 64 2d 56 61 6c 75 65 73 22 3e 46 61 75 6c 74 79 20 44 65 66 61 75 6c 74 | ult-Field-Values">Faulty.Default |
| 3fe0 | 20 46 69 65 6c 64 20 56 61 6c 75 65 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 | .Field.Values</a></li>.......... |
| 4000 | 20 20 20 3c 2f 75 6c 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 | ...</ul></li>.............<li><a |
| 4020 | 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 65 66 3d 22 23 65 | .id="toc-extern-struct".href="#e |
| 4040 | 78 74 65 72 6e 2d 73 74 72 75 63 74 22 3e 65 78 74 65 72 6e 20 73 74 72 75 63 74 3c 2f 61 3e 3c | xtern-struct">extern.struct</a>< |
| 4060 | 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- |
| 4080 | 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 65 64 2d 73 74 72 | packed-struct".href="#packed-str |
| 40a0 | 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 3e 0a 20 20 20 20 | uct">packed.struct</a></li>..... |
| 40c0 | 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 75 63 74 2d 4e 61 | ........<li><a.id="toc-Struct-Na |
| 40e0 | 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 22 3e 53 74 72 75 | ming".href="#Struct-Naming">Stru |
| 4100 | 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 20 20 20 20 20 3c | ct.Naming</a></li>.............< |
| 4120 | 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 72 75 63 74 2d 4c | li><a.id="toc-Anonymous-Struct-L |
| 4140 | 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 53 74 72 75 63 74 | iterals".href="#Anonymous-Struct |
| 4160 | 2d 4c 69 74 65 72 61 6c 73 22 3e 41 6e 6f 6e 79 6d 6f 75 73 20 53 74 72 75 63 74 20 4c 69 74 65 | -Literals">Anonymous.Struct.Lite |
| 4180 | 72 61 6c 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 | rals</a></li>.............<li><a |
| 41a0 | 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 70 6c 65 73 22 3e | .id="toc-Tuples".href="#Tuples"> |
| 41c0 | 54 75 70 6c 65 73 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 | Tuples</a>.............<ul>..... |
| 41e0 | 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 73 74 72 | ............<li><a.id="toc-Destr |
| 4200 | 75 63 74 75 72 69 6e 67 2d 54 75 70 6c 65 73 22 20 68 72 65 66 3d 22 23 44 65 73 74 72 75 63 74 | ucturing-Tuples".href="#Destruct |
| 4220 | 75 72 69 6e 67 2d 54 75 70 6c 65 73 22 3e 44 65 73 74 72 75 63 74 75 72 69 6e 67 20 54 75 70 6c | uring-Tuples">Destructuring.Tupl |
| 4240 | 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 3c 2f 6c | es</a></li>.............</ul></l |
| 4260 | 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 |
| 4280 | 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 65 6e 75 6d 22 20 68 72 65 66 3d 22 23 65 6e 75 6d 22 3e | i><a.id="toc-enum".href="#enum"> |
| 42a0 | 65 6e 75 6d 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 | enum</a>.........<ul>........... |
| 42c0 | 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 65 78 74 65 72 6e 2d 65 6e 75 6d 22 20 68 72 | ..<li><a.id="toc-extern-enum".hr |
| 42e0 | 65 66 3d 22 23 65 78 74 65 72 6e 2d 65 6e 75 6d 22 3e 65 78 74 65 72 6e 20 65 6e 75 6d 3c 2f 61 | ef="#extern-enum">extern.enum</a |
| 4300 | 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 |
| 4320 | 63 2d 45 6e 75 6d 2d 4c 69 74 65 72 61 6c 73 22 20 68 72 65 66 3d 22 23 45 6e 75 6d 2d 4c 69 74 | c-Enum-Literals".href="#Enum-Lit |
| 4340 | 65 72 61 6c 73 22 3e 45 6e 75 6d 20 4c 69 74 65 72 61 6c 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 | erals">Enum.Literals</a></li>... |
| 4360 | 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 4e 6f 6e 2d 65 78 68 | ..........<li><a.id="toc-Non-exh |
| 4380 | 61 75 73 74 69 76 65 2d 65 6e 75 6d 22 20 68 72 65 66 3d 22 23 4e 6f 6e 2d 65 78 68 61 75 73 74 | austive-enum".href="#Non-exhaust |
| 43a0 | 69 76 65 2d 65 6e 75 6d 22 3e 4e 6f 6e 2d 65 78 68 61 75 73 74 69 76 65 20 65 6e 75 6d 3c 2f 61 | ive-enum">Non-exhaustive.enum</a |
| 43c0 | 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | ></li>.........</ul></li>....... |
| 43e0 | 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 75 6e 69 6f 6e 22 20 68 72 65 66 3d 22 23 75 | ..<li><a.id="toc-union".href="#u |
| 4400 | 6e 69 6f 6e 22 3e 75 6e 69 6f 6e 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 | nion">union</a>.........<ul>.... |
| 4420 | 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 54 61 67 67 65 64 2d 75 | .........<li><a.id="toc-Tagged-u |
| 4440 | 6e 69 6f 6e 22 20 68 72 65 66 3d 22 23 54 61 67 67 65 64 2d 75 6e 69 6f 6e 22 3e 54 61 67 67 65 | nion".href="#Tagged-union">Tagge |
| 4460 | 64 20 75 6e 69 6f 6e 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 | d.union</a></li>.............<li |
| 4480 | 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 65 78 74 65 72 6e 2d 75 6e 69 6f 6e 22 20 68 72 65 66 3d 22 | ><a.id="toc-extern-union".href=" |
| 44a0 | 23 65 78 74 65 72 6e 2d 75 6e 69 6f 6e 22 3e 65 78 74 65 72 6e 20 75 6e 69 6f 6e 3c 2f 61 3e 3c | #extern-union">extern.union</a>< |
| 44c0 | 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- |
| 44e0 | 70 61 63 6b 65 64 2d 75 6e 69 6f 6e 22 20 68 72 65 66 3d 22 23 70 61 63 6b 65 64 2d 75 6e 69 6f | packed-union".href="#packed-unio |
| 4500 | 6e 22 3e 70 61 63 6b 65 64 20 75 6e 69 6f 6e 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 | n">packed.union</a></li>........ |
| 4520 | 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 55 6e | .....<li><a.id="toc-Anonymous-Un |
| 4540 | 69 6f 6e 2d 4c 69 74 65 72 61 6c 73 22 20 68 72 65 66 3d 22 23 41 6e 6f 6e 79 6d 6f 75 73 2d 55 | ion-Literals".href="#Anonymous-U |
| 4560 | 6e 69 6f 6e 2d 4c 69 74 65 72 61 6c 73 22 3e 41 6e 6f 6e 79 6d 6f 75 73 20 55 6e 69 6f 6e 20 4c | nion-Literals">Anonymous.Union.L |
| 4580 | 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 3c 2f 75 6c 3e 3c 2f | iterals</a></li>.........</ul></ |
| 45a0 | 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 6f 70 61 71 75 | li>.........<li><a.id="toc-opaqu |
| 45c0 | 65 22 20 68 72 65 66 3d 22 23 6f 70 61 71 75 65 22 3e 6f 70 61 71 75 65 3c 2f 61 3e 3c 2f 6c 69 | e".href="#opaque">opaque</a></li |
| 45e0 | 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 42 6c 6f 63 6b 73 22 | >.........<li><a.id="toc-Blocks" |
| 4600 | 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 0a 20 20 20 20 20 | .href="#Blocks">Blocks</a>...... |
| 4620 | 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 |
| 4640 | 6f 63 2d 53 68 61 64 6f 77 69 6e 67 22 20 68 72 65 66 3d 22 23 53 68 61 64 6f 77 69 6e 67 22 3e | oc-Shadowing".href="#Shadowing"> |
| 4660 | 53 68 61 64 6f 77 69 6e 67 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c | Shadowing</a></li>.............< |
| 4680 | 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 45 6d 70 74 79 2d 42 6c 6f 63 6b 73 22 20 68 72 65 66 | li><a.id="toc-Empty-Blocks".href |
| 46a0 | 3d 22 23 45 6d 70 74 79 2d 42 6c 6f 63 6b 73 22 3e 45 6d 70 74 79 20 42 6c 6f 63 6b 73 3c 2f 61 | ="#Empty-Blocks">Empty.Blocks</a |
| 46c0 | 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | ></li>.........</ul></li>....... |
| 46e0 | 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 73 77 69 74 63 68 22 20 68 72 65 66 3d 22 23 | ..<li><a.id="toc-switch".href="# |
| 4700 | 73 77 69 74 63 68 22 3e 73 77 69 74 63 68 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a | switch">switch</a>.........<ul>. |
| 4720 | 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 68 61 75 | ............<li><a.id="toc-Exhau |
| 4740 | 73 74 69 76 65 2d 53 77 69 74 63 68 69 6e 67 22 20 68 72 65 66 3d 22 23 45 78 68 61 75 73 74 69 | stive-Switching".href="#Exhausti |
| 4760 | 76 65 2d 53 77 69 74 63 68 69 6e 67 22 3e 45 78 68 61 75 73 74 69 76 65 20 53 77 69 74 63 68 69 | ve-Switching">Exhaustive.Switchi |
| 4780 | 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 20 69 | ng</a></li>.............<li><a.i |
| 47a0 | 64 3d 22 74 6f 63 2d 53 77 69 74 63 68 69 6e 67 2d 77 69 74 68 2d 45 6e 75 6d 2d 4c 69 74 65 72 | d="toc-Switching-with-Enum-Liter |
| 47c0 | 61 6c 73 22 20 68 72 65 66 3d 22 23 53 77 69 74 63 68 69 6e 67 2d 77 69 74 68 2d 45 6e 75 6d 2d | als".href="#Switching-with-Enum- |
| 47e0 | 4c 69 74 65 72 61 6c 73 22 3e 53 77 69 74 63 68 69 6e 67 20 77 69 74 68 20 45 6e 75 6d 20 4c 69 | Literals">Switching.with.Enum.Li |
| 4800 | 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 3e | terals</a></li>.............<li> |
| 4820 | 3c 61 20 69 64 3d 22 74 6f 63 2d 4c 61 62 65 6c 65 64 2d 73 77 69 74 63 68 22 20 68 72 65 66 3d | <a.id="toc-Labeled-switch".href= |
| 4840 | 22 23 4c 61 62 65 6c 65 64 2d 73 77 69 74 63 68 22 3e 4c 61 62 65 6c 65 64 20 73 77 69 74 63 68 | "#Labeled-switch">Labeled.switch |
| 4860 | 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= |
| 4880 | 22 74 6f 63 2d 49 6e 6c 69 6e 65 2d 53 77 69 74 63 68 2d 50 72 6f 6e 67 73 22 20 68 72 65 66 3d | "toc-Inline-Switch-Prongs".href= |
| 48a0 | 22 23 49 6e 6c 69 6e 65 2d 53 77 69 74 63 68 2d 50 72 6f 6e 67 73 22 3e 49 6e 6c 69 6e 65 20 53 | "#Inline-Switch-Prongs">Inline.S |
| 48c0 | 77 69 74 63 68 20 50 72 6f 6e 67 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 2f | witch.Prongs</a></li>.........</ |
| 48e0 | 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- |
| 4900 | 77 68 69 6c 65 22 20 68 72 65 66 3d 22 23 77 68 69 6c 65 22 3e 77 68 69 6c 65 3c 2f 61 3e 0a 20 | while".href="#while">while</a>.. |
| 4920 | 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 | .......<ul>.............<li><a.i |
| 4940 | 64 3d 22 74 6f 63 2d 4c 61 62 65 6c 65 64 2d 77 68 69 6c 65 22 20 68 72 65 66 3d 22 23 4c 61 62 | d="toc-Labeled-while".href="#Lab |
| 4960 | 65 6c 65 64 2d 77 68 69 6c 65 22 3e 4c 61 62 65 6c 65 64 20 77 68 69 6c 65 3c 2f 61 3e 3c 2f 6c | eled-while">Labeled.while</a></l |
| 4980 | 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 77 68 | i>.............<li><a.id="toc-wh |
| 49a0 | 69 6c 65 2d 77 69 74 68 2d 4f 70 74 69 6f 6e 61 6c 73 22 20 68 72 65 66 3d 22 23 77 68 69 6c 65 | ile-with-Optionals".href="#while |
| 49c0 | 2d 77 69 74 68 2d 4f 70 74 69 6f 6e 61 6c 73 22 3e 77 68 69 6c 65 20 77 69 74 68 20 4f 70 74 69 | -with-Optionals">while.with.Opti |
| 49e0 | 6f 6e 61 6c 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c | onals</a></li>.............<li>< |
| 4a00 | 61 20 69 64 3d 22 74 6f 63 2d 77 68 69 6c 65 2d 77 69 74 68 2d 45 72 72 6f 72 2d 55 6e 69 6f 6e | a.id="toc-while-with-Error-Union |
| 4a20 | 73 22 20 68 72 65 66 3d 22 23 77 68 69 6c 65 2d 77 69 74 68 2d 45 72 72 6f 72 2d 55 6e 69 6f 6e | s".href="#while-with-Error-Union |
| 4a40 | 73 22 3e 77 68 69 6c 65 20 77 69 74 68 20 45 72 72 6f 72 20 55 6e 69 6f 6e 73 3c 2f 61 3e 3c 2f | s">while.with.Error.Unions</a></ |
| 4a60 | 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 69 | li>.............<li><a.id="toc-i |
| 4a80 | 6e 6c 69 6e 65 2d 77 68 69 6c 65 22 20 68 72 65 66 3d 22 23 69 6e 6c 69 6e 65 2d 77 68 69 6c 65 | nline-while".href="#inline-while |
| 4aa0 | 22 3e 69 6e 6c 69 6e 65 20 77 68 69 6c 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 | ">inline.while</a></li>......... |
| 4ac0 | 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 |
| 4ae0 | 63 2d 66 6f 72 22 20 68 72 65 66 3d 22 23 66 6f 72 22 3e 66 6f 72 3c 2f 61 3e 0a 20 20 20 20 20 | c-for".href="#for">for</a>...... |
| 4b00 | 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 |
| 4b20 | 6f 63 2d 4c 61 62 65 6c 65 64 2d 66 6f 72 22 20 68 72 65 66 3d 22 23 4c 61 62 65 6c 65 64 2d 66 | oc-Labeled-for".href="#Labeled-f |
| 4b40 | 6f 72 22 3e 4c 61 62 65 6c 65 64 20 66 6f 72 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 | or">Labeled.for</a></li>........ |
| 4b60 | 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 66 6f 72 22 20 | .....<li><a.id="toc-inline-for". |
| 4b80 | 68 72 65 66 3d 22 23 69 6e 6c 69 6e 65 2d 66 6f 72 22 3e 69 6e 6c 69 6e 65 20 66 6f 72 3c 2f 61 | href="#inline-for">inline.for</a |
| 4ba0 | 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | ></li>.........</ul></li>....... |
| 4bc0 | 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 69 66 22 20 68 72 65 66 3d 22 23 69 66 22 3e | ..<li><a.id="toc-if".href="#if"> |
| 4be0 | 69 66 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | if</a>.........<ul>............. |
| 4c00 | 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 69 66 2d 77 69 74 68 2d 4f 70 74 69 6f 6e 61 6c 73 | <li><a.id="toc-if-with-Optionals |
| 4c20 | 22 20 68 72 65 66 3d 22 23 69 66 2d 77 69 74 68 2d 4f 70 74 69 6f 6e 61 6c 73 22 3e 69 66 20 77 | ".href="#if-with-Optionals">if.w |
| 4c40 | 69 74 68 20 4f 70 74 69 6f 6e 61 6c 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c | ith.Optionals</a></li>.........< |
| 4c60 | 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 |
| 4c80 | 2d 64 65 66 65 72 22 20 68 72 65 66 3d 22 23 64 65 66 65 72 22 3e 64 65 66 65 72 3c 2f 61 3e 3c | -defer".href="#defer">defer</a>< |
| 4ca0 | 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 75 6e 72 65 | /li>.........<li><a.id="toc-unre |
| 4cc0 | 61 63 68 61 62 6c 65 22 20 68 72 65 66 3d 22 23 75 6e 72 65 61 63 68 61 62 6c 65 22 3e 75 6e 72 | achable".href="#unreachable">unr |
| 4ce0 | 65 61 63 68 61 62 6c 65 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 | eachable</a>.........<ul>....... |
| 4d00 | 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 42 61 73 69 63 73 22 20 68 72 65 | ......<li><a.id="toc-Basics".hre |
| 4d20 | 66 3d 22 23 42 61 73 69 63 73 22 3e 42 61 73 69 63 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 | f="#Basics">Basics</a></li>..... |
| 4d40 | 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 41 74 2d 43 6f 6d 70 69 6c | ........<li><a.id="toc-At-Compil |
| 4d60 | 65 2d 54 69 6d 65 22 20 68 72 65 66 3d 22 23 41 74 2d 43 6f 6d 70 69 6c 65 2d 54 69 6d 65 22 3e | e-Time".href="#At-Compile-Time"> |
| 4d80 | 41 74 20 43 6f 6d 70 69 6c 65 2d 54 69 6d 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 | At.Compile-Time</a></li>........ |
| 4da0 | 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 |
| 4dc0 | 6f 63 2d 6e 6f 72 65 74 75 72 6e 22 20 68 72 65 66 3d 22 23 6e 6f 72 65 74 75 72 6e 22 3e 6e 6f | oc-noreturn".href="#noreturn">no |
| 4de0 | 72 65 74 75 72 6e 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 | return</a></li>.........<li><a.i |
| 4e00 | 64 3d 22 74 6f 63 2d 46 75 6e 63 74 69 6f 6e 73 22 20 68 72 65 66 3d 22 23 46 75 6e 63 74 69 6f | d="toc-Functions".href="#Functio |
| 4e20 | 6e 73 22 3e 46 75 6e 63 74 69 6f 6e 73 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 | ns">Functions</a>.........<ul>.. |
| 4e40 | 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 61 73 73 2d 62 | ...........<li><a.id="toc-Pass-b |
| 4e60 | 79 2d 76 61 6c 75 65 2d 50 61 72 61 6d 65 74 65 72 73 22 20 68 72 65 66 3d 22 23 50 61 73 73 2d | y-value-Parameters".href="#Pass- |
| 4e80 | 62 79 2d 76 61 6c 75 65 2d 50 61 72 61 6d 65 74 65 72 73 22 3e 50 61 73 73 2d 62 79 2d 76 61 6c | by-value-Parameters">Pass-by-val |
| 4ea0 | 75 65 20 50 61 72 61 6d 65 74 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 | ue.Parameters</a></li>.......... |
| 4ec0 | 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 46 75 6e 63 74 69 6f 6e 2d 50 61 72 61 6d | ...<li><a.id="toc-Function-Param |
| 4ee0 | 65 74 65 72 2d 54 79 70 65 2d 49 6e 66 65 72 65 6e 63 65 22 20 68 72 65 66 3d 22 23 46 75 6e 63 | eter-Type-Inference".href="#Func |
| 4f00 | 74 69 6f 6e 2d 50 61 72 61 6d 65 74 65 72 2d 54 79 70 65 2d 49 6e 66 65 72 65 6e 63 65 22 3e 46 | tion-Parameter-Type-Inference">F |
| 4f20 | 75 6e 63 74 69 6f 6e 20 50 61 72 61 6d 65 74 65 72 20 54 79 70 65 20 49 6e 66 65 72 65 6e 63 65 | unction.Parameter.Type.Inference |
| 4f40 | 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= |
| 4f60 | 22 74 6f 63 2d 69 6e 6c 69 6e 65 2d 66 6e 22 20 68 72 65 66 3d 22 23 69 6e 6c 69 6e 65 2d 66 6e | "toc-inline-fn".href="#inline-fn |
| 4f80 | 22 3e 69 6e 6c 69 6e 65 20 66 6e 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 | ">inline.fn</a></li>............ |
| 4fa0 | 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 46 75 6e 63 74 69 6f 6e 2d 52 65 66 6c 65 63 74 | .<li><a.id="toc-Function-Reflect |
| 4fc0 | 69 6f 6e 22 20 68 72 65 66 3d 22 23 46 75 6e 63 74 69 6f 6e 2d 52 65 66 6c 65 63 74 69 6f 6e 22 | ion".href="#Function-Reflection" |
| 4fe0 | 3e 46 75 6e 63 74 69 6f 6e 20 52 65 66 6c 65 63 74 69 6f 6e 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 | >Function.Reflection</a></li>... |
| 5000 | 20 20 20 20 20 20 3c 2f 75 6c 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 | ......</ul></li>.........<li><a. |
| 5020 | 69 64 3d 22 74 6f 63 2d 45 72 72 6f 72 73 22 20 68 72 65 66 3d 22 23 45 72 72 6f 72 73 22 3e 45 | id="toc-Errors".href="#Errors">E |
| 5040 | 72 72 6f 72 73 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 | rrors</a>.........<ul>.......... |
| 5060 | 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 45 72 72 6f 72 2d 53 65 74 2d 54 79 70 65 | ...<li><a.id="toc-Error-Set-Type |
| 5080 | 22 20 68 72 65 66 3d 22 23 45 72 72 6f 72 2d 53 65 74 2d 54 79 70 65 22 3e 45 72 72 6f 72 20 53 | ".href="#Error-Set-Type">Error.S |
| 50a0 | 65 74 20 54 79 70 65 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 | et.Type</a>.............<ul>.... |
| 50c0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 54 68 65 2d | .............<li><a.id="toc-The- |
| 50e0 | 47 6c 6f 62 61 6c 2d 45 72 72 6f 72 2d 53 65 74 22 20 68 72 65 66 3d 22 23 54 68 65 2d 47 6c 6f | Global-Error-Set".href="#The-Glo |
| 5100 | 62 61 6c 2d 45 72 72 6f 72 2d 53 65 74 22 3e 54 68 65 20 47 6c 6f 62 61 6c 20 45 72 72 6f 72 20 | bal-Error-Set">The.Global.Error. |
| 5120 | 53 65 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 3c 2f | Set</a></li>.............</ul></ |
| 5140 | 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 45 | li>.............<li><a.id="toc-E |
| 5160 | 72 72 6f 72 2d 55 6e 69 6f 6e 2d 54 79 70 65 22 20 68 72 65 66 3d 22 23 45 72 72 6f 72 2d 55 6e | rror-Union-Type".href="#Error-Un |
| 5180 | 69 6f 6e 2d 54 79 70 65 22 3e 45 72 72 6f 72 20 55 6e 69 6f 6e 20 54 79 70 65 3c 2f 61 3e 0a 20 | ion-Type">Error.Union.Type</a>.. |
| 51a0 | 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ...........<ul>................. |
| 51c0 | 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 63 61 74 63 68 22 20 68 72 65 66 3d 22 23 63 61 74 | <li><a.id="toc-catch".href="#cat |
| 51e0 | 63 68 22 3e 63 61 74 63 68 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 | ch">catch</a></li>.............. |
| 5200 | 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 74 72 79 22 20 68 72 65 66 3d 22 23 74 72 | ...<li><a.id="toc-try".href="#tr |
| 5220 | 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 20 20 20 20 | y">try</a></li>................. |
| 5240 | 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 65 72 72 64 65 66 65 72 22 20 68 72 65 66 3d 22 23 | <li><a.id="toc-errdefer".href="# |
| 5260 | 65 72 72 64 65 66 65 72 22 3e 65 72 72 64 65 66 65 72 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 | errdefer">errdefer</a></li>..... |
| 5280 | 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 65 72 67 69 | ............<li><a.id="toc-Mergi |
| 52a0 | 6e 67 2d 45 72 72 6f 72 2d 53 65 74 73 22 20 68 72 65 66 3d 22 23 4d 65 72 67 69 6e 67 2d 45 72 | ng-Error-Sets".href="#Merging-Er |
| 52c0 | 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> |
| 52e0 | 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= |
| 5300 | 22 74 6f 63 2d 49 6e 66 65 72 72 65 64 2d 45 72 72 6f 72 2d 53 65 74 73 22 20 68 72 65 66 3d 22 | "toc-Inferred-Error-Sets".href=" |
| 5320 | 23 49 6e 66 65 72 72 65 64 2d 45 72 72 6f 72 2d 53 65 74 73 22 3e 49 6e 66 65 72 72 65 64 20 45 | #Inferred-Error-Sets">Inferred.E |
| 5340 | 72 72 6f 72 20 53 65 74 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c | rror.Sets</a></li>.............< |
| 5360 | 2f 75 6c 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d | /ul></li>.............<li><a.id= |
| 5380 | 22 74 6f 63 2d 45 72 72 6f 72 2d 52 65 74 75 72 6e 2d 54 72 61 63 65 73 22 20 68 72 65 66 3d 22 | "toc-Error-Return-Traces".href=" |
| 53a0 | 23 45 72 72 6f 72 2d 52 65 74 75 72 6e 2d 54 72 61 63 65 73 22 3e 45 72 72 6f 72 20 52 65 74 75 | #Error-Return-Traces">Error.Retu |
| 53c0 | 72 6e 20 54 72 61 63 65 73 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 | rn.Traces</a>.............<ul>.. |
| 53e0 | 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 49 6d | ...............<li><a.id="toc-Im |
| 5400 | 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 2d 44 65 74 61 69 6c 73 22 20 68 72 65 66 3d 22 23 49 6d 70 | plementation-Details".href="#Imp |
| 5420 | 6c 65 6d 65 6e 74 61 74 69 6f 6e 2d 44 65 74 61 69 6c 73 22 3e 49 6d 70 6c 65 6d 65 6e 74 61 74 | lementation-Details">Implementat |
| 5440 | 69 6f 6e 20 44 65 74 61 69 6c 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 | ion.Details</a></li>............ |
| 5460 | 20 3c 2f 75 6c 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 3c 2f 6c 69 3e 0a 20 | .</ul></li>.........</ul></li>.. |
| 5480 | 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 4f 70 74 69 6f 6e 61 6c 73 22 | .......<li><a.id="toc-Optionals" |
| 54a0 | 20 68 72 65 66 3d 22 23 4f 70 74 69 6f 6e 61 6c 73 22 3e 4f 70 74 69 6f 6e 61 6c 73 3c 2f 61 3e | .href="#Optionals">Optionals</a> |
| 54c0 | 0a 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 | .........<ul>.............<li><a |
| 54e0 | 20 69 64 3d 22 74 6f 63 2d 4f 70 74 69 6f 6e 61 6c 2d 54 79 70 65 22 20 68 72 65 66 3d 22 23 4f | .id="toc-Optional-Type".href="#O |
| 5500 | 70 74 69 6f 6e 61 6c 2d 54 79 70 65 22 3e 4f 70 74 69 6f 6e 61 6c 20 54 79 70 65 3c 2f 61 3e 3c | ptional-Type">Optional.Type</a>< |
| 5520 | 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- |
| 5540 | 6e 75 6c 6c 22 20 68 72 65 66 3d 22 23 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 61 3e 3c 2f 6c 69 3e | null".href="#null">null</a></li> |
| 5560 | 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 74 69 | .............<li><a.id="toc-Opti |
| 5580 | 6f 6e 61 6c 2d 50 6f 69 6e 74 65 72 73 22 20 68 72 65 66 3d 22 23 4f 70 74 69 6f 6e 61 6c 2d 50 | onal-Pointers".href="#Optional-P |
| 55a0 | 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 3c 2f | ointers">Optional.Pointers</a></ |
| 55c0 | 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>.........< |
| 55e0 | 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 43 61 73 74 69 6e 67 22 20 68 72 65 66 3d 22 23 43 61 | li><a.id="toc-Casting".href="#Ca |
| 5600 | 73 74 69 6e 67 22 3e 43 61 73 74 69 6e 67 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a | sting">Casting</a>.........<ul>. |
| 5620 | 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 54 79 70 65 2d | ............<li><a.id="toc-Type- |
| 5640 | 43 6f 65 72 63 69 6f 6e 22 20 68 72 65 66 3d 22 23 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 22 3e | Coercion".href="#Type-Coercion"> |
| 5660 | 54 79 70 65 20 43 6f 65 72 63 69 6f 6e 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 | Type.Coercion</a>.............<u |
| 5680 | 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f | l>.................<li><a.id="to |
| 56a0 | 63 2d 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 2d 53 74 72 69 63 74 65 72 2d 51 75 61 6c 69 66 69 | c-Type-Coercion-Stricter-Qualifi |
| 56c0 | 63 61 74 69 6f 6e 22 20 68 72 65 66 3d 22 23 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 2d 53 74 72 | cation".href="#Type-Coercion-Str |
| 56e0 | 69 63 74 65 72 2d 51 75 61 6c 69 66 69 63 61 74 69 6f 6e 22 3e 54 79 70 65 20 43 6f 65 72 63 69 | icter-Qualification">Type.Coerci |
| 5700 | 6f 6e 3a 20 53 74 72 69 63 74 65 72 20 51 75 61 6c 69 66 69 63 61 74 69 6f 6e 3c 2f 61 3e 3c 2f | on:.Stricter.Qualification</a></ |
| 5720 | 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 | li>.................<li><a.id="t |
| 5740 | 6f 63 2d 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 2d 49 6e 74 65 67 65 72 2d 61 6e 64 2d 46 6c 6f | oc-Type-Coercion-Integer-and-Flo |
| 5760 | 61 74 2d 57 69 64 65 6e 69 6e 67 22 20 68 72 65 66 3d 22 23 54 79 70 65 2d 43 6f 65 72 63 69 6f | at-Widening".href="#Type-Coercio |
| 5780 | 6e 2d 49 6e 74 65 67 65 72 2d 61 6e 64 2d 46 6c 6f 61 74 2d 57 69 64 65 6e 69 6e 67 22 3e 54 79 | n-Integer-and-Float-Widening">Ty |
| 57a0 | 70 65 20 43 6f 65 72 63 69 6f 6e 3a 20 49 6e 74 65 67 65 72 20 61 6e 64 20 46 6c 6f 61 74 20 57 | pe.Coercion:.Integer.and.Float.W |
| 57c0 | 69 64 65 6e 69 6e 67 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | idening</a></li>................ |
| 57e0 | 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 46 6c | .<li><a.id="toc-Type-Coercion-Fl |
| 5800 | 6f 61 74 2d 74 6f 2d 49 6e 74 22 20 68 72 65 66 3d 22 23 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e | oat-to-Int".href="#Type-Coercion |
| 5820 | 2d 46 6c 6f 61 74 2d 74 6f 2d 49 6e 74 22 3e 54 79 70 65 20 43 6f 65 72 63 69 6f 6e 3a 20 46 6c | -Float-to-Int">Type.Coercion:.Fl |
| 5840 | 6f 61 74 20 74 6f 20 49 6e 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | oat.to.Int</a></li>............. |
| 5860 | 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 |
| 5880 | 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 20 68 72 65 | -Slices-Arrays-and-Pointers".hre |
| 58a0 | 66 3d 22 23 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 2d 53 6c 69 63 65 73 2d 41 72 72 61 79 73 2d | f="#Type-Coercion-Slices-Arrays- |
| 58c0 | 61 6e 64 2d 50 6f 69 6e 74 65 72 73 22 3e 54 79 70 65 20 43 6f 65 72 63 69 6f 6e 3a 20 53 6c 69 | and-Pointers">Type.Coercion:.Sli |
| 58e0 | 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 3c 2f 6c 69 | ces,.Arrays.and.Pointers</a></li |
| 5900 | 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 |
| 5920 | 2d 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 2d 4f 70 74 69 6f 6e 61 6c 73 22 20 68 72 65 66 3d 22 | -Type-Coercion-Optionals".href=" |
| 5940 | 23 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 2d 4f 70 74 69 6f 6e 61 6c 73 22 3e 54 79 70 65 20 43 | #Type-Coercion-Optionals">Type.C |
| 5960 | 6f 65 72 63 69 6f 6e 3a 20 4f 70 74 69 6f 6e 61 6c 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 | oercion:.Optionals</a></li>..... |
| 5980 | 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 54 79 70 65 2d | ............<li><a.id="toc-Type- |
| 59a0 | 43 6f 65 72 63 69 6f 6e 2d 45 72 72 6f 72 2d 55 6e 69 6f 6e 73 22 20 68 72 65 66 3d 22 23 54 79 | Coercion-Error-Unions".href="#Ty |
| 59c0 | 70 65 2d 43 6f 65 72 63 69 6f 6e 2d 45 72 72 6f 72 2d 55 6e 69 6f 6e 73 22 3e 54 79 70 65 20 43 | pe-Coercion-Error-Unions">Type.C |
| 59e0 | 6f 65 72 63 69 6f 6e 3a 20 45 72 72 6f 72 20 55 6e 69 6f 6e 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 | oercion:.Error.Unions</a></li>.. |
| 5a00 | 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 54 79 | ...............<li><a.id="toc-Ty |
| 5a20 | 70 65 2d 43 6f 65 72 63 69 6f 6e 2d 43 6f 6d 70 69 6c 65 2d 54 69 6d 65 2d 4b 6e 6f 77 6e 2d 4e | pe-Coercion-Compile-Time-Known-N |
| 5a40 | 75 6d 62 65 72 73 22 20 68 72 65 66 3d 22 23 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 2d 43 6f 6d | umbers".href="#Type-Coercion-Com |
| 5a60 | 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 54 79 70 65 20 43 6f | pile-Time-Known-Numbers">Type.Co |
| 5a80 | 65 72 63 69 6f 6e 3a 20 43 6f 6d 70 69 6c 65 2d 54 69 6d 65 20 4b 6e 6f 77 6e 20 4e 75 6d 62 65 | ercion:.Compile-Time.Known.Numbe |
| 5aa0 | 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 20 20 3c 6c 69 3e | rs</a></li>.................<li> |
| 5ac0 | 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 55 6e 69 6f 6e 73 2d | <a.id="toc-Type-Coercion-Unions- |
| 5ae0 | 61 6e 64 2d 45 6e 75 6d 73 22 20 68 72 65 66 3d 22 23 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 2d | and-Enums".href="#Type-Coercion- |
| 5b00 | 55 6e 69 6f 6e 73 2d 61 6e 64 2d 45 6e 75 6d 73 22 3e 54 79 70 65 20 43 6f 65 72 63 69 6f 6e 3a | Unions-and-Enums">Type.Coercion: |
| 5b20 | 20 55 6e 69 6f 6e 73 20 61 6e 64 20 45 6e 75 6d 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 | .Unions.and.Enums</a></li>...... |
| 5b40 | 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 54 79 70 65 2d 43 | ...........<li><a.id="toc-Type-C |
| 5b60 | 6f 65 72 63 69 6f 6e 2d 75 6e 64 65 66 69 6e 65 64 22 20 68 72 65 66 3d 22 23 54 79 70 65 2d 43 | oercion-undefined".href="#Type-C |
| 5b80 | 6f 65 72 63 69 6f 6e 2d 75 6e 64 65 66 69 6e 65 64 22 3e 54 79 70 65 20 43 6f 65 72 63 69 6f 6e | oercion-undefined">Type.Coercion |
| 5ba0 | 3a 20 75 6e 64 65 66 69 6e 65 64 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 | :.undefined</a></li>............ |
| 5bc0 | 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 54 79 70 65 2d 43 6f 65 72 63 69 6f | .....<li><a.id="toc-Type-Coercio |
| 5be0 | 6e 2d 54 75 70 6c 65 73 2d 74 6f 2d 41 72 72 61 79 73 22 20 68 72 65 66 3d 22 23 54 79 70 65 2d | n-Tuples-to-Arrays".href="#Type- |
| 5c00 | 43 6f 65 72 63 69 6f 6e 2d 54 75 70 6c 65 73 2d 74 6f 2d 41 72 72 61 79 73 22 3e 54 79 70 65 20 | Coercion-Tuples-to-Arrays">Type. |
| 5c20 | 43 6f 65 72 63 69 6f 6e 3a 20 54 75 70 6c 65 73 20 74 6f 20 41 72 72 61 79 73 3c 2f 61 3e 3c 2f | Coercion:.Tuples.to.Arrays</a></ |
| 5c40 | 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 | li>.............</ul></li>...... |
| 5c60 | 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 45 78 70 6c 69 63 69 74 2d 43 | .......<li><a.id="toc-Explicit-C |
| 5c80 | 61 73 74 73 22 20 68 72 65 66 3d 22 23 45 78 70 6c 69 63 69 74 2d 43 61 73 74 73 22 3e 45 78 70 | asts".href="#Explicit-Casts">Exp |
| 5ca0 | 6c 69 63 69 74 20 43 61 73 74 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 | licit.Casts</a></li>............ |
| 5cc0 | 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 50 65 65 72 2d 54 79 70 65 2d 52 65 73 6f 6c 75 | .<li><a.id="toc-Peer-Type-Resolu |
| 5ce0 | 74 69 6f 6e 22 20 68 72 65 66 3d 22 23 50 65 65 72 2d 54 79 70 65 2d 52 65 73 6f 6c 75 74 69 6f | tion".href="#Peer-Type-Resolutio |
| 5d00 | 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 3c 2f 6c 69 3e | n">Peer.Type.Resolution</a></li> |
| 5d20 | 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> |
| 5d40 | 3c 61 20 69 64 3d 22 74 6f 63 2d 5a 65 72 6f 2d 42 69 74 2d 54 79 70 65 73 22 20 68 72 65 66 3d | <a.id="toc-Zero-Bit-Types".href= |
| 5d60 | 22 23 5a 65 72 6f 2d 42 69 74 2d 54 79 70 65 73 22 3e 5a 65 72 6f 20 42 69 74 20 54 79 70 65 73 | "#Zero-Bit-Types">Zero.Bit.Types |
| 5d80 | 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 |
| 5da0 | 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 76 6f 69 64 22 20 68 72 65 66 3d 22 23 76 6f 69 64 22 3e | i><a.id="toc-void".href="#void"> |
| 5dc0 | 76 6f 69 64 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 3c 2f 6c 69 3e | void</a></li>.........</ul></li> |
| 5de0 | 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 52 65 73 75 6c 74 2d 4c | .........<li><a.id="toc-Result-L |
| 5e00 | 6f 63 61 74 69 6f 6e 2d 53 65 6d 61 6e 74 69 63 73 22 20 68 72 65 66 3d 22 23 52 65 73 75 6c 74 | ocation-Semantics".href="#Result |
| 5e20 | 2d 4c 6f 63 61 74 69 6f 6e 2d 53 65 6d 61 6e 74 69 63 73 22 3e 52 65 73 75 6c 74 20 4c 6f 63 61 | -Location-Semantics">Result.Loca |
| 5e40 | 74 69 6f 6e 20 53 65 6d 61 6e 74 69 63 73 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a | tion.Semantics</a>.........<ul>. |
| 5e60 | 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 52 65 73 75 6c | ............<li><a.id="toc-Resul |
| 5e80 | 74 2d 54 79 70 65 73 22 20 68 72 65 66 3d 22 23 52 65 73 75 6c 74 2d 54 79 70 65 73 22 3e 52 65 | t-Types".href="#Result-Types">Re |
| 5ea0 | 73 75 6c 74 20 54 79 70 65 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | sult.Types</a></li>............. |
| 5ec0 | 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 52 65 73 75 6c 74 2d 4c 6f 63 61 74 69 6f 6e 73 22 | <li><a.id="toc-Result-Locations" |
| 5ee0 | 20 68 72 65 66 3d 22 23 52 65 73 75 6c 74 2d 4c 6f 63 61 74 69 6f 6e 73 22 3e 52 65 73 75 6c 74 | .href="#Result-Locations">Result |
| 5f00 | 20 4c 6f 63 61 74 69 6f 6e 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 2f 75 6c | .Locations</a></li>.........</ul |
| 5f20 | 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 63 6f | ></li>.........<li><a.id="toc-co |
| 5f40 | 6d 70 74 69 6d 65 22 20 68 72 65 66 3d 22 23 63 6f 6d 70 74 69 6d 65 22 3e 63 6f 6d 70 74 69 6d | mptime".href="#comptime">comptim |
| 5f60 | 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>.............< |
| 5f80 | 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 49 6e 74 72 6f 64 75 63 69 6e 67 2d 74 68 65 2d 43 6f | li><a.id="toc-Introducing-the-Co |
| 5fa0 | 6d 70 69 6c 65 2d 54 69 6d 65 2d 43 6f 6e 63 65 70 74 22 20 68 72 65 66 3d 22 23 49 6e 74 72 6f | mpile-Time-Concept".href="#Intro |
| 5fc0 | 64 75 63 69 6e 67 2d 74 68 65 2d 43 6f 6d 70 69 6c 65 2d 54 69 6d 65 2d 43 6f 6e 63 65 70 74 22 | ducing-the-Compile-Time-Concept" |
| 5fe0 | 3e 49 6e 74 72 6f 64 75 63 69 6e 67 20 74 68 65 20 43 6f 6d 70 69 6c 65 2d 54 69 6d 65 20 43 6f | >Introducing.the.Compile-Time.Co |
| 6000 | 6e 63 65 70 74 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 | ncept</a>.............<ul>...... |
| 6020 | 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 6d 70 69 6c | ...........<li><a.id="toc-Compil |
| 6040 | 65 2d 54 69 6d 65 2d 50 61 72 61 6d 65 74 65 72 73 22 20 68 72 65 66 3d 22 23 43 6f 6d 70 69 6c | e-Time-Parameters".href="#Compil |
| 6060 | 65 2d 54 69 6d 65 2d 50 61 72 61 6d 65 74 65 72 73 22 3e 43 6f 6d 70 69 6c 65 2d 54 69 6d 65 20 | e-Time-Parameters">Compile-Time. |
| 6080 | 50 61 72 61 6d 65 74 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | Parameters</a></li>............. |
| 60a0 | 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 2d | ....<li><a.id="toc-Compile-Time- |
| 60c0 | 56 61 72 69 61 62 6c 65 73 22 20 68 72 65 66 3d 22 23 43 6f 6d 70 69 6c 65 2d 54 69 6d 65 2d 56 | Variables".href="#Compile-Time-V |
| 60e0 | 61 72 69 61 62 6c 65 73 22 3e 43 6f 6d 70 69 6c 65 2d 54 69 6d 65 20 56 61 72 69 61 62 6c 65 73 | ariables">Compile-Time.Variables |
| 6100 | 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 |
| 6120 | 20 69 64 3d 22 74 6f 63 2d 43 6f 6d 70 69 6c 65 2d 54 69 6d 65 2d 45 78 70 72 65 73 73 69 6f 6e | .id="toc-Compile-Time-Expression |
| 6140 | 73 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 6f | s".href="#Compile-Time-Expressio |
| 6160 | 6e 73 22 3e 43 6f 6d 70 69 6c 65 2d 54 69 6d 65 20 45 78 70 72 65 73 73 69 6f 6e 73 3c 2f 61 3e | ns">Compile-Time.Expressions</a> |
| 6180 | 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>.... |
| 61a0 | 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 65 6e 65 72 69 63 2d | .........<li><a.id="toc-Generic- |
| 61c0 | 44 61 74 61 2d 53 74 72 75 63 74 75 72 65 73 22 20 68 72 65 66 3d 22 23 47 65 6e 65 72 69 63 2d | Data-Structures".href="#Generic- |
| 61e0 | 44 61 74 61 2d 53 74 72 75 63 74 75 72 65 73 22 3e 47 65 6e 65 72 69 63 20 44 61 74 61 20 53 74 | Data-Structures">Generic.Data.St |
| 6200 | 72 75 63 74 75 72 65 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c | ructures</a></li>.............<l |
| 6220 | 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 43 61 73 65 2d 53 74 75 64 79 2d 70 72 69 6e 74 2d 69 6e | i><a.id="toc-Case-Study-print-in |
| 6240 | 2d 5a 69 67 22 20 68 72 65 66 3d 22 23 43 61 73 65 2d 53 74 75 64 79 2d 70 72 69 6e 74 2d 69 6e | -Zig".href="#Case-Study-print-in |
| 6260 | 2d 5a 69 67 22 3e 43 61 73 65 20 53 74 75 64 79 3a 20 70 72 69 6e 74 20 69 6e 20 5a 69 67 3c 2f | -Zig">Case.Study:.print.in.Zig</ |
| 6280 | 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 | a></li>.........</ul></li>...... |
| 62a0 | 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 41 73 73 65 6d 62 6c 79 22 20 68 72 65 66 | ...<li><a.id="toc-Assembly".href |
| 62c0 | 3d 22 23 41 73 73 65 6d 62 6c 79 22 3e 41 73 73 65 6d 62 6c 79 3c 2f 61 3e 0a 20 20 20 20 20 20 | ="#Assembly">Assembly</a>....... |
| 62e0 | 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 |
| 6300 | 63 2d 4f 75 74 70 75 74 2d 43 6f 6e 73 74 72 61 69 6e 74 73 22 20 68 72 65 66 3d 22 23 4f 75 74 | c-Output-Constraints".href="#Out |
| 6320 | 70 75 74 2d 43 6f 6e 73 74 72 61 69 6e 74 73 22 3e 4f 75 74 70 75 74 20 43 6f 6e 73 74 72 61 69 | put-Constraints">Output.Constrai |
| 6340 | 6e 74 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 | nts</a></li>.............<li><a. |
| 6360 | 69 64 3d 22 74 6f 63 2d 49 6e 70 75 74 2d 43 6f 6e 73 74 72 61 69 6e 74 73 22 20 68 72 65 66 3d | id="toc-Input-Constraints".href= |
| 6380 | 22 23 49 6e 70 75 74 2d 43 6f 6e 73 74 72 61 69 6e 74 73 22 3e 49 6e 70 75 74 20 43 6f 6e 73 74 | "#Input-Constraints">Input.Const |
| 63a0 | 72 61 69 6e 74 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e | raints</a></li>.............<li> |
| 63c0 | 3c 61 20 69 64 3d 22 74 6f 63 2d 43 6c 6f 62 62 65 72 73 22 20 68 72 65 66 3d 22 23 43 6c 6f 62 | <a.id="toc-Clobbers".href="#Clob |
| 63e0 | 62 65 72 73 22 3e 43 6c 6f 62 62 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 | bers">Clobbers</a></li>......... |
| 6400 | 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 47 6c 6f 62 61 6c 2d 41 73 73 65 6d 62 | ....<li><a.id="toc-Global-Assemb |
| 6420 | 6c 79 22 20 68 72 65 66 3d 22 23 47 6c 6f 62 61 6c 2d 41 73 73 65 6d 62 6c 79 22 3e 47 6c 6f 62 | ly".href="#Global-Assembly">Glob |
| 6440 | 61 6c 20 41 73 73 65 6d 62 6c 79 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 2f 75 | al.Assembly</a></li>.........</u |
| 6460 | 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 41 | l></li>.........<li><a.id="toc-A |
| 6480 | 74 6f 6d 69 63 73 22 20 68 72 65 66 3d 22 23 41 74 6f 6d 69 63 73 22 3e 41 74 6f 6d 69 63 73 3c | tomics".href="#Atomics">Atomics< |
| 64a0 | 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- |
| 64c0 | 41 73 79 6e 63 2d 46 75 6e 63 74 69 6f 6e 73 22 20 68 72 65 66 3d 22 23 41 73 79 6e 63 2d 46 75 | Async-Functions".href="#Async-Fu |
| 64e0 | 6e 63 74 69 6f 6e 73 22 3e 41 73 79 6e 63 20 46 75 6e 63 74 69 6f 6e 73 3c 2f 61 3e 3c 2f 6c 69 | nctions">Async.Functions</a></li |
| 6500 | 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 42 75 69 6c 74 69 6e | >.........<li><a.id="toc-Builtin |
| 6520 | 2d 46 75 6e 63 74 69 6f 6e 73 22 20 68 72 65 66 3d 22 23 42 75 69 6c 74 69 6e 2d 46 75 6e 63 74 | -Functions".href="#Builtin-Funct |
| 6540 | 69 6f 6e 73 22 3e 42 75 69 6c 74 69 6e 20 46 75 6e 63 74 69 6f 6e 73 3c 2f 61 3e 0a 20 20 20 20 | ions">Builtin.Functions</a>..... |
| 6560 | 20 20 20 20 3c 75 6c 20 73 74 79 6c 65 3d 22 63 6f 6c 75 6d 6e 73 3a 20 32 22 3e 0a 20 20 20 20 | ....<ul.style="columns:.2">..... |
| 6580 | 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 72 53 70 61 63 65 | ........<li><a.id="toc-addrSpace |
| 65a0 | 43 61 73 74 22 20 68 72 65 66 3d 22 23 61 64 64 72 53 70 61 63 65 43 61 73 74 22 3e 40 61 64 64 | Cast".href="#addrSpaceCast">@add |
| 65c0 | 72 53 70 61 63 65 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 | rSpaceCast</a></li>............. |
| 65e0 | 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 61 64 64 57 69 74 68 4f 76 65 72 66 6c 6f 77 22 20 | <li><a.id="toc-addWithOverflow". |
| 6600 | 68 72 65 66 3d 22 23 61 64 64 57 69 74 68 4f 76 65 72 66 6c 6f 77 22 3e 40 61 64 64 57 69 74 68 | href="#addWithOverflow">@addWith |
| 6620 | 4f 76 65 72 66 6c 6f 77 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c | Overflow</a></li>.............<l |
| 6640 | 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 61 6c 69 67 6e 43 61 73 74 22 20 68 72 65 66 3d 22 23 61 | i><a.id="toc-alignCast".href="#a |
| 6660 | 6c 69 67 6e 43 61 73 74 22 3e 40 61 6c 69 67 6e 43 61 73 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 | lignCast">@alignCast</a></li>... |
| 6680 | 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 61 6c 69 67 6e 4f 66 | ..........<li><a.id="toc-alignOf |
| 66a0 | 22 20 68 72 65 66 3d 22 23 61 6c 69 67 6e 4f 66 22 3e 40 61 6c 69 67 6e 4f 66 3c 2f 61 3e 3c 2f | ".href="#alignOf">@alignOf</a></ |
| 66c0 | 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 61 | li>.............<li><a.id="toc-a |
| 66e0 | 73 22 20 68 72 65 66 3d 22 23 61 73 22 3e 40 61 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 | s".href="#as">@as</a></li>...... |
| 6700 | 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 61 74 6f 6d 69 63 4c 6f 61 64 | .......<li><a.id="toc-atomicLoad |
| 6720 | 22 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 | ".href="#atomicLoad">@atomicLoad |
| 6740 | 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= |
| 6760 | 22 74 6f 63 2d 61 74 6f 6d 69 63 52 6d 77 22 20 68 72 65 66 3d 22 23 61 74 6f 6d 69 63 52 6d 77 | "toc-atomicRmw".href="#atomicRmw |
| 6780 | 22 3e 40 61 74 6f 6d 69 63 52 6d 77 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 | ">@atomicRmw</a></li>........... |
| 67a0 | 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 61 74 6f 6d 69 63 53 74 6f 72 65 22 20 68 72 | ..<li><a.id="toc-atomicStore".hr |
| 67c0 | 65 66 3d 22 23 61 74 6f 6d 69 63 53 74 6f 72 65 22 3e 40 61 74 6f 6d 69 63 53 74 6f 72 65 3c 2f | ef="#atomicStore">@atomicStore</ |
| 67e0 | 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 |
| 6800 | 6f 63 2d 62 69 74 43 61 73 74 22 20 68 72 65 66 3d 22 23 62 69 74 43 61 73 74 22 3e 40 62 69 74 | oc-bitCast".href="#bitCast">@bit |
| 6820 | 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 3c 61 | Cast</a></li>.............<li><a |
| 6840 | 20 69 64 3d 22 74 6f 63 2d 62 69 74 4f 66 66 73 65 74 4f 66 22 20 68 72 65 66 3d 22 23 62 69 74 | .id="toc-bitOffsetOf".href="#bit |
| 6860 | 4f 66 66 73 65 74 4f 66 22 3e 40 62 69 74 4f 66 66 73 65 74 4f 66 3c 2f 61 3e 3c 2f 6c 69 3e 0a | OffsetOf">@bitOffsetOf</a></li>. |
| 6880 | 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 62 69 74 53 69 | ............<li><a.id="toc-bitSi |
| 68a0 | 7a 65 4f 66 22 20 68 72 65 66 3d 22 23 62 69 74 53 69 7a 65 4f 66 22 3e 40 62 69 74 53 69 7a 65 | zeOf".href="#bitSizeOf">@bitSize |
| 68c0 | 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 61 20 69 | Of</a></li>.............<li><a.i |
| 68e0 | 64 3d 22 74 6f 63 2d 62 72 61 6e 63 68 48 69 6e 74 22 20 68 72 65 66 3d 22 23 62 72 61 6e 63 68 | d="toc-branchHint".href="#branch |
| 6900 | 48 69 6e 74 22 3e 40 62 72 61 6e 63 68 48 69 6e 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 | Hint">@branchHint</a></li>...... |
| 6920 | 20 20 20 20 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 | .......<li><a.id="toc-breakpoint |
| 6940 | 22 20 68 72 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 | ".href="#breakpoint">@breakpoint |
| 6960 | 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= |
| 6980 | 22 74 6f 63 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 | "toc-mulAdd".href="#mulAdd">@mul |
| 69a0 | 41 64 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 | Add</a></li>.............<li><a. |
| 69c0 | 69 64 3d 22 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 | id="toc-byteSwap".href="#byteSwa |
| 69e0 | 70 22 3e 40 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 | p">@byteSwap</a></li>........... |
| 6a00 | 20 20 3c 6c 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 | ..<li><a.id="toc-bitReverse".hre |
| 6a20 | 66 3d 22 23 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 | f="#bitReverse">@bitReverse</a>< |
| 6a40 | 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- |
| 6a60 | 6f 66 66 73 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 | offsetOf".href="#offsetOf">@offs |
| 6a80 | 65 74 4f 66 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 | etOf</a></li>.............<li><a |
| 6aa0 | 20 69 64 3d 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 | .id="toc-call".href="#call">@cal |
| 6ac0 | 6c 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 | l</a></li>.............<li><a.id |
| 6ae0 | 3d 22 74 6f 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 | ="toc-cDefine".href="#cDefine">@ |
| 6b00 | 63 44 65 66 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 | cDefine</a></li>.............<li |
| 6b20 | 3e 3c 61 20 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 | ><a.id="toc-cImport".href="#cImp |
| 6b40 | 6f 72 74 22 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 | ort">@cImport</a></li>.......... |
| 6b60 | 20 20 20 3c 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 | ...<li><a.id="toc-cInclude".href |
| 6b80 | 3d 22 23 63 49 6e 63 6c 75 64 65 22 3e 40 63 49 6e 63 6c 75 64 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a | ="#cInclude">@cInclude</a></li>. |
| 6ba0 | 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 6c 7a 22 20 | ............<li><a.id="toc-clz". |
| 6bc0 | 68 72 65 66 3d 22 23 63 6c 7a 22 3e 40 63 6c 7a 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | href="#clz">@clz</a></li>....... |
| 6be0 | 20 20 20 20 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 | ......<li><a.id="toc-cmpxchgStro |
| 6c00 | 6e 67 22 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 | ng".href="#cmpxchgStrong">@cmpxc |
| 6c20 | 68 67 53 74 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 | hgStrong</a></li>.............<l |
| 6c40 | 69 3e 3c 61 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 | i><a.id="toc-cmpxchgWeak".href=" |
| 6c60 | 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 2f | #cmpxchgWeak">@cmpxchgWeak</a></ |
| 6c80 | 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 |
| 6ca0 | 6f 6d 70 69 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 | ompileError".href="#compileError |
| 6cc0 | 22 3e 40 63 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 | ">@compileError</a></li>........ |
| 6ce0 | 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 63 6f 6d 70 69 6c 65 4c 6f 67 22 20 | .....<li><a.id="toc-compileLog". |
| 6d00 | 68 72 65 66 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 | href="#compileLog">@compileLog</ |
| 6d20 | 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 |
| 6d40 | 6f 63 2d 63 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 | oc-constCast".href="#constCast"> |
| 6d60 | 40 63 6f 6e 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 | @constCast</a></li>............. |
| 6d80 | 3c 6c 69 3e 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 | <li><a.id="toc-ctz".href="#ctz"> |
| 6da0 | 40 63 74 7a 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 | @ctz</a></li>.............<li><a |
| 6dc0 | 20 69 64 3d 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 | .id="toc-cUndef".href="#cUndef"> |
| 6de0 | 40 63 55 6e 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 | @cUndef</a></li>.............<li |
| 6e00 | 3e 3c 61 20 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 | ><a.id="toc-cVaArg".href="#cVaAr |
| 6e20 | 67 22 3e 40 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 | g">@cVaArg</a></li>............. |
| 6e40 | 3c 6c 69 3e 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 | <li><a.id="toc-cVaCopy".href="#c |
| 6e60 | 56 61 43 6f 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 | VaCopy">@cVaCopy</a></li>....... |
| 6e80 | 20 20 20 20 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 | ......<li><a.id="toc-cVaEnd".hre |
| 6ea0 | 66 3d 22 23 63 56 61 45 6e 64 22 3e 40 63 56 61 45 6e 64 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 | f="#cVaEnd">@cVaEnd</a></li>.... |
| 6ec0 | 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 56 61 53 74 61 72 74 | .........<li><a.id="toc-cVaStart |
| 6ee0 | 22 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 | ".href="#cVaStart">@cVaStart</a> |
| 6f00 | 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 |
| 6f20 | 2d 64 69 76 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 | -divExact".href="#divExact">@div |
| 6f40 | 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 6c 69 3e 3c | Exact</a></li>.............<li>< |
| 6f60 | 61 20 69 64 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 | a.id="toc-divFloor".href="#divFl |
| 6f80 | 6f 6f 72 22 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 | oor">@divFloor</a></li>......... |
| 6fa0 | 20 20 20 20 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 | ....<li><a.id="toc-divTrunc".hre |
| 6fc0 | 66 3d 22 23 64 69 76 54 72 75 6e 63 22 3e 40 64 69 76 54 72 75 6e 63 3c 2f 61 3e 3c 2f 6c 69 3e | f="#divTrunc">@divTrunc</a></li> |
| 6fe0 | 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 6d 62 65 | .............<li><a.id="toc-embe |
| 7000 | 64 46 69 6c 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 | dFile".href="#embedFile">@embedF |
| 7020 | 69 6c 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 | ile</a></li>.............<li><a. |
| 7040 | 69 64 3d 22 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 | id="toc-enumFromInt".href="#enum |
| 7060 | 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 3c 2f 6c 69 3e 0a 20 | FromInt">@enumFromInt</a></li>.. |
| 7080 | 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 72 72 6f 72 46 | ...........<li><a.id="toc-errorF |
| 70a0 | 72 6f 6d 49 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 | romInt".href="#errorFromInt">@er |
| 70c0 | 72 6f 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 | rorFromInt</a></li>............. |
| 70e0 | 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 65 72 72 6f 72 4e 61 6d 65 22 20 68 72 65 66 3d 22 | <li><a.id="toc-errorName".href=" |
| 7100 | 23 65 72 72 6f 72 4e 61 6d 65 22 3e 40 65 72 72 6f 72 4e 61 6d 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a | #errorName">@errorName</a></li>. |
| 7120 | 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 72 72 6f 72 | ............<li><a.id="toc-error |
| 7140 | 52 65 74 75 72 6e 54 72 61 63 65 22 20 68 72 65 66 3d 22 23 65 72 72 6f 72 52 65 74 75 72 6e 54 | ReturnTrace".href="#errorReturnT |
| 7160 | 72 61 63 65 22 3e 40 65 72 72 6f 72 52 65 74 75 72 6e 54 72 61 63 65 3c 2f 61 3e 3c 2f 6c 69 3e | race">@errorReturnTrace</a></li> |
| 7180 | 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 72 72 6f | .............<li><a.id="toc-erro |
| 71a0 | 72 43 61 73 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 | rCast".href="#errorCast">@errorC |
| 71c0 | 61 73 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 | ast</a></li>.............<li><a. |
| 71e0 | 69 64 3d 22 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 | id="toc-export".href="#export">@ |
| 7200 | 65 78 70 6f 72 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e | export</a></li>.............<li> |
| 7220 | 3c 61 20 69 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 | <a.id="toc-extern".href="#extern |
| 7240 | 22 3e 40 65 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 | ">@extern</a></li>.............< |
| 7260 | 6c 69 3e 3c 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 | li><a.id="toc-field".href="#fiel |
| 7280 | 64 22 3e 40 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 | d">@field</a></li>.............< |
| 72a0 | 6c 69 3e 3c 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 | li><a.id="toc-fieldParentPtr".hr |
| 72c0 | 65 66 3d 22 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 | ef="#fieldParentPtr">@fieldParen |
| 72e0 | 74 50 74 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 | tPtr</a></li>.............<li><a |
| 7300 | 20 69 64 3d 22 74 6f 63 2d 46 69 65 6c 64 54 79 70 65 22 20 68 72 65 66 3d 22 23 46 69 65 6c 64 | .id="toc-FieldType".href="#Field |
| 7320 | 54 79 70 65 22 3e 40 46 69 65 6c 64 54 79 70 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | Type">@FieldType</a></li>....... |
| 7340 | 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 66 6c 6f 61 74 43 61 73 74 22 20 | ......<li><a.id="toc-floatCast". |
| 7360 | 68 72 65 66 3d 22 23 66 6c 6f 61 74 43 61 73 74 22 3e 40 66 6c 6f 61 74 43 61 73 74 3c 2f 61 3e | href="#floatCast">@floatCast</a> |
| 7380 | 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 |
| 73a0 | 2d 66 6c 6f 61 74 46 72 6f 6d 49 6e 74 22 20 68 72 65 66 3d 22 23 66 6c 6f 61 74 46 72 6f 6d 49 | -floatFromInt".href="#floatFromI |
| 73c0 | 6e 74 22 3e 40 66 6c 6f 61 74 46 72 6f 6d 49 6e 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 | nt">@floatFromInt</a></li>...... |
| 73e0 | 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 66 72 61 6d 65 41 64 64 72 65 | .......<li><a.id="toc-frameAddre |
| 7400 | 73 73 22 20 68 72 65 66 3d 22 23 66 72 61 6d 65 41 64 64 72 65 73 73 22 3e 40 66 72 61 6d 65 41 | ss".href="#frameAddress">@frameA |
| 7420 | 64 64 72 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 | ddress</a></li>.............<li> |
| 7440 | 3c 61 20 69 64 3d 22 74 6f 63 2d 68 61 73 44 65 63 6c 22 20 68 72 65 66 3d 22 23 68 61 73 44 65 | <a.id="toc-hasDecl".href="#hasDe |
| 7460 | 63 6c 22 3e 40 68 61 73 44 65 63 6c 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 | cl">@hasDecl</a></li>........... |
| 7480 | 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 68 61 73 46 69 65 6c 64 22 20 68 72 65 66 3d | ..<li><a.id="toc-hasField".href= |
| 74a0 | 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 20 | "#hasField">@hasField</a></li>.. |
| 74c0 | 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 6d 70 6f 72 74 | ...........<li><a.id="toc-import |
| 74e0 | 22 20 68 72 65 66 3d 22 23 69 6d 70 6f 72 74 22 3e 40 69 6d 70 6f 72 74 3c 2f 61 3e 3c 2f 6c 69 | ".href="#import">@import</a></li |
| 7500 | 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 43 | >.............<li><a.id="toc-inC |
| 7520 | 6f 6d 70 74 69 6d 65 22 20 68 72 65 66 3d 22 23 69 6e 43 6f 6d 70 74 69 6d 65 22 3e 40 69 6e 43 | omptime".href="#inComptime">@inC |
| 7540 | 6f 6d 70 74 69 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 | omptime</a></li>.............<li |
| 7560 | 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 69 6e 74 43 61 73 74 22 20 68 72 65 66 3d 22 23 69 6e 74 43 | ><a.id="toc-intCast".href="#intC |
| 7580 | 61 73 74 22 3e 40 69 6e 74 43 61 73 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 | ast">@intCast</a></li>.......... |
| 75a0 | 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 42 6f 6f 6c 22 20 68 | ...<li><a.id="toc-intFromBool".h |
| 75c0 | 72 65 66 3d 22 23 69 6e 74 46 72 6f 6d 42 6f 6f 6c 22 3e 40 69 6e 74 46 72 6f 6d 42 6f 6f 6c 3c | ref="#intFromBool">@intFromBool< |
| 75e0 | 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=" |
| 7600 | 74 6f 63 2d 69 6e 74 46 72 6f 6d 45 6e 75 6d 22 20 68 72 65 66 3d 22 23 69 6e 74 46 72 6f 6d 45 | toc-intFromEnum".href="#intFromE |
| 7620 | 6e 75 6d 22 3e 40 69 6e 74 46 72 6f 6d 45 6e 75 6d 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 | num">@intFromEnum</a></li>...... |
| 7640 | 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 69 6e 74 46 72 6f 6d 45 72 72 | .......<li><a.id="toc-intFromErr |
| 7660 | 6f 72 22 20 68 72 65 66 3d 22 23 69 6e 74 46 72 6f 6d 45 72 72 6f 72 22 3e 40 69 6e 74 46 72 6f | or".href="#intFromError">@intFro |
| 7680 | 6d 45 72 72 6f 72 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e | mError</a></li>.............<li> |
| 76a0 | 3c 61 20 69 64 3d 22 74 6f 63 2d 69 6e 74 46 72 6f 6d 46 6c 6f 61 74 22 20 68 72 65 66 3d 22 23 | <a.id="toc-intFromFloat".href="# |
| 76c0 | 69 6e 74 46 72 6f 6d 46 6c 6f 61 74 22 3e 40 69 6e 74 46 72 6f 6d 46 6c 6f 61 74 3c 2f 61 3e 3c | intFromFloat">@intFromFloat</a>< |
| 76e0 | 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- |
| 7700 | 69 6e 74 46 72 6f 6d 50 74 72 22 20 68 72 65 66 3d 22 23 69 6e 74 46 72 6f 6d 50 74 72 22 3e 40 | intFromPtr".href="#intFromPtr">@ |
| 7720 | 69 6e 74 46 72 6f 6d 50 74 72 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | intFromPtr</a></li>............. |
| 7740 | 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 6d 61 78 22 20 68 72 65 66 3d 22 23 6d 61 78 22 3e | <li><a.id="toc-max".href="#max"> |
| 7760 | 40 6d 61 78 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 | @max</a></li>.............<li><a |
| 7780 | 20 69 64 3d 22 74 6f 63 2d 6d 65 6d 63 70 79 22 20 68 72 65 66 3d 22 23 6d 65 6d 63 70 79 22 3e | .id="toc-memcpy".href="#memcpy"> |
| 77a0 | 40 6d 65 6d 63 70 79 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 | @memcpy</a></li>.............<li |
| 77c0 | 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 6d 65 6d 73 65 74 22 20 68 72 65 66 3d 22 23 6d 65 6d 73 65 | ><a.id="toc-memset".href="#memse |
| 77e0 | 74 22 3e 40 6d 65 6d 73 65 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | t">@memset</a></li>............. |
| 7800 | 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 6d 65 6d 6d 6f 76 65 22 20 68 72 65 66 3d 22 23 6d | <li><a.id="toc-memmove".href="#m |
| 7820 | 65 6d 6d 6f 76 65 22 3e 40 6d 65 6d 6d 6f 76 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | emmove">@memmove</a></li>....... |
| 7840 | 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 6d 69 6e 22 20 68 72 65 66 3d 22 | ......<li><a.id="toc-min".href=" |
| 7860 | 23 6d 69 6e 22 3e 40 6d 69 6e 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | #min">@min</a></li>............. |
| 7880 | 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 53 69 7a 65 22 20 68 | <li><a.id="toc-wasmMemorySize".h |
| 78a0 | 72 65 66 3d 22 23 77 61 73 6d 4d 65 6d 6f 72 79 53 69 7a 65 22 3e 40 77 61 73 6d 4d 65 6d 6f 72 | ref="#wasmMemorySize">@wasmMemor |
| 78c0 | 79 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 3c | ySize</a></li>.............<li>< |
| 78e0 | 61 20 69 64 3d 22 74 6f 63 2d 77 61 73 6d 4d 65 6d 6f 72 79 47 72 6f 77 22 20 68 72 65 66 3d 22 | a.id="toc-wasmMemoryGrow".href=" |
| 7900 | 23 77 61 73 6d 4d 65 6d 6f 72 79 47 72 6f 77 22 3e 40 77 61 73 6d 4d 65 6d 6f 72 79 47 72 6f 77 | #wasmMemoryGrow">@wasmMemoryGrow |
| 7920 | 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= |
| 7940 | 22 74 6f 63 2d 6d 6f 64 22 20 68 72 65 66 3d 22 23 6d 6f 64 22 3e 40 6d 6f 64 3c 2f 61 3e 3c 2f | "toc-mod".href="#mod">@mod</a></ |
| 7960 | 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 |
| 7980 | 75 6c 57 69 74 68 4f 76 65 72 66 6c 6f 77 22 20 68 72 65 66 3d 22 23 6d 75 6c 57 69 74 68 4f 76 | ulWithOverflow".href="#mulWithOv |
| 79a0 | 65 72 66 6c 6f 77 22 3e 40 6d 75 6c 57 69 74 68 4f 76 65 72 66 6c 6f 77 3c 2f 61 3e 3c 2f 6c 69 | erflow">@mulWithOverflow</a></li |
| 79c0 | 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 61 6e | >.............<li><a.id="toc-pan |
| 79e0 | 69 63 22 20 68 72 65 66 3d 22 23 70 61 6e 69 63 22 3e 40 70 61 6e 69 63 3c 2f 61 3e 3c 2f 6c 69 | ic".href="#panic">@panic</a></li |
| 7a00 | 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 6f 70 | >.............<li><a.id="toc-pop |
| 7a20 | 43 6f 75 6e 74 22 20 68 72 65 66 3d 22 23 70 6f 70 43 6f 75 6e 74 22 3e 40 70 6f 70 43 6f 75 6e | Count".href="#popCount">@popCoun |
| 7a40 | 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 |
| 7a60 | 3d 22 74 6f 63 2d 70 72 65 66 65 74 63 68 22 20 68 72 65 66 3d 22 23 70 72 65 66 65 74 63 68 22 | ="toc-prefetch".href="#prefetch" |
| 7a80 | 3e 40 70 72 65 66 65 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 | >@prefetch</a></li>............. |
| 7aa0 | 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 70 74 72 43 61 73 74 22 20 68 72 65 66 3d 22 23 70 | <li><a.id="toc-ptrCast".href="#p |
| 7ac0 | 74 72 43 61 73 74 22 3e 40 70 74 72 43 61 73 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | trCast">@ptrCast</a></li>....... |
| 7ae0 | 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 70 74 72 46 72 6f 6d 49 6e 74 22 | ......<li><a.id="toc-ptrFromInt" |
| 7b00 | 20 68 72 65 66 3d 22 23 70 74 72 46 72 6f 6d 49 6e 74 22 3e 40 70 74 72 46 72 6f 6d 49 6e 74 3c | .href="#ptrFromInt">@ptrFromInt< |
| 7b20 | 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=" |
| 7b40 | 74 6f 63 2d 72 65 6d 22 20 68 72 65 66 3d 22 23 72 65 6d 22 3e 40 72 65 6d 3c 2f 61 3e 3c 2f 6c | toc-rem".href="#rem">@rem</a></l |
| 7b60 | 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 72 65 | i>.............<li><a.id="toc-re |
| 7b80 | 74 75 72 6e 41 64 64 72 65 73 73 22 20 68 72 65 66 3d 22 23 72 65 74 75 72 6e 41 64 64 72 65 73 | turnAddress".href="#returnAddres |
| 7ba0 | 73 22 3e 40 72 65 74 75 72 6e 41 64 64 72 65 73 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 | s">@returnAddress</a></li>...... |
| 7bc0 | 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 73 65 6c 65 63 74 22 20 68 72 | .......<li><a.id="toc-select".hr |
| 7be0 | 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 6c 69 3e 0a 20 20 | ef="#select">@select</a></li>... |
| 7c00 | 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 73 65 74 45 76 61 6c | ..........<li><a.id="toc-setEval |
| 7c20 | 42 72 61 6e 63 68 51 75 6f 74 61 22 20 68 72 65 66 3d 22 23 73 65 74 45 76 61 6c 42 72 61 6e 63 | BranchQuota".href="#setEvalBranc |
| 7c40 | 68 51 75 6f 74 61 22 3e 40 73 65 74 45 76 61 6c 42 72 61 6e 63 68 51 75 6f 74 61 3c 2f 61 3e 3c | hQuota">@setEvalBranchQuota</a>< |
| 7c60 | 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- |
| 7c80 | 73 65 74 46 6c 6f 61 74 4d 6f 64 65 22 20 68 72 65 66 3d 22 23 73 65 74 46 6c 6f 61 74 4d 6f 64 | setFloatMode".href="#setFloatMod |
| 7ca0 | 65 22 3e 40 73 65 74 46 6c 6f 61 74 4d 6f 64 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | e">@setFloatMode</a></li>....... |
| 7cc0 | 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 73 65 74 52 75 6e 74 69 6d 65 53 | ......<li><a.id="toc-setRuntimeS |
| 7ce0 | 61 66 65 74 79 22 20 68 72 65 66 3d 22 23 73 65 74 52 75 6e 74 69 6d 65 53 61 66 65 74 79 22 3e | afety".href="#setRuntimeSafety"> |
| 7d00 | 40 73 65 74 52 75 6e 74 69 6d 65 53 61 66 65 74 79 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 | @setRuntimeSafety</a></li>...... |
| 7d20 | 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 73 68 6c 45 78 61 63 74 22 20 | .......<li><a.id="toc-shlExact". |
| 7d40 | 68 72 65 66 3d 22 23 73 68 6c 45 78 61 63 74 22 3e 40 73 68 6c 45 78 61 63 74 3c 2f 61 3e 3c 2f | href="#shlExact">@shlExact</a></ |
| 7d60 | 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 73 | li>.............<li><a.id="toc-s |
| 7d80 | 68 6c 57 69 74 68 4f 76 65 72 66 6c 6f 77 22 20 68 72 65 66 3d 22 23 73 68 6c 57 69 74 68 4f 76 | hlWithOverflow".href="#shlWithOv |
| 7da0 | 65 72 66 6c 6f 77 22 3e 40 73 68 6c 57 69 74 68 4f 76 65 72 66 6c 6f 77 3c 2f 61 3e 3c 2f 6c 69 | erflow">@shlWithOverflow</a></li |
| 7dc0 | 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 72 | >.............<li><a.id="toc-shr |
| 7de0 | 45 78 61 63 74 22 20 68 72 65 66 3d 22 23 73 68 72 45 78 61 63 74 22 3e 40 73 68 72 45 78 61 63 | Exact".href="#shrExact">@shrExac |
| 7e00 | 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 |
| 7e20 | 3d 22 74 6f 63 2d 73 68 75 66 66 6c 65 22 20 68 72 65 66 3d 22 23 73 68 75 66 66 6c 65 22 3e 40 | ="toc-shuffle".href="#shuffle">@ |
| 7e40 | 73 68 75 66 66 6c 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 | shuffle</a></li>.............<li |
| 7e60 | 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 73 69 7a 65 4f 66 22 20 68 72 65 66 3d 22 23 73 69 7a 65 4f | ><a.id="toc-sizeOf".href="#sizeO |
| 7e80 | 66 22 3e 40 73 69 7a 65 4f 66 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | f">@sizeOf</a></li>............. |
| 7ea0 | 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 73 70 6c 61 74 22 20 68 72 65 66 3d 22 23 73 70 6c | <li><a.id="toc-splat".href="#spl |
| 7ec0 | 61 74 22 3e 40 73 70 6c 61 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | at">@splat</a></li>............. |
| 7ee0 | 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 72 65 64 75 63 65 22 20 68 72 65 66 3d 22 23 72 65 | <li><a.id="toc-reduce".href="#re |
| 7f00 | 64 75 63 65 22 3e 40 72 65 64 75 63 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 | duce">@reduce</a></li>.......... |
| 7f20 | 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 73 72 63 22 20 68 72 65 66 3d 22 23 73 72 | ...<li><a.id="toc-src".href="#sr |
| 7f40 | 63 22 3e 40 73 72 63 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 | c">@src</a></li>.............<li |
| 7f60 | 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 73 71 72 74 22 20 68 72 65 66 3d 22 23 73 71 72 74 22 3e 40 | ><a.id="toc-sqrt".href="#sqrt">@ |
| 7f80 | 73 71 72 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 | sqrt</a></li>.............<li><a |
| 7fa0 | 20 69 64 3d 22 74 6f 63 2d 73 69 6e 22 20 68 72 65 66 3d 22 23 73 69 6e 22 3e 40 73 69 6e 3c 2f | .id="toc-sin".href="#sin">@sin</ |
| 7fc0 | 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 |
| 7fe0 | 6f 63 2d 63 6f 73 22 20 68 72 65 66 3d 22 23 63 6f 73 22 3e 40 63 6f 73 3c 2f 61 3e 3c 2f 6c 69 | oc-cos".href="#cos">@cos</a></li |
| 8000 | 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 74 61 6e | >.............<li><a.id="toc-tan |
| 8020 | 22 20 68 72 65 66 3d 22 23 74 61 6e 22 3e 40 74 61 6e 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 | ".href="#tan">@tan</a></li>..... |
| 8040 | 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 22 20 68 72 65 66 | ........<li><a.id="toc-exp".href |
| 8060 | 3d 22 23 65 78 70 22 3e 40 65 78 70 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 | ="#exp">@exp</a></li>........... |
| 8080 | 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 65 78 70 32 22 20 68 72 65 66 3d 22 23 65 78 | ..<li><a.id="toc-exp2".href="#ex |
| 80a0 | 70 32 22 3e 40 65 78 70 32 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c | p2">@exp2</a></li>.............< |
| 80c0 | 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 6c 6f 67 22 20 68 72 65 66 3d 22 23 6c 6f 67 22 3e 40 | li><a.id="toc-log".href="#log">@ |
| 80e0 | 6c 6f 67 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 | log</a></li>.............<li><a. |
| 8100 | 69 64 3d 22 74 6f 63 2d 6c 6f 67 32 22 20 68 72 65 66 3d 22 23 6c 6f 67 32 22 3e 40 6c 6f 67 32 | id="toc-log2".href="#log2">@log2 |
| 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 6c 6f 67 31 30 22 20 68 72 65 66 3d 22 23 6c 6f 67 31 30 22 3e 40 6c 6f 67 31 30 | "toc-log10".href="#log10">@log10 |
| 8160 | 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= |
| 8180 | 22 74 6f 63 2d 61 62 73 22 20 68 72 65 66 3d 22 23 61 62 73 22 3e 40 61 62 73 3c 2f 61 3e 3c 2f | "toc-abs".href="#abs">@abs</a></ |
| 81a0 | 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 66 | li>.............<li><a.id="toc-f |
| 81c0 | 6c 6f 6f 72 22 20 68 72 65 66 3d 22 23 66 6c 6f 6f 72 22 3e 40 66 6c 6f 6f 72 3c 2f 61 3e 3c 2f | loor".href="#floor">@floor</a></ |
| 81e0 | 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 |
| 8200 | 65 69 6c 22 20 68 72 65 66 3d 22 23 63 65 69 6c 22 3e 40 63 65 69 6c 3c 2f 61 3e 3c 2f 6c 69 3e | eil".href="#ceil">@ceil</a></li> |
| 8220 | 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 74 72 75 6e | .............<li><a.id="toc-trun |
| 8240 | 63 22 20 68 72 65 66 3d 22 23 74 72 75 6e 63 22 3e 40 74 72 75 6e 63 3c 2f 61 3e 3c 2f 6c 69 3e | c".href="#trunc">@trunc</a></li> |
| 8260 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 72 6f 75 6e | .............<li><a.id="toc-roun |
| 8280 | 64 22 20 68 72 65 66 3d 22 23 72 6f 75 6e 64 22 3e 40 72 6f 75 6e 64 3c 2f 61 3e 3c 2f 6c 69 3e | d".href="#round">@round</a></li> |
| 82a0 | 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 75 62 57 | .............<li><a.id="toc-subW |
| 82c0 | 69 74 68 4f 76 65 72 66 6c 6f 77 22 20 68 72 65 66 3d 22 23 73 75 62 57 69 74 68 4f 76 65 72 66 | ithOverflow".href="#subWithOverf |
| 82e0 | 6c 6f 77 22 3e 40 73 75 62 57 69 74 68 4f 76 65 72 66 6c 6f 77 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 | low">@subWithOverflow</a></li>.. |
| 8300 | 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 74 61 67 4e 61 6d | ...........<li><a.id="toc-tagNam |
| 8320 | 65 22 20 68 72 65 66 3d 22 23 74 61 67 4e 61 6d 65 22 3e 40 74 61 67 4e 61 6d 65 3c 2f 61 3e 3c | e".href="#tagName">@tagName</a>< |
| 8340 | 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- |
| 8360 | 54 68 69 73 22 20 68 72 65 66 3d 22 23 54 68 69 73 22 3e 40 54 68 69 73 3c 2f 61 3e 3c 2f 6c 69 | This".href="#This">@This</a></li |
| 8380 | 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 74 72 61 | >.............<li><a.id="toc-tra |
| 83a0 | 70 22 20 68 72 65 66 3d 22 23 74 72 61 70 22 3e 40 74 72 61 70 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 | p".href="#trap">@trap</a></li>.. |
| 83c0 | 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 74 72 75 6e 63 61 | ...........<li><a.id="toc-trunca |
| 83e0 | 74 65 22 20 68 72 65 66 3d 22 23 74 72 75 6e 63 61 74 65 22 3e 40 74 72 75 6e 63 61 74 65 3c 2f | te".href="#truncate">@truncate</ |
| 8400 | 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 |
| 8420 | 6f 63 2d 54 79 70 65 22 20 68 72 65 66 3d 22 23 54 79 70 65 22 3e 40 54 79 70 65 3c 2f 61 3e 3c | oc-Type".href="#Type">@Type</a>< |
| 8440 | 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- |
| 8460 | 74 79 70 65 49 6e 66 6f 22 20 68 72 65 66 3d 22 23 74 79 70 65 49 6e 66 6f 22 3e 40 74 79 70 65 | typeInfo".href="#typeInfo">@type |
| 8480 | 49 6e 66 6f 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 | Info</a></li>.............<li><a |
| 84a0 | 20 69 64 3d 22 74 6f 63 2d 74 79 70 65 4e 61 6d 65 22 20 68 72 65 66 3d 22 23 74 79 70 65 4e 61 | .id="toc-typeName".href="#typeNa |
| 84c0 | 6d 65 22 3e 40 74 79 70 65 4e 61 6d 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 | me">@typeName</a></li>.......... |
| 84e0 | 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 54 79 70 65 4f 66 22 20 68 72 65 66 3d 22 | ...<li><a.id="toc-TypeOf".href=" |
| 8500 | 23 54 79 70 65 4f 66 22 3e 40 54 79 70 65 4f 66 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | #TypeOf">@TypeOf</a></li>....... |
| 8520 | 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 75 6e 69 6f 6e 49 6e 69 74 22 20 | ......<li><a.id="toc-unionInit". |
| 8540 | 68 72 65 66 3d 22 23 75 6e 69 6f 6e 49 6e 69 74 22 3e 40 75 6e 69 6f 6e 49 6e 69 74 3c 2f 61 3e | href="#unionInit">@unionInit</a> |
| 8560 | 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 |
| 8580 | 2d 56 65 63 74 6f 72 22 20 68 72 65 66 3d 22 23 56 65 63 74 6f 72 22 3e 40 56 65 63 74 6f 72 3c | -Vector".href="#Vector">@Vector< |
| 85a0 | 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=" |
| 85c0 | 74 6f 63 2d 76 6f 6c 61 74 69 6c 65 43 61 73 74 22 20 68 72 65 66 3d 22 23 76 6f 6c 61 74 69 6c | toc-volatileCast".href="#volatil |
| 85e0 | 65 43 61 73 74 22 3e 40 76 6f 6c 61 74 69 6c 65 43 61 73 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 | eCast">@volatileCast</a></li>... |
| 8600 | 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 77 6f 72 6b 47 72 6f | ..........<li><a.id="toc-workGro |
| 8620 | 75 70 49 64 22 20 68 72 65 66 3d 22 23 77 6f 72 6b 47 72 6f 75 70 49 64 22 3e 40 77 6f 72 6b 47 | upId".href="#workGroupId">@workG |
| 8640 | 72 6f 75 70 49 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 | roupId</a></li>.............<li> |
| 8660 | 3c 61 20 69 64 3d 22 74 6f 63 2d 77 6f 72 6b 47 72 6f 75 70 53 69 7a 65 22 20 68 72 65 66 3d 22 | <a.id="toc-workGroupSize".href=" |
| 8680 | 23 77 6f 72 6b 47 72 6f 75 70 53 69 7a 65 22 3e 40 77 6f 72 6b 47 72 6f 75 70 53 69 7a 65 3c 2f | #workGroupSize">@workGroupSize</ |
| 86a0 | 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 |
| 86c0 | 6f 63 2d 77 6f 72 6b 49 74 65 6d 49 64 22 20 68 72 65 66 3d 22 23 77 6f 72 6b 49 74 65 6d 49 64 | oc-workItemId".href="#workItemId |
| 86e0 | 22 3e 40 77 6f 72 6b 49 74 65 6d 49 64 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c | ">@workItemId</a></li>.........< |
| 8700 | 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 |
| 8720 | 2d 42 75 69 6c 64 2d 4d 6f 64 65 22 20 68 72 65 66 3d 22 23 42 75 69 6c 64 2d 4d 6f 64 65 22 3e | -Build-Mode".href="#Build-Mode"> |
| 8740 | 42 75 69 6c 64 20 4d 6f 64 65 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 | Build.Mode</a>.........<ul>..... |
| 8760 | 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 62 75 67 22 20 68 72 | ........<li><a.id="toc-Debug".hr |
| 8780 | 65 66 3d 22 23 44 65 62 75 67 22 3e 44 65 62 75 67 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 | ef="#Debug">Debug</a></li>...... |
| 87a0 | 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 52 65 6c 65 61 73 65 46 61 73 | .......<li><a.id="toc-ReleaseFas |
| 87c0 | 74 22 20 68 72 65 66 3d 22 23 52 65 6c 65 61 73 65 46 61 73 74 22 3e 52 65 6c 65 61 73 65 46 61 | t".href="#ReleaseFast">ReleaseFa |
| 87e0 | 73 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 | st</a></li>.............<li><a.i |
| 8800 | 64 3d 22 74 6f 63 2d 52 65 6c 65 61 73 65 53 61 66 65 22 20 68 72 65 66 3d 22 23 52 65 6c 65 61 | d="toc-ReleaseSafe".href="#Relea |
| 8820 | 73 65 53 61 66 65 22 3e 52 65 6c 65 61 73 65 53 61 66 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 | seSafe">ReleaseSafe</a></li>.... |
| 8840 | 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 6c 65 61 73 65 53 | .........<li><a.id="toc-ReleaseS |
| 8860 | 6d 61 6c 6c 22 20 68 72 65 66 3d 22 23 52 65 6c 65 61 73 65 53 6d 61 6c 6c 22 3e 52 65 6c 65 61 | mall".href="#ReleaseSmall">Relea |
| 8880 | 73 65 53 6d 61 6c 6c 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 3c 2f | seSmall</a></li>.........</ul></ |
| 88a0 | 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 53 69 6e 67 6c | li>.........<li><a.id="toc-Singl |
| 88c0 | 65 2d 54 68 72 65 61 64 65 64 2d 42 75 69 6c 64 73 22 20 68 72 65 66 3d 22 23 53 69 6e 67 6c 65 | e-Threaded-Builds".href="#Single |
| 88e0 | 2d 54 68 72 65 61 64 65 64 2d 42 75 69 6c 64 73 22 3e 53 69 6e 67 6c 65 20 54 68 72 65 61 64 65 | -Threaded-Builds">Single.Threade |
| 8900 | 64 20 42 75 69 6c 64 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 | d.Builds</a></li>.........<li><a |
| 8920 | 20 69 64 3d 22 74 6f 63 2d 49 6c 6c 65 67 61 6c 2d 42 65 68 61 76 69 6f 72 22 20 68 72 65 66 3d | .id="toc-Illegal-Behavior".href= |
| 8940 | 22 23 49 6c 6c 65 67 61 6c 2d 42 65 68 61 76 69 6f 72 22 3e 49 6c 6c 65 67 61 6c 20 42 65 68 61 | "#Illegal-Behavior">Illegal.Beha |
| 8960 | 76 69 6f 72 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 | vior</a>.........<ul>........... |
| 8980 | 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 52 65 61 63 68 69 6e 67 2d 55 6e 72 65 61 63 | ..<li><a.id="toc-Reaching-Unreac |
| 89a0 | 68 61 62 6c 65 2d 43 6f 64 65 22 20 68 72 65 66 3d 22 23 52 65 61 63 68 69 6e 67 2d 55 6e 72 65 | hable-Code".href="#Reaching-Unre |
| 89c0 | 61 63 68 61 62 6c 65 2d 43 6f 64 65 22 3e 52 65 61 63 68 69 6e 67 20 55 6e 72 65 61 63 68 61 62 | achable-Code">Reaching.Unreachab |
| 89e0 | 6c 65 20 43 6f 64 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 | le.Code</a></li>.............<li |
| 8a00 | 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 49 6e 64 65 78 2d 6f 75 74 2d 6f 66 2d 42 6f 75 6e 64 73 22 | ><a.id="toc-Index-out-of-Bounds" |
| 8a20 | 20 68 72 65 66 3d 22 23 49 6e 64 65 78 2d 6f 75 74 2d 6f 66 2d 42 6f 75 6e 64 73 22 3e 49 6e 64 | .href="#Index-out-of-Bounds">Ind |
| 8a40 | 65 78 20 6f 75 74 20 6f 66 20 42 6f 75 6e 64 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | ex.out.of.Bounds</a></li>....... |
| 8a60 | 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 43 61 73 74 2d 4e 65 67 61 74 69 | ......<li><a.id="toc-Cast-Negati |
| 8a80 | 76 65 2d 4e 75 6d 62 65 72 2d 74 6f 2d 55 6e 73 69 67 6e 65 64 2d 49 6e 74 65 67 65 72 22 20 68 | ve-Number-to-Unsigned-Integer".h |
| 8aa0 | 72 65 66 3d 22 23 43 61 73 74 2d 4e 65 67 61 74 69 76 65 2d 4e 75 6d 62 65 72 2d 74 6f 2d 55 6e | ref="#Cast-Negative-Number-to-Un |
| 8ac0 | 73 69 67 6e 65 64 2d 49 6e 74 65 67 65 72 22 3e 43 61 73 74 20 4e 65 67 61 74 69 76 65 20 4e 75 | signed-Integer">Cast.Negative.Nu |
| 8ae0 | 6d 62 65 72 20 74 6f 20 55 6e 73 69 67 6e 65 64 20 49 6e 74 65 67 65 72 3c 2f 61 3e 3c 2f 6c 69 | mber.to.Unsigned.Integer</a></li |
| 8b00 | 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 61 73 | >.............<li><a.id="toc-Cas |
| 8b20 | 74 2d 54 72 75 6e 63 61 74 65 73 2d 44 61 74 61 22 20 68 72 65 66 3d 22 23 43 61 73 74 2d 54 72 | t-Truncates-Data".href="#Cast-Tr |
| 8b40 | 75 6e 63 61 74 65 73 2d 44 61 74 61 22 3e 43 61 73 74 20 54 72 75 6e 63 61 74 65 73 20 44 61 74 | uncates-Data">Cast.Truncates.Dat |
| 8b60 | 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 69 64 | a</a></li>.............<li><a.id |
| 8b80 | 3d 22 74 6f 63 2d 49 6e 74 65 67 65 72 2d 4f 76 65 72 66 6c 6f 77 22 20 68 72 65 66 3d 22 23 49 | ="toc-Integer-Overflow".href="#I |
| 8ba0 | 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 |
| 8bc0 | 77 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 | w</a>.............<ul>.......... |
| 8be0 | 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 44 65 66 61 75 6c 74 2d 4f 70 | .......<li><a.id="toc-Default-Op |
| 8c00 | 65 72 61 74 69 6f 6e 73 22 20 68 72 65 66 3d 22 23 44 65 66 61 75 6c 74 2d 4f 70 65 72 61 74 69 | erations".href="#Default-Operati |
| 8c20 | 6f 6e 73 22 3e 44 65 66 61 75 6c 74 20 4f 70 65 72 61 74 69 6f 6e 73 3c 2f 61 3e 3c 2f 6c 69 3e | ons">Default.Operations</a></li> |
| 8c40 | 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- |
| 8c60 | 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 22 | Standard-Library-Math-Functions" |
| 8c80 | 20 68 72 65 66 3d 22 23 53 74 61 6e 64 61 72 64 2d 4c 69 62 72 61 72 79 2d 4d 61 74 68 2d 46 75 | .href="#Standard-Library-Math-Fu |
| 8ca0 | 6e 63 74 69 6f 6e 73 22 3e 53 74 61 6e 64 61 72 64 20 4c 69 62 72 61 72 79 20 4d 61 74 68 20 46 | nctions">Standard.Library.Math.F |
| 8cc0 | 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 20 20 | unctions</a></li>............... |
| 8ce0 | 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 42 75 69 6c 74 69 6e 2d 4f 76 65 72 66 6c 6f | ..<li><a.id="toc-Builtin-Overflo |
| 8d00 | 77 2d 46 75 6e 63 74 69 6f 6e 73 22 20 68 72 65 66 3d 22 23 42 75 69 6c 74 69 6e 2d 4f 76 65 72 | w-Functions".href="#Builtin-Over |
| 8d20 | 66 6c 6f 77 2d 46 75 6e 63 74 69 6f 6e 73 22 3e 42 75 69 6c 74 69 6e 20 4f 76 65 72 66 6c 6f 77 | flow-Functions">Builtin.Overflow |
| 8d40 | 20 46 75 6e 63 74 69 6f 6e 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | .Functions</a></li>............. |
| 8d60 | 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 57 72 61 70 70 69 6e 67 2d 4f 70 65 72 | ....<li><a.id="toc-Wrapping-Oper |
| 8d80 | 61 74 69 6f 6e 73 22 20 68 72 65 66 3d 22 23 57 72 61 70 70 69 6e 67 2d 4f 70 65 72 61 74 69 6f | ations".href="#Wrapping-Operatio |
| 8da0 | 6e 73 22 3e 57 72 61 70 70 69 6e 67 20 4f 70 65 72 61 74 69 6f 6e 73 3c 2f 61 3e 3c 2f 6c 69 3e | ns">Wrapping.Operations</a></li> |
| 8dc0 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 | .............</ul></li>......... |
| 8de0 | 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 45 78 61 63 74 2d 4c 65 66 74 2d 53 68 | ....<li><a.id="toc-Exact-Left-Sh |
| 8e00 | 69 66 74 2d 4f 76 65 72 66 6c 6f 77 22 20 68 72 65 66 3d 22 23 45 78 61 63 74 2d 4c 65 66 74 2d | ift-Overflow".href="#Exact-Left- |
| 8e20 | 53 68 69 66 74 2d 4f 76 65 72 66 6c 6f 77 22 3e 45 78 61 63 74 20 4c 65 66 74 20 53 68 69 66 74 | Shift-Overflow">Exact.Left.Shift |
| 8e40 | 20 4f 76 65 72 66 6c 6f 77 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c | .Overflow</a></li>.............< |
| 8e60 | 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 45 78 61 63 74 2d 52 69 67 68 74 2d 53 68 69 66 74 2d | li><a.id="toc-Exact-Right-Shift- |
| 8e80 | 4f 76 65 72 66 6c 6f 77 22 20 68 72 65 66 3d 22 23 45 78 61 63 74 2d 52 69 67 68 74 2d 53 68 69 | Overflow".href="#Exact-Right-Shi |
| 8ea0 | 66 74 2d 4f 76 65 72 66 6c 6f 77 22 3e 45 78 61 63 74 20 52 69 67 68 74 20 53 68 69 66 74 20 4f | ft-Overflow">Exact.Right.Shift.O |
| 8ec0 | 76 65 72 66 6c 6f 77 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 | verflow</a></li>.............<li |
| 8ee0 | 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 44 69 76 69 73 69 6f 6e 2d 62 79 2d 5a 65 72 6f 22 20 68 72 | ><a.id="toc-Division-by-Zero".hr |
| 8f00 | 65 66 3d 22 23 44 69 76 69 73 69 6f 6e 2d 62 79 2d 5a 65 72 6f 22 3e 44 69 76 69 73 69 6f 6e 20 | ef="#Division-by-Zero">Division. |
| 8f20 | 62 79 20 5a 65 72 6f 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 | by.Zero</a></li>.............<li |
| 8f40 | 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 52 65 6d 61 69 6e 64 65 72 2d 44 69 76 69 73 69 6f 6e 2d 62 | ><a.id="toc-Remainder-Division-b |
| 8f60 | 79 2d 5a 65 72 6f 22 20 68 72 65 66 3d 22 23 52 65 6d 61 69 6e 64 65 72 2d 44 69 76 69 73 69 6f | y-Zero".href="#Remainder-Divisio |
| 8f80 | 6e 2d 62 79 2d 5a 65 72 6f 22 3e 52 65 6d 61 69 6e 64 65 72 20 44 69 76 69 73 69 6f 6e 20 62 79 | n-by-Zero">Remainder.Division.by |
| 8fa0 | 20 5a 65 72 6f 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c | .Zero</a></li>.............<li>< |
| 8fc0 | 61 20 69 64 3d 22 74 6f 63 2d 45 78 61 63 74 2d 44 69 76 69 73 69 6f 6e 2d 52 65 6d 61 69 6e 64 | a.id="toc-Exact-Division-Remaind |
| 8fe0 | 65 72 22 20 68 72 65 66 3d 22 23 45 78 61 63 74 2d 44 69 76 69 73 69 6f 6e 2d 52 65 6d 61 69 6e | er".href="#Exact-Division-Remain |
| 9000 | 64 65 72 22 3e 45 78 61 63 74 20 44 69 76 69 73 69 6f 6e 20 52 65 6d 61 69 6e 64 65 72 3c 2f 61 | der">Exact.Division.Remainder</a |
| 9020 | 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 |
| 9040 | 63 2d 41 74 74 65 6d 70 74 2d 74 6f 2d 55 6e 77 72 61 70 2d 4e 75 6c 6c 22 20 68 72 65 66 3d 22 | c-Attempt-to-Unwrap-Null".href=" |
| 9060 | 23 41 74 74 65 6d 70 74 2d 74 6f 2d 55 6e 77 72 61 70 2d 4e 75 6c 6c 22 3e 41 74 74 65 6d 70 74 | #Attempt-to-Unwrap-Null">Attempt |
| 9080 | 20 74 6f 20 55 6e 77 72 61 70 20 4e 75 6c 6c 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 | .to.Unwrap.Null</a></li>........ |
| 90a0 | 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 41 74 74 65 6d 70 74 2d 74 6f 2d 55 | .....<li><a.id="toc-Attempt-to-U |
| 90c0 | 6e 77 72 61 70 2d 45 72 72 6f 72 22 20 68 72 65 66 3d 22 23 41 74 74 65 6d 70 74 2d 74 6f 2d 55 | nwrap-Error".href="#Attempt-to-U |
| 90e0 | 6e 77 72 61 70 2d 45 72 72 6f 72 22 3e 41 74 74 65 6d 70 74 20 74 6f 20 55 6e 77 72 61 70 20 45 | nwrap-Error">Attempt.to.Unwrap.E |
| 9100 | 72 72 6f 72 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 | rror</a></li>.............<li><a |
| 9120 | 20 69 64 3d 22 74 6f 63 2d 49 6e 76 61 6c 69 64 2d 45 72 72 6f 72 2d 43 6f 64 65 22 20 68 72 65 | .id="toc-Invalid-Error-Code".hre |
| 9140 | 66 3d 22 23 49 6e 76 61 6c 69 64 2d 45 72 72 6f 72 2d 43 6f 64 65 22 3e 49 6e 76 61 6c 69 64 20 | f="#Invalid-Error-Code">Invalid. |
| 9160 | 45 72 72 6f 72 20 43 6f 64 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | Error.Code</a></li>............. |
| 9180 | 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 49 6e 76 61 6c 69 64 2d 45 6e 75 6d 2d 43 61 73 74 | <li><a.id="toc-Invalid-Enum-Cast |
| 91a0 | 22 20 68 72 65 66 3d 22 23 49 6e 76 61 6c 69 64 2d 45 6e 75 6d 2d 43 61 73 74 22 3e 49 6e 76 61 | ".href="#Invalid-Enum-Cast">Inva |
| 91c0 | 6c 69 64 20 45 6e 75 6d 20 43 61 73 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 | lid.Enum.Cast</a></li>.......... |
| 91e0 | 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 49 6e 76 61 6c 69 64 2d 45 72 72 6f 72 2d | ...<li><a.id="toc-Invalid-Error- |
| 9200 | 53 65 74 2d 43 61 73 74 22 20 68 72 65 66 3d 22 23 49 6e 76 61 6c 69 64 2d 45 72 72 6f 72 2d 53 | Set-Cast".href="#Invalid-Error-S |
| 9220 | 65 74 2d 43 61 73 74 22 3e 49 6e 76 61 6c 69 64 20 45 72 72 6f 72 20 53 65 74 20 43 61 73 74 3c | et-Cast">Invalid.Error.Set.Cast< |
| 9240 | 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=" |
| 9260 | 74 6f 63 2d 49 6e 63 6f 72 72 65 63 74 2d 50 6f 69 6e 74 65 72 2d 41 6c 69 67 6e 6d 65 6e 74 22 | toc-Incorrect-Pointer-Alignment" |
| 9280 | 20 68 72 65 66 3d 22 23 49 6e 63 6f 72 72 65 63 74 2d 50 6f 69 6e 74 65 72 2d 41 6c 69 67 6e 6d | .href="#Incorrect-Pointer-Alignm |
| 92a0 | 65 6e 74 22 3e 49 6e 63 6f 72 72 65 63 74 20 50 6f 69 6e 74 65 72 20 41 6c 69 67 6e 6d 65 6e 74 | ent">Incorrect.Pointer.Alignment |
| 92c0 | 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= |
| 92e0 | 22 74 6f 63 2d 57 72 6f 6e 67 2d 55 6e 69 6f 6e 2d 46 69 65 6c 64 2d 41 63 63 65 73 73 22 20 68 | "toc-Wrong-Union-Field-Access".h |
| 9300 | 72 65 66 3d 22 23 57 72 6f 6e 67 2d 55 6e 69 6f 6e 2d 46 69 65 6c 64 2d 41 63 63 65 73 73 22 3e | ref="#Wrong-Union-Field-Access"> |
| 9320 | 57 72 6f 6e 67 20 55 6e 69 6f 6e 20 46 69 65 6c 64 20 41 63 63 65 73 73 3c 2f 61 3e 3c 2f 6c 69 | Wrong.Union.Field.Access</a></li |
| 9340 | 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 75 74 | >.............<li><a.id="toc-Out |
| 9360 | 2d 6f 66 2d 42 6f 75 6e 64 73 2d 46 6c 6f 61 74 2d 74 6f 2d 49 6e 74 65 67 65 72 2d 43 61 73 74 | -of-Bounds-Float-to-Integer-Cast |
| 9380 | 22 20 68 72 65 66 3d 22 23 4f 75 74 2d 6f 66 2d 42 6f 75 6e 64 73 2d 46 6c 6f 61 74 2d 74 6f 2d | ".href="#Out-of-Bounds-Float-to- |
| 93a0 | 49 6e 74 65 67 65 72 2d 43 61 73 74 22 3e 4f 75 74 20 6f 66 20 42 6f 75 6e 64 73 20 46 6c 6f 61 | Integer-Cast">Out.of.Bounds.Floa |
| 93c0 | 74 20 74 6f 20 49 6e 74 65 67 65 72 20 43 61 73 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 | t.to.Integer.Cast</a></li>...... |
| 93e0 | 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 50 6f 69 6e 74 65 72 2d 43 61 | .......<li><a.id="toc-Pointer-Ca |
| 9400 | 73 74 2d 49 6e 76 61 6c 69 64 2d 4e 75 6c 6c 22 20 68 72 65 66 3d 22 23 50 6f 69 6e 74 65 72 2d | st-Invalid-Null".href="#Pointer- |
| 9420 | 43 61 73 74 2d 49 6e 76 61 6c 69 64 2d 4e 75 6c 6c 22 3e 50 6f 69 6e 74 65 72 20 43 61 73 74 20 | Cast-Invalid-Null">Pointer.Cast. |
| 9440 | 49 6e 76 61 6c 69 64 20 4e 75 6c 6c 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 2f | Invalid.Null</a></li>.........</ |
| 9460 | 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- |
| 9480 | 4d 65 6d 6f 72 79 22 20 68 72 65 66 3d 22 23 4d 65 6d 6f 72 79 22 3e 4d 65 6d 6f 72 79 3c 2f 61 | Memory".href="#Memory">Memory</a |
| 94a0 | 3e 0a 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c | >.........<ul>.............<li>< |
| 94c0 | 61 20 69 64 3d 22 74 6f 63 2d 43 68 6f 6f 73 69 6e 67 2d 61 6e 2d 41 6c 6c 6f 63 61 74 6f 72 22 | a.id="toc-Choosing-an-Allocator" |
| 94e0 | 20 68 72 65 66 3d 22 23 43 68 6f 6f 73 69 6e 67 2d 61 6e 2d 41 6c 6c 6f 63 61 74 6f 72 22 3e 43 | .href="#Choosing-an-Allocator">C |
| 9500 | 68 6f 6f 73 69 6e 67 20 61 6e 20 41 6c 6c 6f 63 61 74 6f 72 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 | hoosing.an.Allocator</a></li>... |
| 9520 | 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 57 68 65 72 65 2d 61 | ..........<li><a.id="toc-Where-a |
| 9540 | 72 65 2d 74 68 65 2d 62 79 74 65 73 22 20 68 72 65 66 3d 22 23 57 68 65 72 65 2d 61 72 65 2d 74 | re-the-bytes".href="#Where-are-t |
| 9560 | 68 65 2d 62 79 74 65 73 22 3e 57 68 65 72 65 20 61 72 65 20 74 68 65 20 62 79 74 65 73 3f 3c 2f | he-bytes">Where.are.the.bytes?</ |
| 9580 | 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 |
| 95a0 | 6f 63 2d 49 6d 70 6c 65 6d 65 6e 74 69 6e 67 2d 61 6e 2d 41 6c 6c 6f 63 61 74 6f 72 22 20 68 72 | oc-Implementing-an-Allocator".hr |
| 95c0 | 65 66 3d 22 23 49 6d 70 6c 65 6d 65 6e 74 69 6e 67 2d 61 6e 2d 41 6c 6c 6f 63 61 74 6f 72 22 3e | ef="#Implementing-an-Allocator"> |
| 95e0 | 49 6d 70 6c 65 6d 65 6e 74 69 6e 67 20 61 6e 20 41 6c 6c 6f 63 61 74 6f 72 3c 2f 61 3e 3c 2f 6c | Implementing.an.Allocator</a></l |
| 9600 | 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 48 65 | i>.............<li><a.id="toc-He |
| 9620 | 61 70 2d 41 6c 6c 6f 63 61 74 69 6f 6e 2d 46 61 69 6c 75 72 65 22 20 68 72 65 66 3d 22 23 48 65 | ap-Allocation-Failure".href="#He |
| 9640 | 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 |
| 9660 | 63 61 74 69 6f 6e 20 46 61 69 6c 75 72 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 | cation.Failure</a></li>......... |
| 9680 | 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 52 65 63 75 72 73 69 6f 6e 22 20 68 72 | ....<li><a.id="toc-Recursion".hr |
| 96a0 | 65 66 3d 22 23 52 65 63 75 72 73 69 6f 6e 22 3e 52 65 63 75 72 73 69 6f 6e 3c 2f 61 3e 3c 2f 6c | ef="#Recursion">Recursion</a></l |
| 96c0 | 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 4c 69 | i>.............<li><a.id="toc-Li |
| 96e0 | 66 65 74 69 6d 65 2d 61 6e 64 2d 4f 77 6e 65 72 73 68 69 70 22 20 68 72 65 66 3d 22 23 4c 69 66 | fetime-and-Ownership".href="#Lif |
| 9700 | 65 74 69 6d 65 2d 61 6e 64 2d 4f 77 6e 65 72 73 68 69 70 22 3e 4c 69 66 65 74 69 6d 65 20 61 6e | etime-and-Ownership">Lifetime.an |
| 9720 | 64 20 4f 77 6e 65 72 73 68 69 70 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 2f 75 | d.Ownership</a></li>.........</u |
| 9740 | 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 43 | l></li>.........<li><a.id="toc-C |
| 9760 | 6f 6d 70 69 6c 65 2d 56 61 72 69 61 62 6c 65 73 22 20 68 72 65 66 3d 22 23 43 6f 6d 70 69 6c 65 | ompile-Variables".href="#Compile |
| 9780 | 2d 56 61 72 69 61 62 6c 65 73 22 3e 43 6f 6d 70 69 6c 65 20 56 61 72 69 61 62 6c 65 73 3c 2f 61 | -Variables">Compile.Variables</a |
| 97a0 | 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 43 6f | ></li>.........<li><a.id="toc-Co |
| 97c0 | 6d 70 69 6c 61 74 69 6f 6e 2d 4d 6f 64 65 6c 22 20 68 72 65 66 3d 22 23 43 6f 6d 70 69 6c 61 74 | mpilation-Model".href="#Compilat |
| 97e0 | 69 6f 6e 2d 4d 6f 64 65 6c 22 3e 43 6f 6d 70 69 6c 61 74 69 6f 6e 20 4d 6f 64 65 6c 3c 2f 61 3e | ion-Model">Compilation.Model</a> |
| 9800 | 0a 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 | .........<ul>.............<li><a |
| 9820 | 20 69 64 3d 22 74 6f 63 2d 53 6f 75 72 63 65 2d 46 69 6c 65 2d 53 74 72 75 63 74 73 22 20 68 72 | .id="toc-Source-File-Structs".hr |
| 9840 | 65 66 3d 22 23 53 6f 75 72 63 65 2d 46 69 6c 65 2d 53 74 72 75 63 74 73 22 3e 53 6f 75 72 63 65 | ef="#Source-File-Structs">Source |
| 9860 | 20 46 69 6c 65 20 53 74 72 75 63 74 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 | .File.Structs</a></li>.......... |
| 9880 | 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 46 69 6c 65 2d 61 6e 64 2d 44 65 63 6c 61 | ...<li><a.id="toc-File-and-Decla |
| 98a0 | 72 61 74 69 6f 6e 2d 44 69 73 63 6f 76 65 72 79 22 20 68 72 65 66 3d 22 23 46 69 6c 65 2d 61 6e | ration-Discovery".href="#File-an |
| 98c0 | 64 2d 44 65 63 6c 61 72 61 74 69 6f 6e 2d 44 69 73 63 6f 76 65 72 79 22 3e 46 69 6c 65 20 61 6e | d-Declaration-Discovery">File.an |
| 98e0 | 64 20 44 65 63 6c 61 72 61 74 69 6f 6e 20 44 69 73 63 6f 76 65 72 79 3c 2f 61 3e 3c 2f 6c 69 3e | d.Declaration.Discovery</a></li> |
| 9900 | 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 70 65 63 | .............<li><a.id="toc-Spec |
| 9920 | 69 61 6c 2d 52 6f 6f 74 2d 44 65 63 6c 61 72 61 74 69 6f 6e 73 22 20 68 72 65 66 3d 22 23 53 70 | ial-Root-Declarations".href="#Sp |
| 9940 | 65 63 69 61 6c 2d 52 6f 6f 74 2d 44 65 63 6c 61 72 61 74 69 6f 6e 73 22 3e 53 70 65 63 69 61 6c | ecial-Root-Declarations">Special |
| 9960 | 20 52 6f 6f 74 20 44 65 63 6c 61 72 61 74 69 6f 6e 73 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 20 | .Root.Declarations</a>.......... |
| 9980 | 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 69 | ...<ul>.................<li><a.i |
| 99a0 | 64 3d 22 74 6f 63 2d 45 6e 74 72 79 2d 50 6f 69 6e 74 22 20 68 72 65 66 3d 22 23 45 6e 74 72 79 | d="toc-Entry-Point".href="#Entry |
| 99c0 | 2d 50 6f 69 6e 74 22 3e 45 6e 74 72 79 20 50 6f 69 6e 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 | -Point">Entry.Point</a></li>.... |
| 99e0 | 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 53 74 61 6e | .............<li><a.id="toc-Stan |
| 9a00 | 64 61 72 64 2d 4c 69 62 72 61 72 79 2d 4f 70 74 69 6f 6e 73 22 20 68 72 65 66 3d 22 23 53 74 61 | dard-Library-Options".href="#Sta |
| 9a20 | 6e 64 61 72 64 2d 4c 69 62 72 61 72 79 2d 4f 70 74 69 6f 6e 73 22 3e 53 74 61 6e 64 61 72 64 20 | ndard-Library-Options">Standard. |
| 9a40 | 4c 69 62 72 61 72 79 20 4f 70 74 69 6f 6e 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 | Library.Options</a></li>........ |
| 9a60 | 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 50 61 6e 69 63 2d 48 61 | .........<li><a.id="toc-Panic-Ha |
| 9a80 | 6e 64 6c 65 72 22 20 68 72 65 66 3d 22 23 50 61 6e 69 63 2d 48 61 6e 64 6c 65 72 22 3e 50 61 6e | ndler".href="#Panic-Handler">Pan |
| 9aa0 | 69 63 20 48 61 6e 64 6c 65 72 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | ic.Handler</a></li>............. |
| 9ac0 | 3c 2f 75 6c 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 3c 2f 6c 69 3e 0a 20 20 | </ul></li>.........</ul></li>... |
| 9ae0 | 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 42 75 69 6c 64 2d 53 | ......<li><a.id="toc-Zig-Build-S |
| 9b00 | 79 73 74 65 6d 22 20 68 72 65 66 3d 22 23 5a 69 67 2d 42 75 69 6c 64 2d 53 79 73 74 65 6d 22 3e | ystem".href="#Zig-Build-System"> |
| 9b20 | 5a 69 67 20 42 75 69 6c 64 20 53 79 73 74 65 6d 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | Zig.Build.System</a></li>....... |
| 9b40 | 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 43 22 20 68 72 65 66 3d 22 23 43 22 3e 43 3c | ..<li><a.id="toc-C".href="#C">C< |
| 9b60 | 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 |
| 9b80 | 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 43 2d 54 79 70 65 2d 50 72 69 6d 69 74 69 76 65 73 22 20 68 | ><a.id="toc-C-Type-Primitives".h |
| 9ba0 | 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 43 20 54 79 70 65 20 | ref="#C-Type-Primitives">C.Type. |
| 9bc0 | 50 72 69 6d 69 74 69 76 65 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | Primitives</a></li>............. |
| 9be0 | 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 49 6d 70 6f 72 74 2d 66 72 6f 6d 2d 43 2d 48 65 61 | <li><a.id="toc-Import-from-C-Hea |
| 9c00 | 64 65 72 2d 46 69 6c 65 22 20 68 72 65 66 3d 22 23 49 6d 70 6f 72 74 2d 66 72 6f 6d 2d 43 2d 48 | der-File".href="#Import-from-C-H |
| 9c20 | 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 72 | eader-File">Import.from.C.Header |
| 9c40 | 20 46 69 6c 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c | .File</a></li>.............<li>< |
| 9c60 | 61 20 69 64 3d 22 74 6f 63 2d 43 2d 54 72 61 6e 73 6c 61 74 69 6f 6e 2d 43 4c 49 22 20 68 72 65 | a.id="toc-C-Translation-CLI".hre |
| 9c80 | 66 3d 22 23 43 2d 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 | f="#C-Translation-CLI">C.Transla |
| 9ca0 | 74 69 6f 6e 20 43 4c 49 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 | tion.CLI</a>.............<ul>... |
| 9cc0 | 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 6d | ..............<li><a.id="toc-Com |
| 9ce0 | 6d 61 6e 64 2d 6c 69 6e 65 2d 66 6c 61 67 73 22 20 68 72 65 66 3d 22 23 43 6f 6d 6d 61 6e 64 2d | mand-line-flags".href="#Command- |
| 9d00 | 6c 69 6e 65 2d 66 6c 61 67 73 22 3e 43 6f 6d 6d 61 6e 64 20 6c 69 6e 65 20 66 6c 61 67 73 3c 2f | line-flags">Command.line.flags</ |
| 9d20 | 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 | a></li>.................<li><a.i |
| 9d40 | 64 3d 22 74 6f 63 2d 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 | d="toc-Using--target-and--cflags |
| 9d60 | 22 20 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 | ".href="#Using--target-and--cfla |
| 9d80 | 67 73 22 3e 55 73 69 6e 67 20 2d 74 61 72 67 65 74 20 61 6e 64 20 2d 63 66 6c 61 67 73 3c 2f 61 | gs">Using.-target.and.-cflags</a |
| 9da0 | 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 | ></li>.................<li><a.id |
| 9dc0 | 3d 22 74 6f 63 2d 63 49 6d 70 6f 72 74 2d 76 73 2d 74 72 61 6e 73 6c 61 74 65 2d 63 22 20 68 72 | ="toc-cImport-vs-translate-c".hr |
| 9de0 | 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 40 63 49 | ef="#cImport-vs-translate-c">@cI |
| 9e00 | 6d 70 6f 72 74 20 76 73 20 74 72 61 6e 73 6c 61 74 65 2d 63 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 | mport.vs.translate-c</a></li>... |
| 9e20 | 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 20 | ..........</ul></li>............ |
| 9e40 | 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 43 2d 54 72 61 6e 73 6c 61 74 69 6f 6e 2d 43 61 | .<li><a.id="toc-C-Translation-Ca |
| 9e60 | 63 68 69 6e 67 22 20 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 | ching".href="#C-Translation-Cach |
| 9e80 | 69 6e 67 22 3e 43 20 54 72 61 6e 73 6c 61 74 69 6f 6e 20 43 61 63 68 69 6e 67 3c 2f 61 3e 3c 2f | ing">C.Translation.Caching</a></ |
| 9ea0 | 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 54 | li>.............<li><a.id="toc-T |
| 9ec0 | 72 61 6e 73 6c 61 74 69 6f 6e 2d 66 61 69 6c 75 72 65 73 22 20 68 72 65 66 3d 22 23 54 72 61 6e | ranslation-failures".href="#Tran |
| 9ee0 | 73 6c 61 74 69 6f 6e 2d 66 61 69 6c 75 72 65 73 22 3e 54 72 61 6e 73 6c 61 74 69 6f 6e 20 66 61 | slation-failures">Translation.fa |
| 9f00 | 69 6c 75 72 65 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e | ilures</a></li>.............<li> |
| 9f20 | 3c 61 20 69 64 3d 22 74 6f 63 2d 43 2d 4d 61 63 72 6f 73 22 20 68 72 65 66 3d 22 23 43 2d 4d 61 | <a.id="toc-C-Macros".href="#C-Ma |
| 9f40 | 63 72 6f 73 22 3e 43 20 4d 61 63 72 6f 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 | cros">C.Macros</a></li>......... |
| 9f60 | 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 43 2d 50 6f 69 6e 74 65 72 73 22 20 68 | ....<li><a.id="toc-C-Pointers".h |
| 9f80 | 72 65 66 3d 22 23 43 2d 50 6f 69 6e 74 65 72 73 22 3e 43 20 50 6f 69 6e 74 65 72 73 3c 2f 61 3e | ref="#C-Pointers">C.Pointers</a> |
| 9fa0 | 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 |
| 9fc0 | 2d 43 2d 56 61 72 69 61 64 69 63 2d 46 75 6e 63 74 69 6f 6e 73 22 20 68 72 65 66 3d 22 23 43 2d | -C-Variadic-Functions".href="#C- |
| 9fe0 | 56 61 72 69 61 64 69 63 2d 46 75 6e 63 74 69 6f 6e 73 22 3e 43 20 56 61 72 69 61 64 69 63 20 46 | Variadic-Functions">C.Variadic.F |
| a000 | 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 6c | unctions</a></li>.............<l |
| a020 | 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 45 78 70 6f 72 74 69 6e 67 2d 61 2d 43 2d 4c 69 62 72 61 | i><a.id="toc-Exporting-a-C-Libra |
| a040 | 72 79 22 20 68 72 65 66 3d 22 23 45 78 70 6f 72 74 69 6e 67 2d 61 2d 43 2d 4c 69 62 72 61 72 79 | ry".href="#Exporting-a-C-Library |
| a060 | 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> |
| a080 | 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 69 78 69 | .............<li><a.id="toc-Mixi |
| a0a0 | 6e 67 2d 4f 62 6a 65 63 74 2d 46 69 6c 65 73 22 20 68 72 65 66 3d 22 23 4d 69 78 69 6e 67 2d 4f | ng-Object-Files".href="#Mixing-O |
| a0c0 | 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 65 73 | bject-Files">Mixing.Object.Files |
| a0e0 | 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>.... |
| a100 | 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 57 65 62 41 73 73 65 6d 62 6c 79 22 | .....<li><a.id="toc-WebAssembly" |
| a120 | 20 68 72 65 66 3d 22 23 57 65 62 41 73 73 65 6d 62 6c 79 22 3e 57 65 62 41 73 73 65 6d 62 6c 79 | .href="#WebAssembly">WebAssembly |
| a140 | 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 |
| a160 | 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 46 72 65 65 73 74 61 6e 64 69 6e 67 22 20 68 72 65 66 3d | i><a.id="toc-Freestanding".href= |
| a180 | 22 23 46 72 65 65 73 74 61 6e 64 69 6e 67 22 3e 46 72 65 65 73 74 61 6e 64 69 6e 67 3c 2f 61 3e | "#Freestanding">Freestanding</a> |
| a1a0 | 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 |
| a1c0 | 2d 57 41 53 49 22 20 68 72 65 66 3d 22 23 57 41 53 49 22 3e 57 41 53 49 3c 2f 61 3e 3c 2f 6c 69 | -WASI".href="#WASI">WASI</a></li |
| a1e0 | 3e 0a 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 | >.........</ul></li>.........<li |
| a200 | 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 54 61 72 67 65 74 73 22 20 68 72 65 66 3d 22 23 54 61 72 67 | ><a.id="toc-Targets".href="#Targ |
| a220 | 65 74 73 22 3e 54 61 72 67 65 74 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c | ets">Targets</a></li>.........<l |
| a240 | 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 53 74 79 6c 65 2d 47 75 69 64 65 22 20 68 72 65 66 3d 22 | i><a.id="toc-Style-Guide".href=" |
| a260 | 23 53 74 79 6c 65 2d 47 75 69 64 65 22 3e 53 74 79 6c 65 20 47 75 69 64 65 3c 2f 61 3e 0a 20 20 | #Style-Guide">Style.Guide</a>... |
| a280 | 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 | ......<ul>.............<li><a.id |
| a2a0 | 3d 22 74 6f 63 2d 41 76 6f 69 64 2d 52 65 64 75 6e 64 61 6e 63 79 2d 69 6e 2d 4e 61 6d 65 73 22 | ="toc-Avoid-Redundancy-in-Names" |
| a2c0 | 20 68 72 65 66 3d 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 | .href="#Avoid-Redundancy-in-Name |
| a2e0 | 73 22 3e 41 76 6f 69 64 20 52 65 64 75 6e 64 61 6e 63 79 20 69 6e 20 4e 61 6d 65 73 3c 2f 61 3e | s">Avoid.Redundancy.in.Names</a> |
| a300 | 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 |
| a320 | 2d 41 76 6f 69 64 2d 52 65 64 75 6e 64 61 6e 74 2d 4e 61 6d 65 73 2d 69 6e 2d 46 75 6c 6c 79 2d | -Avoid-Redundant-Names-in-Fully- |
| a340 | 51 75 61 6c 69 66 69 65 64 2d 4e 61 6d 65 73 70 61 63 65 73 22 20 68 72 65 66 3d 22 23 41 76 6f | Qualified-Namespaces".href="#Avo |
| a360 | 69 64 2d 52 65 64 75 6e 64 61 6e 74 2d 4e 61 6d 65 73 2d 69 6e 2d 46 75 6c 6c 79 2d 51 75 61 6c | id-Redundant-Names-in-Fully-Qual |
| a380 | 69 66 69 65 64 2d 4e 61 6d 65 73 70 61 63 65 73 22 3e 41 76 6f 69 64 20 52 65 64 75 6e 64 61 6e | ified-Namespaces">Avoid.Redundan |
| a3a0 | 74 20 4e 61 6d 65 73 20 69 6e 20 46 75 6c 6c 79 2d 51 75 61 6c 69 66 69 65 64 20 4e 61 6d 65 73 | t.Names.in.Fully-Qualified.Names |
| a3c0 | 70 61 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 3c 6c 69 3e 3c | paces</a></li>.............<li>< |
| a3e0 | 61 20 69 64 3d 22 74 6f 63 2d 57 68 69 74 65 73 70 61 63 65 22 20 68 72 65 66 3d 22 23 57 68 69 | a.id="toc-Whitespace".href="#Whi |
| a400 | 74 65 73 70 61 63 65 22 3e 57 68 69 74 65 73 70 61 63 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 | tespace">Whitespace</a></li>.... |
| a420 | 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 4e 61 6d 65 73 22 20 68 | .........<li><a.id="toc-Names".h |
| a440 | 72 65 66 3d 22 23 4e 61 6d 65 73 22 3e 4e 61 6d 65 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 | ref="#Names">Names</a></li>..... |
| a460 | 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 6d 70 6c 65 73 22 | ........<li><a.id="toc-Examples" |
| a480 | 20 68 72 65 66 3d 22 23 45 78 61 6d 70 6c 65 73 22 3e 45 78 61 6d 70 6c 65 73 3c 2f 61 3e 3c 2f | .href="#Examples">Examples</a></ |
| a4a0 | 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 44 | li>.............<li><a.id="toc-D |
| a4c0 | 6f 63 2d 43 6f 6d 6d 65 6e 74 2d 47 75 69 64 61 6e 63 65 22 20 68 72 65 66 3d 22 23 44 6f 63 2d | oc-Comment-Guidance".href="#Doc- |
| a4e0 | 43 6f 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 | Comment-Guidance">Doc.Comment.Gu |
| a500 | 69 64 61 6e 63 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 3c 2f 6c | idance</a></li>.........</ul></l |
| a520 | 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 53 6f 75 72 63 65 | i>.........<li><a.id="toc-Source |
| a540 | 2d 45 6e 63 6f 64 69 6e 67 22 20 68 72 65 66 3d 22 23 53 6f 75 72 63 65 2d 45 6e 63 6f 64 69 6e | -Encoding".href="#Source-Encodin |
| a560 | 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 20 20 20 20 | g">Source.Encoding</a></li>..... |
| a580 | 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 4b 65 79 77 6f 72 64 2d 52 65 66 65 72 | ....<li><a.id="toc-Keyword-Refer |
| a5a0 | 65 6e 63 65 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 | ence".href="#Keyword-Reference"> |
| a5c0 | 4b 65 79 77 6f 72 64 20 52 65 66 65 72 65 6e 63 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 | Keyword.Reference</a></li>...... |
| a5e0 | 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 41 70 70 65 6e 64 69 78 22 20 68 72 65 66 | ...<li><a.id="toc-Appendix".href |
| a600 | 3d 22 23 41 70 70 65 6e 64 69 78 22 3e 41 70 70 65 6e 64 69 78 3c 2f 61 3e 0a 20 20 20 20 20 20 | ="#Appendix">Appendix</a>....... |
| a620 | 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 |
| a640 | 63 2d 43 6f 6e 74 61 69 6e 65 72 73 22 20 68 72 65 66 3d 22 23 43 6f 6e 74 61 69 6e 65 72 73 22 | c-Containers".href="#Containers" |
| a660 | 3e 43 6f 6e 74 61 69 6e 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 | >Containers</a></li>............ |
| a680 | 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 47 72 61 6d 6d 61 72 22 20 68 72 65 66 3d 22 23 | .<li><a.id="toc-Grammar".href="# |
| a6a0 | 47 72 61 6d 6d 61 72 22 3e 47 72 61 6d 6d 61 72 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | Grammar">Grammar</a></li>....... |
| a6c0 | 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 5a 65 6e 22 20 68 72 65 66 3d 22 | ......<li><a.id="toc-Zen".href=" |
| a6e0 | 23 5a 65 6e 22 3e 5a 65 6e 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e | #Zen">Zen</a></li>.........</ul> |
| a700 | 3c 2f 6c 69 3e 0a 20 20 20 20 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 20 20 3c 2f 6e 61 76 3e 0a | </li>.....</ul>..........</nav>. |
| a720 | 20 20 20 20 20 20 3c 2f 64 69 76 3e 0a 20 20 20 20 20 20 3c 64 69 76 20 69 64 3d 22 63 6f 6e 74 | ......</div>.......<div.id="cont |
| a740 | 65 6e 74 73 2d 77 72 61 70 70 65 72 22 3e 3c 6d 61 69 6e 20 69 64 3d 22 63 6f 6e 74 65 6e 74 73 | ents-wrapper"><main.id="contents |
| a760 | 22 3e 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 49 6e 74 72 6f 64 75 63 74 69 6f 6e 22 3e 3c | ">.......<h2.id="Introduction">< |
| a780 | 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 49 6e 74 72 6f 64 75 63 74 69 6f 6e 22 3e 49 6e 74 72 6f | a.href="#toc-Introduction">Intro |
| a7a0 | 64 75 63 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 | duction</a>.<a.class="hdr".href= |
| a7c0 | 22 23 49 6e 74 72 6f 64 75 63 74 69 6f 6e 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 | "#Introduction">..</a></h2>..... |
| a7e0 | 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 7a 69 | ...<p>.......<a.href="https://zi |
| a800 | 67 6c 61 6e 67 2e 6f 72 67 22 3e 5a 69 67 3c 2f 61 3e 20 69 73 20 61 20 67 65 6e 65 72 61 6c 2d | glang.org">Zig</a>.is.a.general- |
| a820 | 70 75 72 70 6f 73 65 20 70 72 6f 67 72 61 6d 6d 69 6e 67 20 6c 61 6e 67 75 61 67 65 20 61 6e 64 | purpose.programming.language.and |
| a840 | 20 74 6f 6f 6c 63 68 61 69 6e 20 66 6f 72 20 6d 61 69 6e 74 61 69 6e 69 6e 67 0a 20 20 20 20 20 | .toolchain.for.maintaining...... |
| a860 | 20 3c 73 74 72 6f 6e 67 3e 72 6f 62 75 73 74 3c 2f 73 74 72 6f 6e 67 3e 2c 20 3c 73 74 72 6f 6e | .<strong>robust</strong>,.<stron |
| a880 | 67 3e 6f 70 74 69 6d 61 6c 3c 2f 73 74 72 6f 6e 67 3e 2c 20 61 6e 64 20 3c 73 74 72 6f 6e 67 3e | g>optimal</strong>,.and.<strong> |
| a8a0 | 72 65 75 73 61 62 6c 65 3c 2f 73 74 72 6f 6e 67 3e 20 73 6f 66 74 77 61 72 65 2e 0a 20 20 20 20 | reusable</strong>.software...... |
| a8c0 | 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 52 6f | ..</p>.......<dl>.........<dt>Ro |
| a8e0 | 62 75 73 74 3c 2f 64 74 3e 3c 64 64 3e 42 65 68 61 76 69 6f 72 20 69 73 20 63 6f 72 72 65 63 74 | bust</dt><dd>Behavior.is.correct |
| a900 | 20 65 76 65 6e 20 66 6f 72 20 65 64 67 65 20 63 61 73 65 73 20 73 75 63 68 20 61 73 20 6f 75 74 | .even.for.edge.cases.such.as.out |
| a920 | 20 6f 66 20 6d 65 6d 6f 72 79 2e 3c 2f 64 64 3e 0a 20 20 20 20 20 20 20 20 3c 64 74 3e 4f 70 74 | .of.memory.</dd>.........<dt>Opt |
| a940 | 69 6d 61 6c 3c 2f 64 74 3e 3c 64 64 3e 57 72 69 74 65 20 70 72 6f 67 72 61 6d 73 20 74 68 65 20 | imal</dt><dd>Write.programs.the. |
| a960 | 62 65 73 74 20 77 61 79 20 74 68 65 79 20 63 61 6e 20 62 65 68 61 76 65 20 61 6e 64 20 70 65 72 | best.way.they.can.behave.and.per |
| a980 | 66 6f 72 6d 2e 3c 2f 64 64 3e 0a 20 20 20 20 20 20 20 20 3c 64 74 3e 52 65 75 73 61 62 6c 65 3c | form.</dd>.........<dt>Reusable< |
| a9a0 | 2f 64 74 3e 3c 64 64 3e 54 68 65 20 73 61 6d 65 20 63 6f 64 65 20 77 6f 72 6b 73 20 69 6e 20 6d | /dt><dd>The.same.code.works.in.m |
| a9c0 | 61 6e 79 20 65 6e 76 69 72 6f 6e 6d 65 6e 74 73 20 77 68 69 63 68 20 68 61 76 65 20 64 69 66 66 | any.environments.which.have.diff |
| a9e0 | 65 72 65 6e 74 0a 20 20 20 20 20 20 20 20 20 20 63 6f 6e 73 74 72 61 69 6e 74 73 2e 3c 2f 64 64 | erent...........constraints.</dd |
| aa00 | 3e 0a 20 20 20 20 20 20 20 20 3c 64 74 3e 4d 61 69 6e 74 61 69 6e 61 62 6c 65 3c 2f 64 74 3e 3c | >.........<dt>Maintainable</dt>< |
| aa20 | 64 64 3e 50 72 65 63 69 73 65 6c 79 20 63 6f 6d 6d 75 6e 69 63 61 74 65 20 69 6e 74 65 6e 74 20 | dd>Precisely.communicate.intent. |
| aa40 | 74 6f 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 20 61 6e 64 0a 20 20 20 20 20 20 20 20 20 20 6f 74 | to.the.compiler.and...........ot |
| aa60 | 68 65 72 20 70 72 6f 67 72 61 6d 6d 65 72 73 2e 20 54 68 65 20 6c 61 6e 67 75 61 67 65 20 69 6d | her.programmers..The.language.im |
| aa80 | 70 6f 73 65 73 20 61 20 6c 6f 77 20 6f 76 65 72 68 65 61 64 20 74 6f 20 72 65 61 64 69 6e 67 20 | poses.a.low.overhead.to.reading. |
| aaa0 | 63 6f 64 65 20 61 6e 64 20 69 73 0a 20 20 20 20 20 20 20 20 20 20 72 65 73 69 6c 69 65 6e 74 20 | code.and.is...........resilient. |
| aac0 | 74 6f 20 63 68 61 6e 67 69 6e 67 20 72 65 71 75 69 72 65 6d 65 6e 74 73 20 61 6e 64 20 65 6e 76 | to.changing.requirements.and.env |
| aae0 | 69 72 6f 6e 6d 65 6e 74 73 2e 3c 2f 64 64 3e 0a 20 20 20 20 20 20 3c 2f 64 6c 3e 0a 20 20 20 20 | ironments.</dd>.......</dl>..... |
| ab00 | 20 20 3c 70 3e 0a 20 20 20 20 20 20 4f 66 74 65 6e 20 74 68 65 20 6d 6f 73 74 20 65 66 66 69 63 | ..<p>.......Often.the.most.effic |
| ab20 | 69 65 6e 74 20 77 61 79 20 74 6f 20 6c 65 61 72 6e 20 73 6f 6d 65 74 68 69 6e 67 20 6e 65 77 20 | ient.way.to.learn.something.new. |
| ab40 | 69 73 20 74 6f 20 73 65 65 20 65 78 61 6d 70 6c 65 73 2c 20 73 6f 0a 20 20 20 20 20 20 74 68 69 | is.to.see.examples,.so.......thi |
| ab60 | 73 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 20 73 68 6f 77 73 20 68 6f 77 20 74 6f 20 75 73 65 | s.documentation.shows.how.to.use |
| ab80 | 20 65 61 63 68 20 6f 66 20 5a 69 67 27 73 20 66 65 61 74 75 72 65 73 2e 20 49 74 20 69 73 0a 20 | .each.of.Zig's.features..It.is.. |
| aba0 | 20 20 20 20 20 61 6c 6c 20 6f 6e 20 6f 6e 65 20 70 61 67 65 20 73 6f 20 79 6f 75 20 63 61 6e 20 | .....all.on.one.page.so.you.can. |
| abc0 | 73 65 61 72 63 68 20 77 69 74 68 20 79 6f 75 72 20 62 72 6f 77 73 65 72 27 73 20 73 65 61 72 63 | search.with.your.browser's.searc |
| abe0 | 68 20 74 6f 6f 6c 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 | h.tool........</p>.......<p>.... |
| ac00 | 20 20 20 54 68 65 20 63 6f 64 65 20 73 61 6d 70 6c 65 73 20 69 6e 20 74 68 69 73 20 64 6f 63 75 | ...The.code.samples.in.this.docu |
| ac20 | 6d 65 6e 74 20 61 72 65 20 63 6f 6d 70 69 6c 65 64 20 61 6e 64 20 74 65 73 74 65 64 20 61 73 20 | ment.are.compiled.and.tested.as. |
| ac40 | 70 61 72 74 20 6f 66 20 74 68 65 20 6d 61 69 6e 20 74 65 73 74 20 73 75 69 74 65 20 6f 66 20 5a | part.of.the.main.test.suite.of.Z |
| ac60 | 69 67 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 | ig........</p>.......<p>.......T |
| ac80 | 68 69 73 20 48 54 4d 4c 20 64 6f 63 75 6d 65 6e 74 20 64 65 70 65 6e 64 73 20 6f 6e 20 6e 6f 20 | his.HTML.document.depends.on.no. |
| aca0 | 65 78 74 65 72 6e 61 6c 20 66 69 6c 65 73 2c 20 73 6f 20 79 6f 75 20 63 61 6e 20 75 73 65 20 69 | external.files,.so.you.can.use.i |
| acc0 | 74 20 6f 66 66 6c 69 6e 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 | t.offline........</p>........... |
| ace0 | 20 20 20 20 3c 68 32 20 69 64 3d 22 5a 69 67 2d 53 74 61 6e 64 61 72 64 2d 4c 69 62 72 61 72 79 | ....<h2.id="Zig-Standard-Library |
| ad00 | 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 5a 69 67 2d 53 74 61 6e 64 61 72 64 2d 4c 69 62 | "><a.href="#toc-Zig-Standard-Lib |
| ad20 | 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 20 3c | rary">Zig.Standard.Library</a>.< |
| ad40 | 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 53 74 61 6e 64 61 72 | a.class="hdr".href="#Zig-Standar |
| ad60 | 64 2d 4c 69 62 72 61 72 79 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 | d-Library">..</a></h2>........<p |
| ad80 | 3e 0a 20 20 20 20 20 20 20 20 54 68 65 20 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 7a | >.........The.<a.href="https://z |
| ada0 | 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 30 2e 31 35 2e 31 2f | iglang.org/documentation/0.15.1/ |
| adc0 | 73 74 64 2f 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 20 68 | std/">Zig.Standard.Library</a>.h |
| ade0 | 61 73 20 69 74 73 20 6f 77 6e 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 2e 0a 20 20 20 20 20 20 | as.its.own.documentation........ |
| ae00 | 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 20 20 5a 69 67 27 73 20 53 74 61 | </p>.......<p>.........Zig's.Sta |
| ae20 | 6e 64 61 72 64 20 4c 69 62 72 61 72 79 20 63 6f 6e 74 61 69 6e 73 20 63 6f 6d 6d 6f 6e 6c 79 20 | ndard.Library.contains.commonly. |
| ae40 | 75 73 65 64 20 61 6c 67 6f 72 69 74 68 6d 73 2c 20 64 61 74 61 20 73 74 72 75 63 74 75 72 65 73 | used.algorithms,.data.structures |
| ae60 | 2c 20 61 6e 64 20 64 65 66 69 6e 69 74 69 6f 6e 73 20 74 6f 20 68 65 6c 70 20 79 6f 75 20 62 75 | ,.and.definitions.to.help.you.bu |
| ae80 | 69 6c 64 20 70 72 6f 67 72 61 6d 73 20 6f 72 20 6c 69 62 72 61 72 69 65 73 2e 0a 20 20 20 20 20 | ild.programs.or.libraries....... |
| aea0 | 20 20 20 59 6f 75 20 77 69 6c 6c 20 73 65 65 20 6d 61 6e 79 20 65 78 61 6d 70 6c 65 73 20 6f 66 | ...You.will.see.many.examples.of |
| aec0 | 20 5a 69 67 27 73 20 53 74 61 6e 64 61 72 64 20 4c 69 62 72 61 72 79 20 75 73 65 64 20 69 6e 20 | .Zig's.Standard.Library.used.in. |
| aee0 | 74 68 69 73 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 2e 20 54 6f 20 6c 65 61 72 6e 20 6d 6f 72 | this.documentation..To.learn.mor |
| af00 | 65 20 61 62 6f 75 74 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 | e.about.the.Zig.Standard.Library |
| af20 | 2c 0a 20 20 20 20 20 20 20 20 76 69 73 69 74 20 74 68 65 20 6c 69 6e 6b 20 61 62 6f 76 65 2e 0a | ,.........visit.the.link.above.. |
| af40 | 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 41 6c 74 | ......</p>.......<p>.........Alt |
| af60 | 65 72 6e 61 74 69 76 65 6c 79 2c 20 74 68 65 20 5a 69 67 20 53 74 61 6e 64 61 72 64 20 4c 69 62 | ernatively,.the.Zig.Standard.Lib |
| af80 | 72 61 72 79 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 20 69 73 20 70 72 6f 76 69 64 65 64 20 77 | rary.documentation.is.provided.w |
| afa0 | 69 74 68 20 65 61 63 68 20 5a 69 67 20 64 69 73 74 72 69 62 75 74 69 6f 6e 2e 20 49 74 20 63 61 | ith.each.Zig.distribution..It.ca |
| afc0 | 6e 20 62 65 20 72 65 6e 64 65 72 65 64 20 76 69 61 20 61 20 6c 6f 63 61 6c 20 77 65 62 73 65 72 | n.be.rendered.via.a.local.webser |
| afe0 | 76 65 72 20 77 69 74 68 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 | ver.with:.......</p>.......<figu |
| b000 | 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" |
| b020 | 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 7a 69 | >Shell</figcaption><pre><samp>zi |
| b040 | 67 20 73 74 64 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 | g.std.</samp></pre></figure>.... |
| b060 | 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 3e | ...........<h2.id="Hello-World"> |
| b080 | 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 6f | <a.href="#toc-Hello-World">Hello |
| b0a0 | 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 22 | .World</a>.<a.class="hdr".href=" |
| b0c0 | 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 20 | #Hello-World">..</a></h2>....... |
| b0e0 | 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 |
| b100 | 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 7a | -cap"><cite.class="file">hello.z |
| b120 | 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 |
| b140 | 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 |
| b160 | 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 |
| b180 | 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 |
| b1a0 | 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>); |
| b1c0 | 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 |
| b1e0 | 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> |
| b200 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 6d 61 69 6e 3c 2f 73 70 61 6e | .<span.class="tok-fn">main</span |
| b220 | 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 |
| b240 | 3c 2f 73 70 61 6e 3e 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 |
| b260 | 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 73 74 64 2e 66 73 2e 46 69 6c 65 2e 73 74 64 6f 75 74 | w">try</span>.std.fs.File.stdout |
| b280 | 28 29 2e 77 72 69 74 65 41 6c 6c 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 | ().writeAll(<span.class="tok-str |
| b2a0 | 22 3e 26 71 75 6f 74 3b 48 65 6c 6c 6f 2c 20 57 6f 72 6c 64 21 5c 6e 26 71 75 6f 74 3b 3c 2f 73 | ">"Hello,.World!\n"</s |
| b2c0 | 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 |
| b2e0 | 69 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 |
| b300 | 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 |
| b320 | 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 6c 6f 2e 7a 69 67 3c | >$.<kbd>zig.build-exe.hello.zig< |
| b340 | 2f 6b 62 64 3e 0a 24 20 3c 6b 62 64 3e 2e 2f 68 65 6c 6c 6f 3c 2f 6b 62 64 3e 0a 48 65 6c 6c 6f | /kbd>.$.<kbd>./hello</kbd>.Hello |
| b360 | 2c 20 57 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 | ,.World!.</samp></pre></figure>. |
| b380 | 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 4d 6f 73 74 20 6f 66 20 74 68 65 20 74 69 6d | .......<p>.......Most.of.the.tim |
| b3a0 | 65 2c 20 69 74 20 69 73 20 6d 6f 72 65 20 61 70 70 72 6f 70 72 69 61 74 65 20 74 6f 20 77 72 69 | e,.it.is.more.appropriate.to.wri |
| b3c0 | 74 65 20 74 6f 20 73 74 64 65 72 72 20 72 61 74 68 65 72 20 74 68 61 6e 20 73 74 64 6f 75 74 2c | te.to.stderr.rather.than.stdout, |
| b3e0 | 20 61 6e 64 0a 20 20 20 20 20 20 77 68 65 74 68 65 72 20 6f 72 20 6e 6f 74 20 74 68 65 20 6d 65 | .and.......whether.or.not.the.me |
| b400 | 73 73 61 67 65 20 69 73 20 73 75 63 63 65 73 73 66 75 6c 6c 79 20 77 72 69 74 74 65 6e 20 74 6f | ssage.is.successfully.written.to |
| b420 | 20 74 68 65 20 73 74 72 65 61 6d 20 69 73 20 69 72 72 65 6c 65 76 61 6e 74 2e 0a 20 20 20 20 20 | .the.stream.is.irrelevant....... |
| b440 | 20 41 6c 73 6f 2c 20 66 6f 72 6d 61 74 74 65 64 20 70 72 69 6e 74 69 6e 67 20 6f 66 74 65 6e 20 | .Also,.formatted.printing.often. |
| b460 | 63 6f 6d 65 73 20 69 6e 20 68 61 6e 64 79 2e 20 46 6f 72 20 74 68 69 73 20 63 6f 6d 6d 6f 6e 20 | comes.in.handy..For.this.common. |
| b480 | 63 61 73 65 2c 0a 20 20 20 20 20 20 74 68 65 72 65 20 69 73 20 61 20 73 69 6d 70 6c 65 72 20 41 | case,.......there.is.a.simpler.A |
| b4a0 | 50 49 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 | PI:.......</p>.......<figure><fi |
| b4c0 | 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 |
| b4e0 | 6c 61 73 73 3d 22 66 69 6c 65 22 3e 68 65 6c 6c 6f 5f 61 67 61 69 6e 2e 7a 69 67 3c 2f 63 69 74 | lass="file">hello_again.zig</cit |
| b500 | 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. |
| b520 | 63 6c 61 73 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. |
| b540 | 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 |
| b560 | 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" |
| b580 | 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 |
| b5a0 | 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 |
| b5c0 | 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. |
| b5e0 | 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 |
| b600 | 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>. |
| b620 | 7b 0a 20 20 20 20 73 74 64 2e 64 65 62 75 67 2e 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 6c 61 73 | {.....std.debug.print(<span.clas |
| b640 | 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 48 65 6c 6c 6f 2c 20 7b 73 7d 21 5c 6e 26 | s="tok-str">"Hello,.{s}!\n& |
| b660 | 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 |
| b680 | 2d 73 74 72 22 3e 26 71 75 6f 74 3b 57 6f 72 6c 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 7d 29 | -str">"World"</span>}) |
| b6a0 | 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 |
| b6c0 | 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 |
| b6e0 | 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 |
| b700 | 62 64 3e 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 68 65 6c 6c 6f 5f 61 67 61 69 6e 2e 7a 69 67 | bd>zig.build-exe.hello_again.zig |
| b720 | 3c 2f 6b 62 64 3e 0a 24 20 3c 6b 62 64 3e 2e 2f 68 65 6c 6c 6f 5f 61 67 61 69 6e 3c 2f 6b 62 64 | </kbd>.$.<kbd>./hello_again</kbd |
| b740 | 3e 0a 48 65 6c 6c 6f 2c 20 57 6f 72 6c 64 21 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 | >.Hello,.World!.</samp></pre></f |
| b760 | 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 6e 20 74 68 69 73 20 | igure>........<p>.......In.this. |
| b780 | 63 61 73 65 2c 20 74 68 65 20 3c 63 6f 64 65 3e 21 3c 2f 63 6f 64 65 3e 20 6d 61 79 20 62 65 20 | case,.the.<code>!</code>.may.be. |
| b7a0 | 6f 6d 69 74 74 65 64 20 66 72 6f 6d 20 74 68 65 20 72 65 74 75 72 6e 0a 20 20 20 20 20 20 74 79 | omitted.from.the.return.......ty |
| b7c0 | 70 65 20 6f 66 20 3c 63 6f 64 65 3e 6d 61 69 6e 3c 2f 63 6f 64 65 3e 20 62 65 63 61 75 73 65 20 | pe.of.<code>main</code>.because. |
| b7e0 | 6e 6f 20 65 72 72 6f 72 73 20 61 72 65 20 72 65 74 75 72 6e 65 64 20 66 72 6f 6d 20 74 68 65 20 | no.errors.are.returned.from.the. |
| b800 | 66 75 6e 63 74 69 6f 6e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 | function........</p>.......<p>Se |
| b820 | 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 56 61 | e.also:</p><ul>.<li><a.href="#Va |
| b840 | 6c 75 65 73 22 3e 56 61 6c 75 65 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 | lues">Values</a></li>.<li><a.hre |
| b860 | 66 3d 22 23 54 75 70 6c 65 73 22 3e 54 75 70 6c 65 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e | f="#Tuples">Tuples</a></li>.<li> |
| b880 | 3c 61 20 68 72 65 66 3d 22 23 69 6d 70 6f 72 74 22 3e 40 69 6d 70 6f 72 74 3c 2f 61 3e 3c 2f 6c | <a.href="#import">@import</a></l |
| b8a0 | 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< |
| b8c0 | 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 45 6e 74 72 79 2d 50 6f 69 | /a></li>.<li><a.href="#Entry-Poi |
| b8e0 | 6e 74 22 3e 45 6e 74 72 79 20 50 6f 69 6e 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 | nt">Entry.Point</a></li>.<li><a. |
| b900 | 68 72 65 66 3d 22 23 53 6f 75 72 63 65 2d 45 6e 63 6f 64 69 6e 67 22 3e 53 6f 75 72 63 65 20 45 | href="#Source-Encoding">Source.E |
| b920 | 6e 63 6f 64 69 6e 67 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 74 | ncoding</a></li>.<li><a.href="#t |
| b940 | 72 79 22 3e 74 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 | ry">try</a></li>.</ul>.......... |
| b960 | 20 20 20 20 20 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 | .....<h2.id="Comments"><a.href=" |
| b980 | 23 74 6f 63 2d 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 | #toc-Comments">Comments</a>.<a.c |
| b9a0 | 6c 61 73 73 3d 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 | lass="hdr".href="#Comments">..</ |
| b9c0 | 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 5a 69 67 20 73 75 70 | a></h2>........<p>.......Zig.sup |
| b9e0 | 70 6f 72 74 73 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 | ports.3.types.of.comments..Norma |
| ba00 | 6c 20 63 6f 6d 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 | l.comments.are.ignored,.but.doc. |
| ba20 | 63 6f 6d 6d 65 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 | comments.......and.top-level.doc |
| ba40 | 20 63 6f 6d 6d 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 | .comments.are.used.by.the.compil |
| ba60 | 65 72 20 74 6f 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 | er.to.generate.the.package.docum |
| ba80 | 65 6e 74 61 74 69 6f 6e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 | entation........</p>.......<p>.. |
| baa0 | 20 20 20 20 20 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 | .....The.generated.documentation |
| bac0 | 20 69 73 20 73 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 | .is.still.experimental,.and.can. |
| bae0 | 62 65 20 70 72 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 | be.produced.with:.......</p>.... |
| bb00 | 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 | ...<figure><figcaption.class="sh |
| bb20 | 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> |
| bb40 | 3c 73 61 6d 70 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 | <samp>zig.test.-femit-docs.main. |
| bb60 | 7a 69 67 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 | zig.</samp></pre></figure>...... |
| bb80 | 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- |
| bba0 | 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 63 6f 6d 6d 65 6e 74 73 | cap"><cite.class="file">comments |
| bbc0 | 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 |
| bbe0 | 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 |
| bc00 | 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 |
| bc20 | 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 |
| bc40 | 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 |
| bc60 | 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 |
| bc80 | 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 |
| bca0 | 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 |
| bcc0 | 6b 2d 66 6e 22 3e 6d 61 69 6e 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | k-fn">main</span>().<span.class= |
| bce0 | 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 |
| bd00 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 43 6f 6d 6d 65 6e | an.class="tok-comment">//.Commen |
| bd20 | 74 73 20 69 6e 20 5a 69 67 20 73 74 61 72 74 20 77 69 74 68 20 26 71 75 6f 74 3b 2f 2f 26 71 75 | ts.in.Zig.start.with."//&qu |
| bd40 | 6f 74 3b 20 61 6e 64 20 65 6e 64 20 61 74 20 74 68 65 20 6e 65 78 74 20 4c 46 20 62 79 74 65 20 | ot;.and.end.at.the.next.LF.byte. |
| bd60 | 28 65 6e 64 20 6f 66 20 6c 69 6e 65 29 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 | (end.of.line).</span>.....<span. |
| bd80 | 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 6c 69 6e 65 20 | class="tok-comment">//.The.line. |
| bda0 | 62 65 6c 6f 77 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 | below.is.a.comment.and.won't.be. |
| bdc0 | 65 78 65 63 75 74 65 64 2e 3c 2f 73 70 61 6e 3e 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | executed.</span>......<span.clas |
| bde0 | 73 3d 22 74 6f 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 | s="tok-comment">//print("He |
| be00 | 6c 6c 6f 3f 26 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 | llo?",..{});</span>......pr |
| be20 | 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">" |
| be40 | 48 65 6c 6c 6f 2c 20 77 6f 72 6c 64 21 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b | Hello,.world!\n"</span>,..{ |
| be60 | 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 2f | });.<span.class="tok-comment">// |
| be80 | 20 61 6e 6f 74 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 | .another.comment</span>.}</code> |
| bea0 | 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 |
| bec0 | 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 |
| bee0 | 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 |
| bf00 | 6c 64 2d 65 78 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 | ld-exe.comments.zig</kbd>.$.<kbd |
| bf20 | 3e 2e 2f 63 6f 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 | >./comments</kbd>.Hello,.world!. |
| bf40 | 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 |
| bf60 | 3e 0a 20 20 20 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 | >.......There.are.no.multiline.c |
| bf80 | 6f 6d 6d 65 6e 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 | omments.in.Zig.(e.g..like.<code. |
| bfa0 | 63 6c 61 73 73 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 | class="c">/*.*/</code>.......com |
| bfc0 | 6d 65 6e 74 73 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 | ments.in.C)...This.allows.Zig.to |
| bfe0 | 20 68 61 76 65 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 | .have.the.property.that.each.lin |
| c000 | 65 0a 20 20 20 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 | e.......of.code.can.be.tokenized |
| c020 | 20 6f 75 74 20 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 | .out.of.context........</p>..... |
| c040 | 20 20 3c 68 33 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 | ..<h3.id="Doc-Comments"><a.href= |
| c060 | 22 23 74 6f 63 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 | "#toc-Doc-Comments">Doc.Comments |
| c080 | 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 44 6f 63 2d 43 | </a>.<a.class="hdr".href="#Doc-C |
| c0a0 | 6f 6d 6d 65 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 | omments">..</a></h3>........<p>. |
| c0c0 | 20 20 20 20 20 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 | ......A.doc.comment.is.one.that. |
| c0e0 | 62 65 67 69 6e 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 | begins.with.exactly.three.slashe |
| c100 | 73 20 28 69 2e 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 | s.(i.e........<code><span.class= |
| c120 | 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 | "tok-comment">///</span></code>. |
| c140 | 62 75 74 20 6e 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 | but.not.<code><span.class="tok-c |
| c160 | 6f 6d 6d 65 6e 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 | omment">////</span></code>);.... |
| c180 | 20 20 20 6d 75 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 | ...multiple.doc.comments.in.a.ro |
| c1a0 | 77 20 61 72 65 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 | w.are.merged.together.to.form.a. |
| c1c0 | 6d 75 6c 74 69 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 | multiline.......doc.comment...Th |
| c1e0 | 65 20 64 6f 63 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 | e.doc.comment.documents.whatever |
| c200 | 20 69 6d 6d 65 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 | .immediately.follows.it........< |
| c220 | 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 |
| c240 | 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" |
| c260 | 3e 64 6f 63 5f 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 | >doc_comments.zig</cite></figcap |
| c280 | 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 |
| c2a0 | 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 41 20 73 74 72 75 63 74 75 72 65 20 66 6f 72 20 73 74 | -comment">///.A.structure.for.st |
| c2c0 | 6f 72 69 6e 67 20 61 20 74 69 6d 65 73 74 61 6d 70 2c 20 77 69 74 68 20 6e 61 6e 6f 73 65 63 6f | oring.a.timestamp,.with.nanoseco |
| c2e0 | 6e 64 20 70 72 65 63 69 73 69 6f 6e 20 28 74 68 69 73 20 69 73 20 61 3c 2f 73 70 61 6e 3e 0a 3c | nd.precision.(this.is.a</span>.< |
| c300 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 6d 75 6c | span.class="tok-comment">///.mul |
| c320 | 74 69 6c 69 6e 65 20 64 6f 63 20 63 6f 6d 6d 65 6e 74 29 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 | tiline.doc.comment).</span>.<spa |
| c340 | 6e 20 63 6c 61 73 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 | n.class="tok-kw">const</span>.Ti |
| c360 | 6d 65 73 74 61 6d 70 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 | mestamp.=.<span.class="tok-kw">s |
| c380 | 74 72 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | truct</span>.{.....<span.class=" |
| c3a0 | 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 54 68 65 20 6e 75 6d 62 65 72 20 6f 66 20 73 | tok-comment">///.The.number.of.s |
| c3c0 | 65 63 6f 6e 64 73 20 73 69 6e 63 65 20 74 68 65 20 65 70 6f 63 68 20 28 74 68 69 73 20 69 73 20 | econds.since.the.epoch.(this.is. |
| c3e0 | 61 6c 73 6f 20 61 20 64 6f 63 20 63 6f 6d 6d 65 6e 74 29 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 | also.a.doc.comment).</span>..... |
| c400 | 73 65 63 6f 6e 64 73 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | seconds:.<span.class="tok-type"> |
| c420 | 69 36 34 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d | i64</span>,.<span.class="tok-com |
| c440 | 6d 65 6e 74 22 3e 2f 2f 20 73 69 67 6e 65 64 20 73 6f 20 77 65 20 63 61 6e 20 72 65 70 72 65 73 | ment">//.signed.so.we.can.repres |
| c460 | 65 6e 74 20 70 72 65 2d 31 39 37 30 20 28 6e 6f 74 20 61 20 64 6f 63 20 63 6f 6d 6d 65 6e 74 29 | ent.pre-1970.(not.a.doc.comment) |
| c480 | 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 |
| c4a0 | 6d 65 6e 74 22 3e 2f 2f 2f 20 54 68 65 20 6e 75 6d 62 65 72 20 6f 66 20 6e 61 6e 6f 73 65 63 6f | ment">///.The.number.of.nanoseco |
| c4c0 | 6e 64 73 20 70 61 73 74 20 74 68 65 20 73 65 63 6f 6e 64 20 28 64 6f 63 20 63 6f 6d 6d 65 6e 74 | nds.past.the.second.(doc.comment |
| c4e0 | 20 61 67 61 69 6e 29 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 6e 61 6e 6f 73 3a 20 3c 73 70 61 6e | .again).</span>.....nanos:.<span |
| c500 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 2c 0a 0a 20 | .class="tok-type">u32</span>,... |
| c520 | 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">/// |
| c540 | 20 52 65 74 75 72 6e 73 20 61 20 60 54 69 6d 65 73 74 61 6d 70 60 20 73 74 72 75 63 74 20 72 65 | .Returns.a.`Timestamp`.struct.re |
| c560 | 70 72 65 73 65 6e 74 69 6e 67 20 74 68 65 20 55 6e 69 78 20 65 70 6f 63 68 3b 20 74 68 61 74 20 | presenting.the.Unix.epoch;.that. |
| c580 | 69 73 2c 20 74 68 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | is,.the</span>.....<span.class=" |
| c5a0 | 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 6d 6f 6d 65 6e 74 20 6f 66 20 31 39 37 30 20 | tok-comment">///.moment.of.1970. |
| c5c0 | 4a 61 6e 20 31 20 30 30 3a 30 30 3a 30 30 20 55 54 43 20 28 74 68 69 73 20 69 73 20 61 20 64 6f | Jan.1.00:00:00.UTC.(this.is.a.do |
| c5e0 | 63 20 63 6f 6d 6d 65 6e 74 20 74 6f 6f 29 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e | c.comment.too).</span>.....<span |
| c600 | 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 |
| c620 | 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. |
| c640 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 75 6e 69 78 45 70 6f 63 68 3c 2f 73 70 61 6e 3e 28 | class="tok-fn">unixEpoch</span>( |
| c660 | 29 20 54 69 6d 65 73 74 61 6d 70 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | ).Timestamp.{.........<span.clas |
| c680 | 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 54 69 6d 65 73 74 61 | s="tok-kw">return</span>.Timesta |
| c6a0 | 6d 70 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 2e 73 65 63 6f 6e 64 73 20 3d 20 3c 73 70 61 6e | mp{..............seconds.=.<span |
| c6c0 | 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>,... |
| c6e0 | 20 20 20 20 20 20 20 20 20 20 2e 6e 61 6e 6f 73 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ...........nanos.=.<span.class=" |
| c700 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 7d 3b | tok-number">0</span>,.........}; |
| c720 | 0a 20 20 20 20 7d 0a 7d 3b 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a | .....}.};</code></pre></figure>. |
| c740 | 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 44 6f 63 20 63 6f 6d 6d 65 6e 74 73 20 61 72 | .......<p>.......Doc.comments.ar |
| c760 | 65 20 6f 6e 6c 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 | e.only.allowed.in.certain.places |
| c780 | 3b 20 69 74 20 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 | ;.it.is.a.compile.error.to...... |
| c7a0 | 20 68 61 76 65 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 | .have.a.doc.comment.in.an.unexpe |
| c7c0 | 63 74 65 64 20 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 | cted.place,.such.as.in.the.middl |
| c7e0 | 65 20 6f 66 20 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 | e.of.an.expression,.......or.jus |
| c800 | 74 20 62 65 66 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 | t.before.a.non-doc.comment...... |
| c820 | 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 |
| c840 | 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 |
| c860 | 6c 65 22 3e 69 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 | le">invalid_doc-comment.zig</cit |
| c880 | 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. |
| c8a0 | 63 6c 61 73 73 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 | class="tok-comment">///.doc-comm |
| c8c0 | 65 6e 74 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d | ent</span>.<span.class="tok-comm |
| c8e0 | 65 6e 74 22 3e 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 | ent">//!.top-level.doc-comment</ |
| c900 | 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 |
| c920 | 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 |
| c940 | 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 |
| c960 | 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 |
| c980 | 61 6e 3e 29 3b 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 75 | an>);</code></pre></figure><figu |
| c9a0 | 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" |
| c9c0 | 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>$. |
| c9e0 | 3c 6b 62 64 3e 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 | <kbd>zig.build-obj.invalid_doc-c |
| ca00 | 6f 6d 6d 65 6e 74 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 | omment.zig</kbd>.<span.class="sg |
| ca20 | 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e | r-1m">/home/andy/dev/zig/doc/lan |
| ca40 | 67 72 65 66 2f 69 6e 76 61 6c 69 64 5f 64 6f 63 2d 63 6f 6d 6d 65 6e 74 2e 7a 69 67 3a 31 3a 31 | gref/invalid_doc-comment.zig:1:1 |
| ca60 | 36 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 31 6d 22 3e | 6:.</span><span.class="sgr-31m"> |
| ca80 | 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 |
| caa0 | 6d 22 3e 65 78 70 65 63 74 65 64 20 74 79 70 65 20 65 78 70 72 65 73 73 69 6f 6e 2c 20 66 6f 75 | m">expected.type.expression,.fou |
| cac0 | 6e 64 20 27 61 20 64 6f 63 75 6d 65 6e 74 20 63 6f 6d 6d 65 6e 74 27 0a 3c 2f 73 70 61 6e 3e 2f | nd.'a.document.comment'.</span>/ |
| cae0 | 2f 2f 20 64 6f 63 2d 63 6f 6d 6d 65 6e 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 | //.doc-comment................<s |
| cb00 | 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 0a 3c 2f 73 70 61 6e 3e 0a 3c 2f | pan.class="sgr-32m">^.</span>.</ |
| cb20 | 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 66 69 67 | samp></pre></figure>........<fig |
| cb40 | 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"> |
| cb60 | 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 75 6e 61 74 74 61 63 68 65 64 5f 64 6f | <cite.class="file">unattached_do |
| cb80 | 63 2d 63 6f 6d 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 | c-comment.zig</cite></figcaption |
| cba0 | 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" |
| cbc0 | 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" |
| cbe0 | 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"> |
| cc00 | 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 |
| cc20 | 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | ype">void</span>.{}..<span.class |
| cc40 | 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 45 6e 64 20 6f 66 20 66 69 6c 65 3c 2f | ="tok-comment">///.End.of.file</ |
| cc60 | 73 70 61 6e 3e 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 | span></code></pre></figure><figu |
| cc80 | 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" |
| cca0 | 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>$. |
| ccc0 | 3c 6b 62 64 3e 7a 69 67 20 62 75 69 6c 64 2d 6f 62 6a 20 75 6e 61 74 74 61 63 68 65 64 5f 64 6f | <kbd>zig.build-obj.unattached_do |
| cce0 | 63 2d 63 6f 6d 6d 65 6e 74 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | c-comment.zig</kbd>.<span.class= |
| cd00 | 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f | "sgr-1m">/home/andy/dev/zig/doc/ |
| cd20 | 6c 61 6e 67 72 65 66 2f 75 6e 61 74 74 61 63 68 65 64 5f 64 6f 63 2d 63 6f 6d 6d 65 6e 74 2e 7a | langref/unattached_doc-comment.z |
| cd40 | 69 67 3a 33 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:3:1:.</span><span.class="sgr- |
| cd60 | 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=" |
| cd80 | 73 67 72 2d 31 6d 22 3e 75 6e 61 74 74 61 63 68 65 64 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e | sgr-1m">unattached.documentation |
| cda0 | 20 63 6f 6d 6d 65 6e 74 0a 3c 2f 73 70 61 6e 3e 2f 2f 2f 20 45 6e 64 20 6f 66 20 66 69 6c 65 0a | .comment.</span>///.End.of.file. |
| cdc0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 7e 7e 7e 7e 7e 7e 7e 7e 7e | <span.class="sgr-32m">^~~~~~~~~~ |
| cde0 | 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 67 | ~~~~~.</span>.</samp></pre></fig |
| ce00 | 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 44 6f 63 20 63 6f 6d 6d 65 6e | ure>........<p>.......Doc.commen |
| ce20 | 74 73 20 63 61 6e 20 62 65 20 69 6e 74 65 72 6c 65 61 76 65 64 20 77 69 74 68 20 6e 6f 72 6d 61 | ts.can.be.interleaved.with.norma |
| ce40 | 6c 20 63 6f 6d 6d 65 6e 74 73 2e 20 43 75 72 72 65 6e 74 6c 79 2c 20 77 68 65 6e 20 70 72 6f 64 | l.comments..Currently,.when.prod |
| ce60 | 75 63 69 6e 67 0a 20 20 20 20 20 20 74 68 65 20 70 61 63 6b 61 67 65 20 64 6f 63 75 6d 65 6e 74 | ucing.......the.package.document |
| ce80 | 61 74 69 6f 6e 2c 20 6e 6f 72 6d 61 6c 20 63 6f 6d 6d 65 6e 74 73 20 61 72 65 20 6d 65 72 67 65 | ation,.normal.comments.are.merge |
| cea0 | 64 20 77 69 74 68 20 64 6f 63 20 63 6f 6d 6d 65 6e 74 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a | d.with.doc.comments........</p>. |
| cec0 | 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 54 6f 70 2d 4c 65 76 65 6c 2d 44 | .............<h3.id="Top-Level-D |
| cee0 | 6f 63 2d 43 6f 6d 6d 65 6e 74 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 54 6f 70 2d 4c | oc-Comments"><a.href="#toc-Top-L |
| cf00 | 65 76 65 6c 2d 44 6f 63 2d 43 6f 6d 6d 65 6e 74 73 22 3e 54 6f 70 2d 4c 65 76 65 6c 20 44 6f 63 | evel-Doc-Comments">Top-Level.Doc |
| cf20 | 20 43 6f 6d 6d 65 6e 74 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 | .Comments</a>.<a.class="hdr".hre |
| cf40 | 66 3d 22 23 54 6f 70 2d 4c 65 76 65 6c 2d 44 6f 63 2d 43 6f 6d 6d 65 6e 74 73 22 3e c2 a7 3c 2f | f="#Top-Level-Doc-Comments">..</ |
| cf60 | 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 20 74 6f 70 2d 6c | a></h3>........<p>.......A.top-l |
| cf80 | 65 76 65 6c 20 64 6f 63 20 63 6f 6d 6d 65 6e 74 20 69 73 20 6f 6e 65 20 74 68 61 74 20 62 65 67 | evel.doc.comment.is.one.that.beg |
| cfa0 | 69 6e 73 20 77 69 74 68 20 74 77 6f 20 73 6c 61 73 68 65 73 20 61 6e 64 20 61 6e 20 65 78 63 6c | ins.with.two.slashes.and.an.excl |
| cfc0 | 61 6d 61 74 69 6f 6e 0a 20 20 20 20 20 20 70 6f 69 6e 74 3a 20 3c 63 6f 64 65 3e 3c 73 70 61 6e | amation.......point:.<code><span |
| cfe0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 21 3c 2f 73 70 61 6e 3e 3c | .class="tok-comment">//!</span>< |
| d000 | 2f 63 6f 64 65 3e 3b 20 69 74 20 64 6f 63 75 6d 65 6e 74 73 20 74 68 65 20 63 75 72 72 65 6e 74 | /code>;.it.documents.the.current |
| d020 | 20 6d 6f 64 75 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 | .module........</p>.......<p>... |
| d040 | 20 20 20 20 49 74 20 69 73 20 61 20 63 6f 6d 70 69 6c 65 20 65 72 72 6f 72 20 69 66 20 61 20 74 | ....It.is.a.compile.error.if.a.t |
| d060 | 6f 70 2d 6c 65 76 65 6c 20 64 6f 63 20 63 6f 6d 6d 65 6e 74 20 69 73 20 6e 6f 74 20 70 6c 61 63 | op-level.doc.comment.is.not.plac |
| d080 | 65 64 20 61 74 20 74 68 65 20 73 74 61 72 74 0a 20 20 20 20 20 20 6f 66 20 61 20 3c 61 20 68 72 | ed.at.the.start.......of.a.<a.hr |
| d0a0 | 65 66 3d 22 23 43 6f 6e 74 61 69 6e 65 72 73 22 3e 63 6f 6e 74 61 69 6e 65 72 3c 2f 61 3e 2c 20 | ef="#Containers">container</a>,. |
| d0c0 | 62 65 66 6f 72 65 20 61 6e 79 20 65 78 70 72 65 73 73 69 6f 6e 73 2e 0a 20 20 20 20 20 20 3c 2f | before.any.expressions........</ |
| d0e0 | 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 |
| d100 | 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"> |
| d120 | 74 6c 64 6f 63 5f 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 | tldoc_comments.zig</cite></figca |
| d140 | 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 |
| d160 | 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 21 20 54 68 69 73 20 6d 6f 64 75 6c 65 20 70 72 6f 76 69 | k-comment">//!.This.module.provi |
| d180 | 64 65 73 20 66 75 6e 63 74 69 6f 6e 73 20 66 6f 72 20 72 65 74 72 69 65 76 69 6e 67 20 74 68 65 | des.functions.for.retrieving.the |
| d1a0 | 20 63 75 72 72 65 6e 74 20 64 61 74 65 20 61 6e 64 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 | .current.date.and</span>.<span.c |
| d1c0 | 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 21 20 74 69 6d 65 20 77 69 74 68 | lass="tok-comment">//!.time.with |
| d1e0 | 20 76 61 72 79 69 6e 67 20 64 65 67 72 65 65 73 20 6f 66 20 70 72 65 63 69 73 69 6f 6e 20 61 6e | .varying.degrees.of.precision.an |
| d200 | 64 20 61 63 63 75 72 61 63 79 2e 20 49 74 20 64 6f 65 73 20 6e 6f 74 3c 2f 73 70 61 6e 3e 0a 3c | d.accuracy..It.does.not</span>.< |
| d220 | 73 70 61 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 65 70 | span.class="tok-comment">//!.dep |
| d240 | 65 6e 64 20 6f 6e 20 6c 69 62 63 2c 20 62 75 74 20 77 69 6c 6c 20 75 73 65 20 66 75 6e 63 74 69 | end.on.libc,.but.will.use.functi |
| d260 | 6f 6e 73 20 66 72 6f 6d 20 69 74 20 69 66 20 61 76 61 69 6c 61 62 6c 65 2e 3c 2f 73 70 61 6e 3e | ons.from.it.if.available.</span> |
| d280 | 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 |
| d2a0 | 61 6e 3e 20 53 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 74 72 | an>.S.=.<span.class="tok-kw">str |
| d2c0 | 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | uct</span>.{.....<span.class="to |
| d2e0 | 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 21 20 54 6f 70 20 6c 65 76 65 6c 20 63 6f 6d 6d 65 6e 74 | k-comment">//!.Top.level.comment |
| d300 | 73 20 61 72 65 20 61 6c 6c 6f 77 65 64 20 69 6e 73 69 64 65 20 61 20 63 6f 6e 74 61 69 6e 65 72 | s.are.allowed.inside.a.container |
| d320 | 20 6f 74 68 65 72 20 74 68 61 6e 20 61 20 6d 6f 64 75 6c 65 2c 3c 2f 73 70 61 6e 3e 0a 20 20 20 | .other.than.a.module,</span>.... |
| d340 | 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 62 | .<span.class="tok-comment">//!.b |
| d360 | 75 74 20 69 74 20 69 73 20 6e 6f 74 20 76 65 72 79 20 75 73 65 66 75 6c 2e 20 20 43 75 72 72 65 | ut.it.is.not.very.useful...Curre |
| d380 | 6e 74 6c 79 2c 20 77 68 65 6e 20 70 72 6f 64 75 63 69 6e 67 20 74 68 65 20 70 61 63 6b 61 67 65 | ntly,.when.producing.the.package |
| d3a0 | 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 |
| d3c0 | 6d 65 6e 74 22 3e 2f 2f 21 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 2c 20 74 68 65 73 65 20 63 | ment">//!.documentation,.these.c |
| d3e0 | 6f 6d 6d 65 6e 74 73 20 61 72 65 20 69 67 6e 6f 72 65 64 2e 3c 2f 73 70 61 6e 3e 0a 7d 3b 3c 2f | omments.are.ignored.</span>.};</ |
| d400 | 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 0a 20 20 20 | code></pre></figure>............ |
| d420 | 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 56 61 6c 75 65 73 22 3e 3c 61 20 68 72 65 | ..........<h2.id="Values"><a.hre |
| d440 | 66 3d 22 23 74 6f 63 2d 56 61 6c 75 65 73 22 3e 56 61 6c 75 65 73 3c 2f 61 3e 20 3c 61 20 63 6c | f="#toc-Values">Values</a>.<a.cl |
| d460 | 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 56 61 6c 75 65 73 22 3e c2 a7 3c 2f 61 3e 3c | ass="hdr".href="#Values">..</a>< |
| d480 | 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 | /h2>........<figure><figcaption. |
| d4a0 | 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 |
| d4c0 | 65 22 3e 76 61 6c 75 65 73 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e | e">values.zig</cite></figcaption |
| d4e0 | 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 |
| d500 | 6d 65 6e 74 22 3e 2f 2f 20 54 6f 70 2d 6c 65 76 65 6c 20 64 65 63 6c 61 72 61 74 69 6f 6e 73 20 | ment">//.Top-level.declarations. |
| d520 | 61 72 65 20 6f 72 64 65 72 2d 69 6e 64 65 70 65 6e 64 65 6e 74 3a 3c 2f 73 70 61 6e 3e 0a 3c 73 | are.order-independent:</span>.<s |
| d540 | 70 61 6e 20 63 6c 61 73 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>. |
| d560 | 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 3c 73 70 61 6e 20 63 | print.=.std.debug.print;.<span.c |
| d580 | 6c 61 73 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.= |
| d5a0 | 20 3c 73 70 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 |
| d5c0 | 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"> |
| d5e0 | 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 |
| d600 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6f 73 20 3d 20 | lass="tok-kw">const</span>.os.=. |
| d620 | 73 74 64 2e 6f 73 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 | std.os;.<span.class="tok-kw">con |
| d640 | 73 74 3c 2f 73 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 | st</span>.assert.=.std.debug.ass |
| d660 | 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 70 75 62 3c 2f | ert;..<span.class="tok-kw">pub</ |
| d680 | 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 |
| d6a0 | 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</ |
| d6c0 | 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 |
| d6e0 | 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 |
| d700 | 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 69 6e 74 65 67 65 72 73 3c 2f 73 70 61 6e 3e 0a 20 20 | k-comment">//.integers</span>... |
| d720 | 20 20 3c 73 70 61 6e 20 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 |
| d740 | 61 6e 3e 20 6f 6e 65 5f 70 6c 75 73 5f 6f 6e 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | an>.one_plus_one:.<span.class="t |
| d760 | 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 |
| d780 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 20 2b 20 3c 73 70 61 6e 20 | s="tok-number">1</span>.+.<span. |
| d7a0 | 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>;.... |
| d7c0 | 20 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 | .print(<span.class="tok-str">&qu |
| d7e0 | 6f 74 3b 31 20 2b 20 31 20 3d 20 7b 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b | ot;1.+.1.=.{}\n"</span>,..{ |
| d800 | 6f 6e 65 5f 70 6c 75 73 5f 6f 6e 65 7d 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | one_plus_one});......<span.class |
| d820 | 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 66 6c 6f 61 74 73 3c 2f 73 70 61 6e 3e 0a | ="tok-comment">//.floats</span>. |
| d840 | 20 20 20 20 3c 73 70 61 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</ |
| d860 | 73 70 61 6e 3e 20 73 65 76 65 6e 5f 64 69 76 5f 74 68 72 65 65 3a 20 3c 73 70 61 6e 20 63 6c 61 | span>.seven_div_three:.<span.cla |
| d880 | 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 70 61 6e | ss="tok-type">f32</span>.=.<span |
| d8a0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 37 2e 30 3c 2f 73 70 61 6e 3e 20 2f | .class="tok-number">7.0</span>./ |
| d8c0 | 20 3c 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 30 3c 2f 73 | .<span.class="tok-number">3.0</s |
| d8e0 | 70 61 6e 3e 3b 0a 20 20 20 20 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | pan>;.....print(<span.class="tok |
| d900 | 2d 73 74 72 22 3e 26 71 75 6f 74 3b 37 2e 30 20 2f 20 33 2e 30 20 3d 20 7b 7d 5c 6e 26 71 75 6f | -str">"7.0./.3.0.=.{}\n&quo |
| d920 | 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 73 65 76 65 6e 5f 64 69 76 5f 74 68 72 65 65 7d 29 3b 0a | t;</span>,..{seven_div_three});. |
| d940 | 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">/ |
| d960 | 2f 20 62 6f 6f 6c 65 61 6e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 70 72 69 6e 74 28 3c 73 70 61 6e | /.boolean</span>.....print(<span |
| d980 | 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 7b 7d 5c 6e 7b | .class="tok-str">"{}\n{}\n{ |
| d9a0 | 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 | }\n"</span>,..{.........<sp |
| d9c0 | 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 20 | an.class="tok-null">true</span>. |
| d9e0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 64 3c 2f 73 70 61 6e 3e 20 | <span.class="tok-kw">and</span>. |
| da00 | 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 |
| da20 | 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 6e 75 | an>,.........<span.class="tok-nu |
| da40 | 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 3d 22 74 6f 6b | ll">true</span>.<span.class="tok |
| da60 | 2d 6b 77 22 3e 6f 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 | -kw">or</span>.<span.class="tok- |
| da80 | 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 21 3c 73 70 | null">false</span>,.........!<sp |
| daa0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 2c | an.class="tok-null">true</span>, |
| dac0 | 0a 20 20 20 20 7d 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 | .....});......<span.class="tok-c |
| dae0 | 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 6f 70 74 69 6f 6e 61 6c 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c | omment">//.optional</span>.....< |
| db00 | 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 |
| db20 | 70 74 69 6f 6e 61 6c 5f 76 61 6c 75 65 3a 20 3f 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ptional_value:.?[]<span.class="t |
| db40 | 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= |
| db60 | 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 | "tok-type">u8</span>.=.<span.cla |
| db80 | 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 61 | ss="tok-null">null</span>;.....a |
| dba0 | 73 73 65 72 74 28 6f 70 74 69 6f 6e 61 6c 5f 76 61 6c 75 65 20 3d 3d 20 3c 73 70 61 6e 20 63 6c | ssert(optional_value.==.<span.cl |
| dbc0 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 20 20 | ass="tok-null">null</span>);.... |
| dbe0 | 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 |
| dc00 | 75 6f 74 3b 5c 6e 6f 70 74 69 6f 6e 61 6c 20 31 5c 6e 74 79 70 65 3a 20 7b 7d 5c 6e 76 61 6c 75 | uot;\noptional.1\ntype:.{}\nvalu |
| dc20 | 65 3a 20 7b 3f 73 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 0a 20 20 20 20 20 | e:.{?s}\n"</span>,..{...... |
| dc40 | 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 54 79 | ...<span.class="tok-builtin">@Ty |
| dc60 | 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 6f 70 74 69 6f 6e 61 6c 5f 76 61 6c 75 65 29 2c 20 6f 70 74 | peOf</span>(optional_value),.opt |
| dc80 | 69 6f 6e 61 6c 5f 76 61 6c 75 65 2c 0a 20 20 20 20 7d 29 3b 0a 0a 20 20 20 20 6f 70 74 69 6f 6e | ional_value,.....});......option |
| dca0 | 61 6c 5f 76 61 6c 75 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 | al_value.=.<span.class="tok-str" |
| dcc0 | 3e 26 71 75 6f 74 3b 68 69 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 61 73 73 65 | >"hi"</span>;.....asse |
| dce0 | 72 74 28 6f 70 74 69 6f 6e 61 6c 5f 76 61 6c 75 65 20 21 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | rt(optional_value.!=.<span.class |
| dd00 | 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 0a 20 20 20 20 70 | ="tok-null">null</span>);......p |
| dd20 | 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">" |
| dd40 | 3b 5c 6e 6f 70 74 69 6f 6e 61 6c 20 32 5c 6e 74 79 70 65 3a 20 7b 7d 5c 6e 76 61 6c 75 65 3a 20 | ;\noptional.2\ntype:.{}\nvalue:. |
| dd60 | 7b 3f 73 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 0a 20 20 20 20 20 20 20 20 | {?s}\n"</span>,..{......... |
| dd80 | 3c 73 70 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 |
| dda0 | 66 3c 2f 73 70 61 6e 3e 28 6f 70 74 69 6f 6e 61 6c 5f 76 61 6c 75 65 29 2c 20 6f 70 74 69 6f 6e | f</span>(optional_value),.option |
| ddc0 | 61 6c 5f 76 61 6c 75 65 2c 0a 20 20 20 20 7d 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | al_value,.....});......<span.cla |
| dde0 | 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 65 72 72 6f 72 20 75 6e 69 6f 6e 3c | ss="tok-comment">//.error.union< |
| de00 | 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"> |
| de20 | 76 61 72 3c 2f 73 70 61 6e 3e 20 6e 75 6d 62 65 72 5f 6f 72 5f 65 72 72 6f 72 3a 20 3c 73 70 61 | var</span>.number_or_error:.<spa |
| de40 | 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 |
| de60 | 6e 3e 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 | n>!<span.class="tok-type">i32</s |
| de80 | 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f | pan>.=.<span.class="tok-kw">erro |
| dea0 | 72 3c 2f 73 70 61 6e 3e 2e 41 72 67 4e 6f 74 46 6f 75 6e 64 3b 0a 0a 20 20 20 20 70 72 69 6e 74 | r</span>.ArgNotFound;......print |
| dec0 | 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 5c 6e 65 | (<span.class="tok-str">"\ne |
| dee0 | 72 72 6f 72 20 75 6e 69 6f 6e 20 31 5c 6e 74 79 70 65 3a 20 7b 7d 5c 6e 76 61 6c 75 65 3a 20 7b | rror.union.1\ntype:.{}\nvalue:.{ |
| df00 | 21 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 0a 20 20 20 20 20 20 20 20 3c 73 | !}\n"</span>,..{.........<s |
| df20 | 70 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< |
| df40 | 2f 73 70 61 6e 3e 28 6e 75 6d 62 65 72 5f 6f 72 5f 65 72 72 6f 72 29 2c 0a 20 20 20 20 20 20 20 | /span>(number_or_error),........ |
| df60 | 20 6e 75 6d 62 65 72 5f 6f 72 5f 65 72 72 6f 72 2c 0a 20 20 20 20 7d 29 3b 0a 0a 20 20 20 20 6e | .number_or_error,.....});......n |
| df80 | 75 6d 62 65 72 5f 6f 72 5f 65 72 72 6f 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | umber_or_error.=.<span.class="to |
| dfa0 | 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 20 20 20 70 72 69 6e | k-number">1234</span>;......prin |
| dfc0 | 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 5c 6e | t(<span.class="tok-str">"\n |
| dfe0 | 65 72 72 6f 72 20 75 6e 69 6f 6e 20 32 5c 6e 74 79 70 65 3a 20 7b 7d 5c 6e 76 61 6c 75 65 3a 20 | error.union.2\ntype:.{}\nvalue:. |
| e000 | 7b 21 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 0a 20 20 20 20 20 20 20 20 3c | {!}\n"</span>,..{.........< |
| e020 | 73 70 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 |
| e040 | 3c 2f 73 70 61 6e 3e 28 6e 75 6d 62 65 72 5f 6f 72 5f 65 72 72 6f 72 29 2c 20 6e 75 6d 62 65 72 | </span>(number_or_error),.number |
| e060 | 5f 6f 72 5f 65 72 72 6f 72 2c 0a 20 20 20 20 7d 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 | _or_error,.....});.}</code></pre |
| e080 | 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 |
| e0a0 | 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 |
| e0c0 | 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 |
| e0e0 | 65 20 76 61 6c 75 65 73 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 24 20 3c 6b 62 64 3e 2e 2f 76 61 6c 75 | e.values.zig</kbd>.$.<kbd>./valu |
| e100 | 65 73 3c 2f 6b 62 64 3e 0a 31 20 2b 20 31 20 3d 20 32 0a 37 2e 30 20 2f 20 33 2e 30 20 3d 20 32 | es</kbd>.1.+.1.=.2.7.0./.3.0.=.2 |
| e120 | 2e 33 33 33 33 33 33 33 0a 66 61 6c 73 65 0a 74 72 75 65 0a 66 61 6c 73 65 0a 0a 6f 70 74 69 6f | .3333333.false.true.false..optio |
| e140 | 6e 61 6c 20 31 0a 74 79 70 65 3a 20 3f 5b 5d 63 6f 6e 73 74 20 75 38 0a 76 61 6c 75 65 3a 20 6e | nal.1.type:.?[]const.u8.value:.n |
| e160 | 75 6c 6c 0a 0a 6f 70 74 69 6f 6e 61 6c 20 32 0a 74 79 70 65 3a 20 3f 5b 5d 63 6f 6e 73 74 20 75 | ull..optional.2.type:.?[]const.u |
| e180 | 38 0a 76 61 6c 75 65 3a 20 68 69 0a 0a 65 72 72 6f 72 20 75 6e 69 6f 6e 20 31 0a 74 79 70 65 3a | 8.value:.hi..error.union.1.type: |
| e1a0 | 20 61 6e 79 65 72 72 6f 72 21 69 33 32 0a 76 61 6c 75 65 3a 20 65 72 72 6f 72 2e 41 72 67 4e 6f | .anyerror!i32.value:.error.ArgNo |
| e1c0 | 74 46 6f 75 6e 64 0a 0a 65 72 72 6f 72 20 75 6e 69 6f 6e 20 32 0a 74 79 70 65 3a 20 61 6e 79 65 | tFound..error.union.2.type:.anye |
| e1e0 | 72 72 6f 72 21 69 33 32 0a 76 61 6c 75 65 3a 20 31 32 33 34 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 | rror!i32.value:.1234.</samp></pr |
| e200 | 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 50 72 69 6d 69 | e></figure>........<h3.id="Primi |
| e220 | 74 69 76 65 2d 54 79 70 65 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 50 72 69 6d 69 74 | tive-Types"><a.href="#toc-Primit |
| e240 | 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 20 3c | ive-Types">Primitive.Types</a>.< |
| e260 | 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 50 72 69 6d 69 74 69 76 65 2d 54 | a.class="hdr".href="#Primitive-T |
| e280 | 79 70 65 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 64 69 76 20 63 6c | ypes">..</a></h3>........<div.cl |
| e2a0 | 61 73 73 3d 22 74 61 62 6c 65 2d 77 72 61 70 70 65 72 22 3e 0a 20 20 20 20 20 20 3c 74 61 62 6c | ass="table-wrapper">.......<tabl |
| e2c0 | 65 3e 0a 20 20 20 20 20 20 20 20 3c 63 61 70 74 69 6f 6e 3e 50 72 69 6d 69 74 69 76 65 20 54 79 | e>.........<caption>Primitive.Ty |
| e2e0 | 70 65 73 3c 2f 63 61 70 74 69 6f 6e 3e 0a 20 20 20 20 20 20 20 20 3c 74 68 65 61 64 3e 0a 20 20 | pes</caption>.........<thead>... |
| e300 | 20 20 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 68 20 73 | ..........<tr>.............<th.s |
| e320 | 63 6f 70 65 3d 22 63 6f 6c 22 3e 54 79 70 65 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 20 | cope="col">Type</th>............ |
| e340 | 20 3c 74 68 20 73 63 6f 70 65 3d 22 63 6f 6c 22 3e 43 20 45 71 75 69 76 61 6c 65 6e 74 3c 2f 74 | .<th.scope="col">C.Equivalent</t |
| e360 | 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 6f 6c 22 3e 44 | h>.............<th.scope="col">D |
| e380 | 65 73 63 72 69 70 74 69 6f 6e 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 | escription</th>.........</tr>... |
| e3a0 | 20 20 20 20 20 20 3c 2f 74 68 65 61 64 3e 0a 20 20 20 20 20 20 20 20 3c 74 62 6f 64 79 3e 0a 20 | ......</thead>.........<tbody>.. |
| e3c0 | 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 |
| e3e0 | 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 |
| e400 | 79 70 65 22 3e 69 38 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 68 3e 0a 20 20 20 20 20 | ype">i8</span></code></th>...... |
| e420 | 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 38 5f 74 3c | .....<td><code.class="c">int8_t< |
| e440 | 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 |
| e460 | 20 38 2d 62 69 74 20 69 6e 74 65 67 65 72 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 | .8-bit.integer</td>.........</tr |
| e480 | 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 |
| e4a0 | 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 |
| e4c0 | 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 74 68 3e 0a 20 20 | k-type">u8</span></code></th>... |
| e4e0 | 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 63 22 3e 75 69 6e 74 | ........<td><code.class="c">uint |
| e500 | 38 5f 74 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 75 6e | 8_t</code></td>...........<td>un |
| e520 | 73 69 67 6e 65 64 20 38 2d 62 69 74 20 69 6e 74 65 67 65 72 3c 2f 74 64 3e 0a 20 20 20 20 20 20 | signed.8-bit.integer</td>....... |
| e540 | 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>............ |
| e560 | 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 |
| e580 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 31 36 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c | ss="tok-type">i16</span></code>< |
| e5a0 | 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | /th>...........<td><code.class=" |
| e5c0 | 63 22 3e 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 | c">int16_t</code></td>.......... |
| e5e0 | 20 3c 74 64 3e 73 69 67 6e 65 64 20 31 36 2d 62 69 74 20 69 6e 74 65 67 65 72 3c 2f 74 64 3e 0a | .<td>signed.16-bit.integer</td>. |
| e600 | 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>...... |
| e620 | 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 |
| e640 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 31 36 3c 2f 73 70 61 6e 3e 3c 2f | an.class="tok-type">u16</span></ |
| e660 | 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 |
| e680 | 6c 61 73 73 3d 22 63 22 3e 75 69 6e 74 31 36 5f 74 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 | lass="c">uint16_t</code></td>... |
| e6a0 | 20 20 20 20 20 20 20 20 3c 74 64 3e 75 6e 73 69 67 6e 65 64 20 31 36 2d 62 69 74 20 69 6e 74 65 | ........<td>unsigned.16-bit.inte |
| e6c0 | 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 20 3c | ger</td>.........</tr>.........< |
| e6e0 | 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"> |
| e700 | 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 | <code><span.class="tok-type">i32 |
| e720 | 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 | </span></code></th>...........<t |
| e740 | 64 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 63 22 3e 69 6e 74 33 32 5f 74 3c 2f 63 6f 64 65 3e | d><code.class="c">int32_t</code> |
| e760 | 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 73 69 67 6e 65 64 20 33 32 2d 62 69 | </td>...........<td>signed.32-bi |
| e780 | 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>.... |
| e7a0 | 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= |
| e7c0 | 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 |
| e7e0 | 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 68 3e 0a 20 20 20 20 20 20 | e">u32</span></code></th>....... |
| e800 | 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 63 22 3e 75 69 6e 74 33 32 5f 74 | ....<td><code.class="c">uint32_t |
| e820 | 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 69 67 | </code></td>...........<td>unsig |
| e840 | 6e 65 64 20 33 32 2d 62 69 74 20 69 6e 74 65 67 65 72 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 | ned.32-bit.integer</td>......... |
| e860 | 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c | </tr>.........<tr>.............< |
| e880 | 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 |
| e8a0 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 36 34 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 | ="tok-type">i64</span></code></t |
| e8c0 | 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" |
| e8e0 | 3e 69 6e 74 36 34 5f 74 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c | >int64_t</code></td>...........< |
| e900 | 74 64 3e 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 | td>signed.64-bit.integer</td>... |
| e920 | 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>........ |
| e940 | 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 |
| e960 | 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 3c 2f 63 6f | .class="tok-type">u64</span></co |
| e980 | 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 |
| e9a0 | 73 73 3d 22 63 22 3e 75 69 6e 74 36 34 5f 74 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 | ss="c">uint64_t</code></td>..... |
| e9c0 | 20 20 20 20 20 20 3c 74 64 3e 75 6e 73 69 67 6e 65 64 20 36 34 2d 62 69 74 20 69 6e 74 65 67 65 | ......<td>unsigned.64-bit.intege |
| e9e0 | 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 |
| ea00 | 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 |
| ea20 | 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 31 32 38 3c | ode><span.class="tok-type">i128< |
| ea40 | 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 |
| ea60 | 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 63 22 3e 5f 5f 69 6e 74 31 32 38 3c 2f 63 6f 64 65 3e | ><code.class="c">__int128</code> |
| ea80 | 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 73 69 67 6e 65 64 20 31 32 38 2d 62 | </td>...........<td>signed.128-b |
| eaa0 | 69 74 20 69 6e 74 65 67 65 72 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 | it.integer</td>.........</tr>... |
| eac0 | 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 |
| eae0 | 3d 22 72 6f 77 22 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | ="row"><code><span.class="tok-ty |
| eb00 | 70 65 22 3e 75 31 32 38 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 68 3e 0a 20 20 20 20 | pe">u128</span></code></th>..... |
| eb20 | 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 63 22 3e 75 6e 73 69 67 6e | ......<td><code.class="c">unsign |
| eb40 | 65 64 20 5f 5f 69 6e 74 31 32 38 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 | ed.__int128</code></td>......... |
| eb60 | 20 20 3c 74 64 3e 75 6e 73 69 67 6e 65 64 20 31 32 38 2d 62 69 74 20 69 6e 74 65 67 65 72 3c 2f | ..<td>unsigned.128-bit.integer</ |
| eb80 | 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>.. |
| eba0 | 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 |
| ebc0 | 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 73 69 7a 65 3c 2f 73 | ><span.class="tok-type">isize</s |
| ebe0 | 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>< |
| ec00 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 63 22 3e 69 6e 74 70 74 72 5f 74 3c 2f 63 6f 64 65 3e 3c 2f | code.class="c">intptr_t</code></ |
| ec20 | 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 73 69 67 6e 65 64 20 70 6f 69 6e 74 65 72 | td>...........<td>signed.pointer |
| ec40 | 20 73 69 7a 65 64 20 69 6e 74 65 67 65 72 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 | .sized.integer</td>.........</tr |
| ec60 | 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 |
| ec80 | 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 |
| eca0 | 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 3c 2f 74 68 3e | k-type">usize</span></code></th> |
| ecc0 | 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 75 | ...........<td><code.class="c">u |
| ece0 | 69 6e 74 70 74 72 5f 74 3c 2f 63 6f 64 65 3e 2c 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 63 22 | intptr_t</code>,.<code.class="c" |
| ed00 | 3e 73 69 7a 65 5f 74 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 | >size_t</code></td>...........<t |
| ed20 | 64 3e 75 6e 73 69 67 6e 65 64 20 70 6f 69 6e 74 65 72 20 73 69 7a 65 64 20 69 6e 74 65 67 65 72 | d>unsigned.pointer.sized.integer |
| ed40 | 2e 20 41 6c 73 6f 20 73 65 65 20 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 67 69 74 68 | ..Also.see.<a.href="https://gith |
| ed60 | 75 62 2e 63 6f 6d 2f 7a 69 67 6c 61 6e 67 2f 7a 69 67 2f 69 73 73 75 65 73 2f 35 31 38 35 22 3e | ub.com/ziglang/zig/issues/5185"> |
| ed80 | 23 35 31 38 35 3c 2f 61 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 0a 20 20 | #5185</a></td>.........</tr>.... |
| eda0 | 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 |
| edc0 | 3d 22 72 6f 77 22 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | ="row"><code><span.class="tok-ty |
| ede0 | 70 65 22 3e 63 5f 63 68 61 72 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 68 3e 0a 20 20 | pe">c_char</span></code></th>... |
| ee00 | 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 63 68 61 72 | ........<td><code.class="c">char |
| ee20 | 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 66 6f 72 20 41 | </code></td>...........<td>for.A |
| ee40 | 42 49 20 63 6f 6d 70 61 74 69 62 69 6c 69 74 79 20 77 69 74 68 20 43 3c 2f 74 64 3e 0a 20 20 20 | BI.compatibility.with.C</td>.... |
| ee60 | 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>......... |
| ee80 | 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 20 | ....<th.scope="row"><code><span. |
| eea0 | 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>< |
| eec0 | 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. |
| eee0 | 63 6c 61 73 73 3d 22 63 22 3e 73 68 6f 72 74 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 | class="c">short</code></td>..... |
| ef00 | 20 20 20 20 20 20 3c 74 64 3e 66 6f 72 20 41 42 49 20 63 6f 6d 70 61 74 69 62 69 6c 69 74 79 20 | ......<td>for.ABI.compatibility. |
| ef20 | 77 69 74 68 20 43 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 | with.C</td>.........</tr>....... |
| ef40 | 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 |
| ef60 | 77 22 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | w"><code><span.class="tok-type"> |
| ef80 | 63 5f 75 73 68 6f 72 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 68 3e 0a 20 20 20 20 | c_ushort</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 75 6e 73 69 67 6e | ......<td><code.class="c">unsign |
| efc0 | 65 64 20 73 68 6f 72 74 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c | ed.short</code></td>...........< |
| efe0 | 74 64 3e 66 6f 72 20 41 42 49 20 63 6f 6d 70 61 74 69 62 69 6c 69 74 79 20 77 69 74 68 20 43 3c | td>for.ABI.compatibility.with.C< |
| f000 | 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>. |
| f020 | 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 |
| f040 | 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 69 6e 74 3c 2f | e><span.class="tok-type">c_int</ |
| f060 | 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> |
| f080 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 63 22 3e 69 6e 74 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a | <code.class="c">int</code></td>. |
| f0a0 | 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 |
| f0c0 | 69 74 79 20 77 69 74 68 20 43 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 | ity.with.C</td>.........</tr>... |
| f0e0 | 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 |
| f100 | 3d 22 72 6f 77 22 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | ="row"><code><span.class="tok-ty |
| f120 | 70 65 22 3e 63 5f 75 69 6e 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 68 3e 0a 20 20 | pe">c_uint</span></code></th>... |
| f140 | 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 63 22 3e 75 6e 73 69 | ........<td><code.class="c">unsi |
| f160 | 67 6e 65 64 20 69 6e 74 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c | gned.int</code></td>...........< |
| f180 | 74 64 3e 66 6f 72 20 41 42 49 20 63 6f 6d 70 61 74 69 62 69 6c 69 74 79 20 77 69 74 68 20 43 3c | td>for.ABI.compatibility.with.C< |
| f1a0 | 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>. |
| f1c0 | 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 |
| f1e0 | 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 63 5f 6c 6f 6e 67 3c | e><span.class="tok-type">c_long< |
| f200 | 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 |
| f220 | 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 63 22 3e 6c 6f 6e 67 3c 2f 63 6f 64 65 3e 3c 2f 74 64 | ><code.class="c">long</code></td |
| f240 | 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 69 62 | >...........<td>for.ABI.compatib |
| f260 | 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 3e 0a | ility.with.C</td>.........</tr>. |
| f280 | 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 |
| f2a0 | 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- |
| f2c0 | 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 3e 3c 2f 74 68 3e | type">c_ulong</span></code></th> |
| f2e0 | 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 75 | ...........<td><code.class="c">u |
| f300 | 6e 73 69 67 6e 65 64 20 6c 6f 6e 67 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 | nsigned.long</code></td>........ |
| f320 | 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 |
| f340 | 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>.........< |
| f360 | 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"> |
| f380 | 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 63 5f 6c | <code><span.class="tok-type">c_l |
| f3a0 | 6f 6e 67 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 | onglong</span></code></th>...... |
| f3c0 | 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 6c 6f 6e 67 20 6c 6f | .....<td><code.class="c">long.lo |
| f3e0 | 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 72 | ng</code></td>...........<td>for |
| f400 | 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 20 | .ABI.compatibility.with.C</td>.. |
| f420 | 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>....... |
| f440 | 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 |
| f460 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 63 5f 75 6c 6f 6e 67 6c 6f 6e 67 3c 2f | n.class="tok-type">c_ulonglong</ |
| f480 | 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> |
| f4a0 | 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 6f 6e 67 20 6c 6f | <code.class="c">unsigned.long.lo |
| f4c0 | 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 72 | ng</code></td>...........<td>for |
| f4e0 | 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 20 | .ABI.compatibility.with.C</td>.. |
| f500 | 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>....... |
| f520 | 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 |
| f540 | 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 64 6f 75 62 6c 65 3c | n.class="tok-type">c_longdouble< |
| f560 | 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 |
| f580 | 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 63 22 3e 6c 6f 6e 67 20 64 6f 75 62 6c 65 3c 2f 63 6f | ><code.class="c">long.double</co |
| f5a0 | 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 66 6f 72 20 41 42 49 20 63 | de></td>...........<td>for.ABI.c |
| f5c0 | 6f 6d 70 61 74 69 62 69 6c 69 74 79 20 77 69 74 68 20 43 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 | ompatibility.with.C</td>........ |
| f5e0 | 20 3c 2f 74 72 3e 0a 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 20 | .</tr>..........<tr>............ |
| f600 | 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 |
| f620 | 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 3c | ss="tok-type">f16</span></code>< |
| f640 | 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | /th>...........<td><code.class=" |
| f660 | 63 22 3e 5f 46 6c 6f 61 74 31 36 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 | c">_Float16</code></td>......... |
| f680 | 20 20 3c 74 64 3e 31 36 2d 62 69 74 20 66 6c 6f 61 74 69 6e 67 20 70 6f 69 6e 74 20 28 31 30 2d | ..<td>16-bit.floating.point.(10- |
| f6a0 | 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 62 69 6e 61 | bit.mantissa).IEEE-754-2008.bina |
| f6c0 | 72 79 31 36 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 | ry16</td>.........</tr>......... |
| f6e0 | 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" |
| f700 | 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 66 33 | ><code><span.class="tok-type">f3 |
| f720 | 32 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 3c | 2</span></code></th>...........< |
| f740 | 74 64 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 63 22 3e 66 6c 6f 61 74 3c 2f 63 6f 64 65 3e 3c | td><code.class="c">float</code>< |
| f760 | 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 33 32 2d 62 69 74 20 66 6c 6f 61 74 69 | /td>...........<td>32-bit.floati |
| f780 | 6e 67 20 70 6f 69 6e 74 20 28 32 33 2d 62 69 74 20 6d 61 6e 74 69 73 73 61 29 20 49 45 45 45 2d | ng.point.(23-bit.mantissa).IEEE- |
| f7a0 | 37 35 34 2d 32 30 30 38 20 62 69 6e 61 72 79 33 32 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c | 754-2008.binary32</td>.........< |
| f7c0 | 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 |
| f7e0 | 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= |
| f800 | 22 74 6f 6b 2d 74 79 70 65 22 3e 66 36 34 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 68 | "tok-type">f64</span></code></th |
| f820 | 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"> |
| f840 | 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 20 20 3c 74 64 | double</code></td>...........<td |
| f860 | 3e 36 34 2d 62 69 74 20 66 6c 6f 61 74 69 6e 67 20 70 6f 69 6e 74 20 28 35 32 2d 62 69 74 20 6d | >64-bit.floating.point.(52-bit.m |
| f880 | 61 6e 74 69 73 73 61 29 20 49 45 45 45 2d 37 35 34 2d 32 30 30 38 20 62 69 6e 61 72 79 36 34 3c | antissa).IEEE-754-2008.binary64< |
| f8a0 | 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>. |
| f8c0 | 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 |
| f8e0 | 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 38 30 3c 2f 73 70 | e><span.class="tok-type">f80</sp |
| f900 | 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 | an></code></th>...........<td><c |
| f920 | 6f 64 65 20 63 6c 61 73 73 3d 22 63 22 3e 6c 6f 6e 67 20 64 6f 75 62 6c 65 3c 2f 63 6f 64 65 3e | ode.class="c">long.double</code> |
| f940 | 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 38 30 2d 62 69 74 20 66 6c 6f 61 74 | </td>...........<td>80-bit.float |
| f960 | 69 6e 67 20 70 6f 69 6e 74 20 28 36 34 2d 62 69 74 20 6d 61 6e 74 69 73 73 61 29 20 49 45 45 45 | ing.point.(64-bit.mantissa).IEEE |
| f980 | 2d 37 35 34 2d 32 30 30 38 20 38 30 2d 62 69 74 20 65 78 74 65 6e 64 65 64 20 70 72 65 63 69 73 | -754-2008.80-bit.extended.precis |
| f9a0 | 69 6f 6e 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 | ion</td>.........</tr>.........< |
| f9c0 | 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"> |
| f9e0 | 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 31 32 | <code><span.class="tok-type">f12 |
| fa00 | 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 20 | 8</span></code></th>............ |
| fa20 | 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 31 32 38 3c 2f | .<td><code.class="c">_Float128</ |
| fa40 | 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 32 38 2d 62 69 74 | code></td>...........<td>128-bit |
| fa60 | 20 66 6c 6f 61 74 69 6e 67 20 70 6f 69 6e 74 20 28 31 31 32 2d 62 69 74 20 6d 61 6e 74 69 73 73 | .floating.point.(112-bit.mantiss |
| fa80 | 61 29 20 49 45 45 45 2d 37 35 34 2d 32 30 30 38 20 62 69 6e 61 72 79 31 32 38 3c 2f 74 64 3e 0a | a).IEEE-754-2008.binary128</td>. |
| faa0 | 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>...... |
| fac0 | 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 |
| fae0 | 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>< |
| fb00 | 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. |
| fb20 | 63 6c 61 73 73 3d 22 63 22 3e 62 6f 6f 6c 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 | class="c">bool</code></td>...... |
| fb40 | 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | .....<td><code><span.class="tok- |
| fb60 | 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 6f 72 20 3c 63 6f 64 | null">true</span></code>.or.<cod |
| fb80 | 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 2f | e><span.class="tok-null">false</ |
| fba0 | 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a | span></code></td>.........</tr>. |
| fbc0 | 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 |
| fbe0 | 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- |
| fc00 | 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 3c 2f 74 | type">anyopaque</span></code></t |
| fc20 | 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" |
| fc40 | 3e 76 6f 69 64 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e | >void</code></td>...........<td> |
| fc60 | 55 73 65 64 20 66 6f 72 20 74 79 70 65 2d 65 72 61 73 65 64 20 70 6f 69 6e 74 65 72 73 2e 3c 2f | Used.for.type-erased.pointers.</ |
| fc80 | 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>.. |
| fca0 | 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 |
| fcc0 | 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 |
| fce0 | 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 28 6e | an></code></th>...........<td>(n |
| fd00 | 6f 6e 65 29 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 41 6c 77 61 79 73 20 74 | one)</td>...........<td>Always.t |
| fd20 | 68 65 20 76 61 6c 75 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | he.value.<code><span.class="tok- |
| fd40 | 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 7b 7d 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a | type">void</span>{}</code></td>. |
| fd60 | 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>...... |
| fd80 | 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 |
| fda0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 6e 6f 72 65 74 75 72 6e 3c 2f 73 70 | an.class="tok-type">noreturn</sp |
| fdc0 | 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 28 6e | an></code></th>...........<td>(n |
| fde0 | 6f 6e 65 29 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 74 68 65 20 74 79 70 65 | one)</td>...........<td>the.type |
| fe00 | 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 22 3e 62 | .of.<code><span.class="tok-kw">b |
| fe20 | 72 65 61 6b 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 | reak</span></code>,.<code><span. |
| fe40 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 74 69 6e 75 65 3c 2f 73 70 61 6e 3e 3c 2f | class="tok-kw">continue</span></ |
| fe60 | 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 6b 77 | code>,.<code><span.class="tok-kw |
| fe80 | 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 3c 63 6f 64 65 3e 3c 73 | ">return</span></code>,.<code><s |
| fea0 | 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</ |
| fec0 | 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 |
| fee0 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 77 68 69 6c 65 3c 2f 73 70 61 6e 3e 20 28 3c 73 70 61 6e | ass="tok-kw">while</span>.(<span |
| ff00 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 29 20 7b | .class="tok-null">true</span>).{ |
| ff20 | 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 20 20 20 20 | }</code></td>.........</tr>..... |
| ff40 | 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=" |
| ff60 | 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 |
| ff80 | 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 68 3e 0a 20 20 20 20 20 20 | ">type</span></code></th>....... |
| ffa0 | 20 20 20 20 3c 74 64 3e 28 6e 6f 6e 65 29 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 | ....<td>(none)</td>...........<t |
| ffc0 | 64 3e 74 68 65 20 74 79 70 65 20 6f 66 20 74 79 70 65 73 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 | d>the.type.of.types</td>........ |
| ffe0 | 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | .</tr>.........<tr>............. |
| 10000 | 3c 74 68 20 73 63 6f 70 65 3d 22 72 6f 77 22 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 | <th.scope="row"><code><span.clas |
| 10020 | 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 3c 2f 63 6f | s="tok-type">anyerror</span></co |
| 10040 | 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 74 | de></th>...........<td>(none)</t |
| 10060 | 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 61 6e 20 65 72 72 6f 72 20 63 6f 64 65 3c 2f | d>...........<td>an.error.code</ |
| 10080 | 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>.. |
| 100a0 | 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 |
| 100c0 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 63 6f 6d 70 74 69 6d 65 | ><span.class="tok-type">comptime |
| 100e0 | 5f 69 6e 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 | _int</span></code></th>......... |
| 10100 | 20 20 3c 74 64 3e 28 6e 6f 6e 65 29 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e | ..<td>(none)</td>...........<td> |
| 10120 | 4f 6e 6c 79 20 61 6c 6c 6f 77 65 64 20 66 6f 72 20 3c 61 20 68 72 65 66 3d 22 23 63 6f 6d 70 74 | Only.allowed.for.<a.href="#compt |
| 10140 | 69 6d 65 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 61 3e 2d 6b 6e 6f 77 6e 20 76 61 6c 75 65 73 2e 20 | ime">comptime</a>-known.values.. |
| 10160 | 54 68 65 20 74 79 70 65 20 6f 66 20 69 6e 74 65 67 65 72 20 6c 69 74 65 72 61 6c 73 2e 3c 2f 74 | The.type.of.integer.literals.</t |
| 10180 | 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>... |
| 101a0 | 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> |
| 101c0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 63 6f 6d 70 74 69 6d 65 5f | <span.class="tok-type">comptime_ |
| 101e0 | 66 6c 6f 61 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 | float</span></code></th>........ |
| 10200 | 20 20 20 3c 74 64 3e 28 6e 6f 6e 65 29 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 | ...<td>(none)</td>...........<td |
| 10220 | 3e 4f 6e 6c 79 20 61 6c 6c 6f 77 65 64 20 66 6f 72 20 3c 61 20 68 72 65 66 3d 22 23 63 6f 6d 70 | >Only.allowed.for.<a.href="#comp |
| 10240 | 74 69 6d 65 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 61 3e 2d 6b 6e 6f 77 6e 20 76 61 6c 75 65 73 2e | time">comptime</a>-known.values. |
| 10260 | 20 54 68 65 20 74 79 70 65 20 6f 66 20 66 6c 6f 61 74 20 6c 69 74 65 72 61 6c 73 2e 3c 2f 74 64 | .The.type.of.float.literals.</td |
| 10280 | 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 79 3e | >.........</tr>.........</tbody> |
| 102a0 | 0a 20 20 20 20 20 20 3c 2f 74 61 62 6c 65 3e 0a 20 20 20 20 20 20 3c 2f 64 69 76 3e 0a 20 20 20 | .......</table>.......</div>.... |
| 102c0 | 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 6e 20 61 64 64 69 74 69 6f 6e 20 74 6f 20 74 68 65 20 | ...<p>.......In.addition.to.the. |
| 102e0 | 69 6e 74 65 67 65 72 20 74 79 70 65 73 20 61 62 6f 76 65 2c 20 61 72 62 69 74 72 61 72 79 20 62 | integer.types.above,.arbitrary.b |
| 10300 | 69 74 2d 77 69 64 74 68 20 69 6e 74 65 67 65 72 73 20 63 61 6e 20 62 65 20 72 65 66 65 72 65 6e | it-width.integers.can.be.referen |
| 10320 | 63 65 64 20 62 79 20 75 73 69 6e 67 0a 20 20 20 20 20 20 61 6e 20 69 64 65 6e 74 69 66 69 65 72 | ced.by.using.......an.identifier |
| 10340 | 20 6f 66 20 3c 63 6f 64 65 3e 69 3c 2f 63 6f 64 65 3e 20 6f 72 20 3c 63 6f 64 65 3e 75 3c 2f 63 | .of.<code>i</code>.or.<code>u</c |
| 10360 | 6f 64 65 3e 20 66 6f 6c 6c 6f 77 65 64 20 62 79 20 64 69 67 69 74 73 2e 20 46 6f 72 20 65 78 61 | ode>.followed.by.digits..For.exa |
| 10380 | 6d 70 6c 65 2c 20 74 68 65 20 69 64 65 6e 74 69 66 69 65 72 0a 20 20 20 20 20 20 3c 63 6f 64 65 | mple,.the.identifier.......<code |
| 103a0 | 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 6e | ><span.class="tok-type">i7</span |
| 103c0 | 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 69 | ></code>.refers.to.a.signed.7-bi |
| 103e0 | 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 62 | t.integer..The.maximum.allowed.b |
| 10400 | 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 70 | it-width.of.an.......integer.typ |
| 10420 | 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 62 | e.is.<code><span.class="tok-numb |
| 10440 | 65 72 22 3e 36 35 35 33 35 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c | er">65535</span></code>........< |
| 10460 | 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>.< |
| 10480 | 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< |
| 104a0 | 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 73 22 3e 46 | /a></li>.<li><a.href="#Floats">F |
| 104c0 | 6c 6f 61 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 76 6f 69 | loats</a></li>.<li><a.href="#voi |
| 104e0 | 64 22 3e 76 6f 69 64 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 45 | d">void</a></li>.<li><a.href="#E |
| 10500 | 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 20 68 72 | rrors">Errors</a></li>.<li><a.hr |
| 10520 | 65 66 3d 22 23 54 79 70 65 22 3e 40 54 79 70 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a | ef="#Type">@Type</a></li>.</ul>. |
| 10540 | 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 50 72 69 6d 69 74 69 76 65 2d | ..............<h3.id="Primitive- |
| 10560 | 56 61 6c 75 65 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 50 72 69 6d 69 74 69 76 65 2d | Values"><a.href="#toc-Primitive- |
| 10580 | 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 20 3c 61 20 | Values">Primitive.Values</a>.<a. |
| 105a0 | 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 50 72 69 6d 69 74 69 76 65 2d 56 61 6c | class="hdr".href="#Primitive-Val |
| 105c0 | 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 64 69 76 20 63 6c 61 | ues">..</a></h3>........<div.cla |
| 105e0 | 73 73 3d 22 74 61 62 6c 65 2d 77 72 61 70 70 65 72 22 3e 0a 20 20 20 20 20 20 3c 74 61 62 6c 65 | ss="table-wrapper">.......<table |
| 10600 | 3e 0a 20 20 20 20 20 20 20 20 3c 63 61 70 74 69 6f 6e 3e 50 72 69 6d 69 74 69 76 65 20 56 61 6c | >.........<caption>Primitive.Val |
| 10620 | 75 65 73 3c 2f 63 61 70 74 69 6f 6e 3e 0a 20 20 20 20 20 20 20 20 3c 74 68 65 61 64 3e 0a 20 20 | ues</caption>.........<thead>... |
| 10640 | 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=" |
| 10660 | 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 68 20 73 63 6f | col">Name</th>...........<th.sco |
| 10680 | 70 65 3d 22 63 6f 6c 22 3e 44 65 73 63 72 69 70 74 69 6f 6e 3c 2f 74 68 3e 0a 20 20 20 20 20 20 | pe="col">Description</th>....... |
| 106a0 | 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 20 20 | ..</tr>.........</thead>........ |
| 106c0 | 20 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 | .<tbody>.........<tr>........... |
| 106e0 | 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 |
| 10700 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 | ass="tok-null">true</span></code |
| 10720 | 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 6e 75 6c | >.and.<code><span.class="tok-nul |
| 10740 | 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 68 3e 0a 20 20 20 20 | l">false</span></code></th>..... |
| 10760 | 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ........<td><code><span.class="t |
| 10780 | 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 76 61 6c 75 | ok-type">bool</span></code>.valu |
| 107a0 | 65 73 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 | es</td>.........</tr>.........<t |
| 107c0 | 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">< |
| 107e0 | 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c | code><span.class="tok-null">null |
| 10800 | 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 20 20 | </span></code></th>............. |
| 10820 | 3c 74 64 3e 75 73 65 64 20 74 6f 20 73 65 74 20 61 6e 20 6f 70 74 69 6f 6e 61 6c 20 74 79 70 65 | <td>used.to.set.an.optional.type |
| 10840 | 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 6e 75 6c 6c 22 | .to.<code><span.class="tok-null" |
| 10860 | 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 | >null</span></code></td>........ |
| 10880 | 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | .</tr>.........<tr>............. |
| 108a0 | 3c 74 68 20 73 63 6f 70 65 3d 22 72 6f 77 22 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 | <th.scope="row"><code><span.clas |
| 108c0 | 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 75 6e 64 65 66 69 6e 65 64 3c 2f 73 70 61 6e 3e 3c 2f 63 | s="tok-null">undefined</span></c |
| 108e0 | 6f 64 65 3e 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 75 73 65 64 20 74 6f 20 | ode></th>...........<td>used.to. |
| 10900 | 6c 65 61 76 65 20 61 20 76 61 6c 75 65 20 75 6e 73 70 65 63 69 66 69 65 64 3c 2f 74 64 3e 0a 20 | leave.a.value.unspecified</td>.. |
| 10920 | 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 79 3e 0a 20 20 | .......</tr>.........</tbody>... |
| 10940 | 20 20 20 20 3c 2f 74 61 62 6c 65 3e 0a 20 20 20 20 20 20 3c 2f 64 69 76 3e 0a 20 20 20 20 20 20 | ....</table>.......</div>....... |
| 10960 | 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 |
| 10980 | 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 6c 69 3e | ="#Optionals">Optionals</a></li> |
| 109a0 | 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 75 6e 64 65 66 69 6e 65 64 22 3e 75 6e 64 65 66 69 | .<li><a.href="#undefined">undefi |
| 109c0 | 6e 65 64 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 | ned</a></li>.</ul>.............. |
| 109e0 | 20 3c 68 33 20 69 64 3d 22 53 74 72 69 6e 67 2d 4c 69 74 65 72 61 6c 73 2d 61 6e 64 2d 55 6e 69 | .<h3.id="String-Literals-and-Uni |
| 10a00 | 63 6f 64 65 2d 43 6f 64 65 2d 50 6f 69 6e 74 2d 4c 69 74 65 72 61 6c 73 22 3e 3c 61 20 68 72 65 | code-Code-Point-Literals"><a.hre |
| 10a20 | 66 3d 22 23 74 6f 63 2d 53 74 72 69 6e 67 2d 4c 69 74 65 72 61 6c 73 2d 61 6e 64 2d 55 6e 69 63 | f="#toc-String-Literals-and-Unic |
| 10a40 | 6f 64 65 2d 43 6f 64 65 2d 50 6f 69 6e 74 2d 4c 69 74 65 72 61 6c 73 22 3e 53 74 72 69 6e 67 20 | ode-Code-Point-Literals">String. |
| 10a60 | 4c 69 74 65 72 61 6c 73 20 61 6e 64 20 55 6e 69 63 6f 64 65 20 43 6f 64 65 20 50 6f 69 6e 74 20 | Literals.and.Unicode.Code.Point. |
| 10a80 | 4c 69 74 65 72 61 6c 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 | Literals</a>.<a.class="hdr".href |
| 10aa0 | 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 6f 64 65 2d 43 | ="#String-Literals-and-Unicode-C |
| 10ac0 | 6f 64 65 2d 50 6f 69 6e 74 2d 4c 69 74 65 72 61 6c 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a | ode-Point-Literals">..</a></h3>. |
| 10ae0 | 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 53 74 72 69 6e 67 20 6c 69 74 65 72 61 6c 73 | .......<p>.......String.literals |
| 10b00 | 20 61 72 65 20 63 6f 6e 73 74 61 6e 74 20 73 69 6e 67 6c 65 2d 69 74 65 6d 20 3c 61 20 68 72 65 | .are.constant.single-item.<a.hre |
| 10b20 | 66 3d 22 23 50 6f 69 6e 74 65 72 73 22 3e 50 6f 69 6e 74 65 72 73 3c 2f 61 3e 20 74 6f 20 6e 75 | f="#Pointers">Pointers</a>.to.nu |
| 10b40 | 6c 6c 2d 74 65 72 6d 69 6e 61 74 65 64 20 62 79 74 65 20 61 72 72 61 79 73 2e 0a 20 20 20 20 20 | ll-terminated.byte.arrays....... |
| 10b60 | 20 54 68 65 20 74 79 70 65 20 6f 66 20 73 74 72 69 6e 67 20 6c 69 74 65 72 61 6c 73 20 65 6e 63 | .The.type.of.string.literals.enc |
| 10b80 | 6f 64 65 73 20 62 6f 74 68 20 74 68 65 20 6c 65 6e 67 74 68 2c 20 61 6e 64 20 74 68 65 20 66 61 | odes.both.the.length,.and.the.fa |
| 10ba0 | 63 74 20 74 68 61 74 20 74 68 65 79 20 61 72 65 20 6e 75 6c 6c 2d 74 65 72 6d 69 6e 61 74 65 64 | ct.that.they.are.null-terminated |
| 10bc0 | 2c 0a 20 20 20 20 20 20 61 6e 64 20 74 68 75 73 20 74 68 65 79 20 63 61 6e 20 62 65 20 3c 61 20 | ,.......and.thus.they.can.be.<a. |
| 10be0 | 68 72 65 66 3d 22 23 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 22 3e 63 6f 65 72 63 65 64 3c 2f 61 | href="#Type-Coercion">coerced</a |
| 10c00 | 3e 20 74 6f 20 62 6f 74 68 20 3c 61 20 68 72 65 66 3d 22 23 53 6c 69 63 65 73 22 3e 53 6c 69 63 | >.to.both.<a.href="#Slices">Slic |
| 10c20 | 65 73 3c 2f 61 3e 20 61 6e 64 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 53 65 6e 74 69 | es</a>.and.......<a.href="#Senti |
| 10c40 | 6e 65 6c 2d 54 65 72 6d 69 6e 61 74 65 64 2d 50 6f 69 6e 74 65 72 73 22 3e 4e 75 6c 6c 2d 54 65 | nel-Terminated-Pointers">Null-Te |
| 10c60 | 72 6d 69 6e 61 74 65 64 20 50 6f 69 6e 74 65 72 73 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 44 65 72 | rminated.Pointers</a>........Der |
| 10c80 | 65 66 65 72 65 6e 63 69 6e 67 20 73 74 72 69 6e 67 20 6c 69 74 65 72 61 6c 73 20 63 6f 6e 76 65 | eferencing.string.literals.conve |
| 10ca0 | 72 74 73 20 74 68 65 6d 20 74 6f 20 3c 61 20 68 72 65 66 3d 22 23 41 72 72 61 79 73 22 3e 41 72 | rts.them.to.<a.href="#Arrays">Ar |
| 10cc0 | 72 61 79 73 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 | rays</a>........</p>.......<p>.. |
| 10ce0 | 20 20 20 20 20 42 65 63 61 75 73 65 20 5a 69 67 20 73 6f 75 72 63 65 20 63 6f 64 65 20 69 73 20 | .....Because.Zig.source.code.is. |
| 10d00 | 3c 61 20 68 72 65 66 3d 22 23 53 6f 75 72 63 65 2d 45 6e 63 6f 64 69 6e 67 22 3e 55 54 46 2d 38 | <a.href="#Source-Encoding">UTF-8 |
| 10d20 | 20 65 6e 63 6f 64 65 64 3c 2f 61 3e 2c 20 61 6e 79 0a 20 20 20 20 20 20 6e 6f 6e 2d 41 53 43 49 | .encoded</a>,.any.......non-ASCI |
| 10d40 | 49 20 62 79 74 65 73 20 61 70 70 65 61 72 69 6e 67 20 77 69 74 68 69 6e 20 61 20 73 74 72 69 6e | I.bytes.appearing.within.a.strin |
| 10d60 | 67 20 6c 69 74 65 72 61 6c 20 69 6e 20 73 6f 75 72 63 65 20 63 6f 64 65 20 63 61 72 72 79 0a 20 | g.literal.in.source.code.carry.. |
| 10d80 | 20 20 20 20 20 74 68 65 69 72 20 55 54 46 2d 38 20 6d 65 61 6e 69 6e 67 20 69 6e 74 6f 20 74 68 | .....their.UTF-8.meaning.into.th |
| 10da0 | 65 20 63 6f 6e 74 65 6e 74 20 6f 66 20 74 68 65 20 73 74 72 69 6e 67 20 69 6e 20 74 68 65 20 5a | e.content.of.the.string.in.the.Z |
| 10dc0 | 69 67 20 70 72 6f 67 72 61 6d 3b 0a 20 20 20 20 20 20 74 68 65 20 62 79 74 65 73 20 61 72 65 20 | ig.program;.......the.bytes.are. |
| 10de0 | 6e 6f 74 20 6d 6f 64 69 66 69 65 64 20 62 79 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 2e 20 49 74 | not.modified.by.the.compiler..It |
| 10e00 | 20 69 73 20 70 6f 73 73 69 62 6c 65 20 74 6f 20 65 6d 62 65 64 0a 20 20 20 20 20 20 6e 6f 6e 2d | .is.possible.to.embed.......non- |
| 10e20 | 55 54 46 2d 38 20 62 79 74 65 73 20 69 6e 74 6f 20 61 20 73 74 72 69 6e 67 20 6c 69 74 65 72 61 | UTF-8.bytes.into.a.string.litera |
| 10e40 | 6c 20 75 73 69 6e 67 20 3c 63 6f 64 65 3e 5c 78 4e 4e 3c 2f 63 6f 64 65 3e 20 6e 6f 74 61 74 69 | l.using.<code>\xNN</code>.notati |
| 10e60 | 6f 6e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 49 6e 64 65 78 69 6e 67 | on........</p>.......<p>Indexing |
| 10e80 | 20 69 6e 74 6f 20 61 20 73 74 72 69 6e 67 20 63 6f 6e 74 61 69 6e 69 6e 67 20 6e 6f 6e 2d 41 53 | .into.a.string.containing.non-AS |
| 10ea0 | 43 49 49 20 62 79 74 65 73 20 72 65 74 75 72 6e 73 20 69 6e 64 69 76 69 64 75 61 6c 0a 20 20 20 | CII.bytes.returns.individual.... |
| 10ec0 | 20 20 20 62 79 74 65 73 2c 20 77 68 65 74 68 65 72 20 76 61 6c 69 64 20 55 54 46 2d 38 20 6f 72 | ...bytes,.whether.valid.UTF-8.or |
| 10ee0 | 20 6e 6f 74 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 55 6e 69 63 6f 64 | .not.</p>.......<p>.......Unicod |
| 10f00 | 65 20 63 6f 64 65 20 70 6f 69 6e 74 20 6c 69 74 65 72 61 6c 73 20 68 61 76 65 20 74 79 70 65 20 | e.code.point.literals.have.type. |
| 10f20 | 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 |
| 10f40 | 70 74 69 6d 65 5f 69 6e 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 74 68 65 20 73 61 6d | ptime_int</span></code>,.the.sam |
| 10f60 | 65 20 61 73 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 49 6e 74 65 67 65 72 2d 4c 69 74 | e.as.......<a.href="#Integer-Lit |
| 10f80 | 65 72 61 6c 73 22 3e 49 6e 74 65 67 65 72 20 4c 69 74 65 72 61 6c 73 3c 2f 61 3e 2e 20 41 6c 6c | erals">Integer.Literals</a>..All |
| 10fa0 | 20 3c 61 20 68 72 65 66 3d 22 23 45 73 63 61 70 65 2d 53 65 71 75 65 6e 63 65 73 22 3e 45 73 63 | .<a.href="#Escape-Sequences">Esc |
| 10fc0 | 61 70 65 20 53 65 71 75 65 6e 63 65 73 3c 2f 61 3e 20 61 72 65 20 76 61 6c 69 64 20 69 6e 20 62 | ape.Sequences</a>.are.valid.in.b |
| 10fe0 | 6f 74 68 20 73 74 72 69 6e 67 20 6c 69 74 65 72 61 6c 73 0a 20 20 20 20 20 20 61 6e 64 20 55 6e | oth.string.literals.......and.Un |
| 11000 | 69 63 6f 64 65 20 63 6f 64 65 20 70 6f 69 6e 74 20 6c 69 74 65 72 61 6c 73 2e 0a 20 20 20 20 20 | icode.code.point.literals....... |
| 11020 | 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. |
| 11040 | 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 |
| 11060 | 65 22 3e 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 3e 3c 2f 66 | e">string_literals.zig</cite></f |
| 11080 | 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 |
| 110a0 | 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.=.< |
| 110c0 | 73 70 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 |
| 110e0 | 3c 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 |
| 11100 | 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 |
| 11120 | 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 |
| 11140 | 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 |
| 11160 | 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= |
| 11180 | 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> |
| 111a0 | 29 2e 6d 65 6d 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 | ).mem;.<span.class="tok-comment" |
| 111c0 | 3e 2f 2f 20 77 69 6c 6c 20 62 65 20 75 73 65 64 20 74 6f 20 63 6f 6d 70 61 72 65 20 62 79 74 65 | >//.will.be.used.to.compare.byte |
| 111e0 | 73 3c 2f 73 70 61 6e 3e 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 | s</span>..<span.class="tok-kw">p |
| 11200 | 75 62 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 | ub</span>.<span.class="tok-kw">f |
| 11220 | 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 6d 61 | n</span>.<span.class="tok-fn">ma |
| 11240 | 69 6e 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | in</span>().<span.class="tok-typ |
| 11260 | 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 |
| 11280 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 62 79 74 65 73 20 3d 20 3c | ="tok-kw">const</span>.bytes.=.< |
| 112a0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 68 65 6c 6c 6f | span.class="tok-str">"hello |
| 112c0 | 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 | "</span>;.....print(<span.c |
| 112e0 | 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"< |
| 11300 | 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 74 | /span>,..{<span.class="tok-built |
| 11320 | 69 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 62 79 74 65 73 29 7d 29 3b 20 3c 73 70 | in">@TypeOf</span>(bytes)});.<sp |
| 11340 | 61 6e 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 63 6f 6e 73 74 | an.class="tok-comment">//.*const |
| 11360 | 20 5b 35 3a 30 5d 75 38 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 70 72 69 6e 74 28 3c 73 70 61 6e 20 | .[5:0]u8</span>.....print(<span. |
| 11380 | 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 74 | class="tok-str">"{d}\n" |
| 113a0 | 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 62 79 74 65 73 2e 6c 65 6e 7d 29 3b 20 3c 73 70 61 6e 20 63 | ;</span>,..{bytes.len});.<span.c |
| 113c0 | 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 35 3c 2f 73 70 61 6e 3e 0a 20 | lass="tok-comment">//.5</span>.. |
| 113e0 | 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">& |
| 11400 | 71 75 6f 74 3b 7b 63 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 62 79 74 65 73 | quot;{c}\n"</span>,..{bytes |
| 11420 | 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 | [<span.class="tok-number">1</spa |
| 11440 | 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 74 22 | n>]});.<span.class="tok-comment" |
| 11460 | 3e 2f 2f 20 27 65 27 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 | >//.'e'</span>.....print(<span.c |
| 11480 | 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 74 3b | lass="tok-str">"{d}\n" |
| 114a0 | 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 74 6f | </span>,..{bytes[<span.class="to |
| 114c0 | 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 5d 7d 29 3b 20 3c 73 70 61 6e 20 63 6c 61 | k-number">5</span>]});.<span.cla |
| 114e0 | 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 30 3c 2f 73 70 61 6e 3e 0a 20 20 20 | ss="tok-comment">//.0</span>.... |
| 11500 | 20 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 | .print(<span.class="tok-str">&qu |
| 11520 | 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 6e 20 63 6c | ot;{}\n"</span>,..{<span.cl |
| 11540 | 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 65 27 3c 2f 73 70 61 6e 3e 20 3d 3d 20 3c 73 70 61 | ass="tok-str">'e'</span>.==.<spa |
| 11560 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 5c 78 36 35 27 3c 2f 73 70 61 6e 3e 7d | n.class="tok-str">'\x65'</span>} |
| 11580 | 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">//. |
| 115a0 | 74 72 75 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 6c 61 73 | true</span>.....print(<span.clas |
| 115c0 | 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 7b 64 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 | s="tok-str">"{d}\n"</s |
| 115e0 | 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 27 5c | pan>,..{<span.class="tok-str">'\ |
| 11600 | 75 7b 31 66 34 61 39 7d 27 3c 2f 73 70 61 6e 3e 7d 29 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | u{1f4a9}'</span>});.<span.class= |
| 11620 | 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 31 32 38 31 36 39 3c 2f 73 70 61 6e 3e 0a 20 | "tok-comment">//.128169</span>.. |
| 11640 | 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">& |
| 11660 | 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 3c 73 70 61 6e | quot;{d}\n"</span>,..{<span |
| 11680 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 f0 9f 92 af 27 3c 2f 73 70 61 6e 3e 7d 29 | .class="tok-str">'....'</span>}) |
| 116a0 | 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 31 | ;.<span.class="tok-comment">//.1 |
| 116c0 | 32 38 31 37 35 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 6c 61 | 28175</span>.....print(<span.cla |
| 116e0 | 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 7b 75 7d 5c 6e 26 71 75 6f 74 3b 3c 2f | ss="tok-str">"{u}\n"</ |
| 11700 | 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 27 | span>,..{<span.class="tok-str">' |
| 11720 | e2 9a a1 27 3c 2f 73 70 61 6e 3e 7d 29 3b 0a 20 20 20 20 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 | ...'</span>});.....print(<span.c |
| 11740 | 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"< |
| 11760 | 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 61 73 73 3d 22 74 | /span>,..{mem.eql(<span.class="t |
| 11780 | 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 3d | ok-type">u8</span>,.<span.class= |
| 117a0 | 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 68 65 6c 6c 6f 26 71 75 6f 74 3b 3c 2f 73 70 61 | "tok-str">"hello"</spa |
| 117c0 | 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b | n>,.<span.class="tok-str">" |
| 117e0 | 68 5c 78 36 35 6c 6c 6f 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 7d 29 3b 20 3c 73 70 61 6e 20 | h\x65llo"</span>)});.<span. |
| 11800 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 74 72 75 65 3c 2f 73 70 61 | class="tok-comment">//.true</spa |
| 11820 | 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 2d 73 74 | n>.....print(<span.class="tok-st |
| 11840 | 72 22 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 | r">"{}\n"</span>,..{me |
| 11860 | 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< |
| 11880 | 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 71 | /span>,.<span.class="tok-str">&q |
| 118a0 | 75 6f 74 3b f0 9f 92 af 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 | uot;...."</span>,.<span.cla |
| 118c0 | 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 5c 78 66 30 5c 78 39 66 5c 78 39 32 5c | ss="tok-str">"\xf0\x9f\x92\ |
| 118e0 | 78 61 66 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 7d 29 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 | xaf"</span>)});.<span.class |
| 11900 | 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 61 6c 73 6f 20 74 72 75 65 3c 2f 73 70 61 | ="tok-comment">//.also.true</spa |
| 11920 | 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 |
| 11940 | 74 3c 2f 73 70 61 6e 3e 20 69 6e 76 61 6c 69 64 5f 75 74 66 38 20 3d 20 3c 73 70 61 6e 20 63 6c | t</span>.invalid_utf8.=.<span.cl |
| 11960 | 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 5c 78 66 66 5c 78 66 65 26 71 75 6f | ass="tok-str">"\xff\xfe&quo |
| 11980 | 74 3b 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 | t;</span>;.<span.class="tok-comm |
| 119a0 | 65 6e 74 22 3e 2f 2f 20 6e 6f 6e 2d 55 54 46 2d 38 20 73 74 72 69 6e 67 73 20 61 72 65 20 70 6f | ent">//.non-UTF-8.strings.are.po |
| 119c0 | 73 73 69 62 6c 65 20 77 69 74 68 20 5c 78 4e 4e 20 6e 6f 74 61 74 69 6f 6e 2e 3c 2f 73 70 61 6e | ssible.with.\xNN.notation.</span |
| 119e0 | 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 |
| 11a00 | 22 3e 26 71 75 6f 74 3b 30 78 7b 78 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b | ">"0x{x}\n"</span>,..{ |
| 11a20 | 69 6e 76 61 6c 69 64 5f 75 74 66 38 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | invalid_utf8[<span.class="tok-nu |
| 11a40 | 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 6c 61 73 73 3d 22 | mber">1</span>]});.<span.class=" |
| 11a60 | 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 69 6e 64 65 78 69 6e 67 20 74 68 65 6d 20 72 65 | tok-comment">//.indexing.them.re |
| 11a80 | 74 75 72 6e 73 20 69 6e 64 69 76 69 64 75 61 6c 20 62 79 74 65 73 2e 2e 2e 3c 2f 73 70 61 6e 3e | turns.individual.bytes...</span> |
| 11aa0 | 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" |
| 11ac0 | 3e 26 71 75 6f 74 3b 30 78 7b 78 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 3c | >"0x{x}\n"</span>,..{< |
| 11ae0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b f0 9f 92 af 26 | span.class="tok-str">"....& |
| 11b00 | 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | quot;</span>[<span.class="tok-nu |
| 11b20 | 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 6c 61 73 73 3d 22 | mber">1</span>]});.<span.class=" |
| 11b40 | 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 2e 2e 2e 61 73 20 64 6f 65 73 20 69 6e 64 65 78 | tok-comment">//....as.does.index |
| 11b60 | 69 6e 67 20 70 61 72 74 2d 77 61 79 20 74 68 72 6f 75 67 68 20 6e 6f 6e 2d 41 53 43 49 49 20 63 | ing.part-way.through.non-ASCII.c |
| 11b80 | 68 61 72 61 63 74 65 72 73 3c 2f 73 70 61 6e 3e 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c | haracters</span>.}</code></pre>< |
| 11ba0 | 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 |
| 11bc0 | 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> |
| 11be0 | 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. |
| 11c00 | 73 74 72 69 6e 67 5f 6c 69 74 65 72 61 6c 73 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 24 20 3c 6b 62 64 | string_literals.zig</kbd>.$.<kbd |
| 11c20 | 3e 2e 2f 73 74 72 69 6e 67 5f 6c 69 74 65 72 61 6c 73 3c 2f 6b 62 64 3e 0a 2a 63 6f 6e 73 74 20 | >./string_literals</kbd>.*const. |
| 11c40 | 5b 35 3a 30 5d 75 38 0a 35 0a 65 0a 30 0a 74 72 75 65 0a 31 32 38 31 36 39 0a 31 32 38 31 37 35 | [5:0]u8.5.e.0.true.128169.128175 |
| 11c60 | 0a e2 9a a1 0a 74 72 75 65 0a 74 72 75 65 0a 30 78 66 65 0a 30 78 39 66 0a 3c 2f 73 61 6d 70 3e | .....true.true.0xfe.0x9f.</samp> |
| 11c80 | 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 |
| 11ca0 | 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 41 72 72 61 79 73 | so:</p><ul>.<li><a.href="#Arrays |
| 11cc0 | 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 72 65 66 3d 22 23 | ">Arrays</a></li>.<li><a.href="# |
| 11ce0 | 53 6f 75 72 63 65 2d 45 6e 63 6f 64 69 6e 67 22 3e 53 6f 75 72 63 65 20 45 6e 63 6f 64 69 6e 67 | Source-Encoding">Source.Encoding |
| 11d00 | 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 3c 68 34 20 69 64 3d 22 45 | </a></li>.</ul>........<h4.id="E |
| 11d20 | 73 63 61 70 65 2d 53 65 71 75 65 6e 63 65 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 45 | scape-Sequences"><a.href="#toc-E |
| 11d40 | 73 63 61 70 65 2d 53 65 71 75 65 6e 63 65 73 22 3e 45 73 63 61 70 65 20 53 65 71 75 65 6e 63 65 | scape-Sequences">Escape.Sequence |
| 11d60 | 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 73 63 61 | s</a>.<a.class="hdr".href="#Esca |
| 11d80 | 70 65 2d 53 65 71 75 65 6e 63 65 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 34 3e 0a 0a 20 20 20 20 20 | pe-Sequences">..</a></h4>....... |
| 11da0 | 20 3c 64 69 76 20 63 6c 61 73 73 3d 22 74 61 62 6c 65 2d 77 72 61 70 70 65 72 22 3e 0a 20 20 20 | .<div.class="table-wrapper">.... |
| 11dc0 | 20 20 20 3c 74 61 62 6c 65 3e 0a 20 20 20 20 20 20 20 20 3c 63 61 70 74 69 6f 6e 3e 45 73 63 61 | ...<table>.........<caption>Esca |
| 11de0 | 70 65 20 53 65 71 75 65 6e 63 65 73 3c 2f 63 61 70 74 69 6f 6e 3e 0a 20 20 20 20 20 20 20 20 3c | pe.Sequences</caption>.........< |
| 11e00 | 74 68 65 61 64 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 | thead>.........<tr>...........<t |
| 11e20 | 68 20 73 63 6f 70 65 3d 22 63 6f 6c 22 3e 45 73 63 61 70 65 20 53 65 71 75 65 6e 63 65 3c 2f 74 | h.scope="col">Escape.Sequence</t |
| 11e40 | 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 4e 61 6d | h>...........<th.scope="col">Nam |
| 11e60 | 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 20 20 20 3c 2f 74 | e</th>.........</tr>.........</t |
| 11e80 | 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 |
| 11ea0 | 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">< |
| 11ec0 | 63 6f 64 65 3e 5c 6e 3c 2f 63 6f 64 65 3e 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 | code>\n</code></th>...........<t |
| 11ee0 | 64 3e 4e 65 77 6c 69 6e 65 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 | d>Newline</td>.........</tr>.... |
| 11f00 | 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= |
| 11f20 | 22 72 6f 77 22 3e 3c 63 6f 64 65 3e 5c 72 3c 2f 63 6f 64 65 3e 3c 2f 74 68 3e 0a 20 20 20 20 20 | "row"><code>\r</code></th>...... |
| 11f40 | 20 20 20 20 20 3c 74 64 3e 43 61 72 72 69 61 67 65 20 52 65 74 75 72 6e 3c 2f 74 64 3e 0a 20 20 | .....<td>Carriage.Return</td>... |
| 11f60 | 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>........ |
| 11f80 | 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 74 3c 2f 63 | .....<th.scope="row"><code>\t</c |
| 11fa0 | 6f 64 65 3e 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 54 61 62 3c 2f 74 64 3e | ode></th>...........<td>Tab</td> |
| 11fc0 | 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>..... |
| 11fe0 | 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 5c | ........<th.scope="row"><code>\\ |
| 12000 | 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 42 61 63 6b 73 | </code></th>...........<td>Backs |
| 12020 | 6c 61 73 68 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 | lash</td>.........</tr>......... |
| 12040 | 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" |
| 12060 | 3e 3c 63 6f 64 65 3e 5c 27 3c 2f 63 6f 64 65 3e 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 | ><code>\'</code></th>........... |
| 12080 | 3c 74 64 3e 53 69 6e 67 6c 65 20 51 75 6f 74 65 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f | <td>Single.Quote</td>.........</ |
| 120a0 | 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 |
| 120c0 | 20 73 63 6f 70 65 3d 22 72 6f 77 22 3e 3c 63 6f 64 65 3e 5c 22 3c 2f 63 6f 64 65 3e 3c 2f 74 68 | .scope="row"><code>\"</code></th |
| 120e0 | 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 44 6f 75 62 6c 65 20 51 75 6f 74 65 3c 2f 74 64 | >...........<td>Double.Quote</td |
| 12100 | 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>.... |
| 12120 | 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 5c | .........<th.scope="row"><code>\ |
| 12140 | 78 4e 4e 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 65 | xNN</code></th>...........<td>he |
| 12160 | 78 61 64 65 63 69 6d 61 6c 20 38 2d 62 69 74 20 62 79 74 65 20 76 61 6c 75 65 20 28 32 20 64 69 | xadecimal.8-bit.byte.value.(2.di |
| 12180 | 67 69 74 73 29 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 | gits)</td>.........</tr>........ |
| 121a0 | 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 |
| 121c0 | 22 3e 3c 63 6f 64 65 3e 5c 75 7b 4e 4e 4e 4e 4e 4e 7d 3c 2f 63 6f 64 65 3e 3c 2f 74 68 3e 0a 20 | "><code>\u{NNNNNN}</code></th>.. |
| 121e0 | 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 55 6e 69 63 6f 64 65 | .........<td>hexadecimal.Unicode |
| 12200 | 20 73 63 61 6c 61 72 20 76 61 6c 75 65 20 55 54 46 2d 38 20 65 6e 63 6f 64 65 64 20 28 31 20 6f | .scalar.value.UTF-8.encoded.(1.o |
| 12220 | 72 20 6d 6f 72 65 20 64 69 67 69 74 73 29 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 | r.more.digits)</td>.........</tr |
| 12240 | 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 |
| 12260 | 3e 0a 20 20 20 20 20 20 3c 2f 64 69 76 3e 0a 20 20 20 20 20 20 3c 70 3e 4e 6f 74 65 20 74 68 61 | >.......</div>.......<p>Note.tha |
| 12280 | 74 20 74 68 65 20 6d 61 78 69 6d 75 6d 20 76 61 6c 69 64 20 55 6e 69 63 6f 64 65 20 73 63 61 6c | t.the.maximum.valid.Unicode.scal |
| 122a0 | 61 72 20 76 61 6c 75 65 20 69 73 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ar.value.is.<code><span.class="t |
| 122c0 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 31 30 66 66 66 66 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 | ok-number">0x10ffff</span></code |
| 122e0 | 3e 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 34 20 69 64 3d 22 4d 75 6c 74 | >.</p>..............<h4.id="Mult |
| 12300 | 69 6c 69 6e 65 2d 53 74 72 69 6e 67 2d 4c 69 74 65 72 61 6c 73 22 3e 3c 61 20 68 72 65 66 3d 22 | iline-String-Literals"><a.href=" |
| 12320 | 23 74 6f 63 2d 4d 75 6c 74 69 6c 69 6e 65 2d 53 74 72 69 6e 67 2d 4c 69 74 65 72 61 6c 73 22 3e | #toc-Multiline-String-Literals"> |
| 12340 | 4d 75 6c 74 69 6c 69 6e 65 20 53 74 72 69 6e 67 20 4c 69 74 65 72 61 6c 73 3c 2f 61 3e 20 3c 61 | Multiline.String.Literals</a>.<a |
| 12360 | 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 6c 69 6e 65 2d 53 74 | .class="hdr".href="#Multiline-St |
| 12380 | 72 69 6e 67 2d 4c 69 74 65 72 61 6c 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 34 3e 0a 0a 20 20 20 20 | ring-Literals">..</a></h4>...... |
| 123a0 | 20 20 3c 70 3e 0a 20 20 20 20 20 20 4d 75 6c 74 69 6c 69 6e 65 20 73 74 72 69 6e 67 20 6c 69 74 | ..<p>.......Multiline.string.lit |
| 123c0 | 65 72 61 6c 73 20 68 61 76 65 20 6e 6f 20 65 73 63 61 70 65 73 20 61 6e 64 20 63 61 6e 20 73 70 | erals.have.no.escapes.and.can.sp |
| 123e0 | 61 6e 20 61 63 72 6f 73 73 20 6d 75 6c 74 69 70 6c 65 20 6c 69 6e 65 73 2e 0a 20 20 20 20 20 20 | an.across.multiple.lines........ |
| 12400 | 54 6f 20 73 74 61 72 74 20 61 20 6d 75 6c 74 69 6c 69 6e 65 20 73 74 72 69 6e 67 20 6c 69 74 65 | To.start.a.multiline.string.lite |
| 12420 | 72 61 6c 2c 20 75 73 65 20 74 68 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ral,.use.the.<code><span.class=" |
| 12440 | 74 6f 6b 2d 73 74 72 22 3e 5c 5c 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 74 6f 6b 65 6e 2e | tok-str">\\</span></code>.token. |
| 12460 | 20 4a 75 73 74 20 6c 69 6b 65 20 61 20 63 6f 6d 6d 65 6e 74 2c 0a 20 20 20 20 20 20 74 68 65 20 | .Just.like.a.comment,.......the. |
| 12480 | 73 74 72 69 6e 67 20 6c 69 74 65 72 61 6c 20 67 6f 65 73 20 75 6e 74 69 6c 20 74 68 65 20 65 6e | string.literal.goes.until.the.en |
| 124a0 | 64 20 6f 66 20 74 68 65 20 6c 69 6e 65 2e 20 54 68 65 20 65 6e 64 20 6f 66 20 74 68 65 20 6c 69 | d.of.the.line..The.end.of.the.li |
| 124c0 | 6e 65 20 69 73 0a 20 20 20 20 20 20 6e 6f 74 20 69 6e 63 6c 75 64 65 64 20 69 6e 20 74 68 65 20 | ne.is.......not.included.in.the. |
| 124e0 | 73 74 72 69 6e 67 20 6c 69 74 65 72 61 6c 2e 0a 20 20 20 20 20 20 48 6f 77 65 76 65 72 2c 20 69 | string.literal........However,.i |
| 12500 | 66 20 74 68 65 20 6e 65 78 74 20 6c 69 6e 65 20 62 65 67 69 6e 73 20 77 69 74 68 20 3c 63 6f 64 | f.the.next.line.begins.with.<cod |
| 12520 | 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 5c 5c 3c 2f 73 70 61 6e | e><span.class="tok-str">\\</span |
| 12540 | 3e 3c 2f 63 6f 64 65 3e 20 74 68 65 6e 20 61 20 6e 65 77 6c 69 6e 65 20 69 73 20 61 70 70 65 6e | ></code>.then.a.newline.is.appen |
| 12560 | 64 65 64 20 61 6e 64 0a 20 20 20 20 20 20 74 68 65 20 73 74 72 69 6e 67 20 6c 69 74 65 72 61 6c | ded.and.......the.string.literal |
| 12580 | 20 63 6f 6e 74 69 6e 75 65 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 | .continues........</p>.......<fi |
| 125a0 | 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" |
| 125c0 | 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 6d 75 6c 74 69 6c 69 6e 65 5f 73 74 | ><cite.class="file">multiline_st |
| 125e0 | 72 69 6e 67 5f 6c 69 74 65 72 61 6c 73 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 | ring_literals.zig</cite></figcap |
| 12600 | 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 |
| 12620 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 68 65 6c 6c 6f 5f 77 6f 72 6c 64 5f 69 6e | -kw">const</span>.hello_world_in |
| 12640 | 5f 63 20 3d 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 5c | _c.=.....<span.class="tok-str">\ |
| 12660 | 5c 23 69 6e 63 6c 75 64 65 20 26 6c 74 3b 73 74 64 69 6f 2e 68 26 67 74 3b 3c 2f 73 70 61 6e 3e | \#include.<stdio.h></span> |
| 12680 | 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 5c 5c 3c 2f 73 | .....<span.class="tok-str">\\</s |
| 126a0 | 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 5c | pan>.....<span.class="tok-str">\ |
| 126c0 | 5c 69 6e 74 20 6d 61 69 6e 28 69 6e 74 20 61 72 67 63 2c 20 63 68 61 72 20 2a 2a 61 72 67 76 29 | \int.main(int.argc,.char.**argv) |
| 126e0 | 20 7b 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 | .{</span>.....<span.class="tok-s |
| 12700 | 74 72 22 3e 5c 5c 20 20 20 20 70 72 69 6e 74 66 28 26 71 75 6f 74 3b 68 65 6c 6c 6f 20 77 6f 72 | tr">\\....printf("hello.wor |
| 12720 | 6c 64 5c 6e 26 71 75 6f 74 3b 29 3b 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | ld\n");</span>.....<span.cl |
| 12740 | 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 5c 5c 20 20 20 20 72 65 74 75 72 6e 20 30 3b 3c 2f 73 | ass="tok-str">\\....return.0;</s |
| 12760 | 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 5c | pan>.....<span.class="tok-str">\ |
| 12780 | 5c 7d 3c 2f 73 70 61 6e 3e 0a 3b 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 | \}</span>.;</code></pre></figure |
| 127a0 | 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 |
| 127c0 | 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 46 69 6c | i><a.href="#embedFile">@embedFil |
| 127e0 | 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>................ |
| 12800 | 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 41 73 73 69 67 6e 6d 65 6e 74 22 3e 3c 61 20 68 72 65 | ......<h3.id="Assignment"><a.hre |
| 12820 | 66 3d 22 23 74 6f 63 2d 41 73 73 69 67 6e 6d 65 6e 74 22 3e 41 73 73 69 67 6e 6d 65 6e 74 3c 2f | f="#toc-Assignment">Assignment</ |
| 12840 | 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 73 73 69 67 6e 6d | a>.<a.class="hdr".href="#Assignm |
| 12860 | 65 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 55 73 65 20 74 | ent">..</a></h3>........<p>Use.t |
| 12880 | 68 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f | he.<code><span.class="tok-kw">co |
| 128a0 | 6e 73 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6b 65 79 77 6f 72 64 20 74 6f 20 61 73 73 | nst</span></code>.keyword.to.ass |
| 128c0 | 69 67 6e 20 61 20 76 61 6c 75 65 20 74 6f 20 61 6e 20 69 64 65 6e 74 69 66 69 65 72 3a 3c 2f 70 | ign.a.value.to.an.identifier:</p |
| 128e0 | 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 |
| 12900 | 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 63 | s="zig-cap"><cite.class="file">c |
| 12920 | 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 67 65 | onstant_identifier_cannot_change |
| 12940 | 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 |
| 12960 | 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 |
| 12980 | 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 65 72 | pan>.x.=.<span.class="tok-number |
| 129a0 | 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ">1234</span>;..<span.class="tok |
| 129c0 | 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- |
| 129e0 | 66 6e 22 3e 66 6f 6f 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | fn">foo</span>().<span.class="to |
| 12a00 | 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. |
| 12a20 | 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 6f 72 6b 73 20 | class="tok-comment">//.It.works. |
| 12a40 | 61 74 20 66 69 6c 65 20 73 63 6f 70 65 20 61 73 20 77 65 6c 6c 20 61 73 20 69 6e 73 69 64 65 20 | at.file.scope.as.well.as.inside. |
| 12a60 | 66 75 6e 63 74 69 6f 6e 73 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | functions.</span>.....<span.clas |
| 12a80 | 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 |
| 12aa0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 36 37 38 3c 2f 73 70 61 6e 3e | n.class="tok-number">5678</span> |
| 12ac0 | 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" |
| 12ae0 | 3e 2f 2f 20 4f 6e 63 65 20 61 73 73 69 67 6e 65 64 2c 20 61 6e 20 69 64 65 6e 74 69 66 69 65 72 | >//.Once.assigned,.an.identifier |
| 12b00 | 20 63 61 6e 6e 6f 74 20 62 65 20 63 68 61 6e 67 65 64 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 79 | .cannot.be.changed.</span>.....y |
| 12b20 | 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</ |
| 12b40 | 73 70 61 6e 3e 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 | span>;.}..<span.class="tok-kw">p |
| 12b60 | 75 62 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 | ub</span>.<span.class="tok-kw">f |
| 12b80 | 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 6d 61 | n</span>.<span.class="tok-fn">ma |
| 12ba0 | 69 6e 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | in</span>().<span.class="tok-typ |
| 12bc0 | 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 29 3b 0a 7d 3c 2f 63 | e">void</span>.{.....foo();.}</c |
| 12be0 | 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 |
| 12c00 | 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</ |
| 12c20 | 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 |
| 12c40 | 20 62 75 69 6c 64 2d 65 78 65 20 63 6f 6e 73 74 61 6e 74 5f 69 64 65 6e 74 69 66 69 65 72 5f 63 | .build-exe.constant_identifier_c |
| 12c60 | 61 6e 6e 6f 74 5f 63 68 61 6e 67 65 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 3c 73 70 61 6e 20 63 6c 61 | annot_change.zig</kbd>.<span.cla |
| 12c80 | 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 | ss="sgr-1m">/home/andy/dev/zig/d |
| 12ca0 | 6f 63 2f 6c 61 6e 67 72 65 66 2f 63 6f 6e 73 74 61 6e 74 5f 69 64 65 6e 74 69 66 69 65 72 5f 63 | oc/langref/constant_identifier_c |
| 12cc0 | 61 6e 6e 6f 74 5f 63 68 61 6e 67 65 2e 7a 69 67 3a 38 3a 35 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 | annot_change.zig:8:5:.</span><sp |
| 12ce0 | 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 |
| 12d00 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 63 61 6e 6e 6f 74 20 61 73 73 | ><span.class="sgr-1m">cannot.ass |
| 12d20 | 69 67 6e 20 74 6f 20 63 6f 6e 73 74 61 6e 74 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 79 20 2b 3d 20 | ign.to.constant.</span>....y.+=. |
| 12d40 | 31 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 0a 3c | 1;.....<span.class="sgr-32m">^.< |
| 12d60 | 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 72 65 66 65 72 | /span><span.class="sgr-2m">refer |
| 12d80 | 65 6e 63 65 64 20 62 79 3a 0a 20 20 20 20 6d 61 69 6e 3a 20 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 | enced.by:.....main:./home/andy/d |
| 12da0 | 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 63 6f 6e 73 74 61 6e 74 5f 69 64 65 6e | ev/zig/doc/langref/constant_iden |
| 12dc0 | 74 69 66 69 65 72 5f 63 61 6e 6e 6f 74 5f 63 68 61 6e 67 65 2e 7a 69 67 3a 31 32 3a 38 0a 20 20 | tifier_cannot_change.zig:12:8... |
| 12de0 | 20 20 63 61 6c 6c 4d 61 69 6e 20 5b 69 6e 6c 69 6e 65 64 5d 3a 20 2f 68 6f 6d 65 2f 61 6e 64 79 | ..callMain.[inlined]:./home/andy |
| 12e00 | 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 36 31 38 3a 32 | /dev/zig/lib/std/start.zig:618:2 |
| 12e20 | 32 0a 20 20 20 20 63 61 6c 6c 4d 61 69 6e 57 69 74 68 41 72 67 73 20 5b 69 6e 6c 69 6e 65 64 5d | 2.....callMainWithArgs.[inlined] |
| 12e40 | 3a 20 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 | :./home/andy/dev/zig/lib/std/sta |
| 12e60 | 72 74 2e 7a 69 67 3a 35 38 37 3a 32 30 0a 20 20 20 20 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 | rt.zig:587:20.....posixCallMainA |
| 12e80 | 6e 64 45 78 69 74 3a 20 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 | ndExit:./home/andy/dev/zig/lib/s |
| 12ea0 | 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 35 34 32 3a 33 36 0a 20 20 20 20 32 20 72 65 66 65 72 65 | td/start.zig:542:36.....2.refere |
| 12ec0 | 6e 63 65 28 73 29 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 | nce(s).hidden;.use.'-freference- |
| 12ee0 | 74 72 61 63 65 3d 36 27 20 74 6f 20 73 65 65 20 61 6c 6c 20 72 65 66 65 72 65 6e 63 65 73 0a 3c | trace=6'.to.see.all.references.< |
| 12f00 | 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 20 | /span>.</samp></pre></figure>... |
| 12f20 | 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 6b | .....<p><code><span.class="tok-k |
| 12f40 | 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 20 74 | w">const</span></code>.applies.t |
| 12f60 | 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 65 6e | o.all.of.the.bytes.that.the.iden |
| 12f80 | 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 3c 61 | tifier.immediately.addresses..<a |
| 12fa0 | 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 20 68 | .href="#Pointers">Pointers</a>.h |
| 12fc0 | 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 20 20 | ave.their.own.const-ness.</p>... |
| 12fe0 | 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 74 68 | ....<p>If.you.need.a.variable.th |
| 13000 | 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 64 65 | at.you.can.modify,.use.the.<code |
| 13020 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e | ><span.class="tok-kw">var</span> |
| 13040 | 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 67 75 | </code>.keyword:</p>.......<figu |
| 13060 | 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">< |
| 13080 | 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 7a 69 | cite.class="file">mutable_var.zi |
| 130a0 | 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> |
| 130c0 | 3c 73 70 61 6e 20 63 6c 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 |
| 130e0 | 3e 20 70 72 69 6e 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 | >.print.=.<span.class="tok-built |
| 13100 | 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=" |
| 13120 | 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>) |
| 13140 | 2e 64 65 62 75 67 2e 70 72 69 6e 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | .debug.print;..<span.class="tok- |
| 13160 | 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- |
| 13180 | 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 |
| 131a0 | 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 |
| 131c0 | 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. |
| 131e0 | 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 |
| 13200 | 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>.= |
| 13220 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 36 37 38 3c 2f | .<span.class="tok-number">5678</ |
| 13240 | 73 70 61 6e 3e 3b 0a 0a 20 20 20 20 79 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | span>;......y.+=.<span.class="to |
| 13260 | 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 28 3c | k-number">1</span>;......print(< |
| 13280 | 73 70 61 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 26 71 | span.class="tok-str">"{d}&q |
| 132a0 | 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 70 72 | uot;</span>,..{y});.}</code></pr |
| 132c0 | 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 |
| 132e0 | 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 |
| 13300 | 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 |
| 13320 | 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 64 3e | xe.mutable_var.zig</kbd>.$.<kbd> |
| 13340 | 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 70 3e | ./mutable_var</kbd>.5679.</samp> |
| 13360 | 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 61 62 | </pre></figure>........<p>Variab |
| 13380 | 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 20 20 | les.must.be.initialized:</p>.... |
| 133a0 | 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 |
| 133c0 | 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 6d 75 | g-cap"><cite.class="file">var_mu |
| 133e0 | 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 66 69 | st_be_initialized.zig</cite></fi |
| 13400 | 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= |
| 13420 | 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= |
| 13440 | 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=" |
| 13460 | 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 |
| 13480 | 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>.{.....< |
| 134a0 | 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 78 | span.class="tok-kw">var</span>.x |
| 134c0 | 3a 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 |
| 134e0 | 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 2d 6e | an>;......x.=.<span.class="tok-n |
| 13500 | 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 3e 3c | umber">1</span>;.}</code></pre>< |
| 13520 | 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 |
| 13540 | 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> |
| 13560 | 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. |
| 13580 | 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 62 64 | var_must_be_initialized.zig</kbd |
| 135a0 | 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 |
| 135c0 | 79 2f 64 65 76 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 5f 62 | y/dev/zig/doc/langref/var_must_b |
| 135e0 | 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 3e 3c | e_initialized.zig:2:15:.</span>< |
| 13600 | 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 |
| 13620 | 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 65 64 | an><span.class="sgr-1m">expected |
| 13640 | 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 20 78 | .'=',.found.';'.</span>....var.x |
| 13660 | 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 73 73 | :.i32;...............<span.class |
| 13680 | 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 72 | ="sgr-32m">^.</span>.</samp></pr |
| 136a0 | 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 65 66 | e></figure>........<h4.id="undef |
| 136c0 | 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 3e 75 | ined"><a.href="#toc-undefined">u |
| 136e0 | 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 65 66 | ndefined</a>.<a.class="hdr".href |
| 13700 | 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 20 20 | ="#undefined">..</a></h4>....... |
| 13720 | 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 2d 6e | .<p>Use.<code><span.class="tok-n |
| 13740 | 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 6f 20 | ull">undefined</span></code>.to. |
| 13760 | 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 3c 2f | leave.variables.uninitialized:</ |
| 13780 | 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 |
| 137a0 | 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"> |
| 137c0 | 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 69 67 | assign_undefined.zig</cite></fig |
| 137e0 | 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=" |
| 13800 | 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 73 70 | tok-kw">const</span>.print.=.<sp |
| 13820 | 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</ |
| 13840 | 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 |
| 13860 | 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 74 3b | t;std"</span>).debug.print; |
| 13880 | 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 |
| 138a0 | 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> |
| 138c0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 6d 61 69 6e 3c 2f 73 70 61 6e | .<span.class="tok-fn">main</span |
| 138e0 | 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c | >().<span.class="tok-type">void< |
| 13900 | 2f 73 70 61 6e 3e 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 |
| 13920 | 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 6f 6b | ">var</span>.x:.<span.class="tok |
| 13940 | 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= |
| 13960 | 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 75 6e 64 65 66 69 6e 65 64 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 | "tok-null">undefined</span>;.... |
| 13980 | 20 78 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c | .x.=.<span.class="tok-number">1< |
| 139a0 | 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 22 74 | /span>;.....print(<span.class="t |
| 139c0 | 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 2c 20 | ok-str">"{d}"</span>,. |
| 139e0 | 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 3c 66 | .{x});.}</code></pre></figure><f |
| 13a00 | 69 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 |
| 13a20 | 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 |
| 13a40 | 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 6e 64 | >$.<kbd>zig.build-exe.assign_und |
| 13a60 | 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 67 6e | efined.zig</kbd>.$.<kbd>./assign |
| 13a80 | 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 65 3e | _undefined</kbd>.1.</samp></pre> |
| 13aa0 | 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 64 65 | </figure>........<p>.......<code |
| 13ac0 | 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 |
| 13ae0 | 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 3d 22 | d</span></code>.can.be.<a.href=" |
| 13b00 | 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 20 61 | #Type-Coercion">coerced</a>.to.a |
| 13b20 | 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 61 70 | ny.type............Once.this.hap |
| 13b40 | 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 20 74 | pens,.it.is.no.longer.possible.t |
| 13b60 | 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 64 65 | o.detect.that.the.value.is.<code |
| 13b80 | 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 |
| 13ba0 | 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 20 3c | d</span></code>................< |
| 13bc0 | 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 64 65 | code><span.class="tok-null">unde |
| 13be0 | 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 76 61 | fined</span></code>.means.the.va |
| 13c00 | 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 6d 65 | lue.could.be.anything,.even.some |
| 13c20 | 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 20 20 | thing.that.is.nonsense.......... |
| 13c40 | 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 2e 20 | .........according.to.the.type.. |
| 13c60 | 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 3e 3c | Translated.into.English,.<code>< |
| 13c80 | 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< |
| 13ca0 | 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 6e 69 | /span></code>.means."Not.a.meani |
| 13cc0 | 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 76 61 | ngful.......value..Using.this.va |
| 13ce0 | 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 77 69 | lue.would.be.a.bug..The.value.wi |
| 13d00 | 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 65 66 | ll.be.unused,.or.overwritten.bef |
| 13d20 | 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 20 20 | ore.being.used.".......</p>..... |
| 13d40 | 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 22 3e | ..<p>.......In.<a.href="#Debug"> |
| 13d60 | 44 65 62 75 67 3c 2f 61 3e 20 61 6e 64 20 3c 61 20 68 72 65 66 3d 22 23 52 65 6c 65 61 73 65 53 | Debug</a>.and.<a.href="#ReleaseS |
| 13d80 | 61 66 65 22 3e 52 65 6c 65 61 73 65 53 61 66 65 3c 2f 61 3e 20 6d 6f 64 65 2c 20 5a 69 67 20 77 | afe">ReleaseSafe</a>.mode,.Zig.w |
| 13da0 | 72 69 74 65 73 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | rites.<code><span.class="tok-num |
| 13dc0 | 62 65 72 22 3e 30 78 61 61 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 62 79 74 65 73 20 74 6f | ber">0xaa</span></code>.bytes.to |
| 13de0 | 20 75 6e 64 65 66 69 6e 65 64 20 6d 65 6d 6f 72 79 2e 20 54 68 69 73 20 69 73 20 74 6f 20 63 61 | .undefined.memory..This.is.to.ca |
| 13e00 | 74 63 68 0a 20 20 20 20 20 20 62 75 67 73 20 65 61 72 6c 79 2c 20 61 6e 64 20 74 6f 20 68 65 6c | tch.......bugs.early,.and.to.hel |
| 13e20 | 70 20 64 65 74 65 63 74 20 75 73 65 20 6f 66 20 75 6e 64 65 66 69 6e 65 64 20 6d 65 6d 6f 72 79 | p.detect.use.of.undefined.memory |
| 13e40 | 20 69 6e 20 61 20 64 65 62 75 67 67 65 72 2e 20 48 6f 77 65 76 65 72 2c 20 74 68 69 73 20 62 65 | .in.a.debugger..However,.this.be |
| 13e60 | 68 61 76 69 6f 72 20 69 73 20 6f 6e 6c 79 20 61 6e 0a 20 20 20 20 20 20 69 6d 70 6c 65 6d 65 6e | havior.is.only.an.......implemen |
| 13e80 | 74 61 74 69 6f 6e 20 66 65 61 74 75 72 65 2c 20 6e 6f 74 20 61 20 6c 61 6e 67 75 61 67 65 20 73 | tation.feature,.not.a.language.s |
| 13ea0 | 65 6d 61 6e 74 69 63 2c 20 73 6f 20 69 74 20 69 73 20 6e 6f 74 20 67 75 61 72 61 6e 74 65 65 64 | emantic,.so.it.is.not.guaranteed |
| 13ec0 | 20 74 6f 20 62 65 20 6f 62 73 65 72 76 61 62 6c 65 20 74 6f 20 63 6f 64 65 2e 0a 20 20 20 20 20 | .to.be.observable.to.code....... |
| 13ee0 | 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 34 20 69 64 3d 22 44 65 73 74 | .</p>...............<h4.id="Dest |
| 13f00 | 72 75 63 74 75 72 69 6e 67 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 44 65 73 74 72 75 63 | ructuring"><a.href="#toc-Destruc |
| 13f20 | 74 75 72 69 6e 67 22 3e 44 65 73 74 72 75 63 74 75 72 69 6e 67 3c 2f 61 3e 20 3c 61 20 63 6c 61 | turing">Destructuring</a>.<a.cla |
| 13f40 | 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 44 65 73 74 72 75 63 74 75 72 69 6e 67 22 3e c2 | ss="hdr".href="#Destructuring">. |
| 13f60 | 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 20 41 20 | .</a></h4>........<p>.........A. |
| 13f80 | 64 65 73 74 72 75 63 74 75 72 69 6e 67 20 61 73 73 69 67 6e 6d 65 6e 74 20 63 61 6e 20 73 65 70 | destructuring.assignment.can.sep |
| 13fa0 | 61 72 61 74 65 20 65 6c 65 6d 65 6e 74 73 20 6f 66 20 69 6e 64 65 78 61 62 6c 65 20 61 67 67 72 | arate.elements.of.indexable.aggr |
| 13fc0 | 65 67 61 74 65 20 74 79 70 65 73 0a 20 20 20 20 20 20 20 20 28 3c 61 20 68 72 65 66 3d 22 23 54 | egate.types.........(<a.href="#T |
| 13fe0 | 75 70 6c 65 73 22 3e 54 75 70 6c 65 73 3c 2f 61 3e 2c 20 3c 61 20 68 72 65 66 3d 22 23 41 72 72 | uples">Tuples</a>,.<a.href="#Arr |
| 14000 | 61 79 73 22 3e 41 72 72 61 79 73 3c 2f 61 3e 2c 20 3c 61 20 68 72 65 66 3d 22 23 56 65 63 74 6f | ays">Arrays</a>,.<a.href="#Vecto |
| 14020 | 72 73 22 3e 56 65 63 74 6f 72 73 3c 2f 61 3e 29 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 | rs">Vectors</a>):.......</p>.... |
| 14040 | 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 |
| 14060 | 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 64 65 73 74 72 75 | g-cap"><cite.class="file">destru |
| 14080 | 63 74 75 72 69 6e 67 5f 74 6f 5f 65 78 69 73 74 69 6e 67 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f | cturing_to_existing.zig</cite></ |
| 140a0 | 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 |
| 140c0 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 70 72 69 6e 74 20 3d 20 | s="tok-kw">const</span>.print.=. |
| 140e0 | 3c 73 70 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 |
| 14100 | 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">& |
| 14120 | 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 64 65 62 75 67 2e 70 72 69 | quot;std"</span>).debug.pri |
| 14140 | 6e 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 | nt;..<span.class="tok-kw">pub</s |
| 14160 | 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 |
| 14180 | 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 |
| 141a0 | 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 |
| 141c0 | 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | id</span>.{.....<span.class="tok |
| 141e0 | 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | -kw">var</span>.x:.<span.class=" |
| 14200 | 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 |
| 14220 | 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 75 6e 64 65 66 69 6e 65 64 3c 2f 73 70 61 6e 3e 3b 0a | ss="tok-null">undefined</span>;. |
| 14240 | 20 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 |
| 14260 | 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 75 33 | an>.y:.<span.class="tok-type">u3 |
| 14280 | 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c | 2</span>.=.<span.class="tok-null |
| 142a0 | 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 6e 20 63 6c | ">undefined</span>;.....<span.cl |
| 142c0 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 7a 3a 20 3c 73 70 61 6e | ass="tok-kw">var</span>.z:.<span |
| 142e0 | 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>.=.< |
| 14300 | 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< |
| 14320 | 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 |
| 14340 | 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 74 75 70 6c 65 20 3d 20 2e 7b 20 3c 73 70 61 6e 20 | ">const</span>.tuple.=..{.<span. |
| 14360 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 | class="tok-number">1</span>,.<sp |
| 14380 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 2c 20 | an.class="tok-number">2</span>,. |
| 143a0 | 3c 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 |
| 143c0 | 3e 20 7d 3b 0a 0a 20 20 20 20 78 2c 20 79 2c 20 7a 20 3d 20 74 75 70 6c 65 3b 0a 0a 20 20 20 20 | >.};......x,.y,.z.=.tuple;...... |
| 143e0 | 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 |
| 14400 | 74 3b 74 75 70 6c 65 3a 20 78 20 3d 20 7b 7d 2c 20 79 20 3d 20 7b 7d 2c 20 7a 20 3d 20 7b 7d 5c | t;tuple:.x.=.{},.y.=.{},.z.=.{}\ |
| 14420 | 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 78 2c 20 79 2c 20 7a 7d 29 3b 0a 0a 20 20 | n"</span>,..{x,.y,.z});.... |
| 14440 | 20 20 3c 73 70 61 6e 20 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 |
| 14460 | 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- |
| 14480 | 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 7b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | type">u32</span>{.<span.class="t |
| 144a0 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ok-number">4</span>,.<span.class |
| 144c0 | 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 |
| 144e0 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 36 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 0a 20 20 | ass="tok-number">6</span>.};.... |
| 14500 | 20 20 78 2c 20 79 2c 20 7a 20 3d 20 61 72 72 61 79 3b 0a 0a 20 20 20 20 70 72 69 6e 74 28 3c 73 | ..x,.y,.z.=.array;......print(<s |
| 14520 | 70 61 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 72 72 61 79 3a | pan.class="tok-str">"array: |
| 14540 | 20 78 20 3d 20 7b 7d 2c 20 79 20 3d 20 7b 7d 2c 20 7a 20 3d 20 7b 7d 5c 6e 26 71 75 6f 74 3b 3c | .x.=.{},.y.=.{},.z.=.{}\n"< |
| 14560 | 2f 73 70 61 6e 3e 2c 20 2e 7b 78 2c 20 79 2c 20 7a 7d 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 | /span>,..{x,.y,.z});......<span. |
| 14580 | 63 6c 61 73 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 74 | class="tok-kw">const</span>.vect |
| 145a0 | 6f 72 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 56 | or:.<span.class="tok-builtin">@V |
| 145c0 | 65 63 74 6f 72 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | ector</span>(<span.class="tok-nu |
| 145e0 | 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 6b | mber">3</span>,.<span.class="tok |
| 14600 | 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 29 20 3d 20 2e 7b 20 3c 73 70 61 6e 20 63 6c | -type">u32</span>).=..{.<span.cl |
| 14620 | 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 |
| 14640 | 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 2c 20 3c 73 | .class="tok-number">8</span>,.<s |
| 14660 | 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 20 | pan.class="tok-number">9</span>. |
| 14680 | 7d 3b 0a 0a 20 20 20 20 78 2c 20 79 2c 20 7a 20 3d 20 76 65 63 74 6f 72 3b 0a 0a 20 20 20 20 70 | };......x,.y,.z.=.vector;......p |
| 146a0 | 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">" |
| 146c0 | 3b 76 65 63 74 6f 72 3a 20 78 20 3d 20 7b 7d 2c 20 79 20 3d 20 7b 7d 2c 20 7a 20 3d 20 7b 7d 5c | ;vector:.x.=.{},.y.=.{},.z.=.{}\ |
| 146e0 | 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 78 2c 20 79 2c 20 7a 7d 29 3b 0a 7d 3c 2f | n"</span>,..{x,.y,.z});.}</ |
| 14700 | 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 |
| 14720 | 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< |
| 14740 | 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 |
| 14760 | 67 20 62 75 69 6c 64 2d 65 78 65 20 64 65 73 74 72 75 63 74 75 72 69 6e 67 5f 74 6f 5f 65 78 69 | g.build-exe.destructuring_to_exi |
| 14780 | 73 74 69 6e 67 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 24 20 3c 6b 62 64 3e 2e 2f 64 65 73 74 72 75 63 | sting.zig</kbd>.$.<kbd>./destruc |
| 147a0 | 74 75 72 69 6e 67 5f 74 6f 5f 65 78 69 73 74 69 6e 67 3c 2f 6b 62 64 3e 0a 74 75 70 6c 65 3a 20 | turing_to_existing</kbd>.tuple:. |
| 147c0 | 78 20 3d 20 31 2c 20 79 20 3d 20 32 2c 20 7a 20 3d 20 33 0a 61 72 72 61 79 3a 20 78 20 3d 20 34 | x.=.1,.y.=.2,.z.=.3.array:.x.=.4 |
| 147e0 | 2c 20 79 20 3d 20 35 2c 20 7a 20 3d 20 36 0a 76 65 63 74 6f 72 3a 20 78 20 3d 20 37 2c 20 79 20 | ,.y.=.5,.z.=.6.vector:.x.=.7,.y. |
| 14800 | 3d 20 38 2c 20 7a 20 3d 20 39 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 | =.8,.z.=.9.</samp></pre></figure |
| 14820 | 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 20 20 41 20 64 65 73 74 72 75 63 74 75 | >........<p>.........A.destructu |
| 14840 | 72 69 6e 67 20 65 78 70 72 65 73 73 69 6f 6e 20 6d 61 79 20 6f 6e 6c 79 20 61 70 70 65 61 72 20 | ring.expression.may.only.appear. |
| 14860 | 77 69 74 68 69 6e 20 61 20 62 6c 6f 63 6b 20 28 69 2e 65 2e 20 6e 6f 74 20 61 74 20 63 6f 6e 74 | within.a.block.(i.e..not.at.cont |
| 14880 | 61 69 6e 65 72 20 73 63 6f 70 65 29 2e 0a 20 20 20 20 20 20 20 20 54 68 65 20 6c 65 66 74 20 68 | ainer.scope)..........The.left.h |
| 148a0 | 61 6e 64 20 73 69 64 65 20 6f 66 20 74 68 65 20 61 73 73 69 67 6e 6d 65 6e 74 20 6d 75 73 74 20 | and.side.of.the.assignment.must. |
| 148c0 | 63 6f 6e 73 69 73 74 20 6f 66 20 61 20 63 6f 6d 6d 61 20 73 65 70 61 72 61 74 65 64 20 6c 69 73 | consist.of.a.comma.separated.lis |
| 148e0 | 74 2c 0a 20 20 20 20 20 20 20 20 65 61 63 68 20 65 6c 65 6d 65 6e 74 20 6f 66 20 77 68 69 63 68 | t,.........each.element.of.which |
| 14900 | 20 6d 61 79 20 62 65 20 65 69 74 68 65 72 20 61 6e 20 6c 76 61 6c 75 65 20 28 66 6f 72 20 69 6e | .may.be.either.an.lvalue.(for.in |
| 14920 | 73 74 61 6e 63 65 2c 20 61 6e 20 65 78 69 73 74 69 6e 67 20 60 76 61 72 60 29 20 6f 72 20 61 20 | stance,.an.existing.`var`).or.a. |
| 14940 | 76 61 72 69 61 62 6c 65 20 64 65 63 6c 61 72 61 74 69 6f 6e 3a 0a 20 20 20 20 20 20 3c 2f 70 3e | variable.declaration:.......</p> |
| 14960 | 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 |
| 14980 | 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 64 65 | ="zig-cap"><cite.class="file">de |
| 149a0 | 73 74 72 75 63 74 75 72 69 6e 67 5f 6d 69 78 65 64 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 | structuring_mixed.zig</cite></fi |
| 149c0 | 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= |
| 149e0 | 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 73 | "tok-kw">const</span>.print.=.<s |
| 14a00 | 70 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< |
| 14a20 | 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 |
| 14a40 | 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 74 | ot;std"</span>).debug.print |
| 14a60 | 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 |
| 14a80 | 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 |
| 14aa0 | 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 |
| 14ac0 | 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 |
| 14ae0 | 3c 2f 73 70 61 6e 3e 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 |
| 14b00 | 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 6f | w">var</span>.x:.<span.class="to |
| 14b20 | 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 |
| 14b40 | 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 75 6e 64 65 66 69 6e 65 64 3c 2f 73 70 61 6e 3e 3b 0a 0a 20 | ="tok-null">undefined</span>;... |
| 14b60 | 20 20 20 3c 73 70 61 6e 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 |
| 14b80 | 70 61 6e 3e 20 74 75 70 6c 65 20 3d 20 2e 7b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | pan>.tuple.=..{.<span.class="tok |
| 14ba0 | 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | -number">1</span>,.<span.class=" |
| 14bc0 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 | tok-number">2</span>,.<span.clas |
| 14be0 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 0a 20 20 20 20 | s="tok-number">3</span>.};...... |
| 14c00 | 78 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 | x,.<span.class="tok-kw">var</spa |
| 14c20 | 6e 3e 20 79 20 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 | n>.y.:.<span.class="tok-type">u3 |
| 14c40 | 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 6b 77 22 3e 63 | 2</span>,.<span.class="tok-kw">c |
| 14c60 | 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 7a 20 3d 20 74 75 70 6c 65 3b 0a 0a 20 20 20 20 70 72 69 6e | onst</span>.z.=.tuple;......prin |
| 14c80 | 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 78 20 | t(<span.class="tok-str">"x. |
| 14ca0 | 3d 20 7b 7d 2c 20 79 20 3d 20 7b 7d 2c 20 7a 20 3d 20 7b 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 | =.{},.y.=.{},.z.=.{}\n"</sp |
| 14cc0 | 61 6e 3e 2c 20 2e 7b 78 2c 20 79 2c 20 7a 7d 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | an>,..{x,.y,.z});......<span.cla |
| 14ce0 | 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 79 20 69 73 20 6d 75 74 61 62 6c 65 | ss="tok-comment">//.y.is.mutable |
| 14d00 | 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 79 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | </span>.....y.=.<span.class="tok |
| 14d20 | 2d 6e 75 6d 62 65 72 22 3e 31 30 30 3c 2f 73 70 61 6e 3e 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 | -number">100</span>;......<span. |
| 14d40 | 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 75 | class="tok-comment">//.You.can.u |
| 14d60 | 73 65 20 5f 20 74 6f 20 74 68 72 6f 77 20 61 77 61 79 20 75 6e 77 61 6e 74 65 64 20 76 61 6c 75 | se._.to.throw.away.unwanted.valu |
| 14d80 | 65 73 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 5f 2c 20 78 2c 20 5f 20 3d 20 74 75 70 6c 65 3b 0a | es.</span>....._,.x,._.=.tuple;. |
| 14da0 | 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" |
| 14dc0 | 3e 26 71 75 6f 74 3b 78 20 3d 20 7b 7d 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 78 7d | >"x.=.{}"</span>,..{x} |
| 14de0 | 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 |
| 14e00 | 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"> |
| 14e20 | 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>$.< |
| 14e40 | 6b 62 64 3e 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 64 65 73 74 72 75 63 74 75 72 69 6e 67 5f | kbd>zig.build-exe.destructuring_ |
| 14e60 | 6d 69 78 65 64 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 24 20 3c 6b 62 64 3e 2e 2f 64 65 73 74 72 75 63 | mixed.zig</kbd>.$.<kbd>./destruc |
| 14e80 | 74 75 72 69 6e 67 5f 6d 69 78 65 64 3c 2f 6b 62 64 3e 0a 78 20 3d 20 31 2c 20 79 20 3d 20 32 2c | turing_mixed</kbd>.x.=.1,.y.=.2, |
| 14ea0 | 20 7a 20 3d 20 33 0a 78 20 3d 20 32 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 | .z.=.3.x.=.2.</samp></pre></figu |
| 14ec0 | 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 20 20 41 20 64 65 73 74 72 75 63 | re>........<p>.........A.destruc |
| 14ee0 | 74 75 72 65 20 6d 61 79 20 62 65 20 70 72 65 66 69 78 65 64 20 77 69 74 68 20 74 68 65 20 3c 63 | ture.may.be.prefixed.with.the.<c |
| 14f00 | 6f 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 |
| 14f20 | 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6b 65 79 77 6f 72 64 2c 20 69 6e 20 77 68 69 63 | e</span></code>.keyword,.in.whic |
| 14f40 | 68 20 63 61 73 65 20 74 68 65 20 65 6e 74 69 72 65 0a 20 20 20 20 20 20 20 20 64 65 73 74 72 75 | h.case.the.entire.........destru |
| 14f60 | 63 74 75 72 65 20 65 78 70 72 65 73 73 69 6f 6e 20 69 73 20 65 76 61 6c 75 61 74 65 64 20 61 74 | cture.expression.is.evaluated.at |
| 14f80 | 20 3c 61 20 68 72 65 66 3d 22 23 63 6f 6d 70 74 69 6d 65 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 61 | .<a.href="#comptime">comptime</a |
| 14fa0 | 3e 2e 20 41 6c 6c 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | >..All.<code><span.class="tok-kw |
| 14fc0 | 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 73 20 64 65 63 6c 61 72 65 64 20 77 6f | ">var</span></code>s.declared.wo |
| 14fe0 | 75 6c 64 0a 20 20 20 20 20 20 20 20 62 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | uld.........be.<code><span.class |
| 15000 | 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 20 | ="tok-kw">comptime</span>.<span. |
| 15020 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e | class="tok-kw">var</span></code> |
| 15040 | 73 20 61 6e 64 20 61 6c 6c 20 65 78 70 72 65 73 73 69 6f 6e 73 20 28 62 6f 74 68 20 72 65 73 75 | s.and.all.expressions.(both.resu |
| 15060 | 6c 74 20 6c 6f 63 61 74 69 6f 6e 73 20 61 6e 64 20 74 68 65 20 61 73 73 69 67 6e 65 65 0a 20 20 | lt.locations.and.the.assignee... |
| 15080 | 20 20 20 20 20 20 65 78 70 72 65 73 73 69 6f 6e 29 20 61 72 65 20 65 76 61 6c 75 61 74 65 64 20 | ......expression).are.evaluated. |
| 150a0 | 61 74 20 3c 61 20 68 72 65 66 3d 22 23 63 6f 6d 70 74 69 6d 65 22 3e 63 6f 6d 70 74 69 6d 65 3c | at.<a.href="#comptime">comptime< |
| 150c0 | 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c | /a>........</p>........<p>See.al |
| 150e0 | 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 44 65 73 74 72 75 | so:</p><ul>.<li><a.href="#Destru |
| 15100 | 63 74 75 72 69 6e 67 2d 54 75 70 6c 65 73 22 3e 44 65 73 74 72 75 63 74 75 72 69 6e 67 20 54 75 | cturing-Tuples">Destructuring.Tu |
| 15120 | 70 6c 65 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 44 65 73 74 | ples</a></li>.<li><a.href="#Dest |
| 15140 | 72 75 63 74 75 72 69 6e 67 2d 41 72 72 61 79 73 22 3e 44 65 73 74 72 75 63 74 75 72 69 6e 67 20 | ructuring-Arrays">Destructuring. |
| 15160 | 41 72 72 61 79 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 44 65 | Arrays</a></li>.<li><a.href="#De |
| 15180 | 73 74 72 75 63 74 75 72 69 6e 67 2d 56 65 63 74 6f 72 73 22 3e 44 65 73 74 72 75 63 74 75 72 69 | structuring-Vectors">Destructuri |
| 151a0 | 6e 67 20 56 65 63 74 6f 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 | ng.Vectors</a></li>.</ul>....... |
| 151c0 | 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 5a 69 | ......................<h2.id="Zi |
| 151e0 | 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 22 3e | g-Test"><a.href="#toc-Zig-Test"> |
| 15200 | 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 65 66 | Zig.Test</a>.<a.class="hdr".href |
| 15220 | 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 20 20 | ="#Zig-Test">..</a></h2>........ |
| 15240 | 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 6e 20 | <p>.........Code.written.within. |
| 15260 | 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 22 74 | one.or.more.<code><span.class="t |
| 15280 | 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 61 72 | ok-kw">test</span></code>.declar |
| 152a0 | 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 65 68 | ations.can.be.used.to.ensure.beh |
| 152c0 | 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 20 20 | avior.meets.expectations:....... |
| 152e0 | 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 |
| 15300 | 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 |
| 15320 | 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 74 65 | ">testing_introduction.zig</cite |
| 15340 | 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 |
| 15360 | 6c 61 73 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.= |
| 15380 | 20 3c 73 70 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 |
| 153a0 | 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"> |
| 153c0 | 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 3c 73 70 61 6e 20 | "std"</span>);..<span. |
| 153e0 | 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 |
| 15400 | 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 61 64 | .class="tok-str">"expect.ad |
| 15420 | 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 6e 3e | dOne.adds.one.to.41"</span> |
| 15440 | 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 6e 74 | .{......<span.class="tok-comment |
| 15460 | 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 61 69 | ">//.The.Standard.Library.contai |
| 15480 | 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 65 61 | ns.useful.functions.to.help.crea |
| 154a0 | 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 73 73 | te.tests.</span>.....<span.class |
| 154c0 | 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 61 20 | ="tok-comment">//.`expect`.is.a. |
| 154e0 | 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 75 6d | function.that.verifies.its.argum |
| 15500 | 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 63 6c | ent.is.true.</span>.....<span.cl |
| 15520 | 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 65 74 | ass="tok-comment">//.It.will.ret |
| 15540 | 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 73 20 | urn.an.error.if.its.argument.is. |
| 15560 | 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 73 70 | false.to.indicate.a.failure.</sp |
| 15580 | 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 |
| 155a0 | 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 6e 20 | ">//.`try`.is.used.to.return.an. |
| 155c0 | 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 74 69 | error.to.the.test.runner.to.noti |
| 155e0 | 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 70 61 | fy.it.that.the.test.failed.</spa |
| 15600 | 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< |
| 15620 | 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 6e 65 | /span>.std.testing.expect(addOne |
| 15640 | 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 73 70 | (<span.class="tok-number">41</sp |
| 15660 | 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" |
| 15680 | 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 6f 6b | >42</span>);.}..<span.class="tok |
| 156a0 | 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 3c 73 | -kw">test</span>.addOne.{.....<s |
| 156c0 | 70 61 6e 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 65 73 | pan.class="tok-comment">//.A.tes |
| 156e0 | 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 6e 67 | t.name.can.also.be.written.using |
| 15700 | 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 61 6e | .an.identifier.</span>.....<span |
| 15720 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 69 73 20 69 73 20 | .class="tok-comment">//.This.is. |
| 15740 | 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 65 6e | a.doctest,.and.serves.as.documen |
| 15760 | 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 20 20 | tation.for.`addOne`.</span>..... |
| 15780 | 3c 73 70 61 6e 20 63 6c 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>. |
| 157a0 | 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 6e 20 | std.testing.expect(addOne(<span. |
| 157c0 | 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 3d 3d | class="tok-number">41</span>).== |
| 157e0 | 20 3c 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 |
| 15800 | 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e | an>);.}..<span.class="tok-commen |
| 15820 | 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 64 64 | t">///.The.function.`addOne`.add |
| 15840 | 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 74 73 | s.one.to.the.number.given.as.its |
| 15860 | 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 22 74 | .argument.</span>.<span.class="t |
| 15880 | 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 |
| 158a0 | 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 70 61 | k-fn">addOne</span>(number:.<spa |
| 158c0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 20 3c | n.class="tok-type">i32</span>).< |
| 158e0 | 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> |
| 15900 | 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 |
| 15920 | 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 3d 22 | rn</span>.number.+.<span.class=" |
| 15940 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f | tok-number">1</span>;.}</code></ |
| 15960 | 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 |
| 15980 | 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 |
| 159a0 | 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. |
| 159c0 | 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 0a 31 | testing_introduction.zig</kbd>.1 |
| 159e0 | 2f 32 20 74 65 73 74 69 6e 67 5f 69 6e 74 72 6f 64 75 63 74 69 6f 6e 2e 74 65 73 74 2e 65 78 70 | /2.testing_introduction.test.exp |
| 15a00 | 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 0a 32 | ect.addOne.adds.one.to.41...OK.2 |
| 15a20 | 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 73 74 | /2.testing_introduction.decltest |
| 15a40 | 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 64 2e | .addOne...OK.All.2.tests.passed. |
| 15a60 | 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>........< |
| 15a80 | 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 6c 65 | p>.........The.<code.class="file |
| 15aa0 | 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 64 65 | ">testing_introduction.zig</code |
| 15ac0 | 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 66 3d | >.code.sample.tests.the.<a.href= |
| 15ae0 | 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 20 20 | "#Functions">function</a>....... |
| 15b00 | 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 65 20 | ..<code>addOne</code>.to.ensure. |
| 15b20 | 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 61 73 | that.it.returns.<code><span.clas |
| 15b40 | 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 3e 20 | s="tok-number">42</span></code>. |
| 15b60 | 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 3c 73 | given.the.input.........<code><s |
| 15b80 | 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 6e 3e | pan.class="tok-number">41</span> |
| 15ba0 | 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 70 65 | </code>..From.this.test's.perspe |
| 15bc0 | 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 20 66 | ctive,.the.<code>addOne</code>.f |
| 15be0 | 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 3c 65 | unction.is.........said.to.be.<e |
| 15c00 | 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 3c 2f | m>code.under.test</em>........</ |
| 15c20 | 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 74 65 | p>.......<p>.........<kbd>zig.te |
| 15c40 | 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 73 20 | st</kbd>.is.a.tool.that.creates. |
| 15c60 | 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 75 6c | and.runs.a.test.build..By.defaul |
| 15c80 | 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 20 20 | t,.it.builds.and.runs.an........ |
| 15ca0 | 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 3c 65 | .executable.program.using.the.<e |
| 15cc0 | 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 76 69 | m>default.test.runner</em>.provi |
| 15ce0 | 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 61 72 | ded.by.the.<a.href="#Zig-Standar |
| 15d00 | 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 79 3c | d-Library">Zig.Standard.Library< |
| 15d20 | 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 70 6f | /a>.........as.its.main.entry.po |
| 15d40 | 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 73 70 | int..During.the.build,.<code><sp |
| 15d60 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 3c 2f 63 | an.class="tok-kw">test</span></c |
| 15d80 | 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 20 20 | ode>.declarations.found.while... |
| 15da0 | 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 46 69 6c 65 2d 61 6e 64 2d 44 65 63 6c 61 72 61 | ......<a.href="#File-and-Declara |
| 15dc0 | 74 69 6f 6e 2d 44 69 73 63 6f 76 65 72 79 22 3e 72 65 73 6f 6c 76 69 6e 67 3c 2f 61 3e 20 74 68 | tion-Discovery">resolving</a>.th |
| 15de0 | 65 20 67 69 76 65 6e 20 5a 69 67 20 73 6f 75 72 63 65 20 66 69 6c 65 20 61 72 65 20 69 6e 63 6c | e.given.Zig.source.file.are.incl |
| 15e00 | 75 64 65 64 20 66 6f 72 20 74 68 65 20 64 65 66 61 75 6c 74 20 74 65 73 74 20 72 75 6e 6e 65 72 | uded.for.the.default.test.runner |
| 15e20 | 0a 20 20 20 20 20 20 20 20 74 6f 20 72 75 6e 20 61 6e 64 20 72 65 70 6f 72 74 20 6f 6e 2e 0a 20 | .........to.run.and.report.on... |
| 15e40 | 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 61 73 69 64 65 3e 0a 20 20 20 20 20 20 20 20 | .....</p>.......<aside>......... |
| 15e60 | 54 68 69 73 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 20 64 69 73 63 75 73 73 65 73 20 74 68 65 | This.documentation.discusses.the |
| 15e80 | 20 66 65 61 74 75 72 65 73 20 6f 66 20 74 68 65 20 64 65 66 61 75 6c 74 20 74 65 73 74 20 72 75 | .features.of.the.default.test.ru |
| 15ea0 | 6e 6e 65 72 20 61 73 20 70 72 6f 76 69 64 65 64 20 62 79 20 74 68 65 20 5a 69 67 20 53 74 61 6e | nner.as.provided.by.the.Zig.Stan |
| 15ec0 | 64 61 72 64 20 4c 69 62 72 61 72 79 2e 0a 20 20 20 20 20 20 20 20 49 74 73 20 73 6f 75 72 63 65 | dard.Library..........Its.source |
| 15ee0 | 20 63 6f 64 65 20 69 73 20 6c 6f 63 61 74 65 64 20 69 6e 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d | .code.is.located.in.<code.class= |
| 15f00 | 22 66 69 6c 65 22 3e 6c 69 62 2f 63 6f 6d 70 69 6c 65 72 2f 74 65 73 74 5f 72 75 6e 6e 65 72 2e | "file">lib/compiler/test_runner. |
| 15f20 | 7a 69 67 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 61 73 69 64 65 3e 0a 20 20 20 20 20 | zig</code>........</aside>...... |
| 15f40 | 20 3c 70 3e 0a 20 20 20 20 20 20 20 20 54 68 65 20 73 68 65 6c 6c 20 6f 75 74 70 75 74 20 73 68 | .<p>.........The.shell.output.sh |
| 15f60 | 6f 77 6e 20 61 62 6f 76 65 20 64 69 73 70 6c 61 79 73 20 74 77 6f 20 6c 69 6e 65 73 20 61 66 74 | own.above.displays.two.lines.aft |
| 15f80 | 65 72 20 74 68 65 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 3c 2f 6b 62 64 3e 20 63 6f 6d 6d 61 | er.the.<kbd>zig.test</kbd>.comma |
| 15fa0 | 6e 64 2e 20 54 68 65 73 65 20 6c 69 6e 65 73 20 61 72 65 0a 20 20 20 20 20 20 20 20 70 72 69 6e | nd..These.lines.are.........prin |
| 15fc0 | 74 65 64 20 74 6f 20 73 74 61 6e 64 61 72 64 20 65 72 72 6f 72 20 62 79 20 74 68 65 20 64 65 66 | ted.to.standard.error.by.the.def |
| 15fe0 | 61 75 6c 74 20 74 65 73 74 20 72 75 6e 6e 65 72 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 | ault.test.runner:.......</p>.... |
| 16000 | 20 20 20 3c 64 6c 3e 0a 20 20 20 20 20 20 20 20 3c 64 74 3e 3c 73 61 6d 70 3e 31 2f 32 20 74 65 | ...<dl>.........<dt><samp>1/2.te |
| 16020 | 73 74 69 6e 67 5f 69 6e 74 72 6f 64 75 63 74 69 6f 6e 2e 74 65 73 74 2e 65 78 70 65 63 74 20 61 | sting_introduction.test.expect.a |
| 16040 | 64 64 4f 6e 65 20 61 64 64 73 20 6f 6e 65 20 74 6f 20 34 31 2e 2e 2e 3c 2f 73 61 6d 70 3e 3c 2f | ddOne.adds.one.to.41...</samp></ |
| 16060 | 64 74 3e 0a 20 20 20 20 20 20 20 20 3c 64 64 3e 4c 69 6e 65 73 20 6c 69 6b 65 20 74 68 69 73 20 | dt>.........<dd>Lines.like.this. |
| 16080 | 69 6e 64 69 63 61 74 65 20 77 68 69 63 68 20 74 65 73 74 2c 20 6f 75 74 20 6f 66 20 74 68 65 20 | indicate.which.test,.out.of.the. |
| 160a0 | 74 6f 74 61 6c 20 6e 75 6d 62 65 72 20 6f 66 20 74 65 73 74 73 2c 20 69 73 20 62 65 69 6e 67 20 | total.number.of.tests,.is.being. |
| 160c0 | 72 75 6e 2e 0a 20 20 20 20 20 20 20 20 20 20 49 6e 20 74 68 69 73 20 63 61 73 65 2c 20 3c 73 61 | run............In.this.case,.<sa |
| 160e0 | 6d 70 3e 31 2f 32 3c 2f 73 61 6d 70 3e 20 69 6e 64 69 63 61 74 65 73 20 74 68 61 74 20 74 68 65 | mp>1/2</samp>.indicates.that.the |
| 16100 | 20 66 69 72 73 74 20 74 65 73 74 2c 20 6f 75 74 20 6f 66 20 61 20 74 6f 74 61 6c 20 6f 66 20 74 | .first.test,.out.of.a.total.of.t |
| 16120 | 77 6f 20 74 65 73 74 73 2c 0a 20 20 20 20 20 20 20 20 20 20 69 73 20 62 65 69 6e 67 20 72 75 6e | wo.tests,...........is.being.run |
| 16140 | 2e 20 4e 6f 74 65 20 74 68 61 74 2c 20 77 68 65 6e 20 74 68 65 20 74 65 73 74 20 72 75 6e 6e 65 | ..Note.that,.when.the.test.runne |
| 16160 | 72 20 70 72 6f 67 72 61 6d 27 73 20 73 74 61 6e 64 61 72 64 20 65 72 72 6f 72 20 69 73 20 6f 75 | r.program's.standard.error.is.ou |
| 16180 | 74 70 75 74 0a 20 20 20 20 20 20 20 20 20 20 74 6f 20 74 68 65 20 74 65 72 6d 69 6e 61 6c 2c 20 | tput...........to.the.terminal,. |
| 161a0 | 74 68 65 73 65 20 6c 69 6e 65 73 20 61 72 65 20 63 6c 65 61 72 65 64 20 77 68 65 6e 20 61 20 74 | these.lines.are.cleared.when.a.t |
| 161c0 | 65 73 74 20 73 75 63 63 65 65 64 73 2e 0a 20 20 20 20 20 20 20 20 3c 2f 64 64 3e 0a 20 20 20 20 | est.succeeds..........</dd>..... |
| 161e0 | 20 20 20 20 3c 64 74 3e 3c 73 61 6d 70 3e 32 2f 32 20 74 65 73 74 69 6e 67 5f 69 6e 74 72 6f 64 | ....<dt><samp>2/2.testing_introd |
| 16200 | 75 63 74 69 6f 6e 2e 64 65 63 6c 74 65 73 74 2e 61 64 64 4f 6e 65 2e 2e 2e 3c 2f 73 61 6d 70 3e | uction.decltest.addOne...</samp> |
| 16220 | 3c 2f 64 74 3e 0a 20 20 20 20 20 20 20 20 3c 64 64 3e 57 68 65 6e 20 74 68 65 20 74 65 73 74 20 | </dt>.........<dd>When.the.test. |
| 16240 | 6e 61 6d 65 20 69 73 20 61 6e 20 69 64 65 6e 74 69 66 69 65 72 2c 20 74 68 65 20 64 65 66 61 75 | name.is.an.identifier,.the.defau |
| 16260 | 6c 74 20 74 65 73 74 20 72 75 6e 6e 65 72 20 75 73 65 73 20 74 68 65 20 74 65 78 74 0a 20 20 20 | lt.test.runner.uses.the.text.... |
| 16280 | 20 20 20 20 20 20 20 64 65 63 6c 74 65 73 74 20 69 6e 73 74 65 61 64 20 6f 66 20 74 65 73 74 2e | .......decltest.instead.of.test. |
| 162a0 | 0a 20 20 20 20 20 20 20 20 3c 2f 64 64 3e 0a 20 20 20 20 20 20 20 20 3c 64 74 3e 3c 73 61 6d 70 | .........</dd>.........<dt><samp |
| 162c0 | 3e 41 6c 6c 20 32 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 3c 2f 73 61 6d 70 3e 3c 2f 64 74 3e | >All.2.tests.passed.</samp></dt> |
| 162e0 | 0a 20 20 20 20 20 20 20 20 3c 64 64 3e 54 68 69 73 20 6c 69 6e 65 20 69 6e 64 69 63 61 74 65 73 | .........<dd>This.line.indicates |
| 16300 | 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 20 74 68 61 74 20 | .the.total.number.of.tests.that. |
| 16320 | 68 61 76 65 20 70 61 73 73 65 64 2e 3c 2f 64 64 3e 0a 20 20 20 20 20 20 3c 2f 64 6c 3e 0a 20 20 | have.passed.</dd>.......</dl>... |
| 16340 | 20 20 20 20 3c 68 33 20 69 64 3d 22 54 65 73 74 2d 44 65 63 6c 61 72 61 74 69 6f 6e 73 22 3e 3c | ....<h3.id="Test-Declarations">< |
| 16360 | 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 54 65 73 74 2d 44 65 63 6c 61 72 61 74 69 6f 6e 73 22 3e | a.href="#toc-Test-Declarations"> |
| 16380 | 54 65 73 74 20 44 65 63 6c 61 72 61 74 69 6f 6e 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 | Test.Declarations</a>.<a.class=" |
| 163a0 | 68 64 72 22 20 68 72 65 66 3d 22 23 54 65 73 74 2d 44 65 63 6c 61 72 61 74 69 6f 6e 73 22 3e c2 | hdr".href="#Test-Declarations">. |
| 163c0 | a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 20 20 54 65 | .</a></h3>........<p>.........Te |
| 163e0 | 73 74 20 64 65 63 6c 61 72 61 74 69 6f 6e 73 20 63 6f 6e 74 61 69 6e 20 74 68 65 20 3c 61 20 68 | st.declarations.contain.the.<a.h |
| 16400 | 72 65 66 3d 22 23 4b 65 79 77 6f 72 64 2d 52 65 66 65 72 65 6e 63 65 22 3e 6b 65 79 77 6f 72 64 | ref="#Keyword-Reference">keyword |
| 16420 | 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 6b 77 22 3e | </a>.<code><span.class="tok-kw"> |
| 16440 | 74 65 73 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 66 6f 6c 6c 6f 77 65 64 20 62 79 20 | test</span></code>,.followed.by. |
| 16460 | 61 6e 0a 20 20 20 20 20 20 20 20 6f 70 74 69 6f 6e 61 6c 20 6e 61 6d 65 20 77 72 69 74 74 65 6e | an.........optional.name.written |
| 16480 | 20 61 73 20 61 20 3c 61 20 68 72 65 66 3d 22 23 53 74 72 69 6e 67 2d 4c 69 74 65 72 61 6c 73 2d | .as.a.<a.href="#String-Literals- |
| 164a0 | 61 6e 64 2d 55 6e 69 63 6f 64 65 2d 43 6f 64 65 2d 50 6f 69 6e 74 2d 4c 69 74 65 72 61 6c 73 22 | and-Unicode-Code-Point-Literals" |
| 164c0 | 3e 73 74 72 69 6e 67 20 6c 69 74 65 72 61 6c 3c 2f 61 3e 20 6f 72 20 61 6e 0a 20 20 20 20 20 20 | >string.literal</a>.or.an....... |
| 164e0 | 20 20 3c 61 20 68 72 65 66 3d 22 23 49 64 65 6e 74 69 66 69 65 72 73 22 3e 69 64 65 6e 74 69 66 | ..<a.href="#Identifiers">identif |
| 16500 | 69 65 72 3c 2f 61 3e 2c 20 66 6f 6c 6c 6f 77 65 64 20 62 79 20 61 20 3c 61 20 68 72 65 66 3d 22 | ier</a>,.followed.by.a.<a.href=" |
| 16520 | 23 42 6c 6f 63 6b 73 22 3e 62 6c 6f 63 6b 3c 2f 61 3e 20 63 6f 6e 74 61 69 6e 69 6e 67 20 61 6e | #Blocks">block</a>.containing.an |
| 16540 | 79 20 76 61 6c 69 64 20 5a 69 67 20 63 6f 64 65 20 74 68 61 74 0a 20 20 20 20 20 20 20 20 69 73 | y.valid.Zig.code.that.........is |
| 16560 | 20 61 6c 6c 6f 77 65 64 20 69 6e 20 61 20 3c 61 20 68 72 65 66 3d 22 23 46 75 6e 63 74 69 6f 6e | .allowed.in.a.<a.href="#Function |
| 16580 | 73 22 3e 66 75 6e 63 74 69 6f 6e 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 | s">function</a>........</p>..... |
| 165a0 | 20 20 3c 70 3e 4e 6f 6e 2d 6e 61 6d 65 64 20 74 65 73 74 20 62 6c 6f 63 6b 73 20 61 6c 77 61 79 | ..<p>Non-named.test.blocks.alway |
| 165c0 | 73 20 72 75 6e 20 64 75 72 69 6e 67 20 74 65 73 74 20 62 75 69 6c 64 73 20 61 6e 64 20 61 72 65 | s.run.during.test.builds.and.are |
| 165e0 | 20 65 78 65 6d 70 74 20 66 72 6f 6d 0a 20 20 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 53 | .exempt.from.........<a.href="#S |
| 16600 | 6b 69 70 2d 54 65 73 74 73 22 3e 53 6b 69 70 20 54 65 73 74 73 3c 2f 61 3e 2e 3c 2f 70 3e 0a 20 | kip-Tests">Skip.Tests</a>.</p>.. |
| 16620 | 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 |
| 16640 | 6e 73 20 61 72 65 20 73 69 6d 69 6c 61 72 20 74 6f 20 3c 61 20 68 72 65 66 3d 22 23 46 75 6e 63 | ns.are.similar.to.<a.href="#Func |
| 16660 | 74 69 6f 6e 73 22 3e 46 75 6e 63 74 69 6f 6e 73 3c 2f 61 3e 3a 20 74 68 65 79 20 68 61 76 65 20 | tions">Functions</a>:.they.have. |
| 16680 | 61 20 72 65 74 75 72 6e 20 74 79 70 65 20 61 6e 64 20 61 20 62 6c 6f 63 6b 20 6f 66 20 63 6f 64 | a.return.type.and.a.block.of.cod |
| 166a0 | 65 2e 20 54 68 65 20 69 6d 70 6c 69 63 69 74 0a 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 74 | e..The.implicit.........return.t |
| 166c0 | 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 6b 77 | ype.of.<code><span.class="tok-kw |
| 166e0 | 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 69 73 20 74 68 65 20 3c 61 20 68 | ">test</span></code>.is.the.<a.h |
| 16700 | 72 65 66 3d 22 23 45 72 72 6f 72 2d 55 6e 69 6f 6e 2d 54 79 70 65 22 3e 45 72 72 6f 72 20 55 6e | ref="#Error-Union-Type">Error.Un |
| 16720 | 69 6f 6e 20 54 79 70 65 3c 2f 61 3e 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ion.Type</a>.<code><span.class=" |
| 16740 | 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. |
| 16760 | 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 |
| 16780 | 64 65 3e 2c 0a 20 20 20 20 20 20 20 20 61 6e 64 20 69 74 20 63 61 6e 6e 6f 74 20 62 65 20 63 68 | de>,.........and.it.cannot.be.ch |
| 167a0 | 61 6e 67 65 64 2e 20 57 68 65 6e 20 61 20 5a 69 67 20 73 6f 75 72 63 65 20 66 69 6c 65 20 69 73 | anged..When.a.Zig.source.file.is |
| 167c0 | 20 6e 6f 74 20 62 75 69 6c 74 20 75 73 69 6e 67 20 74 68 65 20 3c 6b 62 64 3e 7a 69 67 20 74 65 | .not.built.using.the.<kbd>zig.te |
| 167e0 | 73 74 3c 2f 6b 62 64 3e 20 74 6f 6f 6c 2c 20 74 68 65 20 74 65 73 74 0a 20 20 20 20 20 20 20 20 | st</kbd>.tool,.the.test......... |
| 16800 | 64 65 63 6c 61 72 61 74 69 6f 6e 73 20 61 72 65 20 6f 6d 69 74 74 65 64 20 66 72 6f 6d 20 74 68 | declarations.are.omitted.from.th |
| 16820 | 65 20 62 75 69 6c 64 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 | e.build........</p>.......<p>... |
| 16840 | 20 20 20 20 20 20 54 65 73 74 20 64 65 63 6c 61 72 61 74 69 6f 6e 73 20 63 61 6e 20 62 65 20 77 | ......Test.declarations.can.be.w |
| 16860 | 72 69 74 74 65 6e 20 69 6e 20 74 68 65 20 73 61 6d 65 20 66 69 6c 65 2c 20 77 68 65 72 65 20 63 | ritten.in.the.same.file,.where.c |
| 16880 | 6f 64 65 20 75 6e 64 65 72 20 74 65 73 74 20 69 73 20 77 72 69 74 74 65 6e 2c 20 6f 72 20 69 6e | ode.under.test.is.written,.or.in |
| 168a0 | 20 61 20 73 65 70 61 72 61 74 65 20 5a 69 67 20 73 6f 75 72 63 65 20 66 69 6c 65 2e 0a 20 20 20 | .a.separate.Zig.source.file..... |
| 168c0 | 20 20 20 20 20 53 69 6e 63 65 20 74 65 73 74 20 64 65 63 6c 61 72 61 74 69 6f 6e 73 20 61 72 65 | .....Since.test.declarations.are |
| 168e0 | 20 74 6f 70 2d 6c 65 76 65 6c 20 64 65 63 6c 61 72 61 74 69 6f 6e 73 2c 20 74 68 65 79 20 61 72 | .top-level.declarations,.they.ar |
| 16900 | 65 20 6f 72 64 65 72 2d 69 6e 64 65 70 65 6e 64 65 6e 74 20 61 6e 64 20 63 61 6e 0a 20 20 20 20 | e.order-independent.and.can..... |
| 16920 | 20 20 20 20 62 65 20 77 72 69 74 74 65 6e 20 62 65 66 6f 72 65 20 6f 72 20 61 66 74 65 72 20 74 | ....be.written.before.or.after.t |
| 16940 | 68 65 20 63 6f 64 65 20 75 6e 64 65 72 20 74 65 73 74 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 | he.code.under.test........</p>.. |
| 16960 | 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 |
| 16980 | 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 65 74 22 3e 54 68 | .href="#The-Global-Error-Set">Th |
| 169a0 | 65 20 47 6c 6f 62 61 6c 20 45 72 72 6f 72 20 53 65 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e | e.Global.Error.Set</a></li>.<li> |
| 169c0 | 3c 61 20 68 72 65 66 3d 22 23 47 72 61 6d 6d 61 72 22 3e 47 72 61 6d 6d 61 72 3c 2f 61 3e 3c 2f | <a.href="#Grammar">Grammar</a></ |
| 169e0 | 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 3c 68 34 20 69 64 3d 22 44 6f 63 74 65 73 74 | li>.</ul>........<h4.id="Doctest |
| 16a00 | 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 44 6f 63 74 65 73 74 73 22 3e 44 6f 63 74 65 | s"><a.href="#toc-Doctests">Docte |
| 16a20 | 73 74 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 44 6f | sts</a>.<a.class="hdr".href="#Do |
| 16a40 | 63 74 65 73 74 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 34 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 | ctests">..</a></h4>........<p>.. |
| 16a60 | 20 20 20 20 20 20 20 54 65 73 74 20 64 65 63 6c 61 72 61 74 69 6f 6e 73 20 6e 61 6d 65 64 20 75 | .......Test.declarations.named.u |
| 16a80 | 73 69 6e 67 20 61 6e 20 69 64 65 6e 74 69 66 69 65 72 20 61 72 65 20 3c 65 6d 3e 64 6f 63 74 65 | sing.an.identifier.are.<em>docte |
| 16aa0 | 73 74 73 3c 2f 65 6d 3e 2e 20 54 68 65 20 69 64 65 6e 74 69 66 69 65 72 20 6d 75 73 74 20 72 65 | sts</em>..The.identifier.must.re |
| 16ac0 | 66 65 72 20 74 6f 20 61 6e 6f 74 68 65 72 20 64 65 63 6c 61 72 61 74 69 6f 6e 20 69 6e 0a 20 20 | fer.to.another.declaration.in... |
| 16ae0 | 20 20 20 20 20 20 73 63 6f 70 65 2e 20 41 20 64 6f 63 74 65 73 74 2c 20 6c 69 6b 65 20 61 20 3c | ......scope..A.doctest,.like.a.< |
| 16b00 | 61 20 68 72 65 66 3d 22 23 44 6f 63 2d 43 6f 6d 6d 65 6e 74 73 22 3e 64 6f 63 20 63 6f 6d 6d 65 | a.href="#Doc-Comments">doc.comme |
| 16b20 | 6e 74 3c 2f 61 3e 2c 20 73 65 72 76 65 73 20 61 73 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 20 | nt</a>,.serves.as.documentation. |
| 16b40 | 66 6f 72 20 74 68 65 20 61 73 73 6f 63 69 61 74 65 64 20 64 65 63 6c 61 72 61 74 69 6f 6e 2c 20 | for.the.associated.declaration,. |
| 16b60 | 61 6e 64 0a 20 20 20 20 20 20 20 20 77 69 6c 6c 20 61 70 70 65 61 72 20 69 6e 20 74 68 65 20 67 | and.........will.appear.in.the.g |
| 16b80 | 65 6e 65 72 61 74 65 64 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 20 66 6f 72 20 74 68 65 20 64 | enerated.documentation.for.the.d |
| 16ba0 | 65 63 6c 61 72 61 74 69 6f 6e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e | eclaration........</p>.......<p> |
| 16bc0 | 0a 20 20 20 20 20 20 20 20 41 6e 20 65 66 66 65 63 74 69 76 65 20 64 6f 63 74 65 73 74 20 73 68 | .........An.effective.doctest.sh |
| 16be0 | 6f 75 6c 64 20 62 65 20 73 65 6c 66 2d 63 6f 6e 74 61 69 6e 65 64 20 61 6e 64 20 66 6f 63 75 73 | ould.be.self-contained.and.focus |
| 16c00 | 65 64 20 6f 6e 20 74 68 65 20 64 65 63 6c 61 72 61 74 69 6f 6e 20 62 65 69 6e 67 20 74 65 73 74 | ed.on.the.declaration.being.test |
| 16c20 | 65 64 2c 20 61 6e 73 77 65 72 69 6e 67 20 71 75 65 73 74 69 6f 6e 73 20 61 20 6e 65 77 0a 20 20 | ed,.answering.questions.a.new... |
| 16c40 | 20 20 20 20 20 20 75 73 65 72 20 6d 69 67 68 74 20 68 61 76 65 20 61 62 6f 75 74 20 69 74 73 20 | ......user.might.have.about.its. |
| 16c60 | 69 6e 74 65 72 66 61 63 65 20 6f 72 20 69 6e 74 65 6e 64 65 64 20 75 73 61 67 65 2c 20 77 68 69 | interface.or.intended.usage,.whi |
| 16c80 | 6c 65 20 61 76 6f 69 64 69 6e 67 20 75 6e 6e 65 63 65 73 73 61 72 79 20 6f 72 20 63 6f 6e 66 75 | le.avoiding.unnecessary.or.confu |
| 16ca0 | 73 69 6e 67 20 64 65 74 61 69 6c 73 2e 20 41 20 64 6f 63 74 65 73 74 20 69 73 20 6e 6f 74 0a 20 | sing.details..A.doctest.is.not.. |
| 16cc0 | 20 20 20 20 20 20 20 61 20 73 75 62 73 74 69 74 75 74 65 20 66 6f 72 20 61 20 64 6f 63 20 63 6f | .......a.substitute.for.a.doc.co |
| 16ce0 | 6d 6d 65 6e 74 2c 20 62 75 74 20 72 61 74 68 65 72 20 61 20 73 75 70 70 6c 65 6d 65 6e 74 20 61 | mment,.but.rather.a.supplement.a |
| 16d00 | 6e 64 20 63 6f 6d 70 61 6e 69 6f 6e 20 70 72 6f 76 69 64 69 6e 67 20 61 20 74 65 73 74 61 62 6c | nd.companion.providing.a.testabl |
| 16d20 | 65 2c 20 63 6f 64 65 2d 64 72 69 76 65 6e 20 65 78 61 6d 70 6c 65 2c 20 76 65 72 69 66 69 65 64 | e,.code-driven.example,.verified |
| 16d40 | 0a 20 20 20 20 20 20 20 20 62 79 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 3c 2f 6b 62 64 3e 2e | .........by.<kbd>zig.test</kbd>. |
| 16d60 | 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 | .......</p>..................... |
| 16d80 | 3c 68 33 20 69 64 3d 22 54 65 73 74 2d 46 61 69 6c 75 72 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 | <h3.id="Test-Failure"><a.href="# |
| 16da0 | 74 6f 63 2d 54 65 73 74 2d 46 61 69 6c 75 72 65 22 3e 54 65 73 74 20 46 61 69 6c 75 72 65 3c 2f | toc-Test-Failure">Test.Failure</ |
| 16dc0 | 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 46 61 | a>.<a.class="hdr".href="#Test-Fa |
| 16de0 | 69 6c 75 72 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 | ilure">..</a></h3>........<p>... |
| 16e00 | 20 20 20 20 20 20 54 68 65 20 64 65 66 61 75 6c 74 20 74 65 73 74 20 72 75 6e 6e 65 72 20 63 68 | ......The.default.test.runner.ch |
| 16e20 | 65 63 6b 73 20 66 6f 72 20 61 6e 20 3c 61 20 68 72 65 66 3d 22 23 45 72 72 6f 72 73 22 3e 65 72 | ecks.for.an.<a.href="#Errors">er |
| 16e40 | 72 6f 72 3c 2f 61 3e 20 72 65 74 75 72 6e 65 64 20 66 72 6f 6d 20 61 20 74 65 73 74 2e 0a 20 20 | ror</a>.returned.from.a.test.... |
| 16e60 | 20 20 20 20 20 20 57 68 65 6e 20 61 20 74 65 73 74 20 72 65 74 75 72 6e 73 20 61 6e 20 65 72 72 | ......When.a.test.returns.an.err |
| 16e80 | 6f 72 2c 20 74 68 65 20 74 65 73 74 20 69 73 20 63 6f 6e 73 69 64 65 72 65 64 20 61 20 66 61 69 | or,.the.test.is.considered.a.fai |
| 16ea0 | 6c 75 72 65 20 61 6e 64 20 69 74 73 20 3c 61 20 68 72 65 66 3d 22 23 45 72 72 6f 72 2d 52 65 74 | lure.and.its.<a.href="#Error-Ret |
| 16ec0 | 75 72 6e 2d 54 72 61 63 65 73 22 3e 65 72 72 6f 72 20 72 65 74 75 72 6e 20 74 72 61 63 65 3c 2f | urn-Traces">error.return.trace</ |
| 16ee0 | 61 3e 0a 20 20 20 20 20 20 20 20 69 73 20 6f 75 74 70 75 74 20 74 6f 20 73 74 61 6e 64 61 72 64 | a>.........is.output.to.standard |
| 16f00 | 20 65 72 72 6f 72 2e 20 54 68 65 20 74 6f 74 61 6c 20 6e 75 6d 62 65 72 20 6f 66 20 66 61 69 6c | .error..The.total.number.of.fail |
| 16f20 | 75 72 65 73 20 77 69 6c 6c 20 62 65 20 72 65 70 6f 72 74 65 64 20 61 66 74 65 72 20 61 6c 6c 20 | ures.will.be.reported.after.all. |
| 16f40 | 74 65 73 74 73 20 68 61 76 65 20 72 75 6e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 | tests.have.run........</p>...... |
| 16f60 | 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- |
| 16f80 | 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_ |
| 16fa0 | 66 61 69 6c 75 72 65 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c | failure.zig</cite></figcaption>< |
| 16fc0 | 70 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 |
| 16fe0 | 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 |
| 17000 | 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 |
| 17020 | 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" |
| 17040 | 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"> |
| 17060 | 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 |
| 17080 | 22 3e 26 71 75 6f 74 3b 65 78 70 65 63 74 20 74 68 69 73 20 74 6f 20 66 61 69 6c 26 71 75 6f 74 | ">"expect.this.to.fail" |
| 170a0 | 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- |
| 170c0 | 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 |
| 170e0 | 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f | t(<span.class="tok-null">false</ |
| 17100 | 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 3e | span>);.}..<span.class="tok-kw"> |
| 17120 | 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 |
| 17140 | 22 3e 26 71 75 6f 74 3b 65 78 70 65 63 74 20 74 68 69 73 20 74 6f 20 73 75 63 63 65 65 64 26 71 | ">"expect.this.to.succeed&q |
| 17160 | 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 |
| 17180 | 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 73 74 64 2e 74 65 73 74 69 6e 67 2e 65 78 | ok-kw">try</span>.std.testing.ex |
| 171a0 | 70 65 63 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 | pect(<span.class="tok-null">true |
| 171c0 | 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 |
| 171e0 | 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 |
| 17200 | 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 |
| 17220 | 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 66 61 69 6c | amp>$.<kbd>zig.test.testing_fail |
| 17240 | 75 72 65 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 32 20 74 65 73 74 69 6e 67 5f 66 61 69 6c 75 72 | ure.zig</kbd>.1/2.testing_failur |
| 17260 | 65 2e 74 65 73 74 2e 65 78 70 65 63 74 20 74 68 69 73 20 74 6f 20 66 61 69 6c 2e 2e 2e 46 41 49 | e.test.expect.this.to.fail...FAI |
| 17280 | 4c 20 28 54 65 73 74 55 6e 65 78 70 65 63 74 65 64 52 65 73 75 6c 74 29 0a 3c 73 70 61 6e 20 63 | L.(TestUnexpectedResult).<span.c |
| 172a0 | 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 | lass="sgr-1m">/home/andy/dev/zig |
| 172c0 | 2f 6c 69 62 2f 73 74 64 2f 74 65 73 74 69 6e 67 2e 7a 69 67 3a 36 30 37 3a 31 34 3c 2f 73 70 61 | /lib/std/testing.zig:607:14</spa |
| 172e0 | 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 32 66 30 | n>:.<span.class="sgr-2m">0x102f0 |
| 17300 | 31 39 20 69 6e 20 65 78 70 65 63 74 20 28 73 74 64 2e 7a 69 67 29 3c 2f 73 70 61 6e 3e 0a 20 20 | 19.in.expect.(std.zig)</span>... |
| 17320 | 20 20 69 66 20 28 21 6f 6b 29 20 72 65 74 75 72 6e 20 65 72 72 6f 72 2e 54 65 73 74 55 6e 65 78 | ..if.(!ok).return.error.TestUnex |
| 17340 | 70 65 63 74 65 64 52 65 73 75 6c 74 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e | pectedResult;..............<span |
| 17360 | 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. |
| 17380 | 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 | class="sgr-1m">/home/andy/dev/zi |
| 173a0 | 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 69 6e 67 5f 66 61 69 6c 75 72 65 2e 7a 69 | g/doc/langref/testing_failure.zi |
| 173c0 | 67 3a 34 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 | g:4:5</span>:.<span.class="sgr-2 |
| 173e0 | 6d 22 3e 30 78 31 30 32 66 30 37 38 20 69 6e 20 74 65 73 74 2e 65 78 70 65 63 74 20 74 68 69 73 | m">0x102f078.in.test.expect.this |
| 17400 | 20 74 6f 20 66 61 69 6c 20 28 74 65 73 74 69 6e 67 5f 66 61 69 6c 75 72 65 2e 7a 69 67 29 3c 2f | .to.fail.(testing_failure.zig)</ |
| 17420 | 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 |
| 17440 | 28 66 61 6c 73 65 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 | (false);.....<span.class="sgr-32 |
| 17460 | 6d 22 3e 5e 3c 2f 73 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 | m">^</span>.2/2.testing_failure. |
| 17480 | 74 65 73 74 2e 65 78 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 | test.expect.this.to.succeed...OK |
| 174a0 | 0a 31 20 70 61 73 73 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 | .1.passed;.0.skipped;.1.failed.. |
| 174c0 | 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 6d 61 6e | error:.the.following.test.comman |
| 174e0 | 64 20 66 61 69 6c 65 64 20 77 69 74 68 20 65 78 69 74 20 63 6f 64 65 20 31 3a 0a 2f 68 6f 6d 65 | d.failed.with.exit.code.1:./home |
| 17500 | 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 2e 7a 69 67 2d 63 61 63 68 65 2f 6f 2f 38 62 61 36 30 | /andy/dev/zig/.zig-cache/o/8ba60 |
| 17520 | 34 30 62 66 61 33 66 65 35 62 35 34 32 37 33 30 30 39 66 36 66 38 38 30 39 34 64 2f 74 65 73 74 | 40bfa3fe5b54273009f6f88094d/test |
| 17540 | 20 2d 2d 73 65 65 64 3d 30 78 37 61 38 62 65 62 66 37 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e | .--seed=0x7a8bebf7.</samp></pre> |
| 17560 | 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=" |
| 17580 | 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 2d 53 6b 69 70 2d 54 | Skip-Tests"><a.href="#toc-Skip-T |
| 175a0 | 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 6c 61 73 73 3d 22 68 | ests">Skip.Tests</a>.<a.class="h |
| 175c0 | 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 3c 2f 61 3e 3c 2f 68 | dr".href="#Skip-Tests">..</a></h |
| 175e0 | 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 20 77 61 79 20 74 6f | 3>........<p>.........One.way.to |
| 17600 | 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 74 68 65 6d 20 6f 75 | .skip.tests.is.to.filter.them.ou |
| 17620 | 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 65 73 74 3c 2f 6b 62 | t.by.using.the.<kbd>zig.test</kb |
| 17640 | 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 0a 20 20 20 20 20 20 | d>.command.line.parameter....... |
| 17660 | 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 74 5d 3c 2f 6b 62 64 | ..<kbd>--test-filter.[text]</kbd |
| 17680 | 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 69 6c 64 20 6f 6e 6c | >..This.makes.the.test.build.onl |
| 176a0 | 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 65 20 63 6f 6e 74 61 | y.include.tests.whose.name.conta |
| 176c0 | 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 66 69 6c 74 65 72 20 | ins.the.........supplied.filter. |
| 176e0 | 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 20 74 65 73 74 73 20 | text..Note.that.non-named.tests. |
| 17700 | 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 68 65 20 3c 6b 62 64 | are.run.even.when.using.the.<kbd |
| 17720 | 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 64 3e 0a 20 20 20 20 | >--test-filter.[text]</kbd>..... |
| 17740 | 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 72 2e 0a 20 20 20 20 | ....command.line.parameter...... |
| 17760 | 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 20 70 72 6f 67 | ..</p>.......<p>.........To.prog |
| 17780 | 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 20 6d 61 6b 65 20 61 | rammatically.skip.a.test,.make.a |
| 177a0 | 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 65 73 74 | .<code><span.class="tok-kw">test |
| 177c0 | 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 20 65 72 72 6f 72 0a | </span></code>.return.the.error. |
| 177e0 | 20 20 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | ........<code><span.class="tok-k |
| 17800 | 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 53 6b 69 70 5a 69 67 54 65 73 74 3c 2f 63 6f 64 | w">error</span>.SkipZigTest</cod |
| 17820 | 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 75 6e 6e 65 72 20 77 | e>.and.the.default.test.runner.w |
| 17840 | 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 62 65 69 6e 67 20 73 | ill.consider.the.test.as.being.s |
| 17860 | 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 20 6e 75 6d 62 65 72 | kipped..........The.total.number |
| 17880 | 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 20 72 65 70 6f 72 74 | .of.skipped.tests.will.be.report |
| 178a0 | 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 75 6e 2e 0a 20 20 20 | ed.after.all.tests.have.run..... |
| 178c0 | 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 |
| 178e0 | 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 |
| 17900 | 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 74 65 3e 3c 2f 66 69 | ile">testing_skip.zig</cite></fi |
| 17920 | 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= |
| 17940 | 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 |
| 17960 | 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 74 68 69 73 20 77 69 6c 6c 20 62 65 20 73 6b | ="tok-str">"this.will.be.sk |
| 17980 | 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 3c 73 70 61 6e 20 63 | ipped"</span>.{.....<span.c |
| 179a0 | 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 |
| 179c0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 53 6b | n.class="tok-kw">error</span>.Sk |
| 179e0 | 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 3c 2f 66 69 67 75 72 | ipZigTest;.}</code></pre></figur |
| 17a00 | 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 |
| 17a20 | 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>< |
| 17a40 | 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 73 6b 69 | samp>$.<kbd>zig.test.testing_ski |
| 17a60 | 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 6b 69 70 2e 74 65 73 | p.zig</kbd>.1/1.testing_skip.tes |
| 17a80 | 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 53 4b 49 50 0a 30 20 | t.this.will.be.skipped...SKIP.0. |
| 17aa0 | 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 65 64 2e 0a 3c 2f 73 | passed;.1.skipped;.0.failed..</s |
| 17ac0 | 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>............. |
| 17ae0 | 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 4c 65 61 6b 73 22 3e | ...<h3.id="Report-Memory-Leaks"> |
| 17b00 | 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 72 79 2d 4c 65 61 6b | <a.href="#toc-Report-Memory-Leak |
| 17b20 | 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 20 3c 61 20 63 6c | s">Report.Memory.Leaks</a>.<a.cl |
| 17b40 | 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 65 6d 6f 72 79 2d 4c | ass="hdr".href="#Report-Memory-L |
| 17b60 | 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 3c 70 3e 0a 20 20 20 | eaks">..</a></h3>........<p>.... |
| 17b80 | 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 3c 61 20 68 72 65 66 | .....When.code.allocates.<a.href |
| 17ba0 | 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 6e 67 20 74 68 65 20 | ="#Memory">Memory</a>.using.the. |
| 17bc0 | 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 62 72 61 72 79 22 3e | <a.href="#Zig-Standard-Library"> |
| 17be0 | 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 73 20 74 65 73 74 69 | Zig.Standard.Library</a>'s.testi |
| 17c00 | 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 64 65 3e 73 74 64 2e | ng.allocator,.........<code>std. |
| 17c20 | 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 20 74 68 65 20 64 65 | testing.allocator</code>,.the.de |
| 17c40 | 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 70 6f 72 74 20 61 6e | fault.test.runner.will.report.an |
| 17c60 | 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 66 6f 75 6e 64 20 66 | y.leaks.that.are.........found.f |
| 17c80 | 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 6f 63 61 74 6f 72 3a | rom.using.the.testing.allocator: |
| 17ca0 | 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 |
| 17cc0 | 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 |
| 17ce0 | 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 65 61 6b 2e 7a 69 67 | s="file">testing_detect_leak.zig |
| 17d00 | 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>< |
| 17d20 | 73 70 61 6e 20 63 6c 61 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> |
| 17d40 | 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" |
| 17d60 | 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 |
| 17d80 | 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>);.. |
| 17da0 | 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> |
| 17dc0 | 20 3c 73 70 61 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 74 | .<span.class="tok-str">"det |
| 17de0 | 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 20 20 20 3c 73 70 61 | ect.leak"</span>.{.....<spa |
| 17e00 | 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 69 73 74 | n.class="tok-kw">var</span>.list |
| 17e20 | 20 3d 20 73 74 64 2e 61 72 72 61 79 5f 6c 69 73 74 2e 4d 61 6e 61 67 65 64 28 3c 73 70 61 6e 20 | .=.std.array_list.Managed(<span. |
| 17e40 | 63 6c 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 | class="tok-type">u21</span>).ini |
| 17e60 | 74 28 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 | t(std.testing.allocator);.....<s |
| 17e80 | 70 61 6e 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 | pan.class="tok-comment">//.missi |
| 17ea0 | 6e 67 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 | ng.`defer.list.deinit();`</span> |
| 17ec0 | 0a 20 20 20 20 3c 73 70 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 |
| 17ee0 | 70 61 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 | pan>.list.append(<span.class="to |
| 17f00 | 6b 2d 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 | k-str">'...'</span>);......<span |
| 17f20 | 20 63 6c 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 | .class="tok-kw">try</span>.std.t |
| 17f40 | 65 73 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 | esting.expect(list.items.len.==. |
| 17f60 | 3c 73 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 |
| 17f80 | 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 |
| 17fa0 | 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" |
| 17fc0 | 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>$. |
| 17fe0 | 3c 6b 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 | <kbd>zig.test.testing_detect_lea |
| 18000 | 6b 2e 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 | k.zig</kbd>.1/1.testing_detect_l |
| 18020 | 65 61 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 | eak.test.detect.leak...OK.[gpa]. |
| 18040 | 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 30 35 62 61 37 38 | (err):.memory.address.0x7f05ba78 |
| 18060 | 30 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 | 0000.leaked:.<span.class="sgr-1m |
| 18080 | 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 61 72 72 | ">/home/andy/dev/zig/lib/std/arr |
| 180a0 | 61 79 5f 6c 69 73 74 2e 7a 69 67 3a 34 36 38 3a 36 37 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e | ay_list.zig:468:67</span>:.<span |
| 180c0 | 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 61 61 39 31 65 20 69 6e 20 65 6e 73 | .class="sgr-2m">0x10aa91e.in.ens |
| 180e0 | 75 72 65 54 6f 74 61 6c 43 61 70 61 63 69 74 79 50 72 65 63 69 73 65 20 28 73 74 64 2e 7a 69 67 | ureTotalCapacityPrecise.(std.zig |
| 18100 | 29 3c 2f 73 70 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 | )</span>.................const.n |
| 18120 | 65 77 5f 6d 65 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 | ew_memory.=.try.self.allocator.a |
| 18140 | 6c 69 67 6e 65 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 | lignedAlloc(T,.alignment,.new_ca |
| 18160 | 70 61 63 69 74 79 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | pacity);........................ |
| 18180 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ................................ |
| 181a0 | 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" |
| 181c0 | 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">/ |
| 181e0 | 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 61 72 72 61 79 5f | home/andy/dev/zig/lib/std/array_ |
| 18200 | 6c 69 73 74 2e 7a 69 67 3a 34 34 34 3a 35 31 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c | list.zig:444:51</span>:.<span.cl |
| 18220 | 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 37 63 61 30 34 20 69 6e 20 65 6e 73 75 72 65 | ass="sgr-2m">0x107ca04.in.ensure |
| 18240 | 54 6f 74 61 6c 43 61 70 61 63 69 74 79 20 28 73 74 64 2e 7a 69 67 29 3c 2f 73 70 61 6e 3e 0a 20 | TotalCapacity.(std.zig)</span>.. |
| 18260 | 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 73 65 6c 66 2e 65 6e 73 75 72 65 54 6f 74 | ...........return.self.ensureTot |
| 18280 | 61 6c 43 61 70 61 63 69 74 79 50 72 65 63 69 73 65 28 62 65 74 74 65 72 5f 63 61 70 61 63 69 74 | alCapacityPrecise(better_capacit |
| 182a0 | 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);............................. |
| 182c0 | 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 |
| 182e0 | 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 |
| 18300 | 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 | ="sgr-1m">/home/andy/dev/zig/lib |
| 18320 | 2f 73 74 64 2f 61 72 72 61 79 5f 6c 69 73 74 2e 7a 69 67 3a 34 39 34 3a 34 31 3c 2f 73 70 61 6e | /std/array_list.zig:494:41</span |
| 18340 | 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 35 35 39 30 | >:.<span.class="sgr-2m">0x105590 |
| 18360 | 64 20 69 6e 20 61 64 64 4f 6e 65 20 28 73 74 64 2e 7a 69 67 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 | d.in.addOne.(std.zig)</span>.... |
| 18380 | 20 20 20 20 20 20 20 20 20 74 72 79 20 73 65 6c 66 2e 65 6e 73 75 72 65 54 6f 74 61 6c 43 61 70 | .........try.self.ensureTotalCap |
| 183a0 | 61 63 69 74 79 28 6e 65 77 6c 65 6e 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | acity(newlen);.................. |
| 183c0 | 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 |
| 183e0 | 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 |
| 18400 | 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 | s="sgr-1m">/home/andy/dev/zig/li |
| 18420 | 62 2f 73 74 64 2f 61 72 72 61 79 5f 6c 69 73 74 2e 7a 69 67 3a 32 35 32 3a 34 39 3c 2f 73 70 61 | b/std/array_list.zig:252:49</spa |
| 18440 | 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 38 37 | n>:.<span.class="sgr-2m">0x10387 |
| 18460 | 37 31 20 69 6e 20 61 70 70 65 6e 64 20 28 73 74 64 2e 7a 69 67 29 3c 2f 73 70 61 6e 3e 0a 20 20 | 71.in.append.(std.zig)</span>... |
| 18480 | 20 20 20 20 20 20 20 20 20 20 63 6f 6e 73 74 20 6e 65 77 5f 69 74 65 6d 5f 70 74 72 20 3d 20 74 | ..........const.new_item_ptr.=.t |
| 184a0 | 72 79 20 73 65 6c 66 2e 61 64 64 4f 6e 65 28 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ry.self.addOne();............... |
| 184c0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ................................ |
| 184e0 | 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> |
| 18500 | 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 |
| 18520 | 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 69 6e 67 5f 64 65 74 | /dev/zig/doc/langref/testing_det |
| 18540 | 65 63 74 5f 6c 65 61 6b 2e 7a 69 67 3a 36 3a 32 30 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 | ect_leak.zig:6:20</span>:.<span. |
| 18560 | 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 33 35 30 61 39 20 69 6e 20 74 65 73 74 | class="sgr-2m">0x10350a9.in.test |
| 18580 | 2e 64 65 74 65 63 74 20 6c 65 61 6b 20 28 74 65 73 74 69 6e 67 5f 64 65 74 65 63 74 5f 6c 65 61 | .detect.leak.(testing_detect_lea |
| 185a0 | 6b 2e 7a 69 67 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 | k.zig)</span>.....try.list.appen |
| 185c0 | 64 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 | d('...');....................<sp |
| 185e0 | 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 |
| 18600 | 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f | n.class="sgr-1m">/home/andy/dev/ |
| 18620 | 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 |
| 18640 | 3a 32 31 38 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 | :218:25</span>:.<span.class="sgr |
| 18660 | 2d 32 6d 22 3e 30 78 31 31 37 34 37 34 30 20 69 6e 20 6d 61 69 6e 54 65 72 6d 69 6e 61 6c 20 28 | -2m">0x1174740.in.mainTerminal.( |
| 18680 | 74 65 73 74 5f 72 75 6e 6e 65 72 2e 7a 69 67 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 | test_runner.zig)</span>......... |
| 186a0 | 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 20 | if.(test_fn.func()).|_|.{....... |
| 186c0 | 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 |
| 186e0 | 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 |
| 18700 | 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 63 6f 6d | r-1m">/home/andy/dev/zig/lib/com |
| 18720 | 70 69 6c 65 72 2f 74 65 73 74 5f 72 75 6e 6e 65 72 2e 7a 69 67 3a 36 36 3a 32 38 3c 2f 73 70 61 | piler/test_runner.zig:66:28</spa |
| 18740 | 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 31 37 30 64 | n>:.<span.class="sgr-2m">0x1170d |
| 18760 | 36 31 20 69 6e 20 6d 61 69 6e 20 28 74 65 73 74 5f 72 75 6e 6e 65 72 2e 7a 69 67 29 3c 2f 73 70 | 61.in.main.(test_runner.zig)</sp |
| 18780 | 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 61 6c 28 | an>.........return.mainTerminal( |
| 187a0 | 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 |
| 187c0 | 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 |
| 187e0 | 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 | an.class="sgr-1m">/home/andy/dev |
| 18800 | 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 36 31 38 3a 32 32 3c 2f 73 | /zig/lib/std/start.zig:618:22</s |
| 18820 | 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 31 36 | pan>:.<span.class="sgr-2m">0x116 |
| 18840 | 61 61 66 64 20 69 6e 20 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 20 28 73 74 | aafd.in.posixCallMainAndExit.(st |
| 18860 | 64 2e 7a 69 67 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 | d.zig)</span>.............root.m |
| 18880 | 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 |
| 188a0 | 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 |
| 188c0 | 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a | .class="sgr-1m">/home/andy/dev/z |
| 188e0 | 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 32 33 32 3a 35 3c 2f 73 70 61 6e | ig/lib/std/start.zig:232:5</span |
| 18900 | 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 31 36 61 33 39 | >:.<span.class="sgr-2m">0x116a39 |
| 18920 | 31 20 69 6e 20 5f 73 74 61 72 74 20 28 73 74 64 2e 7a 69 67 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 | 1.in._start.(std.zig)</span>.... |
| 18940 | 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 |
| 18960 | 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"> |
| 18980 | 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 0a 31 20 | ^</span>..All.1.tests.passed..1. |
| 189a0 | 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 65 61 6b | errors.were.logged..1.tests.leak |
| 189c0 | 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 6e 67 20 | ed.memory..error:.the.following. |
| 189e0 | 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 20 63 6f | test.command.failed.with.exit.co |
| 18a00 | 64 65 20 31 3a 0a 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 2e 7a 69 67 2d 63 61 | de.1:./home/andy/dev/zig/.zig-ca |
| 18a20 | 63 68 65 2f 6f 2f 36 33 38 39 39 61 34 62 33 62 33 64 30 34 62 31 30 34 33 65 37 35 63 35 62 39 | che/o/63899a4b3b3d04b1043e75c5b9 |
| 18a40 | 30 35 34 33 64 31 2f 74 65 73 74 20 2d 2d 73 65 65 64 3d 30 78 65 33 37 31 61 38 63 31 0a 3c 2f | 0543d1/test.--seed=0xe371a8c1.</ |
| 18a60 | 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 53 | samp></pre></figure>........<p>S |
| 18a80 | 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 64 | ee.also:</p><ul>.<li><a.href="#d |
| 18aa0 | 65 66 65 72 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 | efer">defer</a></li>.<li><a.href |
| 18ac0 | 3d 22 23 4d 65 6d 6f 72 79 22 3e 4d 65 6d 6f 72 79 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e | ="#Memory">Memory</a></li>.</ul> |
| 18ae0 | 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 44 65 74 65 63 74 69 6e 67 | ...............<h3.id="Detecting |
| 18b00 | 2d 54 65 73 74 2d 42 75 69 6c 64 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 44 65 74 65 63 | -Test-Build"><a.href="#toc-Detec |
| 18b20 | 74 69 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 | ting-Test-Build">Detecting.Test. |
| 18b40 | 42 75 69 6c 64 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 | Build</a>.<a.class="hdr".href="# |
| 18b60 | 44 65 74 65 63 74 69 6e 67 2d 54 65 73 74 2d 42 75 69 6c 64 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 | Detecting-Test-Build">..</a></h3 |
| 18b80 | 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 20 20 55 73 65 20 74 68 65 20 3c 61 20 | >........<p>.........Use.the.<a. |
| 18ba0 | 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 63 6f 6d 70 69 6c | href="#Compile-Variables">compil |
| 18bc0 | 65 20 76 61 72 69 61 62 6c 65 3c 2f 61 3e 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | e.variable</a>.<code><span.class |
| 18be0 | 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 3c 73 | ="tok-builtin">@import</span>(<s |
| 18c00 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 62 75 69 6c 74 69 | pan.class="tok-str">"builti |
| 18c20 | 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 69 73 5f 74 65 73 74 3c 2f 63 6f 64 65 3e 0a 20 | n"</span>).is_test</code>.. |
| 18c40 | 20 20 20 20 20 20 20 74 6f 20 64 65 74 65 63 74 20 61 20 74 65 73 74 20 62 75 69 6c 64 3a 0a 20 | .......to.detect.a.test.build:.. |
| 18c60 | 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 |
| 18c80 | 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= |
| 18ca0 | 22 66 69 6c 65 22 3e 74 65 73 74 69 6e 67 5f 64 65 74 65 63 74 5f 74 65 73 74 2e 7a 69 67 3c 2f | "file">testing_detect_test.zig</ |
| 18cc0 | 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 |
| 18ce0 | 61 6e 20 63 6c 61 73 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 |
| 18d00 | 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">@ |
| 18d20 | 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 |
| 18d40 | 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 |
| 18d60 | 61 6e 20 63 6c 61 73 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 |
| 18d80 | 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 |
| 18da0 | 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 |
| 18dc0 | 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 |
| 18de0 | 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< |
| 18e00 | 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 |
| 18e20 | 63 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f | ct;..<span.class="tok-kw">test</ |
| 18e40 | 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 |
| 18e60 | 74 3b 62 75 69 6c 74 69 6e 2e 69 73 5f 74 65 73 74 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b | t;builtin.is_test"</span>.{ |
| 18e80 | 0a 20 20 20 20 3c 73 70 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 |
| 18ea0 | 70 61 6e 3e 20 65 78 70 65 63 74 28 69 73 41 54 65 73 74 28 29 29 3b 0a 7d 0a 0a 3c 73 70 61 6e | pan>.expect(isATest());.}..<span |
| 18ec0 | 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. |
| 18ee0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 69 73 41 54 65 73 74 3c 2f 73 70 61 6e 3e 28 29 20 | class="tok-fn">isATest</span>(). |
| 18f00 | 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 |
| 18f20 | 6e 3e 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 |
| 18f40 | 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 62 75 69 6c 74 69 6e 2e 69 73 5f 74 65 73 74 3b 0a 7d 3c 2f | turn</span>.builtin.is_test;.}</ |
| 18f60 | 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 |
| 18f80 | 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< |
| 18fa0 | 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 |
| 18fc0 | 67 20 74 65 73 74 20 74 65 73 74 69 6e 67 5f 64 65 74 65 63 74 5f 74 65 73 74 2e 7a 69 67 3c 2f | g.test.testing_detect_test.zig</ |
| 18fe0 | 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 69 6e 67 5f 64 65 74 65 63 74 5f 74 65 73 74 2e 74 65 73 | kbd>.1/1.testing_detect_test.tes |
| 19000 | 74 2e 62 75 69 6c 74 69 6e 2e 69 73 5f 74 65 73 74 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 | t.builtin.is_test...OK.All.1.tes |
| 19020 | 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 |
| 19040 | 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 54 65 73 74 2d 4f 75 74 | >...............<h3.id="Test-Out |
| 19060 | 70 75 74 2d 61 6e 64 2d 4c 6f 67 67 69 6e 67 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 54 | put-and-Logging"><a.href="#toc-T |
| 19080 | 65 73 74 2d 4f 75 74 70 75 74 2d 61 6e 64 2d 4c 6f 67 67 69 6e 67 22 3e 54 65 73 74 20 4f 75 74 | est-Output-and-Logging">Test.Out |
| 190a0 | 70 75 74 20 61 6e 64 20 4c 6f 67 67 69 6e 67 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 | put.and.Logging</a>.<a.class="hd |
| 190c0 | 72 22 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 | r".href="#Test-Output-and-Loggin |
| 190e0 | 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>....... |
| 19100 | 20 20 54 68 65 20 64 65 66 61 75 6c 74 20 74 65 73 74 20 72 75 6e 6e 65 72 20 61 6e 64 20 74 68 | ..The.default.test.runner.and.th |
| 19120 | 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 74 65 73 74 69 6e 67 | e.Zig.Standard.Library's.testing |
| 19140 | 20 6e 61 6d 65 73 70 61 63 65 20 6f 75 74 70 75 74 20 6d 65 73 73 61 67 65 73 20 74 6f 20 73 74 | .namespace.output.messages.to.st |
| 19160 | 61 6e 64 61 72 64 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 0a | andard.error........</p>........ |
| 19180 | 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 54 68 65 2d 54 65 73 74 69 6e 67 2d 4e 61 6d 65 73 70 | ......<h3.id="The-Testing-Namesp |
| 191a0 | 61 63 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 54 68 65 2d 54 65 73 74 69 6e 67 2d 4e | ace"><a.href="#toc-The-Testing-N |
| 191c0 | 61 6d 65 73 70 61 63 65 22 3e 54 68 65 20 54 65 73 74 69 6e 67 20 4e 61 6d 65 73 70 61 63 65 3c | amespace">The.Testing.Namespace< |
| 191e0 | 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 54 65 | /a>.<a.class="hdr".href="#The-Te |
| 19200 | 73 74 69 6e 67 2d 4e 61 6d 65 73 70 61 63 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 | sting-Namespace">..</a></h3>.... |
| 19220 | 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 20 20 54 68 65 20 5a 69 67 20 53 74 61 6e 64 61 72 64 | ....<p>.........The.Zig.Standard |
| 19240 | 20 4c 69 62 72 61 72 79 27 73 20 3c 63 6f 64 65 3e 74 65 73 74 69 6e 67 3c 2f 63 6f 64 65 3e 20 | .Library's.<code>testing</code>. |
| 19260 | 6e 61 6d 65 73 70 61 63 65 20 63 6f 6e 74 61 69 6e 73 20 75 73 65 66 75 6c 20 66 75 6e 63 74 69 | namespace.contains.useful.functi |
| 19280 | 6f 6e 73 20 74 6f 20 68 65 6c 70 0a 20 20 20 20 20 20 20 20 79 6f 75 20 63 72 65 61 74 65 20 74 | ons.to.help.........you.create.t |
| 192a0 | 65 73 74 73 2e 20 49 6e 20 61 64 64 69 74 69 6f 6e 20 74 6f 20 74 68 65 20 3c 63 6f 64 65 3e 65 | ests..In.addition.to.the.<code>e |
| 192c0 | 78 70 65 63 74 3c 2f 63 6f 64 65 3e 20 66 75 6e 63 74 69 6f 6e 2c 20 74 68 69 73 20 64 6f 63 75 | xpect</code>.function,.this.docu |
| 192e0 | 6d 65 6e 74 20 75 73 65 73 20 61 20 63 6f 75 70 6c 65 20 6f 66 20 6d 6f 72 65 20 66 75 6e 63 74 | ment.uses.a.couple.of.more.funct |
| 19300 | 69 6f 6e 73 0a 20 20 20 20 20 20 20 20 61 73 20 65 78 65 6d 70 6c 69 66 69 65 64 20 68 65 72 65 | ions.........as.exemplified.here |
| 19320 | 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 |
| 19340 | 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 |
| 19360 | 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 69 6e 67 5f 6e 61 6d 65 73 70 61 63 65 2e 7a 69 67 3c | ss="file">testing_namespace.zig< |
| 19380 | 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 |
| 193a0 | 70 61 6e 20 63 6c 61 73 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>. |
| 193c0 | 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"> |
| 193e0 | 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- |
| 19400 | 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>);..< |
| 19420 | 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>. |
| 19440 | 3c 73 70 61 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 | <span.class="tok-str">"expe |
| 19460 | 63 74 45 71 75 61 6c 20 64 65 6d 6f 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 | ctEqual.demo"</span>.{..... |
| 19480 | 3c 73 70 61 6e 20 63 6c 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 |
| 194a0 | 3e 20 65 78 70 65 63 74 65 64 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | >.expected:.<span.class="tok-typ |
| 194c0 | 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 |
| 194e0 | 2d 6e 75 6d 62 65 72 22 3e 34 32 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | -number">42</span>;.....<span.cl |
| 19500 | 61 73 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 | ass="tok-kw">const</span>.actual |
| 19520 | 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 32 3c 2f | .=.<span.class="tok-number">42</ |
| 19540 | 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 |
| 19560 | 6d 65 6e 74 22 3e 2f 2f 20 54 68 65 20 66 69 72 73 74 20 61 72 67 75 6d 65 6e 74 20 74 6f 20 60 | ment">//.The.first.argument.to.` |
| 19580 | 65 78 70 65 63 74 45 71 75 61 6c 60 20 69 73 20 74 68 65 20 6b 6e 6f 77 6e 2c 20 65 78 70 65 63 | expectEqual`.is.the.known,.expec |
| 195a0 | 74 65 64 2c 20 72 65 73 75 6c 74 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | ted,.result.</span>.....<span.cl |
| 195c0 | 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 63 6f 6e 64 20 | ass="tok-comment">//.The.second. |
| 195e0 | 61 72 67 75 6d 65 6e 74 20 69 73 20 74 68 65 20 72 65 73 75 6c 74 20 6f 66 20 73 6f 6d 65 20 65 | argument.is.the.result.of.some.e |
| 19600 | 78 70 72 65 73 73 69 6f 6e 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | xpression.</span>.....<span.clas |
| 19620 | 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 65 20 61 63 74 75 61 6c 27 73 20 | s="tok-comment">//.The.actual's. |
| 19640 | 74 79 70 65 20 69 73 20 63 61 73 74 65 64 20 74 6f 20 74 68 65 20 74 79 70 65 20 6f 66 20 65 78 | type.is.casted.to.the.type.of.ex |
| 19660 | 70 65 63 74 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 | pected.</span>.....<span.class=" |
| 19680 | 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 73 74 64 2e 74 65 73 74 69 6e 67 2e 65 | tok-kw">try</span>.std.testing.e |
| 196a0 | 78 70 65 63 74 45 71 75 61 6c 28 65 78 70 65 63 74 65 64 2c 20 61 63 74 75 61 6c 29 3b 0a 7d 0a | xpectEqual(expected,.actual);.}. |
| 196c0 | 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 |
| 196e0 | 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 65 78 | >.<span.class="tok-str">"ex |
| 19700 | 70 65 63 74 45 72 72 6f 72 20 64 65 6d 6f 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 | pectError.demo"</span>.{... |
| 19720 | 20 20 3c 73 70 61 6e 20 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 |
| 19740 | 61 6e 3e 20 65 78 70 65 63 74 65 64 5f 65 72 72 6f 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | an>.expected_error.=.<span.class |
| 19760 | 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 44 65 6d 6f 45 72 72 6f 72 | ="tok-kw">error</span>.DemoError |
| 19780 | 3b 0a 20 20 20 20 3c 73 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 |
| 197a0 | 3c 2f 73 70 61 6e 3e 20 61 63 74 75 61 6c 5f 65 72 72 6f 72 5f 75 6e 69 6f 6e 3a 20 3c 73 70 61 | </span>.actual_error_union:.<spa |
| 197c0 | 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 |
| 197e0 | 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 3c 2f | n>!<span.class="tok-type">void</ |
| 19800 | 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 | span>.=.<span.class="tok-kw">err |
| 19820 | 6f 72 3c 2f 73 70 61 6e 3e 2e 44 65 6d 6f 45 72 72 6f 72 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 | or</span>.DemoError;......<span. |
| 19840 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 60 65 78 70 65 63 74 45 72 | class="tok-comment">//.`expectEr |
| 19860 | 72 6f 72 60 20 77 69 6c 6c 20 66 61 69 6c 20 77 68 65 6e 20 74 68 65 20 61 63 74 75 61 6c 20 65 | ror`.will.fail.when.the.actual.e |
| 19880 | 72 72 6f 72 20 69 73 20 64 69 66 66 65 72 65 6e 74 20 74 68 61 6e 3c 2f 73 70 61 6e 3e 0a 20 20 | rror.is.different.than</span>... |
| 198a0 | 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 74 | ..<span.class="tok-comment">//.t |
| 198c0 | 68 65 20 65 78 70 65 63 74 65 64 20 65 72 72 6f 72 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 | he.expected.error.</span>.....<s |
| 198e0 | 70 61 6e 20 63 6c 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 | pan.class="tok-kw">try</span>.st |
| 19900 | 64 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 45 72 72 6f 72 28 65 78 70 65 63 74 65 64 5f 65 | d.testing.expectError(expected_e |
| 19920 | 72 72 6f 72 2c 20 61 63 74 75 61 6c 5f 65 72 72 6f 72 5f 75 6e 69 6f 6e 29 3b 0a 7d 3c 2f 63 6f | rror,.actual_error_union);.}</co |
| 19940 | 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 |
| 19960 | 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 |
| 19980 | 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. |
| 199a0 | 74 65 73 74 20 74 65 73 74 69 6e 67 5f 6e 61 6d 65 73 70 61 63 65 2e 7a 69 67 3c 2f 6b 62 64 3e | test.testing_namespace.zig</kbd> |
| 199c0 | 0a 31 2f 32 20 74 65 73 74 69 6e 67 5f 6e 61 6d 65 73 70 61 63 65 2e 74 65 73 74 2e 65 78 70 65 | .1/2.testing_namespace.test.expe |
| 199e0 | 63 74 45 71 75 61 6c 20 64 65 6d 6f 2e 2e 2e 4f 4b 0a 32 2f 32 20 74 65 73 74 69 6e 67 5f 6e 61 | ctEqual.demo...OK.2/2.testing_na |
| 19a00 | 6d 65 73 70 61 63 65 2e 74 65 73 74 2e 65 78 70 65 63 74 45 72 72 6f 72 20 64 65 6d 6f 2e 2e 2e | mespace.test.expectError.demo... |
| 19a20 | 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 2f | OK.All.2.tests.passed..</samp></ |
| 19a40 | 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 65 20 5a 69 67 20 | pre></figure>........<p>The.Zig. |
| 19a60 | 53 74 61 6e 64 61 72 64 20 4c 69 62 72 61 72 79 20 61 6c 73 6f 20 63 6f 6e 74 61 69 6e 73 20 66 | Standard.Library.also.contains.f |
| 19a80 | 75 6e 63 74 69 6f 6e 73 20 74 6f 20 63 6f 6d 70 61 72 65 20 3c 61 20 68 72 65 66 3d 22 23 53 6c | unctions.to.compare.<a.href="#Sl |
| 19aa0 | 69 63 65 73 22 3e 53 6c 69 63 65 73 3c 2f 61 3e 2c 20 73 74 72 69 6e 67 73 2c 20 61 6e 64 20 6d | ices">Slices</a>,.strings,.and.m |
| 19ac0 | 6f 72 65 2e 20 53 65 65 20 74 68 65 20 72 65 73 74 20 6f 66 20 74 68 65 0a 20 20 20 20 20 20 20 | ore..See.the.rest.of.the........ |
| 19ae0 | 20 3c 63 6f 64 65 3e 73 74 64 2e 74 65 73 74 69 6e 67 3c 2f 63 6f 64 65 3e 20 6e 61 6d 65 73 70 | .<code>std.testing</code>.namesp |
| 19b00 | 61 63 65 20 69 6e 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 | ace.in.the.<a.href="#Zig-Standar |
| 19b20 | 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 79 3c | d-Library">Zig.Standard.Library< |
| 19b40 | 2f 61 3e 20 66 6f 72 20 6d 6f 72 65 20 61 76 61 69 6c 61 62 6c 65 20 66 75 6e 63 74 69 6f 6e 73 | /a>.for.more.available.functions |
| 19b60 | 2e 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 65 73 74 2d | .</p>..............<h3.id="Test- |
| 19b80 | 54 6f 6f 6c 2d 44 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f | Tool-Documentation"><a.href="#to |
| 19ba0 | 63 2d 54 65 73 74 2d 54 6f 6f 6c 2d 44 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 22 3e 54 65 73 74 20 | c-Test-Tool-Documentation">Test. |
| 19bc0 | 54 6f 6f 6c 20 44 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d | Tool.Documentation</a>.<a.class= |
| 19be0 | 22 68 64 72 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 | "hdr".href="#Test-Tool-Documenta |
| 19c00 | 74 69 6f 6e 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 | tion">..</a></h3>........<p>.... |
| 19c20 | 20 20 20 20 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 3c 2f 6b 62 64 3e 20 68 61 73 20 61 20 66 | .....<kbd>zig.test</kbd>.has.a.f |
| 19c40 | 65 77 20 63 6f 6d 6d 61 6e 64 20 6c 69 6e 65 20 70 61 72 61 6d 65 74 65 72 73 20 77 68 69 63 68 | ew.command.line.parameters.which |
| 19c60 | 20 61 66 66 65 63 74 20 74 68 65 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 2e 0a 20 20 20 20 20 20 20 | .affect.the.compilation......... |
| 19c80 | 20 53 65 65 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 2d 2d 68 65 6c 70 3c 2f 6b 62 64 3e 20 | .See.<kbd>zig.test.--help</kbd>. |
| 19ca0 | 66 6f 72 20 61 20 66 75 6c 6c 20 6c 69 73 74 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 | for.a.full.list........</p>..... |
| 19cc0 | 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 56 61 72 69 61 62 6c | .................<h2.id="Variabl |
| 19ce0 | 65 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 56 61 72 69 61 62 6c 65 73 22 3e 56 61 72 | es"><a.href="#toc-Variables">Var |
| 19d00 | 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=" |
| 19d20 | 23 56 61 72 69 61 62 6c 65 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c | #Variables">..</a></h2>........< |
| 19d40 | 70 3e 0a 20 20 20 20 20 20 41 20 76 61 72 69 61 62 6c 65 20 69 73 20 61 20 75 6e 69 74 20 6f 66 | p>.......A.variable.is.a.unit.of |
| 19d60 | 20 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 73 74 | .<a.href="#Memory">Memory</a>.st |
| 19d80 | 6f 72 61 67 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 | orage........</p>.......<p>..... |
| 19da0 | 20 20 49 74 20 69 73 20 67 65 6e 65 72 61 6c 6c 79 20 70 72 65 66 65 72 61 62 6c 65 20 74 6f 20 | ..It.is.generally.preferable.to. |
| 19dc0 | 75 73 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 | use.<code><span.class="tok-kw">c |
| 19de0 | 6f 6e 73 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 72 61 74 68 65 72 20 74 68 61 6e 0a 20 | onst</span></code>.rather.than.. |
| 19e00 | 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"> |
| 19e20 | 76 61 72 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 77 68 65 6e 20 64 65 63 6c 61 72 69 6e 67 | var</span></code>.when.declaring |
| 19e40 | 20 61 20 76 61 72 69 61 62 6c 65 2e 20 54 68 69 73 20 63 61 75 73 65 73 20 6c 65 73 73 20 77 6f | .a.variable..This.causes.less.wo |
| 19e60 | 72 6b 20 66 6f 72 20 62 6f 74 68 0a 20 20 20 20 20 20 68 75 6d 61 6e 73 20 61 6e 64 20 63 6f 6d | rk.for.both.......humans.and.com |
| 19e80 | 70 75 74 65 72 73 20 74 6f 20 64 6f 20 77 68 65 6e 20 72 65 61 64 69 6e 67 20 63 6f 64 65 2c 20 | puters.to.do.when.reading.code,. |
| 19ea0 | 61 6e 64 20 63 72 65 61 74 65 73 20 6d 6f 72 65 20 6f 70 74 69 6d 69 7a 61 74 69 6f 6e 20 6f 70 | and.creates.more.optimization.op |
| 19ec0 | 70 6f 72 74 75 6e 69 74 69 65 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 | portunities........</p>.......<p |
| 19ee0 | 3e 0a 20 20 20 20 20 20 54 68 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | >.......The.<code><span.class="t |
| 19f00 | 6f 6b 2d 6b 77 22 3e 65 78 74 65 72 6e 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6b 65 79 77 | ok-kw">extern</span></code>.keyw |
| 19f20 | 6f 72 64 20 6f 72 20 3c 61 20 68 72 65 66 3d 22 23 65 78 74 65 72 6e 22 3e 40 65 78 74 65 72 6e | ord.or.<a.href="#extern">@extern |
| 19f40 | 3c 2f 61 3e 20 62 75 69 6c 74 69 6e 20 66 75 6e 63 74 69 6f 6e 20 63 61 6e 20 62 65 20 75 73 65 | </a>.builtin.function.can.be.use |
| 19f60 | 64 20 74 6f 20 6c 69 6e 6b 20 61 67 61 69 6e 73 74 20 61 20 76 61 72 69 61 62 6c 65 20 74 68 61 | d.to.link.against.a.variable.tha |
| 19f80 | 74 20 69 73 20 65 78 70 6f 72 74 65 64 0a 20 20 20 20 20 20 66 72 6f 6d 20 61 6e 6f 74 68 65 72 | t.is.exported.......from.another |
| 19fa0 | 20 6f 62 6a 65 63 74 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 | .object..The.<code><span.class=" |
| 19fc0 | 74 6f 6b 2d 6b 77 22 3e 65 78 70 6f 72 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6b 65 79 | tok-kw">export</span></code>.key |
| 19fe0 | 77 6f 72 64 20 6f 72 20 3c 61 20 68 72 65 66 3d 22 23 65 78 70 6f 72 74 22 3e 40 65 78 70 6f 72 | word.or.<a.href="#export">@expor |
| 1a000 | 74 3c 2f 61 3e 20 62 75 69 6c 74 69 6e 20 66 75 6e 63 74 69 6f 6e 0a 20 20 20 20 20 20 63 61 6e | t</a>.builtin.function.......can |
| 1a020 | 20 62 65 20 75 73 65 64 20 74 6f 20 6d 61 6b 65 20 61 20 76 61 72 69 61 62 6c 65 20 61 76 61 69 | .be.used.to.make.a.variable.avai |
| 1a040 | 6c 61 62 6c 65 20 74 6f 20 6f 74 68 65 72 20 6f 62 6a 65 63 74 73 20 61 74 20 6c 69 6e 6b 20 74 | lable.to.other.objects.at.link.t |
| 1a060 | 69 6d 65 2e 20 49 6e 20 62 6f 74 68 20 63 61 73 65 73 2c 0a 20 20 20 20 20 20 74 68 65 20 74 79 | ime..In.both.cases,.......the.ty |
| 1a080 | 70 65 20 6f 66 20 74 68 65 20 76 61 72 69 61 62 6c 65 20 6d 75 73 74 20 62 65 20 43 20 41 42 49 | pe.of.the.variable.must.be.C.ABI |
| 1a0a0 | 20 63 6f 6d 70 61 74 69 62 6c 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 | .compatible........</p>.......<p |
| 1a0c0 | 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=" |
| 1a0e0 | 23 45 78 70 6f 72 74 69 6e 67 2d 61 2d 43 2d 4c 69 62 72 61 72 79 22 3e 45 78 70 6f 72 74 69 6e | #Exporting-a-C-Library">Exportin |
| 1a100 | 67 20 61 20 43 20 4c 69 62 72 61 72 79 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 0a 20 | g.a.C.Library</a></li>.</ul>.... |
| 1a120 | 20 20 20 20 20 3c 68 33 20 69 64 3d 22 49 64 65 6e 74 69 66 69 65 72 73 22 3e 3c 61 20 68 72 65 | .....<h3.id="Identifiers"><a.hre |
| 1a140 | 66 3d 22 23 74 6f 63 2d 49 64 65 6e 74 69 66 69 65 72 73 22 3e 49 64 65 6e 74 69 66 69 65 72 73 | f="#toc-Identifiers">Identifiers |
| 1a160 | 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 64 65 6e 74 | </a>.<a.class="hdr".href="#Ident |
| 1a180 | 69 66 69 65 72 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 | ifiers">..</a></h3>........<p>.. |
| 1a1a0 | 20 20 20 20 20 56 61 72 69 61 62 6c 65 20 69 64 65 6e 74 69 66 69 65 72 73 20 61 72 65 20 6e 65 | .....Variable.identifiers.are.ne |
| 1a1c0 | 76 65 72 20 61 6c 6c 6f 77 65 64 20 74 6f 20 73 68 61 64 6f 77 20 69 64 65 6e 74 69 66 69 65 72 | ver.allowed.to.shadow.identifier |
| 1a1e0 | 73 20 66 72 6f 6d 20 61 6e 20 6f 75 74 65 72 20 73 63 6f 70 65 2e 0a 20 20 20 20 20 20 3c 2f 70 | s.from.an.outer.scope........</p |
| 1a200 | 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 64 65 6e 74 69 66 69 65 72 73 20 6d 75 | >.......<p>.......Identifiers.mu |
| 1a220 | 73 74 20 73 74 61 72 74 20 77 69 74 68 20 61 6e 20 61 6c 70 68 61 62 65 74 69 63 20 63 68 61 72 | st.start.with.an.alphabetic.char |
| 1a240 | 61 63 74 65 72 20 6f 72 20 75 6e 64 65 72 73 63 6f 72 65 20 61 6e 64 20 6d 61 79 20 62 65 20 66 | acter.or.underscore.and.may.be.f |
| 1a260 | 6f 6c 6c 6f 77 65 64 0a 20 20 20 20 20 20 62 79 20 61 6e 79 20 6e 75 6d 62 65 72 20 6f 66 20 61 | ollowed.......by.any.number.of.a |
| 1a280 | 6c 70 68 61 6e 75 6d 65 72 69 63 20 63 68 61 72 61 63 74 65 72 73 20 6f 72 20 75 6e 64 65 72 73 | lphanumeric.characters.or.unders |
| 1a2a0 | 63 6f 72 65 73 2e 0a 20 20 20 20 20 20 54 68 65 79 20 6d 75 73 74 20 6e 6f 74 20 6f 76 65 72 6c | cores........They.must.not.overl |
| 1a2c0 | 61 70 20 77 69 74 68 20 61 6e 79 20 6b 65 79 77 6f 72 64 73 2e 20 53 65 65 20 3c 61 20 68 72 65 | ap.with.any.keywords..See.<a.hre |
| 1a2e0 | 66 3d 22 23 4b 65 79 77 6f 72 64 2d 52 65 66 65 72 65 6e 63 65 22 3e 4b 65 79 77 6f 72 64 20 52 | f="#Keyword-Reference">Keyword.R |
| 1a300 | 65 66 65 72 65 6e 63 65 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c | eference</a>........</p>.......< |
| 1a320 | 70 3e 0a 20 20 20 20 20 20 49 66 20 61 20 6e 61 6d 65 20 74 68 61 74 20 64 6f 65 73 20 6e 6f 74 | p>.......If.a.name.that.does.not |
| 1a340 | 20 66 69 74 20 74 68 65 73 65 20 72 65 71 75 69 72 65 6d 65 6e 74 73 20 69 73 20 6e 65 65 64 65 | .fit.these.requirements.is.neede |
| 1a360 | 64 2c 20 73 75 63 68 20 61 73 20 66 6f 72 20 6c 69 6e 6b 69 6e 67 20 77 69 74 68 20 65 78 74 65 | d,.such.as.for.linking.with.exte |
| 1a380 | 72 6e 61 6c 20 6c 69 62 72 61 72 69 65 73 2c 20 74 68 65 20 3c 63 6f 64 65 3e 40 26 71 75 6f 74 | rnal.libraries,.the.<code>@" |
| 1a3a0 | 3b 26 71 75 6f 74 3b 3c 2f 63 6f 64 65 3e 20 73 79 6e 74 61 78 20 6d 61 79 20 62 65 20 75 73 65 | ;"</code>.syntax.may.be.use |
| 1a3c0 | 64 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 | d........</p>.......<figure><fig |
| 1a3e0 | 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 |
| 1a400 | 61 73 73 3d 22 66 69 6c 65 22 3e 69 64 65 6e 74 69 66 69 65 72 73 2e 7a 69 67 3c 2f 63 69 74 65 | ass="file">identifiers.zig</cite |
| 1a420 | 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 |
| 1a440 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 40 26 71 75 6f | lass="tok-kw">const</span>.@&quo |
| 1a460 | 74 3b 69 64 65 6e 74 69 66 69 65 72 20 77 69 74 68 20 73 70 61 63 65 73 20 69 6e 20 69 74 26 71 | t;identifier.with.spaces.in.it&q |
| 1a480 | 75 6f 74 3b 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 | uot;.=.<span.class="tok-number"> |
| 1a4a0 | 30 78 66 66 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | 0xff</span>;.<span.class="tok-kw |
| 1a4c0 | 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 40 26 71 75 6f 74 3b 31 53 6d 61 6c 6c 53 74 65 70 | ">const</span>.@"1SmallStep |
| 1a4e0 | 34 4d 61 6e 26 71 75 6f 74 3b 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | 4Man".=.<span.class="tok-nu |
| 1a500 | 6d 62 65 72 22 3e 31 31 32 33 35 38 3c 2f 73 70 61 6e 3e 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 | mber">112358</span>;..<span.clas |
| 1a520 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 63 20 3d 20 3c 73 70 61 | s="tok-kw">const</span>.c.=.<spa |
| 1a540 | 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 |
| 1a560 | 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">" |
| 1a580 | 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 63 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 | ;std"</span>).c;.<span.clas |
| 1a5a0 | 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 |
| 1a5c0 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 78 74 65 72 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 | s="tok-kw">extern</span>.<span.c |
| 1a5e0 | 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 63 26 71 75 6f 74 3b 3c 2f 73 70 | lass="tok-str">"c"</sp |
| 1a600 | 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 |
| 1a620 | 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 40 26 71 75 6f 74 3b 65 | n>.<span.class="tok-fn">@"e |
| 1a640 | 72 72 6f 72 26 71 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 | rror"</span>().<span.class= |
| 1a660 | 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c | "tok-type">void</span>;.<span.cl |
| 1a680 | 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 |
| 1a6a0 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 78 74 65 72 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e | ass="tok-kw">extern</span>.<span |
| 1a6c0 | 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 2f | .class="tok-str">"c"</ |
| 1a6e0 | 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 |
| 1a700 | 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 40 26 71 75 6f 74 | pan>.<span.class="tok-fn">@" |
| 1a720 | 3b 66 73 74 61 74 24 49 4e 4f 44 45 36 34 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 28 66 64 3a 20 | ;fstat$INODE64"</span>(fd:. |
| 1a740 | 63 2e 66 64 5f 74 2c 20 62 75 66 3a 20 2a 63 2e 53 74 61 74 29 20 3c 73 70 61 6e 20 63 6c 61 73 | c.fd_t,.buf:.*c.Stat).<span.clas |
| 1a760 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 63 5f 69 6e 74 3c 2f 73 70 61 6e 3e 3b 0a 0a 3c 73 70 61 | s="tok-type">c_int</span>;..<spa |
| 1a780 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 43 6f | n.class="tok-kw">const</span>.Co |
| 1a7a0 | 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 6d 3c | lor.=.<span.class="tok-kw">enum< |
| 1a7c0 | 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 72 65 64 2c 0a 20 20 20 20 40 26 71 75 6f 74 3b 72 65 61 | /span>.{.....red,.....@"rea |
| 1a7e0 | 6c 6c 79 20 72 65 64 26 71 75 6f 74 3b 2c 0a 7d 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | lly.red",.};.<span.class="t |
| 1a800 | 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 63 6f 6c 6f 72 3a 20 43 6f 6c 6f 72 | ok-kw">const</span>.color:.Color |
| 1a820 | 20 3d 20 2e 40 26 71 75 6f 74 3b 72 65 61 6c 6c 79 20 72 65 64 26 71 75 6f 74 3b 3b 3c 2f 63 6f | .=..@"really.red";</co |
| 1a840 | 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 | de></pre></figure>.............. |
| 1a860 | 20 20 3c 68 33 20 69 64 3d 22 43 6f 6e 74 61 69 6e 65 72 2d 4c 65 76 65 6c 2d 56 61 72 69 61 62 | ..<h3.id="Container-Level-Variab |
| 1a880 | 6c 65 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 43 6f 6e 74 61 69 6e 65 72 2d 4c 65 76 | les"><a.href="#toc-Container-Lev |
| 1a8a0 | 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 20 56 61 | el-Variables">Container.Level.Va |
| 1a8c0 | 72 69 61 62 6c 65 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d | riables</a>.<a.class="hdr".href= |
| 1a8e0 | 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 c2 a7 3c | "#Container-Level-Variables">..< |
| 1a900 | 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 3c 61 20 68 72 65 | /a></h3>........<p>.......<a.hre |
| 1a920 | 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 3c 2f 61 3e 20 6c 65 | f="#Containers">Container</a>.le |
| 1a940 | 76 65 6c 20 76 61 72 69 61 62 6c 65 73 20 68 61 76 65 20 73 74 61 74 69 63 20 6c 69 66 65 74 69 | vel.variables.have.static.lifeti |
| 1a960 | 6d 65 20 61 6e 64 20 61 72 65 20 6f 72 64 65 72 2d 69 6e 64 65 70 65 6e 64 65 6e 74 20 61 6e 64 | me.and.are.order-independent.and |
| 1a980 | 20 6c 61 7a 69 6c 79 20 61 6e 61 6c 79 7a 65 64 2e 0a 20 20 20 20 20 20 54 68 65 20 69 6e 69 74 | .lazily.analyzed........The.init |
| 1a9a0 | 69 61 6c 69 7a 61 74 69 6f 6e 20 76 61 6c 75 65 20 6f 66 20 63 6f 6e 74 61 69 6e 65 72 20 6c 65 | ialization.value.of.container.le |
| 1a9c0 | 76 65 6c 20 76 61 72 69 61 62 6c 65 73 20 69 73 20 69 6d 70 6c 69 63 69 74 6c 79 0a 20 20 20 20 | vel.variables.is.implicitly..... |
| 1a9e0 | 20 20 3c 61 20 68 72 65 66 3d 22 23 63 6f 6d 70 74 69 6d 65 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f | ..<a.href="#comptime">comptime</ |
| 1aa00 | 61 3e 2e 20 49 66 20 61 20 63 6f 6e 74 61 69 6e 65 72 20 6c 65 76 65 6c 20 76 61 72 69 61 62 6c | a>..If.a.container.level.variabl |
| 1aa20 | 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 6b 77 22 3e | e.is.<code><span.class="tok-kw"> |
| 1aa40 | 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 74 68 65 6e 20 69 74 73 20 76 61 6c | const</span></code>.then.its.val |
| 1aa60 | 75 65 20 69 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 | ue.is.......<code><span.class="t |
| 1aa80 | 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2d 6b 6e | ok-kw">comptime</span></code>-kn |
| 1aaa0 | 6f 77 6e 2c 20 6f 74 68 65 72 77 69 73 65 20 69 74 20 69 73 20 72 75 6e 74 69 6d 65 2d 6b 6e 6f | own,.otherwise.it.is.runtime-kno |
| 1aac0 | 77 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 | wn........</p>.......<figure><fi |
| 1aae0 | 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 |
| 1ab00 | 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 63 6f 6e 74 61 69 6e 65 72 5f 6c 65 76 65 6c | lass="file">test_container_level |
| 1ab20 | 5f 76 61 72 69 61 62 6c 65 73 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f | _variables.zig</cite></figcaptio |
| 1ab40 | 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 |
| 1ab60 | 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 79 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ">var</span>.y:.<span.class="tok |
| 1ab80 | 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 61 64 64 28 3c 73 70 61 6e 20 63 6c | -type">i32</span>.=.add(<span.cl |
| 1aba0 | 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 78 29 3b 0a | ass="tok-number">10</span>,.x);. |
| 1abc0 | 3c 73 70 61 6e 20 63 6c 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 |
| 1abe0 | 3e 20 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c | >.x:.<span.class="tok-type">i32< |
| 1ac00 | 2f 73 70 61 6e 3e 20 3d 20 61 64 64 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | /span>.=.add(<span.class="tok-nu |
| 1ac20 | 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 74 6f | mber">12</span>,.<span.class="to |
| 1ac40 | 6b 2d 6e 75 6d 62 65 72 22 3e 33 34 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 | k-number">34</span>);..<span.cla |
| 1ac60 | 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 |
| 1ac80 | 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 63 6f 6e 74 61 69 6e 65 72 20 6c 65 | ass="tok-str">"container.le |
| 1aca0 | 76 65 6c 20 76 61 72 69 61 62 6c 65 73 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 | vel.variables"</span>.{.... |
| 1acc0 | 20 3c 73 70 61 6e 20 63 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> |
| 1ace0 | 20 65 78 70 65 63 74 28 78 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | .expect(x.==.<span.class="tok-nu |
| 1ad00 | 6d 62 65 72 22 3e 34 36 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | mber">46</span>);.....<span.clas |
| 1ad20 | 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 3d | s="tok-kw">try</span>.expect(y.= |
| 1ad40 | 3d 20 3c 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 3c 2f 73 | =.<span.class="tok-number">56</s |
| 1ad60 | 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 | pan>);.}..<span.class="tok-kw">f |
| 1ad80 | 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 61 64 | n</span>.<span.class="tok-fn">ad |
| 1ada0 | 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 74 79 70 | d</span>(a:.<span.class="tok-typ |
| 1adc0 | 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 2c 20 62 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | e">i32</span>,.b:.<span.class="t |
| 1ade0 | 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 73 | ok-type">i32</span>).<span.class |
| 1ae00 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 | ="tok-type">i32</span>.{.....<sp |
| 1ae20 | 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>. |
| 1ae40 | 61 20 2b 20 62 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 | a.+.b;.}..<span.class="tok-kw">c |
| 1ae60 | 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 |
| 1ae80 | 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 |
| 1aea0 | 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" |
| 1aec0 | 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 |
| 1aee0 | 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 |
| 1af00 | 2e 65 78 70 65 63 74 3b 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 | .expect;</code></pre></figure><f |
| 1af20 | 69 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 |
| 1af40 | 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 |
| 1af60 | 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 63 6f 6e 74 61 69 6e 65 72 5f | >$.<kbd>zig.test.test_container_ |
| 1af80 | 6c 65 76 65 6c 5f 76 61 72 69 61 62 6c 65 73 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 | level_variables.zig</kbd>.1/1.te |
| 1afa0 | 73 74 5f 63 6f 6e 74 61 69 6e 65 72 5f 6c 65 76 65 6c 5f 76 61 72 69 61 62 6c 65 73 2e 74 65 73 | st_container_level_variables.tes |
| 1afc0 | 74 2e 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 2e 2e 2e 4f 4b | t.container.level.variables...OK |
| 1afe0 | 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 |
| 1b000 | 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 43 6f 6e | e></figure>........<p>.......Con |
| 1b020 | 74 61 69 6e 65 72 20 6c 65 76 65 6c 20 76 61 72 69 61 62 6c 65 73 20 6d 61 79 20 62 65 20 64 65 | tainer.level.variables.may.be.de |
| 1b040 | 63 6c 61 72 65 64 20 69 6e 73 69 64 65 20 61 20 3c 61 20 68 72 65 66 3d 22 23 73 74 72 75 63 74 | clared.inside.a.<a.href="#struct |
| 1b060 | 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 |
| 1b080 | 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</ |
| 1b0a0 | 61 3e 2c 20 6f 72 20 3c 61 20 68 72 65 66 3d 22 23 6f 70 61 71 75 65 22 3e 6f 70 61 71 75 65 3c | a>,.or.<a.href="#opaque">opaque< |
| 1b0c0 | 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 |
| 1b0e0 | 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. |
| 1b100 | 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 6e 61 6d 65 73 70 61 63 65 64 5f 63 6f 6e | class="file">test_namespaced_con |
| 1b120 | 74 61 69 6e 65 72 5f 6c 65 76 65 6c 5f 76 61 72 69 61 62 6c 65 2e 7a 69 67 3c 2f 63 69 74 65 3e | tainer_level_variable.zig</cite> |
| 1b140 | 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 |
| 1b160 | 61 73 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.=. |
| 1b180 | 3c 73 70 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 |
| 1b1a0 | 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">& |
| 1b1c0 | 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 |
| 1b1e0 | 61 73 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 |
| 1b200 | 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 |
| 1b220 | 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 |
| 1b240 | 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 6e 61 6d 65 73 70 61 63 65 64 20 | lass="tok-str">"namespaced. |
| 1b260 | 63 6f 6e 74 61 69 6e 65 72 20 6c 65 76 65 6c 20 76 61 72 69 61 62 6c 65 26 71 75 6f 74 3b 3c 2f | container.level.variable"</ |
| 1b280 | 73 70 61 6e 3e 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" |
| 1b2a0 | 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 66 6f 6f 28 29 20 3d 3d 20 3c 73 70 61 | >try</span>.expect(foo().==.<spa |
| 1b2c0 | 6e 20 63 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 | n.class="tok-number">1235</span> |
| 1b2e0 | 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< |
| 1b300 | 2f 73 70 61 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 | /span>.expect(foo().==.<span.cla |
| 1b320 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 36 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a | ss="tok-number">1236</span>);.}. |
| 1b340 | 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 |
| 1b360 | 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 |
| 1b380 | 63 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ct</span>.{.....<span.class="tok |
| 1b3a0 | 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | -kw">var</span>.x:.<span.class=" |
| 1b3c0 | 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 | tok-type">i32</span>.=.<span.cla |
| 1b3e0 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 3b 0a 7d 3b 0a | ss="tok-number">1234</span>;.};. |
| 1b400 | 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>. |
| 1b420 | 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>( |
| 1b440 | 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 | ).<span.class="tok-type">i32</sp |
| 1b460 | 61 6e 3e 20 7b 0a 20 20 20 20 53 2e 78 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | an>.{.....S.x.+=.<span.class="to |
| 1b480 | 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 |
| 1b4a0 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 53 2e 78 3b 0a | ass="tok-kw">return</span>.S.x;. |
| 1b4c0 | 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>< |
| 1b4e0 | 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 |
| 1b500 | 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 |
| 1b520 | 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 6e 61 6d 65 73 70 61 63 65 64 5f 63 6f 6e 74 61 69 | >zig.test.test_namespaced_contai |
| 1b540 | 6e 65 72 5f 6c 65 76 65 6c 5f 76 61 72 69 61 62 6c 65 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 | ner_level_variable.zig</kbd>.1/1 |
| 1b560 | 20 74 65 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 | .test_namespaced_container_level |
| 1b580 | 5f 76 61 72 69 61 62 6c 65 2e 74 65 73 74 2e 6e 61 6d 65 73 70 61 63 65 64 20 63 6f 6e 74 61 69 | _variable.test.namespaced.contai |
| 1b5a0 | 6e 65 72 20 6c 65 76 65 6c 20 76 61 72 69 61 62 6c 65 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 | ner.level.variable...OK.All.1.te |
| 1b5c0 | 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 |
| 1b5e0 | 65 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 53 74 61 74 69 63 | e>................<h3.id="Static |
| 1b600 | 2d 4c 6f 63 61 6c 2d 56 61 72 69 61 62 6c 65 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d | -Local-Variables"><a.href="#toc- |
| 1b620 | 53 74 61 74 69 63 2d 4c 6f 63 61 6c 2d 56 61 72 69 61 62 6c 65 73 22 3e 53 74 61 74 69 63 20 4c | Static-Local-Variables">Static.L |
| 1b640 | 6f 63 61 6c 20 56 61 72 69 61 62 6c 65 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 | ocal.Variables</a>.<a.class="hdr |
| 1b660 | 22 20 68 72 65 66 3d 22 23 53 74 61 74 69 63 2d 4c 6f 63 61 6c 2d 56 61 72 69 61 62 6c 65 73 22 | ".href="#Static-Local-Variables" |
| 1b680 | 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 20 20 | >..</a></h3>........<p>......... |
| 1b6a0 | 49 74 20 69 73 20 61 6c 73 6f 20 70 6f 73 73 69 62 6c 65 20 74 6f 20 68 61 76 65 20 6c 6f 63 61 | It.is.also.possible.to.have.loca |
| 1b6c0 | 6c 20 76 61 72 69 61 62 6c 65 73 20 77 69 74 68 20 73 74 61 74 69 63 20 6c 69 66 65 74 69 6d 65 | l.variables.with.static.lifetime |
| 1b6e0 | 20 62 79 20 75 73 69 6e 67 20 63 6f 6e 74 61 69 6e 65 72 73 20 69 6e 73 69 64 65 20 66 75 6e 63 | .by.using.containers.inside.func |
| 1b700 | 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 66 69 67 75 72 65 3e | tions........</p>.......<figure> |
| 1b720 | 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 |
| 1b740 | 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 73 74 61 74 69 63 5f 6c 6f 63 61 6c | e.class="file">test_static_local |
| 1b760 | 5f 76 61 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 | _variable.zig</cite></figcaption |
| 1b780 | 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" |
| 1b7a0 | 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= |
| 1b7c0 | 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 |
| 1b7e0 | 61 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 |
| 1b800 | 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" |
| 1b820 | 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 |
| 1b840 | 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" |
| 1b860 | 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 |
| 1b880 | 72 22 3e 26 71 75 6f 74 3b 73 74 61 74 69 63 20 6c 6f 63 61 6c 20 76 61 72 69 61 62 6c 65 26 71 | r">"static.local.variable&q |
| 1b8a0 | 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 |
| 1b8c0 | 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 66 6f 6f 28 29 20 3d | ok-kw">try</span>.expect(foo().= |
| 1b8e0 | 3d 20 3c 73 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 35 3c | =.<span.class="tok-number">1235< |
| 1b900 | 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 |
| 1b920 | 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 66 6f 6f 28 29 20 3d 3d 20 3c 73 70 | ">try</span>.expect(foo().==.<sp |
| 1b940 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 36 3c 2f 73 70 61 6e | an.class="tok-number">1236</span |
| 1b960 | 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</ |
| 1b980 | 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</ |
| 1b9a0 | 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 69 | span>().<span.class="tok-type">i |
| 1b9c0 | 33 32 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | 32</span>.{.....<span.class="tok |
| 1b9e0 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 53 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | -kw">const</span>.S.=.<span.clas |
| 1ba00 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 74 72 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 | s="tok-kw">struct</span>.{...... |
| 1ba20 | 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 |
| 1ba40 | 6e 3e 20 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 | n>.x:.<span.class="tok-type">i32 |
| 1ba60 | 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 |
| 1ba80 | 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 7d 3b 0a 20 20 20 20 53 2e 78 20 2b | r">1234</span>;.....};.....S.x.+ |
| 1baa0 | 3d 20 3c 73 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 |
| 1bac0 | 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 |
| 1bae0 | 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>< |
| 1bb00 | 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 |
| 1bb20 | 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> |
| 1bb40 | 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_ |
| 1bb60 | 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 6b 62 64 3e 0a | static_local_variable.zig</kbd>. |
| 1bb80 | 31 2f 31 20 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 74 | 1/1.test_static_local_variable.t |
| 1bba0 | 65 73 74 2e 73 74 61 74 69 63 20 6c 6f 63 61 6c 20 76 61 72 69 61 62 6c 65 2e 2e 2e 4f 4b 0a 41 | est.static.local.variable...OK.A |
| 1bbc0 | 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> |
| 1bbe0 | 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= |
| 1bc00 | 22 54 68 72 65 61 64 2d 4c 6f 63 61 6c 2d 56 61 72 69 61 62 6c 65 73 22 3e 3c 61 20 68 72 65 66 | "Thread-Local-Variables"><a.href |
| 1bc20 | 3d 22 23 74 6f 63 2d 54 68 72 65 61 64 2d 4c 6f 63 61 6c 2d 56 61 72 69 61 62 6c 65 73 22 3e 54 | ="#toc-Thread-Local-Variables">T |
| 1bc40 | 68 72 65 61 64 20 4c 6f 63 61 6c 20 56 61 72 69 61 62 6c 65 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 | hread.Local.Variables</a>.<a.cla |
| 1bc60 | 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 54 68 72 65 61 64 2d 4c 6f 63 61 6c 2d 56 61 72 | ss="hdr".href="#Thread-Local-Var |
| 1bc80 | 69 61 62 6c 65 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 20 | iables">..</a></h3>........<p>A. |
| 1bca0 | 76 61 72 69 61 62 6c 65 20 6d 61 79 20 62 65 20 73 70 65 63 69 66 69 65 64 20 74 6f 20 62 65 20 | variable.may.be.specified.to.be. |
| 1bcc0 | 61 20 74 68 72 65 61 64 2d 6c 6f 63 61 6c 20 76 61 72 69 61 62 6c 65 20 75 73 69 6e 67 20 74 68 | a.thread-local.variable.using.th |
| 1bce0 | 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 6b | e.......<code><span.class="tok-k |
| 1bd00 | 77 22 3e 74 68 72 65 61 64 6c 6f 63 61 6c 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6b 65 79 | w">threadlocal</span></code>.key |
| 1bd20 | 77 6f 72 64 2c 0a 20 20 20 20 20 20 77 68 69 63 68 20 6d 61 6b 65 73 20 65 61 63 68 20 74 68 72 | word,.......which.makes.each.thr |
| 1bd40 | 65 61 64 20 77 6f 72 6b 20 77 69 74 68 20 61 20 73 65 70 61 72 61 74 65 20 69 6e 73 74 61 6e 63 | ead.work.with.a.separate.instanc |
| 1bd60 | 65 20 6f 66 20 74 68 65 20 76 61 72 69 61 62 6c 65 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 | e.of.the.variable:</p>.......<fi |
| 1bd80 | 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" |
| 1bda0 | 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 68 72 65 61 64 5f | ><cite.class="file">test_thread_ |
| 1bdc0 | 6c 6f 63 61 6c 5f 76 61 72 69 61 62 6c 65 73 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 | local_variables.zig</cite></figc |
| 1bde0 | 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 |
| 1be00 | 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. |
| 1be20 | 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 |
| 1be40 | 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 |
| 1be60 | 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 |
| 1be80 | 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 73 73 65 72 74 20 3d 20 73 74 64 | ok-kw">const</span>.assert.=.std |
| 1bea0 | 2e 64 65 62 75 67 2e 61 73 73 65 72 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | .debug.assert;..<span.class="tok |
| 1bec0 | 2d 6b 77 22 3e 74 68 72 65 61 64 6c 6f 63 61 6c 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c | -kw">threadlocal</span>.<span.cl |
| 1bee0 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 78 3a 20 3c 73 70 61 6e | ass="tok-kw">var</span>.x:.<span |
| 1bf00 | 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>.=.< |
| 1bf20 | 73 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 |
| 1bf40 | 61 6e 3e 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c | an>;..<span.class="tok-kw">test< |
| 1bf60 | 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 |
| 1bf80 | 6f 74 3b 74 68 72 65 61 64 20 6c 6f 63 61 6c 20 73 74 6f 72 61 67 65 26 71 75 6f 74 3b 3c 2f 73 | ot;thread.local.storage"</s |
| 1bfa0 | 70 61 6e 3e 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"> |
| 1bfc0 | 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 74 68 72 65 61 64 31 20 3d 20 3c 73 70 61 6e 20 63 6c 61 | const</span>.thread1.=.<span.cla |
| 1bfe0 | 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 54 68 72 65 61 | ss="tok-kw">try</span>.std.Threa |
| 1c000 | 64 2e 73 70 61 77 6e 28 2e 7b 7d 2c 20 74 65 73 74 54 6c 73 2c 20 2e 7b 7d 29 3b 0a 20 20 20 20 | d.spawn(.{},.testTls,..{});..... |
| 1c020 | 3c 73 70 61 6e 20 63 6c 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 |
| 1c040 | 3e 20 74 68 72 65 61 64 32 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | >.thread2.=.<span.class="tok-kw" |
| 1c060 | 3e 74 72 79 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 | >try</span>.std.Thread.spawn(.{} |
| 1c080 | 2c 20 74 65 73 74 54 6c 73 2c 20 2e 7b 7d 29 3b 0a 20 20 20 20 74 65 73 74 54 6c 73 28 29 3b 0a | ,.testTls,..{});.....testTls();. |
| 1c0a0 | 20 20 20 20 74 68 72 65 61 64 31 2e 6a 6f 69 6e 28 29 3b 0a 20 20 20 20 74 68 72 65 61 64 32 2e | ....thread1.join();.....thread2. |
| 1c0c0 | 6a 6f 69 6e 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 | join();.}..<span.class="tok-kw"> |
| 1c0e0 | 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 74 | fn</span>.<span.class="tok-fn">t |
| 1c100 | 65 73 74 54 6c 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 | estTls</span>().<span.class="tok |
| 1c120 | 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 61 73 73 65 72 74 28 | -type">void</span>.{.....assert( |
| 1c140 | 78 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 | x.==.<span.class="tok-number">12 |
| 1c160 | 33 34 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 78 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | 34</span>);.....x.+=.<span.class |
| 1c180 | 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 61 73 73 65 | ="tok-number">1</span>;.....asse |
| 1c1a0 | 72 74 28 78 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 | rt(x.==.<span.class="tok-number" |
| 1c1c0 | 3e 31 32 33 35 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 | >1235</span>);.}</code></pre></f |
| 1c1e0 | 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= |
| 1c200 | 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 |
| 1c220 | 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 74 68 | re><samp>$.<kbd>zig.test.test_th |
| 1c240 | 72 65 61 64 5f 6c 6f 63 61 6c 5f 76 61 72 69 61 62 6c 65 73 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 | read_local_variables.zig</kbd>.1 |
| 1c260 | 2f 31 20 74 65 73 74 5f 74 68 72 65 61 64 5f 6c 6f 63 61 6c 5f 76 61 72 69 61 62 6c 65 73 2e 74 | /1.test_thread_local_variables.t |
| 1c280 | 65 73 74 2e 74 68 72 65 61 64 20 6c 6f 63 61 6c 20 73 74 6f 72 61 67 65 2e 2e 2e 4f 4b 0a 41 6c | est.thread.local.storage...OK.Al |
| 1c2a0 | 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>< |
| 1c2c0 | 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 46 6f 72 20 3c 61 | /figure>........<p>.......For.<a |
| 1c2e0 | 20 68 72 65 66 3d 22 23 53 69 6e 67 6c 65 2d 54 68 72 65 61 64 65 64 2d 42 75 69 6c 64 73 22 3e | .href="#Single-Threaded-Builds"> |
| 1c300 | 53 69 6e 67 6c 65 20 54 68 72 65 61 64 65 64 20 42 75 69 6c 64 73 3c 2f 61 3e 2c 20 61 6c 6c 20 | Single.Threaded.Builds</a>,.all. |
| 1c320 | 74 68 72 65 61 64 20 6c 6f 63 61 6c 20 76 61 72 69 61 62 6c 65 73 20 61 72 65 20 74 72 65 61 74 | thread.local.variables.are.treat |
| 1c340 | 65 64 20 61 73 20 72 65 67 75 6c 61 72 20 3c 61 20 68 72 65 66 3d 22 23 43 6f 6e 74 61 69 6e 65 | ed.as.regular.<a.href="#Containe |
| 1c360 | 72 2d 4c 65 76 65 6c 2d 56 61 72 69 61 62 6c 65 73 22 3e 43 6f 6e 74 61 69 6e 65 72 20 4c 65 76 | r-Level-Variables">Container.Lev |
| 1c380 | 65 6c 20 56 61 72 69 61 62 6c 65 73 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 | el.Variables</a>........</p>.... |
| 1c3a0 | 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 72 65 61 64 20 6c 6f 63 61 6c 20 76 61 72 69 61 62 | ...<p>.......Thread.local.variab |
| 1c3c0 | 6c 65 73 20 6d 61 79 20 6e 6f 74 20 62 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | les.may.not.be.<code><span.class |
| 1c3e0 | 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 2e 0a 20 | ="tok-kw">const</span></code>... |
| 1c400 | 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 3d 22 | .....</p>...............<h3.id=" |
| 1c420 | 4c 6f 63 61 6c 2d 56 61 72 69 61 62 6c 65 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 4c | Local-Variables"><a.href="#toc-L |
| 1c440 | 6f 63 61 6c 2d 56 61 72 69 61 62 6c 65 73 22 3e 4c 6f 63 61 6c 20 56 61 72 69 61 62 6c 65 73 3c | ocal-Variables">Local.Variables< |
| 1c460 | 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 4c 6f 63 61 6c 2d | /a>.<a.class="hdr".href="#Local- |
| 1c480 | 56 61 72 69 61 62 6c 65 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 | Variables">..</a></h3>........<p |
| 1c4a0 | 3e 0a 20 20 20 20 20 20 4c 6f 63 61 6c 20 76 61 72 69 61 62 6c 65 73 20 6f 63 63 75 72 20 69 6e | >.......Local.variables.occur.in |
| 1c4c0 | 73 69 64 65 20 3c 61 20 68 72 65 66 3d 22 23 46 75 6e 63 74 69 6f 6e 73 22 3e 46 75 6e 63 74 69 | side.<a.href="#Functions">Functi |
| 1c4e0 | 6f 6e 73 3c 2f 61 3e 2c 20 3c 61 20 68 72 65 66 3d 22 23 63 6f 6d 70 74 69 6d 65 22 3e 63 6f 6d | ons</a>,.<a.href="#comptime">com |
| 1c500 | 70 74 69 6d 65 3c 2f 61 3e 20 62 6c 6f 63 6b 73 2c 20 61 6e 64 20 3c 61 20 68 72 65 66 3d 22 23 | ptime</a>.blocks,.and.<a.href="# |
| 1c520 | 63 49 6d 70 6f 72 74 22 3e 40 63 49 6d 70 6f 72 74 3c 2f 61 3e 20 62 6c 6f 63 6b 73 2e 0a 20 20 | cImport">@cImport</a>.blocks.... |
| 1c540 | 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. |
| 1c560 | 6c 6f 63 61 6c 20 76 61 72 69 61 62 6c 65 20 69 73 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c | local.variable.is.<code><span.cl |
| 1c580 | 61 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> |
| 1c5a0 | 2c 20 69 74 20 6d 65 61 6e 73 20 74 68 61 74 20 61 66 74 65 72 20 69 6e 69 74 69 61 6c 69 7a 61 | ,.it.means.that.after.initializa |
| 1c5c0 | 74 69 6f 6e 2c 20 74 68 65 20 76 61 72 69 61 62 6c 65 27 73 0a 20 20 20 20 20 20 76 61 6c 75 65 | tion,.the.variable's.......value |
| 1c5e0 | 20 77 69 6c 6c 20 6e 6f 74 20 63 68 61 6e 67 65 2e 20 49 66 20 74 68 65 20 69 6e 69 74 69 61 6c | .will.not.change..If.the.initial |
| 1c600 | 69 7a 61 74 69 6f 6e 20 76 61 6c 75 65 20 6f 66 20 61 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 | ization.value.of.a.<code><span.c |
| 1c620 | 6c 61 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 | lass="tok-kw">const</span></code |
| 1c640 | 3e 20 76 61 72 69 61 62 6c 65 20 69 73 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 63 6f | >.variable.is.......<a.href="#co |
| 1c660 | 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 2c 20 74 68 65 6e | mptime">comptime</a>-known,.then |
| 1c680 | 20 74 68 65 20 76 61 72 69 61 62 6c 65 20 69 73 20 61 6c 73 6f 20 3c 63 6f 64 65 3e 3c 73 70 61 | .the.variable.is.also.<code><spa |
| 1c6a0 | 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> |
| 1c6c0 | 3c 2f 63 6f 64 65 3e 2d 6b 6e 6f 77 6e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 | </code>-known........</p>....... |
| 1c6e0 | 3c 70 3e 0a 20 20 20 20 20 20 41 20 6c 6f 63 61 6c 20 76 61 72 69 61 62 6c 65 20 6d 61 79 20 62 | <p>.......A.local.variable.may.b |
| 1c700 | 65 20 71 75 61 6c 69 66 69 65 64 20 77 69 74 68 20 74 68 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e | e.qualified.with.the.<code><span |
| 1c720 | 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>< |
| 1c740 | 2f 63 6f 64 65 3e 20 6b 65 79 77 6f 72 64 2e 20 54 68 69 73 20 63 61 75 73 65 73 0a 20 20 20 20 | /code>.keyword..This.causes..... |
| 1c760 | 20 20 74 68 65 20 76 61 72 69 61 62 6c 65 27 73 20 76 61 6c 75 65 20 74 6f 20 62 65 20 3c 63 6f | ..the.variable's.value.to.be.<co |
| 1c780 | 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 |
| 1c7a0 | 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2d 6b 6e 6f 77 6e 2c 20 61 6e 64 20 61 6c 6c 20 6c 6f | </span></code>-known,.and.all.lo |
| 1c7c0 | 61 64 73 20 61 6e 64 20 73 74 6f 72 65 73 20 6f 66 20 74 68 65 0a 20 20 20 20 20 20 76 61 72 69 | ads.and.stores.of.the.......vari |
| 1c7e0 | 61 62 6c 65 20 74 6f 20 68 61 70 70 65 6e 20 64 75 72 69 6e 67 20 73 65 6d 61 6e 74 69 63 20 61 | able.to.happen.during.semantic.a |
| 1c800 | 6e 61 6c 79 73 69 73 20 6f 66 20 74 68 65 20 70 72 6f 67 72 61 6d 2c 20 72 61 74 68 65 72 20 74 | nalysis.of.the.program,.rather.t |
| 1c820 | 68 61 6e 20 61 74 20 72 75 6e 74 69 6d 65 2e 0a 20 20 20 20 20 20 41 6c 6c 20 76 61 72 69 61 62 | han.at.runtime........All.variab |
| 1c840 | 6c 65 73 20 64 65 63 6c 61 72 65 64 20 69 6e 20 61 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c | les.declared.in.a.<code><span.cl |
| 1c860 | 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 6f | ass="tok-kw">comptime</span></co |
| 1c880 | 64 65 3e 20 65 78 70 72 65 73 73 69 6f 6e 20 61 72 65 20 69 6d 70 6c 69 63 69 74 6c 79 0a 20 20 | de>.expression.are.implicitly... |
| 1c8a0 | 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 63 | ....<code><span.class="tok-kw">c |
| 1c8c0 | 6f 6d 70 74 69 6d 65 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 | omptime</span></code>.variables. |
| 1c8e0 | 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 |
| 1c900 | 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 |
| 1c920 | 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 76 61 72 69 61 62 6c 65 73 | s="file">test_comptime_variables |
| 1c940 | 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 |
| 1c960 | 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 |
| 1c980 | 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 |
| 1c9a0 | 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= |
| 1c9c0 | 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> |
| 1c9e0 | 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 |
| 1ca00 | 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 |
| 1ca20 | 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 |
| 1ca40 | 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">" |
| 1ca60 | 63 6f 6d 70 74 69 6d 65 20 76 61 72 73 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 | comptime.vars"</span>.{.... |
| 1ca80 | 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> |
| 1caa0 | 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</ |
| 1cac0 | 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" |
| 1cae0 | 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- |
| 1cb00 | 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | kw">comptime</span>.<span.class= |
| 1cb20 | 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 79 3a 20 3c 73 70 61 6e 20 63 6c 61 | "tok-kw">var</span>.y:.<span.cla |
| 1cb40 | 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 |
| 1cb60 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 0a 20 | .class="tok-number">1</span>;... |
| 1cb80 | 20 20 20 78 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 | ...x.+=.<span.class="tok-number" |
| 1cba0 | 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 79 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | >1</span>;.....y.+=.<span.class= |
| 1cbc0 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 0a 20 20 20 20 3c 73 70 61 | "tok-number">1</span>;......<spa |
| 1cbe0 | 6e 20 63 6c 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 |
| 1cc00 | 63 74 28 78 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 | ct(x.==.<span.class="tok-number" |
| 1cc20 | 3e 32 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | >2</span>);.....<span.class="tok |
| 1cc40 | 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 70 61 | -kw">try</span>.expect(y.==.<spa |
| 1cc60 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 29 3b 0a | n.class="tok-number">2</span>);. |
| 1cc80 | 0a 20 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 |
| 1cca0 | 61 6e 3e 20 28 79 20 21 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | an>.(y.!=.<span.class="tok-numbe |
| 1ccc0 | 72 22 3e 32 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | r">2</span>).{.........<span.cla |
| 1cce0 | 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 69 73 20 63 6f 6d 70 69 6c 65 | ss="tok-comment">//.This.compile |
| 1cd00 | 20 65 72 72 6f 72 20 6e 65 76 65 72 20 74 72 69 67 67 65 72 73 20 62 65 63 61 75 73 65 20 79 20 | .error.never.triggers.because.y. |
| 1cd20 | 69 73 20 61 20 63 6f 6d 70 74 69 6d 65 20 76 61 72 69 61 62 6c 65 2c 3c 2f 73 70 61 6e 3e 0a 20 | is.a.comptime.variable,</span>.. |
| 1cd40 | 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" |
| 1cd60 | 3e 2f 2f 20 61 6e 64 20 73 6f 20 60 79 20 21 3d 20 32 60 20 69 73 20 61 20 63 6f 6d 70 74 69 6d | >//.and.so.`y.!=.2`.is.a.comptim |
| 1cd80 | 65 20 76 61 6c 75 65 2c 20 61 6e 64 20 74 68 69 73 20 69 66 20 69 73 20 73 74 61 74 69 63 61 6c | e.value,.and.this.if.is.statical |
| 1cda0 | 6c 79 20 65 76 61 6c 75 61 74 65 64 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 3c 73 70 | ly.evaluated.</span>.........<sp |
| 1cdc0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 6f 6d 70 69 6c 65 45 | an.class="tok-builtin">@compileE |
| 1cde0 | 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 74 72 | rror</span>(<span.class="tok-str |
| 1ce00 | 22 3e 26 71 75 6f 74 3b 77 72 6f 6e 67 20 79 20 76 61 6c 75 65 26 71 75 6f 74 3b 3c 2f 73 70 61 | ">"wrong.y.value"</spa |
| 1ce20 | 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 72 | n>);.....}.}</code></pre></figur |
| 1ce40 | 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 |
| 1ce60 | 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>< |
| 1ce80 | 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 |
| 1cea0 | 6d 65 5f 76 61 72 69 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 | me_variables.zig</kbd>.1/1.test_ |
| 1cec0 | 63 6f 6d 70 74 69 6d 65 5f 76 61 72 69 61 62 6c 65 73 2e 74 65 73 74 2e 63 6f 6d 70 74 69 6d 65 | comptime_variables.test.comptime |
| 1cee0 | 20 76 61 72 73 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c | .vars...OK.All.1.tests.passed..< |
| 1cf00 | 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>........... |
| 1cf20 | 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 49 6e 74 65 67 65 72 73 22 3e 3c 61 | ............<h2.id="Integers"><a |
| 1cf40 | 20 68 72 65 66 3d 22 23 74 6f 63 2d 49 6e 74 65 67 65 72 73 22 3e 49 6e 74 65 67 65 72 73 3c 2f | .href="#toc-Integers">Integers</ |
| 1cf60 | 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 67 65 72 | a>.<a.class="hdr".href="#Integer |
| 1cf80 | 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 49 6e | s">..</a></h2>........<h3.id="In |
| 1cfa0 | 74 65 67 65 72 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 49 6e | teger-Literals"><a.href="#toc-In |
| 1cfc0 | 74 65 67 65 72 2d 4c 69 74 65 72 61 6c 73 22 3e 49 6e 74 65 67 65 72 20 4c 69 74 65 72 61 6c 73 | teger-Literals">Integer.Literals |
| 1cfe0 | 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 67 | </a>.<a.class="hdr".href="#Integ |
| 1d000 | 65 72 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 | er-Literals">..</a></h3>........ |
| 1d020 | 3c 66 69 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 |
| 1d040 | 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 69 6e 74 65 67 65 72 5f 6c | ap"><cite.class="file">integer_l |
| 1d060 | 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>< |
| 1d080 | 70 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 |
| 1d0a0 | 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 64 65 63 69 6d 61 6c 5f 69 6e 74 20 3d 20 3c 73 70 61 6e 20 | onst</span>.decimal_int.=.<span. |
| 1d0c0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 39 38 32 32 32 3c 2f 73 70 61 6e 3e 3b | class="tok-number">98222</span>; |
| 1d0e0 | 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 |
| 1d100 | 6e 3e 20 68 65 78 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 | n>.hex_int.=.<span.class="tok-nu |
| 1d120 | 6d 62 65 72 22 3e 30 78 66 66 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | mber">0xff</span>;.<span.class=" |
| 1d140 | 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 6e 6f 74 68 65 72 5f 68 65 78 | tok-kw">const</span>.another_hex |
| 1d160 | 5f 69 6e 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e | _int.=.<span.class="tok-number"> |
| 1d180 | 30 78 46 46 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 | 0xFF</span>;.<span.class="tok-kw |
| 1d1a0 | 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6f 63 74 61 6c 5f 69 6e 74 20 3d 20 3c 73 70 61 6e | ">const</span>.octal_int.=.<span |
| 1d1c0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 6f 37 35 35 3c 2f 73 70 61 6e 3e | .class="tok-number">0o755</span> |
| 1d1e0 | 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 |
| 1d200 | 61 6e 3e 20 62 69 6e 61 72 79 5f 69 6e 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | an>.binary_int.=.<span.class="to |
| 1d220 | 6b 2d 6e 75 6d 62 65 72 22 3e 30 62 31 31 31 31 30 30 30 30 3c 2f 73 70 61 6e 3e 3b 0a 0a 3c 73 | k-number">0b11110000</span>;..<s |
| 1d240 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 75 6e 64 65 72 | pan.class="tok-comment">//.under |
| 1d260 | 73 63 6f 72 65 73 20 6d 61 79 20 62 65 20 70 6c 61 63 65 64 20 62 65 74 77 65 65 6e 20 74 77 6f | scores.may.be.placed.between.two |
| 1d280 | 20 64 69 67 69 74 73 20 61 73 20 61 20 76 69 73 75 61 6c 20 73 65 70 61 72 61 74 6f 72 3c 2f 73 | .digits.as.a.visual.separator</s |
| 1d2a0 | 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< |
| 1d2c0 | 2f 73 70 61 6e 3e 20 6f 6e 65 5f 62 69 6c 6c 69 6f 6e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | /span>.one_billion.=.<span.class |
| 1d2e0 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 5f 30 30 30 5f 30 30 30 5f 30 30 30 3c 2f 73 70 61 | ="tok-number">1_000_000_000</spa |
| 1d300 | 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</ |
| 1d320 | 73 70 61 6e 3e 20 62 69 6e 61 72 79 5f 6d 61 73 6b 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | span>.binary_mask.=.<span.class= |
| 1d340 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 62 31 5f 31 31 31 31 5f 31 31 31 31 3c 2f 73 70 61 6e | "tok-number">0b1_1111_1111</span |
| 1d360 | 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 | >;.<span.class="tok-kw">const</s |
| 1d380 | 70 61 6e 3e 20 70 65 72 6d 69 73 73 69 6f 6e 73 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | pan>.permissions.=.<span.class=" |
| 1d3a0 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 6f 37 5f 35 5f 35 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 | tok-number">0o7_5_5</span>;.<spa |
| 1d3c0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 62 69 | n.class="tok-kw">const</span>.bi |
| 1d3e0 | 67 5f 61 64 64 72 65 73 73 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | g_address.=.<span.class="tok-num |
| 1d400 | 62 65 72 22 3e 30 78 46 46 38 30 5f 30 30 30 30 5f 30 30 30 30 5f 30 30 30 30 3c 2f 73 70 61 6e | ber">0xFF80_0000_0000_0000</span |
| 1d420 | 3e 3b 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 | >;</code></pre></figure>........ |
| 1d440 | 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 52 75 6e 74 69 6d 65 2d 49 6e 74 65 67 65 72 2d 56 | .......<h3.id="Runtime-Integer-V |
| 1d460 | 61 6c 75 65 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 52 75 6e 74 69 6d 65 2d 49 6e 74 | alues"><a.href="#toc-Runtime-Int |
| 1d480 | 65 67 65 72 2d 56 61 6c 75 65 73 22 3e 52 75 6e 74 69 6d 65 20 49 6e 74 65 67 65 72 20 56 61 6c | eger-Values">Runtime.Integer.Val |
| 1d4a0 | 75 65 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 52 75 | ues</a>.<a.class="hdr".href="#Ru |
| 1d4c0 | 6e 74 69 6d 65 2d 49 6e 74 65 67 65 72 2d 56 61 6c 75 65 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 | ntime-Integer-Values">..</a></h3 |
| 1d4e0 | 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 6e 74 65 67 65 72 20 6c 69 74 65 72 | >........<p>.......Integer.liter |
| 1d500 | 61 6c 73 20 68 61 76 65 20 6e 6f 20 73 69 7a 65 20 6c 69 6d 69 74 61 74 69 6f 6e 2c 20 61 6e 64 | als.have.no.size.limitation,.and |
| 1d520 | 20 69 66 20 61 6e 79 20 49 6c 6c 65 67 61 6c 20 42 65 68 61 76 69 6f 72 20 6f 63 63 75 72 73 2c | .if.any.Illegal.Behavior.occurs, |
| 1d540 | 0a 20 20 20 20 20 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 20 63 61 74 63 68 65 73 20 69 74 2e 0a | .......the.compiler.catches.it.. |
| 1d560 | 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 48 6f 77 65 76 | ......</p>.......<p>.......Howev |
| 1d580 | 65 72 2c 20 6f 6e 63 65 20 61 6e 20 69 6e 74 65 67 65 72 20 76 61 6c 75 65 20 69 73 20 6e 6f 20 | er,.once.an.integer.value.is.no. |
| 1d5a0 | 6c 6f 6e 67 65 72 20 6b 6e 6f 77 6e 20 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 2c 20 69 74 | longer.known.at.compile-time,.it |
| 1d5c0 | 20 6d 75 73 74 20 68 61 76 65 20 61 0a 20 20 20 20 20 20 6b 6e 6f 77 6e 20 73 69 7a 65 2c 20 61 | .must.have.a.......known.size,.a |
| 1d5e0 | 6e 64 20 69 73 20 76 75 6c 6e 65 72 61 62 6c 65 20 74 6f 20 73 61 66 65 74 79 2d 63 68 65 63 6b | nd.is.vulnerable.to.safety-check |
| 1d600 | 65 64 20 3c 61 20 68 72 65 66 3d 22 23 49 6c 6c 65 67 61 6c 2d 42 65 68 61 76 69 6f 72 22 3e 49 | ed.<a.href="#Illegal-Behavior">I |
| 1d620 | 6c 6c 65 67 61 6c 20 42 65 68 61 76 69 6f 72 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a | llegal.Behavior</a>........</p>. |
| 1d640 | 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= |
| 1d660 | 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 |
| 1d680 | 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 3e 3c 2f 66 69 67 | time_vs_comptime.zig</cite></fig |
| 1d6a0 | 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=" |
| 1d6c0 | 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 |
| 1d6e0 | 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 70 61 6e 20 63 6c | ok-fn">divide</span>(a:.<span.cl |
| 1d700 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 2c 20 62 3a 20 3c 73 | ass="tok-type">i32</span>,.b:.<s |
| 1d720 | 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>) |
| 1d740 | 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 |
| 1d760 | 6e 3e 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 |
| 1d780 | 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 3e 3c 2f 70 72 65 | turn</span>.a./.b;.}</code></pre |
| 1d7a0 | 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 74 | ></figure>........<p>.......In.t |
| 1d7c0 | 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 3e 61 3c 2f 63 6f | his.function,.values.<code>a</co |
| 1d7e0 | 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 6b 6e 6f 77 6e | de>.and.<code>b</code>.are.known |
| 1d800 | 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 64 20 74 68 75 73 | .only.at.runtime,.......and.thus |
| 1d820 | 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 73 20 76 75 6c 6e | .this.division.operation.is.vuln |
| 1d840 | 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 6e 74 65 67 65 72 | erable.to.both.<a.href="#Integer |
| 1d860 | 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 77 3c 2f 61 3e 20 | -Overflow">Integer.Overflow</a>. |
| 1d880 | 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 6f 6e 2d 62 79 2d | and.......<a.href="#Division-by- |
| 1d8a0 | 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 2e 0a 20 20 20 20 | Zero">Division.by.Zero</a>...... |
| 1d8c0 | 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 72 61 74 6f 72 73 | ..</p>.......<p>.......Operators |
| 1d8e0 | 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 64 20 3c 63 6f 64 | .such.as.<code>+</code>.and.<cod |
| 1d900 | 65 3e 2d 3c 2f 63 6f 64 65 3e 20 63 61 75 73 65 20 3c 61 20 68 72 65 66 3d 22 23 49 6c 6c 65 67 | e>-</code>.cause.<a.href="#Illeg |
| 1d920 | 61 6c 2d 42 65 68 61 76 69 6f 72 22 3e 49 6c 6c 65 67 61 6c 20 42 65 68 61 76 69 6f 72 3c 2f 61 | al-Behavior">Illegal.Behavior</a |
| 1d940 | 3e 20 6f 6e 0a 20 20 20 20 20 20 69 6e 74 65 67 65 72 20 6f 76 65 72 66 6c 6f 77 2e 20 41 6c 74 | >.on.......integer.overflow..Alt |
| 1d960 | 65 72 6e 61 74 69 76 65 20 6f 70 65 72 61 74 6f 72 73 20 61 72 65 20 70 72 6f 76 69 64 65 64 20 | ernative.operators.are.provided. |
| 1d980 | 66 6f 72 20 77 72 61 70 70 69 6e 67 20 61 6e 64 20 73 61 74 75 72 61 74 69 6e 67 20 61 72 69 74 | for.wrapping.and.saturating.arit |
| 1d9a0 | 68 6d 65 74 69 63 20 6f 6e 20 61 6c 6c 20 74 61 72 67 65 74 73 2e 0a 20 20 20 20 20 20 3c 63 6f | hmetic.on.all.targets........<co |
| 1d9c0 | 64 65 3e 2b 25 3c 2f 63 6f 64 65 3e 20 61 6e 64 20 3c 63 6f 64 65 3e 2d 25 3c 2f 63 6f 64 65 3e | de>+%</code>.and.<code>-%</code> |
| 1d9e0 | 20 70 65 72 66 6f 72 6d 20 77 72 61 70 70 69 6e 67 20 61 72 69 74 68 6d 65 74 69 63 0a 20 20 20 | .perform.wrapping.arithmetic.... |
| 1da00 | 20 20 20 77 68 69 6c 65 20 3c 63 6f 64 65 3e 2b 7c 3c 2f 63 6f 64 65 3e 20 61 6e 64 20 3c 63 6f | ...while.<code>+|</code>.and.<co |
| 1da20 | 64 65 3e 2d 7c 3c 2f 63 6f 64 65 3e 20 70 65 72 66 6f 72 6d 20 73 61 74 75 72 61 74 69 6e 67 20 | de>-|</code>.perform.saturating. |
| 1da40 | 61 72 69 74 68 6d 65 74 69 63 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e | arithmetic........</p>.......<p> |
| 1da60 | 0a 20 20 20 20 20 20 5a 69 67 20 73 75 70 70 6f 72 74 73 20 61 72 62 69 74 72 61 72 79 20 62 69 | .......Zig.supports.arbitrary.bi |
| 1da80 | 74 2d 77 69 64 74 68 20 69 6e 74 65 67 65 72 73 2c 20 72 65 66 65 72 65 6e 63 65 64 20 62 79 20 | t-width.integers,.referenced.by. |
| 1daa0 | 75 73 69 6e 67 0a 20 20 20 20 20 20 61 6e 20 69 64 65 6e 74 69 66 69 65 72 20 6f 66 20 3c 63 6f | using.......an.identifier.of.<co |
| 1dac0 | 64 65 3e 69 3c 2f 63 6f 64 65 3e 20 6f 72 20 3c 63 6f 64 65 3e 75 3c 2f 63 6f 64 65 3e 20 66 6f | de>i</code>.or.<code>u</code>.fo |
| 1dae0 | 6c 6c 6f 77 65 64 20 62 79 20 64 69 67 69 74 73 2e 20 46 6f 72 20 65 78 61 6d 70 6c 65 2c 20 74 | llowed.by.digits..For.example,.t |
| 1db00 | 68 65 20 69 64 65 6e 74 69 66 69 65 72 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 | he.identifier.......<code><span. |
| 1db20 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 37 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 | class="tok-type">i7</span></code |
| 1db40 | 3e 20 72 65 66 65 72 73 20 74 6f 20 61 20 73 69 67 6e 65 64 20 37 2d 62 69 74 20 69 6e 74 65 67 | >.refers.to.a.signed.7-bit.integ |
| 1db60 | 65 72 2e 20 54 68 65 20 6d 61 78 69 6d 75 6d 20 61 6c 6c 6f 77 65 64 20 62 69 74 2d 77 69 64 74 | er..The.maximum.allowed.bit-widt |
| 1db80 | 68 20 6f 66 20 61 6e 0a 20 20 20 20 20 20 69 6e 74 65 67 65 72 20 74 79 70 65 20 69 73 20 3c 63 | h.of.an.......integer.type.is.<c |
| 1dba0 | 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 36 35 35 | ode><span.class="tok-number">655 |
| 1dbc0 | 33 35 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 20 46 6f 72 20 73 69 67 6e 65 64 20 69 6e 74 | 35</span></code>..For.signed.int |
| 1dbe0 | 65 67 65 72 20 74 79 70 65 73 2c 20 5a 69 67 20 75 73 65 73 20 61 0a 20 20 20 20 20 20 3c 61 20 | eger.types,.Zig.uses.a.......<a. |
| 1dc00 | 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 65 6e 2e 77 69 6b 69 70 65 64 69 61 2e 6f 72 67 2f 77 | href="https://en.wikipedia.org/w |
| 1dc20 | 69 6b 69 2f 54 77 6f 27 73 5f 63 6f 6d 70 6c 65 6d 65 6e 74 22 3e 74 77 6f 27 73 20 63 6f 6d 70 | iki/Two's_complement">two's.comp |
| 1dc40 | 6c 65 6d 65 6e 74 3c 2f 61 3e 20 72 65 70 72 65 73 65 6e 74 61 74 69 6f 6e 2e 0a 20 20 20 20 20 | lement</a>.representation....... |
| 1dc60 | 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> |
| 1dc80 | 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 57 72 61 70 70 69 6e 67 2d 4f 70 65 72 61 74 69 6f | .<li><a.href="#Wrapping-Operatio |
| 1dca0 | 6e 73 22 3e 57 72 61 70 70 69 6e 67 20 4f 70 65 72 61 74 69 6f 6e 73 3c 2f 61 3e 3c 2f 6c 69 3e | ns">Wrapping.Operations</a></li> |
| 1dcc0 | 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 32 20 | .</ul>......................<h2. |
| 1dce0 | 69 64 3d 22 46 6c 6f 61 74 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 46 6c 6f 61 74 73 | id="Floats"><a.href="#toc-Floats |
| 1dd00 | 22 3e 46 6c 6f 61 74 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 | ">Floats</a>.<a.class="hdr".href |
| 1dd20 | 3d 22 23 46 6c 6f 61 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 | ="#Floats">..</a></h2>........<p |
| 1dd40 | 3e 5a 69 67 20 68 61 73 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 66 6c 6f 61 74 69 6e 67 20 | >Zig.has.the.following.floating. |
| 1dd60 | 70 6f 69 6e 74 20 74 79 70 65 73 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 | point.types:</p>.......<ul>..... |
| 1dd80 | 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 |
| 1dda0 | 2d 74 79 70 65 22 3e 66 31 36 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 2d 20 49 45 45 45 2d | -type">f16</span></code>.-.IEEE- |
| 1ddc0 | 37 35 34 2d 32 30 30 38 20 62 69 6e 61 72 79 31 36 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 | 754-2008.binary16</li>.......... |
| 1dde0 | 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 |
| 1de00 | 22 3e 66 33 32 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 | ">f32</span></code>.-.IEEE-754-2 |
| 1de20 | 30 30 38 20 62 69 6e 61 72 79 33 32 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e | 008.binary32</li>...........<li> |
| 1de40 | 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 36 34 | <code><span.class="tok-type">f64 |
| 1de60 | 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 38 20 62 | </span></code>.-.IEEE-754-2008.b |
| 1de80 | 69 6e 61 72 79 36 34 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 | inary64</li>...........<li><code |
| 1dea0 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 38 30 3c 2f 73 70 61 | ><span.class="tok-type">f80</spa |
| 1dec0 | 6e 3e 3c 2f 63 6f 64 65 3e 20 2d 20 49 45 45 45 2d 37 35 34 2d 32 30 30 38 20 38 30 2d 62 69 74 | n></code>.-.IEEE-754-2008.80-bit |
| 1dee0 | 20 65 78 74 65 6e 64 65 64 20 70 72 65 63 69 73 69 6f 6e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 | .extended.precision</li>........ |
| 1df00 | 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 79 | ...<li><code><span.class="tok-ty |
| 1df20 | 70 65 22 3e 66 31 32 38 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 2d 20 49 45 45 45 2d 37 35 | pe">f128</span></code>.-.IEEE-75 |
| 1df40 | 34 2d 32 30 30 38 20 62 69 6e 61 72 79 31 32 38 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 | 4-2008.binary128</li>........... |
| 1df60 | 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" |
| 1df80 | 3e 63 5f 6c 6f 6e 67 64 6f 75 62 6c 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 2d 20 6d 61 | >c_longdouble</span></code>.-.ma |
| 1dfa0 | 74 63 68 65 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 63 22 3e 6c 6f 6e 67 20 64 6f 75 62 6c | tches.<code.class="c">long.doubl |
| 1dfc0 | 65 3c 2f 63 6f 64 65 3e 20 66 6f 72 20 74 68 65 20 74 61 72 67 65 74 20 43 20 41 42 49 3c 2f 6c | e</code>.for.the.target.C.ABI</l |
| 1dfe0 | 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 46 6c 6f | i>.......</ul>.......<h3.id="Flo |
| 1e000 | 61 74 2d 4c 69 74 65 72 61 6c 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 46 6c 6f 61 74 | at-Literals"><a.href="#toc-Float |
| 1e020 | 2d 4c 69 74 65 72 61 6c 73 22 3e 46 6c 6f 61 74 20 4c 69 74 65 72 61 6c 73 3c 2f 61 3e 20 3c 61 | -Literals">Float.Literals</a>.<a |
| 1e040 | 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 2d 4c 69 74 65 72 61 | .class="hdr".href="#Float-Litera |
| 1e060 | 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 20 20 | ls">..</a></h3>........<p>...... |
| 1e080 | 20 46 6c 6f 61 74 20 6c 69 74 65 72 61 6c 73 20 68 61 76 65 20 74 79 70 65 20 3c 63 6f 64 65 3e | .Float.literals.have.type.<code> |
| 1e0a0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 63 6f 6d 70 74 69 6d 65 5f | <span.class="tok-type">comptime_ |
| 1e0c0 | 66 6c 6f 61 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 77 68 69 63 68 20 69 73 20 67 75 61 | float</span></code>.which.is.gua |
| 1e0e0 | 72 61 6e 74 65 65 64 20 74 6f 20 68 61 76 65 0a 20 20 20 20 20 20 74 68 65 20 73 61 6d 65 20 70 | ranteed.to.have.......the.same.p |
| 1e100 | 72 65 63 69 73 69 6f 6e 20 61 6e 64 20 6f 70 65 72 61 74 69 6f 6e 73 20 6f 66 20 74 68 65 20 6c | recision.and.operations.of.the.l |
| 1e120 | 61 72 67 65 73 74 20 6f 74 68 65 72 20 66 6c 6f 61 74 69 6e 67 20 70 6f 69 6e 74 20 74 79 70 65 | argest.other.floating.point.type |
| 1e140 | 2c 20 77 68 69 63 68 20 69 73 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 | ,.which.is.......<code><span.cla |
| 1e160 | 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 3e | ss="tok-type">f128</span></code> |
| 1e180 | 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 6c 6f | ........</p>.......<p>.......Flo |
| 1e1a0 | 61 74 20 6c 69 74 65 72 61 6c 73 20 3c 61 20 68 72 65 66 3d 22 23 54 79 70 65 2d 43 6f 65 72 63 | at.literals.<a.href="#Type-Coerc |
| 1e1c0 | 69 6f 6e 22 3e 63 6f 65 72 63 65 3c 2f 61 3e 20 74 6f 20 61 6e 79 20 66 6c 6f 61 74 69 6e 67 20 | ion">coerce</a>.to.any.floating. |
| 1e1e0 | 70 6f 69 6e 74 20 74 79 70 65 2c 0a 20 20 20 20 20 20 61 6e 64 20 74 6f 20 61 6e 79 20 3c 61 20 | point.type,.......and.to.any.<a. |
| 1e200 | 68 72 65 66 3d 22 23 49 6e 74 65 67 65 72 73 22 3e 69 6e 74 65 67 65 72 3c 2f 61 3e 20 74 79 70 | href="#Integers">integer</a>.typ |
| 1e220 | 65 20 77 68 65 6e 20 74 68 65 72 65 20 69 73 20 6e 6f 20 66 72 61 63 74 69 6f 6e 61 6c 20 63 6f | e.when.there.is.no.fractional.co |
| 1e240 | 6d 70 6f 6e 65 6e 74 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 | mponent........</p>.......<figur |
| 1e260 | 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 |
| 1e280 | 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 66 6c 6f 61 74 5f 6c 69 74 65 72 61 6c 73 2e | ite.class="file">float_literals. |
| 1e2a0 | 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 |
| 1e2c0 | 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 |
| 1e2e0 | 61 6e 3e 20 66 6c 6f 61 74 69 6e 67 5f 70 6f 69 6e 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | an>.floating_point.=.<span.class |
| 1e300 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 2e 30 45 2b 37 37 3c 2f 73 70 61 6e 3e 3b 0a | ="tok-number">123.0E+77</span>;. |
| 1e320 | 3c 73 70 61 6e 20 63 6c 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 |
| 1e340 | 3e 20 61 6e 6f 74 68 65 72 5f 66 6c 6f 61 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | >.another_float.=.<span.class="t |
| 1e360 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 2e 30 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 | ok-number">123.0</span>;.<span.c |
| 1e380 | 6c 61 73 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 65 74 5f 61 | lass="tok-kw">const</span>.yet_a |
| 1e3a0 | 6e 6f 74 68 65 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | nother.=.<span.class="tok-number |
| 1e3c0 | 22 3e 31 32 33 2e 30 65 2b 37 37 3c 2f 73 70 61 6e 3e 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | ">123.0e+77</span>;..<span.class |
| 1e3e0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 68 65 78 5f 66 6c 6f 61 74 | ="tok-kw">const</span>.hex_float |
| 1e400 | 69 6e 67 5f 70 6f 69 6e 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | ing_point.=.<span.class="tok-num |
| 1e420 | 62 65 72 22 3e 30 78 31 30 33 2e 37 30 70 2d 35 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 | ber">0x103.70p-5</span>;.<span.c |
| 1e440 | 6c 61 73 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 6e 6f 74 68 | lass="tok-kw">const</span>.anoth |
| 1e460 | 65 72 5f 68 65 78 5f 66 6c 6f 61 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | er_hex_float.=.<span.class="tok- |
| 1e480 | 6e 75 6d 62 65 72 22 3e 30 78 31 30 33 2e 37 30 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 | number">0x103.70</span>;.<span.c |
| 1e4a0 | 6c 61 73 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 65 74 5f 61 | lass="tok-kw">const</span>.yet_a |
| 1e4c0 | 6e 6f 74 68 65 72 5f 68 65 78 5f 66 6c 6f 61 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | nother_hex_float.=.<span.class=" |
| 1e4e0 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 31 30 33 2e 37 30 50 2d 35 3c 2f 73 70 61 6e 3e 3b 0a | tok-number">0x103.70P-5</span>;. |
| 1e500 | 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 75 6e | .<span.class="tok-comment">//.un |
| 1e520 | 64 65 72 73 63 6f 72 65 73 20 6d 61 79 20 62 65 20 70 6c 61 63 65 64 20 62 65 74 77 65 65 6e 20 | derscores.may.be.placed.between. |
| 1e540 | 74 77 6f 20 64 69 67 69 74 73 20 61 73 20 61 20 76 69 73 75 61 6c 20 73 65 70 61 72 61 74 6f 72 | two.digits.as.a.visual.separator |
| 1e560 | 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 |
| 1e580 | 73 74 3c 2f 73 70 61 6e 3e 20 6c 69 67 68 74 73 70 65 65 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 | st</span>.lightspeed.=.<span.cla |
| 1e5a0 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 39 39 5f 37 39 32 5f 34 35 38 2e 30 30 30 5f | ss="tok-number">299_792_458.000_ |
| 1e5c0 | 30 30 30 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | 000</span>;.<span.class="tok-kw" |
| 1e5e0 | 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6e 61 6e 6f 73 65 63 6f 6e 64 20 3d 20 3c 73 70 61 6e | >const</span>.nanosecond.=.<span |
| 1e600 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 2e 30 30 30 5f 30 30 30 5f 30 30 | .class="tok-number">0.000_000_00 |
| 1e620 | 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 63 | 1</span>;.<span.class="tok-kw">c |
| 1e640 | 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6d 6f 72 65 5f 68 65 78 20 3d 20 3c 73 70 61 6e 20 63 6c 61 | onst</span>.more_hex.=.<span.cla |
| 1e660 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 31 32 33 34 5f 35 36 37 38 2e 39 41 42 43 | ss="tok-number">0x1234_5678.9ABC |
| 1e680 | 5f 43 44 45 46 70 2d 31 30 3c 2f 73 70 61 6e 3e 3b 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f | _CDEFp-10</span>;</code></pre></ |
| 1e6a0 | 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 72 65 20 69 | figure>........<p>.......There.i |
| 1e6c0 | 73 20 6e 6f 20 73 79 6e 74 61 78 20 66 6f 72 20 4e 61 4e 2c 20 69 6e 66 69 6e 69 74 79 2c 20 6f | s.no.syntax.for.NaN,.infinity,.o |
| 1e6e0 | 72 20 6e 65 67 61 74 69 76 65 20 69 6e 66 69 6e 69 74 79 2e 20 46 6f 72 20 74 68 65 73 65 20 73 | r.negative.infinity..For.these.s |
| 1e700 | 70 65 63 69 61 6c 20 76 61 6c 75 65 73 2c 0a 20 20 20 20 20 20 6f 6e 65 20 6d 75 73 74 20 75 73 | pecial.values,.......one.must.us |
| 1e720 | 65 20 74 68 65 20 73 74 61 6e 64 61 72 64 20 6c 69 62 72 61 72 79 3a 0a 20 20 20 20 20 20 3c 2f | e.the.standard.library:.......</ |
| 1e740 | 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 |
| 1e760 | 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"> |
| 1e780 | 66 6c 6f 61 74 5f 73 70 65 63 69 61 6c 5f 76 61 6c 75 65 73 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c | float_special_values.zig</cite>< |
| 1e7a0 | 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 |
| 1e7c0 | 73 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.=.< |
| 1e7e0 | 73 70 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 |
| 1e800 | 3c 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 |
| 1e820 | 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 |
| 1e840 | 61 73 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 66 20 3d 20 | ass="tok-kw">const</span>.inf.=. |
| 1e860 | 73 74 64 2e 6d 61 74 68 2e 69 6e 66 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | std.math.inf(<span.class="tok-ty |
| 1e880 | 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 29 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | pe">f32</span>);.<span.class="to |
| 1e8a0 | 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6e 65 67 61 74 69 76 65 5f 69 6e 66 20 | k-kw">const</span>.negative_inf. |
| 1e8c0 | 3d 20 2d 73 74 64 2e 6d 61 74 68 2e 69 6e 66 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | =.-std.math.inf(<span.class="tok |
| 1e8e0 | 2d 74 79 70 65 22 3e 66 36 34 3c 2f 73 70 61 6e 3e 29 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | -type">f64</span>);.<span.class= |
| 1e900 | 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6e 61 6e 20 3d 20 73 74 64 2e | "tok-kw">const</span>.nan.=.std. |
| 1e920 | 6d 61 74 68 2e 6e 61 6e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | math.nan(<span.class="tok-type"> |
| 1e940 | 66 31 32 38 3c 2f 73 70 61 6e 3e 29 3b 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 | f128</span>);</code></pre></figu |
| 1e960 | 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 46 6c 6f 61 74 69 | re>...............<h3.id="Floati |
| 1e980 | 6e 67 2d 50 6f 69 6e 74 2d 4f 70 65 72 61 74 69 6f 6e 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 | ng-Point-Operations"><a.href="#t |
| 1e9a0 | 6f 63 2d 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 | oc-Floating-Point-Operations">Fl |
| 1e9c0 | 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 20 3c 61 20 63 | oating.Point.Operations</a>.<a.c |
| 1e9e0 | 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 69 6e 67 2d 50 6f 69 6e 74 | lass="hdr".href="#Floating-Point |
| 1ea00 | 2d 4f 70 65 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 | -Operations">..</a></h3>........ |
| 1ea20 | 3c 70 3e 42 79 20 64 65 66 61 75 6c 74 20 66 6c 6f 61 74 69 6e 67 20 70 6f 69 6e 74 20 6f 70 65 | <p>By.default.floating.point.ope |
| 1ea40 | 72 61 74 69 6f 6e 73 20 75 73 65 20 3c 63 6f 64 65 3e 53 74 72 69 63 74 3c 2f 63 6f 64 65 3e 20 | rations.use.<code>Strict</code>. |
| 1ea60 | 6d 6f 64 65 2c 0a 20 20 20 20 20 20 20 20 20 20 62 75 74 20 79 6f 75 20 63 61 6e 20 73 77 69 74 | mode,...........but.you.can.swit |
| 1ea80 | 63 68 20 74 6f 20 3c 63 6f 64 65 3e 4f 70 74 69 6d 69 7a 65 64 3c 2f 63 6f 64 65 3e 20 6d 6f 64 | ch.to.<code>Optimized</code>.mod |
| 1eaa0 | 65 20 6f 6e 20 61 20 70 65 72 2d 62 6c 6f 63 6b 20 62 61 73 69 73 3a 3c 2f 70 3e 0a 20 20 20 20 | e.on.a.per-block.basis:</p>..... |
| 1eac0 | 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 |
| 1eae0 | 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 6d | -cap"><cite.class="file">float_m |
| 1eb00 | 6f 64 65 5f 6f 62 6a 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 | ode_obj.zig</cite></figcaption>< |
| 1eb20 | 70 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 |
| 1eb40 | 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 |
| 1eb60 | 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 |
| 1eb80 | 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" |
| 1eba0 | 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 |
| 1ebc0 | 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 62 69 67 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | onst</span>.big.=.<span.class="t |
| 1ebe0 | 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 61 73 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 | ok-builtin">@as</span>(<span.cla |
| 1ec00 | 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 61 6e 20 | ss="tok-type">f64</span>,.<span. |
| 1ec20 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 20 26 6c 74 3b | class="tok-number">1</span>.< |
| 1ec40 | 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 34 30 | <.<span.class="tok-number">40 |
| 1ec60 | 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"> |
| 1ec80 | 65 78 70 6f 72 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | export</span>.<span.class="tok-k |
| 1eca0 | 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 |
| 1ecc0 | 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 70 61 6e 20 63 6c 61 | ">foo_strict</span>(x:.<span.cla |
| 1ece0 | 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 6e 20 | ss="tok-type">f64</span>).<span. |
| 1ed00 | 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 7b 0a 20 20 | class="tok-type">f64</span>.{... |
| 1ed20 | 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 |
| 1ed40 | 70 61 6e 3e 20 78 20 2b 20 62 69 67 20 2d 20 62 69 67 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 | pan>.x.+.big.-.big;.}..<span.cla |
| 1ed60 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 78 70 6f 72 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 | ss="tok-kw">export</span>.<span. |
| 1ed80 | 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 |
| 1eda0 | 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 66 6f 6f 5f 6f 70 74 69 6d 69 7a 65 64 3c 2f 73 70 61 | lass="tok-fn">foo_optimized</spa |
| 1edc0 | 6e 3e 28 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 36 34 | n>(x:.<span.class="tok-type">f64 |
| 1ede0 | 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"> |
| 1ee00 | 66 36 34 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | f64</span>.{.....<span.class="to |
| 1ee20 | 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 65 74 46 6c 6f 61 74 4d 6f 64 65 3c 2f 73 70 61 6e 3e 28 | k-builtin">@setFloatMode</span>( |
| 1ee40 | 2e 6f 70 74 69 6d 69 7a 65 64 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | .optimized);.....<span.class="to |
| 1ee60 | 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 78 20 2b 20 62 69 67 20 2d 20 62 69 | k-kw">return</span>.x.+.big.-.bi |
| 1ee80 | 67 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 | g;.}</code></pre></figure><figur |
| 1eea0 | 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"> |
| 1eec0 | 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>$.< |
| 1eee0 | 6b 62 64 3e 7a 69 67 20 62 75 69 6c 64 2d 6f 62 6a 20 66 6c 6f 61 74 5f 6d 6f 64 65 5f 6f 62 6a | kbd>zig.build-obj.float_mode_obj |
| 1ef00 | 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 2f 73 61 6d 70 | .zig.-O.ReleaseFast</kbd>.</samp |
| 1ef20 | 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 46 6f 72 20 74 | ></pre></figure>........<p>For.t |
| 1ef40 | 68 69 73 20 74 65 73 74 20 77 65 20 68 61 76 65 20 74 6f 20 73 65 70 61 72 61 74 65 20 63 6f 64 | his.test.we.have.to.separate.cod |
| 1ef60 | 65 20 69 6e 74 6f 20 74 77 6f 20 6f 62 6a 65 63 74 20 66 69 6c 65 73 20 2d 0a 20 20 20 20 20 20 | e.into.two.object.files.-....... |
| 1ef80 | 6f 74 68 65 72 77 69 73 65 20 74 68 65 20 6f 70 74 69 6d 69 7a 65 72 20 66 69 67 75 72 65 73 20 | otherwise.the.optimizer.figures. |
| 1efa0 | 6f 75 74 20 61 6c 6c 20 74 68 65 20 76 61 6c 75 65 73 20 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 | out.all.the.values.at.compile-ti |
| 1efc0 | 6d 65 2c 0a 20 20 20 20 20 20 77 68 69 63 68 20 6f 70 65 72 61 74 65 73 20 69 6e 20 73 74 72 69 | me,.......which.operates.in.stri |
| 1efe0 | 63 74 20 6d 6f 64 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 | ct.mode.</p>.......<figure><figc |
| 1f000 | 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 |
| 1f020 | 73 73 3d 22 66 69 6c 65 22 3e 66 6c 6f 61 74 5f 6d 6f 64 65 5f 65 78 65 2e 7a 69 67 3c 2f 63 69 | ss="file">float_mode_exe.zig</ci |
| 1f040 | 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 |
| 1f060 | 20 63 6c 61 73 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 |
| 1f080 | 6e 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 | nt.=.<span.class="tok-builtin">@ |
| 1f0a0 | 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 |
| 1f0c0 | 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 |
| 1f0e0 | 67 2e 70 72 69 6e 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 | g.print;..<span.class="tok-kw">e |
| 1f100 | 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 |
| 1f120 | 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" |
| 1f140 | 3e 66 6f 6f 5f 73 74 72 69 63 74 3c 2f 73 70 61 6e 3e 28 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 | >foo_strict</span>(x:.<span.clas |
| 1f160 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 36 34 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 | s="tok-type">f64</span>).<span.c |
| 1f180 | 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 3c 73 70 61 | lass="tok-type">f64</span>;.<spa |
| 1f1a0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 78 74 65 72 6e 3c 2f 73 70 61 6e 3e 20 3c | n.class="tok-kw">extern</span>.< |
| 1f1c0 | 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 |
| 1f1e0 | 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 7a 65 64 | pan.class="tok-fn">foo_optimized |
| 1f200 | 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 79 70 65 | </span>(x:.<span.class="tok-type |
| 1f220 | 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 6b 2d 74 | ">f64</span>).<span.class="tok-t |
| 1f240 | 79 70 65 22 3e 66 36 34 3c 2f 73 70 61 6e 3e 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ype">f64</span>;..<span.class="t |
| 1f260 | 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 |
| 1f280 | 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 |
| 1f2a0 | 6b 2d 66 6e 22 3e 6d 61 69 6e 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | k-fn">main</span>().<span.class= |
| 1f2c0 | 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 |
| 1f2e0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 78 | an.class="tok-kw">const</span>.x |
| 1f300 | 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 |
| 1f320 | 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= |
| 1f340 | 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 6f 70 74 69 6d 69 7a 65 64 20 3d 20 7b 7d 5c 6e | "tok-str">"optimized.=.{}\n |
| 1f360 | 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 66 6f 6f 5f 6f 70 74 69 6d 69 7a 65 64 28 78 | "</span>,..{foo_optimized(x |
| 1f380 | 29 7d 29 3b 0a 20 20 20 20 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | )});.....print(<span.class="tok- |
| 1f3a0 | 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 72 69 63 74 20 3d 20 7b 7d 5c 6e 26 71 75 6f 74 3b 3c 2f | str">"strict.=.{}\n"</ |
| 1f3c0 | 73 70 61 6e 3e 2c 20 2e 7b 66 6f 6f 5f 73 74 72 69 63 74 28 78 29 7d 29 3b 0a 7d 3c 2f 63 6f 64 | span>,..{foo_strict(x)});.}</cod |
| 1f3e0 | 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 53 65 65 20 | e></pre></figure>........<p>See. |
| 1f400 | 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 65 74 46 | also:</p><ul>.<li><a.href="#setF |
| 1f420 | 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 3e | loatMode">@setFloatMode</a></li> |
| 1f440 | 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 44 69 76 69 73 69 6f 6e 2d 62 79 2d 5a 65 72 6f 22 | .<li><a.href="#Division-by-Zero" |
| 1f460 | 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 3c 2f 75 6c 3e | >Division.by.Zero</a></li>.</ul> |
| 1f480 | 0a 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 4f 70 | ......................<h2.id="Op |
| 1f4a0 | 65 72 61 74 6f 72 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 4f 70 65 72 61 74 6f 72 73 | erators"><a.href="#toc-Operators |
| 1f4c0 | 22 3e 4f 70 65 72 61 74 6f 72 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 | ">Operators</a>.<a.class="hdr".h |
| 1f4e0 | 72 65 66 3d 22 23 4f 70 65 72 61 74 6f 72 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 | ref="#Operators">..</a></h2>.... |
| 1f500 | 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 72 65 20 69 73 20 6e 6f 20 6f 70 65 72 61 74 | ....<p>.......There.is.no.operat |
| 1f520 | 6f 72 20 6f 76 65 72 6c 6f 61 64 69 6e 67 2e 20 57 68 65 6e 20 79 6f 75 20 73 65 65 20 61 6e 20 | or.overloading..When.you.see.an. |
| 1f540 | 6f 70 65 72 61 74 6f 72 20 69 6e 20 5a 69 67 2c 20 79 6f 75 20 6b 6e 6f 77 20 74 68 61 74 0a 20 | operator.in.Zig,.you.know.that.. |
| 1f560 | 20 20 20 20 20 69 74 20 69 73 20 64 6f 69 6e 67 20 73 6f 6d 65 74 68 69 6e 67 20 66 72 6f 6d 20 | .....it.is.doing.something.from. |
| 1f580 | 74 68 69 73 20 74 61 62 6c 65 2c 20 61 6e 64 20 6e 6f 74 68 69 6e 67 20 65 6c 73 65 2e 0a 20 20 | this.table,.and.nothing.else.... |
| 1f5a0 | 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 54 61 62 6c 65 2d 6f 66 2d | ....</p>.......<h3.id="Table-of- |
| 1f5c0 | 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 54 61 62 6c 65 2d 6f | Operators"><a.href="#toc-Table-o |
| 1f5e0 | 66 2d 4f 70 65 72 61 74 6f 72 73 22 3e 54 61 62 6c 65 20 6f 66 20 4f 70 65 72 61 74 6f 72 73 3c | f-Operators">Table.of.Operators< |
| 1f600 | 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 62 6c 65 2d | /a>.<a.class="hdr".href="#Table- |
| 1f620 | 6f 66 2d 4f 70 65 72 61 74 6f 72 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 | of-Operators">..</a></h3>....... |
| 1f640 | 20 3c 64 69 76 20 63 6c 61 73 73 3d 22 74 61 62 6c 65 2d 77 72 61 70 70 65 72 22 3e 0a 20 20 20 | .<div.class="table-wrapper">.... |
| 1f660 | 20 20 20 3c 74 61 62 6c 65 3e 0a 20 20 20 20 20 20 20 20 3c 74 68 65 61 64 3e 0a 20 20 20 20 20 | ...<table>.........<thead>...... |
| 1f680 | 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 63 6f 6c | ...<tr>...........<th.scope="col |
| 1f6a0 | 22 3e 4e 61 6d 65 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 68 20 73 63 6f 70 65 3d | ">Name</th>...........<th.scope= |
| 1f6c0 | 22 63 6f 6c 22 3e 53 79 6e 74 61 78 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 68 20 | "col">Syntax</th>...........<th. |
| 1f6e0 | 73 63 6f 70 65 3d 22 63 6f 6c 22 3e 54 79 70 65 73 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 | scope="col">Types</th>.......... |
| 1f700 | 20 3c 74 68 20 73 63 6f 70 65 3d 22 63 6f 6c 22 3e 52 65 6d 61 72 6b 73 3c 2f 74 68 3e 0a 20 20 | .<th.scope="col">Remarks</th>... |
| 1f720 | 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 61 6d 70 6c 65 3c | ........<th.scope="col">Example< |
| 1f740 | 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 68 65 | /th>.........</tr>.........</the |
| 1f760 | 61 64 3e 0a 20 20 20 20 20 20 20 20 3c 74 62 6f 64 79 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e | ad>.........<tbody>.........<tr> |
| 1f780 | 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 41 64 64 69 74 69 6f 6e 3c 2f 74 64 3e 0a 20 20 20 | ...........<td>Addition</td>.... |
| 1f7a0 | 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 20 62 0a 61 20 2b 3d | .......<td><pre><code>a.+.b.a.+= |
| 1f7c0 | 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>...........< |
| 1f7e0 | 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>............ |
| 1f800 | 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 |
| 1f820 | 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c | ers</a></li>...............<li>< |
| 1f840 | 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> |
| 1f860 | 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 |
| 1f880 | 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 |
| 1f8a0 | 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 43 61 6e 20 63 61 75 73 65 20 3c | l>...............<li>Can.cause.< |
| 1f8c0 | 61 20 68 72 65 66 3d 22 23 44 65 66 61 75 6c 74 2d 4f 70 65 72 61 74 69 6f 6e 73 22 3e 6f 76 65 | a.href="#Default-Operations">ove |
| 1f8e0 | 72 66 6c 6f 77 3c 2f 61 3e 20 66 6f 72 20 69 6e 74 65 67 65 72 73 2e 3c 2f 6c 69 3e 0a 20 20 20 | rflow</a>.for.integers.</li>.... |
| 1f900 | 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 49 6e 76 6f 6b 65 73 20 3c 61 20 68 72 65 66 3d 22 | ...........<li>Invokes.<a.href=" |
| 1f920 | 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 |
| 1f940 | 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 |
| 1f960 | 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 65 65 20 61 6c 73 | .</li>...............<li>See.als |
| 1f980 | 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 64 | o.<a.href="#addWithOverflow">@ad |
| 1f9a0 | 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 20 | dWithOverflow</a>.</li>......... |
| 1f9c0 | 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>....... |
| 1f9e0 | 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> |
| 1fa00 | 3c 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 |
| 1fa20 | 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 35 3c 2f | >.+.<span.class="tok-number">5</ |
| 1fa40 | 73 70 61 6e 3e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | span>.==.<span.class="tok-number |
| 1fa60 | 22 3e 37 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 | ">7</span></code></pre>......... |
| 1fa80 | 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 |
| 1faa0 | 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 41 64 64 69 74 69 | r>...........<td>Wrapping.Additi |
| 1fac0 | 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 65 | on</td>...........<td><pre><code |
| 1fae0 | 3e 61 20 2b 25 20 62 0a 61 20 2b 25 3d 20 62 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 74 64 | >a.+%.b.a.+%=.b</code></pre></td |
| 1fb00 | 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 |
| 1fb20 | 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 |
| 1fb40 | 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>....... |
| 1fb60 | 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>..... |
| 1fb80 | 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 | ......<td>.............<ul>..... |
| 1fba0 | 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 77 72 | ..........<li>Twos-complement.wr |
| 1fbc0 | 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 20 20 | apping.behavior.</li>........... |
| 1fbe0 | 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 54 | ....<li>Invokes.<a.href="#Peer-T |
| 1fc00 | 79 70 65 2d 52 65 73 6f 6c 75 74 69 6f 6e 22 3e 50 65 65 72 20 54 79 70 65 20 52 65 73 6f 6c 75 | ype-Resolution">Peer.Type.Resolu |
| 1fc20 | 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 0a | tion</a>.for.the.operands.</li>. |
| 1fc40 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 | ..............<li>See.also.<a.hr |
| 1fc60 | 65 66 3d 22 23 61 64 64 57 69 74 68 4f 76 65 72 66 6c 6f 77 22 3e 40 61 64 64 57 69 74 68 4f 76 | ef="#addWithOverflow">@addWithOv |
| 1fc80 | 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 2f 75 | erflow</a>.</li>.............</u |
| 1fca0 | 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 |
| 1fcc0 | 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 |
| 1fce0 | 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 |
| 1fd00 | 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>, |
| 1fd20 | 20 3c 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 66 66 66 66 | .<span.class="tok-number">0xffff |
| 1fd40 | 66 66 66 66 3c 2f 73 70 61 6e 3e 29 20 2b 25 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ffff</span>).+%.<span.class="tok |
| 1fd60 | 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | -number">1</span>.==.<span.class |
| 1fd80 | 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 3c 2f 70 | ="tok-number">0</span></code></p |
| 1fda0 | 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 |
| 1fdc0 | 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 53 61 74 | >.........<tr>...........<td>Sat |
| 1fde0 | 75 72 61 74 69 6e 67 20 41 64 64 69 74 69 6f 6e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 | urating.Addition</td>........... |
| 1fe00 | 3c 74 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 61 20 2b 7c 20 62 0a 61 20 2b 7c 3d 20 62 3c 2f 63 | <td><pre><code>a.+|.b.a.+|=.b</c |
| 1fe20 | 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>.. |
| 1fe40 | 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 |
| 1fe60 | 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</ |
| 1fe80 | 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>....... |
| 1fea0 | 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>........ |
| 1fec0 | 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 49 6e 76 6f | .....<ul>...............<li>Invo |
| 1fee0 | 6b 65 73 20 3c 61 20 68 72 65 66 3d 22 23 50 65 65 72 2d 54 79 70 65 2d 52 65 73 6f 6c 75 74 69 | kes.<a.href="#Peer-Type-Resoluti |
| 1ff00 | 6f 6e 22 3e 50 65 65 72 20 54 79 70 65 20 52 65 73 6f 6c 75 74 69 6f 6e 3c 2f 61 3e 20 66 6f 72 | on">Peer.Type.Resolution</a>.for |
| 1ff20 | 20 74 68 65 20 6f 70 65 72 61 6e 64 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | .the.operands.</li>............. |
| 1ff40 | 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 | </ul>...........</td>........... |
| 1ff60 | 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 | <td>.............<pre><code><spa |
| 1ff80 | 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> |
| 1ffa0 | 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 |
| 1ffc0 | 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 35 35 3c | >,.<span.class="tok-number">255< |
| 1ffe0 | 2f 73 70 61 6e 3e 29 20 2b 7c 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 |
| 20000 | 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 |
| 20020 | 2d 62 75 69 6c 74 69 6e 22 3e 40 61 73 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 | -builtin">@as</span>(<span.class |
| 20040 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 | ="tok-type">u8</span>,.<span.cla |
| 20060 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 35 35 3c 2f 73 70 61 6e 3e 29 3c 2f 63 6f 64 | ss="tok-number">255</span>)</cod |
| 20080 | 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>........ |
| 200a0 | 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 |
| 200c0 | 64 3e 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 | d>Subtraction</td>...........<td |
| 200e0 | 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 61 20 2d 20 62 0a 61 20 2d 3d 20 62 3c 2f 63 6f 64 65 3e 3c | ><pre><code>a.-.b.a.-=.b</code>< |
| 20100 | 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>....... |
| 20120 | 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. |
| 20140 | 68 72 65 66 3d 22 23 49 6e 74 65 67 65 72 73 22 3e 49 6e 74 65 67 65 72 73 3c 2f 61 3e 3c 2f 6c | href="#Integers">Integers</a></l |
| 20160 | 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 46 | i>...............<li><a.href="#F |
| 20180 | 6c 6f 61 74 73 22 3e 46 6c 6f 61 74 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 | loats">Floats</a></li>.......... |
| 201a0 | 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>........ |
| 201c0 | 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>........ |
| 201e0 | 20 20 20 20 20 20 20 3c 6c 69 3e 43 61 6e 20 63 61 75 73 65 20 3c 61 20 68 72 65 66 3d 22 23 44 | .......<li>Can.cause.<a.href="#D |
| 20200 | 65 66 61 75 6c 74 2d 4f 70 65 72 61 74 69 6f 6e 73 22 3e 6f 76 65 72 66 6c 6f 77 3c 2f 61 3e 20 | efault-Operations">overflow</a>. |
| 20220 | 66 6f 72 20 69 6e 74 65 67 65 72 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 | for.integers.</li>.............. |
| 20240 | 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 65 | .<li>Invokes.<a.href="#Peer-Type |
| 20260 | 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 |
| 20280 | 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 20 | n</a>.for.the.operands.</li>.... |
| 202a0 | 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= |
| 202c0 | 22 23 73 75 62 57 69 74 68 4f 76 65 72 66 6c 6f 77 22 3e 40 73 75 62 57 69 74 68 4f 76 65 72 66 | "#subWithOverflow">@subWithOverf |
| 202e0 | 6c 6f 77 3c 2f 61 3e 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a | low</a>.</li>.............</ul>. |
| 20300 | 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>.. |
| 20320 | 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 |
| 20340 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 20 2d 20 3c 73 70 61 6e 20 | s="tok-number">2</span>.-.<span. |
| 20360 | 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 3d 3d 20 2d | class="tok-number">5</span>.==.- |
| 20380 | 3c 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 |
| 203a0 | 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 | ></code></pre>...........</td>.. |
| 203c0 | 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>....... |
| 203e0 | 20 20 20 20 3c 74 64 3e 57 72 61 70 70 69 6e 67 20 53 75 62 74 72 61 63 74 69 6f 6e 3c 2f 74 64 | ....<td>Wrapping.Subtraction</td |
| 20400 | 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 61 20 2d 25 20 | >...........<td><pre><code>a.-%. |
| 20420 | 62 0a 61 20 2d 25 3d 20 62 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 | b.a.-%=.b</code></pre></td>..... |
| 20440 | 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 | ......<td>.............<ul>..... |
| 20460 | 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 49 6e 74 65 67 65 72 73 | ..........<li><a.href="#Integers |
| 20480 | 22 3e 49 6e 74 65 67 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | ">Integers</a></li>............. |
| 204a0 | 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 | </ul>...........</td>........... |
| 204c0 | 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>........... |
| 204e0 | 20 20 20 20 3c 6c 69 3e 54 77 6f 73 2d 63 6f 6d 70 6c 65 6d 65 6e 74 20 77 72 61 70 70 69 6e 67 | ....<li>Twos-complement.wrapping |
| 20500 | 20 62 65 68 61 76 69 6f 72 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c | .behavior.</li>...............<l |
| 20520 | 69 3e 49 6e 76 6f 6b 65 73 20 3c 61 20 68 72 65 66 3d 22 23 50 65 65 72 2d 54 79 70 65 2d 52 65 | i>Invokes.<a.href="#Peer-Type-Re |
| 20540 | 73 6f 6c 75 74 69 6f 6e 22 3e 50 65 65 72 20 54 79 70 65 20 52 65 73 6f 6c 75 74 69 6f 6e 3c 2f | solution">Peer.Type.Resolution</ |
| 20560 | 61 3e 20 66 6f 72 20 74 68 65 20 6f 70 65 72 61 6e 64 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | a>.for.the.operands.</li>....... |
| 20580 | 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 73 | ........<li>See.also.<a.href="#s |
| 205a0 | 75 62 57 69 74 68 4f 76 65 72 66 6c 6f 77 22 3e 40 73 75 62 57 69 74 68 4f 76 65 72 66 6c 6f 77 | ubWithOverflow">@subWithOverflow |
| 205c0 | 3c 2f 61 3e 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 | </a>.</li>.............</ul>.... |
| 205e0 | 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>..... |
| 20600 | 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=" |
| 20620 | 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 |
| 20640 | 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. |
| 20660 | 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 2d 25 20 | class="tok-number">0</span>).-%. |
| 20680 | 3c 73 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 |
| 206a0 | 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 |
| 206c0 | 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>........... |
| 206e0 | 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> |
| 20700 | 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 53 75 62 74 72 61 | ...........<td>Saturating.Subtra |
| 20720 | 63 74 69 6f 6e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 70 72 65 3e 3c 63 | ction</td>...........<td><pre><c |
| 20740 | 6f 64 65 3e 61 20 2d 7c 20 62 0a 61 20 2d 7c 3d 20 62 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c | ode>a.-|.b.a.-|=.b</code></pre>< |
| 20760 | 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>............. |
| 20780 | 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=" |
| 207a0 | 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>.... |
| 207c0 | 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>.. |
| 207e0 | 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>.. |
| 20800 | 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 49 6e 76 6f 6b 65 73 20 3c 61 20 68 72 65 66 | .............<li>Invokes.<a.href |
| 20820 | 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 |
| 20840 | 70 65 20 52 65 73 6f 6c 75 74 69 6f 6e 3c 2f 61 3e 20 66 6f 72 20 74 68 65 20 6f 70 65 72 61 6e | pe.Resolution</a>.for.the.operan |
| 20860 | 64 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 | ds.</li>.............</ul>...... |
| 20880 | 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>....... |
| 208a0 | 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 |
| 208c0 | 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 61 73 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 | k-builtin">@as</span>(<span.clas |
| 208e0 | 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 20 63 | s="tok-type">u32</span>,.<span.c |
| 20900 | 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 2d 7c 20 3c | lass="tok-number">0</span>).-|.< |
| 20920 | 73 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> |
| 20940 | 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</ |
| 20960 | 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 |
| 20980 | 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>... |
| 209a0 | 20 20 20 20 20 20 20 20 3c 74 64 3e 4e 65 67 61 74 69 6f 6e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 | ........<td>Negation</td>....... |
| 209c0 | 20 20 20 20 3c 74 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 2d 61 3c 2f 63 6f 64 65 3e 3c 2f 70 72 | ....<td><pre><code>-a</code></pr |
| 209e0 | 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>.......... |
| 20a00 | 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 |
| 20a20 | 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>. |
| 20a40 | 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 61 | ..............<li><a.href="#Floa |
| 20a60 | 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 20 | ts">Floats</a></li>............. |
| 20a80 | 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 | </ul>...........</td>........... |
| 20aa0 | 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>........... |
| 20ac0 | 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 65 66 61 | ....<li>Can.cause.<a.href="#Defa |
| 20ae0 | 75 6c 74 2d 4f 70 65 72 61 74 69 6f 6e 73 22 3e 6f 76 65 72 66 6c 6f 77 3c 2f 61 3e 20 66 6f 72 | ult-Operations">overflow</a>.for |
| 20b00 | 20 69 6e 74 65 67 65 72 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c | .integers.</li>.............</ul |
| 20b20 | 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> |
| 20b40 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 2d 3c 73 70 61 6e 20 63 | .............<pre><code>-<span.c |
| 20b60 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 20 3d 3d 20 3c 73 | lass="tok-number">1</span>.==.<s |
| 20b80 | 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 20 | pan.class="tok-number">0</span>. |
| 20ba0 | 2d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 | -.<span.class="tok-number">1</sp |
| 20bc0 | 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e | an></code></pre>...........</td> |
| 20be0 | 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>..... |
| 20c00 | 20 20 20 20 20 20 3c 74 64 3e 57 72 61 70 70 69 6e 67 20 4e 65 67 61 74 69 6f 6e 3c 2f 74 64 3e | ......<td>Wrapping.Negation</td> |
| 20c20 | 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 25 61 3c 2f 63 | ...........<td><pre><code>-%a</c |
| 20c40 | 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>.. |
| 20c60 | 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 |
| 20c80 | 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</ |
| 20ca0 | 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>....... |
| 20cc0 | 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>........ |
| 20ce0 | 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 73 | .....<ul>...............<li>Twos |
| 20d00 | 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 2f | -complement.wrapping.behavior.</ |
| 20d20 | 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>........... |
| 20d40 | 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>............ |
| 20d60 | 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 2d 25 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 | .<pre><code>-%<span.class="tok-b |
| 20d80 | 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=" |
| 20da0 | 74 6f 6b 2d 74 79 70 65 22 3e 69 38 3c 2f 73 70 61 6e 3e 2c 20 2d 3c 73 70 61 6e 20 63 6c 61 73 | tok-type">i8</span>,.-<span.clas |
| 20dc0 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 38 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 2d 3c | s="tok-number">128</span>).==.-< |
| 20de0 | 73 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 | span.class="tok-number">128</spa |
| 20e00 | 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>. |
| 20e20 | 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>...... |
| 20e40 | 20 20 20 20 20 3c 74 64 3e 4d 75 6c 74 69 70 6c 69 63 61 74 69 6f 6e 3c 2f 74 64 3e 0a 20 20 20 | .....<td>Multiplication</td>.... |
| 20e60 | 20 20 20 20 20 20 20 3c 74 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 61 20 2a 20 62 0a 61 20 2a 3d | .......<td><pre><code>a.*.b.a.*= |
| 20e80 | 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>...........< |
| 20ea0 | 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>............ |
| 20ec0 | 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 |
| 20ee0 | 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c | ers</a></li>...............<li>< |
| 20f00 | 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> |
| 20f20 | 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 |
| 20f40 | 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 |
| 20f60 | 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 43 61 6e 20 63 61 75 73 65 20 3c | l>...............<li>Can.cause.< |
| 20f80 | 61 20 68 72 65 66 3d 22 23 44 65 66 61 75 6c 74 2d 4f 70 65 72 61 74 69 6f 6e 73 22 3e 6f 76 65 | a.href="#Default-Operations">ove |
| 20fa0 | 72 66 6c 6f 77 3c 2f 61 3e 20 66 6f 72 20 69 6e 74 65 67 65 72 73 2e 3c 2f 6c 69 3e 0a 20 20 20 | rflow</a>.for.integers.</li>.... |
| 20fc0 | 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 49 6e 76 6f 6b 65 73 20 3c 61 20 68 72 65 66 3d 22 | ...........<li>Invokes.<a.href=" |
| 20fe0 | 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 |
| 21000 | 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 |
| 21020 | 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 65 65 20 61 6c 73 | .</li>...............<li>See.als |
| 21040 | 6f 20 3c 61 20 68 72 65 66 3d 22 23 6d 75 6c 57 69 74 68 4f 76 65 72 66 6c 6f 77 22 3e 40 6d 75 | o.<a.href="#mulWithOverflow">@mu |
| 21060 | 6c 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 20 | lWithOverflow</a>.</li>......... |
| 21080 | 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>....... |
| 210a0 | 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> |
| 210c0 | 3c 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 |
| 210e0 | 3e 20 2a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f | >.*.<span.class="tok-number">5</ |
| 21100 | 73 70 61 6e 3e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | span>.==.<span.class="tok-number |
| 21120 | 22 3e 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 | ">10</span></code></pre>........ |
| 21140 | 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>.........< |
| 21160 | 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 4d 75 6c 74 69 | tr>...........<td>Wrapping.Multi |
| 21180 | 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 70 72 | plication</td>...........<td><pr |
| 211a0 | 65 3e 3c 63 6f 64 65 3e 61 20 2a 25 20 62 0a 61 20 2a 25 3d 20 62 3c 2f 63 6f 64 65 3e 3c 2f 70 | e><code>a.*%.b.a.*%=.b</code></p |
| 211c0 | 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>......... |
| 211e0 | 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 |
| 21200 | 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> |
| 21220 | 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 |
| 21240 | 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 |
| 21260 | 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 65 | l>...............<li>Twos-comple |
| 21280 | 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 20 | ment.wrapping.behavior.</li>.... |
| 212a0 | 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 49 6e 76 6f 6b 65 73 20 3c 61 20 68 72 65 66 3d 22 | ...........<li>Invokes.<a.href=" |
| 212c0 | 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 |
| 212e0 | 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 |
| 21300 | 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 65 65 20 61 6c 73 | .</li>...............<li>See.als |
| 21320 | 6f 20 3c 61 20 68 72 65 66 3d 22 23 6d 75 6c 57 69 74 68 4f 76 65 72 66 6c 6f 77 22 3e 40 6d 75 | o.<a.href="#mulWithOverflow">@mu |
| 21340 | 6c 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 20 | lWithOverflow</a>.</li>......... |
| 21360 | 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>....... |
| 21380 | 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> |
| 213a0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 61 73 3c 2f 73 | <span.class="tok-builtin">@as</s |
| 213c0 | 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f | pan>(<span.class="tok-type">u8</ |
| 213e0 | 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"> |
| 21400 | 32 30 30 3c 2f 73 70 61 6e 3e 29 20 2a 25 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | 200</span>).*%.<span.class="tok- |
| 21420 | 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | number">2</span>.==.<span.class= |
| 21440 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 34 34 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f | "tok-number">144</span></code></ |
| 21460 | 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 |
| 21480 | 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 53 61 | r>.........<tr>...........<td>Sa |
| 214a0 | 74 75 72 61 74 69 6e 67 20 4d 75 6c 74 69 70 6c 69 63 61 74 69 6f 6e 3c 2f 74 64 3e 0a 20 20 20 | turating.Multiplication</td>.... |
| 214c0 | 20 20 20 20 20 20 20 3c 74 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 61 20 2a 7c 20 62 0a 61 20 2a | .......<td><pre><code>a.*|.b.a.* |
| 214e0 | 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 20 | |=.b</code></pre></td>.......... |
| 21500 | 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>.......... |
| 21520 | 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 49 6e 74 65 67 65 72 73 22 3e 49 6e 74 | .....<li><a.href="#Integers">Int |
| 21540 | 65 67 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e | egers</a></li>.............</ul> |
| 21560 | 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>. |
| 21580 | 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>...............< |
| 215a0 | 6c 69 3e 49 6e 76 6f 6b 65 73 20 3c 61 20 68 72 65 66 3d 22 23 50 65 65 72 2d 54 79 70 65 2d 52 | li>Invokes.<a.href="#Peer-Type-R |
| 215c0 | 65 73 6f 6c 75 74 69 6f 6e 22 3e 50 65 65 72 20 54 79 70 65 20 52 65 73 6f 6c 75 74 69 6f 6e 3c | esolution">Peer.Type.Resolution< |
| 215e0 | 2f 61 3e 20 66 6f 72 20 74 68 65 20 6f 70 65 72 61 6e 64 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 | /a>.for.the.operands.</li>...... |
| 21600 | 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>.... |
| 21620 | 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 |
| 21640 | 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 61 73 | de><span.class="tok-builtin">@as |
| 21660 | 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 | </span>(<span.class="tok-type">u |
| 21680 | 38 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | 8</span>,.<span.class="tok-numbe |
| 216a0 | 72 22 3e 32 30 30 3c 2f 73 70 61 6e 3e 29 20 2a 7c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | r">200</span>).*|.<span.class="t |
| 216c0 | 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 6e 20 63 6c 61 | ok-number">2</span>.==.<span.cla |
| 216e0 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 35 35 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 | ss="tok-number">255</span></code |
| 21700 | 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 | ></pre>...........</td>......... |
| 21720 | 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 | </tr>.........<tr>...........<td |
| 21740 | 3e 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 70 72 | >Division</td>...........<td><pr |
| 21760 | 65 3e 3c 63 6f 64 65 3e 61 20 2f 20 62 0a 61 20 2f 3d 20 62 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 | e><code>a./.b.a./=.b</code></pre |
| 21780 | 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 | ></td>...........<td>........... |
| 217a0 | 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 | ..<ul>...............<li><a.href |
| 217c0 | 3d 22 23 49 6e 74 65 67 65 72 73 22 3e 49 6e 74 65 67 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 | ="#Integers">Integers</a></li>.. |
| 217e0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 | .............<li><a.href="#Float |
| 21800 | 73 22 3e 46 6c 6f 61 74 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c | s">Floats</a></li>.............< |
| 21820 | 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>...........< |
| 21840 | 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>............ |
| 21860 | 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 65 66 61 75 | ...<li>Can.cause.<a.href="#Defau |
| 21880 | 6c 74 2d 4f 70 65 72 61 74 69 6f 6e 73 22 3e 6f 76 65 72 66 6c 6f 77 3c 2f 61 3e 20 66 6f 72 20 | lt-Operations">overflow</a>.for. |
| 218a0 | 69 6e 74 65 67 65 72 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 | integers.</li>...............<li |
| 218c0 | 3e 43 61 6e 20 63 61 75 73 65 20 3c 61 20 68 72 65 66 3d 22 23 44 69 76 69 73 69 6f 6e 2d 62 79 | >Can.cause.<a.href="#Division-by |
| 218e0 | 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 20 66 6f 72 20 | -Zero">Division.by.Zero</a>.for. |
| 21900 | 69 6e 74 65 67 65 72 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 | integers.</li>...............<li |
| 21920 | 3e 43 61 6e 20 63 61 75 73 65 20 3c 61 20 68 72 65 66 3d 22 23 44 69 76 69 73 69 6f 6e 2d 62 79 | >Can.cause.<a.href="#Division-by |
| 21940 | 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 20 66 6f 72 20 | -Zero">Division.by.Zero</a>.for. |
| 21960 | 66 6c 6f 61 74 73 20 69 6e 20 3c 61 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 69 6e 67 2d 50 6f 69 | floats.in.<a.href="#Floating-Poi |
| 21980 | 6e 74 2d 4f 70 65 72 61 74 69 6f 6e 73 22 3e 46 6c 6f 61 74 4d 6f 64 65 2e 4f 70 74 69 6d 69 7a | nt-Operations">FloatMode.Optimiz |
| 219a0 | 65 64 20 4d 6f 64 65 3c 2f 61 3e 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ed.Mode</a>.</li>............... |
| 219c0 | 3c 6c 69 3e 53 69 67 6e 65 64 20 69 6e 74 65 67 65 72 20 6f 70 65 72 61 6e 64 73 20 6d 75 73 74 | <li>Signed.integer.operands.must |
| 219e0 | 20 62 65 20 63 6f 6d 70 74 69 6d 65 2d 6b 6e 6f 77 6e 20 61 6e 64 20 70 6f 73 69 74 69 76 65 2e | .be.comptime-known.and.positive. |
| 21a00 | 20 49 6e 20 6f 74 68 65 72 20 63 61 73 65 73 2c 20 75 73 65 0a 20 20 20 20 20 20 20 20 20 20 20 | .In.other.cases,.use............ |
| 21a20 | 20 20 20 20 20 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 | .....<a.href="#divTrunc">@divTru |
| 21a40 | 6e 63 3c 2f 61 3e 2c 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 | nc</a>,.................<a.href= |
| 21a60 | 22 23 64 69 76 46 6c 6f 6f 72 22 3e 40 64 69 76 46 6c 6f 6f 72 3c 2f 61 3e 2c 20 6f 72 0a 20 20 | "#divFloor">@divFloor</a>,.or... |
| 21a80 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 64 69 76 45 78 61 63 74 | ..............<a.href="#divExact |
| 21aa0 | 22 3e 40 64 69 76 45 78 61 63 74 3c 2f 61 3e 20 69 6e 73 74 65 61 64 2e 0a 20 20 20 20 20 20 20 | ">@divExact</a>.instead......... |
| 21ac0 | 20 20 20 20 20 20 20 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 49 | .......</li>...............<li>I |
| 21ae0 | 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 |
| 21b00 | 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>. |
| 21b20 | 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>.......... |
| 21b40 | 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>........ |
| 21b60 | 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>< |
| 21b80 | 73 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 |
| 21ba0 | 3e 20 2f 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f | >./.<span.class="tok-number">5</ |
| 21bc0 | 73 70 61 6e 3e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | span>.==.<span.class="tok-number |
| 21be0 | 22 3e 32 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 | ">2</span></code></pre>......... |
| 21c00 | 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 |
| 21c20 | 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 52 65 6d 61 69 6e 64 65 72 20 44 69 76 69 73 | r>...........<td>Remainder.Divis |
| 21c40 | 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 |
| 21c60 | 65 3e 61 20 25 20 62 0a 61 20 25 3d 20 62 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 74 64 3e | e>a.%.b.a.%=.b</code></pre></td> |
| 21c80 | 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> |
| 21ca0 | 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 74 | ...............<li><a.href="#Int |
| 21cc0 | 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 20 | egers">Integers</a></li>........ |
| 21ce0 | 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 6f | .......<li><a.href="#Floats">Flo |
| 21d00 | 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 20 | ats</a></li>.............</ul>.. |
| 21d20 | 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>... |
| 21d40 | 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 |
| 21d60 | 3e 43 61 6e 20 63 61 75 73 65 20 3c 61 20 68 72 65 66 3d 22 23 44 69 76 69 73 69 6f 6e 2d 62 79 | >Can.cause.<a.href="#Division-by |
| 21d80 | 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 20 66 6f 72 20 | -Zero">Division.by.Zero</a>.for. |
| 21da0 | 69 6e 74 65 67 65 72 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 | integers.</li>...............<li |
| 21dc0 | 3e 43 61 6e 20 63 61 75 73 65 20 3c 61 20 68 72 65 66 3d 22 23 44 69 76 69 73 69 6f 6e 2d 62 79 | >Can.cause.<a.href="#Division-by |
| 21de0 | 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 20 66 6f 72 20 | -Zero">Division.by.Zero</a>.for. |
| 21e00 | 66 6c 6f 61 74 73 20 69 6e 20 3c 61 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 69 6e 67 2d 50 6f 69 | floats.in.<a.href="#Floating-Poi |
| 21e20 | 6e 74 2d 4f 70 65 72 61 74 69 6f 6e 73 22 3e 46 6c 6f 61 74 4d 6f 64 65 2e 4f 70 74 69 6d 69 7a | nt-Operations">FloatMode.Optimiz |
| 21e40 | 65 64 20 4d 6f 64 65 3c 2f 61 3e 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ed.Mode</a>.</li>............... |
| 21e60 | 3c 6c 69 3e 53 69 67 6e 65 64 20 6f 72 20 66 6c 6f 61 74 69 6e 67 2d 70 6f 69 6e 74 20 6f 70 65 | <li>Signed.or.floating-point.ope |
| 21e80 | 72 61 6e 64 73 20 6d 75 73 74 20 62 65 20 63 6f 6d 70 74 69 6d 65 2d 6b 6e 6f 77 6e 20 61 6e 64 | rands.must.be.comptime-known.and |
| 21ea0 | 20 70 6f 73 69 74 69 76 65 2e 20 49 6e 20 6f 74 68 65 72 20 63 61 73 65 73 2c 20 75 73 65 0a 20 | .positive..In.other.cases,.use.. |
| 21ec0 | 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 72 65 6d 22 3e 40 72 | ...............<a.href="#rem">@r |
| 21ee0 | 65 6d 3c 2f 61 3e 20 6f 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 61 20 68 72 65 | em</a>.or.................<a.hre |
| 21f00 | 66 3d 22 23 6d 6f 64 22 3e 40 6d 6f 64 3c 2f 61 3e 20 69 6e 73 74 65 61 64 2e 0a 20 20 20 20 20 | f="#mod">@mod</a>.instead....... |
| 21f20 | 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 20 20 20 3c 6c 69 | .........</li>...............<li |
| 21f40 | 3e 49 6e 76 6f 6b 65 73 20 3c 61 20 68 72 65 66 3d 22 23 50 65 65 72 2d 54 79 70 65 2d 52 65 73 | >Invokes.<a.href="#Peer-Type-Res |
| 21f60 | 6f 6c 75 74 69 6f 6e 22 3e 50 65 65 72 20 54 79 70 65 20 52 65 73 6f 6c 75 74 69 6f 6e 3c 2f 61 | olution">Peer.Type.Resolution</a |
| 21f80 | 3e 20 66 6f 72 20 74 68 65 20 6f 70 65 72 61 6e 64 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 | >.for.the.operands.</li>........ |
| 21fa0 | 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>...... |
| 21fc0 | 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 |
| 21fe0 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 3c 2f 73 70 | ><span.class="tok-number">10</sp |
| 22000 | 61 6e 3e 20 25 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 | an>.%.<span.class="tok-number">3 |
| 22020 | 3c 2f 73 70 61 6e 3e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | </span>.==.<span.class="tok-numb |
| 22040 | 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 | er">1</span></code></pre>....... |
| 22060 | 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>......... |
| 22080 | 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 42 69 74 20 53 68 69 66 74 20 4c 65 66 | <tr>...........<td>Bit.Shift.Lef |
| 220a0 | 74 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e | t</td>...........<td><pre><code> |
| 220c0 | 61 20 26 6c 74 3b 26 6c 74 3b 20 62 0a 61 20 26 6c 74 3b 26 6c 74 3b 3d 20 62 3c 2f 63 6f 64 65 | a.<<.b.a.<<=.b</code |
| 220e0 | 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>..... |
| 22100 | 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>< |
| 22120 | 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>< |
| 22140 | 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>.......... |
| 22160 | 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>........... |
| 22180 | 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 4d 6f 76 65 73 20 61 | ..<ul>...............<li>Moves.a |
| 221a0 | 6c 6c 20 62 69 74 73 20 74 6f 20 74 68 65 20 6c 65 66 74 2c 20 69 6e 73 65 72 74 69 6e 67 20 6e | ll.bits.to.the.left,.inserting.n |
| 221c0 | 65 77 20 7a 65 72 6f 65 73 20 61 74 20 74 68 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6c | ew.zeroes.at.the...............l |
| 221e0 | 65 61 73 74 2d 73 69 67 6e 69 66 69 63 61 6e 74 20 62 69 74 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 | east-significant.bit.</li>...... |
| 22200 | 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 3e 62 3c 2f 63 6f 64 65 3e 20 6d 75 73 74 | .........<li><code>b</code>.must |
| 22220 | 20 62 65 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 63 6f 6d 70 | .be...............<a.href="#comp |
| 22240 | 74 69 6d 65 22 3e 63 6f 6d 70 74 69 6d 65 2d 6b 6e 6f 77 6e 3c 2f 61 3e 20 6f 72 20 68 61 76 65 | time">comptime-known</a>.or.have |
| 22260 | 20 61 20 74 79 70 65 20 77 69 74 68 20 6c 6f 67 32 20 6e 75 6d 62 65 72 0a 20 20 20 20 20 20 20 | .a.type.with.log2.number........ |
| 22280 | 20 20 20 20 20 20 20 6f 66 20 62 69 74 73 20 61 73 20 3c 63 6f 64 65 3e 61 3c 2f 63 6f 64 65 3e | .......of.bits.as.<code>a</code> |
| 222a0 | 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 65 65 20 61 6c 73 | .</li>...............<li>See.als |
| 222c0 | 6f 20 3c 61 20 68 72 65 66 3d 22 23 73 68 6c 45 78 61 63 74 22 3e 40 73 68 6c 45 78 61 63 74 3c | o.<a.href="#shlExact">@shlExact< |
| 222e0 | 2f 61 3e 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 65 65 20 | /a>.</li>...............<li>See. |
| 22300 | 61 6c 73 6f 20 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 | also.<a.href="#shlWithOverflow"> |
| 22320 | 40 73 68 6c 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 | @shlWithOverflow</a>.</li>...... |
| 22340 | 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>.... |
| 22360 | 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 |
| 22380 | 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 62 31 3c | de><span.class="tok-number">0b1< |
| 223a0 | 2f 73 70 61 6e 3e 20 26 6c 74 3b 26 6c 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | /span>.<<.<span.class="tok |
| 223c0 | 2d 6e 75 6d 62 65 72 22 3e 38 3c 2f 73 70 61 6e 3e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | -number">8</span>.==.<span.class |
| 223e0 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 62 31 30 30 30 30 30 30 30 30 3c 2f 73 70 61 6e 3e | ="tok-number">0b100000000</span> |
| 22400 | 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 | </code></pre>...........</td>... |
| 22420 | 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>........ |
| 22440 | 20 20 20 3c 74 64 3e 53 61 74 75 72 61 74 69 6e 67 20 42 69 74 20 53 68 69 66 74 20 4c 65 66 74 | ...<td>Saturating.Bit.Shift.Left |
| 22460 | 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 61 | </td>...........<td><pre><code>a |
| 22480 | 20 26 6c 74 3b 26 6c 74 3b 7c 20 62 0a 61 20 26 6c 74 3b 26 6c 74 3b 7c 3d 20 62 3c 2f 63 6f 64 | .<<|.b.a.<<|=.b</cod |
| 224a0 | 65 3e 3c 2f 70 72 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 | e></pre></td>...........<td>.... |
| 224c0 | 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e | .........<ul>...............<li> |
| 224e0 | 3c 61 20 68 72 65 66 3d 22 23 49 6e 74 65 67 65 72 73 22 3e 49 6e 74 65 67 65 72 73 3c 2f 61 3e | <a.href="#Integers">Integers</a> |
| 22500 | 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>......... |
| 22520 | 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>.......... |
| 22540 | 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 |
| 22560 | 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 68 6c 45 78 61 63 74 | so.<a.href="#shlExact">@shlExact |
| 22580 | 3c 2f 61 3e 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 65 65 | </a>.</li>...............<li>See |
| 225a0 | 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 65 72 66 6c 6f 77 22 | .also.<a.href="#shlWithOverflow" |
| 225c0 | 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 69 3e 0a 20 20 20 20 | >@shlWithOverflow</a>.</li>..... |
| 225e0 | 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>... |
| 22600 | 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 |
| 22620 | 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 |
| 22640 | 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"> |
| 22660 | 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 |
| 22680 | 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 20 26 6c 74 3b 26 6c 74 3b 7c 20 3c 73 70 61 6e 20 63 6c | er">1</span>).<<|.<span.cl |
| 226a0 | 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 |
| 226c0 | 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 6e 3e | an.class="tok-number">255</span> |
| 226e0 | 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 | </code></pre>...........</td>... |
| 22700 | 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>........ |
| 22720 | 20 20 20 3c 74 64 3e 42 69 74 20 53 68 69 66 74 20 52 69 67 68 74 3c 2f 74 64 3e 0a 20 20 20 20 | ...<td>Bit.Shift.Right</td>..... |
| 22740 | 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 74 3b 26 67 74 3b 20 | ......<td><pre><code>a.>>. |
| 22760 | 62 0a 61 20 26 67 74 3b 26 67 74 3b 3d 20 62 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 74 64 | b.a.>>=.b</code></pre></td |
| 22780 | 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 |
| 227a0 | 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 |
| 227c0 | 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>....... |
| 227e0 | 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>..... |
| 22800 | 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 | ......<td>.............<ul>..... |
| 22820 | 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 4d 6f 76 65 73 20 61 6c 6c 20 62 69 74 73 20 74 6f 20 | ..........<li>Moves.all.bits.to. |
| 22840 | 74 68 65 20 72 69 67 68 74 2c 20 69 6e 73 65 72 74 69 6e 67 20 7a 65 72 6f 65 73 20 61 74 20 74 | the.right,.inserting.zeroes.at.t |
| 22860 | 68 65 20 6d 6f 73 74 2d 73 69 67 6e 69 66 69 63 61 6e 74 20 62 69 74 2e 3c 2f 6c 69 3e 0a 20 20 | he.most-significant.bit.</li>... |
| 22880 | 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 64 65 3e 20 6d | ............<li><code>b</code>.m |
| 228a0 | 75 73 74 20 62 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 | ust.be.................<a.href=" |
| 228c0 | 23 63 6f 6d 70 74 69 6d 65 22 3e 63 6f 6d 70 74 69 6d 65 2d 6b 6e 6f 77 6e 3c 2f 61 3e 20 6f 72 | #comptime">comptime-known</a>.or |
| 228e0 | 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 0a 20 20 | .have.a.type.with.log2.number... |
| 22900 | 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 61 | ..............of.bits.as.<code>a |
| 22920 | 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 3e | </code>.</li>...............<li> |
| 22940 | 53 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 73 68 72 45 78 61 63 74 22 3e 40 73 68 | See.also.<a.href="#shrExact">@sh |
| 22960 | 72 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 3c 2f 75 | rExact</a>.</li>.............</u |
| 22980 | 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 |
| 229a0 | 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 |
| 229c0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 62 31 30 31 30 3c 2f 73 70 61 6e 3e 20 | lass="tok-number">0b1010</span>. |
| 229e0 | 26 67 74 3b 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | >>.<span.class="tok-number |
| 22a00 | 22 3e 31 3c 2f 73 70 61 6e 3e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | ">1</span>.==.<span.class="tok-n |
| 22a20 | 75 6d 62 65 72 22 3e 30 62 31 30 31 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e | umber">0b101</span></code></pre> |
| 22a40 | 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>.. |
| 22a60 | 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 77 69 73 | .......<tr>...........<td>Bitwis |
| 22a80 | 65 20 41 6e 64 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 | e.And</td>...........<td><pre><c |
| 22aa0 | 6f 64 65 3e 61 20 26 61 6d 70 3b 20 62 0a 61 20 26 61 6d 70 3b 3d 20 62 3c 2f 63 6f 64 65 3e 3c | ode>a.&.b.a.&=.b</code>< |
| 22ac0 | 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>....... |
| 22ae0 | 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. |
| 22b00 | 68 72 65 66 3d 22 23 49 6e 74 65 67 65 72 73 22 3e 49 6e 74 65 67 65 72 73 3c 2f 61 3e 3c 2f 6c | href="#Integers">Integers</a></l |
| 22b20 | 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>...........< |
| 22b40 | 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>............. |
| 22b60 | 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 20 3c | <ul>...............<li>Invokes.< |
| 22b80 | 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 |
| 22ba0 | 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. |
| 22bc0 | 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 6c 3e | operands.</li>.............</ul> |
| 22be0 | 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>. |
| 22c00 | 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 |
| 22c20 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 62 30 31 31 3c 2f 73 70 61 6e 3e 20 26 61 6d | ss="tok-number">0b011</span>.&am |
| 22c40 | 70 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 62 31 30 | p;.<span.class="tok-number">0b10 |
| 22c60 | 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 |
| 22c80 | 62 65 72 22 3e 30 62 30 30 31 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 | ber">0b001</span></code></pre>.. |
| 22ca0 | 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>.... |
| 22cc0 | 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 42 69 74 77 69 73 65 20 | .....<tr>...........<td>Bitwise. |
| 22ce0 | 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 3c 63 6f 64 65 | Or</td>...........<td><pre><code |
| 22d00 | 3e 61 20 7c 20 62 0a 61 20 7c 3d 20 62 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 74 64 3e 0a | >a.|.b.a.|=.b</code></pre></td>. |
| 22d20 | 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>. |
| 22d40 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 49 6e 74 65 | ..............<li><a.href="#Inte |
| 22d60 | 67 65 72 73 22 3e 49 6e 74 65 67 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 | gers">Integers</a></li>......... |
| 22d80 | 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>....... |
| 22da0 | 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>....... |
| 22dc0 | 20 20 20 20 20 20 20 20 3c 6c 69 3e 49 6e 76 6f 6b 65 73 20 3c 61 20 68 72 65 66 3d 22 23 50 65 | ........<li>Invokes.<a.href="#Pe |
| 22de0 | 65 72 2d 54 79 70 65 2d 52 65 73 6f 6c 75 74 69 6f 6e 22 3e 50 65 65 72 20 54 79 70 65 20 52 65 | er-Type-Resolution">Peer.Type.Re |
| 22e00 | 73 6f 6c 75 74 69 6f 6e 3c 2f 61 3e 20 66 6f 72 20 74 68 65 20 6f 70 65 72 61 6e 64 73 2e 3c 2f | solution</a>.for.the.operands.</ |
| 22e20 | 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>........... |
| 22e40 | 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>............ |
| 22e60 | 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | .<pre><code><span.class="tok-num |
| 22e80 | 62 65 72 22 3e 30 62 30 31 30 3c 2f 73 70 61 6e 3e 20 7c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ber">0b010</span>.|.<span.class= |
| 22ea0 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 62 31 30 30 3c 2f 73 70 61 6e 3e 20 3d 3d 20 3c 73 70 | "tok-number">0b100</span>.==.<sp |
| 22ec0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 62 31 31 30 3c 2f 73 70 61 | an.class="tok-number">0b110</spa |
| 22ee0 | 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>. |
| 22f00 | 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>...... |
| 22f20 | 20 20 20 20 20 3c 74 64 3e 42 69 74 77 69 73 65 20 58 6f 72 3c 2f 74 64 3e 0a 20 20 20 20 20 20 | .....<td>Bitwise.Xor</td>....... |
| 22f40 | 20 20 20 20 3c 74 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 61 20 5e 20 62 0a 61 20 5e 3d 20 62 3c | ....<td><pre><code>a.^.b.a.^=.b< |
| 22f60 | 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e | /code></pre></td>...........<td> |
| 22f80 | 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>............... |
| 22fa0 | 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 49 6e 74 65 67 65 72 73 22 3e 49 6e 74 65 67 65 72 73 | <li><a.href="#Integers">Integers |
| 22fc0 | 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>..... |
| 22fe0 | 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 | ......</td>...........<td>...... |
| 23000 | 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 6e | .......<ul>...............<li>In |
| 23020 | 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 75 | vokes.<a.href="#Peer-Type-Resolu |
| 23040 | 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 66 | tion">Peer.Type.Resolution</a>.f |
| 23060 | 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 20 | or.the.operands.</li>........... |
| 23080 | 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>......... |
| 230a0 | 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 |
| 230c0 | 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 70 | pan.class="tok-number">0b011</sp |
| 230e0 | 61 6e 3e 20 5e 20 3c 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 |
| 23100 | 62 31 30 31 3c 2f 73 70 61 6e 3e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | b101</span>.==.<span.class="tok- |
| 23120 | 6e 75 6d 62 65 72 22 3e 30 62 31 31 30 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 | number">0b110</span></code></pre |
| 23140 | 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>. |
| 23160 | 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 77 69 | ........<tr>...........<td>Bitwi |
| 23180 | 73 65 20 4e 6f 74 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 70 72 65 3e 3c | se.Not</td>...........<td><pre>< |
| 231a0 | 63 6f 64 65 3e 7e 61 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 | code>~a</code></pre></td>....... |
| 231c0 | 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>....... |
| 231e0 | 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"> |
| 23200 | 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>.............</ |
| 23220 | 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 |
| 23240 | 64 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 | d></td>...........<td>.......... |
| 23260 | 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 7e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ...<pre><code>~<span.class="tok- |
| 23280 | 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= |
| 232a0 | 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 |
| 232c0 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 62 31 30 31 30 31 31 31 31 3c 2f 73 70 61 6e 3e | s="tok-number">0b10101111</span> |
| 232e0 | 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 62 | ).==.<span.class="tok-number">0b |
| 23300 | 30 31 30 31 30 30 30 30 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 | 01010000</span></code></pre>.... |
| 23320 | 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>...... |
| 23340 | 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 44 65 66 61 75 6c 74 69 6e 67 | ...<tr>...........<td>Defaulting |
| 23360 | 20 4f 70 74 69 6f 6e 61 6c 20 55 6e 77 72 61 70 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 | .Optional.Unwrap</td>........... |
| 23380 | 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 73 73 3d 22 74 6f | <td><pre><code>a.<span.class="to |
| 233a0 | 6b 2d 6b 77 22 3e 6f 72 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 62 3c 2f 63 6f 64 65 3e 3c 2f 70 72 | k-kw">orelse</span>.b</code></pr |
| 233c0 | 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>.......... |
| 233e0 | 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 |
| 23400 | 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 6c 69 | f="#Optionals">Optionals</a></li |
| 23420 | 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>...........</ |
| 23440 | 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 49 66 20 3c 63 6f 64 65 3e 61 3c 2f 63 6f | td>...........<td>If.<code>a</co |
| 23460 | 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 6e 75 | de>.is.<code><span.class="tok-nu |
| 23480 | 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 0a 20 20 20 20 20 20 20 20 | ll">null</span></code>,......... |
| 234a0 | 20 20 72 65 74 75 72 6e 73 20 3c 63 6f 64 65 3e 62 3c 2f 63 6f 64 65 3e 20 28 22 64 65 66 61 75 | ..returns.<code>b</code>.("defau |
| 234c0 | 6c 74 20 76 61 6c 75 65 22 29 2c 0a 20 20 20 20 20 20 20 20 20 20 6f 74 68 65 72 77 69 73 65 20 | lt.value"),...........otherwise. |
| 234e0 | 72 65 74 75 72 6e 73 20 74 68 65 20 75 6e 77 72 61 70 70 65 64 20 76 61 6c 75 65 20 6f 66 20 3c | returns.the.unwrapped.value.of.< |
| 23500 | 63 6f 64 65 3e 61 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 20 20 20 20 4e 6f 74 65 20 74 68 | code>a</code>............Note.th |
| 23520 | 61 74 20 3c 63 6f 64 65 3e 62 3c 2f 63 6f 64 65 3e 20 6d 61 79 20 62 65 20 61 20 76 61 6c 75 65 | at.<code>b</code>.may.be.a.value |
| 23540 | 20 6f 66 20 74 79 70 65 20 3c 61 20 68 72 65 66 3d 22 23 6e 6f 72 65 74 75 72 6e 22 3e 6e 6f 72 | .of.type.<a.href="#noreturn">nor |
| 23560 | 65 74 75 72 6e 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 | eturn</a>............</td>...... |
| 23580 | 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 |
| 235a0 | 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 |
| 235c0 | 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 |
| 235e0 | 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- |
| 23600 | 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | null">null</span>;.<span.class=" |
| 23620 | 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 75 6e 77 72 61 70 70 65 64 20 3d | tok-kw">const</span>.unwrapped.= |
| 23640 | 20 76 61 6c 75 65 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 6f 72 65 6c | .value.<span.class="tok-kw">orel |
| 23660 | 73 65 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | se</span>.<span.class="tok-numbe |
| 23680 | 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 3c 73 70 | r">1234</span>;.unwrapped.==.<sp |
| 236a0 | 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 |
| 236c0 | 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 | ></code></pre>...........</td>.. |
| 236e0 | 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>....... |
| 23700 | 20 20 20 20 3c 74 64 3e 4f 70 74 69 6f 6e 61 6c 20 55 6e 77 72 61 70 3c 2f 74 64 3e 0a 20 20 20 | ....<td>Optional.Unwrap</td>.... |
| 23720 | 20 20 20 20 20 20 20 3c 74 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 61 2e 3f 3c 2f 63 6f 64 65 3e | .......<td><pre><code>a.?</code> |
| 23740 | 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>...... |
| 23760 | 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 |
| 23780 | 20 68 72 65 66 3d 22 23 4f 70 74 69 6f 6e 61 6c 73 22 3e 4f 70 74 69 6f 6e 61 6c 73 3c 2f 61 3e | .href="#Optionals">Optionals</a> |
| 237a0 | 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>......... |
| 237c0 | 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>.......... |
| 237e0 | 20 20 20 45 71 75 69 76 61 6c 65 6e 74 20 74 6f 3a 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 | ...Equivalent.to:.............<p |
| 23800 | 72 65 3e 3c 63 6f 64 65 3e 61 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | re><code>a.<span.class="tok-kw"> |
| 23820 | 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 |
| 23840 | 77 22 3e 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 | w">unreachable</span></code></pr |
| 23860 | 65 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 | e>...........</td>...........<td |
| 23880 | 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 |
| 238a0 | 6c 61 73 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 |
| 238c0 | 3a 20 3f 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 | :.?<span.class="tok-type">u32</s |
| 238e0 | 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"> |
| 23900 | 35 36 37 38 3c 2f 73 70 61 6e 3e 3b 0a 76 61 6c 75 65 2e 3f 20 3d 3d 20 3c 73 70 61 6e 20 63 6c | 5678</span>;.value.?.==.<span.cl |
| 23920 | 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 3c 2f 63 6f | ass="tok-number">5678</span></co |
| 23940 | 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>....... |
| 23960 | 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>...........< |
| 23980 | 74 64 3e 44 65 66 61 75 6c 74 69 6e 67 20 45 72 72 6f 72 20 55 6e 77 72 61 70 3c 2f 74 64 3e 0a | td>Defaulting.Error.Unwrap</td>. |
| 239a0 | 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 61 20 3c 73 70 61 6e | ..........<td><pre><code>a.<span |
| 239c0 | 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 62 0a 61 | .class="tok-kw">catch</span>.b.a |
| 239e0 | 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 |
| 23a00 | 6e 3e 20 7c 65 72 72 7c 20 62 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 74 64 3e 0a 20 20 20 | n>.|err|.b</code></pre></td>.... |
| 23a20 | 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>.... |
| 23a40 | 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 45 72 72 6f 72 73 22 | ...........<li><a.href="#Errors" |
| 23a60 | 3e 45 72 72 6f 72 20 55 6e 69 6f 6e 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 | >Error.Unions</a></li>.......... |
| 23a80 | 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>........ |
| 23aa0 | 20 20 20 3c 74 64 3e 49 66 20 3c 63 6f 64 65 3e 61 3c 2f 63 6f 64 65 3e 20 69 73 20 61 6e 20 3c | ...<td>If.<code>a</code>.is.an.< |
| 23ac0 | 63 6f 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 6f 72 3c | code><span.class="tok-kw">error< |
| 23ae0 | 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 72 65 74 75 72 6e 73 | /span></code>,...........returns |
| 23b00 | 20 3c 63 6f 64 65 3e 62 3c 2f 63 6f 64 65 3e 20 28 22 64 65 66 61 75 6c 74 20 76 61 6c 75 65 22 | .<code>b</code>.("default.value" |
| 23b20 | 29 2c 0a 20 20 20 20 20 20 20 20 20 20 6f 74 68 65 72 77 69 73 65 20 72 65 74 75 72 6e 73 20 74 | ),...........otherwise.returns.t |
| 23b40 | 68 65 20 75 6e 77 72 61 70 70 65 64 20 76 61 6c 75 65 20 6f 66 20 3c 63 6f 64 65 3e 61 3c 2f 63 | he.unwrapped.value.of.<code>a</c |
| 23b60 | 6f 64 65 3e 2e 0a 20 20 20 20 20 20 20 20 20 20 4e 6f 74 65 20 74 68 61 74 20 3c 63 6f 64 65 3e | ode>............Note.that.<code> |
| 23b80 | 62 3c 2f 63 6f 64 65 3e 20 6d 61 79 20 62 65 20 61 20 76 61 6c 75 65 20 6f 66 20 74 79 70 65 20 | b</code>.may.be.a.value.of.type. |
| 23ba0 | 3c 61 20 68 72 65 66 3d 22 23 6e 6f 72 65 74 75 72 6e 22 3e 6e 6f 72 65 74 75 72 6e 3c 2f 61 3e | <a.href="#noreturn">noreturn</a> |
| 23bc0 | 2e 0a 3c 63 6f 64 65 3e 65 72 72 3c 2f 63 6f 64 65 3e 20 69 73 20 74 68 65 20 3c 63 6f 64 65 3e | ..<code>err</code>.is.the.<code> |
| 23be0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e | <span.class="tok-kw">error</span |
| 23c00 | 3e 3c 2f 63 6f 64 65 3e 20 61 6e 64 20 69 73 20 69 6e 20 73 63 6f 70 65 20 6f 66 20 74 68 65 20 | ></code>.and.is.in.scope.of.the. |
| 23c20 | 65 78 70 72 65 73 73 69 6f 6e 20 3c 63 6f 64 65 3e 62 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 | expression.<code>b</code>....... |
| 23c40 | 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>....... |
| 23c60 | 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 |
| 23c80 | 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 76 61 6c 75 65 3a 20 3c 73 70 61 6e 20 | k-kw">const</span>.value:.<span. |
| 23ca0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 61 6e 79 65 72 72 6f 72 3c 2f 73 70 61 6e 3e | class="tok-type">anyerror</span> |
| 23cc0 | 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 | !<span.class="tok-type">u32</spa |
| 23ce0 | 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c | n>.=.<span.class="tok-kw">error< |
| 23d00 | 2f 73 70 61 6e 3e 2e 42 72 6f 6b 65 6e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | /span>.Broken;.<span.class="tok- |
| 23d20 | 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 75 6e 77 72 61 70 70 65 64 20 3d 20 76 61 6c | kw">const</span>.unwrapped.=.val |
| 23d40 | 75 65 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 61 74 63 68 3c 2f 73 | ue.<span.class="tok-kw">catch</s |
| 23d60 | 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 | pan>.<span.class="tok-number">12 |
| 23d80 | 33 34 3c 2f 73 70 61 6e 3e 3b 0a 75 6e 77 72 61 70 70 65 64 20 3d 3d 20 3c 73 70 61 6e 20 63 6c | 34</span>;.unwrapped.==.<span.cl |
| 23da0 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 3c 2f 63 6f | ass="tok-number">1234</span></co |
| 23dc0 | 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>....... |
| 23de0 | 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>...........< |
| 23e00 | 74 64 3e 4c 6f 67 69 63 61 6c 20 41 6e 64 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 | td>Logical.And</td>...........<t |
| 23e20 | 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 61 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | d><pre><code>a.<span.class="tok- |
| 23e40 | 6b 77 22 3e 61 6e 64 3c 2f 73 70 61 6e 3e 20 62 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 74 | kw">and</span>.b</code></pre></t |
| 23e60 | 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 |
| 23e80 | 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 50 | l>...............<li><a.href="#P |
| 23ea0 | 72 69 6d 69 74 69 76 65 2d 54 79 70 65 73 22 3e 62 6f 6f 6c 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 | rimitive-Types">bool</a></li>... |
| 23ec0 | 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>. |
| 23ee0 | 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 49 66 20 3c 63 6f 64 | ..........<td>...........If.<cod |
| 23f00 | 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 3d | e>a</code>.is.<code><span.class= |
| 23f20 | 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 2c 20 | "tok-null">false</span></code>,. |
| 23f40 | 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 |
| 23f60 | 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 0a 20 20 20 20 20 20 20 | ull">false</span></code>........ |
| 23f80 | 20 20 20 77 69 74 68 6f 75 74 20 65 76 61 6c 75 61 74 69 6e 67 20 3c 63 6f 64 65 3e 62 3c 2f 63 | ...without.evaluating.<code>b</c |
| 23fa0 | 6f 64 65 3e 2e 20 4f 74 68 65 72 77 69 73 65 2c 20 72 65 74 75 72 6e 73 20 3c 63 6f 64 65 3e 62 | ode>..Otherwise,.returns.<code>b |
| 23fc0 | 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 | </code>............</td>........ |
| 23fe0 | 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 28 | ...<td>.............<pre><code>( |
| 24000 | 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 |
| 24020 | 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 6e 64 3c 2f 73 70 | an>.<span.class="tok-kw">and</sp |
| 24040 | 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c | an>.<span.class="tok-null">true< |
| 24060 | 2f 73 70 61 6e 3e 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c | /span>).==.<span.class="tok-null |
| 24080 | 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 65 3e 0a 20 20 20 20 | ">false</span></code></pre>..... |
| 240a0 | 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 | ......</td>.........</tr>....... |
| 240c0 | 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 4c 6f 67 69 63 61 6c 20 4f 72 3c | ..<tr>...........<td>Logical.Or< |
| 240e0 | 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. |
| 24100 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 6f 72 3c 2f 73 70 61 6e 3e 20 62 | <span.class="tok-kw">or</span>.b |
| 24120 | 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 |
| 24140 | 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>.............. |
| 24160 | 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 50 72 69 6d 69 74 69 76 65 2d 54 79 70 65 73 22 3e | .<li><a.href="#Primitive-Types"> |
| 24180 | 62 6f 6f 6c 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a | bool</a></li>.............</ul>. |
| 241a0 | 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>.. |
| 241c0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 49 66 20 3c 63 6f 64 65 3e 61 3c 2f 63 6f 64 65 3e 20 69 | .............If.<code>a</code>.i |
| 241e0 | 73 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 | s.<code><span.class="tok-null">t |
| 24200 | 72 75 65 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 | rue</span></code>,.............. |
| 24220 | 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 3d 22 74 6f 6b 2d | .returns.<code><span.class="tok- |
| 24240 | 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 77 69 74 68 6f 75 74 | null">true</span></code>.without |
| 24260 | 20 65 76 61 6c 75 61 74 69 6e 67 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 3e | .evaluating...............<code> |
| 24280 | 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 0a 20 20 20 | b</code>..Otherwise,.returns.... |
| 242a0 | 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 3e 62 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 | ...........<code>b</code>....... |
| 242c0 | 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>....... |
| 242e0 | 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 73 73 3d 22 74 | ......<pre><code>(<span.class="t |
| 24300 | 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 | ok-null">false</span>.<span.clas |
| 24320 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 6f 72 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 | s="tok-kw">or</span>.<span.class |
| 24340 | 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 3d 3d 20 3c 73 70 61 | ="tok-null">true</span>).==.<spa |
| 24360 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 3c 2f | n.class="tok-null">true</span></ |
| 24380 | 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>..... |
| 243a0 | 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>.......... |
| 243c0 | 20 3c 74 64 3e 42 6f 6f 6c 65 61 6e 20 4e 6f 74 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 | .<td>Boolean.Not</td>........... |
| 243e0 | 3c 74 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 21 61 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f | <td><pre><code>!a</code></pre></ |
| 24400 | 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>.............< |
| 24420 | 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="# |
| 24440 | 50 72 69 6d 69 74 69 76 65 2d 54 79 70 65 73 22 3e 62 6f 6f 6c 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 | Primitive-Types">bool</a></li>.. |
| 24460 | 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> |
| 24480 | 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c | ...........<td></td>...........< |
| 244a0 | 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 21 3c 73 70 61 | td>.............<pre><code>!<spa |
| 244c0 | 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 20 | n.class="tok-null">false</span>. |
| 244e0 | 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f | ==.<span.class="tok-null">true</ |
| 24500 | 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 |
| 24520 | 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>... |
| 24540 | 20 20 20 20 20 20 20 20 3c 74 64 3e 45 71 75 61 6c 69 74 79 3c 2f 74 64 3e 0a 20 20 20 20 20 20 | ........<td>Equality</td>....... |
| 24560 | 20 20 20 20 3c 74 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 61 20 3d 3d 20 62 3c 2f 63 6f 64 65 3e | ....<td><pre><code>a.==.b</code> |
| 24580 | 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>...... |
| 245a0 | 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 |
| 245c0 | 20 68 72 65 66 3d 22 23 49 6e 74 65 67 65 72 73 22 3e 49 6e 74 65 67 65 72 73 3c 2f 61 3e 3c 2f | .href="#Integers">Integers</a></ |
| 245e0 | 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 | li>...............<li><a.href="# |
| 24600 | 46 6c 6f 61 74 73 22 3e 46 6c 6f 61 74 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 | Floats">Floats</a></li>......... |
| 24620 | 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 50 72 69 6d 69 74 69 76 65 2d 54 79 | ......<li><a.href="#Primitive-Ty |
| 24640 | 70 65 73 22 3e 62 6f 6f 6c 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 | pes">bool</a></li>.............. |
| 24660 | 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 50 72 69 6d 69 74 69 76 65 2d 54 79 70 65 73 22 3e | .<li><a.href="#Primitive-Types"> |
| 24680 | 74 79 70 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e | type</a></li>...............<li> |
| 246a0 | 3c 61 20 68 72 65 66 3d 22 23 70 61 63 6b 65 64 2d 73 74 72 75 63 74 22 3e 70 61 63 6b 65 64 20 | <a.href="#packed-struct">packed. |
| 246c0 | 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 20 20 3c 2f 75 6c | struct</a></li>.............</ul |
| 246e0 | 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> |
| 24700 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 52 65 74 75 72 6e 73 20 3c 63 6f 64 65 3e 3c 73 70 | ...............Returns.<code><sp |
| 24720 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 3c | an.class="tok-null">true</span>< |
| 24740 | 2f 63 6f 64 65 3e 20 69 66 20 61 20 61 6e 64 20 62 20 61 72 65 20 65 71 75 61 6c 2c 20 6f 74 68 | /code>.if.a.and.b.are.equal,.oth |
| 24760 | 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 |
| 24780 | 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>. |
| 247a0 | 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 |
| 247c0 | 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 |
| 247e0 | 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.. |
| 24800 | 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>.. |
| 24820 | 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 |
| 24840 | 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 61 | ss="tok-number">1</span>.==.<spa |
| 24860 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 20 3d | n.class="tok-number">1</span>).= |
| 24880 | 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 | =.<span.class="tok-null">true</s |
| 248a0 | 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 |
| 248c0 | 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>.... |
| 248e0 | 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 0a 20 20 20 20 20 | .......<td>Null.Check</td>...... |
| 24900 | 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 73 70 61 6e 20 63 | .....<td><pre><code>a.==.<span.c |
| 24920 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 | lass="tok-null">null</span></cod |
| 24940 | 65 3e 3c 2f 70 72 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 | e></pre></td>...........<td>.... |
| 24960 | 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e | .........<ul>...............<li> |
| 24980 | 3c 61 20 68 72 65 66 3d 22 23 4f 70 74 69 6f 6e 61 6c 73 22 3e 4f 70 74 69 6f 6e 61 6c 73 3c 2f | <a.href="#Optionals">Optionals</ |
| 249a0 | 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>....... |
| 249c0 | 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>........ |
| 249e0 | 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 |
| 24a00 | 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 20 69 | ="tok-null">true</span></code>.i |
| 24a20 | 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 74 6f 6b 2d 6e 75 | f.a.is.<code><span.class="tok-nu |
| 24a40 | 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 6f 74 68 65 72 77 69 73 | ll">null</span></code>,.otherwis |
| 24a60 | 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 3d 22 74 6f 6b | e.returns.<code><span.class="tok |
| 24a80 | 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 | -null">false</span></code>...... |
| 24aa0 | 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 | ......</td>...........<td>...... |
| 24ac0 | 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 |
| 24ae0 | 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 76 61 6c 75 65 3a 20 3f 3c 73 70 61 | ok-kw">const</span>.value:.?<spa |
| 24b00 | 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>.=. |
| 24b20 | 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 |
| 24b40 | 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 22 74 6f 6b 2d 6e | n>;.(value.==.<span.class="tok-n |
| 24b60 | 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ull">null</span>).==.<span.class |
| 24b80 | 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 3c 2f | ="tok-null">true</span></code></ |
| 24ba0 | 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 |
| 24bc0 | 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 49 6e | r>.........<tr>...........<td>In |
| 24be0 | 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 64 3e 3c 70 72 65 | equality</td>...........<td><pre |
| 24c00 | 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 3c 2f 74 64 3e 0a | ><code>a.!=.b</code></pre></td>. |
| 24c20 | 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>. |
| 24c40 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 49 6e 74 65 | ..............<li><a.href="#Inte |
| 24c60 | 67 65 72 73 22 3e 49 6e 74 65 67 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 | gers">Integers</a></li>......... |
| 24c80 | 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 73 22 3e 46 6c 6f 61 | ......<li><a.href="#Floats">Floa |
| 24ca0 | 74 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 | ts</a></li>...............<li><a |
| 24cc0 | 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 |
| 24ce0 | 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 |
| 24d00 | 3d 22 23 50 72 69 6d 69 74 69 76 65 2d 54 79 70 65 73 22 3e 74 79 70 65 3c 2f 61 3e 3c 2f 6c 69 | ="#Primitive-Types">type</a></li |
| 24d20 | 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>...........</ |
| 24d40 | 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 20 | td>...........<td>.............. |
| 24d60 | 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 6b 2d | .Returns.<code><span.class="tok- |
| 24d80 | 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 61 20 61 | null">false</span></code>.if.a.a |
| 24da0 | 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 72 65 74 75 72 6e | nd.b.are.equal,.otherwise.return |
| 24dc0 | 73 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 | s.<code><span.class="tok-null">t |
| 24de0 | 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 20 20 20 20 20 49 | rue</span></code>..............I |
| 24e00 | 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 |
| 24e20 | 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>. |
| 24e40 | 66 6f 72 20 74 68 65 20 6f 70 65 72 61 6e 64 73 2e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 | for.the.operands............</td |
| 24e60 | 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 |
| 24e80 | 65 3e 3c 63 6f 64 65 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | e><code>(<span.class="tok-number |
| 24ea0 | 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 22 74 6f 6b 2d 6e | ">1</span>.!=.<span.class="tok-n |
| 24ec0 | 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 73 73 3d | umber">1</span>).==.<span.class= |
| 24ee0 | 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></ |
| 24f00 | 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 |
| 24f20 | 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 4e 6f | r>.........<tr>...........<td>No |
| 24f40 | 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 20 20 3c 74 64 3e | n-Null.Check</td>...........<td> |
| 24f60 | 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 73 3d 22 74 6f 6b | <pre><code>a.!=.<span.class="tok |
| 24f80 | 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c | -null">null</span></code></pre>< |
| 24fa0 | 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>............. |
| 24fc0 | 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=" |
| 24fe0 | 23 4f 70 74 69 6f 6e 61 6c 73 22 3e 4f 70 74 69 6f 6e 61 6c 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 | #Optionals">Optionals</a></li>.. |
| 25000 | 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> |
| 25020 | 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 |
| 25040 | 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 |
| 25060 | 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 61 20 69 73 20 3c | l">false</span></code>.if.a.is.< |
| 25080 | 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c | code><span.class="tok-null">null |
| 250a0 | 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 72 65 74 75 72 6e | </span></code>,.otherwise.return |
| 250c0 | 73 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 | s.<code><span.class="tok-null">t |
| 250e0 | 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 20 20 20 3c 2f 74 | rue</span></code>............</t |
| 25100 | 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 |
| 25120 | 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 |
| 25140 | 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=" |
| 25160 | 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 |
| 25180 | 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 28 76 61 6c 75 | ss="tok-null">null</span>;.(valu |
| 251a0 | 65 20 21 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c | e.!=.<span.class="tok-null">null |
| 251c0 | 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c | </span>).==.<span.class="tok-nul |
| 251e0 | 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 65 3e 0a 20 20 20 | l">false</span></code></pre>.... |
| 25200 | 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>...... |
| 25220 | 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 74 65 72 20 54 68 | ...<tr>...........<td>Greater.Th |
| 25240 | 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 3e 3c 63 6f 64 65 | an</td>...........<td><pre><code |
| 25260 | 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 3e 0a 20 20 20 20 | >a.>.b</code></pre></td>..... |
| 25280 | 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 | ......<td>.............<ul>..... |
| 252a0 | 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 49 6e 74 65 67 65 72 73 | ..........<li><a.href="#Integers |
| 252c0 | 22 3e 49 6e 74 65 67 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | ">Integers</a></li>............. |
| 252e0 | 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 73 22 3e 46 6c 6f 61 74 73 3c 2f | ..<li><a.href="#Floats">Floats</ |
| 25300 | 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>....... |
| 25320 | 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>........ |
| 25340 | 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 |
| 25360 | 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 20 69 | ="tok-null">true</span></code>.i |
| 25380 | 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 65 72 77 69 73 65 | f.a.is.greater.than.b,.otherwise |
| 253a0 | 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 3d 22 74 6f 6b 2d | .returns.<code><span.class="tok- |
| 253c0 | 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 | null">false</span></code>....... |
| 253e0 | 20 20 20 20 20 20 20 49 6e 76 6f 6b 65 73 20 3c 61 20 68 72 65 66 3d 22 23 50 65 65 72 2d 54 79 | .......Invokes.<a.href="#Peer-Ty |
| 25400 | 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 |
| 25420 | 69 6f 6e 3c 2f 61 3e 20 66 6f 72 20 74 68 65 20 6f 70 65 72 61 6e 64 73 2e 0a 20 20 20 20 20 20 | ion</a>.for.the.operands........ |
| 25440 | 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>........ |
| 25460 | 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 73 73 3d 22 74 6f | .....<pre><code>(<span.class="to |
| 25480 | 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 70 61 6e 20 63 6c | k-number">2</span>.>.<span.cl |
| 254a0 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 3c 73 | ass="tok-number">1</span>).==.<s |
| 254c0 | 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> |
| 254e0 | 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 | </code></pre>...........</td>... |
| 25500 | 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>........ |
| 25520 | 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 64 3e 0a 20 20 20 | ...<td>Greater.or.Equal</td>.... |
| 25540 | 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 74 3b 3d 20 62 3c | .......<td><pre><code>a.>=.b< |
| 25560 | 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e | /code></pre></td>...........<td> |
| 25580 | 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>............... |
| 255a0 | 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 49 6e 74 65 67 65 72 73 22 3e 49 6e 74 65 67 65 72 73 | <li><a.href="#Integers">Integers |
| 255c0 | 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 | </a></li>...............<li><a.h |
| 255e0 | 72 65 66 3d 22 23 46 6c 6f 61 74 73 22 3e 46 6c 6f 61 74 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 | ref="#Floats">Floats</a></li>... |
| 25600 | 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>. |
| 25620 | 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 52 65 74 | ..........<td>...............Ret |
| 25640 | 75 72 6e 73 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c | urns.<code><span.class="tok-null |
| 25660 | 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 67 72 65 | ">true</span></code>.if.a.is.gre |
| 25680 | 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 74 68 65 72 77 69 | ater.than.or.equal.to.b,.otherwi |
| 256a0 | 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 3d 22 74 6f | se.returns.<code><span.class="to |
| 256c0 | 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 0a 20 20 20 | k-null">false</span></code>..... |
| 256e0 | 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 65 65 72 2d | .........Invokes.<a.href="#Peer- |
| 25700 | 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 |
| 25720 | 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 20 20 20 20 | ution</a>.for.the.operands...... |
| 25740 | 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 | ......</td>...........<td>...... |
| 25760 | 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 73 73 3d 22 | .......<pre><code>(<span.class=" |
| 25780 | 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 20 3c 73 70 61 6e | tok-number">2</span>.>=.<span |
| 257a0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 20 3d 3d | .class="tok-number">1</span>).== |
| 257c0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 | .<span.class="tok-null">true</sp |
| 257e0 | 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e | an></code></pre>...........</td> |
| 25800 | 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>..... |
| 25820 | 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 20 20 20 20 20 20 | ......<td>Less.Than</td>........ |
| 25840 | 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 3c 2f 63 6f 64 65 | ...<td><pre><code>a.<.b</code |
| 25860 | 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>..... |
| 25880 | 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>< |
| 258a0 | 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>< |
| 258c0 | 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 | /li>...............<li><a.href=" |
| 258e0 | 23 46 6c 6f 61 74 73 22 3e 46 6c 6f 61 74 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 | #Floats">Floats</a></li>........ |
| 25900 | 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>...... |
| 25920 | 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 52 65 74 75 72 6e 73 20 | .....<td>...............Returns. |
| 25940 | 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 | <code><span.class="tok-null">tru |
| 25960 | 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 69 66 20 61 20 69 73 20 6c 65 73 73 20 74 68 61 | e</span></code>.if.a.is.less.tha |
| 25980 | 6e 20 62 2c 20 6f 74 68 65 72 77 69 73 65 20 72 65 74 75 72 6e 73 20 3c 63 6f 64 65 3e 3c 73 70 | n.b,.otherwise.returns.<code><sp |
| 259a0 | 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> |
| 259c0 | 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 49 6e 76 6f 6b 65 73 20 3c 61 20 | </code>..............Invokes.<a. |
| 259e0 | 68 72 65 66 3d 22 23 50 65 65 72 2d 54 79 70 65 2d 52 65 73 6f 6c 75 74 69 6f 6e 22 3e 50 65 65 | href="#Peer-Type-Resolution">Pee |
| 25a00 | 72 20 54 79 70 65 20 52 65 73 6f 6c 75 74 69 6f 6e 3c 2f 61 3e 20 66 6f 72 20 74 68 65 20 6f 70 | r.Type.Resolution</a>.for.the.op |
| 25a20 | 65 72 61 6e 64 73 2e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 | erands............</td>......... |
| 25a40 | 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 28 3c | ..<td>.............<pre><code>(< |
| 25a60 | 73 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> |
| 25a80 | 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 |
| 25aa0 | 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c | </span>).==.<span.class="tok-nul |
| 25ac0 | 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 | l">true</span></code></pre>..... |
| 25ae0 | 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 | ......</td>.........</tr>....... |
| 25b00 | 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 72 20 6f 72 20 45 | ..<tr>...........<td>Lesser.or.E |
| 25b20 | 71 75 61 6c 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 70 72 65 3e 3c 63 6f | qual</td>...........<td><pre><co |
| 25b40 | 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 2f 74 64 3e 0a 20 | de>a.<=.b</code></pre></td>.. |
| 25b60 | 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>.. |
| 25b80 | 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 |
| 25ba0 | 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>.......... |
| 25bc0 | 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 73 22 3e 46 6c 6f 61 74 | .....<li><a.href="#Floats">Float |
| 25be0 | 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>.... |
| 25c00 | 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>..... |
| 25c20 | 20 20 20 20 20 20 20 20 20 20 52 65 74 75 72 6e 73 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c | ..........Returns.<code><span.cl |
| 25c40 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 | ass="tok-null">true</span></code |
| 25c60 | 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 61 6c 20 74 6f 20 | >.if.a.is.less.than.or.equal.to. |
| 25c80 | 62 2c 20 6f 74 68 65 72 77 69 73 65 20 72 65 74 75 72 6e 73 20 3c 63 6f 64 65 3e 3c 73 70 61 6e | b,.otherwise.returns.<code><span |
| 25ca0 | 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></ |
| 25cc0 | 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 |
| 25ce0 | 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. |
| 25d00 | 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 |
| 25d20 | 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>........... |
| 25d40 | 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 |
| 25d60 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 20 26 | an.class="tok-number">1</span>.& |
| 25d80 | 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 65 72 22 3e 32 3c | lt;=.<span.class="tok-number">2< |
| 25da0 | 2f 73 70 61 6e 3e 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c | /span>).==.<span.class="tok-null |
| 25dc0 | 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>...... |
| 25de0 | 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>........ |
| 25e00 | 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 43 6f 6e 63 61 74 | .<tr>...........<td>Array.Concat |
| 25e20 | 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 3e 3c 70 72 65 3e | enation</td>...........<td><pre> |
| 25e40 | 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 2f 74 64 3e 0a 20 | <code>a.++.b</code></pre></td>.. |
| 25e60 | 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>.. |
| 25e80 | 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 41 72 72 61 79 | .............<li><a.href="#Array |
| 25ea0 | 73 22 3e 41 72 72 61 79 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c | s">Arrays</a></li>.............< |
| 25ec0 | 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>...........< |
| 25ee0 | 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>............ |
| 25f00 | 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 68 65 20 6c | ...<li>Only.available.when.the.l |
| 25f20 | 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 64 65 3e 20 61 6e | engths.of.both.<code>a</code>.an |
| 25f40 | 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 65 66 3d 22 23 63 | d.<code>b</code>.are.<a.href="#c |
| 25f60 | 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 6e 3c 2f 61 3e 2e | omptime">compile-time.known</a>. |
| 25f80 | 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>......... |
| 25fa0 | 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>.......... |
| 25fc0 | 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 |
| 25fe0 | 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6d 65 6d 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | w">const</span>.mem.=.<span.clas |
| 26000 | 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>(< |
| 26020 | 73 70 61 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 |
| 26040 | 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 6d 65 6d 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | uot;</span>).mem;.<span.class="t |
| 26060 | 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 20 3d 20 5b 5f 5d | ok-kw">const</span>.array1.=.[_] |
| 26080 | 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 |
| 260a0 | 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 31 3c 2f 73 70 | >{<span.class="tok-number">1</sp |
| 260c0 | 61 6e 3e 2c 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f | an>,<span.class="tok-number">2</ |
| 260e0 | 73 70 61 6e 3e 7d 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e | span>};.<span.class="tok-kw">con |
| 26100 | 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 6e 20 63 6c 61 73 | st</span>.array2.=.[_]<span.clas |
| 26120 | 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 70 61 6e 20 63 6c | s="tok-type">u32</span>{<span.cl |
| 26140 | 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 3c 73 70 61 6e 20 | ass="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 7d 3b 0a 3c 73 | class="tok-number">4</span>};.<s |
| 26180 | 70 61 6e 20 63 6c 61 73 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>. |
| 261a0 | 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 32 3b 0a 6d 65 6d | together.=.array1.++.array2;.mem |
| 261c0 | 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 32 3c | .eql(<span.class="tok-type">u32< |
| 261e0 | 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 70 3b 5b 5f 5d 3c | /span>,.&together,.&[_]< |
| 26200 | 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> |
| 26220 | 7b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 | {<span.class="tok-number">1</spa |
| 26240 | 6e 3e 2c 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 | n>,<span.class="tok-number">2</s |
| 26260 | 70 61 6e 3e 2c 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c | pan>,<span.class="tok-number">3< |
| 26280 | 2f 73 70 61 6e 3e 2c 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e | /span>,<span.class="tok-number"> |
| 262a0 | 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 20 20 20 20 20 20 | 4</span>})</code></pre>......... |
| 262c0 | 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 |
| 262e0 | 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 74 69 70 6c 69 63 | r>...........<td>Array.Multiplic |
| 26300 | 61 74 69 6f 6e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 70 72 65 3e 3c 63 | ation</td>...........<td><pre><c |
| 26320 | 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 64 3e 0a 20 20 20 | ode>a.**.b</code></pre></td>.... |
| 26340 | 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>.... |
| 26360 | 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 41 72 72 61 79 73 22 | ...........<li><a.href="#Arrays" |
| 26380 | 3e 41 72 72 61 79 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 | >Arrays</a></li>.............</u |
| 263a0 | 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 |
| 263c0 | 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>.............. |
| 263e0 | 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 68 65 20 6c 65 6e | .<li>Only.available.when.the.len |
| 26400 | 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 3c 63 6f 64 65 3e | gth.of.<code>a</code>.and.<code> |
| 26420 | 62 3c 2f 63 6f 64 65 3e 20 61 72 65 20 3c 61 20 68 72 65 66 3d 22 23 63 6f 6d 70 74 69 6d 65 22 | b</code>.are.<a.href="#comptime" |
| 26440 | 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 6c 69 3e 0a 20 20 | >compile-time.known</a>.</li>... |
| 26460 | 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>. |
| 26480 | 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> |
| 264a0 | 3c 63 6f 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 |
| 264c0 | 3c 2f 73 70 61 6e 3e 20 6d 65 6d 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 | </span>.mem.=.<span.class="tok-b |
| 264e0 | 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 |
| 26500 | 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 |
| 26520 | 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 2d 6b 77 22 3e 63 | an>).mem;.<span.class="tok-kw">c |
| 26540 | 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 6c 61 73 | onst</span>.pattern.=.<span.clas |
| 26560 | 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 70 61 6e | s="tok-str">"ab"</span |
| 26580 | 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 3e 33 3c | >.**.<span.class="tok-number">3< |
| 265a0 | 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 73 3d 22 74 6f 6b | /span>;.mem.eql(<span.class="tok |
| 265c0 | 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 20 3c 73 70 61 6e | -type">u8</span>,.pattern,.<span |
| 265e0 | 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 62 61 62 26 71 75 | .class="tok-str">"ababab&qu |
| 26600 | 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 20 20 20 20 20 20 | ot;</span>)</code></pre>........ |
| 26620 | 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>.........< |
| 26640 | 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 44 65 72 65 66 65 | tr>...........<td>Pointer.Derefe |
| 26660 | 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 70 72 65 3e 3c 63 | rence</td>...........<td><pre><c |
| 26680 | 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 20 20 20 20 20 20 | ode>a.*</code></pre></td>....... |
| 266a0 | 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>....... |
| 266c0 | 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 50 6f 69 6e 74 65 72 73 22 3e | ........<li><a.href="#Pointers"> |
| 266e0 | 50 6f 69 6e 74 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f | Pointers</a></li>.............</ |
| 26700 | 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 |
| 26720 | 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 65 66 65 72 65 6e | d>.............Pointer.dereferen |
| 26740 | 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 20 20 20 20 3c 74 | ce............</td>...........<t |
| 26760 | 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 20 | d>.............<pre><code><span. |
| 26780 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 78 3a 20 3c | class="tok-kw">const</span>.x:.< |
| 267a0 | 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> |
| 267c0 | 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 34 | .=.<span.class="tok-number">1234 |
| 267e0 | 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f | </span>;.<span.class="tok-kw">co |
| 26800 | 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 74 72 2e 2a 20 3d | nst</span>.ptr.=.&x;.ptr.*.= |
| 26820 | 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 34 3c | =.<span.class="tok-number">1234< |
| 26840 | 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>...........</ |
| 26860 | 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>.. |
| 26880 | 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 64 3e 0a 20 20 20 | .........<td>Address.Of</td>.... |
| 268a0 | 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 3b 61 3c 2f 63 6f | .......<td><pre><code>&a</co |
| 268c0 | 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>... |
| 268e0 | 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 20 20 20 20 3c 2f | ..........All.types...........</ |
| 26900 | 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 3c 2f 74 | td>...........<td>...........</t |
| 26920 | 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 |
| 26940 | 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 |
| 26960 | 6e 73 74 3c 2f 73 70 61 6e 3e 20 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | nst</span>.x:.<span.class="tok-t |
| 26980 | 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 |
| 269a0 | 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 63 6c | ok-number">1234</span>;.<span.cl |
| 269c0 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 70 74 72 20 3d 20 | ass="tok-kw">const</span>.ptr.=. |
| 269e0 | 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 73 73 3d 22 74 6f | &x;.ptr.*.==.<span.class="to |
| 26a00 | 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 65 3e 3c 2f 70 72 | k-number">1234</span></code></pr |
| 26a20 | 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> |
| 26a40 | 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 45 72 72 6f | .........<tr>...........<td>Erro |
| 26a60 | 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 20 3c 74 64 3e 3c | r.Set.Merge</td>...........<td>< |
| 26a80 | 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 72 65 3e 3c 2f 74 | pre><code>a.||.b</code></pre></t |
| 26aa0 | 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 |
| 26ac0 | 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 45 | l>...............<li><a.href="#E |
| 26ae0 | 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 |
| 26b00 | 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>........ |
| 26b20 | 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>......... |
| 26b40 | 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 4d 65 72 67 69 6e 67 2d 45 72 72 6f 72 2d 53 65 | ......<a.href="#Merging-Error-Se |
| 26b60 | 74 73 22 3e 4d 65 72 67 69 6e 67 20 45 72 72 6f 72 20 53 65 74 73 3c 2f 61 3e 0a 20 20 20 20 20 | ts">Merging.Error.Sets</a>...... |
| 26b80 | 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>....... |
| 26ba0 | 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 |
| 26bc0 | 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 61 6e 20 63 6c 61 | k-kw">const</span>.A.=.<span.cla |
| 26be0 | 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 6e 65 7d 3b 0a 3c | ss="tok-kw">error</span>{One};.< |
| 26c00 | 73 70 61 6e 20 63 6c 61 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> |
| 26c20 | 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 65 72 72 6f 72 3c | .B.=.<span.class="tok-kw">error< |
| 26c40 | 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 73 70 61 6e 20 63 | /span>{Two};.(A.||.B).==.<span.c |
| 26c60 | 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 6e 65 2c 20 | lass="tok-kw">error</span>{One,. |
| 26c80 | 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 20 20 3c 2f 74 64 | Two}</code></pre>...........</td |
| 26ca0 | 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 79 3e | >.........</tr>.........</tbody> |
| 26cc0 | 0a 20 20 20 20 20 20 3c 2f 74 61 62 6c 65 3e 0a 20 20 20 20 20 20 3c 2f 64 69 76 3e 0a 20 20 20 | .......</table>.......</div>.... |
| 26ce0 | 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 63 65 22 3e 3c 61 | ..........<h3.id="Precedence"><a |
| 26d00 | 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 65 63 65 64 65 6e | .href="#toc-Precedence">Preceden |
| 26d20 | 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 50 72 65 | ce</a>.<a.class="hdr".href="#Pre |
| 26d40 | 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 20 20 3c 70 72 65 | cedence">..</a></h3>........<pre |
| 26d60 | 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 0a 61 21 62 0a 78 | ><code>x().x[].x.y.x.*.x.?.a!b.x |
| 26d80 | 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 2a 20 2f 20 25 20 | {}.!x.-x.-%x.~x.&x.?x.*./.%. |
| 26da0 | 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 7c 20 2d 7c 0a 26 | **.*%.*|.||.+.-.++.+%.-%.+|.-|.& |
| 26dc0 | 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 0a 26 61 6d 70 3b | lt;<.>>.<<|.& |
| 26de0 | 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 6f 72 65 6c 73 65 | .^.|.<span.class="tok-kw">orelse |
| 26e00 | 3c 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 61 74 | </span>.<span.class="tok-kw">cat |
| 26e20 | 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 26 6c 74 3b 3d 20 | ch</span>.==.!=.<.>.<=. |
| 26e40 | 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 3e 61 6e 64 3c 2f | >=.<span.class="tok-kw">and</ |
| 26e60 | 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 6f 72 3c 2f 73 | span>.<span.class="tok-kw">or</s |
| 26e80 | 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 20 2b 25 3d 20 2b | pan>.=.*=.*%=.*|=./=.%=.+=.+%=.+ |
| 26ea0 | 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 74 3b 26 6c 74 3b | |=.-=.-%=.-|=.<<=.<< |
| 26ec0 | 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 2f 63 6f 64 65 3e | |=.>>=.&=.^=.|=</code> |
| 26ee0 | 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 | </pre>.....................<h2.i |
| 26f00 | 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 72 72 61 79 73 22 | d="Arrays"><a.href="#toc-Arrays" |
| 26f20 | 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 20 68 72 65 66 3d | >Arrays</a>.<a.class="hdr".href= |
| 26f40 | 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 20 20 20 3c 66 69 | "#Arrays">..</a></h2>........<fi |
| 26f60 | 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" |
| 26f80 | 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 72 72 61 79 73 2e | ><cite.class="file">test_arrays. |
| 26fa0 | 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 |
| 26fc0 | 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 |
| 26fe0 | 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 |
| 27000 | 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 |
| 27020 | 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 |
| 27040 | 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 3d | n>).testing.expect;.<span.class= |
| 27060 | 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 73 73 65 72 74 20 3d 20 3c | "tok-kw">const</span>.assert.=.< |
| 27080 | 73 70 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 |
| 270a0 | 3c 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 |
| 270c0 | 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 64 65 62 75 67 2e 61 73 73 65 | uot;std"</span>).debug.asse |
| 270e0 | 72 74 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f | rt;.<span.class="tok-kw">const</ |
| 27100 | 73 70 61 6e 3e 20 6d 65 6d 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 | span>.mem.=.<span.class="tok-bui |
| 27120 | 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 |
| 27140 | 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 |
| 27160 | 3e 29 2e 6d 65 6d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e | >).mem;..<span.class="tok-commen |
| 27180 | 74 22 3e 2f 2f 20 61 72 72 61 79 20 6c 69 74 65 72 61 6c 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e | t">//.array.literal</span>.<span |
| 271a0 | 20 63 6c 61 73 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 73 | .class="tok-kw">const</span>.mes |
| 271c0 | 73 61 67 65 20 3d 20 5b 5f 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 | sage.=.[_]<span.class="tok-type" |
| 271e0 | 3e 75 38 3c 2f 73 70 61 6e 3e 7b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 | >u8</span>{.<span.class="tok-str |
| 27200 | 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 |
| 27220 | 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 |
| 27240 | 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 |
| 27260 | 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= |
| 27280 | 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 |
| 272a0 | 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 61 74 69 76 | lass="tok-comment">//.alternativ |
| 272c0 | 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 74 20 6c 6f | e.initialization.using.result.lo |
| 272e0 | 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 22 74 6f 6b 2d 6b | cation</span>.<span.class="tok-k |
| 27300 | 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 65 3a 20 5b 3c 73 | w">const</span>.alt_message:.[<s |
| 27320 | 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>] |
| 27340 | 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> |
| 27360 | 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 22 3e 27 68 27 3c | .=..{.<span.class="tok-str">'h'< |
| 27380 | 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 65 | /span>,.<span.class="tok-str">'e |
| 273a0 | 27 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e | '</span>,.<span.class="tok-str"> |
| 273c0 | 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 72 | 'l'</span>,.<span.class="tok-str |
| 273e0 | 22 3e 27 6c 27 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 | ">'l'</span>,.<span.class="tok-s |
| 27400 | 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 6c 61 73 73 3d 22 | tr">'o'</span>.};..<span.class=" |
| 27420 | 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 61 73 | tok-kw">comptime</span>.{.....as |
| 27440 | 73 65 72 74 28 6d 65 6d 2e 65 71 6c 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | sert(mem.eql(<span.class="tok-ty |
| 27460 | 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 65 2c 20 26 61 6d | pe">u8</span>,.&message,.&am |
| 27480 | 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 63 6c 61 73 73 3d | p;alt_message));.}..<span.class= |
| 274a0 | 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 69 7a 65 20 6f 66 | "tok-comment">//.get.the.size.of |
| 274c0 | 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 74 6f | .an.array</span>.<span.class="to |
| 274e0 | 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 61 73 73 65 | k-kw">comptime</span>.{.....asse |
| 27500 | 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 61 73 73 3d 22 74 | rt(message.len.==.<span.class="t |
| 27520 | 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 |
| 27540 | 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 72 69 6e 67 20 6c | lass="tok-comment">//.A.string.l |
| 27560 | 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 69 6e 74 65 72 20 | iteral.is.a.single-item.pointer. |
| 27580 | 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 63 6c 61 73 73 3d | to.an.array.</span>.<span.class= |
| 275a0 | 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 5f 6d 65 73 73 61 | "tok-kw">const</span>.same_messa |
| 275c0 | 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 3e 26 71 75 6f 74 | ge.=.<span.class="tok-str">" |
| 275e0 | 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 6e 20 63 6c 61 73 | ;hello"</span>;..<span.clas |
| 27600 | 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>.{.... |
| 27620 | 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 74 6f 6b | .assert(mem.eql(<span.class="tok |
| 27640 | 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 65 2c 20 | -type">u8</span>,.&message,. |
| 27660 | 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 6c 61 73 73 3d 22 | same_message));.}..<span.class=" |
| 27680 | 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= |
| 276a0 | 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 65 72 20 61 6e 20 | "tok-str">"iterate.over.an. |
| 276c0 | 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 20 63 | array"</span>.{.....<span.c |
| 276e0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 73 75 6d 3a 20 3c 73 | lass="tok-kw">var</span>.sum:.<s |
| 27700 | 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 |
| 27720 | 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</ |
| 27740 | 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"> |
| 27760 | 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 7c 20 7b 0a 20 20 | for</span>.(message).|byte|.{... |
| 27780 | 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 20 20 20 3c 73 70 | ......sum.+=.byte;.....}.....<sp |
| 277a0 | 61 6e 20 63 6c 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 |
| 277c0 | 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 73 74 72 22 | ect(sum.==.<span.class="tok-str" |
| 277e0 | 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 22 74 6f 6b 2d 73 | >'h'</span>.+.<span.class="tok-s |
| 27800 | 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 73 73 3d 22 74 6f | tr">'e'</span>.+.<span.class="to |
| 27820 | 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 63 6c 61 73 73 3d | k-str">'l'</span>.*.<span.class= |
| 27840 | 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 70 61 6e 20 63 6c | "tok-number">2</span>.+.<span.cl |
| 27860 | 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 7d 0a 0a 3c 73 | ass="tok-str">'o'</span>);.}..<s |
| 27880 | 70 61 6e 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 6f 64 69 66 | pan.class="tok-comment">//.modif |
| 278a0 | 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 6c 61 73 73 3d 22 | iable.array</span>.<span.class=" |
| 278c0 | 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 74 65 67 65 72 73 | tok-kw">var</span>.some_integers |
| 278e0 | 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 30 30 3c | :.[<span.class="tok-number">100< |
| 27900 | 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 69 33 | /span>]<span.class="tok-type">i3 |
| 27920 | 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c | 2</span>.=.<span.class="tok-null |
| 27940 | 22 3e 75 6e 64 65 66 69 6e 65 64 3c 2f 73 70 61 6e 3e 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | ">undefined</span>;..<span.class |
| 27960 | 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 |
| 27980 | 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 6e 20 61 72 72 61 | s="tok-str">"modify.an.arra |
| 279a0 | 79 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | y"</span>.{.....<span.class |
| 279c0 | 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 3b 73 6f 6d 65 5f | ="tok-kw">for</span>.(&some_ |
| 279e0 | 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 2d 6e 75 6d 62 65 | integers,.<span.class="tok-numbe |
| 27a00 | 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 7b 0a 20 20 20 20 | r">0</span>..).|*item,.i|.{..... |
| 27a20 | 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 74 6f 6b 2d 62 75 | ....item.*.=.<span.class="tok-bu |
| 27a40 | 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 0a 20 20 20 20 7d | iltin">@intCast</span>(i);.....} |
| 27a60 | 0a 20 20 20 20 3c 73 70 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 |
| 27a80 | 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 3c 73 70 61 6e 20 | pan>.expect(some_integers[<span. |
| 27aa0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 3c 2f 73 70 61 6e 3e 5d 20 3d 3d | class="tok-number">10</span>].== |
| 27ac0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 3c 2f 73 70 | .<span.class="tok-number">10</sp |
| 27ae0 | 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 |
| 27b00 | 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 3c | ry</span>.expect(some_integers[< |
| 27b20 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 39 39 3c 2f 73 70 61 6e | span.class="tok-number">99</span |
| 27b40 | 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 39 | >].==.<span.class="tok-number">9 |
| 27b60 | 39 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 | 9</span>);.}..<span.class="tok-c |
| 27b80 | 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 74 69 6f 6e 20 77 | omment">//.array.concatenation.w |
| 27ba0 | 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 77 6e 3c 2f 73 70 | orks.if.the.values.are.known</sp |
| 27bc0 | 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">// |
| 27be0 | 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 70 61 6e 20 63 6c | .at.compile.time</span>.<span.cl |
| 27c00 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 70 61 72 74 5f 6f | ass="tok-kw">const</span>.part_o |
| 27c20 | 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 79 70 65 22 3e 69 | ne.=.[_]<span.class="tok-type">i |
| 27c40 | 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 |
| 27c60 | 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 |
| 27c80 | 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 |
| 27ca0 | 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= |
| 27cc0 | 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 73 70 61 6e 20 63 | "tok-number">4</span>.};.<span.c |
| 27ce0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 70 61 72 74 5f | lass="tok-kw">const</span>.part_ |
| 27d00 | 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 74 79 70 65 22 3e | two.=.[_]<span.class="tok-type"> |
| 27d20 | 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 6d | i32</span>{.<span.class="tok-num |
| 27d40 | 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- |
| 27d60 | 6e 75 6d 62 65 72 22 3e 36 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | number">6</span>,.<span.class="t |
| 27d80 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 37 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ok-number">7</span>,.<span.class |
| 27da0 | 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 3c 73 70 61 6e 20 | ="tok-number">8</span>.};.<span. |
| 27dc0 | 63 6c 61 73 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 5f | class="tok-kw">const</span>.all_ |
| 27de0 | 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 77 6f 3b 0a 3c 73 | of_it.=.part_one.++.part_two;.<s |
| 27e00 | 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 |
| 27e20 | 6e 3e 20 7b 0a 20 20 20 20 61 73 73 65 72 74 28 6d 65 6d 2e 65 71 6c 28 3c 73 70 61 6e 20 63 6c | n>.{.....assert(mem.eql(<span.cl |
| 27e40 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 2c 20 26 61 6d 70 3b | ass="tok-type">i32</span>,.& |
| 27e60 | 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 6c 61 73 73 3d 22 | all_of_it,.&[_]<span.class=" |
| 27e80 | 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 7b 20 3c 73 70 61 6e 20 63 6c 61 73 | tok-type">i32</span>{.<span.clas |
| 27ea0 | 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 |
| 27ec0 | 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 |
| 27ee0 | 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>,.< |
| 27f00 | 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> |
| 27f20 | 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 |
| 27f40 | 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< |
| 27f60 | 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" |
| 27f80 | 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 |
| 27fa0 | 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 20 63 6c 61 73 73 | er">8</span>.}));.}..<span.class |
| 27fc0 | 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 20 74 68 61 74 20 | ="tok-comment">//.remember.that. |
| 27fe0 | 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 3c 2f 73 70 61 6e | string.literals.are.arrays</span |
| 28000 | 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 | >.<span.class="tok-kw">const</sp |
| 28020 | 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 6f 6b 2d 73 74 72 | an>.hello.=.<span.class="tok-str |
| 28040 | 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 3c 73 70 61 | ">"hello"</span>;.<spa |
| 28060 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 77 6f | n.class="tok-kw">const</span>.wo |
| 28080 | 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 22 3e 26 71 75 6f | rld.=.<span.class="tok-str">&quo |
| 280a0 | 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 6e 20 63 6c 61 73 | t;world"</span>;.<span.clas |
| 280c0 | 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 5f 77 6f | s="tok-kw">const</span>.hello_wo |
| 280e0 | 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 3d 22 74 6f 6b 2d | rld.=.hello.++.<span.class="tok- |
| 28100 | 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 2b 2b 20 77 6f 72 | str">"."</span>.++.wor |
| 28120 | 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 6f 6d 70 74 69 6d | ld;.<span.class="tok-kw">comptim |
| 28140 | 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 |
| 28160 | 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>,. |
| 28180 | 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 74 6f 6b 2d 73 74 | hello_world,.<span.class="tok-st |
| 281a0 | 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 3c 2f 73 70 61 6e | r">"hello.world"</span |
| 281c0 | 3e 29 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 | >));.}..<span.class="tok-comment |
| 281e0 | 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 74 65 72 6e 73 3c | ">//.**.does.repeating.patterns< |
| 28200 | 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 |
| 28220 | 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 6c 61 73 73 3d 22 | t</span>.pattern.=.<span.class=" |
| 28240 | 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 70 61 6e 3e 20 2a | tok-str">"ab"</span>.* |
| 28260 | 2a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 | *.<span.class="tok-number">3</sp |
| 28280 | 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 6d 70 74 69 | an>;.<span.class="tok-kw">compti |
| 282a0 | 6d 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 61 73 73 65 72 74 28 6d 65 6d 2e 65 71 6c 28 3c | me</span>.{.....assert(mem.eql(< |
| 282c0 | 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>, |
| 282e0 | 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 2d 73 74 72 22 3e | .pattern,.<span.class="tok-str"> |
| 28300 | 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 29 3b 0a 7d 0a 0a | "ababab"</span>));.}.. |
| 28320 | 3c 73 70 61 6e 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 69 | <span.class="tok-comment">//.ini |
| 28340 | 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 73 70 61 6e 3e 0a | tialize.an.array.to.zero</span>. |
| 28360 | 3c 73 70 61 6e 20 63 6c 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 |
| 28380 | 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 73 3d 22 74 6f 6b | >.all_zero.=.[_]<span.class="tok |
| 283a0 | 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 61 73 73 3d 22 74 | -type">u16</span>{<span.class="t |
| 283c0 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 7d 20 2a 2a 20 3c 73 70 61 6e 20 63 6c | ok-number">0</span>}.**.<span.cl |
| 283e0 | 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 0a 3c 73 70 | ass="tok-number">10</span>;..<sp |
| 28400 | 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 |
| 28420 | 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 6e 20 3d 3d 20 3c | >.{.....assert(all_zero.len.==.< |
| 28440 | 73 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 |
| 28460 | 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 70 61 6e 20 63 6c | >);.....assert(all_zero[<span.cl |
| 28480 | 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 20 3d 3d 20 3c 73 | ass="tok-number">5</span>].==.<s |
| 284a0 | 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>) |
| 284c0 | 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">/ |
| 284e0 | 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 20 69 6e 69 74 69 | /.use.compile-time.code.to.initi |
| 28500 | 61 6c 69 7a 65 20 61 6e 20 61 72 72 61 79 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 | alize.an.array</span>.<span.clas |
| 28520 | 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 79 5f 61 72 72 61 | s="tok-kw">var</span>.fancy_arra |
| 28540 | 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 73 3d 22 74 6f 6b | y.=.init:.{.....<span.class="tok |
| 28560 | 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 6c 75 65 3a 20 5b | -kw">var</span>.initial_value:.[ |
| 28580 | 3c 73 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 |
| 285a0 | 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 6b 2d 6e 75 6c 6c | n>]Point.=.<span.class="tok-null |
| 285c0 | 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 6e 20 63 6c | ">undefined</span>;.....<span.cl |
| 285e0 | 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 3b 69 6e | ass="tok-kw">for</span>.(&in |
| 28600 | 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 74 6f 6b 2d 6e 75 | itial_value,.<span.class="tok-nu |
| 28620 | 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 20 7b 0a 20 20 20 | mber">0</span>..).|*pt,.i|.{.... |
| 28640 | 20 20 20 20 20 70 74 2e 2a 20 3d 20 50 6f 69 6e 74 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 2e | .....pt.*.=.Point{.............. |
| 28660 | 78 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 | x.=.<span.class="tok-builtin">@i |
| 28680 | 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 20 20 20 20 2e 79 | ntCast</span>(i),..............y |
| 286a0 | 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6e | .=.<span.class="tok-builtin">@in |
| 286c0 | 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 73 73 3d 22 74 6f | tCast</span>(i.*.<span.class="to |
| 286e0 | 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 20 20 20 7d 3b 0a | k-number">2</span>),.........};. |
| 28700 | 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 62 | ....}.....<span.class="tok-kw">b |
| 28720 | 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 76 61 6c 75 65 3b | reak</span>.:init.initial_value; |
| 28740 | 0a 7d 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f | .};.<span.class="tok-kw">const</ |
| 28760 | 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 |
| 28780 | 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. |
| 287a0 | 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>,.... |
| 287c0 | 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</ |
| 287e0 | 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"> |
| 28800 | 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 |
| 28820 | 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 20 69 6e 69 74 69 | ">"compile-time.array.initi |
| 28840 | 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 20 20 20 3c 73 70 | alization"</span>.{.....<sp |
| 28860 | 61 6e 20 63 6c 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 |
| 28880 | 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 73 3d 22 74 6f 6b | ect(fancy_array[<span.class="tok |
| 288a0 | 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 70 61 6e 20 63 6c | -number">4</span>].x.==.<span.cl |
| 288c0 | 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>);..... |
| 288e0 | 3c 73 70 61 6e 20 63 6c 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>. |
| 28900 | 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 73 3d 22 | expect(fancy_array[<span.class=" |
| 28920 | 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 20 3c 73 70 61 6e | tok-number">4</span>].y.==.<span |
| 28940 | 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 29 3b 0a 7d | .class="tok-number">8</span>);.} |
| 28960 | 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 63 | ..<span.class="tok-comment">//.c |
| 28980 | 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 7a 65 20 61 6e 20 | all.a.function.to.initialize.an. |
| 289a0 | 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 74 6f 6b 2d 6b 77 | array</span>.<span.class="tok-kw |
| 289c0 | 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 20 5b 5f 5d 50 6f | ">var</span>.more_points.=.[_]Po |
| 289e0 | 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 22 74 6f 6b 2d 6e | int{makePoint(<span.class="tok-n |
| 28a00 | 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 20 63 6c 61 73 73 | umber">3</span>)}.**.<span.class |
| 28a20 | 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 73 70 61 6e 20 63 | ="tok-number">10</span>;.<span.c |
| 28a40 | 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 |
| 28a60 | 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 61 6e 3e 28 78 3a | ass="tok-fn">makePoint</span>(x: |
| 28a80 | 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 |
| 28aa0 | 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 73 3d 22 74 6f 6b | n>).Point.{.....<span.class="tok |
| 28ac0 | 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 20 20 20 20 20 20 | -kw">return</span>.Point{....... |
| 28ae0 | 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 20 3c 73 70 61 6e | ...x.=.x,..........y.=.x.*.<span |
| 28b00 | 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 0a 20 20 | .class="tok-number">2</span>,... |
| 28b20 | 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 22 3e 74 65 73 74 | ..};.}.<span.class="tok-kw">test |
| 28b40 | 3c 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 |
| 28b60 | 75 6f 74 3b 61 72 72 61 79 20 69 6e 69 74 69 61 6c 69 7a 61 74 69 6f 6e 20 77 69 74 68 20 66 75 | uot;array.initialization.with.fu |
| 28b80 | 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 7b 0a 20 20 20 20 | nction.calls"</span>.{..... |
| 28ba0 | 3c 73 70 61 6e 20 63 6c 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>. |
| 28bc0 | 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 6c 61 73 73 3d 22 | expect(more_points[<span.class=" |
| 28be0 | 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 70 61 6e | tok-number">4</span>].x.==.<span |
| 28c00 | 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 20 | .class="tok-number">3</span>);.. |
| 28c20 | 20 20 20 3c 73 70 61 6e 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 |
| 28c40 | 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 6c 61 73 | n>.expect(more_points[<span.clas |
| 28c60 | 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 20 3c 73 | s="tok-number">4</span>].y.==.<s |
| 28c80 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 36 3c 2f 73 70 61 6e 3e 29 | pan.class="tok-number">6</span>) |
| 28ca0 | 3b 0a 20 20 20 20 3c 73 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</ |
| 28cc0 | 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 65 6e 20 3d 3d 20 | span>.expect(more_points.len.==. |
| 28ce0 | 3c 73 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 |
| 28d00 | 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 |
| 28d20 | 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 |
| 28d40 | 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>$ |
| 28d60 | 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 2e 7a 69 67 3c 2f | .<kbd>zig.test.test_arrays.zig</ |
| 28d80 | 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 69 74 65 72 61 74 | kbd>.1/4.test_arrays.test.iterat |
| 28da0 | 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 65 73 74 5f 61 72 | e.over.an.array...OK.2/4.test_ar |
| 28dc0 | 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 2e 2e 4f 4b 0a 33 | rays.test.modify.an.array...OK.3 |
| 28de0 | 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 65 2d 74 69 6d 65 | /4.test_arrays.test.compile-time |
| 28e00 | 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 0a 34 2f 34 20 74 | .array.initialization...OK.4/4.t |
| 28e20 | 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 69 61 6c 69 7a 61 | est_arrays.test.array.initializa |
| 28e40 | 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 2e 4f 4b 0a 41 6c | tion.with.function.calls...OK.Al |
| 28e60 | 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 2f 70 72 65 3e 3c | l.4.tests.passed..</samp></pre>< |
| 28e80 | 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> |
| 28ea0 | 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 72 3c 2f 61 3e 3c | <ul>.<li><a.href="#for">for</a>< |
| 28ec0 | 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 3e 53 6c 69 63 65 | /li>.<li><a.href="#Slices">Slice |
| 28ee0 | 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 69 64 3d | s</a></li>.</ul>.........<h3.id= |
| 28f00 | 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 3c 61 20 68 72 65 | "Multidimensional-Arrays"><a.hre |
| 28f20 | 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 72 72 61 79 73 22 | f="#toc-Multidimensional-Arrays" |
| 28f40 | 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 61 3e 20 3c 61 20 | >Multidimensional.Arrays</a>.<a. |
| 28f60 | 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 6d 65 6e 73 69 6f | class="hdr".href="#Multidimensio |
| 28f80 | 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 20 20 20 20 20 3c | nal-Arrays">..</a></h3>........< |
| 28fa0 | 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 61 72 72 61 79 73 | p>.......Multidimensional.arrays |
| 28fc0 | 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 20 61 72 72 61 79 | .can.be.created.by.nesting.array |
| 28fe0 | 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 |
| 29000 | 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 |
| 29020 | 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 73 69 6f 6e 61 6c | ass="file">test_multidimensional |
| 29040 | 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 74 69 6f 6e 3e 3c | _arrays.zig</cite></figcaption>< |
| 29060 | 70 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 |
| 29080 | 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 |
| 290a0 | 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 |
| 290c0 | 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" |
| 290e0 | 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 |
| 29100 | 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 |
| 29120 | 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 |
| 29140 | 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 45 71 75 61 6c 20 3d 20 73 74 64 2e 74 65 73 | nst</span>.expectEqual.=.std.tes |
| 29160 | 74 69 6e 67 2e 65 78 70 65 63 74 45 71 75 61 6c 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ting.expectEqual;..<span.class=" |
| 29180 | 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6d 61 74 34 78 35 20 3d 20 5b 3c | tok-kw">const</span>.mat4x5.=.[< |
| 291a0 | 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> |
| 291c0 | 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 35 3c 2f 73 70 | ][<span.class="tok-number">5</sp |
| 291e0 | 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</ |
| 29200 | 73 70 61 6e 3e 7b 0a 20 20 20 20 5b 5f 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | span>{.....[_]<span.class="tok-t |
| 29220 | 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 7b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ype">f32</span>{.<span.class="to |
| 29240 | 6b 2d 6e 75 6d 62 65 72 22 3e 31 2e 30 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 | k-number">1.0</span>,.<span.clas |
| 29260 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 2e 30 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e | s="tok-number">0.0</span>,.<span |
| 29280 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 2e 30 3c 2f 73 70 61 6e 3e 2c 20 | .class="tok-number">0.0</span>,. |
| 292a0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 2e 30 3c 2f 73 70 | <span.class="tok-number">0.0</sp |
| 292c0 | 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 2e | an>,.<span.class="tok-number">0. |
| 292e0 | 30 3c 2f 73 70 61 6e 3e 20 7d 2c 0a 20 20 20 20 5b 5f 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | 0</span>.},.....[_]<span.class=" |
| 29300 | 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 |
| 29320 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 2e 30 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e | s="tok-number">0.0</span>,.<span |
| 29340 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 2e 30 3c 2f 73 70 61 6e 3e 2c 20 | .class="tok-number">1.0</span>,. |
| 29360 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 2e 30 3c 2f 73 70 | <span.class="tok-number">0.0</sp |
| 29380 | 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 2e | an>,.<span.class="tok-number">1. |
| 293a0 | 30 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | 0</span>,.<span.class="tok-numbe |
| 293c0 | 72 22 3e 30 2e 30 3c 2f 73 70 61 6e 3e 20 7d 2c 0a 20 20 20 20 5b 5f 5d 3c 73 70 61 6e 20 63 6c | r">0.0</span>.},.....[_]<span.cl |
| 293e0 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 7b 20 3c 73 70 61 6e | ass="tok-type">f32</span>{.<span |
| 29400 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 2e 30 3c 2f 73 70 61 6e 3e 2c 20 | .class="tok-number">0.0</span>,. |
| 29420 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 2e 30 3c 2f 73 70 | <span.class="tok-number">0.0</sp |
| 29440 | 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 2e | an>,.<span.class="tok-number">1. |
| 29460 | 30 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | 0</span>,.<span.class="tok-numbe |
| 29480 | 72 22 3e 30 2e 30 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | r">0.0</span>,.<span.class="tok- |
| 294a0 | 6e 75 6d 62 65 72 22 3e 30 2e 30 3c 2f 73 70 61 6e 3e 20 7d 2c 0a 20 20 20 20 5b 5f 5d 3c 73 70 | number">0.0</span>.},.....[_]<sp |
| 294c0 | 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>{. |
| 294e0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 2e 30 3c 2f 73 70 | <span.class="tok-number">0.0</sp |
| 29500 | 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 2e | an>,.<span.class="tok-number">0. |
| 29520 | 30 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | 0</span>,.<span.class="tok-numbe |
| 29540 | 72 22 3e 30 2e 30 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | r">0.0</span>,.<span.class="tok- |
| 29560 | 6e 75 6d 62 65 72 22 3e 31 2e 30 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | number">1.0</span>,.<span.class= |
| 29580 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 39 2e 39 3c 2f 73 70 61 6e 3e 20 7d 2c 0a 7d 3b 0a 3c 73 | "tok-number">9.9</span>.},.};.<s |
| 295a0 | 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>.< |
| 295c0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 6d 75 6c 74 69 | span.class="tok-str">"multi |
| 295e0 | 64 69 6d 65 6e 73 69 6f 6e 61 6c 20 61 72 72 61 79 73 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 | dimensional.arrays"</span>. |
| 29600 | 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"> |
| 29620 | 2f 2f 20 6d 61 74 34 78 35 20 69 74 73 65 6c 66 20 69 73 20 61 20 6f 6e 65 2d 64 69 6d 65 6e 73 | //.mat4x5.itself.is.a.one-dimens |
| 29640 | 69 6f 6e 61 6c 20 61 72 72 61 79 20 6f 66 20 61 72 72 61 79 73 2e 3c 2f 73 70 61 6e 3e 0a 20 20 | ional.array.of.arrays.</span>... |
| 29660 | 20 20 3c 73 70 61 6e 20 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 |
| 29680 | 3e 20 65 78 70 65 63 74 45 71 75 61 6c 28 6d 61 74 34 78 35 5b 3c 73 70 61 6e 20 63 6c 61 73 73 | >.expectEqual(mat4x5[<span.class |
| 296a0 | 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 5b 5f 5d 3c 73 70 61 | ="tok-number">1</span>],.[_]<spa |
| 296c0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 7b 20 3c | n.class="tok-type">f32</span>{.< |
| 296e0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 2e 30 3c 2f 73 70 61 | span.class="tok-number">0.0</spa |
| 29700 | 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 2e 30 | n>,.<span.class="tok-number">1.0 |
| 29720 | 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 |
| 29740 | 22 3e 30 2e 30 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | ">0.0</span>,.<span.class="tok-n |
| 29760 | 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=" |
| 29780 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 2e 30 3c 2f 73 70 61 6e 3e 20 7d 29 3b 0a 0a 20 20 20 20 | tok-number">0.0</span>.});...... |
| 297a0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 41 63 63 | <span.class="tok-comment">//.Acc |
| 297c0 | 65 73 73 20 74 68 65 20 32 44 20 61 72 72 61 79 20 62 79 20 69 6e 64 65 78 69 6e 67 20 74 68 65 | ess.the.2D.array.by.indexing.the |
| 297e0 | 20 6f 75 74 65 72 20 61 72 72 61 79 2c 20 61 6e 64 20 74 68 65 6e 20 74 68 65 20 69 6e 6e 65 72 | .outer.array,.and.then.the.inner |
| 29800 | 20 61 72 72 61 79 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 | .array.</span>.....<span.class=" |
| 29820 | 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 74 34 78 35 | tok-kw">try</span>.expect(mat4x5 |
| 29840 | 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 2f 73 70 61 | [<span.class="tok-number">3</spa |
| 29860 | 6e 3e 5d 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f | n>][<span.class="tok-number">4</ |
| 29880 | 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 |
| 298a0 | 72 22 3e 39 2e 39 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 | r">9.9</span>);......<span.class |
| 298c0 | 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 69 74 65 72 61 74 | ="tok-comment">//.Here.we.iterat |
| 298e0 | 65 20 77 69 74 68 20 66 6f 72 20 6c 6f 6f 70 73 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 | e.with.for.loops.</span>.....<sp |
| 29900 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6f 72 3c 2f 73 70 61 6e 3e 20 28 6d 61 | an.class="tok-kw">for</span>.(ma |
| 29920 | 74 34 78 35 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 | t4x5,.<span.class="tok-number">0 |
| 29940 | 3c 2f 73 70 61 6e 3e 2e 2e 29 20 7c 72 6f 77 2c 20 72 6f 77 5f 69 6e 64 65 78 7c 20 7b 0a 20 20 | </span>..).|row,.row_index|.{... |
| 29960 | 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</ |
| 29980 | 73 70 61 6e 3e 20 28 72 6f 77 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | span>.(row,.<span.class="tok-num |
| 299a0 | 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 2e 2e 29 20 7c 63 65 6c 6c 2c 20 63 6f 6c 75 6d 6e 5f 69 | ber">0</span>..).|cell,.column_i |
| 299c0 | 6e 64 65 78 7c 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ndex|.{.............<span.class= |
| 299e0 | 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 72 6f 77 5f 69 6e 64 65 78 20 3d 3d | "tok-kw">if</span>.(row_index.== |
| 29a00 | 20 63 6f 6c 75 6d 6e 5f 69 6e 64 65 78 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | .column_index).{................ |
| 29a20 | 20 3c 73 70 61 6e 20 63 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> |
| 29a40 | 20 65 78 70 65 63 74 28 63 65 6c 6c 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | .expect(cell.==.<span.class="tok |
| 29a60 | 2d 6e 75 6d 62 65 72 22 3e 31 2e 30 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 20 20 20 20 20 20 | -number">1.0</span>);........... |
| 29a80 | 20 20 7d 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 | ..}.........}.....}......<span.c |
| 29aa0 | 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 49 6e 69 74 69 61 6c 69 7a 65 | lass="tok-comment">//.Initialize |
| 29ac0 | 20 61 20 6d 75 6c 74 69 64 69 6d 65 6e 73 69 6f 6e 61 6c 20 61 72 72 61 79 20 74 6f 20 7a 65 72 | .a.multidimensional.array.to.zer |
| 29ae0 | 6f 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 | os.</span>.....<span.class="tok- |
| 29b00 | 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 6c 6c 5f 7a 65 72 6f 3a 20 5b 3c 73 70 61 | kw">const</span>.all_zero:.[<spa |
| 29b20 | 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>][< |
| 29b40 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e | span.class="tok-number">5</span> |
| 29b60 | 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 |
| 29b80 | 6e 3e 20 3d 20 2e 7b 2e 7b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | n>.=..{.{<span.class="tok-number |
| 29ba0 | 22 3e 30 3c 2f 73 70 61 6e 3e 7d 20 2a 2a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ">0</span>}.**.<span.class="tok- |
| 29bc0 | 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 7d 20 2a 2a 20 3c 73 70 61 6e 20 63 6c 61 73 73 | number">5</span>}.**.<span.class |
| 29be0 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 | ="tok-number">4</span>;.....<spa |
| 29c00 | 6e 20 63 6c 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 |
| 29c20 | 63 74 28 61 6c 6c 5f 7a 65 72 6f 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | ct(all_zero[<span.class="tok-num |
| 29c40 | 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 5d 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ber">0</span>][<span.class="tok- |
| 29c60 | 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 |
| 29c80 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 | ="tok-number">0</span>);.}</code |
| 29ca0 | 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 |
| 29cc0 | 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 |
| 29ce0 | 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 |
| 29d00 | 73 74 20 74 65 73 74 5f 6d 75 6c 74 69 64 69 6d 65 6e 73 69 6f 6e 61 6c 5f 61 72 72 61 79 73 2e | st.test_multidimensional_arrays. |
| 29d20 | 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 6d 75 6c 74 69 64 69 6d 65 6e 73 69 6f | zig</kbd>.1/1.test_multidimensio |
| 29d40 | 6e 61 6c 5f 61 72 72 61 79 73 2e 74 65 73 74 2e 6d 75 6c 74 69 64 69 6d 65 6e 73 69 6f 6e 61 6c | nal_arrays.test.multidimensional |
| 29d60 | 20 61 72 72 61 79 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 | .arrays...OK.All.1.tests.passed. |
| 29d80 | 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>......... |
| 29da0 | 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 53 65 6e 74 69 6e 65 6c 2d 54 65 72 6d 69 6e 61 74 | .......<h3.id="Sentinel-Terminat |
| 29dc0 | 65 64 2d 41 72 72 61 79 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 53 65 6e 74 69 6e 65 | ed-Arrays"><a.href="#toc-Sentine |
| 29de0 | 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 54 65 | l-Terminated-Arrays">Sentinel-Te |
| 29e00 | 72 6d 69 6e 61 74 65 64 20 41 72 72 61 79 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 | rminated.Arrays</a>.<a.class="hd |
| 29e20 | 72 22 20 68 72 65 66 3d 22 23 53 65 6e 74 69 6e 65 6c 2d 54 65 72 6d 69 6e 61 74 65 64 2d 41 72 | r".href="#Sentinel-Terminated-Ar |
| 29e40 | 72 61 79 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 | rays">..</a></h3>........<p>.... |
| 29e60 | 20 20 20 54 68 65 20 73 79 6e 74 61 78 20 3c 63 6f 64 65 3e 5b 4e 3a 78 5d 54 3c 2f 63 6f 64 65 | ...The.syntax.<code>[N:x]T</code |
| 29e80 | 3e 20 64 65 73 63 72 69 62 65 73 20 61 6e 20 61 72 72 61 79 20 77 68 69 63 68 20 68 61 73 20 61 | >.describes.an.array.which.has.a |
| 29ea0 | 20 73 65 6e 74 69 6e 65 6c 20 65 6c 65 6d 65 6e 74 20 6f 66 20 76 61 6c 75 65 20 3c 63 6f 64 65 | .sentinel.element.of.value.<code |
| 29ec0 | 3e 78 3c 2f 63 6f 64 65 3e 20 61 74 20 74 68 65 0a 20 20 20 20 20 20 69 6e 64 65 78 20 63 6f 72 | >x</code>.at.the.......index.cor |
| 29ee0 | 72 65 73 70 6f 6e 64 69 6e 67 20 74 6f 20 74 68 65 20 6c 65 6e 67 74 68 20 3c 63 6f 64 65 3e 4e | responding.to.the.length.<code>N |
| 29f00 | 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 | </code>........</p>.......<figur |
| 29f20 | 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 |
| 29f40 | 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 69 | ite.class="file">test_null_termi |
| 29f60 | 6e 61 74 65 64 5f 61 72 72 61 79 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 | nated_array.zig</cite></figcapti |
| 29f80 | 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 |
| 29fa0 | 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 |
| 29fc0 | 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>(< |
| 29fe0 | 73 70 61 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 |
| 2a000 | 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 |
| 2a020 | 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 |
| 2a040 | 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 |
| 2a060 | 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- |
| 2a080 | 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 65 6e 74 69 6e 65 6c | str">"0-terminated.sentinel |
| 2a0a0 | 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 20 | .array"</span>.{.....<span. |
| 2a0c0 | 63 6c 61 73 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 |
| 2a0e0 | 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"> |
| 2a100 | 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"> |
| 2a120 | 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 |
| 2a140 | 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 |
| 2a160 | 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 |
| 2a180 | 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= |
| 2a1a0 | 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 |
| 2a1c0 | 70 61 6e 20 63 6c 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 |
| 2a1e0 | 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">@ |
| 2a200 | 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 |
| 2a220 | 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 |
| 2a240 | 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 |
| 2a260 | 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>);. |
| 2a280 | 20 20 20 20 3c 73 70 61 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 |
| 2a2a0 | 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 |
| 2a2c0 | 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>);..... |
| 2a2e0 | 3c 73 70 61 6e 20 63 6c 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>. |
| 2a300 | 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 |
| 2a320 | 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=" |
| 2a340 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 | tok-number">0</span>);.}..<span. |
| 2a360 | 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 |
| 2a380 | 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 74 72 61 20 30 73 20 | .class="tok-str">"extra.0s. |
| 2a3a0 | 69 6e 20 30 2d 74 65 72 6d 69 6e 61 74 65 64 20 73 65 6e 74 69 6e 65 6c 20 61 72 72 61 79 26 71 | in.0-terminated.sentinel.array&q |
| 2a3c0 | 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 |
| 2a3e0 | 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 65 20 73 65 6e 74 69 6e 65 6c 20 76 61 6c 75 | ok-comment">//.The.sentinel.valu |
| 2a400 | 65 20 6d 61 79 20 61 70 70 65 61 72 20 65 61 72 6c 69 65 72 2c 20 62 75 74 20 64 6f 65 73 20 6e | e.may.appear.earlier,.but.does.n |
| 2a420 | 6f 74 20 69 6e 66 6c 75 65 6e 63 65 20 74 68 65 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 27 6c | ot.influence.the.compile-time.'l |
| 2a440 | 65 6e 27 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 | en'.</span>.....<span.class="tok |
| 2a460 | 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 3a 3c 73 70 | -kw">const</span>.array.=.[_:<sp |
| 2a480 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 5d 3c | an.class="tok-number">0</span>]< |
| 2a4a0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 7b | span.class="tok-type">u8</span>{ |
| 2a4c0 | 20 3c 73 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 |
| 2a4e0 | 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 2f | n>,.<span.class="tok-number">0</ |
| 2a500 | 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"> |
| 2a520 | 30 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | 0</span>,.<span.class="tok-numbe |
| 2a540 | 72 22 3e 34 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | r">4</span>.};......<span.class= |
| 2a560 | 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 3c 73 70 61 6e | "tok-kw">try</span>.expect(<span |
| 2a580 | 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 |
| 2a5a0 | 61 6e 3e 28 61 72 72 61 79 29 20 3d 3d 20 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | an>(array).==.[<span.class="tok- |
| 2a5c0 | 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 3a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | number">4</span>:<span.class="to |
| 2a5e0 | 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=" |
| 2a600 | 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 | tok-type">u8</span>);.....<span. |
| 2a620 | 63 6c 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 |
| 2a640 | 28 61 72 72 61 79 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 | (array.len.==.<span.class="tok-n |
| 2a660 | 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | umber">4</span>);.....<span.clas |
| 2a680 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 61 72 72 | s="tok-kw">try</span>.expect(arr |
| 2a6a0 | 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 34 3c 2f 73 | ay[<span.class="tok-number">4</s |
| 2a6c0 | 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 |
| 2a6e0 | 22 3e 30 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 | ">0</span>);.}</code></pre></fig |
| 2a700 | 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 |
| 2a720 | 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 |
| 2a740 | 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 6e 75 6c 6c | ><samp>$.<kbd>zig.test.test_null |
| 2a760 | 5f 74 65 72 6d 69 6e 61 74 65 64 5f 61 72 72 61 79 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 32 20 | _terminated_array.zig</kbd>.1/2. |
| 2a780 | 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 74 65 73 74 2e | test_null_terminated_array.test. |
| 2a7a0 | 30 2d 74 65 72 6d 69 6e 61 74 65 64 20 73 65 6e 74 69 6e 65 6c 20 61 72 72 61 79 2e 2e 2e 4f 4b | 0-terminated.sentinel.array...OK |
| 2a7c0 | 0a 32 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 72 72 61 79 2e | .2/2.test_null_terminated_array. |
| 2a7e0 | 74 65 73 74 2e 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 | test.extra.0s.in.0-terminated.se |
| 2a800 | 6e 74 69 6e 65 6c 20 61 72 72 61 79 2e 2e 2e 4f 4b 0a 41 6c 6c 20 32 20 74 65 73 74 73 20 70 61 | ntinel.array...OK.All.2.tests.pa |
| 2a820 | 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>.... |
| 2a840 | 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. |
| 2a860 | 68 72 65 66 3d 22 23 53 65 6e 74 69 6e 65 6c 2d 54 65 72 6d 69 6e 61 74 65 64 2d 50 6f 69 6e 74 | href="#Sentinel-Terminated-Point |
| 2a880 | 65 72 73 22 3e 53 65 6e 74 69 6e 65 6c 2d 54 65 72 6d 69 6e 61 74 65 64 20 50 6f 69 6e 74 65 72 | ers">Sentinel-Terminated.Pointer |
| 2a8a0 | 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 6e 65 | s</a></li>.<li><a.href="#Sentine |
| 2a8c0 | 6c 2d 54 65 72 6d 69 6e 61 74 65 64 2d 53 6c 69 63 65 73 22 3e 53 65 6e 74 69 6e 65 6c 2d 54 65 | l-Terminated-Slices">Sentinel-Te |
| 2a8e0 | 72 6d 69 6e 61 74 65 64 20 53 6c 69 63 65 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a | rminated.Slices</a></li>.</ul>.. |
| 2a900 | 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 44 65 73 74 72 75 63 74 75 72 | ..............<h3.id="Destructur |
| 2a920 | 69 6e 67 2d 41 72 72 61 79 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 44 65 73 74 72 75 | ing-Arrays"><a.href="#toc-Destru |
| 2a940 | 63 74 75 72 69 6e 67 2d 41 72 72 61 79 73 22 3e 44 65 73 74 72 75 63 74 75 72 69 6e 67 20 41 72 | cturing-Arrays">Destructuring.Ar |
| 2a960 | 72 61 79 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 44 | rays</a>.<a.class="hdr".href="#D |
| 2a980 | 65 73 74 72 75 63 74 75 72 69 6e 67 2d 41 72 72 61 79 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e | estructuring-Arrays">..</a></h3> |
| 2a9a0 | 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 20 20 41 72 72 61 79 73 20 63 61 6e 20 62 | ........<p>.........Arrays.can.b |
| 2a9c0 | 65 20 64 65 73 74 72 75 63 74 75 72 65 64 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 | e.destructured:.......</p>...... |
| 2a9e0 | 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- |
| 2aa00 | 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 64 65 73 74 72 75 63 74 | cap"><cite.class="file">destruct |
| 2aa20 | 75 72 69 6e 67 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 74 | uring_arrays.zig</cite></figcapt |
| 2aa40 | 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- |
| 2aa60 | 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 |
| 2aa80 | 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 |
| 2aaa0 | 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 |
| 2aac0 | 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 64 65 62 75 67 2e 70 72 69 6e 74 3b 0a 0a 3c 73 | d"</span>).debug.print;..<s |
| 2aae0 | 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 |
| 2ab00 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 73 77 69 7a 7a 6c 65 52 67 62 61 54 6f 42 | an.class="tok-fn">swizzleRgbaToB |
| 2ab20 | 67 72 61 3c 2f 73 70 61 6e 3e 28 72 67 62 61 3a 20 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | gra</span>(rgba:.[<span.class="t |
| 2ab40 | 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 73 3d | ok-number">4</span>]<span.class= |
| 2ab60 | 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 20 5b 3c 73 70 61 6e 20 63 6c 61 | "tok-type">u8</span>).[<span.cla |
| 2ab80 | 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 3c 73 70 61 6e 20 63 | ss="tok-number">4</span>]<span.c |
| 2aba0 | 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>.{..... |
| 2abc0 | 3c 73 70 61 6e 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 61 | <span.class="tok-comment">//.rea |
| 2abe0 | 64 61 62 6c 65 20 73 77 69 7a 7a 6c 69 6e 67 20 62 79 20 64 65 73 74 72 75 63 74 75 72 69 6e 67 | dable.swizzling.by.destructuring |
| 2ac00 | 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" |
| 2ac20 | 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 72 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | >const</span>.r,.<span.class="to |
| 2ac40 | 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 67 2c 20 3c 73 70 61 6e 20 63 6c 61 73 | k-kw">const</span>.g,.<span.clas |
| 2ac60 | 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 2c 20 3c 73 70 61 6e | s="tok-kw">const</span>.b,.<span |
| 2ac80 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 20 3d | .class="tok-kw">const</span>.a.= |
| 2aca0 | 20 72 67 62 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 | .rgba;.....<span.class="tok-kw"> |
| 2acc0 | 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 2e 7b 20 62 2c 20 67 2c 20 72 2c 20 61 20 7d 3b 0a 7d | return</span>..{.b,.g,.r,.a.};.} |
| 2ace0 | 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 |
| 2ad00 | 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> |
| 2ad20 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 6d 61 69 6e 3c 2f 73 70 61 6e | .<span.class="tok-fn">main</span |
| 2ad40 | 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c | >().<span.class="tok-type">void< |
| 2ad60 | 2f 73 70 61 6e 3e 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 |
| 2ad80 | 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 70 6f 73 20 3d 20 5b 5f 5d 3c 73 70 61 6e 20 63 6c | ">const</span>.pos.=.[_]<span.cl |
| 2ada0 | 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 6e | ass="tok-type">i32</span>{.<span |
| 2adc0 | 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 |
| 2ade0 | 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>. |
| 2ae00 | 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 |
| 2ae20 | 74 3c 2f 73 70 61 6e 3e 20 78 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | t</span>.x,.<span.class="tok-kw" |
| 2ae40 | 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 79 20 3d 20 70 6f 73 3b 0a 20 20 20 20 70 72 69 6e 74 | >const</span>.y.=.pos;.....print |
| 2ae60 | 28 3c 73 70 61 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 20 3d | (<span.class="tok-str">"x.= |
| 2ae80 | 20 7b 7d 2c 20 79 20 3d 20 7b 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 78 2c | .{},.y.=.{}\n"</span>,..{x, |
| 2aea0 | 20 79 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 | .y});......<span.class="tok-kw"> |
| 2aec0 | 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6f 72 61 6e 67 65 3a 20 5b 3c 73 70 61 6e 20 63 6c 61 73 | const</span>.orange:.[<span.clas |
| 2aee0 | 73 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 | s="tok-number">4</span>]<span.cl |
| 2af00 | 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 2e 7b 20 3c 73 | ass="tok-type">u8</span>.=..{.<s |
| 2af20 | 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 6e | pan.class="tok-number">255</span |
| 2af40 | 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 36 35 3c | >,.<span.class="tok-number">165< |
| 2af60 | 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" |
| 2af80 | 3e 30 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | >0</span>,.<span.class="tok-numb |
| 2afa0 | 65 72 22 3e 32 35 35 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 20 20 20 20 70 72 69 6e 74 28 3c 73 70 61 | er">255</span>.};.....print(<spa |
| 2afc0 | 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 61 6e 79 7d 5c 6e 26 | n.class="tok-str">"{any}\n& |
| 2afe0 | 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 73 77 69 7a 7a 6c 65 52 67 62 61 54 6f 42 67 72 | quot;</span>,..{swizzleRgbaToBgr |
| 2b000 | 61 28 6f 72 61 6e 67 65 29 7d 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 | a(orange)});.}</code></pre></fig |
| 2b020 | 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 |
| 2b040 | 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 |
| 2b060 | 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 64 65 73 74 | ><samp>$.<kbd>zig.build-exe.dest |
| 2b080 | 72 75 63 74 75 72 69 6e 67 5f 61 72 72 61 79 73 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 24 20 3c 6b 62 | ructuring_arrays.zig</kbd>.$.<kb |
| 2b0a0 | 64 3e 2e 2f 64 65 73 74 72 75 63 74 75 72 69 6e 67 5f 61 72 72 61 79 73 3c 2f 6b 62 64 3e 0a 78 | d>./destructuring_arrays</kbd>.x |
| 2b0c0 | 20 3d 20 31 2c 20 79 20 3d 20 32 0a 7b 20 30 2c 20 31 36 35 2c 20 32 35 35 2c 20 32 35 35 20 7d | .=.1,.y.=.2.{.0,.165,.255,.255.} |
| 2b0e0 | 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>........< |
| 2b100 | 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d | p>See.also:</p><ul>.<li><a.href= |
| 2b120 | 22 23 44 65 73 74 72 75 63 74 75 72 69 6e 67 22 3e 44 65 73 74 72 75 63 74 75 72 69 6e 67 3c 2f | "#Destructuring">Destructuring</ |
| 2b140 | 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 44 65 73 74 72 75 63 74 75 72 | a></li>.<li><a.href="#Destructur |
| 2b160 | 69 6e 67 2d 54 75 70 6c 65 73 22 3e 44 65 73 74 72 75 63 74 75 72 69 6e 67 20 54 75 70 6c 65 73 | ing-Tuples">Destructuring.Tuples |
| 2b180 | 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 44 65 73 74 72 75 63 74 | </a></li>.<li><a.href="#Destruct |
| 2b1a0 | 75 72 69 6e 67 2d 56 65 63 74 6f 72 73 22 3e 44 65 73 74 72 75 63 74 75 72 69 6e 67 20 56 65 63 | uring-Vectors">Destructuring.Vec |
| 2b1c0 | 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 20 20 20 20 | tors</a></li>.</ul>............. |
| 2b1e0 | 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 56 65 63 74 6f 72 73 22 3e 3c 61 20 68 72 | ..........<h2.id="Vectors"><a.hr |
| 2b200 | 65 66 3d 22 23 74 6f 63 2d 56 65 63 74 6f 72 73 22 3e 56 65 63 74 6f 72 73 3c 2f 61 3e 20 3c 61 | ef="#toc-Vectors">Vectors</a>.<a |
| 2b220 | 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 56 65 63 74 6f 72 73 22 3e c2 a7 3c | .class="hdr".href="#Vectors">..< |
| 2b240 | 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 65 63 74 | /a></h2>........<p>.......A.vect |
| 2b260 | 6f 72 20 69 73 20 61 20 67 72 6f 75 70 20 6f 66 20 62 6f 6f 6c 65 61 6e 73 2c 20 3c 61 20 68 72 | or.is.a.group.of.booleans,.<a.hr |
| 2b280 | 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 2c 20 3c 61 20 | ef="#Integers">Integers</a>,.<a. |
| 2b2a0 | 68 72 65 66 3d 22 23 46 6c 6f 61 74 73 22 3e 46 6c 6f 61 74 73 3c 2f 61 3e 2c 20 6f 72 0a 20 20 | href="#Floats">Floats</a>,.or... |
| 2b2c0 | 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 50 6f 69 6e 74 65 72 73 22 3e 50 6f 69 6e 74 65 72 73 | ....<a.href="#Pointers">Pointers |
| 2b2e0 | 3c 2f 61 3e 20 77 68 69 63 68 20 61 72 65 20 6f 70 65 72 61 74 65 64 20 6f 6e 20 69 6e 20 70 61 | </a>.which.are.operated.on.in.pa |
| 2b300 | 72 61 6c 6c 65 6c 2c 20 75 73 69 6e 67 20 53 49 4d 44 20 69 6e 73 74 72 75 63 74 69 6f 6e 73 20 | rallel,.using.SIMD.instructions. |
| 2b320 | 69 66 20 70 6f 73 73 69 62 6c 65 2e 0a 20 20 20 20 20 20 56 65 63 74 6f 72 20 74 79 70 65 73 20 | if.possible........Vector.types. |
| 2b340 | 61 72 65 20 63 72 65 61 74 65 64 20 77 69 74 68 20 74 68 65 20 62 75 69 6c 74 69 6e 20 66 75 6e | are.created.with.the.builtin.fun |
| 2b360 | 63 74 69 6f 6e 20 3c 61 20 68 72 65 66 3d 22 23 56 65 63 74 6f 72 22 3e 40 56 65 63 74 6f 72 3c | ction.<a.href="#Vector">@Vector< |
| 2b380 | 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 | /a>........</p>.......<p>....... |
| 2b3a0 | 56 65 63 74 6f 72 73 20 67 65 6e 65 72 61 6c 6c 79 20 73 75 70 70 6f 72 74 20 74 68 65 20 73 61 | Vectors.generally.support.the.sa |
| 2b3c0 | 6d 65 20 62 75 69 6c 74 69 6e 20 6f 70 65 72 61 74 6f 72 73 20 61 73 20 74 68 65 69 72 20 75 6e | me.builtin.operators.as.their.un |
| 2b3e0 | 64 65 72 6c 79 69 6e 67 20 62 61 73 65 20 74 79 70 65 73 2e 0a 20 20 20 20 20 20 54 68 65 20 6f | derlying.base.types........The.o |
| 2b400 | 6e 6c 79 20 65 78 63 65 70 74 69 6f 6e 20 74 6f 20 74 68 69 73 20 69 73 20 74 68 65 20 6b 65 79 | nly.exception.to.this.is.the.key |
| 2b420 | 77 6f 72 64 73 20 60 61 6e 64 60 20 61 6e 64 20 60 6f 72 60 20 6f 6e 20 76 65 63 74 6f 72 73 20 | words.`and`.and.`or`.on.vectors. |
| 2b440 | 6f 66 20 62 6f 6f 6c 73 2c 20 73 69 6e 63 65 0a 20 20 20 20 20 20 74 68 65 73 65 20 6f 70 65 72 | of.bools,.since.......these.oper |
| 2b460 | 61 74 6f 72 73 20 61 66 66 65 63 74 20 63 6f 6e 74 72 6f 6c 20 66 6c 6f 77 2c 20 77 68 69 63 68 | ators.affect.control.flow,.which |
| 2b480 | 20 69 73 20 6e 6f 74 20 61 6c 6c 6f 77 65 64 20 66 6f 72 20 76 65 63 74 6f 72 73 2e 0a 20 20 20 | .is.not.allowed.for.vectors..... |
| 2b4a0 | 20 20 20 41 6c 6c 20 6f 74 68 65 72 20 6f 70 65 72 61 74 69 6f 6e 73 20 61 72 65 20 70 65 72 66 | ...All.other.operations.are.perf |
| 2b4c0 | 6f 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 | ormed.element-wise,.and.return.a |
| 2b4e0 | 20 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 | .vector.of.the.same.length...... |
| 2b500 | 20 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 | .as.the.input.vectors..This.incl |
| 2b520 | 75 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 | udes:.......</p>.......<ul>..... |
| 2b540 | 20 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 | ......<li>Arithmetic.(<code>+</c |
| 2b560 | 6f 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 | ode>,.<code>-</code>,.<code>/</c |
| 2b580 | 6f 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 | ode>,.<code>*</code>,........... |
| 2b5a0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | ...............<code><span.class |
| 2b5c0 | 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 61 6e 3e 3c | ="tok-builtin">@divFloor</span>< |
| 2b5e0 | 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 |
| 2b600 | 75 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 | uiltin">@sqrt</span></code>,.<co |
| 2b620 | 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 65 | de><span.class="tok-builtin">@ce |
| 2b640 | 69 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 | il</span></code>,............... |
| 2b660 | 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ...........<code><span.class="to |
| 2b680 | 6b 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 | k-builtin">@log</span></code>,.e |
| 2b6a0 | 74 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 | tc.)</li>...........<li>Bitwise. |
| 2b6c0 | 6f 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 | operators.(<code>>></code> |
| 2b6e0 | 2c 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 | ,.<code><<</code>,.<code>& |
| 2b700 | 61 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 | amp;</code>,.................... |
| 2b720 | 20 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 | ..............<code>|</code>,.<c |
| 2b740 | 6f 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 | ode>~</code>,.etc.)</li>........ |
| 2b760 | 20 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 | ...<li>Comparison.operators.(<co |
| 2b780 | 64 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 | de><</code>,.<code>></code |
| 2b7a0 | 3e 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 | >,.<code>==</code>,.etc.)</li>.. |
| 2b7c0 | 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 42 6f 6f 6c 65 61 6e 20 6e 6f 74 20 28 3c 63 6f 64 65 3e | .........<li>Boolean.not.(<code> |
| 2b7e0 | 21 3c 2f 63 6f 64 65 3e 29 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 | !</code>)</li>.......</ul>...... |
| 2b800 | 20 3c 70 3e 0a 20 20 20 20 20 20 49 74 20 69 73 20 70 72 6f 68 69 62 69 74 65 64 20 74 6f 20 75 | .<p>.......It.is.prohibited.to.u |
| 2b820 | 73 65 20 61 20 6d 61 74 68 20 6f 70 65 72 61 74 6f 72 20 6f 6e 20 61 20 6d 69 78 74 75 72 65 20 | se.a.math.operator.on.a.mixture. |
| 2b840 | 6f 66 20 73 63 61 6c 61 72 73 20 28 69 6e 64 69 76 69 64 75 61 6c 20 6e 75 6d 62 65 72 73 29 0a | of.scalars.(individual.numbers). |
| 2b860 | 20 20 20 20 20 20 61 6e 64 20 76 65 63 74 6f 72 73 2e 20 5a 69 67 20 70 72 6f 76 69 64 65 73 20 | ......and.vectors..Zig.provides. |
| 2b880 | 74 68 65 20 3c 61 20 68 72 65 66 3d 22 23 73 70 6c 61 74 22 3e 40 73 70 6c 61 74 3c 2f 61 3e 20 | the.<a.href="#splat">@splat</a>. |
| 2b8a0 | 62 75 69 6c 74 69 6e 20 74 6f 20 65 61 73 69 6c 79 20 63 6f 6e 76 65 72 74 20 66 72 6f 6d 20 73 | builtin.to.easily.convert.from.s |
| 2b8c0 | 63 61 6c 61 72 73 0a 20 20 20 20 20 20 74 6f 20 76 65 63 74 6f 72 73 2c 20 61 6e 64 20 69 74 20 | calars.......to.vectors,.and.it. |
| 2b8e0 | 73 75 70 70 6f 72 74 73 20 3c 61 20 68 72 65 66 3d 22 23 72 65 64 75 63 65 22 3e 40 72 65 64 75 | supports.<a.href="#reduce">@redu |
| 2b900 | 63 65 3c 2f 61 3e 20 61 6e 64 20 61 72 72 61 79 20 69 6e 64 65 78 69 6e 67 20 73 79 6e 74 61 78 | ce</a>.and.array.indexing.syntax |
| 2b920 | 20 74 6f 20 63 6f 6e 76 65 72 74 0a 20 20 20 20 20 20 66 72 6f 6d 20 76 65 63 74 6f 72 73 20 74 | .to.convert.......from.vectors.t |
| 2b940 | 6f 20 73 63 61 6c 61 72 73 2e 20 56 65 63 74 6f 72 73 20 61 6c 73 6f 20 73 75 70 70 6f 72 74 20 | o.scalars..Vectors.also.support. |
| 2b960 | 61 73 73 69 67 6e 6d 65 6e 74 20 74 6f 20 61 6e 64 20 66 72 6f 6d 20 66 69 78 65 64 2d 6c 65 6e | assignment.to.and.from.fixed-len |
| 2b980 | 67 74 68 0a 20 20 20 20 20 20 61 72 72 61 79 73 20 77 69 74 68 20 63 6f 6d 70 74 69 6d 65 2d 6b | gth.......arrays.with.comptime-k |
| 2b9a0 | 6e 6f 77 6e 20 6c 65 6e 67 74 68 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 | nown.length........</p>.......<p |
| 2b9c0 | 3e 0a 20 20 20 20 20 20 46 6f 72 20 72 65 61 72 72 61 6e 67 69 6e 67 20 65 6c 65 6d 65 6e 74 73 | >.......For.rearranging.elements |
| 2b9e0 | 20 77 69 74 68 69 6e 20 61 6e 64 20 62 65 74 77 65 65 6e 20 76 65 63 74 6f 72 73 2c 20 5a 69 67 | .within.and.between.vectors,.Zig |
| 2ba00 | 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 68 75 66 66 6c 65 22 | .provides.the.<a.href="#shuffle" |
| 2ba20 | 3e 40 73 68 75 66 66 6c 65 3c 2f 61 3e 20 61 6e 64 20 3c 61 20 68 72 65 66 3d 22 23 73 65 6c 65 | >@shuffle</a>.and.<a.href="#sele |
| 2ba40 | 63 74 22 3e 40 73 65 6c 65 63 74 3c 2f 61 3e 20 66 75 6e 63 74 69 6f 6e 73 2e 0a 20 20 20 20 20 | ct">@select</a>.functions....... |
| 2ba60 | 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 72 61 74 69 6f 6e 73 | .</p>.......<p>.......Operations |
| 2ba80 | 20 6f 6e 20 76 65 63 74 6f 72 73 20 73 68 6f 72 74 65 72 20 74 68 61 6e 20 74 68 65 20 74 61 72 | .on.vectors.shorter.than.the.tar |
| 2baa0 | 67 65 74 20 6d 61 63 68 69 6e 65 27 73 20 6e 61 74 69 76 65 20 53 49 4d 44 20 73 69 7a 65 20 77 | get.machine's.native.SIMD.size.w |
| 2bac0 | 69 6c 6c 20 74 79 70 69 63 61 6c 6c 79 20 63 6f 6d 70 69 6c 65 20 74 6f 20 73 69 6e 67 6c 65 20 | ill.typically.compile.to.single. |
| 2bae0 | 53 49 4d 44 0a 20 20 20 20 20 20 69 6e 73 74 72 75 63 74 69 6f 6e 73 2c 20 77 68 69 6c 65 20 76 | SIMD.......instructions,.while.v |
| 2bb00 | 65 63 74 6f 72 73 20 6c 6f 6e 67 65 72 20 74 68 61 6e 20 74 68 65 20 74 61 72 67 65 74 20 6d 61 | ectors.longer.than.the.target.ma |
| 2bb20 | 63 68 69 6e 65 27 73 20 6e 61 74 69 76 65 20 53 49 4d 44 20 73 69 7a 65 20 77 69 6c 6c 20 63 6f | chine's.native.SIMD.size.will.co |
| 2bb40 | 6d 70 69 6c 65 20 74 6f 20 6d 75 6c 74 69 70 6c 65 20 53 49 4d 44 0a 20 20 20 20 20 20 69 6e 73 | mpile.to.multiple.SIMD.......ins |
| 2bb60 | 74 72 75 63 74 69 6f 6e 73 2e 20 49 66 20 61 20 67 69 76 65 6e 20 6f 70 65 72 61 74 69 6f 6e 20 | tructions..If.a.given.operation. |
| 2bb80 | 64 6f 65 73 6e 27 74 20 68 61 76 65 20 53 49 4d 44 20 73 75 70 70 6f 72 74 20 6f 6e 20 74 68 65 | doesn't.have.SIMD.support.on.the |
| 2bba0 | 20 74 61 72 67 65 74 20 61 72 63 68 69 74 65 63 74 75 72 65 2c 20 74 68 65 20 63 6f 6d 70 69 6c | .target.architecture,.the.compil |
| 2bbc0 | 65 72 20 77 69 6c 6c 20 64 65 66 61 75 6c 74 0a 20 20 20 20 20 20 74 6f 20 6f 70 65 72 61 74 69 | er.will.default.......to.operati |
| 2bbe0 | 6e 67 20 6f 6e 20 65 61 63 68 20 76 65 63 74 6f 72 20 65 6c 65 6d 65 6e 74 20 6f 6e 65 20 61 74 | ng.on.each.vector.element.one.at |
| 2bc00 | 20 61 20 74 69 6d 65 2e 20 5a 69 67 20 73 75 70 70 6f 72 74 73 20 61 6e 79 20 63 6f 6d 70 74 69 | .a.time..Zig.supports.any.compti |
| 2bc20 | 6d 65 2d 6b 6e 6f 77 6e 20 76 65 63 74 6f 72 20 6c 65 6e 67 74 68 20 75 70 20 74 6f 20 32 5e 33 | me-known.vector.length.up.to.2^3 |
| 2bc40 | 32 2d 31 2c 0a 20 20 20 20 20 20 61 6c 74 68 6f 75 67 68 20 73 6d 61 6c 6c 20 70 6f 77 65 72 73 | 2-1,.......although.small.powers |
| 2bc60 | 20 6f 66 20 74 77 6f 20 28 32 2d 36 34 29 20 61 72 65 20 6d 6f 73 74 20 74 79 70 69 63 61 6c 2e | .of.two.(2-64).are.most.typical. |
| 2bc80 | 20 4e 6f 74 65 20 74 68 61 74 20 65 78 63 65 73 73 69 76 65 6c 79 20 6c 6f 6e 67 20 76 65 63 74 | .Note.that.excessively.long.vect |
| 2bca0 | 6f 72 20 6c 65 6e 67 74 68 73 20 28 65 2e 67 2e 20 32 5e 32 30 29 20 6d 61 79 0a 20 20 20 20 20 | or.lengths.(e.g..2^20).may...... |
| 2bcc0 | 20 72 65 73 75 6c 74 20 69 6e 20 63 6f 6d 70 69 6c 65 72 20 63 72 61 73 68 65 73 20 6f 6e 20 63 | .result.in.compiler.crashes.on.c |
| 2bce0 | 75 72 72 65 6e 74 20 76 65 72 73 69 6f 6e 73 20 6f 66 20 5a 69 67 2e 0a 20 20 20 20 20 20 3c 2f | urrent.versions.of.Zig........</ |
| 2bd00 | 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 |
| 2bd20 | 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"> |
| 2bd40 | 74 65 73 74 5f 76 65 63 74 6f 72 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 | test_vector.zig</cite></figcapti |
| 2bd60 | 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 |
| 2bd80 | 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 |
| 2bda0 | 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>(< |
| 2bdc0 | 73 70 61 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 |
| 2bde0 | 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 |
| 2be00 | 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 6c 20 3d 20 73 74 | w">const</span>.expectEqual.=.st |
| 2be20 | 64 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 45 71 75 61 6c 3b 0a 0a 3c 73 70 61 6e 20 63 6c | d.testing.expectEqual;..<span.cl |
| 2be40 | 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 |
| 2be60 | 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 42 61 73 69 63 20 76 65 63 74 6f | lass="tok-str">"Basic.vecto |
| 2be80 | 72 20 75 73 61 67 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e | r.usage"</span>.{.....<span |
| 2bea0 | 20 63 6c 61 73 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 | .class="tok-comment">//.Vectors. |
| 2bec0 | 68 61 76 65 20 61 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 6b 6e 6f 77 6e 20 6c 65 6e 67 74 68 | have.a.compile-time.known.length |
| 2bee0 | 20 61 6e 64 20 62 61 73 65 20 74 79 70 65 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e | .and.base.type.</span>.....<span |
| 2bf00 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 20 3d | .class="tok-kw">const</span>.a.= |
| 2bf20 | 20 3c 73 70 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 |
| 2bf40 | 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 |
| 2bf60 | 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 |
| 2bf80 | 70 65 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 | pe">i32</span>){.<span.class="to |
| 2bfa0 | 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= |
| 2bfc0 | 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 |
| 2bfe0 | 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. |
| 2c000 | 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 20 | class="tok-number">4</span>.};.. |
| 2c020 | 20 20 20 3c 73 70 61 6e 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 |
| 2c040 | 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 69 | pan>.b.=.<span.class="tok-builti |
| 2c060 | 6e 22 3e 40 56 65 63 74 6f 72 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | n">@Vector</span>(<span.class="t |
| 2c080 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ok-number">4</span>,.<span.class |
| 2c0a0 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 7b 20 3c 73 70 61 6e 20 63 | ="tok-type">i32</span>){.<span.c |
| 2c0c0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 | lass="tok-number">5</span>,.<spa |
| 2c0e0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 36 3c 2f 73 70 61 6e 3e 2c 20 3c | n.class="tok-number">6</span>,.< |
| 2c100 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 37 3c 2f 73 70 61 6e 3e | span.class="tok-number">7</span> |
| 2c120 | 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 38 3c 2f 73 70 | ,.<span.class="tok-number">8</sp |
| 2c140 | 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 6f 6d | an>.};......<span.class="tok-com |
| 2c160 | 6d 65 6e 74 22 3e 2f 2f 20 4d 61 74 68 20 6f 70 65 72 61 74 69 6f 6e 73 20 74 61 6b 65 20 70 6c | ment">//.Math.operations.take.pl |
| 2c180 | 61 63 65 20 65 6c 65 6d 65 6e 74 2d 77 69 73 65 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 | ace.element-wise.</span>.....<sp |
| 2c1a0 | 61 6e 20 63 6c 61 73 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 | an.class="tok-kw">const</span>.c |
| 2c1c0 | 20 3d 20 61 20 2b 20 62 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | .=.a.+.b;......<span.class="tok- |
| 2c1e0 | 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 49 6e 64 69 76 69 64 75 61 6c 20 76 65 63 74 6f 72 20 65 6c | comment">//.Individual.vector.el |
| 2c200 | 65 6d 65 6e 74 73 20 63 61 6e 20 62 65 20 61 63 63 65 73 73 65 64 20 75 73 69 6e 67 20 61 72 72 | ements.can.be.accessed.using.arr |
| 2c220 | 61 79 20 69 6e 64 65 78 69 6e 67 20 73 79 6e 74 61 78 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c | ay.indexing.syntax.</span>.....< |
| 2c240 | 73 70 61 6e 20 63 6c 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 |
| 2c260 | 78 70 65 63 74 45 71 75 61 6c 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | xpectEqual(<span.class="tok-numb |
| 2c280 | 65 72 22 3e 36 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 | er">6</span>,.c[<span.class="tok |
| 2c2a0 | 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 5d 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 | -number">0</span>]);.....<span.c |
| 2c2c0 | 6c 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 45 | lass="tok-kw">try</span>.expectE |
| 2c2e0 | 71 75 61 6c 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 38 3c | qual(<span.class="tok-number">8< |
| 2c300 | 2f 73 70 61 6e 3e 2c 20 63 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | /span>,.c[<span.class="tok-numbe |
| 2c320 | 72 22 3e 31 3c 2f 73 70 61 6e 3e 5d 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | r">1</span>]);.....<span.class=" |
| 2c340 | 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 3c | tok-kw">try</span>.expectEqual(< |
| 2c360 | 73 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 |
| 2c380 | 3e 2c 20 63 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c | >,.c[<span.class="tok-number">2< |
| 2c3a0 | 2f 73 70 61 6e 3e 5d 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | /span>]);.....<span.class="tok-k |
| 2c3c0 | 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. |
| 2c3e0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 3c 2f 73 70 61 6e 3e 2c 20 63 5b | class="tok-number">12</span>,.c[ |
| 2c400 | 3c 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 |
| 2c420 | 3e 5d 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 | >]);.}..<span.class="tok-kw">tes |
| 2c440 | 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">& |
| 2c460 | 71 75 6f 74 3b 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 | quot;Conversion.between.vectors, |
| 2c480 | 20 61 72 72 61 79 73 2c 20 61 6e 64 20 73 6c 69 63 65 73 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e | .arrays,.and.slices"</span> |
| 2c4a0 | 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" |
| 2c4c0 | 3e 2f 2f 20 56 65 63 74 6f 72 73 20 61 6e 64 20 66 69 78 65 64 2d 6c 65 6e 67 74 68 20 61 72 72 | >//.Vectors.and.fixed-length.arr |
| 2c4e0 | 61 79 73 20 63 61 6e 20 62 65 20 61 75 74 6f 6d 61 74 69 63 61 6c 6c 79 20 61 73 73 69 67 6e 65 | ays.can.be.automatically.assigne |
| 2c500 | 64 20 62 61 63 6b 20 61 6e 64 20 66 6f 72 74 68 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 | d.back.and.forth</span>.....<spa |
| 2c520 | 6e 20 63 6c 61 73 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 |
| 2c540 | 72 31 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 | r1:.[<span.class="tok-number">4< |
| 2c560 | 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 |
| 2c580 | 32 3c 2f 73 70 61 6e 3e 20 3d 20 5b 5f 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | 2</span>.=.[_]<span.class="tok-t |
| 2c5a0 | 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 7b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ype">f32</span>{.<span.class="to |
| 2c5c0 | 6b 2d 6e 75 6d 62 65 72 22 3e 31 2e 31 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 | k-number">1.1</span>,.<span.clas |
| 2c5e0 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 2e 32 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e | s="tok-number">3.2</span>,.<span |
| 2c600 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 2e 35 3c 2f 73 70 61 6e 3e 2c 20 | .class="tok-number">4.5</span>,. |
| 2c620 | 3c 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 2e 36 3c 2f 73 70 | <span.class="tok-number">5.6</sp |
| 2c640 | 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"> |
| 2c660 | 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 76 65 63 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | const</span>.vec:.<span.class="t |
| 2c680 | 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 56 65 63 74 6f 72 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e | ok-builtin">@Vector</span>(<span |
| 2c6a0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 2c 20 3c 73 | .class="tok-number">4</span>,.<s |
| 2c6c0 | 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>) |
| 2c6e0 | 20 3d 20 61 72 72 31 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | .=.arr1;.....<span.class="tok-kw |
| 2c700 | 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 72 72 32 3a 20 5b 3c 73 70 61 6e 20 63 6c 61 73 | ">const</span>.arr2:.[<span.clas |
| 2c720 | 73 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 | s="tok-number">4</span>]<span.cl |
| 2c740 | 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 76 65 63 3b | ass="tok-type">f32</span>.=.vec; |
| 2c760 | 0a 20 20 20 20 3c 73 70 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 |
| 2c780 | 70 61 6e 3e 20 65 78 70 65 63 74 45 71 75 61 6c 28 61 72 72 31 2c 20 61 72 72 32 29 3b 0a 0a 20 | pan>.expectEqual(arr1,.arr2);... |
| 2c7a0 | 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">//. |
| 2c7c0 | 59 6f 75 20 63 61 6e 20 61 6c 73 6f 20 61 73 73 69 67 6e 20 66 72 6f 6d 20 61 20 73 6c 69 63 65 | You.can.also.assign.from.a.slice |
| 2c7e0 | 20 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 20 74 6f 20 61 | .with.comptime-known.length.to.a |
| 2c800 | 20 76 65 63 74 6f 72 20 75 73 69 6e 67 20 2e 2a 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 | .vector.using..*</span>.....<spa |
| 2c820 | 6e 20 63 6c 61 73 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 | n.class="tok-kw">const</span>.ve |
| 2c840 | 63 32 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 56 | c2:.<span.class="tok-builtin">@V |
| 2c860 | 65 63 74 6f 72 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | ector</span>(<span.class="tok-nu |
| 2c880 | 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 6b | mber">2</span>,.<span.class="tok |
| 2c8a0 | 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 29 20 3d 20 61 72 72 31 5b 3c 73 70 61 6e 20 | -type">f32</span>).=.arr1[<span. |
| 2c8c0 | 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 70 | class="tok-number">1</span>..<sp |
| 2c8e0 | 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 5d 2e | an.class="tok-number">3</span>]. |
| 2c900 | 2a 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e | *;......<span.class="tok-kw">con |
| 2c920 | 73 74 3c 2f 73 70 61 6e 3e 20 73 6c 69 63 65 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | st</span>.slice:.[]<span.class=" |
| 2c940 | 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 |
| 2c960 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 26 61 6d 70 3b 61 72 | ="tok-type">f32</span>.=.&ar |
| 2c980 | 72 31 3b 0a 20 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 | r1;.....<span.class="tok-kw">var |
| 2c9a0 | 3c 2f 73 70 61 6e 3e 20 6f 66 66 73 65 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | </span>.offset:.<span.class="tok |
| 2c9c0 | 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= |
| 2c9e0 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 20 3c 73 70 61 6e 20 63 6c 61 | "tok-number">1</span>;.<span.cla |
| 2ca00 | 73 73 3d 22 74 6f 6b 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 | ss="tok-comment">//.var.to.make. |
| 2ca20 | 69 74 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 20 5f 20 3d 20 | it.runtime-known</span>....._.=. |
| 2ca40 | 26 61 6d 70 3b 6f 66 66 73 65 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f | &offset;.<span.class="tok-co |
| 2ca60 | 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 73 20 6e 65 76 65 72 | mment">//.suppress.'var.is.never |
| 2ca80 | 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 20 20 3c 73 70 61 6e | .mutated'.error</span>.....<span |
| 2caa0 | 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 65 78 74 72 61 | .class="tok-comment">//.To.extra |
| 2cac0 | 63 74 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 66 72 6f 6d 20 | ct.a.comptime-known.length.from. |
| 2cae0 | 61 20 72 75 6e 74 69 6d 65 2d 6b 6e 6f 77 6e 20 6f 66 66 73 65 74 2c 3c 2f 73 70 61 6e 3e 0a 20 | a.runtime-known.offset,</span>.. |
| 2cb00 | 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">//. |
| 2cb20 | 66 69 72 73 74 20 65 78 74 72 61 63 74 20 61 20 6e 65 77 20 73 6c 69 63 65 20 66 72 6f 6d 20 74 | first.extract.a.new.slice.from.t |
| 2cb40 | 68 65 20 73 74 61 72 74 69 6e 67 20 6f 66 66 73 65 74 2c 20 74 68 65 6e 20 61 6e 20 61 72 72 61 | he.starting.offset,.then.an.arra |
| 2cb60 | 79 20 6f 66 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | y.of</span>.....<span.class="tok |
| 2cb80 | 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 6e 20 6c 65 6e 67 | -comment">//.comptime-known.leng |
| 2cba0 | 74 68 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 | th</span>.....<span.class="tok-k |
| 2cbc0 | 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 76 65 63 33 3a 20 3c 73 70 61 6e 20 63 6c 61 73 | w">const</span>.vec3:.<span.clas |
| 2cbe0 | 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 56 65 63 74 6f 72 3c 2f 73 70 61 6e 3e 28 3c | s="tok-builtin">@Vector</span>(< |
| 2cc00 | 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> |
| 2cc20 | 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 | ,.<span.class="tok-type">f32</sp |
| 2cc40 | 61 6e 3e 29 20 3d 20 73 6c 69 63 65 5b 6f 66 66 73 65 74 2e 2e 5d 5b 3c 73 70 61 6e 20 63 6c 61 | an>).=.slice[offset..][<span.cla |
| 2cc60 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 2e 2e 3c 73 70 61 6e 20 | ss="tok-number">0</span>..<span. |
| 2cc80 | 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 2e 2a 3b 0a | class="tok-number">2</span>].*;. |
| 2cca0 | 20 20 20 20 3c 73 70 61 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 |
| 2ccc0 | 61 6e 3e 20 65 78 70 65 63 74 45 71 75 61 6c 28 73 6c 69 63 65 5b 6f 66 66 73 65 74 5d 2c 20 76 | an>.expectEqual(slice[offset],.v |
| 2cce0 | 65 63 32 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f | ec2[<span.class="tok-number">0</ |
| 2cd00 | 73 70 61 6e 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 | span>]);.....<span.class="tok-kw |
| 2cd20 | 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 6c 69 63 65 5b 6f | ">try</span>.expectEqual(slice[o |
| 2cd40 | 66 66 73 65 74 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 | ffset.+.<span.class="tok-number" |
| 2cd60 | 3e 31 3c 2f 73 70 61 6e 3e 5d 2c 20 76 65 63 32 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | >1</span>],.vec2[<span.class="to |
| 2cd80 | 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 5d 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 | k-number">1</span>]);.....<span. |
| 2cda0 | 63 6c 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 |
| 2cdc0 | 45 71 75 61 6c 28 76 65 63 32 2c 20 76 65 63 33 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 | Equal(vec2,.vec3);.}</code></pre |
| 2cde0 | 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 |
| 2ce00 | 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 |
| 2ce20 | 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 |
| 2ce40 | 74 5f 76 65 63 74 6f 72 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 32 20 74 65 73 74 5f 76 65 63 74 | t_vector.zig</kbd>.1/2.test_vect |
| 2ce60 | 6f 72 2e 74 65 73 74 2e 42 61 73 69 63 20 76 65 63 74 6f 72 20 75 73 61 67 65 2e 2e 2e 4f 4b 0a | or.test.Basic.vector.usage...OK. |
| 2ce80 | 32 2f 32 20 74 65 73 74 5f 76 65 63 74 6f 72 2e 74 65 73 74 2e 43 6f 6e 76 65 72 73 69 6f 6e 20 | 2/2.test_vector.test.Conversion. |
| 2cea0 | 62 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 | between.vectors,.arrays,.and.sli |
| 2cec0 | 63 65 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 3c 2f 73 | ces...OK.All.2.tests.passed..</s |
| 2cee0 | 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 | amp></pre></figure>........<p>.. |
| 2cf00 | 20 20 20 20 20 54 4f 44 4f 20 74 61 6c 6b 20 61 62 6f 75 74 20 43 20 41 42 49 20 69 6e 74 65 72 | .....TODO.talk.about.C.ABI.inter |
| 2cf20 | 6f 70 3c 62 72 2f 3e 0a 20 20 20 20 20 20 54 4f 44 4f 20 63 6f 6e 73 69 64 65 72 20 73 75 67 67 | op<br/>.......TODO.consider.sugg |
| 2cf40 | 65 73 74 69 6e 67 20 73 74 64 2e 4d 75 6c 74 69 41 72 72 61 79 4c 69 73 74 0a 20 20 20 20 20 20 | esting.std.MultiArrayList....... |
| 2cf60 | 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>. |
| 2cf80 | 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 73 70 6c 61 74 22 3e 40 73 70 6c 61 74 3c 2f 61 3e 3c | <li><a.href="#splat">@splat</a>< |
| 2cfa0 | 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 3e 40 73 68 75 | /li>.<li><a.href="#shuffle">@shu |
| 2cfc0 | 66 66 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 73 65 6c 65 | ffle</a></li>.<li><a.href="#sele |
| 2cfe0 | 63 74 22 3e 40 73 65 6c 65 63 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 | ct">@select</a></li>.<li><a.href |
| 2d000 | 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 3c 2f 75 6c | ="#reduce">@reduce</a></li>.</ul |
| 2d020 | 3e 0a 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 44 65 73 74 72 75 63 74 75 72 69 6e 67 2d | >.........<h3.id="Destructuring- |
| 2d040 | 56 65 63 74 6f 72 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 44 65 73 74 72 75 63 74 75 | Vectors"><a.href="#toc-Destructu |
| 2d060 | 72 69 6e 67 2d 56 65 63 74 6f 72 73 22 3e 44 65 73 74 72 75 63 74 75 72 69 6e 67 20 56 65 63 74 | ring-Vectors">Destructuring.Vect |
| 2d080 | 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 22 23 44 65 | ors</a>.<a.class="hdr".href="#De |
| 2d0a0 | 73 74 72 75 63 74 75 72 69 6e 67 2d 56 65 63 74 6f 72 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e | structuring-Vectors">..</a></h3> |
| 2d0c0 | 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 20 20 56 65 63 74 6f 72 73 20 63 61 6e 20 | ........<p>.........Vectors.can. |
| 2d0e0 | 62 65 20 64 65 73 74 72 75 63 74 75 72 65 64 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 | be.destructured:.......</p>..... |
| 2d100 | 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 |
| 2d120 | 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 64 65 73 74 72 75 63 | -cap"><cite.class="file">destruc |
| 2d140 | 74 75 72 69 6e 67 5f 76 65 63 74 6f 72 73 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 | turing_vectors.zig</cite></figca |
| 2d160 | 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 |
| 2d180 | 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 |
| 2d1a0 | 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 |
| 2d1c0 | 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">" |
| 2d1e0 | 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;.. |
| 2d200 | 3c 73 70 61 6e 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 6d 75 | <span.class="tok-comment">//.emu |
| 2d220 | 6c 61 74 65 20 70 75 6e 70 63 6b 6c 64 71 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 | late.punpckldq</span>.<span.clas |
| 2d240 | 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 |
| 2d260 | 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 |
| 2d280 | 3d 22 74 6f 6b 2d 66 6e 22 3e 75 6e 70 61 63 6b 3c 2f 73 70 61 6e 3e 28 78 3a 20 3c 73 70 61 6e | ="tok-fn">unpack</span>(x:.<span |
| 2d2a0 | 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 73 70 | .class="tok-builtin">@Vector</sp |
| 2d2c0 | 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 2f | an>(<span.class="tok-number">4</ |
| 2d2e0 | 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 66 33 | span>,.<span.class="tok-type">f3 |
| 2d300 | 32 3c 2f 73 70 61 6e 3e 29 2c 20 79 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 | 2</span>),.y:.<span.class="tok-b |
| 2d320 | 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 |
| 2d340 | 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. |
| 2d360 | 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 29 20 3c 73 | class="tok-type">f32</span>)).<s |
| 2d380 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 56 65 63 74 6f 72 3c | pan.class="tok-builtin">@Vector< |
| 2d3a0 | 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e | /span>(<span.class="tok-number"> |
| 2d3c0 | 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 70 65 22 | 4</span>,.<span.class="tok-type" |
| 2d3e0 | 3e 66 33 32 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | >f32</span>).{.....<span.class=" |
| 2d400 | 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 2c 20 3c 73 70 61 6e 20 63 6c | tok-kw">const</span>.a,.<span.cl |
| 2d420 | 61 73 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 2c 20 5f 2c 20 | ass="tok-kw">const</span>.c,._,. |
| 2d440 | 5f 20 3d 20 78 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | _.=.x;.....<span.class="tok-kw"> |
| 2d460 | 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 62 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | const</span>.b,.<span.class="tok |
| 2d480 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 64 2c 20 5f 2c 20 5f 20 3d 20 79 3b 0a 20 | -kw">const</span>.d,._,._.=.y;.. |
| 2d4a0 | 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</ |
| 2d4c0 | 73 70 61 6e 3e 20 2e 7b 20 61 2c 20 62 2c 20 63 2c 20 64 20 7d 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 | span>..{.a,.b,.c,.d.};.}..<span. |
| 2d4e0 | 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. |
| 2d500 | 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 |
| 2d520 | 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 |
| 2d540 | 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>.{ |
| 2d560 | 0a 20 20 20 20 3c 73 70 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< |
| 2d580 | 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 62 75 69 6c 74 | /span>.x:.<span.class="tok-built |
| 2d5a0 | 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=" |
| 2d5c0 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 | tok-number">4</span>,.<span.clas |
| 2d5e0 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 29 20 3d 20 2e 7b 20 3c 73 | s="tok-type">f32</span>).=..{.<s |
| 2d600 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 2e 30 3c 2f 73 70 61 6e | pan.class="tok-number">1.0</span |
| 2d620 | 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 2e 30 3c | >,.<span.class="tok-number">2.0< |
| 2d640 | 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" |
| 2d660 | 3e 33 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 | >3.0</span>,.<span.class="tok-nu |
| 2d680 | 6d 62 65 72 22 3e 34 2e 30 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | mber">4.0</span>.};.....<span.cl |
| 2d6a0 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 79 3a 20 3c 73 70 | ass="tok-kw">const</span>.y:.<sp |
| 2d6c0 | 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</ |
| 2d6e0 | 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 | span>(<span.class="tok-number">4 |
| 2d700 | 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"> |
| 2d720 | 66 33 32 3c 2f 73 70 61 6e 3e 29 20 3d 20 2e 7b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | f32</span>).=..{.<span.class="to |
| 2d740 | 6b 2d 6e 75 6d 62 65 72 22 3e 35 2e 30 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 | k-number">5.0</span>,.<span.clas |
| 2d760 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 36 2e 30 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e | s="tok-number">6.0</span>,.<span |
| 2d780 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 37 2e 30 3c 2f 73 70 61 6e 3e 2c 20 | .class="tok-number">7.0</span>,. |
| 2d7a0 | 3c 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 2e 30 3c 2f 73 70 | <span.class="tok-number">8.0</sp |
| 2d7c0 | 61 6e 3e 20 7d 3b 0a 20 20 20 20 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | an>.};.....print(<span.class="to |
| 2d7e0 | 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 7b 7d 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b | k-str">"{}"</span>,..{ |
| 2d800 | 75 6e 70 61 63 6b 28 78 2c 20 79 29 7d 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f | unpack(x,.y)});.}</code></pre></ |
| 2d820 | 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 |
| 2d840 | 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>< |
| 2d860 | 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 64 | pre><samp>$.<kbd>zig.build-exe.d |
| 2d880 | 65 73 74 72 75 63 74 75 72 69 6e 67 5f 76 65 63 74 6f 72 73 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 24 | estructuring_vectors.zig</kbd>.$ |
| 2d8a0 | 20 3c 6b 62 64 3e 2e 2f 64 65 73 74 72 75 63 74 75 72 69 6e 67 5f 76 65 63 74 6f 72 73 3c 2f 6b | .<kbd>./destructuring_vectors</k |
| 2d8c0 | 62 64 3e 0a 7b 20 31 2c 20 35 2c 20 32 2c 20 36 20 7d 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e | bd>.{.1,.5,.2,.6.}.</samp></pre> |
| 2d8e0 | 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 3a 3c 2f 70 3e | </figure>.......<p>See.also:</p> |
| 2d900 | 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 44 65 73 74 72 75 63 74 75 72 69 6e 67 | <ul>.<li><a.href="#Destructuring |
| 2d920 | 22 3e 44 65 73 74 72 75 63 74 75 72 69 6e 67 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 | ">Destructuring</a></li>.<li><a. |
| 2d940 | 68 72 65 66 3d 22 23 44 65 73 74 72 75 63 74 75 72 69 6e 67 2d 54 75 70 6c 65 73 22 3e 44 65 73 | href="#Destructuring-Tuples">Des |
| 2d960 | 74 72 75 63 74 75 72 69 6e 67 20 54 75 70 6c 65 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c | tructuring.Tuples</a></li>.<li>< |
| 2d980 | 61 20 68 72 65 66 3d 22 23 44 65 73 74 72 75 63 74 75 72 69 6e 67 2d 41 72 72 61 79 73 22 3e 44 | a.href="#Destructuring-Arrays">D |
| 2d9a0 | 65 73 74 72 75 63 74 75 72 69 6e 67 20 41 72 72 61 79 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 | estructuring.Arrays</a></li>.</u |
| 2d9c0 | 6c 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 | l>........................<h2.id |
| 2d9e0 | 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 2d 50 6f 69 6e 74 65 | ="Pointers"><a.href="#toc-Pointe |
| 2da00 | 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 3d 22 68 64 72 22 20 | rs">Pointers</a>.<a.class="hdr". |
| 2da20 | 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 68 32 3e 0a 0a 20 20 | href="#Pointers">..</a></h2>.... |
| 2da40 | 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 20 6b 69 6e 64 73 20 | ....<p>.......Zig.has.two.kinds. |
| 2da60 | 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 61 6e 64 20 6d 61 6e | of.pointers:.single-item.and.man |
| 2da80 | 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 3c 75 6c 3e 0a 20 20 | y-item........</p>.......<ul>... |
| 2daa0 | 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 65 3e 20 2d 20 73 69 | ........<li><code>*T</code>.-.si |
| 2dac0 | 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 74 6c 79 20 6f 6e 65 | ngle-item.pointer.to.exactly.one |
| 2dae0 | 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 20 20 20 20 20 20 20 | .item..............<ul>......... |
| 2db00 | 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 73 79 6e 74 61 78 3a | ......<li>Supports.deref.syntax: |
| 2db20 | 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 20 20 20 20 20 20 20 | .<code>ptr.*</code></li>........ |
| 2db40 | 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 |
| 2db60 | 3a 20 3c 63 6f 64 65 3e 70 74 72 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | :.<code>ptr[<span.class="tok-num |
| 2db80 | 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 2e 2e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ber">0</span>..<span.class="tok- |
| 2dba0 | 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 5d 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 | number">1</span>]</code></li>... |
| 2dbc0 | 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 75 70 70 6f 72 74 73 20 70 6f 69 6e 74 65 72 | ............<li>Supports.pointer |
| 2dbe0 | 20 73 75 62 74 72 61 63 74 69 6f 6e 3a 20 3c 63 6f 64 65 3e 70 74 72 20 2d 20 70 74 72 3c 2f 63 | .subtraction:.<code>ptr.-.ptr</c |
| 2dc00 | 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 | ode></li>.............</ul>..... |
| 2dc20 | 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 3e | ......</li>...........<li><code> |
| 2dc40 | 5b 2a 5d 54 3c 2f 63 6f 64 65 3e 20 2d 20 6d 61 6e 79 2d 69 74 65 6d 20 70 6f 69 6e 74 65 72 20 | [*]T</code>.-.many-item.pointer. |
| 2dc60 | 74 6f 20 75 6e 6b 6e 6f 77 6e 20 6e 75 6d 62 65 72 20 6f 66 20 69 74 65 6d 73 2e 0a 20 20 20 20 | to.unknown.number.of.items...... |
| 2dc80 | 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 |
| 2dca0 | 75 70 70 6f 72 74 73 20 69 6e 64 65 78 20 73 79 6e 74 61 78 3a 20 3c 63 6f 64 65 3e 70 74 72 5b | upports.index.syntax:.<code>ptr[ |
| 2dcc0 | 69 5d 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 | i]</code></li>...............<li |
| 2dce0 | 3e 53 75 70 70 6f 72 74 73 20 73 6c 69 63 65 20 73 79 6e 74 61 78 3a 20 3c 63 6f 64 65 3e 70 74 | >Supports.slice.syntax:.<code>pt |
| 2dd00 | 72 5b 73 74 61 72 74 2e 2e 65 6e 64 5d 3c 2f 63 6f 64 65 3e 20 61 6e 64 20 3c 63 6f 64 65 3e 70 | r[start..end]</code>.and.<code>p |
| 2dd20 | 74 72 5b 73 74 61 72 74 2e 2e 5d 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 | tr[start..]</code></li>......... |
| 2dd40 | 20 20 20 20 20 20 3c 6c 69 3e 53 75 70 70 6f 72 74 73 20 70 6f 69 6e 74 65 72 2d 69 6e 74 65 67 | ......<li>Supports.pointer-integ |
| 2dd60 | 65 72 20 61 72 69 74 68 6d 65 74 69 63 3a 20 3c 63 6f 64 65 3e 70 74 72 20 2b 20 69 6e 74 3c 2f | er.arithmetic:.<code>ptr.+.int</ |
| 2dd80 | 63 6f 64 65 3e 2c 20 3c 63 6f 64 65 3e 70 74 72 20 2d 20 69 6e 74 3c 2f 63 6f 64 65 3e 3c 2f 6c | code>,.<code>ptr.-.int</code></l |
| 2dda0 | 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 70 6f | i>...............<li>Supports.po |
| 2ddc0 | 69 6e 74 65 72 20 73 75 62 74 72 61 63 74 69 6f 6e 3a 20 3c 63 6f 64 65 3e 70 74 72 20 2d 20 70 | inter.subtraction:.<code>ptr.-.p |
| 2dde0 | 74 72 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 | tr</code></li>.............</ul> |
| 2de00 | 0a 20 20 20 20 20 20 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 | .............<code>T</code>.must |
| 2de20 | 20 68 61 76 65 20 61 20 6b 6e 6f 77 6e 20 73 69 7a 65 2c 20 77 68 69 63 68 20 6d 65 61 6e 73 20 | .have.a.known.size,.which.means. |
| 2de40 | 74 68 61 74 20 69 74 20 63 61 6e 6e 6f 74 20 62 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 | that.it.cannot.be.............<c |
| 2de60 | 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 6e 79 6f 70 | ode><span.class="tok-type">anyop |
| 2de80 | 61 71 75 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6f 72 20 61 6e 79 20 6f 74 68 65 72 20 | aque</span></code>.or.any.other. |
| 2dea0 | 3c 61 20 68 72 65 66 3d 22 23 6f 70 61 71 75 65 22 3e 6f 70 61 71 75 65 20 74 79 70 65 3c 2f 61 | <a.href="#opaque">opaque.type</a |
| 2dec0 | 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 3c 2f 75 6c 3e 0a 20 | >............</li>.......</ul>.. |
| 2dee0 | 20 20 20 20 20 3c 70 3e 54 68 65 73 65 20 74 79 70 65 73 20 61 72 65 20 63 6c 6f 73 65 6c 79 20 | .....<p>These.types.are.closely. |
| 2df00 | 72 65 6c 61 74 65 64 20 74 6f 20 3c 61 20 68 72 65 66 3d 22 23 41 72 72 61 79 73 22 3e 41 72 72 | related.to.<a.href="#Arrays">Arr |
| 2df20 | 61 79 73 3c 2f 61 3e 20 61 6e 64 20 3c 61 20 68 72 65 66 3d 22 23 53 6c 69 63 65 73 22 3e 53 6c | ays</a>.and.<a.href="#Slices">Sl |
| 2df40 | 69 63 65 73 3c 2f 61 3e 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 | ices</a>:</p>.........<ul>...... |
| 2df60 | 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 3e 2a 5b 4e 5d 54 3c 2f 63 6f 64 65 3e 20 2d 20 | .......<li><code>*[N]T</code>.-. |
| 2df80 | 70 6f 69 6e 74 65 72 20 74 6f 20 4e 20 69 74 65 6d 73 2c 20 73 61 6d 65 20 61 73 20 73 69 6e 67 | pointer.to.N.items,.same.as.sing |
| 2dfa0 | 6c 65 2d 69 74 65 6d 20 70 6f 69 6e 74 65 72 20 74 6f 20 61 6e 20 61 72 72 61 79 2e 0a 20 20 20 | le-item.pointer.to.an.array..... |
| 2dfc0 | 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c | .........<ul>.................<l |
| 2dfe0 | 69 3e 53 75 70 70 6f 72 74 73 20 69 6e 64 65 78 20 73 79 6e 74 61 78 3a 20 3c 63 6f 64 65 3e 61 | i>Supports.index.syntax:.<code>a |
| 2e000 | 72 72 61 79 5f 70 74 72 5b 69 5d 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 | rray_ptr[i]</code></li>......... |
| 2e020 | 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 75 70 70 6f 72 74 73 20 73 6c 69 63 65 20 73 79 6e 74 61 | ........<li>Supports.slice.synta |
| 2e040 | 78 3a 20 3c 63 6f 64 65 3e 61 72 72 61 79 5f 70 74 72 5b 73 74 61 72 74 2e 2e 65 6e 64 5d 3c 2f | x:.<code>array_ptr[start..end]</ |
| 2e060 | 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 | code></li>.................<li>S |
| 2e080 | 75 70 70 6f 72 74 73 20 6c 65 6e 20 70 72 6f 70 65 72 74 79 3a 20 3c 63 6f 64 65 3e 61 72 72 61 | upports.len.property:.<code>arra |
| 2e0a0 | 79 5f 70 74 72 2e 6c 65 6e 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 | y_ptr.len</code></li>........... |
| 2e0c0 | 20 20 20 20 20 20 3c 6c 69 3e 53 75 70 70 6f 72 74 73 20 70 6f 69 6e 74 65 72 20 73 75 62 74 72 | ......<li>Supports.pointer.subtr |
| 2e0e0 | 61 63 74 69 6f 6e 3a 20 3c 63 6f 64 65 3e 61 72 72 61 79 5f 70 74 72 20 2d 20 61 72 72 61 79 5f | action:.<code>array_ptr.-.array_ |
| 2e100 | 70 74 72 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 | ptr</code></li>.............</ul |
| 2e120 | 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 2f 75 6c | >.............</li>.........</ul |
| 2e140 | 3e 0a 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c | >.........<ul>.............<li>< |
| 2e160 | 63 6f 64 65 3e 5b 5d 54 3c 2f 63 6f 64 65 3e 20 2d 20 69 73 20 61 20 73 6c 69 63 65 20 28 61 20 | code>[]T</code>.-.is.a.slice.(a. |
| 2e180 | 66 61 74 20 70 6f 69 6e 74 65 72 2c 20 77 68 69 63 68 20 63 6f 6e 74 61 69 6e 73 20 61 20 70 6f | fat.pointer,.which.contains.a.po |
| 2e1a0 | 69 6e 74 65 72 20 6f 66 20 74 79 70 65 20 3c 63 6f 64 65 3e 5b 2a 5d 54 3c 2f 63 6f 64 65 3e 20 | inter.of.type.<code>[*]T</code>. |
| 2e1c0 | 61 6e 64 20 61 20 6c 65 6e 67 74 68 29 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a | and.a.length)..............<ul>. |
| 2e1e0 | 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 69 6e 64 | ................<li>Supports.ind |
| 2e200 | 65 78 20 73 79 6e 74 61 78 3a 20 3c 63 6f 64 65 3e 73 6c 69 63 65 5b 69 5d 3c 2f 63 6f 64 65 3e | ex.syntax:.<code>slice[i]</code> |
| 2e220 | 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 |
| 2e240 | 74 73 20 73 6c 69 63 65 20 73 79 6e 74 61 78 3a 20 3c 63 6f 64 65 3e 73 6c 69 63 65 5b 73 74 61 | ts.slice.syntax:.<code>slice[sta |
| 2e260 | 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 20 | rt..end]</code></li>............ |
| 2e280 | 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 20 | .....<li>Supports.len.property:. |
| 2e2a0 | 3c 63 6f 64 65 3e 73 6c 69 63 65 2e 6c 65 6e 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 | <code>slice.len</code></li>..... |
| 2e2c0 | 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 6c 69 3e 0a | ........</ul>.............</li>. |
| 2e2e0 | 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 20 20 3c 70 3e 55 73 65 20 3c 63 6f | ........</ul>.........<p>Use.<co |
| 2e300 | 64 65 3e 26 61 6d 70 3b 78 3c 2f 63 6f 64 65 3e 20 74 6f 20 6f 62 74 61 69 6e 20 61 20 73 69 6e | de>&x</code>.to.obtain.a.sin |
| 2e320 | 67 6c 65 2d 69 74 65 6d 20 70 6f 69 6e 74 65 72 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 | gle-item.pointer:</p>.......<fig |
| 2e340 | 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"> |
| 2e360 | 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 6e 67 6c 65 5f 69 | <cite.class="file">test_single_i |
| 2e380 | 74 65 6d 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 | tem_pointer.zig</cite></figcapti |
| 2e3a0 | 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 |
| 2e3c0 | 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 |
| 2e3e0 | 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 |
| 2e400 | 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 |
| 2e420 | 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;. |
| 2e440 | 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 |
| 2e460 | 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 64 | >.<span.class="tok-str">"ad |
| 2e480 | 64 72 65 73 73 20 6f 66 20 73 79 6e 74 61 78 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 | dress.of.syntax"</span>.{.. |
| 2e4a0 | 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">//. |
| 2e4c0 | 47 65 74 20 74 68 65 20 61 64 64 72 65 73 73 20 6f 66 20 61 20 76 61 72 69 61 62 6c 65 3a 3c 2f | Get.the.address.of.a.variable:</ |
| 2e4e0 | 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 |
| 2e500 | 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | onst</span>.x:.<span.class="tok- |
| 2e520 | 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | type">i32</span>.=.<span.class=" |
| 2e540 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 | tok-number">1234</span>;.....<sp |
| 2e560 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 78 | an.class="tok-kw">const</span>.x |
| 2e580 | 5f 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= |
| 2e5a0 | 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 44 65 72 65 66 65 72 65 6e 63 65 20 61 20 70 | "tok-comment">//.Dereference.a.p |
| 2e5c0 | 6f 69 6e 74 65 72 3a 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ointer:</span>.....<span.class=" |
| 2e5e0 | 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 78 5f 70 74 72 2e | tok-kw">try</span>.expect(x_ptr. |
| 2e600 | 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 32 | *.==.<span.class="tok-number">12 |
| 2e620 | 33 34 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 | 34</span>);......<span.class="to |
| 2e640 | 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 57 68 65 6e 20 79 6f 75 20 67 65 74 20 74 68 65 20 61 | k-comment">//.When.you.get.the.a |
| 2e660 | 64 64 72 65 73 73 20 6f 66 20 61 20 63 6f 6e 73 74 20 76 61 72 69 61 62 6c 65 2c 20 79 6f 75 20 | ddress.of.a.const.variable,.you. |
| 2e680 | 67 65 74 20 61 20 63 6f 6e 73 74 20 73 69 6e 67 6c 65 2d 69 74 65 6d 20 70 6f 69 6e 74 65 72 2e | get.a.const.single-item.pointer. |
| 2e6a0 | 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" |
| 2e6c0 | 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=" |
| 2e6e0 | 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 78 5f 70 74 | tok-builtin">@TypeOf</span>(x_pt |
| 2e700 | 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 63 6f 6e 73 | r).==.*<span.class="tok-kw">cons |
| 2e720 | 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"> |
| 2e740 | 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 22 74 | i32</span>);......<span.class="t |
| 2e760 | 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 49 66 20 79 6f 75 20 77 61 6e 74 20 74 6f 20 6d 75 | ok-comment">//.If.you.want.to.mu |
| 2e780 | 74 61 74 65 20 74 68 65 20 76 61 6c 75 65 2c 20 79 6f 75 27 64 20 6e 65 65 64 20 61 6e 20 61 64 | tate.the.value,.you'd.need.an.ad |
| 2e7a0 | 64 72 65 73 73 20 6f 66 20 61 20 6d 75 74 61 62 6c 65 20 76 61 72 69 61 62 6c 65 3a 3c 2f 73 70 | dress.of.a.mutable.variable:</sp |
| 2e7c0 | 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 |
| 2e7e0 | 3c 2f 73 70 61 6e 3e 20 79 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | </span>.y:.<span.class="tok-type |
| 2e800 | 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- |
| 2e820 | 6e 75 6d 62 65 72 22 3e 35 36 37 38 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 | number">5678</span>;.....<span.c |
| 2e840 | 6c 61 73 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 5f 70 74 72 | lass="tok-kw">const</span>.y_ptr |
| 2e860 | 20 3d 20 26 61 6d 70 3b 79 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | .=.&y;.....<span.class="tok- |
| 2e880 | 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 |
| 2e8a0 | 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 79 | s="tok-builtin">@TypeOf</span>(y |
| 2e8c0 | 5f 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 74 79 70 65 22 | _ptr).==.*<span.class="tok-type" |
| 2e8e0 | 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 79 5f 70 74 72 2e 2a 20 2b 3d 20 3c 73 70 | >i32</span>);.....y_ptr.*.+=.<sp |
| 2e900 | 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>;. |
| 2e920 | 20 20 20 20 3c 73 70 61 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 |
| 2e940 | 61 6e 3e 20 65 78 70 65 63 74 28 79 5f 70 74 72 2e 2a 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | an>.expect(y_ptr.*.==.<span.clas |
| 2e960 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 36 37 39 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a | s="tok-number">5679</span>);.}.. |
| 2e980 | 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> |
| 2e9a0 | 20 3c 73 70 61 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 |
| 2e9c0 | 6e 74 65 72 20 61 72 72 61 79 20 61 63 63 65 73 73 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b | nter.array.access"</span>.{ |
| 2e9e0 | 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">/ |
| 2ea00 | 2f 20 54 61 6b 69 6e 67 20 61 6e 20 61 64 64 72 65 73 73 20 6f 66 20 61 6e 20 69 6e 64 69 76 69 | /.Taking.an.address.of.an.indivi |
| 2ea20 | 64 75 61 6c 20 65 6c 65 6d 65 6e 74 20 67 69 76 65 73 20 61 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 | dual.element.gives.a</span>..... |
| 2ea40 | 3c 73 70 61 6e 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 69 6e | <span.class="tok-comment">//.sin |
| 2ea60 | 67 6c 65 2d 69 74 65 6d 20 70 6f 69 6e 74 65 72 2e 20 54 68 69 73 20 6b 69 6e 64 20 6f 66 20 70 | gle-item.pointer..This.kind.of.p |
| 2ea80 | 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 |
| 2eaa0 | 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 64 6f 65 73 20 6e 6f 74 20 73 75 70 70 6f 72 74 20 | ok-comment">//.does.not.support. |
| 2eac0 | 70 6f 69 6e 74 65 72 20 61 72 69 74 68 6d 65 74 69 63 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c | pointer.arithmetic.</span>.....< |
| 2eae0 | 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 |
| 2eb00 | 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" |
| 2eb20 | 3e 75 38 3c 2f 73 70 61 6e 3e 7b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | >u8</span>{.<span.class="tok-num |
| 2eb40 | 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ber">1</span>,.<span.class="tok- |
| 2eb60 | 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 |
| 2eb80 | 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 |
| 2eba0 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c | ="tok-number">4</span>,.<span.cl |
| 2ebc0 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e | ass="tok-number">5</span>,.<span |
| 2ebe0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 36 3c 2f 73 70 61 6e 3e 2c 20 3c 73 | .class="tok-number">6</span>,.<s |
| 2ec00 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 37 3c 2f 73 70 61 6e 3e 2c | pan.class="tok-number">7</span>, |
| 2ec20 | 20 3c 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 |
| 2ec40 | 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 39 3c 2f | n>,.<span.class="tok-number">9</ |
| 2ec60 | 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"> |
| 2ec80 | 31 30 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | 10</span>.};.....<span.class="to |
| 2eca0 | 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 70 74 72 20 3d 20 26 61 6d 70 3b 61 72 | k-kw">const</span>.ptr.=.&ar |
| 2ecc0 | 72 61 79 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f | ray[<span.class="tok-number">2</ |
| 2ece0 | 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 22 | span>];.....<span.class="tok-kw" |
| 2ed00 | 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=" |
| 2ed20 | 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 70 74 72 29 | tok-builtin">@TypeOf</span>(ptr) |
| 2ed40 | 20 3d 3d 20 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f | .==.*<span.class="tok-type">u8</ |
| 2ed60 | 73 70 61 6e 3e 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | span>);......<span.class="tok-kw |
| 2ed80 | 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 61 72 72 61 79 5b 3c 73 70 61 6e 20 | ">try</span>.expect(array[<span. |
| 2eda0 | 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 3d 20 | class="tok-number">2</span>].==. |
| 2edc0 | 3c 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 |
| 2ede0 | 3e 29 3b 0a 20 20 20 20 70 74 72 2e 2a 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | >);.....ptr.*.+=.<span.class="to |
| 2ee00 | 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 |
| 2ee20 | 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 |
| 2ee40 | 72 72 61 79 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c | rray[<span.class="tok-number">2< |
| 2ee60 | 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 |
| 2ee80 | 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | er">4</span>);.}..<span.class="t |
| 2eea0 | 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=" |
| 2eec0 | 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 6c 69 63 65 20 73 79 6e 74 61 78 26 71 75 6f 74 | tok-str">"slice.syntax" |
| 2eee0 | 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- |
| 2ef00 | 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 47 65 74 20 61 20 70 6f 69 6e 74 65 72 20 74 6f 20 61 20 76 | comment">//.Get.a.pointer.to.a.v |
| 2ef20 | 61 72 69 61 62 6c 65 3a 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ariable:</span>.....<span.class= |
| 2ef40 | 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 |
| 2ef60 | 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 |
| 2ef80 | 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>; |
| 2efa0 | 0a 20 20 20 20 3c 73 70 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< |
| 2efc0 | 2f 73 70 61 6e 3e 20 78 5f 70 74 72 20 3d 20 26 61 6d 70 3b 78 3b 0a 0a 20 20 20 20 3c 73 70 61 | /span>.x_ptr.=.&x;......<spa |
| 2efe0 | 6e 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 6e 76 65 72 74 | n.class="tok-comment">//.Convert |
| 2f000 | 20 74 6f 20 61 72 72 61 79 20 70 6f 69 6e 74 65 72 20 75 73 69 6e 67 20 73 6c 69 63 65 20 73 79 | .to.array.pointer.using.slice.sy |
| 2f020 | 6e 74 61 78 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 | ntax:</span>.....<span.class="to |
| 2f040 | 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 78 5f 61 72 72 61 79 5f 70 74 72 20 3d | k-kw">const</span>.x_array_ptr.= |
| 2f060 | 20 78 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 72 22 3e | .x_ptr[<span.class="tok-number"> |
| 2f080 | 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 6d 62 65 | 0</span>..<span.class="tok-numbe |
| 2f0a0 | 72 22 3e 31 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 | r">1</span>];.....<span.class="t |
| 2f0c0 | 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 |
| 2f0e0 | 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 |
| 2f100 | 3e 28 78 5f 61 72 72 61 79 5f 70 74 72 29 20 3d 3d 20 2a 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d | >(x_array_ptr).==.*[<span.class= |
| 2f120 | 22 74 6f 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 | "tok-number">1</span>]<span.clas |
| 2f140 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 20 20 20 20 3c | s="tok-type">i32</span>);......< |
| 2f160 | 73 70 61 6e 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 72 | span.class="tok-comment">//.Coer |
| 2f180 | 63 65 20 74 6f 20 6d 61 6e 79 2d 69 74 65 6d 20 70 6f 69 6e 74 65 72 3a 3c 2f 73 70 61 6e 3e 0a | ce.to.many-item.pointer:</span>. |
| 2f1a0 | 20 20 20 20 3c 73 70 61 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</ |
| 2f1c0 | 73 70 61 6e 3e 20 78 5f 6d 61 6e 79 5f 70 74 72 3a 20 5b 2a 5d 3c 73 70 61 6e 20 63 6c 61 73 73 | span>.x_many_ptr:.[*]<span.class |
| 2f1e0 | 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 78 5f 61 72 72 61 79 | ="tok-type">i32</span>.=.x_array |
| 2f200 | 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 3e 74 | _ptr;.....<span.class="tok-kw">t |
| 2f220 | 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 78 5f 6d 61 6e 79 5f 70 74 72 5b 3c 73 70 61 | ry</span>.expect(x_many_ptr[<spa |
| 2f240 | 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>].= |
| 2f260 | 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 34 3c | =.<span.class="tok-number">1234< |
| 2f280 | 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> |
| 2f2a0 | 3c 66 69 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 |
| 2f2c0 | 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 |
| 2f2e0 | 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 69 6e 67 6c 65 5f 69 | mp>$.<kbd>zig.test.test_single_i |
| 2f300 | 74 65 6d 5f 70 6f 69 6e 74 65 72 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 33 20 74 65 73 74 5f 73 | tem_pointer.zig</kbd>.1/3.test_s |
| 2f320 | 69 6e 67 6c 65 5f 69 74 65 6d 5f 70 6f 69 6e 74 65 72 2e 74 65 73 74 2e 61 64 64 72 65 73 73 20 | ingle_item_pointer.test.address. |
| 2f340 | 6f 66 20 73 79 6e 74 61 78 2e 2e 2e 4f 4b 0a 32 2f 33 20 74 65 73 74 5f 73 69 6e 67 6c 65 5f 69 | of.syntax...OK.2/3.test_single_i |
| 2f360 | 74 65 6d 5f 70 6f 69 6e 74 65 72 2e 74 65 73 74 2e 70 6f 69 6e 74 65 72 20 61 72 72 61 79 20 61 | tem_pointer.test.pointer.array.a |
| 2f380 | 63 63 65 73 73 2e 2e 2e 4f 4b 0a 33 2f 33 20 74 65 73 74 5f 73 69 6e 67 6c 65 5f 69 74 65 6d 5f | ccess...OK.3/3.test_single_item_ |
| 2f3a0 | 70 6f 69 6e 74 65 72 2e 74 65 73 74 2e 73 6c 69 63 65 20 73 79 6e 74 61 78 2e 2e 2e 4f 4b 0a 41 | pointer.test.slice.syntax...OK.A |
| 2f3c0 | 6c 6c 20 33 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e | ll.3.tests.passed..</samp></pre> |
| 2f3e0 | 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 69 67 20 | </figure>........<p>........Zig. |
| 2f400 | 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 49 74 27 | supports.pointer.arithmetic..It' |
| 2f420 | 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 72 20 74 | s.better.to.assign.the.pointer.t |
| 2f440 | 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 6d 65 6e | o.<code>[*]T</code>.and.incremen |
| 2f460 | 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 20 64 69 | t.that.variable..For.example,.di |
| 2f480 | 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 65 72 20 | rectly.incrementing.the.pointer. |
| 2f4a0 | 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 0a 20 20 | from.a.slice.will.corrupt.it.... |
| 2f4c0 | 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 |
| 2f4e0 | 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=" |
| 2f500 | 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 2e 7a 69 | file">test_pointer_arithmetic.zi |
| 2f520 | 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> |
| 2f540 | 3c 73 70 61 6e 20 63 6c 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 |
| 2f560 | 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 |
| 2f580 | 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= |
| 2f5a0 | 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> |
| 2f5c0 | 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=" |
| 2f5e0 | 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= |
| 2f600 | 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 6d 65 74 | "tok-str">"pointer.arithmet |
| 2f620 | 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 74 3b 3c | ic.with.many-item.pointer"< |
| 2f640 | 2f 73 70 61 6e 3e 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 |
| 2f660 | 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 61 6e 20 | ">const</span>.array.=.[_]<span. |
| 2f680 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 7b 20 3c 73 70 | class="tok-type">i32</span>{.<sp |
| 2f6a0 | 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>,. |
| 2f6c0 | 3c 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 |
| 2f6e0 | 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 |
| 2f700 | 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 |
| 2f720 | 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- |
| 2f740 | 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 63 6c 61 | kw">var</span>.ptr:.[*]<span.cla |
| 2f760 | 73 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 |
| 2f780 | 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 26 61 6d | lass="tok-type">i32</span>.=.&am |
| 2f7a0 | 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 6b 2d 6b | p;array;......<span.class="tok-k |
| 2f7c0 | 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 20 63 | w">try</span>.expect(ptr[<span.c |
| 2f7e0 | 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 3c | lass="tok-number">0</span>].==.< |
| 2f800 | 73 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> |
| 2f820 | 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 6b 2d 6e | );.....ptr.+=.<span.class="tok-n |
| 2f840 | 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 |
| 2f860 | 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 72 5b | ="tok-kw">try</span>.expect(ptr[ |
| 2f880 | 3c 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 |
| 2f8a0 | 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 32 | >].==.<span.class="tok-number">2 |
| 2f8c0 | 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- |
| 2f8e0 | 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 65 6d 20 | comment">//.slicing.a.many-item. |
| 2f900 | 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 69 76 61 | pointer.without.an.end.is.equiva |
| 2f920 | 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 73 3d 22 | lent.to</span>.....<span.class=" |
| 2f940 | 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 6d 65 74 | tok-comment">//.pointer.arithmet |
| 2f960 | 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 61 72 74 | ic:.`ptr[start..].==.ptr.+.start |
| 2f980 | 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 2d 6b 77 | `</span>.....<span.class="tok-kw |
| 2f9a0 | 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 20 63 6c | ">try</span>.expect(ptr[<span.cl |
| 2f9c0 | 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 3d 3d 20 | ass="tok-number">1</span>..].==. |
| 2f9e0 | 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 22 3e 31 | ptr.+.<span.class="tok-number">1 |
| 2fa00 | 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- |
| 2fa20 | 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 73 75 62 74 72 61 63 74 69 6f 6e 20 62 65 74 77 65 65 6e 20 | comment">//.subtraction.between. |
| 2fa40 | 61 6e 79 20 74 77 6f 20 70 6f 69 6e 74 65 72 73 20 65 78 63 65 70 74 20 73 6c 69 63 65 73 20 62 | any.two.pointers.except.slices.b |
| 2fa60 | 61 73 65 64 20 6f 6e 20 65 6c 65 6d 65 6e 74 20 73 69 7a 65 20 69 73 20 73 75 70 70 6f 72 74 65 | ased.on.element.size.is.supporte |
| 2fa80 | 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 6b 77 | d</span>.....<span.class="tok-kw |
| 2faa0 | 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 26 61 6d 70 3b 70 74 72 5b 3c 73 70 | ">try</span>.expect(&ptr[<sp |
| 2fac0 | 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>]. |
| 2fae0 | 2d 20 26 61 6d 70 3b 70 74 72 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | -.&ptr[<span.class="tok-numb |
| 2fb00 | 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 5d 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | er">0</span>].==.<span.class="to |
| 2fb20 | 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c | k-number">1</span>);.}..<span.cl |
| 2fb40 | 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 |
| 2fb60 | 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 70 6f 69 6e 74 65 72 20 61 72 69 | lass="tok-str">"pointer.ari |
| 2fb80 | 74 68 6d 65 74 69 63 20 77 69 74 68 20 73 6c 69 63 65 73 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e | thmetic.with.slices"</span> |
| 2fba0 | 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< |
| 2fbc0 | 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 22 74 | /span>.array.=.[_]<span.class="t |
| 2fbe0 | 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 7b 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ok-type">i32</span>{.<span.class |
| 2fc00 | 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 |
| 2fc20 | 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 |
| 2fc40 | 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 |
| 2fc60 | 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>. |
| 2fc80 | 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c | };.....<span.class="tok-kw">var< |
| 2fca0 | 2f 73 70 61 6e 3e 20 6c 65 6e 67 74 68 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | /span>.length:.<span.class="tok- |
| 2fcc0 | 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 |
| 2fce0 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 3b 20 3c 73 70 61 6e 20 63 6c | ="tok-number">0</span>;.<span.cl |
| 2fd00 | 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 76 61 72 20 74 6f 20 6d 61 6b 65 | ass="tok-comment">//.var.to.make |
| 2fd20 | 20 69 74 20 72 75 6e 74 69 6d 65 2d 6b 6e 6f 77 6e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 5f 20 3d | .it.runtime-known</span>....._.= |
| 2fd40 | 20 26 61 6d 70 3b 6c 65 6e 67 74 68 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 | .&length;.<span.class="tok-c |
| 2fd60 | 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 73 20 6e 65 76 65 | omment">//.suppress.'var.is.neve |
| 2fd80 | 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 20 20 3c 73 70 61 | r.mutated'.error</span>.....<spa |
| 2fda0 | 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 6c 69 63 | n.class="tok-kw">var</span>.slic |
| 2fdc0 | 65 20 3d 20 61 72 72 61 79 5b 6c 65 6e 67 74 68 2e 2e 61 72 72 61 79 2e 6c 65 6e 5d 3b 0a 0a 20 | e.=.array[length..array.len];... |
| 2fde0 | 20 20 20 3c 73 70 61 6e 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 |
| 2fe00 | 6e 3e 20 65 78 70 65 63 74 28 73 6c 69 63 65 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | n>.expect(slice[<span.class="tok |
| 2fe20 | 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 5d 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | -number">0</span>].==.<span.clas |
| 2fe40 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 | s="tok-number">1</span>);.....<s |
| 2fe60 | 70 61 6e 20 63 6c 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 |
| 2fe80 | 70 65 63 74 28 73 6c 69 63 65 2e 6c 65 6e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | pect(slice.len.==.<span.class="t |
| 2fea0 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 20 20 20 20 73 6c 69 63 65 | ok-number">4</span>);......slice |
| 2fec0 | 2e 70 74 72 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 | .ptr.+=.<span.class="tok-number" |
| 2fee0 | 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- |
| 2ff00 | 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 6e 6f 77 20 74 68 65 20 73 6c 69 63 65 20 69 73 20 69 6e 20 | comment">//.now.the.slice.is.in. |
| 2ff20 | 61 6e 20 62 61 64 20 73 74 61 74 65 20 73 69 6e 63 65 20 6c 65 6e 20 68 61 73 20 6e 6f 74 20 62 | an.bad.state.since.len.has.not.b |
| 2ff40 | 65 65 6e 20 75 70 64 61 74 65 64 3c 2f 73 70 61 6e 3e 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | een.updated</span>......<span.cl |
| 2ff60 | 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 |
| 2ff80 | 6c 69 63 65 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c | lice[<span.class="tok-number">0< |
| 2ffa0 | 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 |
| 2ffc0 | 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | er">2</span>);.....<span.class=" |
| 2ffe0 | 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 73 6c 69 63 65 2e | tok-kw">try</span>.expect(slice. |
| 30000 | 6c 65 6e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e | len.==.<span.class="tok-number"> |
| 30020 | 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 75 72 | 4</span>);.}</code></pre></figur |
| 30040 | 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 |
| 30060 | 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>< |
| 30080 | 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 |
| 300a0 | 72 5f 61 72 69 74 68 6d 65 74 69 63 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 32 20 74 65 73 74 5f | r_arithmetic.zig</kbd>.1/2.test_ |
| 300c0 | 70 6f 69 6e 74 65 72 5f 61 72 69 74 68 6d 65 74 69 63 2e 74 65 73 74 2e 70 6f 69 6e 74 65 72 20 | pointer_arithmetic.test.pointer. |
| 300e0 | 61 72 69 74 68 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 | arithmetic.with.many-item.pointe |
| 30100 | 72 2e 2e 2e 4f 4b 0a 32 2f 32 20 74 65 73 74 5f 70 6f 69 6e 74 65 72 5f 61 72 69 74 68 6d 65 74 | r...OK.2/2.test_pointer_arithmet |
| 30120 | 69 63 2e 74 65 73 74 2e 70 6f 69 6e 74 65 72 20 61 72 69 74 68 6d 65 74 69 63 20 77 69 74 68 20 | ic.test.pointer.arithmetic.with. |
| 30140 | 73 6c 69 63 65 73 2e 2e 2e 4f 4b 0a 41 6c 6c 20 32 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a | slices...OK.All.2.tests.passed.. |
| 30160 | 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 |
| 30180 | 3e 0a 20 20 20 20 20 20 20 20 49 6e 20 5a 69 67 2c 20 77 65 20 67 65 6e 65 72 61 6c 6c 79 20 70 | >.........In.Zig,.we.generally.p |
| 301a0 | 72 65 66 65 72 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 | refer.<a.href="#Slices">Slices</ |
| 301c0 | 61 3e 20 72 61 74 68 65 72 20 74 68 61 6e 20 3c 61 20 68 72 65 66 3d 22 23 53 65 6e 74 69 6e 65 | a>.rather.than.<a.href="#Sentine |
| 301e0 | 6c 2d 54 65 72 6d 69 6e 61 74 65 64 2d 50 6f 69 6e 74 65 72 73 22 3e 53 65 6e 74 69 6e 65 6c 2d | l-Terminated-Pointers">Sentinel- |
| 30200 | 54 65 72 6d 69 6e 61 74 65 64 20 50 6f 69 6e 74 65 72 73 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 20 | Terminated.Pointers</a>......... |
| 30220 | 20 59 6f 75 20 63 61 6e 20 74 75 72 6e 20 61 6e 20 61 72 72 61 79 20 6f 72 20 70 6f 69 6e 74 65 | .You.can.turn.an.array.or.pointe |
| 30240 | 72 20 69 6e 74 6f 20 61 20 73 6c 69 63 65 20 75 73 69 6e 67 20 73 6c 69 63 65 20 73 79 6e 74 61 | r.into.a.slice.using.slice.synta |
| 30260 | 78 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 | x........</p>.......<p>......... |
| 30280 | 53 6c 69 63 65 73 20 68 61 76 65 20 62 6f 75 6e 64 73 20 63 68 65 63 6b 69 6e 67 20 61 6e 64 20 | Slices.have.bounds.checking.and. |
| 302a0 | 61 72 65 20 74 68 65 72 65 66 6f 72 65 20 70 72 6f 74 65 63 74 65 64 0a 20 20 20 20 20 20 20 20 | are.therefore.protected......... |
| 302c0 | 61 67 61 69 6e 73 74 20 74 68 69 73 20 6b 69 6e 64 20 6f 66 20 49 6c 6c 65 67 61 6c 20 42 65 68 | against.this.kind.of.Illegal.Beh |
| 302e0 | 61 76 69 6f 72 2e 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 | avior..This.is.one.reason....... |
| 30300 | 20 20 77 65 20 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 0a | ..we.prefer.slices.to.pointers.. |
| 30320 | 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 |
| 30340 | 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 |
| 30360 | 3d 22 66 69 6c 65 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 | ="file">test_slice_bounds.zig</c |
| 30380 | 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 |
| 303a0 | 6e 20 63 6c 61 73 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 |
| 303c0 | 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" |
| 303e0 | 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 |
| 30400 | 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 |
| 30420 | 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- |
| 30440 | 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 |
| 30460 | 2d 73 74 72 22 3e 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 | -str">"pointer.slicing" |
| 30480 | 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- |
| 304a0 | 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 61 72 72 61 79 20 3d 20 5b 5f 5d 3c 73 70 61 6e 20 | kw">var</span>.array.=.[_]<span. |
| 304c0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 7b 20 3c 73 70 61 | class="tok-type">u8</span>{.<spa |
| 304e0 | 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>,.< |
| 30500 | 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> |
| 30520 | 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 |
| 30540 | 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< |
| 30560 | 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" |
| 30580 | 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 |
| 305a0 | 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 |
| 305c0 | 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 |
| 305e0 | 6b 2d 6e 75 6d 62 65 72 22 3e 38 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | k-number">8</span>,.<span.class= |
| 30600 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 39 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 | "tok-number">9</span>,.<span.cla |
| 30620 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 20 20 20 | ss="tok-number">10</span>.};.... |
| 30640 | 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> |
| 30660 | 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 79 70 65 22 3e 75 | .start:.<span.class="tok-type">u |
| 30680 | 73 69 7a 65 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | size</span>.=.<span.class="tok-n |
| 306a0 | 75 6d 62 65 72 22 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 | umber">2</span>;.<span.class="to |
| 306c0 | 6b 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 | k-comment">//.var.to.make.it.run |
| 306e0 | 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 73 | time-known</span>....._.=.&s |
| 30700 | 74 61 72 74 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 | tart;.<span.class="tok-comment"> |
| 30720 | 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 |
| 30740 | 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= |
| 30760 | 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 6c 69 63 65 20 3d 20 61 72 | "tok-kw">const</span>.slice.=.ar |
| 30780 | 72 61 79 5b 73 74 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 | ray[start..<span.class="tok-numb |
| 307a0 | 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 5d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | er">4</span>];.....<span.class=" |
| 307c0 | 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 73 6c 69 63 65 2e | tok-kw">try</span>.expect(slice. |
| 307e0 | 6c 65 6e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e | len.==.<span.class="tok-number"> |
| 30800 | 32 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | 2</span>);......<span.class="tok |
| 30820 | 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 61 72 72 61 79 5b 3c 73 70 | -kw">try</span>.expect(array[<sp |
| 30840 | 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 5d 20 | an.class="tok-number">3</span>]. |
| 30860 | 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 3c 2f 73 | ==.<span.class="tok-number">4</s |
| 30880 | 70 61 6e 3e 29 3b 0a 20 20 20 20 73 6c 69 63 65 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | pan>);.....slice[<span.class="to |
| 308a0 | 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 5d 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 | k-number">1</span>].+=.<span.cla |
| 308c0 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 | ss="tok-number">1</span>;.....<s |
| 308e0 | 70 61 6e 20 63 6c 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 |
| 30900 | 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 |
| 30920 | 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 5d 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | er">3</span>].==.<span.class="to |
| 30940 | 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 70 | k-number">5</span>);.}</code></p |
| 30960 | 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. |
| 30980 | 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 |
| 309a0 | 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 |
| 309c0 | 65 73 74 5f 73 6c 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 | est_slice_bounds.zig</kbd>.1/1.t |
| 309e0 | 65 73 74 5f 73 6c 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 | est_slice_bounds.test.pointer.sl |
| 30a00 | 69 63 69 6e 67 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c | icing...OK.All.1.tests.passed..< |
| 30a20 | 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> |
| 30a40 | 50 6f 69 6e 74 65 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 | Pointers.work.at.compile-time.to |
| 30a60 | 6f 2c 20 61 73 20 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 | o,.as.long.as.the.code.does.not. |
| 30a80 | 64 65 70 65 6e 64 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 | depend.on.......an.undefined.mem |
| 30aa0 | 6f 72 79 20 6c 61 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 | ory.layout:</p>.......<figure><f |
| 30ac0 | 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. |
| 30ae0 | 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 70 6f 69 6e 74 | class="file">test_comptime_point |
| 30b00 | 65 72 73 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e | ers.zig</cite></figcaption><pre> |
| 30b20 | 3c 63 6f 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 |
| 30b40 | 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 |
| 30b60 | 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. |
| 30b80 | 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"< |
| 30ba0 | 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 |
| 30bc0 | 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. |
| 30be0 | 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 65 20 70 | class="tok-str">"comptime.p |
| 30c00 | 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 |
| 30c20 | 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>. |
| 30c40 | 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 |
| 30c60 | 61 72 3c 2f 73 70 61 6e 3e 20 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | ar</span>.x:.<span.class="tok-ty |
| 30c80 | 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 |
| 30ca0 | 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 70 61 | k-number">1</span>;.........<spa |
| 30cc0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 70 74 | n.class="tok-kw">const</span>.pt |
| 30ce0 | 72 20 3d 20 26 61 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 | r.=.&x;.........ptr.*.+=.<sp |
| 30d00 | 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>;. |
| 30d20 | 20 20 20 20 20 20 20 20 78 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | ........x.+=.<span.class="tok-nu |
| 30d40 | 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 70 61 6e 20 63 6c | mber">1</span>;.........<span.cl |
| 30d60 | 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 |
| 30d80 | 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" |
| 30da0 | 3e 33 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 | >3</span>);.....}.}</code></pre> |
| 30dc0 | 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 |
| 30de0 | 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 |
| 30e00 | 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 |
| 30e20 | 5f 63 6f 6d 70 74 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 | _comptime_pointers.zig</kbd>.1/1 |
| 30e40 | 20 74 65 73 74 5f 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 | .test_comptime_pointers.test.com |
| 30e60 | 70 74 69 6d 65 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 | ptime.pointers...OK.All.1.tests. |
| 30e80 | 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>.. |
| 30ea0 | 20 20 20 20 20 20 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 | ......<p>To.convert.an.integer.a |
| 30ec0 | 64 64 72 65 73 73 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 | ddress.into.a.pointer,.use.<code |
| 30ee0 | 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 46 | ><span.class="tok-builtin">@ptrF |
| 30f00 | 72 6f 6d 49 6e 74 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 | romInt</span></code>........To.c |
| 30f20 | 6f 6e 76 65 72 74 20 61 20 70 6f 69 6e 74 65 72 20 74 6f 20 61 6e 20 69 6e 74 65 67 65 72 2c 20 | onvert.a.pointer.to.an.integer,. |
| 30f40 | 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 |
| 30f60 | 69 6e 22 3e 40 69 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 | in">@intFromPtr</span></code>:</ |
| 30f80 | 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 |
| 30fa0 | 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"> |
| 30fc0 | 74 65 73 74 5f 69 6e 74 65 67 65 72 5f 70 6f 69 6e 74 65 72 5f 63 6f 6e 76 65 72 73 69 6f 6e 2e | test_integer_pointer_conversion. |
| 30fe0 | 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 |
| 31000 | 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 |
| 31020 | 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 |
| 31040 | 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 |
| 31060 | 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 |
| 31080 | 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 |
| 310a0 | 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 |
| 310c0 | 73 3d 22 74 6f 6b 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 | s="tok-str">"@intFromPtr.an |
| 310e0 | 64 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 20 | d.@ptrFromInt"</span>.{.... |
| 31100 | 20 3c 73 70 61 6e 20 63 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 |
| 31120 | 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 74 79 70 65 22 3e | n>.ptr:.*<span.class="tok-type"> |
| 31140 | 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 |
| 31160 | 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. |
| 31180 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 64 65 61 64 62 65 65 30 3c 2f 73 | class="tok-number">0xdeadbee0</s |
| 311a0 | 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"> |
| 311c0 | 63 6f 6e 73 74 3c 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 | const</span>.addr.=.<span.class= |
| 311e0 | 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 70 61 6e 3e | "tok-builtin">@intFromPtr</span> |
| 31200 | 28 70 74 72 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | (ptr);.....<span.class="tok-kw"> |
| 31220 | 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 |
| 31240 | 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 64 64 72 29 | ok-builtin">@TypeOf</span>(addr) |
| 31260 | 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 | .==.<span.class="tok-type">usize |
| 31280 | 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 |
| 312a0 | 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 73 70 | w">try</span>.expect(addr.==.<sp |
| 312c0 | 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 65 30 | an.class="tok-number">0xdeadbee0 |
| 312e0 | 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 |
| 31300 | 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 |
| 31320 | 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 |
| 31340 | 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 74 65 67 65 72 | amp>$.<kbd>zig.test.test_integer |
| 31360 | 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 6b 62 64 3e 0a 31 2f | _pointer_conversion.zig</kbd>.1/ |
| 31380 | 31 20 74 65 73 74 5f 69 6e 74 65 67 65 72 5f 70 6f 69 6e 74 65 72 5f 63 6f 6e 76 65 72 73 69 6f | 1.test_integer_pointer_conversio |
| 313a0 | 6e 2e 74 65 73 74 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 | n.test.@intFromPtr.and.@ptrFromI |
| 313c0 | 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 2f 73 61 | nt...OK.All.1.tests.passed..</sa |
| 313e0 | 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 5a 69 67 | mp></pre></figure>........<p>Zig |
| 31400 | 20 69 73 20 61 62 6c 65 20 74 6f 20 70 72 65 73 65 72 76 65 20 6d 65 6d 6f 72 79 20 61 64 64 72 | .is.able.to.preserve.memory.addr |
| 31420 | 65 73 73 65 73 20 69 6e 20 63 6f 6d 70 74 69 6d 65 20 63 6f 64 65 2c 20 61 73 20 6c 6f 6e 67 20 | esses.in.comptime.code,.as.long. |
| 31440 | 61 73 0a 20 20 20 20 20 20 74 68 65 20 70 6f 69 6e 74 65 72 20 69 73 20 6e 65 76 65 72 20 64 65 | as.......the.pointer.is.never.de |
| 31460 | 72 65 66 65 72 65 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 | referenced:</p>.......<figure><f |
| 31480 | 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. |
| 314a0 | 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 70 6f 69 6e 74 | class="file">test_comptime_point |
| 314c0 | 65 72 5f 63 6f 6e 76 65 72 73 69 6f 6e 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 | er_conversion.zig</cite></figcap |
| 314e0 | 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 |
| 31500 | 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 |
| 31520 | 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 |
| 31540 | 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">" |
| 31560 | 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 |
| 31580 | 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 |
| 315a0 | 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">" |
| 315c0 | 63 6f 6d 70 74 69 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 | comptime.@ptrFromInt"</span |
| 315e0 | 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d | >.{.....<span.class="tok-kw">com |
| 31600 | 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | ptime</span>.{.........<span.cla |
| 31620 | 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 5a 69 67 20 69 73 20 61 62 6c 65 20 | ss="tok-comment">//.Zig.is.able. |
| 31640 | 74 6f 20 64 6f 20 74 68 69 73 20 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 2c 20 61 73 20 6c | to.do.this.at.compile-time,.as.l |
| 31660 | 6f 6e 67 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 | ong.as</span>.........<span.clas |
| 31680 | 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 70 74 72 20 69 73 20 6e 65 76 65 72 20 | s="tok-comment">//.ptr.is.never. |
| 316a0 | 64 65 72 65 66 65 72 65 6e 63 65 64 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 3c 73 70 | dereferenced.</span>.........<sp |
| 316c0 | 61 6e 20 63 6c 61 73 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 |
| 316e0 | 74 72 3a 20 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c | tr:.*<span.class="tok-type">i32< |
| 31700 | 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 | /span>.=.<span.class="tok-builti |
| 31720 | 6e 22 3e 40 70 74 72 46 72 6f 6d 49 6e 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 | n">@ptrFromInt</span>(<span.clas |
| 31740 | 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 3e | s="tok-number">0xdeadbee0</span> |
| 31760 | 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"> |
| 31780 | 63 6f 6e 73 74 3c 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 | const</span>.addr.=.<span.class= |
| 317a0 | 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 70 61 6e 3e | "tok-builtin">@intFromPtr</span> |
| 317c0 | 28 70 74 72 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 | (ptr);.........<span.class="tok- |
| 317e0 | 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 |
| 31800 | 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 61 | s="tok-builtin">@TypeOf</span>(a |
| 31820 | 64 64 72 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 75 | ddr).==.<span.class="tok-type">u |
| 31840 | 73 69 7a 65 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | size</span>);.........<span.clas |
| 31860 | 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 64 64 | s="tok-kw">try</span>.expect(add |
| 31880 | 72 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 | r.==.<span.class="tok-number">0x |
| 318a0 | 64 65 61 64 62 65 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 | deadbee0</span>);.....}.}</code> |
| 318c0 | 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 |
| 318e0 | 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 |
| 31900 | 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 |
| 31920 | 74 20 74 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 70 6f 69 6e 74 65 72 5f 63 6f 6e 76 65 72 73 69 | t.test_comptime_pointer_conversi |
| 31940 | 6f 6e 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 70 | on.zig</kbd>.1/1.test_comptime_p |
| 31960 | 6f 69 6e 74 65 72 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 | ointer_conversion.test.comptime. |
| 31980 | 40 70 74 72 46 72 6f 6d 49 6e 74 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 | @ptrFromInt...OK.All.1.tests.pas |
| 319a0 | 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>..... |
| 319c0 | 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 70 74 72 43 61 73 74 22 3e | ...<p>.......<a.href="#ptrCast"> |
| 319e0 | 40 70 74 72 43 61 73 74 3c 2f 61 3e 20 63 6f 6e 76 65 72 74 73 20 61 20 70 6f 69 6e 74 65 72 27 | @ptrCast</a>.converts.a.pointer' |
| 31a00 | 73 20 65 6c 65 6d 65 6e 74 20 74 79 70 65 20 74 6f 20 61 6e 6f 74 68 65 72 2e 20 54 68 69 73 0a | s.element.type.to.another..This. |
| 31a20 | 20 20 20 20 20 20 63 72 65 61 74 65 73 20 61 20 6e 65 77 20 70 6f 69 6e 74 65 72 20 74 68 61 74 | ......creates.a.new.pointer.that |
| 31a40 | 20 63 61 6e 20 63 61 75 73 65 20 75 6e 64 65 74 65 63 74 61 62 6c 65 20 49 6c 6c 65 67 61 6c 20 | .can.cause.undetectable.Illegal. |
| 31a60 | 42 65 68 61 76 69 6f 72 0a 20 20 20 20 20 20 64 65 70 65 6e 64 69 6e 67 20 6f 6e 20 74 68 65 20 | Behavior.......depending.on.the. |
| 31a80 | 6c 6f 61 64 73 20 61 6e 64 20 73 74 6f 72 65 73 20 74 68 61 74 20 70 61 73 73 20 74 68 72 6f 75 | loads.and.stores.that.pass.throu |
| 31aa0 | 67 68 20 69 74 2e 20 47 65 6e 65 72 61 6c 6c 79 2c 20 6f 74 68 65 72 0a 20 20 20 20 20 20 6b 69 | gh.it..Generally,.other.......ki |
| 31ac0 | 6e 64 73 20 6f 66 20 74 79 70 65 20 63 6f 6e 76 65 72 73 69 6f 6e 73 20 61 72 65 20 70 72 65 66 | nds.of.type.conversions.are.pref |
| 31ae0 | 65 72 61 62 6c 65 20 74 6f 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 | erable.to.......<code><span.clas |
| 31b00 | 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 70 74 72 43 61 73 74 3c 2f 73 70 61 6e 3e 3c | s="tok-builtin">@ptrCast</span>< |
| 31b20 | 2f 63 6f 64 65 3e 20 69 66 20 70 6f 73 73 69 62 6c 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 | /code>.if.possible........</p>.. |
| 31b40 | 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=" |
| 31b60 | 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 |
| 31b80 | 5f 70 6f 69 6e 74 65 72 5f 63 61 73 74 69 6e 67 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 | _pointer_casting.zig</cite></fig |
| 31ba0 | 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=" |
| 31bc0 | 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 |
| 31be0 | 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 |
| 31c00 | 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">" |
| 31c20 | 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=" |
| 31c40 | 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 |
| 31c60 | 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=" |
| 31c80 | 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= |
| 31ca0 | 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 70 6f 69 6e 74 65 72 20 63 61 73 74 69 6e 67 26 | "tok-str">"pointer.casting& |
| 31cc0 | 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=" |
| 31ce0 | 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 62 79 74 65 73 20 3c 73 70 61 6e | tok-kw">const</span>.bytes.<span |
| 31d00 | 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 |
| 31d20 | 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 66 3c | an.class="tok-builtin">@alignOf< |
| 31d40 | 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 | /span>(<span.class="tok-type">u3 |
| 31d60 | 32 3c 2f 73 70 61 6e 3e 29 29 20 3d 20 5b 5f 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | 2</span>)).=.[_]<span.class="tok |
| 31d80 | 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 |
| 31da0 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 31 32 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c | ok-number">0x12</span>,.<span.cl |
| 31dc0 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 31 32 3c 2f 73 70 61 6e 3e 2c 20 3c 73 | ass="tok-number">0x12</span>,.<s |
| 31de0 | 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 |
| 31e00 | 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 |
| 31e20 | 32 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | 2</span>.};.....<span.class="tok |
| 31e40 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 75 33 32 5f 70 74 72 3a 20 2a 3c 73 70 61 | -kw">const</span>.u32_ptr:.*<spa |
| 31e60 | 6e 20 63 6c 61 73 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 |
| 31e80 | 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>. |
| 31ea0 | 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 72 | =.<span.class="tok-builtin">@ptr |
| 31ec0 | 43 61 73 74 3c 2f 73 70 61 6e 3e 28 26 61 6d 70 3b 62 79 74 65 73 29 3b 0a 20 20 20 20 3c 73 70 | Cast</span>(&bytes);.....<sp |
| 31ee0 | 61 6e 20 63 6c 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 |
| 31f00 | 65 63 74 28 75 33 32 5f 70 74 72 2e 2a 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ect(u32_ptr.*.==.<span.class="to |
| 31f20 | 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 31 32 31 32 31 32 31 32 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 20 | k-number">0x12121212</span>);... |
| 31f40 | 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">//. |
| 31f60 | 45 76 65 6e 20 74 68 69 73 20 65 78 61 6d 70 6c 65 20 69 73 20 63 6f 6e 74 72 69 76 65 64 20 2d | Even.this.example.is.contrived.- |
| 31f80 | 20 74 68 65 72 65 20 61 72 65 20 62 65 74 74 65 72 20 77 61 79 73 20 74 6f 20 64 6f 20 74 68 65 | .there.are.better.ways.to.do.the |
| 31fa0 | 20 61 62 6f 76 65 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 | .above.than</span>.....<span.cla |
| 31fc0 | 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 70 6f 69 6e 74 65 72 20 63 61 73 74 | ss="tok-comment">//.pointer.cast |
| 31fe0 | 69 6e 67 2e 20 46 6f 72 20 65 78 61 6d 70 6c 65 2c 20 75 73 69 6e 67 20 61 20 73 6c 69 63 65 20 | ing..For.example,.using.a.slice. |
| 32000 | 6e 61 72 72 6f 77 69 6e 67 20 63 61 73 74 3a 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e | narrowing.cast:</span>.....<span |
| 32020 | 20 63 6c 61 73 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 32 | .class="tok-kw">const</span>.u32 |
| 32040 | 5f 76 61 6c 75 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 3c 73 | _value.=.std.mem.bytesAsSlice(<s |
| 32060 | 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>, |
| 32080 | 20 62 79 74 65 73 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e | .bytes[<span.class="tok-number"> |
| 320a0 | 30 3c 2f 73 70 61 6e 3e 2e 2e 5d 29 5b 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 |
| 320c0 | 6d 62 65 72 22 3e 30 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 | mber">0</span>];.....<span.class |
| 320e0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 75 33 32 5f | ="tok-kw">try</span>.expect(u32_ |
| 32100 | 76 61 6c 75 65 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | value.==.<span.class="tok-number |
| 32120 | 22 3e 30 78 31 32 31 32 31 32 31 32 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e | ">0x12121212</span>);......<span |
| 32140 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 41 6e 64 20 65 76 65 6e | .class="tok-comment">//.And.even |
| 32160 | 20 61 6e 6f 74 68 65 72 20 77 61 79 2c 20 74 68 65 20 6d 6f 73 74 20 73 74 72 61 69 67 68 74 66 | .another.way,.the.most.straightf |
| 32180 | 6f 72 77 61 72 64 20 77 61 79 20 74 6f 20 64 6f 20 69 74 3a 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 | orward.way.to.do.it:</span>..... |
| 321a0 | 3c 73 70 61 6e 20 63 6c 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>. |
| 321c0 | 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" |
| 321e0 | 3e 40 61 73 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | >@as</span>(<span.class="tok-typ |
| 32200 | 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | e">u32</span>,.<span.class="tok- |
| 32220 | 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 62 79 74 65 73 29 29 | builtin">@bitCast</span>(bytes)) |
| 32240 | 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 31 | .==.<span.class="tok-number">0x1 |
| 32260 | 32 31 32 31 32 31 32 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | 2121212</span>);.}..<span.class= |
| 32280 | 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 |
| 322a0 | 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 63 68 69 6c 64 20 74 | ="tok-str">"pointer.child.t |
| 322c0 | 79 70 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | ype"</span>.{.....<span.cla |
| 322e0 | 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 70 6f 69 6e 74 65 72 20 74 79 70 65 | ss="tok-comment">//.pointer.type |
| 32300 | 73 20 68 61 76 65 20 61 20 60 63 68 69 6c 64 60 20 66 69 65 6c 64 20 77 68 69 63 68 20 74 65 6c | s.have.a.`child`.field.which.tel |
| 32320 | 6c 73 20 79 6f 75 20 74 68 65 20 74 79 70 65 20 74 68 65 79 20 70 6f 69 6e 74 20 74 6f 2e 3c 2f | ls.you.the.type.they.point.to.</ |
| 32340 | 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 |
| 32360 | 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 |
| 32380 | 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 70 | k-builtin">@typeInfo</span>(*<sp |
| 323a0 | 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 2e | an.class="tok-type">u32</span>). |
| 323c0 | 70 6f 69 6e 74 65 72 2e 63 68 69 6c 64 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | pointer.child.==.<span.class="to |
| 323e0 | 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 | k-type">u32</span>);.}</code></p |
| 32400 | 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. |
| 32420 | 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 |
| 32440 | 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 |
| 32460 | 65 73 74 5f 70 6f 69 6e 74 65 72 5f 63 61 73 74 69 6e 67 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f | est_pointer_casting.zig</kbd>.1/ |
| 32480 | 32 20 74 65 73 74 5f 70 6f 69 6e 74 65 72 5f 63 61 73 74 69 6e 67 2e 74 65 73 74 2e 70 6f 69 6e | 2.test_pointer_casting.test.poin |
| 324a0 | 74 65 72 20 63 61 73 74 69 6e 67 2e 2e 2e 4f 4b 0a 32 2f 32 20 74 65 73 74 5f 70 6f 69 6e 74 65 | ter.casting...OK.2/2.test_pointe |
| 324c0 | 72 5f 63 61 73 74 69 6e 67 2e 74 65 73 74 2e 70 6f 69 6e 74 65 72 20 63 68 69 6c 64 20 74 79 70 | r_casting.test.pointer.child.typ |
| 324e0 | 65 2e 2e 2e 4f 4b 0a 41 6c 6c 20 32 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 73 61 6d | e...OK.All.2.tests.passed..</sam |
| 32500 | 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. |
| 32520 | 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 4f 70 74 69 | also:</p><ul>.<li><a.href="#Opti |
| 32540 | 6f 6e 61 6c 2d 50 6f 69 6e 74 65 72 73 22 3e 4f 70 74 69 6f 6e 61 6c 20 50 6f 69 6e 74 65 72 73 | onal-Pointers">Optional.Pointers |
| 32560 | 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 72 6f 6d 49 | </a></li>.<li><a.href="#ptrFromI |
| 32580 | 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 3e 3c 61 20 | nt">@ptrFromInt</a></li>.<li><a. |
| 325a0 | 68 72 65 66 3d 22 23 69 6e 74 46 72 6f 6d 50 74 72 22 3e 40 69 6e 74 46 72 6f 6d 50 74 72 3c 2f | href="#intFromPtr">@intFromPtr</ |
| 325c0 | 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 74 65 72 73 | a></li>.<li><a.href="#C-Pointers |
| 325e0 | 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 0a 20 20 20 | ">C.Pointers</a></li>.</ul>..... |
| 32600 | 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 3d 22 23 74 | ...<h3.id="volatile"><a.href="#t |
| 32620 | 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 20 63 6c 61 | oc-volatile">volatile</a>.<a.cla |
| 32640 | 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 3c 2f 61 3e | ss="hdr".href="#volatile">..</a> |
| 32660 | 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 6f 72 65 73 | </h3>........<p>Loads.and.stores |
| 32680 | 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 65 20 65 66 | .are.assumed.to.not.have.side.ef |
| 326a0 | 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 6f 72 65 0a | fects..If.a.given.load.or.store. |
| 326c0 | 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 74 73 2c 20 | ......should.have.side.effects,. |
| 326e0 | 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 4f 75 74 70 | such.as.Memory.Mapped.Input/Outp |
| 32700 | 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 6c 61 73 73 | ut.(MMIO),.use.<code><span.class |
| 32720 | 3d 22 74 6f 6b 2d 6b 77 22 3e 76 6f 6c 61 74 69 6c 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e | ="tok-kw">volatile</span></code> |
| 32740 | 2e 0a 20 20 20 20 20 20 49 6e 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 63 6f 64 65 2c 20 6c | ........In.the.following.code,.l |
| 32760 | 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 6d 69 6f 5f | oads.and.stores.with.<code>mmio_ |
| 32780 | 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 20 61 6c 6c | ptr</code>.are.guaranteed.to.all |
| 327a0 | 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 65 20 6f 72 | .happen.......and.in.the.same.or |
| 327c0 | 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 20 20 20 20 | der.as.in.source.code:</p>...... |
| 327e0 | 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- |
| 32800 | 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 76 6f 6c | cap"><cite.class="file">test_vol |
| 32820 | 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 3e 3c 70 72 | atile.zig</cite></figcaption><pr |
| 32840 | 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 |
| 32860 | 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=" |
| 32880 | 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 |
| 328a0 | 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" |
| 328c0 | 3b 3c 2f 73 70 61 6e 3e 29 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 0a 3c 73 70 61 6e | ;</span>).testing.expect;..<span |
| 328e0 | 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 |
| 32900 | 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 74 69 6c 65 | n.class="tok-str">"volatile |
| 32920 | 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= |
| 32940 | 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 74 72 3a 20 | "tok-kw">const</span>.mmio_ptr:. |
| 32960 | 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 6c 65 3c 2f | *<span.class="tok-kw">volatile</ |
| 32980 | 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< |
| 329a0 | 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 | /span>.=.<span.class="tok-builti |
| 329c0 | 6e 22 3e 40 70 74 72 46 72 6f 6d 49 6e 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 | n">@ptrFromInt</span>(<span.clas |
| 329e0 | 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 70 61 6e 3e | s="tok-number">0x12345678</span> |
| 32a00 | 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< |
| 32a20 | 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 |
| 32a40 | 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 70 74 72 29 | uiltin">@TypeOf</span>(mmio_ptr) |
| 32a60 | 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 6c 61 74 69 | .==.*<span.class="tok-kw">volati |
| 32a80 | 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" |
| 32aa0 | 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 2f 66 69 67 | >u8</span>);.}</code></pre></fig |
| 32ac0 | 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 |
| 32ae0 | 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 |
| 32b00 | 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 76 6f 6c 61 | ><samp>$.<kbd>zig.test.test_vola |
| 32b20 | 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 74 69 6c 65 | tile.zig</kbd>.1/1.test_volatile |
| 32b40 | 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 73 74 73 20 | .test.volatile...OK.All.1.tests. |
| 32b60 | 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>.. |
| 32b80 | 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 6f 64 65 3e | ......<p>.......Note.that.<code> |
| 32ba0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 6f 6c 61 74 69 6c 65 3c 2f 73 | <span.class="tok-kw">volatile</s |
| 32bc0 | 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 63 6f 6e 63 | pan></code>.is.unrelated.to.conc |
| 32be0 | 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 73 22 3e 41 | urrency.and.<a.href="#Atomics">A |
| 32c00 | 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 20 63 6f 64 | tomics</a>........If.you.see.cod |
| 32c20 | 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 63 6c 61 73 | e.that.is.using.<code><span.clas |
| 32c40 | 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 65 | s="tok-kw">volatile</span></code |
| 32c60 | 3e 20 66 6f 72 20 73 6f 6d 65 74 68 69 6e 67 20 6f 74 68 65 72 20 74 68 61 6e 20 4d 65 6d 6f 72 | >.for.something.other.than.Memor |
| 32c80 | 79 20 4d 61 70 70 65 64 0a 20 20 20 20 20 20 49 6e 70 75 74 2f 4f 75 74 70 75 74 2c 20 69 74 20 | y.Mapped.......Input/Output,.it. |
| 32ca0 | 69 73 20 70 72 6f 62 61 62 6c 79 20 61 20 62 75 67 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 | is.probably.a.bug........</p>... |
| 32cc0 | 20 20 20 20 0a 0a 20 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 | ............<h3.id="Alignment">< |
| 32ce0 | 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 41 6c 69 67 6e 6d 65 6e 74 22 3e 41 6c 69 67 6e 6d 65 6e | a.href="#toc-Alignment">Alignmen |
| 32d00 | 74 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 41 6c 69 67 | t</a>.<a.class="hdr".href="#Alig |
| 32d20 | 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 20 3c 70 3e 0a 20 20 | nment">..</a></h3>........<p>... |
| 32d40 | 20 20 20 20 45 61 63 68 20 74 79 70 65 20 68 61 73 20 61 6e 20 3c 73 74 72 6f 6e 67 3e 61 6c 69 | ....Each.type.has.an.<strong>ali |
| 32d60 | 67 6e 6d 65 6e 74 3c 2f 73 74 72 6f 6e 67 3e 20 2d 20 61 20 6e 75 6d 62 65 72 20 6f 66 20 62 79 | gnment</strong>.-.a.number.of.by |
| 32d80 | 74 65 73 20 73 75 63 68 20 74 68 61 74 2c 0a 20 20 20 20 20 20 77 68 65 6e 20 61 20 76 61 6c 75 | tes.such.that,.......when.a.valu |
| 32da0 | 65 20 6f 66 20 74 68 65 20 74 79 70 65 20 69 73 20 6c 6f 61 64 65 64 20 66 72 6f 6d 20 6f 72 20 | e.of.the.type.is.loaded.from.or. |
| 32dc0 | 73 74 6f 72 65 64 20 74 6f 20 6d 65 6d 6f 72 79 2c 0a 20 20 20 20 20 20 74 68 65 20 6d 65 6d 6f | stored.to.memory,.......the.memo |
| 32de0 | 72 79 20 61 64 64 72 65 73 73 20 6d 75 73 74 20 62 65 20 65 76 65 6e 6c 79 20 64 69 76 69 73 69 | ry.address.must.be.evenly.divisi |
| 32e00 | 62 6c 65 20 62 79 20 74 68 69 73 20 6e 75 6d 62 65 72 2e 20 59 6f 75 20 63 61 6e 20 75 73 65 0a | ble.by.this.number..You.can.use. |
| 32e20 | 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 61 6c 69 67 6e 4f 66 22 3e 40 61 6c 69 67 6e 4f | ......<a.href="#alignOf">@alignO |
| 32e40 | 66 3c 2f 61 3e 20 74 6f 20 66 69 6e 64 20 6f 75 74 20 74 68 69 73 20 76 61 6c 75 65 20 66 6f 72 | f</a>.to.find.out.this.value.for |
| 32e60 | 20 61 6e 79 20 74 79 70 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a | .any.type........</p>.......<p>. |
| 32e80 | 20 20 20 20 20 20 41 6c 69 67 6e 6d 65 6e 74 20 64 65 70 65 6e 64 73 20 6f 6e 20 74 68 65 20 43 | ......Alignment.depends.on.the.C |
| 32ea0 | 50 55 20 61 72 63 68 69 74 65 63 74 75 72 65 2c 20 62 75 74 20 69 73 20 61 6c 77 61 79 73 20 61 | PU.architecture,.but.is.always.a |
| 32ec0 | 20 70 6f 77 65 72 20 6f 66 20 74 77 6f 2c 20 61 6e 64 0a 20 20 20 20 20 20 6c 65 73 73 20 74 68 | .power.of.two,.and.......less.th |
| 32ee0 | 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 6e 75 6d 62 65 72 | an.<code><span.class="tok-number |
| 32f00 | 22 3e 31 3c 2f 73 70 61 6e 3e 20 26 6c 74 3b 26 6c 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ">1</span>.<<.<span.class= |
| 32f20 | 22 74 6f 6b 2d 6e 75 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 | "tok-number">29</span></code>... |
| 32f40 | 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 6e 20 5a 69 67 | .....</p>.......<p>.......In.Zig |
| 32f60 | 2c 20 61 20 70 6f 69 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 | ,.a.pointer.type.has.an.alignmen |
| 32f80 | 74 20 76 61 6c 75 65 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 | t.value..If.the.value.is.equal.t |
| 32fa0 | 6f 20 74 68 65 0a 20 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 | o.the.......alignment.of.the.und |
| 32fc0 | 65 72 6c 79 69 6e 67 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 | erlying.type,.it.can.be.omitted. |
| 32fe0 | 66 72 6f 6d 20 74 68 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 | from.the.type:.......</p>....... |
| 33000 | 3c 66 69 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 |
| 33020 | 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 76 61 72 69 | ap"><cite.class="file">test_vari |
| 33040 | 61 62 6c 65 5f 61 6c 69 67 6e 6d 65 6e 74 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 | able_alignment.zig</cite></figca |
| 33060 | 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 |
| 33080 | 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 |
| 330a0 | 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 |
| 330c0 | 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 |
| 330e0 | 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 |
| 33100 | 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 62 75 69 6c 74 69 6e 20 3d 20 3c 73 70 | k-kw">const</span>.builtin.=.<sp |
| 33120 | 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</ |
| 33140 | 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 |
| 33160 | 74 3b 62 75 69 6c 74 69 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 3c 73 70 61 6e 20 63 | t;builtin"</span>);.<span.c |
| 33180 | 6c 61 73 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 |
| 331a0 | 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 |
| 331c0 | 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. |
| 331e0 | 63 6c 61 73 73 3d 22 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 | class="tok-str">"variable.a |
| 33200 | 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 20 20 20 3c 73 70 61 | lignment"</span>.{.....<spa |
| 33220 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 78 3a 20 3c | n.class="tok-kw">var</span>.x:.< |
| 33240 | 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> |
| 33260 | 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 34 | .=.<span.class="tok-number">1234 |
| 33280 | 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 |
| 332a0 | 22 3e 63 6f 6e 73 74 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 | ">const</span>.align_of_i32.=.<s |
| 332c0 | 70 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 66 | pan.class="tok-builtin">@alignOf |
| 332e0 | 3c 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 |
| 33300 | 22 3e 40 54 79 70 65 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 | ">@TypeOf</span>(x));.....<span. |
| 33320 | 63 6c 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 |
| 33340 | 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 |
| 33360 | 4f 66 3c 2f 73 70 61 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 | Of</span>(&x).==.*<span.clas |
| 33380 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 | s="tok-type">i32</span>);.....<s |
| 333a0 | 70 61 6e 20 63 6c 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 |
| 333c0 | 70 65 63 74 28 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 | pect(*<span.class="tok-type">i32 |
| 333e0 | 3c 2f 73 70 61 6e 3e 20 3d 3d 20 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | </span>.==.*<span.class="tok-kw" |
| 33400 | 3e 61 6c 69 67 6e 3c 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 | >align</span>(align_of_i32).<spa |
| 33420 | 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 0a | n.class="tok-type">i32</span>);. |
| 33440 | 20 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 |
| 33460 | 6e 3e 20 28 62 75 69 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 | n>.(builtin.target.cpu.arch.==.. |
| 33480 | 78 38 36 5f 36 34 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 | x86_64).{.........<span.class="t |
| 334a0 | 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 |
| 334c0 | 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 |
| 334e0 | 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 69 33 32 3c | an>(*<span.class="tok-type">i32< |
| 33500 | 2f 73 70 61 6e 3e 29 2e 70 6f 69 6e 74 65 72 2e 61 6c 69 67 6e 6d 65 6e 74 20 3d 3d 20 3c 73 70 | /span>).pointer.alignment.==.<sp |
| 33520 | 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>); |
| 33540 | 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 |
| 33560 | 69 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 |
| 33580 | 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 |
| 335a0 | 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 61 | >$.<kbd>zig.test.test_variable_a |
| 335c0 | 6c 69 67 6e 6d 65 6e 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 | lignment.zig</kbd>.1/1.test_vari |
| 335e0 | 61 62 6c 65 5f 61 6c 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 | able_alignment.test.variable.ali |
| 33600 | 67 6e 6d 65 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 | gnment...OK.All.1.tests.passed.. |
| 33620 | 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 |
| 33640 | 3e 49 6e 20 74 68 65 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 | >In.the.same.way.that.a.<code>*< |
| 33660 | 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> |
| 33680 | 3c 2f 63 6f 64 65 3e 20 63 61 6e 20 62 65 20 3c 61 20 68 72 65 66 3d 22 23 54 79 70 65 2d 43 6f | </code>.can.be.<a.href="#Type-Co |
| 336a0 | 65 72 63 69 6f 6e 22 3e 63 6f 65 72 63 65 64 3c 2f 61 3e 20 74 6f 20 61 0a 20 20 20 20 20 20 20 | ercion">coerced</a>.to.a........ |
| 336c0 | 20 20 20 3c 63 6f 64 65 3e 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 | ...<code>*<span.class="tok-kw">c |
| 336e0 | 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 |
| 33700 | 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 61 20 70 6f 69 6e 74 65 72 20 | e">i32</span></code>,.a.pointer. |
| 33720 | 77 69 74 68 20 61 20 6c 61 72 67 65 72 20 61 6c 69 67 6e 6d 65 6e 74 20 63 61 6e 20 62 65 20 69 | with.a.larger.alignment.can.be.i |
| 33740 | 6d 70 6c 69 63 69 74 6c 79 0a 20 20 20 20 20 20 63 61 73 74 20 74 6f 20 61 20 70 6f 69 6e 74 65 | mplicitly.......cast.to.a.pointe |
| 33760 | 72 20 77 69 74 68 20 61 20 73 6d 61 6c 6c 65 72 20 61 6c 69 67 6e 6d 65 6e 74 2c 20 62 75 74 20 | r.with.a.smaller.alignment,.but. |
| 33780 | 6e 6f 74 20 76 69 63 65 20 76 65 72 73 61 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 | not.vice.versa........</p>...... |
| 337a0 | 20 3c 70 3e 0a 20 20 20 20 20 20 59 6f 75 20 63 61 6e 20 73 70 65 63 69 66 79 20 61 6c 69 67 6e | .<p>.......You.can.specify.align |
| 337c0 | 6d 65 6e 74 20 6f 6e 20 76 61 72 69 61 62 6c 65 73 20 61 6e 64 20 66 75 6e 63 74 69 6f 6e 73 2e | ment.on.variables.and.functions. |
| 337e0 | 20 49 66 20 79 6f 75 20 64 6f 20 74 68 69 73 2c 20 74 68 65 6e 0a 20 20 20 20 20 20 70 6f 69 6e | .If.you.do.this,.then.......poin |
| 33800 | 74 65 72 73 20 74 6f 20 74 68 65 6d 20 67 65 74 20 74 68 65 20 73 70 65 63 69 66 69 65 64 20 61 | ters.to.them.get.the.specified.a |
| 33820 | 6c 69 67 6e 6d 65 6e 74 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 | lignment:.......</p>.......<figu |
| 33840 | 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">< |
| 33860 | 63 69 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 | cite.class="file">test_variable_ |
| 33880 | 66 75 6e 63 5f 61 6c 69 67 6e 6d 65 6e 74 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 | func_alignment.zig</cite></figca |
| 338a0 | 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 |
| 338c0 | 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 |
| 338e0 | 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 |
| 33900 | 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">" |
| 33920 | 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 |
| 33940 | 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 | t;..<span.class="tok-kw">var</sp |
| 33960 | 61 6e 3e 20 66 6f 6f 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | an>.foo:.<span.class="tok-type"> |
| 33980 | 75 38 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 | u8</span>.<span.class="tok-kw">a |
| 339a0 | 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 |
| 339c0 | 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 29 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ber">4</span>).=.<span.class="to |
| 339e0 | 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 30 3c 2f 73 70 61 6e 3e 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 | k-number">100</span>;..<span.cla |
| 33a00 | 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 |
| 33a20 | 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 67 6c 6f 62 61 6c 20 76 61 72 69 61 | ass="tok-str">"global.varia |
| 33a40 | 62 6c 65 20 61 6c 69 67 6e 6d 65 6e 74 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 | ble.alignment"</span>.{.... |
| 33a60 | 20 3c 73 70 61 6e 20 63 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> |
| 33a80 | 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 |
| 33aa0 | 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=" |
| 33ac0 | 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 26 61 6d 70 | tok-builtin">@TypeOf</span>(& |
| 33ae0 | 3b 66 6f 6f 29 29 2e 70 6f 69 6e 74 65 72 2e 61 6c 69 67 6e 6d 65 6e 74 20 3d 3d 20 3c 73 70 61 | ;foo)).pointer.alignment.==.<spa |
| 33b00 | 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>);. |
| 33b20 | 20 20 20 20 3c 73 70 61 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 |
| 33b40 | 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 |
| 33b60 | 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 20 3d 3d | tin">@TypeOf</span>(&foo).== |
| 33b80 | 20 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6c 69 67 6e 3c 2f 73 70 | .*<span.class="tok-kw">align</sp |
| 33ba0 | 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 2f | an>(<span.class="tok-number">4</ |
| 33bc0 | 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 38 | span>).<span.class="tok-type">u8 |
| 33be0 | 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 |
| 33c00 | 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 73 5f 70 6f 69 6e 74 65 72 5f 74 6f 5f 61 72 | w">const</span>.as_pointer_to_ar |
| 33c20 | 72 61 79 3a 20 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6c 69 67 6e | ray:.*<span.class="tok-kw">align |
| 33c40 | 3c 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" |
| 33c60 | 3e 34 3c 2f 73 70 61 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 | >4</span>).[<span.class="tok-num |
| 33c80 | 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 74 | ber">1</span>]<span.class="tok-t |
| 33ca0 | 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 20 3d 20 26 61 6d 70 3b 66 6f 6f 3b 0a 20 20 20 20 3c | ype">u8</span>.=.&foo;.....< |
| 33cc0 | 73 70 61 6e 20 63 6c 61 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> |
| 33ce0 | 20 61 73 5f 73 6c 69 63 65 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | .as_slice:.[]<span.class="tok-kw |
| 33d00 | 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- |
| 33d20 | 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 22 74 | number">4</span>).<span.class="t |
| 33d40 | 6f 6b 2d 74 79 70 65 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 | ok-type">u8</span>.=.as_pointer_ |
| 33d60 | 74 6f 5f 61 72 72 61 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 | to_array;.....<span.class="tok-k |
| 33d80 | 77 22 3e 63 6f 6e 73 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 | w">const</span>.as_unaligned_sli |
| 33da0 | 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 38 3c | ce:.[]<span.class="tok-type">u8< |
| 33dc0 | 2f 73 70 61 6e 3e 20 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 | /span>.=.as_slice;.....<span.cla |
| 33de0 | 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 73 | ss="tok-kw">try</span>.expect(as |
| 33e00 | 5f 75 6e 61 6c 69 67 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 | _unaligned_slice[<span.class="to |
| 33e20 | 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 61 | k-number">0</span>].==.<span.cla |
| 33e40 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 30 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a | ss="tok-number">100</span>);.}.. |
| 33e60 | 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>.< |
| 33e80 | 73 70 61 6e 20 63 6c 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 | span.class="tok-fn">derp</span>( |
| 33ea0 | 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 3c 2f 73 70 | ).<span.class="tok-kw">align</sp |
| 33ec0 | 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 | an>(<span.class="tok-builtin">@s |
| 33ee0 | 69 7a 65 4f 66 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | izeOf</span>(<span.class="tok-ty |
| 33f00 | 70 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 | pe">usize</span>).*.<span.class= |
| 33f20 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 | "tok-number">2</span>).<span.cla |
| 33f40 | 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 3c | ss="tok-type">i32</span>.{.....< |
| 33f60 | 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 |
| 33f80 | 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 34 3c | >.<span.class="tok-number">1234< |
| 33fa0 | 2f 73 70 61 6e 3e 3b 0a 7d 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 | /span>;.}.<span.class="tok-kw">f |
| 33fc0 | 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 6e 6f | n</span>.<span.class="tok-fn">no |
| 33fe0 | 6f 70 31 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | op1</span>().<span.class="tok-kw |
| 34000 | 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- |
| 34020 | 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | number">1</span>).<span.class="t |
| 34040 | 6f 6b 2d 74 79 70 65 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 | ok-type">void</span>.{}.<span.cl |
| 34060 | 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 |
| 34080 | 73 73 3d 22 74 6f 6b 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 | ss="tok-fn">noop4</span>().<span |
| 340a0 | 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 |
| 340c0 | 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>). |
| 340e0 | 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 |
| 34100 | 6e 3e 20 7b 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 | n>.{}..<span.class="tok-kw">test |
| 34120 | 3c 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 |
| 34140 | 75 6f 74 3b 66 75 6e 63 74 69 6f 6e 20 61 6c 69 67 6e 6d 65 6e 74 26 71 75 6f 74 3b 3c 2f 73 70 | uot;function.alignment"</sp |
| 34160 | 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 | an>.{.....<span.class="tok-kw">t |
| 34180 | 72 79 3c 2f 73 70 61 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 | ry</span>.expect(derp().==.<span |
| 341a0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 29 | .class="tok-number">1234</span>) |
| 341c0 | 3b 0a 20 20 20 20 3c 73 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</ |
| 341e0 | 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 |
| 34200 | 69 6c 74 69 6e 22 3e 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 | iltin">@TypeOf</span>(derp).==.< |
| 34220 | 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 29 | span.class="tok-kw">fn</span>.() |
| 34240 | 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 |
| 34260 | 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 |
| 34280 | 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 |
| 342a0 | 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 64 65 | -builtin">@TypeOf</span>(&de |
| 342c0 | 72 70 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 61 6c 69 | rp).==.*<span.class="tok-kw">ali |
| 342e0 | 67 6e 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 | gn</span>(<span.class="tok-built |
| 34300 | 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 3d 22 | in">@sizeOf</span>(<span.class=" |
| 34320 | 74 6f 6b 2d 74 79 70 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 | tok-type">usize</span>).*.<span. |
| 34340 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 | class="tok-number">2</span>).<sp |
| 34360 | 61 6e 20 63 6c 61 73 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>.< |
| 34380 | 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 29 | span.class="tok-kw">fn</span>.() |
| 343a0 | 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 |
| 343c0 | 6e 3e 29 3b 0a 0a 20 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 | n>);......noop1();.....<span.cla |
| 343e0 | 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 |
| 34400 | 70 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< |
| 34420 | 2f 73 70 61 6e 3e 28 6e 6f 6f 70 31 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | /span>(noop1).==.<span.class="to |
| 34440 | 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | k-kw">fn</span>.().<span.class=" |
| 34460 | 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 | tok-type">void</span>);.....<spa |
| 34480 | 6e 20 63 6c 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 |
| 344a0 | 63 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 | ct(<span.class="tok-builtin">@Ty |
| 344c0 | 70 65 4f 66 3c 2f 73 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 | peOf</span>(&noop1).==.*<spa |
| 344e0 | 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 |
| 34500 | 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>) |
| 34520 | 20 3c 73 70 61 6e 20 63 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 |
| 34540 | 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 |
| 34560 | 3e 20 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 | >.().<span.class="tok-type">void |
| 34580 | 3c 2f 73 70 61 6e 3e 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 | </span>);......noop4();.....<spa |
| 345a0 | 6e 20 63 6c 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 |
| 345c0 | 63 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 | ct(<span.class="tok-builtin">@Ty |
| 345e0 | 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 6e 6f 6f 70 34 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | peOf</span>(noop4).==.<span.clas |
| 34600 | 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 63 6c | s="tok-kw">fn</span>.().<span.cl |
| 34620 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 | ass="tok-type">void</span>);.... |
| 34640 | 20 3c 73 70 61 6e 20 63 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> |
| 34660 | 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 |
| 34680 | 22 3e 40 54 79 70 65 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 | ">@TypeOf</span>(&noop4).==. |
| 346a0 | 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 |
| 346c0 | 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 | n>(<span.class="tok-number">4</s |
| 346e0 | 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 6f 6e 73 74 | pan>).<span.class="tok-kw">const |
| 34700 | 3c 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< |
| 34720 | 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 65 22 | /span>.().<span.class="tok-type" |
| 34740 | 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 | >void</span>);.}</code></pre></f |
| 34760 | 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= |
| 34780 | 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 |
| 347a0 | 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 76 61 | re><samp>$.<kbd>zig.test.test_va |
| 347c0 | 72 69 61 62 6c 65 5f 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 | riable_func_alignment.zig</kbd>. |
| 347e0 | 31 2f 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 | 1/2.test_variable_func_alignment |
| 34800 | 2e 74 65 73 74 2e 67 6c 6f 62 61 6c 20 76 61 72 69 61 62 6c 65 20 61 6c 69 67 6e 6d 65 6e 74 2e | .test.global.variable.alignment. |
| 34820 | 2e 2e 4f 4b 0a 32 2f 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 | ..OK.2/2.test_variable_func_alig |
| 34840 | 6e 6d 65 6e 74 2e 74 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 | nment.test.function.alignment... |
| 34860 | 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 2f | OK.All.2.tests.passed..</samp></ |
| 34880 | 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 49 | pre></figure>........<p>.......I |
| 348a0 | 66 20 79 6f 75 20 68 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 | f.you.have.a.pointer.or.a.slice. |
| 348c0 | 74 68 61 74 20 68 61 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 | that.has.a.small.alignment,.but. |
| 348e0 | 79 6f 75 20 6b 6e 6f 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 | you.know.that.it.actually....... |
| 34900 | 68 61 73 20 61 20 62 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 | has.a.bigger.alignment,.use.<a.h |
| 34920 | 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 2f 61 3e 20 | ref="#alignCast">@alignCast</a>. |
| 34940 | 74 6f 20 63 68 61 6e 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 | to.change.the.......pointer.into |
| 34960 | 20 61 20 6d 6f 72 65 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 | .a.more.aligned.pointer..This.is |
| 34980 | 20 61 20 6e 6f 2d 6f 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 | .a.no-op.at.runtime,.but.inserts |
| 349a0 | 20 61 0a 20 20 20 20 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 | .a.......<a.href="#Incorrect-Poi |
| 349c0 | 6e 74 65 72 2d 41 6c 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 | nter-Alignment">safety.check</a> |
| 349e0 | 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 |
| 34a00 | 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 |
| 34a20 | 73 73 3d 22 66 69 6c 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 | ss="file">test_incorrect_pointer |
| 34a40 | 5f 61 6c 69 67 6e 6d 65 6e 74 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f | _alignment.zig</cite></figcaptio |
| 34a60 | 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 |
| 34a80 | 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 |
| 34aa0 | 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 |
| 34ac0 | 70 61 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 |
| 34ae0 | 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 |
| 34b00 | 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- |
| 34b20 | 73 74 72 22 3e 26 71 75 6f 74 3b 70 6f 69 6e 74 65 72 20 61 6c 69 67 6e 6d 65 6e 74 20 73 61 66 | str">"pointer.alignment.saf |
| 34b40 | 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 20 63 6c 61 | ety"</span>.{.....<span.cla |
| 34b60 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 61 72 72 61 79 20 3c 73 70 | ss="tok-kw">var</span>.array.<sp |
| 34b80 | 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>(< |
| 34ba0 | 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> |
| 34bc0 | 29 20 3d 20 5b 5f 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 | ).=.[_]<span.class="tok-type">u3 |
| 34be0 | 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 65 | 2</span>{.<span.class="tok-numbe |
| 34c00 | 72 22 3e 30 78 31 31 31 31 31 31 31 31 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 | r">0x11111111</span>,.<span.clas |
| 34c20 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 31 31 31 31 31 31 31 31 3c 2f 73 70 61 6e 3e | s="tok-number">0x11111111</span> |
| 34c40 | 20 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e | .};.....<span.class="tok-kw">con |
| 34c60 | 73 74 3c 2f 73 70 61 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 | st</span>.bytes.=.std.mem.sliceA |
| 34c80 | 73 42 79 74 65 73 28 61 72 72 61 79 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | sBytes(array[<span.class="tok-nu |
| 34ca0 | 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 2e 2e 5d 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | mber">0</span>..]);.....<span.cl |
| 34cc0 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 73 74 64 2e 74 65 73 74 | ass="tok-kw">try</span>.std.test |
| 34ce0 | 69 6e 67 2e 65 78 70 65 63 74 28 66 6f 6f 28 62 79 74 65 73 29 20 3d 3d 20 3c 73 70 61 6e 20 63 | ing.expect(foo(bytes).==.<span.c |
| 34d00 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 31 31 31 31 31 31 31 31 3c 2f 73 70 | lass="tok-number">0x11111111</sp |
| 34d20 | 61 6e 3e 29 3b 0a 7d 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c | an>);.}.<span.class="tok-kw">fn< |
| 34d40 | 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 3c | /span>.<span.class="tok-fn">foo< |
| 34d60 | 2f 73 70 61 6e 3e 28 62 79 74 65 73 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | /span>(bytes:.[]<span.class="tok |
| 34d80 | 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 |
| 34da0 | 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. |
| 34dc0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 6c 69 63 | class="tok-kw">const</span>.slic |
| 34de0 | 65 34 20 3d 20 62 79 74 65 73 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | e4.=.bytes[<span.class="tok-numb |
| 34e00 | 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 2e 2e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | er">1</span>..<span.class="tok-n |
| 34e20 | 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 5d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | umber">5</span>];.....<span.clas |
| 34e40 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 69 6e 74 5f 73 6c 69 63 | s="tok-kw">const</span>.int_slic |
| 34e60 | 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 3c 73 70 61 6e 20 63 | e.=.std.mem.bytesAsSlice(<span.c |
| 34e80 | 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 61 | lass="tok-type">u32</span>,.<spa |
| 34ea0 | 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> |
| 34ec0 | 28 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 3c 2f 73 | ([]<span.class="tok-kw">align</s |
| 34ee0 | 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< |
| 34f00 | 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 75 | /span>).<span.class="tok-type">u |
| 34f20 | 38 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 | 8</span>,.<span.class="tok-built |
| 34f40 | 69 6e 22 3e 40 61 6c 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 | in">@alignCast</span>(slice4))); |
| 34f60 | 0a 20 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 |
| 34f80 | 3c 2f 73 70 61 6e 3e 20 69 6e 74 5f 73 6c 69 63 65 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | </span>.int_slice[<span.class="t |
| 34fa0 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 5d 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f | ok-number">0</span>];.}</code></ |
| 34fc0 | 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 |
| 34fe0 | 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 |
| 35000 | 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. |
| 35020 | 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 65 6e 74 | test_incorrect_pointer_alignment |
| 35040 | 2e 7a 69 67 3c 2f 6b 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 | .zig</kbd>.1/1.test_incorrect_po |
| 35060 | 69 6e 74 65 72 5f 61 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 | inter_alignment.test.pointer.ali |
| 35080 | 67 6e 6d 65 6e 74 20 73 61 66 65 74 79 2e 2e 2e 74 68 72 65 61 64 20 31 30 39 38 37 30 33 20 70 | gnment.safety...thread.1098703.p |
| 350a0 | 61 6e 69 63 3a 20 69 6e 63 6f 72 72 65 63 74 20 61 6c 69 67 6e 6d 65 6e 74 0a 3c 73 70 61 6e 20 | anic:.incorrect.alignment.<span. |
| 350c0 | 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 | class="sgr-1m">/home/andy/dev/zi |
| 350e0 | 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 69 6e 63 6f 72 72 65 63 74 5f 70 6f 69 | g/doc/langref/test_incorrect_poi |
| 35100 | 6e 74 65 72 5f 61 6c 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 | nter_alignment.zig:10:68</span>: |
| 35120 | 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 32 63 32 61 38 20 | .<span.class="sgr-2m">0x102c2a8. |
| 35140 | 69 6e 20 66 6f 6f 20 28 74 65 73 74 5f 69 6e 63 6f 72 72 65 63 74 5f 70 6f 69 6e 74 65 72 5f 61 | in.foo.(test_incorrect_pointer_a |
| 35160 | 6c 69 67 6e 6d 65 6e 74 2e 7a 69 67 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 63 6f 6e 73 74 20 69 | lignment.zig)</span>.....const.i |
| 35180 | 6e 74 5f 73 6c 69 63 65 20 3d 20 73 74 64 2e 6d 65 6d 2e 62 79 74 65 73 41 73 53 6c 69 63 65 28 | nt_slice.=.std.mem.bytesAsSlice( |
| 351a0 | 75 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 | u32,.@as([]align(4).u8,.@alignCa |
| 351c0 | 73 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 | st(slice4)));................... |
| 351e0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ................................ |
| 35200 | 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 |
| 35220 | 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 |
| 35240 | 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 | -1m">/home/andy/dev/zig/doc/lang |
| 35260 | 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 69 67 6e | ref/test_incorrect_pointer_align |
| 35280 | 6d 65 6e 74 2e 7a 69 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 | ment.zig:6:31</span>:.<span.clas |
| 352a0 | 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 32 63 30 64 32 20 69 6e 20 74 65 73 74 2e 70 6f 69 | s="sgr-2m">0x102c0d2.in.test.poi |
| 352c0 | 6e 74 65 72 20 61 6c 69 67 6e 6d 65 6e 74 20 73 61 66 65 74 79 20 28 74 65 73 74 5f 69 6e 63 6f | nter.alignment.safety.(test_inco |
| 352e0 | 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 29 3c 2f 73 70 | rrect_pointer_alignment.zig)</sp |
| 35300 | 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 28 66 | an>.....try.std.testing.expect(f |
| 35320 | 6f 6f 28 62 79 74 65 73 29 20 3d 3d 20 30 78 31 31 31 31 31 31 31 31 29 3b 0a 20 20 20 20 20 20 | oo(bytes).==.0x11111111);....... |
| 35340 | 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 |
| 35360 | 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 |
| 35380 | 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c | ss="sgr-1m">/home/andy/dev/zig/l |
| 353a0 | 69 62 2f 63 6f 6d 70 69 6c 65 72 2f 74 65 73 74 5f 72 75 6e 6e 65 72 2e 7a 69 67 3a 32 31 38 3a | ib/compiler/test_runner.zig:218: |
| 353c0 | 32 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e | 25</span>:.<span.class="sgr-2m"> |
| 353e0 | 30 78 31 31 35 63 66 31 30 20 69 6e 20 6d 61 69 6e 54 65 72 6d 69 6e 61 6c 20 28 74 65 73 74 5f | 0x115cf10.in.mainTerminal.(test_ |
| 35400 | 72 75 6e 6e 65 72 2e 7a 69 67 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 69 66 20 28 74 | runner.zig)</span>.........if.(t |
| 35420 | 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()).|_|.{............ |
| 35440 | 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 |
| 35460 | 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" |
| 35480 | 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 63 6f 6d 70 69 6c 65 72 | >/home/andy/dev/zig/lib/compiler |
| 354a0 | 2f 74 65 73 74 5f 72 75 6e 6e 65 72 2e 7a 69 67 3a 36 36 3a 32 38 3c 2f 73 70 61 6e 3e 3a 20 3c | /test_runner.zig:66:28</span>:.< |
| 354c0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 31 35 36 31 33 31 20 69 6e | span.class="sgr-2m">0x1156131.in |
| 354e0 | 20 6d 61 69 6e 20 28 74 65 73 74 5f 72 75 6e 6e 65 72 2e 7a 69 67 29 3c 2f 73 70 61 6e 3e 0a 20 | .main.(test_runner.zig)</span>.. |
| 35500 | 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 0a 20 20 | .......return.mainTerminal();... |
| 35520 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 | .........................<span.c |
| 35540 | 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 |
| 35560 | 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f | ass="sgr-1m">/home/andy/dev/zig/ |
| 35580 | 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 36 31 38 3a 32 32 3c 2f 73 70 61 6e 3e 3a | lib/std/start.zig:618:22</span>: |
| 355a0 | 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 31 34 66 65 63 64 20 | .<span.class="sgr-2m">0x114fecd. |
| 355c0 | 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 73 74 64 2e 7a 69 67 | in.posixCallMainAndExit.(std.zig |
| 355e0 | 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() |
| 35600 | 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 |
| 35620 | 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 |
| 35640 | 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 | s="sgr-1m">/home/andy/dev/zig/li |
| 35660 | 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 32 33 32 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 | b/std/start.zig:232:5</span>:.<s |
| 35680 | 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 31 34 66 37 36 31 20 69 6e 20 | pan.class="sgr-2m">0x114f761.in. |
| 356a0 | 5f 73 74 61 72 74 20 28 73 74 64 2e 7a 69 67 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 61 73 6d 20 | _start.(std.zig)</span>.....asm. |
| 356c0 | 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).{ |
| 356e0 | 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 |
| 35700 | 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">???:?:? |
| 35720 | 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 |
| 35740 | 30 20 69 6e 20 3f 3f 3f 20 28 3f 3f 3f 29 3c 2f 73 70 61 6e 3e 0a 65 72 72 6f 72 3a 20 74 68 65 | 0.in.???.(???)</span>.error:.the |
| 35760 | 20 66 6f 6c 6c 6f 77 69 6e 67 20 74 65 73 74 20 63 6f 6d 6d 61 6e 64 20 63 72 61 73 68 65 64 3a | .following.test.command.crashed: |
| 35780 | 0a 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 2e 7a 69 67 2d 63 61 63 68 65 2f 6f | ./home/andy/dev/zig/.zig-cache/o |
| 357a0 | 2f 30 62 32 64 32 62 66 63 33 37 65 33 32 32 30 66 66 33 64 62 62 35 34 39 66 61 30 39 34 38 31 | /0b2d2bfc37e3220ff3dbb549fa09481 |
| 357c0 | 32 2f 74 65 73 74 20 2d 2d 73 65 65 64 3d 30 78 63 66 30 62 38 61 33 61 0a 3c 2f 73 61 6d 70 3e | 2/test.--seed=0xcf0b8a3a.</samp> |
| 357e0 | 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 20 3c | </pre></figure>................< |
| 35800 | 68 33 20 69 64 3d 22 61 6c 6c 6f 77 7a 65 72 6f 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d | h3.id="allowzero"><a.href="#toc- |
| 35820 | 61 6c 6c 6f 77 7a 65 72 6f 22 3e 61 6c 6c 6f 77 7a 65 72 6f 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 | allowzero">allowzero</a>.<a.clas |
| 35840 | 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 61 6c 6c 6f 77 7a 65 72 6f 22 3e c2 a7 3c 2f 61 3e | s="hdr".href="#allowzero">..</a> |
| 35860 | 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 70 6f 69 6e | </h3>........<p>.......This.poin |
| 35880 | 74 65 72 20 61 74 74 72 69 62 75 74 65 20 61 6c 6c 6f 77 73 20 61 20 70 6f 69 6e 74 65 72 20 74 | ter.attribute.allows.a.pointer.t |
| 358a0 | 6f 20 68 61 76 65 20 61 64 64 72 65 73 73 20 7a 65 72 6f 2e 20 54 68 69 73 20 69 73 20 6f 6e 6c | o.have.address.zero..This.is.onl |
| 358c0 | 79 20 65 76 65 72 20 6e 65 65 64 65 64 20 6f 6e 20 74 68 65 0a 20 20 20 20 20 20 66 72 65 65 73 | y.ever.needed.on.the.......frees |
| 358e0 | 74 61 6e 64 69 6e 67 20 4f 53 20 74 61 72 67 65 74 2c 20 77 68 65 72 65 20 74 68 65 20 61 64 64 | tanding.OS.target,.where.the.add |
| 35900 | 72 65 73 73 20 7a 65 72 6f 20 69 73 20 6d 61 70 70 61 62 6c 65 2e 20 49 66 20 79 6f 75 20 77 61 | ress.zero.is.mappable..If.you.wa |
| 35920 | 6e 74 20 74 6f 20 72 65 70 72 65 73 65 6e 74 20 6e 75 6c 6c 20 70 6f 69 6e 74 65 72 73 2c 20 75 | nt.to.represent.null.pointers,.u |
| 35940 | 73 65 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 | se.......<a.href="#Optional-Poin |
| 35960 | 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 20 69 6e 73 74 | ters">Optional.Pointers</a>.inst |
| 35980 | 65 61 64 2e 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 | ead..<a.href="#Optional-Pointers |
| 359a0 | 22 3e 4f 70 74 69 6f 6e 61 6c 20 50 6f 69 6e 74 65 72 73 3c 2f 61 3e 20 77 69 74 68 20 3c 63 6f | ">Optional.Pointers</a>.with.<co |
| 359c0 | 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 7a 65 72 | de><span.class="tok-kw">allowzer |
| 359e0 | 6f 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 0a 20 20 20 20 20 20 61 72 65 20 6e 6f 74 20 74 68 | o</span></code>.......are.not.th |
| 35a00 | 65 20 73 61 6d 65 20 73 69 7a 65 20 61 73 20 70 6f 69 6e 74 65 72 73 2e 20 49 6e 20 74 68 69 73 | e.same.size.as.pointers..In.this |
| 35a20 | 20 63 6f 64 65 20 65 78 61 6d 70 6c 65 2c 20 69 66 20 74 68 65 20 70 6f 69 6e 74 65 72 0a 20 20 | .code.example,.if.the.pointer... |
| 35a40 | 20 20 20 20 64 69 64 20 6e 6f 74 20 68 61 76 65 20 74 68 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e | ....did.not.have.the.<code><span |
| 35a60 | 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> |
| 35a80 | 3c 2f 63 6f 64 65 3e 20 61 74 74 72 69 62 75 74 65 2c 20 74 68 69 73 20 77 6f 75 6c 64 20 62 65 | </code>.attribute,.this.would.be |
| 35aa0 | 20 61 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 50 6f 69 6e 74 65 72 2d 43 61 73 74 2d | .a.......<a.href="#Pointer-Cast- |
| 35ac0 | 49 6e 76 61 6c 69 64 2d 4e 75 6c 6c 22 3e 50 6f 69 6e 74 65 72 20 43 61 73 74 20 49 6e 76 61 6c | Invalid-Null">Pointer.Cast.Inval |
| 35ae0 | 69 64 20 4e 75 6c 6c 3c 2f 61 3e 20 70 61 6e 69 63 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 | id.Null</a>.panic:.......</p>... |
| 35b00 | 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 |
| 35b20 | 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_ |
| 35b40 | 61 6c 6c 6f 77 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 | allowzero.zig</cite></figcaption |
| 35b60 | 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" |
| 35b80 | 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= |
| 35ba0 | 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 |
| 35bc0 | 61 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 |
| 35be0 | 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" |
| 35c00 | 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 |
| 35c20 | 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" |
| 35c40 | 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 |
| 35c60 | 72 22 3e 26 71 75 6f 74 3b 61 6c 6c 6f 77 7a 65 72 6f 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 | r">"allowzero"</span>. |
| 35c80 | 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</ |
| 35ca0 | 73 70 61 6e 3e 20 7a 65 72 6f 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | span>.zero:.<span.class="tok-typ |
| 35cc0 | 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | e">usize</span>.=.<span.class="t |
| 35ce0 | 6f 6b 2d 6e 75 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 | ok-number">0</span>;.<span.class |
| 35d00 | 3d 22 74 6f 6b 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 74 6f | ="tok-comment">//.var.to.make.to |
| 35d20 | 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 20 5f 20 3d 20 26 61 | .runtime-known</span>....._.=.&a |
| 35d40 | 6d 70 3b 7a 65 72 6f 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 | mp;zero;.<span.class="tok-commen |
| 35d60 | 74 22 3e 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 | t">//.suppress.'var.is.never.mut |
| 35d80 | 61 74 65 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 | ated'.error</span>.....<span.cla |
| 35da0 | 73 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:.*< |
| 35dc0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6c 6c 6f 77 7a 65 72 6f 3c 2f 73 | span.class="tok-kw">allowzero</s |
| 35de0 | 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< |
| 35e00 | 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 | /span>.=.<span.class="tok-builti |
| 35e20 | 6e 22 3e 40 70 74 72 46 72 6f 6d 49 6e 74 3c 2f 73 70 61 6e 3e 28 7a 65 72 6f 29 3b 0a 20 20 20 | n">@ptrFromInt</span>(zero);.... |
| 35e40 | 20 3c 73 70 61 6e 20 63 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> |
| 35e60 | 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 |
| 35e80 | 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 20 3d 3d 20 3c 73 70 | ">@intFromPtr</span>(ptr).==.<sp |
| 35ea0 | 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>); |
| 35ec0 | 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> |
| 35ee0 | 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 |
| 35f00 | 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 |
| 35f20 | 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 61 6c 6c 6f 77 7a 65 72 6f 2e 7a 69 67 3c 2f 6b | d>zig.test.test_allowzero.zig</k |
| 35f40 | 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 61 6c 6c 6f 77 7a 65 72 6f 2e 74 65 73 74 2e 61 6c 6c 6f | bd>.1/1.test_allowzero.test.allo |
| 35f60 | 77 7a 65 72 6f 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 | wzero...OK.All.1.tests.passed..< |
| 35f80 | 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>........... |
| 35fa0 | 20 20 20 20 20 3c 68 33 20 69 64 3d 22 53 65 6e 74 69 6e 65 6c 2d 54 65 72 6d 69 6e 61 74 65 64 | .....<h3.id="Sentinel-Terminated |
| 35fc0 | 2d 50 6f 69 6e 74 65 72 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 53 65 6e 74 69 6e 65 | -Pointers"><a.href="#toc-Sentine |
| 35fe0 | 6c 2d 54 65 72 6d 69 6e 61 74 65 64 2d 50 6f 69 6e 74 65 72 73 22 3e 53 65 6e 74 69 6e 65 6c 2d | l-Terminated-Pointers">Sentinel- |
| 36000 | 54 65 72 6d 69 6e 61 74 65 64 20 50 6f 69 6e 74 65 72 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 | Terminated.Pointers</a>.<a.class |
| 36020 | 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 53 65 6e 74 69 6e 65 6c 2d 54 65 72 6d 69 6e 61 74 65 | ="hdr".href="#Sentinel-Terminate |
| 36040 | 64 2d 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 | d-Pointers">..</a></h3>........< |
| 36060 | 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 2a 3a 78 5d 54 | p>.......The.syntax.<code>[*:x]T |
| 36080 | 3c 2f 63 6f 64 65 3e 20 64 65 73 63 72 69 62 65 73 20 61 20 70 6f 69 6e 74 65 72 20 74 68 61 74 | </code>.describes.a.pointer.that |
| 360a0 | 0a 20 20 20 20 20 20 68 61 73 20 61 20 6c 65 6e 67 74 68 20 64 65 74 65 72 6d 69 6e 65 64 20 62 | .......has.a.length.determined.b |
| 360c0 | 79 20 61 20 73 65 6e 74 69 6e 65 6c 20 76 61 6c 75 65 2e 20 54 68 69 73 20 70 72 6f 76 69 64 65 | y.a.sentinel.value..This.provide |
| 360e0 | 73 20 70 72 6f 74 65 63 74 69 6f 6e 0a 20 20 20 20 20 20 61 67 61 69 6e 73 74 20 62 75 66 66 65 | s.protection.......against.buffe |
| 36100 | 72 20 6f 76 65 72 66 6c 6f 77 20 61 6e 64 20 6f 76 65 72 72 65 61 64 73 2e 0a 20 20 20 20 20 20 | r.overflow.and.overreads........ |
| 36120 | 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 |
| 36140 | 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 |
| 36160 | 22 3e 73 65 6e 74 69 6e 65 6c 2d 74 65 72 6d 69 6e 61 74 65 64 5f 70 6f 69 6e 74 65 72 2e 7a 69 | ">sentinel-terminated_pointer.zi |
| 36180 | 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> |
| 361a0 | 3c 73 70 61 6e 20 63 6c 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 |
| 361c0 | 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 |
| 361e0 | 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 |
| 36200 | 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>);. |
| 36220 | 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 | .<span.class="tok-comment">//.Th |
| 36240 | 69 73 20 69 73 20 61 6c 73 6f 20 61 76 61 69 6c 61 62 6c 65 20 61 73 20 60 73 74 64 2e 63 2e 70 | is.is.also.available.as.`std.c.p |
| 36260 | 72 69 6e 74 66 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 | rintf`.</span>.<span.class="tok- |
| 36280 | 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- |
| 362a0 | 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 |
| 362c0 | 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 63 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 3c 73 70 | ok-str">"c"</span>.<sp |
| 362e0 | 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 |
| 36300 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 70 72 69 6e 74 66 3c 2f 73 70 61 6e 3e 28 66 | n.class="tok-fn">printf</span>(f |
| 36320 | 6f 72 6d 61 74 3a 20 5b 2a 3a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | ormat:.[*:<span.class="tok-numbe |
| 36340 | 72 22 3e 30 3c 2f 73 70 61 6e 3e 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | r">0</span>]<span.class="tok-kw" |
| 36360 | 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 |
| 36380 | 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 2e 2e 2e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ype">u8</span>,....).<span.class |
| 363a0 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 63 5f 69 6e 74 3c 2f 73 70 61 6e 3e 3b 0a 0a 3c 73 70 61 6e | ="tok-type">c_int</span>;..<span |
| 363c0 | 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 |
| 363e0 | 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. |
| 36400 | 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 |
| 36420 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 61 6e 79 65 72 72 6f 72 3c 2f 73 70 | an.class="tok-type">anyerror</sp |
| 36440 | 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 3c | an>!<span.class="tok-type">void< |
| 36460 | 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 5f 20 3d 20 70 72 69 6e 74 66 28 3c 73 70 61 6e 20 63 6c | /span>.{....._.=.printf(<span.cl |
| 36480 | 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 48 65 6c 6c 6f 2c 20 77 6f 72 6c 64 | ass="tok-str">"Hello,.world |
| 364a0 | 21 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | !\n"</span>);.<span.class=" |
| 364c0 | 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 4f 4b 3c 2f 73 70 61 6e 3e 0a 0a 20 20 20 20 3c | tok-comment">//.OK</span>......< |
| 364e0 | 73 70 61 6e 20 63 6c 61 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> |
| 36500 | 20 6d 73 67 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 | .msg.=.<span.class="tok-str">&qu |
| 36520 | 6f 74 3b 48 65 6c 6c 6f 2c 20 77 6f 72 6c 64 21 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 3b | ot;Hello,.world!\n"</span>; |
| 36540 | 0a 20 20 20 20 3c 73 70 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< |
| 36560 | 2f 73 70 61 6e 3e 20 6e 6f 6e 5f 6e 75 6c 6c 5f 74 65 72 6d 69 6e 61 74 65 64 5f 6d 73 67 3a 20 | /span>.non_null_terminated_msg:. |
| 36580 | 5b 6d 73 67 2e 6c 65 6e 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | [msg.len]<span.class="tok-type"> |
| 365a0 | 75 38 3c 2f 73 70 61 6e 3e 20 3d 20 6d 73 67 2e 2a 3b 0a 20 20 20 20 5f 20 3d 20 70 72 69 6e 74 | u8</span>.=.msg.*;....._.=.print |
| 365c0 | 66 28 26 61 6d 70 3b 6e 6f 6e 5f 6e 75 6c 6c 5f 74 65 72 6d 69 6e 61 74 65 64 5f 6d 73 67 29 3b | f(&non_null_terminated_msg); |
| 365e0 | 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> |
| 36600 | 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 |
| 36620 | 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 |
| 36640 | 64 3e 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 73 65 6e 74 69 6e 65 6c 2d 74 65 72 6d 69 6e 61 | d>zig.build-exe.sentinel-termina |
| 36660 | 74 65 64 5f 70 6f 69 6e 74 65 72 2e 7a 69 67 20 2d 6c 63 3c 2f 6b 62 64 3e 0a 3c 73 70 61 6e 20 | ted_pointer.zig.-lc</kbd>.<span. |
| 36680 | 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 | class="sgr-1m">/home/andy/dev/zi |
| 366a0 | 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 |
| 366c0 | 64 5f 70 6f 69 6e 74 65 72 2e 7a 69 67 3a 31 31 3a 31 36 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 | d_pointer.zig:11:16:.</span><spa |
| 366e0 | 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> |
| 36700 | 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 65 64 20 74 79 | <span.class="sgr-1m">expected.ty |
| 36720 | 70 65 20 27 5b 2a 3a 30 5d 63 6f 6e 73 74 20 75 38 27 2c 20 66 6f 75 6e 64 20 27 2a 63 6f 6e 73 | pe.'[*:0]const.u8',.found.'*cons |
| 36740 | 74 20 5b 31 34 5d 75 38 27 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 5f 20 3d 20 70 72 69 6e 74 66 28 | t.[14]u8'.</span>...._.=.printf( |
| 36760 | 26 61 6d 70 3b 6e 6f 6e 5f 6e 75 6c 6c 5f 74 65 72 6d 69 6e 61 74 65 64 5f 6d 73 67 29 3b 0a 20 | &non_null_terminated_msg);.. |
| 36780 | 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 |
| 367a0 | 32 6d 22 3e 5e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a 3c 2f 73 | 2m">^~~~~~~~~~~~~~~~~~~~~~~~.</s |
| 367c0 | 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 | pan><span.class="sgr-1m">/home/a |
| 367e0 | 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 73 65 6e 74 69 6e 65 6c | ndy/dev/zig/doc/langref/sentinel |
| 36800 | 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 3c | -terminated_pointer.zig:11:16:.< |
| 36820 | 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 |
| 36840 | 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 64 65 | :.</span><span.class="sgr-1m">de |
| 36860 | 73 74 69 6e 61 74 69 6f 6e 20 70 6f 69 6e 74 65 72 20 72 65 71 75 69 72 65 73 20 27 30 27 20 73 | stination.pointer.requires.'0'.s |
| 36880 | 65 6e 74 69 6e 65 6c 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 | entinel.</span><span.class="sgr- |
| 368a0 | 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 | 1m">/home/andy/dev/zig/doc/langr |
| 368c0 | 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 |
| 368e0 | 69 67 3a 34 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:4:34:.</span><span.class="sgr |
| 36900 | 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=" |
| 36920 | 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 20 | sgr-1m">parameter.type.declared. |
| 36940 | 68 65 72 65 0a 3c 2f 73 70 61 6e 3e 70 75 62 20 65 78 74 65 72 6e 20 26 71 75 6f 74 3b 63 26 71 | here.</span>pub.extern."c&q |
| 36960 | 75 6f 74 3b 20 66 6e 20 70 72 69 6e 74 66 28 66 6f 72 6d 61 74 3a 20 5b 2a 3a 30 5d 63 6f 6e 73 | uot;.fn.printf(format:.[*:0]cons |
| 36980 | 74 20 75 38 2c 20 2e 2e 2e 29 20 63 5f 69 6e 74 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | t.u8,....).c_int;............... |
| 369a0 | 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=" |
| 369c0 | 73 67 72 2d 33 32 6d 22 3e 5e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a 3c 2f 73 70 61 6e 3e 3c 73 | sgr-32m">^~~~~~~~~~~~~.</span><s |
| 369e0 | 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 72 65 66 65 72 65 6e 63 65 64 20 62 79 | pan.class="sgr-2m">referenced.by |
| 36a00 | 3a 0a 20 20 20 20 63 61 6c 6c 4d 61 69 6e 20 5b 69 6e 6c 69 6e 65 64 5d 3a 20 2f 68 6f 6d 65 2f | :.....callMain.[inlined]:./home/ |
| 36a20 | 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 36 | andy/dev/zig/lib/std/start.zig:6 |
| 36a40 | 32 37 3a 33 37 0a 20 20 20 20 63 61 6c 6c 4d 61 69 6e 57 69 74 68 41 72 67 73 20 5b 69 6e 6c 69 | 27:37.....callMainWithArgs.[inli |
| 36a60 | 6e 65 64 5d 3a 20 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 | ned]:./home/andy/dev/zig/lib/std |
| 36a80 | 2f 73 74 61 72 74 2e 7a 69 67 3a 35 38 37 3a 32 30 0a 20 20 20 20 6d 61 69 6e 3a 20 2f 68 6f 6d | /start.zig:587:20.....main:./hom |
| 36aa0 | 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 | e/andy/dev/zig/lib/std/start.zig |
| 36ac0 | 3a 36 30 32 3a 32 38 0a 20 20 20 20 31 20 72 65 66 65 72 65 6e 63 65 28 73 29 20 68 69 64 64 65 | :602:28.....1.reference(s).hidde |
| 36ae0 | 6e 3b 20 75 73 65 20 27 2d 66 72 65 66 65 72 65 6e 63 65 2d 74 72 61 63 65 3d 34 27 20 74 6f 20 | n;.use.'-freference-trace=4'.to. |
| 36b00 | 73 65 65 20 61 6c 6c 20 72 65 66 65 72 65 6e 63 65 73 0a 3c 2f 73 70 61 6e 3e 0a 3c 2f 73 61 6d | see.all.references.</span>.</sam |
| 36b20 | 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. |
| 36b40 | 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 53 65 6e 74 | also:</p><ul>.<li><a.href="#Sent |
| 36b60 | 69 6e 65 6c 2d 54 65 72 6d 69 6e 61 74 65 64 2d 53 6c 69 63 65 73 22 3e 53 65 6e 74 69 6e 65 6c | inel-Terminated-Slices">Sentinel |
| 36b80 | 2d 54 65 72 6d 69 6e 61 74 65 64 20 53 6c 69 63 65 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e | -Terminated.Slices</a></li>.<li> |
| 36ba0 | 3c 61 20 68 72 65 66 3d 22 23 53 65 6e 74 69 6e 65 6c 2d 54 65 72 6d 69 6e 61 74 65 64 2d 41 72 | <a.href="#Sentinel-Terminated-Ar |
| 36bc0 | 72 61 79 73 22 3e 53 65 6e 74 69 6e 65 6c 2d 54 65 72 6d 69 6e 61 74 65 64 20 41 72 72 61 79 73 | rays">Sentinel-Terminated.Arrays |
| 36be0 | 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 0a 0a | </a></li>.</ul>................. |
| 36c00 | 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 53 6c 69 63 65 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 | ......<h2.id="Slices"><a.href="# |
| 36c20 | 74 6f 63 2d 53 6c 69 63 65 73 22 3e 53 6c 69 63 65 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d | toc-Slices">Slices</a>.<a.class= |
| 36c40 | 22 68 64 72 22 20 68 72 65 66 3d 22 23 53 6c 69 63 65 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e | "hdr".href="#Slices">..</a></h2> |
| 36c60 | 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 41 20 73 6c 69 63 65 20 69 73 20 61 20 70 | ........<p>.......A.slice.is.a.p |
| 36c80 | 6f 69 6e 74 65 72 20 61 6e 64 20 61 20 6c 65 6e 67 74 68 2e 20 54 68 65 20 64 69 66 66 65 72 65 | ointer.and.a.length..The.differe |
| 36ca0 | 6e 63 65 20 62 65 74 77 65 65 6e 20 61 6e 20 61 72 72 61 79 20 61 6e 64 0a 20 20 20 20 20 20 61 | nce.between.an.array.and.......a |
| 36cc0 | 20 73 6c 69 63 65 20 69 73 20 74 68 61 74 20 74 68 65 20 61 72 72 61 79 27 73 20 6c 65 6e 67 74 | .slice.is.that.the.array's.lengt |
| 36ce0 | 68 20 69 73 20 70 61 72 74 20 6f 66 20 74 68 65 20 74 79 70 65 20 61 6e 64 20 6b 6e 6f 77 6e 20 | h.is.part.of.the.type.and.known. |
| 36d00 | 61 74 0a 20 20 20 20 20 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 2c 20 77 68 65 72 65 61 73 20 74 | at.......compile-time,.whereas.t |
| 36d20 | 68 65 20 73 6c 69 63 65 27 73 20 6c 65 6e 67 74 68 20 69 73 20 6b 6e 6f 77 6e 20 61 74 20 72 75 | he.slice's.length.is.known.at.ru |
| 36d40 | 6e 74 69 6d 65 2e 0a 20 20 20 20 20 20 42 6f 74 68 20 63 61 6e 20 62 65 20 61 63 63 65 73 73 65 | ntime........Both.can.be.accesse |
| 36d60 | 64 20 77 69 74 68 20 74 68 65 20 3c 63 6f 64 65 3e 6c 65 6e 3c 2f 63 6f 64 65 3e 20 66 69 65 6c | d.with.the.<code>len</code>.fiel |
| 36d80 | 64 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 | d........</p>.......<figure><fig |
| 36da0 | 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 |
| 36dc0 | 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 65 73 2e 7a 69 67 | ass="file">test_basic_slices.zig |
| 36de0 | 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>< |
| 36e00 | 73 70 61 6e 20 63 6c 61 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> |
| 36e20 | 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 |
| 36e40 | 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=" |
| 36e60 | 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>) |
| 36e80 | 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 |
| 36ea0 | 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 6c 53 6c | k-kw">const</span>.expectEqualSl |
| 36ec0 | 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 69 6c 74 69 6e 22 | ices.=.<span.class="tok-builtin" |
| 36ee0 | 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 |
| 36f00 | 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 |
| 36f20 | 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 3c 73 70 61 6e 20 | sting.expectEqualSlices;..<span. |
| 36f40 | 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 |
| 36f60 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 62 61 73 69 63 20 73 6c 69 | .class="tok-str">"basic.sli |
| 36f80 | 63 65 73 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | ces"</span>.{.....<span.cla |
| 36fa0 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 61 72 72 61 79 20 3d 20 5b | ss="tok-kw">var</span>.array.=.[ |
| 36fc0 | 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 |
| 36fe0 | 61 6e 3e 7b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c | an>{.<span.class="tok-number">1< |
| 37000 | 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" |
| 37020 | 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 |
| 37040 | 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | er">3</span>,.<span.class="tok-n |
| 37060 | 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | umber">4</span>.};.....<span.cla |
| 37080 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 6b 6e 6f 77 6e 5f 61 74 5f | ss="tok-kw">var</span>.known_at_ |
| 370a0 | 72 75 6e 74 69 6d 65 5f 7a 65 72 6f 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | runtime_zero:.<span.class="tok-t |
| 370c0 | 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= |
| 370e0 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 5f 20 3d 20 26 | "tok-number">0</span>;....._.=.& |
| 37100 | 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 0a 20 20 20 20 3c | amp;known_at_runtime_zero;.....< |
| 37120 | 73 70 61 6e 20 63 6c 61 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> |
| 37140 | 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 6e 74 69 6d 65 5f | .slice.=.array[known_at_runtime_ |
| 37160 | 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 61 6e 20 63 6c 61 | zero..array.len];......<span.cla |
| 37180 | 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 61 74 69 76 65 20 | ss="tok-comment">//.alternative. |
| 371a0 | 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 74 20 6c 6f 63 61 | initialization.using.result.loca |
| 371c0 | 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 74 6f 6b | tion</span>.....<span.class="tok |
| 371e0 | 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 65 3a 20 5b 5d 3c | -kw">const</span>.alt_slice:.[]< |
| 37200 | 73 70 61 6e 20 63 6c 61 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> |
| 37220 | 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 |
| 37240 | 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 74 6f 6b 2d 6e 75 | n>.=.&.{.<span.class="tok-nu |
| 37260 | 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 |
| 37280 | 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=" |
| 372a0 | 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 |
| 372c0 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 0a 20 20 20 20 | s="tok-number">4</span>.};...... |
| 372e0 | 3c 73 70 61 6e 20 63 6c 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>. |
| 37300 | 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 61 73 73 3d 22 74 | expectEqualSlices(<span.class="t |
| 37320 | 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 2c 20 61 6c 74 5f | ok-type">i32</span>,.slice,.alt_ |
| 37340 | 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 74 6f 6b 2d 6b 77 | slice);......<span.class="tok-kw |
| 37360 | 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= |
| 37380 | 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 |
| 373a0 | 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 70 65 22 3e | ce).==.[]<span.class="tok-type"> |
| 373c0 | 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 22 74 6f | i32</span>);.....<span.class="to |
| 373e0 | 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 26 61 6d 70 3b 73 6c 69 | k-kw">try</span>.expect(&sli |
| 37400 | 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 73 | ce[<span.class="tok-number">0</s |
| 37420 | 70 61 6e 3e 5d 20 3d 3d 20 26 61 6d 70 3b 61 72 72 61 79 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d | pan>].==.&array[<span.class= |
| 37440 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 5d 29 3b 0a 20 20 20 20 3c 73 70 | "tok-number">0</span>]);.....<sp |
| 37460 | 61 6e 20 63 6c 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 |
| 37480 | 65 63 74 28 73 6c 69 63 65 2e 6c 65 6e 20 3d 3d 20 61 72 72 61 79 2e 6c 65 6e 29 3b 0a 0a 20 20 | ect(slice.len.==.array.len);.... |
| 374a0 | 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 |
| 374c0 | 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 6b 6e 6f 77 6e 20 | f.you.slice.with.comptime-known. |
| 374e0 | 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 68 65 20 72 65 73 | start.and.end.positions,.the.res |
| 37500 | 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 61 73 73 3d 22 74 | ult.is</span>.....<span.class="t |
| 37520 | 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 6f 20 61 6e 20 61 | ok-comment">//.a.pointer.to.an.a |
| 37540 | 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 3c 2f 73 70 61 6e | rray,.rather.than.a.slice.</span |
| 37560 | 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 74 | >.....<span.class="tok-kw">const |
| 37580 | 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 3c 73 70 61 6e 20 | </span>.array_ptr.=.array[<span. |
| 375a0 | 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 61 72 72 | class="tok-number">0</span>..arr |
| 375c0 | 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 74 6f 6b 2d 6b 77 | ay.len];.....<span.class="tok-kw |
| 375e0 | 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= |
| 37600 | 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 61 72 72 | "tok-builtin">@TypeOf</span>(arr |
| 37620 | 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 61 6e 20 63 6c 61 | ay_ptr).==.*[array.len]<span.cla |
| 37640 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 20 20 20 20 | ss="tok-type">i32</span>);...... |
| 37660 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 59 6f 75 | <span.class="tok-comment">//.You |
| 37680 | 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 6e 67 74 68 20 62 | .can.perform.a.slice-by-length.b |
| 376a0 | 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 77 73 20 74 68 65 | y.slicing.twice..This.allows.the |
| 376c0 | 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 20 63 6c 61 73 73 | .compiler</span>.....<span.class |
| 376e0 | 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 72 6d 20 73 6f 6d | ="tok-comment">//.to.perform.som |
| 37700 | 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 6e 69 73 69 6e 67 | e.optimisations.like.recognising |
| 37720 | 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 68 65 6e 3c 2f 73 | .a.comptime-known.length.when</s |
| 37740 | 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 |
| 37760 | 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 73 20 6f 6e 6c 79 | t">//.the.start.position.is.only |
| 37780 | 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 20 20 20 20 3c 73 | .known.at.runtime.</span>.....<s |
| 377a0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 72 75 | pan.class="tok-kw">var</span>.ru |
| 377c0 | 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 74 6f 6b 2d 74 79 | ntime_start:.<span.class="tok-ty |
| 377e0 | 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=" |
| 37800 | 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 5f 20 3d 20 26 61 | tok-number">1</span>;....._.=.&a |
| 37820 | 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 6e 20 63 6c 61 73 | mp;runtime_start;.....<span.clas |
| 37840 | 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 6e 67 74 68 20 3d | s="tok-kw">const</span>.length.= |
| 37860 | 20 3c 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 |
| 37880 | 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 |
| 378a0 | 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 61 72 72 61 79 5b | st</span>.array_ptr_len.=.array[ |
| 378c0 | 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 73 73 3d 22 74 6f | runtime_start..][<span.class="to |
| 378e0 | 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 5d 3b 0a 20 20 20 | k-number">0</span>..length];.... |
| 37900 | 20 3c 73 70 61 6e 20 63 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> |
| 37920 | 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 |
| 37940 | 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 5f 6c 65 6e 29 20 | ">@TypeOf</span>(array_ptr_len). |
| 37960 | 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 6f 6b 2d 74 79 70 | ==.*[length]<span.class="tok-typ |
| 37980 | 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 20 63 6c 61 73 73 | e">i32</span>);......<span.class |
| 379a0 | 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 65 20 61 64 64 72 | ="tok-comment">//.Using.the.addr |
| 379c0 | 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 20 67 69 76 65 73 | ess-of.operator.on.a.slice.gives |
| 379e0 | 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 70 61 6e 3e 0a 20 | .a.single-item.pointer.</span>.. |
| 37a00 | 20 20 20 3c 73 70 61 6e 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 |
| 37a20 | 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 |
| 37a40 | 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 69 63 65 5b 3c 73 | in">@TypeOf</span>(&slice[<s |
| 37a60 | 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>] |
| 37a80 | 29 20 3d 3d 20 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 | ).==.*<span.class="tok-type">i32 |
| 37aa0 | 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 63 | </span>);.....<span.class="tok-c |
| 37ac0 | 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 20 66 69 65 6c 64 | omment">//.Using.the.`ptr`.field |
| 37ae0 | 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 2e 3c 2f 73 70 61 | .gives.a.many-item.pointer.</spa |
| 37b00 | 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< |
| 37b20 | 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 |
| 37b40 | 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 2e 70 74 72 | uiltin">@TypeOf</span>(slice.ptr |
| 37b60 | 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 79 70 65 22 3e 69 | ).==.[*]<span.class="tok-type">i |
| 37b80 | 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 |
| 37ba0 | 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 |
| 37bc0 | 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 70 | ss="tok-builtin">@intFromPtr</sp |
| 37be0 | 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 61 73 73 3d 22 74 | an>(slice.ptr).==.<span.class="t |
| 37c00 | 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 26 | ok-builtin">@intFromPtr</span>(& |
| 37c20 | 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 2d 6e 75 6d 62 65 | amp;slice[<span.class="tok-numbe |
| 37c40 | 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 20 63 6c 61 73 73 | r">0</span>]));......<span.class |
| 37c60 | 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 61 76 65 20 61 72 | ="tok-comment">//.Slices.have.ar |
| 37c80 | 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 75 20 74 72 79 20 | ray.bounds.checking..If.you.try. |
| 37ca0 | 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 70 61 6e 3e 0a 20 | to.access.something.out</span>.. |
| 37cc0 | 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">//. |
| 37ce0 | 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 66 65 74 79 20 63 | of.bounds,.you'll.get.a.safety.c |
| 37d00 | 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 6c 69 63 65 5b 3c | heck.failure:</span>.....slice[< |
| 37d20 | 73 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 |
| 37d40 | 3e 5d 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 | >].+=.<span.class="tok-number">1 |
| 37d60 | 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 63 | </span>;......<span.class="tok-c |
| 37d80 | 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 65 2e 70 74 72 60 | omment">//.Note.that.`slice.ptr` |
| 37da0 | 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 65 63 6b 69 6e 67 | .does.not.invoke.safety.checking |
| 37dc0 | 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 70 61 6e 3e 0a 20 | ,.while.`&slice[0]`</span>.. |
| 37de0 | 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">//. |
| 37e00 | 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 20 6c 65 6e 20 26 | asserts.that.the.slice.has.len.& |
| 37e20 | 67 74 3b 20 30 2e 3c 2f 73 70 61 6e 3e 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | gt;.0.</span>......<span.class=" |
| 37e40 | 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 45 6d 70 74 79 20 73 6c 69 63 65 73 20 63 61 6e | tok-comment">//.Empty.slices.can |
| 37e60 | 20 62 65 20 63 72 65 61 74 65 64 20 6c 69 6b 65 20 74 68 69 73 3a 3c 2f 73 70 61 6e 3e 0a 20 20 | .be.created.like.this:</span>... |
| 37e80 | 20 20 3c 73 70 61 6e 20 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 |
| 37ea0 | 61 6e 3e 20 65 6d 70 74 79 31 20 3d 20 26 61 6d 70 3b 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | an>.empty1.=.&[<span.class=" |
| 37ec0 | 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 73 | tok-number">0</span>]<span.class |
| 37ee0 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 7b 7d 3b 0a 20 20 20 20 3c 73 70 | ="tok-type">u8</span>{};.....<sp |
| 37f00 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 49 66 20 74 68 65 | an.class="tok-comment">//.If.the |
| 37f20 | 20 74 79 70 65 20 69 73 20 6b 6e 6f 77 6e 20 79 6f 75 20 63 61 6e 20 75 73 65 20 74 68 69 73 20 | .type.is.known.you.can.use.this. |
| 37f40 | 73 68 6f 72 74 20 68 61 6e 64 3a 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | short.hand:</span>.....<span.cla |
| 37f60 | 73 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 6d 70 74 79 32 3a | ss="tok-kw">const</span>.empty2: |
| 37f80 | 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 | .[]<span.class="tok-type">u8</sp |
| 37fa0 | 61 6e 3e 20 3d 20 26 61 6d 70 3b 2e 7b 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | an>.=.&.{};.....<span.class= |
| 37fc0 | 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 65 6d 70 74 79 | "tok-kw">try</span>.expect(empty |
| 37fe0 | 31 2e 6c 65 6e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | 1.len.==.<span.class="tok-number |
| 38000 | 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 |
| 38020 | 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 65 6d 70 74 79 32 2e 6c | k-kw">try</span>.expect(empty2.l |
| 38040 | 65 6e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 | en.==.<span.class="tok-number">0 |
| 38060 | 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- |
| 38080 | 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 41 20 7a 65 72 6f 2d 6c 65 6e 67 74 68 20 69 6e 69 74 69 61 | comment">//.A.zero-length.initia |
| 380a0 | 6c 69 7a 61 74 69 6f 6e 20 63 61 6e 20 61 6c 77 61 79 73 20 62 65 20 75 73 65 64 20 74 6f 20 63 | lization.can.always.be.used.to.c |
| 380c0 | 72 65 61 74 65 20 61 6e 20 65 6d 70 74 79 20 73 6c 69 63 65 2c 20 65 76 65 6e 20 69 66 20 74 68 | reate.an.empty.slice,.even.if.th |
| 380e0 | 65 20 73 6c 69 63 65 20 69 73 20 6d 75 74 61 62 6c 65 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c | e.slice.is.mutable.</span>.....< |
| 38100 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 69 73 | span.class="tok-comment">//.This |
| 38120 | 20 69 73 20 62 65 63 61 75 73 65 20 74 68 65 20 70 6f 69 6e 74 65 64 2d 74 6f 20 64 61 74 61 20 | .is.because.the.pointed-to.data. |
| 38140 | 69 73 20 7a 65 72 6f 20 62 69 74 73 20 6c 6f 6e 67 2c 20 73 6f 20 69 74 73 20 69 6d 6d 75 74 61 | is.zero.bits.long,.so.its.immuta |
| 38160 | 62 69 6c 69 74 79 20 69 73 20 69 72 72 65 6c 65 76 61 6e 74 2e 3c 2f 73 70 61 6e 3e 0a 7d 3c 2f | bility.is.irrelevant.</span>.}</ |
| 38180 | 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 |
| 381a0 | 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< |
| 381c0 | 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 |
| 381e0 | 67 20 74 65 73 74 20 74 65 73 74 5f 62 61 73 69 63 5f 73 6c 69 63 65 73 2e 7a 69 67 3c 2f 6b 62 | g.test.test_basic_slices.zig</kb |
| 38200 | 64 3e 0a 31 2f 31 20 74 65 73 74 5f 62 61 73 69 63 5f 73 6c 69 63 65 73 2e 74 65 73 74 2e 62 61 | d>.1/1.test_basic_slices.test.ba |
| 38220 | 73 69 63 20 73 6c 69 63 65 73 2e 2e 2e 74 68 72 65 61 64 20 31 31 30 30 39 35 35 20 70 61 6e 69 | sic.slices...thread.1100955.pani |
| 38240 | 63 3a 20 69 6e 64 65 78 20 6f 75 74 20 6f 66 20 62 6f 75 6e 64 73 3a 20 69 6e 64 65 78 20 31 30 | c:.index.out.of.bounds:.index.10 |
| 38260 | 2c 20 6c 65 6e 20 34 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f | ,.len.4.<span.class="sgr-1m">/ho |
| 38280 | 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 | me/andy/dev/zig/doc/langref/test |
| 382a0 | 5f 62 61 73 69 63 5f 73 6c 69 63 65 73 2e 7a 69 67 3a 34 31 3a 31 30 3c 2f 73 70 61 6e 3e 3a 20 | _basic_slices.zig:41:10</span>:. |
| 382c0 | 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 32 65 33 63 30 20 69 | <span.class="sgr-2m">0x102e3c0.i |
| 382e0 | 6e 20 74 65 73 74 2e 62 61 73 69 63 20 73 6c 69 63 65 73 20 28 74 65 73 74 5f 62 61 73 69 63 5f | n.test.basic.slices.(test_basic_ |
| 38300 | 73 6c 69 63 65 73 2e 7a 69 67 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 73 6c 69 63 65 5b 31 30 5d | slices.zig)</span>.....slice[10] |
| 38320 | 20 2b 3d 20 31 3b 0a 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 | .+=.1;..........<span.class="sgr |
| 38340 | 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- |
| 38360 | 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 63 6f 6d 70 69 | 1m">/home/andy/dev/zig/lib/compi |
| 38380 | 6c 65 72 2f 74 65 73 74 5f 72 75 6e 6e 65 72 2e 7a 69 67 3a 32 31 38 3a 32 35 3c 2f 73 70 61 6e | ler/test_runner.zig:218:25</span |
| 383a0 | 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 31 36 30 62 34 | >:.<span.class="sgr-2m">0x1160b4 |
| 383c0 | 30 20 69 6e 20 6d 61 69 6e 54 65 72 6d 69 6e 61 6c 20 28 74 65 73 74 5f 72 75 6e 6e 65 72 2e 7a | 0.in.mainTerminal.(test_runner.z |
| 383e0 | 69 67 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 69 66 20 28 74 65 73 74 5f 66 6e 2e 66 | ig)</span>.........if.(test_fn.f |
| 38400 | 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 20 | unc()).|_|.{.................... |
| 38420 | 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 |
| 38440 | 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 |
| 38460 | 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 63 6f 6d 70 69 6c 65 72 2f 74 65 73 74 5f 72 75 | ndy/dev/zig/lib/compiler/test_ru |
| 38480 | 6e 6e 65 72 2e 7a 69 67 3a 36 36 3a 32 38 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 | nner.zig:66:28</span>:.<span.cla |
| 384a0 | 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 31 35 39 64 36 31 20 69 6e 20 6d 61 69 6e 20 28 74 | ss="sgr-2m">0x1159d61.in.main.(t |
| 384c0 | 65 73 74 5f 72 75 6e 6e 65 72 2e 7a 69 67 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 72 | est_runner.zig)</span>.........r |
| 384e0 | 65 74 75 72 6e 20 6d 61 69 6e 54 65 72 6d 69 6e 61 6c 28 29 3b 0a 20 20 20 20 20 20 20 20 20 20 | eturn.mainTerminal();........... |
| 38500 | 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 |
| 38520 | 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 |
| 38540 | 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f | -1m">/home/andy/dev/zig/lib/std/ |
| 38560 | 73 74 61 72 74 2e 7a 69 67 3a 36 31 38 3a 32 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 | start.zig:618:22</span>:.<span.c |
| 38580 | 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 31 35 33 61 66 64 20 69 6e 20 70 6f 73 69 78 | lass="sgr-2m">0x1153afd.in.posix |
| 385a0 | 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 20 28 73 74 64 2e 7a 69 67 29 3c 2f 73 70 61 6e 3e | CallMainAndExit.(std.zig)</span> |
| 385c0 | 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();....... |
| 385e0 | 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- |
| 38600 | 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 |
| 38620 | 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 | m">/home/andy/dev/zig/lib/std/st |
| 38640 | 61 72 74 2e 7a 69 67 3a 32 33 32 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 | art.zig:232:5</span>:.<span.clas |
| 38660 | 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 31 35 33 33 39 31 20 69 6e 20 5f 73 74 61 72 74 20 28 | s="sgr-2m">0x1153391.in._start.( |
| 38680 | 73 74 64 2e 7a 69 67 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 | std.zig)</span>.....asm.volatile |
| 386a0 | 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 |
| 386c0 | 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 |
| 386e0 | 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>: |
| 38700 | 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.??? |
| 38720 | 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 6c 6c 6f 77 69 | .(???)</span>.error:.the.followi |
| 38740 | 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 6f 6d 65 2f 61 | ng.test.command.crashed:./home/a |
| 38760 | 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 2e 7a 69 67 2d 63 61 63 68 65 2f 6f 2f 37 34 62 62 61 65 65 | ndy/dev/zig/.zig-cache/o/74bbaee |
| 38780 | 62 30 31 35 31 31 39 37 37 31 39 31 35 32 66 36 32 61 65 31 61 63 33 34 30 2f 74 65 73 74 20 2d | b0151197719152f62ae1ac340/test.- |
| 387a0 | 2d 73 65 65 64 3d 30 78 64 35 31 64 36 62 32 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 | -seed=0xd51d6b2.</samp></pre></f |
| 387c0 | 69 67 75 72 65 3e 0a 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 | igure>........<p>This.is.one.rea |
| 387e0 | 73 6f 6e 20 77 65 20 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 | son.we.prefer.slices.to.pointers |
| 38800 | 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. |
| 38820 | 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 |
| 38840 | 65 22 3e 74 65 73 74 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 | e">test_slices.zig</cite></figca |
| 38860 | 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 |
| 38880 | 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 |
| 388a0 | 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 |
| 388c0 | 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 |
| 388e0 | 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 |
| 38900 | 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. |
| 38920 | 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 6b | testing.expect;.<span.class="tok |
| 38940 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6d 65 6d 20 3d 20 73 74 64 2e 6d 65 6d 3b | -kw">const</span>.mem.=.std.mem; |
| 38960 | 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 |
| 38980 | 6e 3e 20 66 6d 74 20 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 | n>.fmt.=.std.fmt;..<span.class=" |
| 389a0 | 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= |
| 389c0 | 22 74 6f 6b 2d 73 74 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 | "tok-str">"using.slices.for |
| 389e0 | 20 73 74 72 69 6e 67 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 | .strings"</span>.{.....<spa |
| 38a00 | 6e 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 69 67 20 68 61 73 | n.class="tok-comment">//.Zig.has |
| 38a20 | 20 6e 6f 20 63 6f 6e 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 | .no.concept.of.strings..String.l |
| 38a40 | 69 74 65 72 61 6c 73 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 | iterals.are.const.pointers</span |
| 38a60 | 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"> |
| 38a80 | 2f 2f 20 74 6f 20 6e 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 | //.to.null-terminated.arrays.of. |
| 38aa0 | 75 38 2c 20 61 6e 64 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 | u8,.and.by.convention.parameters |
| 38ac0 | 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 |
| 38ae0 | 6d 65 6e 74 22 3e 2f 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 | ment">//.that.are."strings& |
| 38b00 | 71 75 6f 74 3b 20 61 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 | quot;.are.expected.to.be.UTF-8.e |
| 38b20 | 6e 63 6f 64 65 64 20 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 | ncoded.slices.of.u8.</span>..... |
| 38b40 | 3c 73 70 61 6e 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 |
| 38b60 | 65 20 77 65 20 63 6f 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 | e.we.coerce.*const.[5:0]u8.and.* |
| 38b80 | 63 6f 6e 73 74 20 5b 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 | const.[6:0]u8.to.[]const.u8</spa |
| 38ba0 | 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 |
| 38bc0 | 74 3c 2f 73 70 61 6e 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 | t</span>.hello:.[]<span.class="t |
| 38be0 | 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= |
| 38c00 | 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 | "tok-type">u8</span>.=.<span.cla |
| 38c20 | 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 68 65 6c 6c 6f 26 71 75 6f 74 3b 3c 2f | ss="tok-str">"hello"</ |
| 38c40 | 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"> |
| 38c60 | 63 6f 6e 73 74 3c 2f 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 | const</span>.world:.[]<span.clas |
| 38c80 | 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 |
| 38ca0 | 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 |
| 38cc0 | 20 63 6c 61 73 73 3d 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 | .class="tok-str">"......&qu |
| 38ce0 | 6f 74 3b 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 | ot;</span>;......<span.class="to |
| 38d00 | 6b 2d 6b 77 22 3e 76 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 | k-kw">var</span>.all_together:.[ |
| 38d20 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 30 3c 2f 73 70 | <span.class="tok-number">100</sp |
| 38d40 | 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 73 | an>]<span.class="tok-type">u8</s |
| 38d60 | 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 75 6e | pan>.=.<span.class="tok-null">un |
| 38d80 | 64 65 66 69 6e 65 64 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | defined</span>;.....<span.class= |
| 38da0 | 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 75 73 65 20 73 6c 69 | "tok-comment">//.You.can.use.sli |
| 38dc0 | 63 65 20 73 79 6e 74 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 | ce.syntax.with.at.least.one.runt |
| 38de0 | 69 6d 65 2d 6b 6e 6f 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 | ime-known.index.on.an</span>.... |
| 38e00 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 61 72 | .<span.class="tok-comment">//.ar |
| 38e20 | 72 61 79 20 74 6f 20 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 | ray.to.convert.an.array.into.a.s |
| 38e40 | 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 74 6f | lice.</span>.....<span.class="to |
| 38e60 | 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 73 74 61 72 74 3a 20 3c 73 70 61 6e 20 63 6c | k-kw">var</span>.start:.<span.cl |
| 38e80 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 | ass="tok-type">usize</span>.=.<s |
| 38ea0 | 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>; |
| 38ec0 | 0a 20 20 20 20 5f 20 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 | ....._.=.&start;.....<span.c |
| 38ee0 | 6c 61 73 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 5f 74 | lass="tok-kw">const</span>.all_t |
| 38f00 | 6f 67 65 74 68 65 72 5f 73 6c 69 63 65 20 3d 20 61 6c 6c 5f 74 6f 67 65 74 68 65 72 5b 73 74 61 | ogether_slice.=.all_together[sta |
| 38f20 | 72 74 2e 2e 5d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d | rt..];.....<span.class="tok-comm |
| 38f40 | 65 6e 74 22 3e 2f 2f 20 53 74 72 69 6e 67 20 63 6f 6e 63 61 74 65 6e 61 74 69 6f 6e 20 65 78 61 | ent">//.String.concatenation.exa |
| 38f60 | 6d 70 6c 65 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | mple.</span>.....<span.class="to |
| 38f80 | 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 68 65 6c 6c 6f 5f 77 6f 72 6c 64 20 3d | k-kw">const</span>.hello_world.= |
| 38fa0 | 20 3c 73 70 61 6e 20 63 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> |
| 38fc0 | 20 66 6d 74 2e 62 75 66 50 72 69 6e 74 28 61 6c 6c 5f 74 6f 67 65 74 68 65 72 5f 73 6c 69 63 65 | .fmt.bufPrint(all_together_slice |
| 38fe0 | 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 7b 73 | ,.<span.class="tok-str">"{s |
| 39000 | 7d 20 7b 73 7d 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 20 68 65 6c 6c 6f 2c 20 77 6f | }.{s}"</span>,..{.hello,.wo |
| 39020 | 72 6c 64 20 7d 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f | rld.});......<span.class="tok-co |
| 39040 | 6d 6d 65 6e 74 22 3e 2f 2f 20 47 65 6e 65 72 61 6c 6c 79 2c 20 79 6f 75 20 63 61 6e 20 75 73 65 | mment">//.Generally,.you.can.use |
| 39060 | 20 55 54 46 2d 38 20 61 6e 64 20 6e 6f 74 20 77 6f 72 72 79 20 61 62 6f 75 74 20 77 68 65 74 68 | .UTF-8.and.not.worry.about.wheth |
| 39080 | 65 72 20 73 6f 6d 65 74 68 69 6e 67 20 69 73 20 61 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 | er.something.is.a</span>.....<sp |
| 390a0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 73 74 72 69 6e 67 | an.class="tok-comment">//.string |
| 390c0 | 2e 20 49 66 20 79 6f 75 20 64 6f 6e 27 74 20 6e 65 65 64 20 74 6f 20 64 65 61 6c 20 77 69 74 68 | ..If.you.don't.need.to.deal.with |
| 390e0 | 20 69 6e 64 69 76 69 64 75 61 6c 20 63 68 61 72 61 63 74 65 72 73 2c 20 6e 6f 20 6e 65 65 64 3c | .individual.characters,.no.need< |
| 39100 | 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 |
| 39120 | 65 6e 74 22 3e 2f 2f 20 74 6f 20 64 65 63 6f 64 65 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 | ent">//.to.decode.</span>.....<s |
| 39140 | 70 61 6e 20 63 6c 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 |
| 39160 | 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 |
| 39180 | 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 68 65 6c 6c 6f 5f 77 6f 72 6c 64 2c 20 3c 73 70 61 | pe">u8</span>,.hello_world,.<spa |
| 391a0 | 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 20 e4 b8 | n.class="tok-str">"hello... |
| 391c0 | 96 e7 95 8c 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c | ...."</span>));.}..<span.cl |
| 391e0 | 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 |
| 39200 | 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 6c 69 63 65 20 70 6f 69 6e 74 | lass="tok-str">"slice.point |
| 39220 | 65 72 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | er"</span>.{.....<span.clas |
| 39240 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 61 72 72 61 79 3a 20 5b 3c 73 | s="tok-kw">var</span>.array:.[<s |
| 39260 | 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> |
| 39280 | 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 |
| 392a0 | 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 75 6e 64 65 66 | >.=.<span.class="tok-null">undef |
| 392c0 | 69 6e 65 64 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ined</span>;.....<span.class="to |
| 392e0 | 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 70 74 72 20 3d 20 26 61 6d 70 3b 61 72 | k-kw">const</span>.ptr.=.&ar |
| 39300 | 72 61 79 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 | ray;.....<span.class="tok-kw">tr |
| 39320 | 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 |
| 39340 | 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 70 74 72 29 20 3d 3d | -builtin">@TypeOf</span>(ptr).== |
| 39360 | 20 2a 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 3c 2f | .*[<span.class="tok-number">10</ |
| 39380 | 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< |
| 393a0 | 2f 73 70 61 6e 3e 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 | /span>);......<span.class="tok-c |
| 393c0 | 6f 6d 6d 65 6e 74 22 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 | omment">//.A.pointer.to.an.array |
| 393e0 | 20 63 61 6e 20 62 65 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 | .can.be.sliced.just.like.an.arra |
| 39400 | 79 3a 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | y:</span>.....<span.class="tok-k |
| 39420 | 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 73 74 61 72 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 | w">var</span>.start:.<span.class |
| 39440 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e | ="tok-type">usize</span>.=.<span |
| 39460 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 3b 0a 20 20 | .class="tok-number">0</span>;... |
| 39480 | 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 |
| 394a0 | 3e 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 |
| 394c0 | 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 |
| 394e0 | 6d 62 65 72 22 3e 35 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 | mber">5</span>;....._.=..{.& |
| 39500 | 73 74 61 72 74 2c 20 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 | start,.&end.};.....<span.cla |
| 39520 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 6c 69 63 65 20 3d | ss="tok-kw">const</span>.slice.= |
| 39540 | 20 70 74 72 5b 73 74 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 | .ptr[start..end];.....<span.clas |
| 39560 | 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 65 20 73 6c 69 63 65 20 69 73 20 | s="tok-comment">//.The.slice.is. |
| 39580 | 6d 75 74 61 62 6c 65 20 62 65 63 61 75 73 65 20 77 65 20 73 6c 69 63 65 64 20 61 20 6d 75 74 61 | mutable.because.we.sliced.a.muta |
| 395a0 | 62 6c 65 20 70 6f 69 6e 74 65 72 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | ble.pointer.</span>.....<span.cl |
| 395c0 | 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(< |
| 395e0 | 73 70 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 |
| 39600 | 3c 2f 73 70 61 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 | </span>(slice).==.[]<span.class= |
| 39620 | 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 73 6c 69 63 65 | "tok-type">u8</span>);.....slice |
| 39640 | 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 | [<span.class="tok-number">2</spa |
| 39660 | 6e 3e 5d 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 | n>].=.<span.class="tok-number">3 |
| 39680 | 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 |
| 396a0 | 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 61 72 72 61 79 5b 3c 73 70 61 6e 20 | ">try</span>.expect(array[<span. |
| 396c0 | 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 3d 20 | class="tok-number">2</span>].==. |
| 396e0 | 3c 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 |
| 39700 | 3e 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e | >);......<span.class="tok-commen |
| 39720 | 74 22 3e 2f 2f 20 41 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 | t">//.Again,.slicing.with.compti |
| 39740 | 6d 65 2d 6b 6e 6f 77 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 | me-known.indexes.will.produce.an |
| 39760 | 6f 74 68 65 72 20 70 6f 69 6e 74 65 72 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 | other.pointer</span>.....<span.c |
| 39780 | 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 74 6f 20 61 6e 20 61 72 72 61 | lass="tok-comment">//.to.an.arra |
| 397a0 | 79 3a 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | y:</span>.....<span.class="tok-k |
| 397c0 | 77 22 3e 63 6f 6e 73 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 | w">const</span>.ptr2.=.slice[<sp |
| 397e0 | 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 2e 2e | an.class="tok-number">2</span>.. |
| 39800 | 3c 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 |
| 39820 | 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 22 3e 74 72 79 | >];.....<span.class="tok-kw">try |
| 39840 | 3c 2f 73 70 61 6e 3e 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 | </span>.expect(ptr2.len.==.<span |
| 39860 | 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 20 | .class="tok-number">1</span>);.. |
| 39880 | 20 20 20 3c 73 70 61 6e 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 |
| 398a0 | 6e 3e 20 65 78 70 65 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 | n>.expect(ptr2[<span.class="tok- |
| 398c0 | 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 |
| 398e0 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 | ="tok-number">3</span>);.....<sp |
| 39900 | 61 6e 20 63 6c 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 |
| 39920 | 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 |
| 39940 | 79 70 65 4f 66 3c 2f 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 | ypeOf</span>(ptr2).==.*[<span.cl |
| 39960 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 5d 3c 73 70 61 6e 20 | ass="tok-number">1</span>]<span. |
| 39980 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f | class="tok-type">u8</span>);.}</ |
| 399a0 | 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 |
| 399c0 | 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< |
| 399e0 | 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 |
| 39a00 | 67 20 74 65 73 74 20 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 | g.test.test_slices.zig</kbd>.1/2 |
| 39a20 | 20 74 65 73 74 5f 73 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 | .test_slices.test.using.slices.f |
| 39a40 | 6f 72 20 73 74 72 69 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 | or.strings...OK.2/2.test_slices. |
| 39a60 | 74 65 73 74 2e 73 6c 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 | test.slice.pointer...OK.All.2.te |
| 39a80 | 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 |
| 39aa0 | 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>.< |
| 39ac0 | 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 50 6f 69 6e 74 65 72 73 22 3e 50 6f 69 6e 74 65 72 73 3c | li><a.href="#Pointers">Pointers< |
| 39ae0 | 2f 61 3e 3c 2f 6c 69 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 | /a></li>.<li><a.href="#for">for< |
| 39b00 | 2f 61 3e 3c 2f 6c 69 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 | /a></li>.<li><a.href="#Arrays">A |
| 39b20 | 72 72 61 79 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 | rrays</a></li>.</ul>.........<h3 |
| 39b40 | 20 69 64 3d 22 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 | .id="Sentinel-Terminated-Slices" |
| 39b60 | 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 53 65 6e 74 69 6e 65 6c 2d 54 65 72 6d 69 6e 61 74 | ><a.href="#toc-Sentinel-Terminat |
| 39b80 | 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 |
| 39ba0 | 6c 69 63 65 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 | lices</a>.<a.class="hdr".href="# |
| 39bc0 | 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 c2 a7 3c 2f | Sentinel-Terminated-Slices">..</ |
| 39be0 | 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 20 73 79 6e | a></h3>........<p>.......The.syn |
| 39c00 | 74 61 78 20 3c 63 6f 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 | tax.<code>[:x]T</code>.is.a.slic |
| 39c20 | 65 20 77 68 69 63 68 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 | e.which.has.a.runtime-known.leng |
| 39c40 | 74 68 0a 20 20 20 20 20 20 61 6e 64 20 61 6c 73 6f 20 67 75 61 72 61 6e 74 65 65 73 20 61 20 73 | th.......and.also.guarantees.a.s |
| 39c60 | 65 6e 74 69 6e 65 6c 20 76 61 6c 75 65 20 61 74 20 74 68 65 20 65 6c 65 6d 65 6e 74 20 69 6e 64 | entinel.value.at.the.element.ind |
| 39c80 | 65 78 65 64 20 62 79 20 74 68 65 20 6c 65 6e 67 74 68 2e 20 54 68 65 20 74 79 70 65 20 64 6f 65 | exed.by.the.length..The.type.doe |
| 39ca0 | 73 20 6e 6f 74 0a 20 20 20 20 20 20 67 75 61 72 61 6e 74 65 65 20 74 68 61 74 20 74 68 65 72 65 | s.not.......guarantee.that.there |
| 39cc0 | 20 61 72 65 20 6e 6f 20 73 65 6e 74 69 6e 65 6c 20 65 6c 65 6d 65 6e 74 73 20 62 65 66 6f 72 65 | .are.no.sentinel.elements.before |
| 39ce0 | 20 74 68 61 74 2e 20 53 65 6e 74 69 6e 65 6c 2d 74 65 72 6d 69 6e 61 74 65 64 20 73 6c 69 63 65 | .that..Sentinel-terminated.slice |
| 39d00 | 73 20 61 6c 6c 6f 77 20 65 6c 65 6d 65 6e 74 0a 20 20 20 20 20 20 61 63 63 65 73 73 20 74 6f 20 | s.allow.element.......access.to. |
| 39d20 | 74 68 65 20 3c 63 6f 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 | the.<code>len</code>.index...... |
| 39d40 | 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 |
| 39d60 | 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 |
| 39d80 | 6c 65 22 3e 74 65 73 74 5f 6e 75 6c 6c 5f 74 65 72 6d 69 6e 61 74 65 64 5f 73 6c 69 63 65 2e 7a | le">test_null_terminated_slice.z |
| 39da0 | 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 |
| 39dc0 | 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 |
| 39de0 | 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 |
| 39e00 | 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 |
| 39e20 | 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>); |
| 39e40 | 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 |
| 39e60 | 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;. |
| 39e80 | 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 |
| 39ea0 | 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 30 2d | >.<span.class="tok-str">"0- |
| 39ec0 | 74 65 72 6d 69 6e 61 74 65 64 20 73 6c 69 63 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a | terminated.slice"</span>.{. |
| 39ee0 | 20 20 20 20 3c 73 70 61 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</ |
| 39f00 | 73 70 61 6e 3e 20 73 6c 69 63 65 3a 20 5b 3a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | span>.slice:.[:<span.class="tok- |
| 39f20 | 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 |
| 39f40 | 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=" |
| 39f60 | 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 |
| 39f80 | 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 68 65 6c 6c 6f 26 71 75 6f 74 3b 3c 2f 73 | s="tok-str">"hello"</s |
| 39fa0 | 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"> |
| 39fc0 | 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.==.< |
| 39fe0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e | span.class="tok-number">5</span> |
| 3a000 | 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< |
| 3a020 | 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 73 6c 69 63 65 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d | /span>.expect(slice[<span.class= |
| 3a040 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 5d 20 3d 3d 20 3c 73 70 61 6e 20 | "tok-number">5</span>].==.<span. |
| 3a060 | 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 7d 3c | class="tok-number">0</span>);.}< |
| 3a080 | 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 |
| 3a0a0 | 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 |
| 3a0c0 | 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 |
| 3a0e0 | 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 65 64 5f 73 6c 69 | ig.test.test_null_terminated_sli |
| 3a100 | 63 65 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 6e 75 6c 6c 5f 74 65 72 6d 69 | ce.zig</kbd>.1/1.test_null_termi |
| 3a120 | 6e 61 74 65 64 5f 73 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 | nated_slice.test.0-terminated.sl |
| 3a140 | 69 63 65 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 73 | ice...OK.All.1.tests.passed..</s |
| 3a160 | 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 | amp></pre></figure>........<p>.. |
| 3a180 | 20 20 20 20 20 53 65 6e 74 69 6e 65 6c 2d 74 65 72 6d 69 6e 61 74 65 64 20 73 6c 69 63 65 73 20 | .....Sentinel-terminated.slices. |
| 3a1a0 | 63 61 6e 20 61 6c 73 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 | can.also.be.created.using.a.vari |
| 3a1c0 | 61 74 69 6f 6e 20 6f 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 | ation.of.the.slice.syntax....... |
| 3a1e0 | 3c 63 6f 64 65 3e 64 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 | <code>data[start..end.:x]</code> |
| 3a200 | 2c 20 77 68 65 72 65 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 | ,.where.<code>data</code>.is.a.m |
| 3a220 | 61 6e 79 2d 69 74 65 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 | any-item.pointer,.......array.or |
| 3a240 | 20 73 6c 69 63 65 20 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 | .slice.and.<code>x</code>.is.the |
| 3a260 | 20 73 65 6e 74 69 6e 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 | .sentinel.value........</p>..... |
| 3a280 | 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 |
| 3a2a0 | 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 6e 75 | -cap"><cite.class="file">test_nu |
| 3a2c0 | 6c 6c 5f 74 65 72 6d 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 | ll_terminated_slicing.zig</cite> |
| 3a2e0 | 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 |
| 3a300 | 61 73 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.=. |
| 3a320 | 3c 73 70 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 |
| 3a340 | 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">& |
| 3a360 | 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 |
| 3a380 | 61 73 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 |
| 3a3a0 | 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 |
| 3a3c0 | 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 |
| 3a3e0 | 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 |
| 3a400 | 64 20 73 6c 69 63 69 6e 67 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 | d.slicing"</span>.{.....<sp |
| 3a420 | 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 |
| 3a440 | 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 75 | ay.=.[_]<span.class="tok-type">u |
| 3a460 | 38 3c 2f 73 70 61 6e 3e 7b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | 8</span>{.<span.class="tok-numbe |
| 3a480 | 72 22 3e 33 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | r">3</span>,.<span.class="tok-nu |
| 3a4a0 | 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 6b | mber">2</span>,.<span.class="tok |
| 3a4c0 | 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | -number">1</span>,.<span.class=" |
| 3a4e0 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 | tok-number">0</span>,.<span.clas |
| 3a500 | 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 63 | s="tok-number">3</span>,.<span.c |
| 3a520 | 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 |
| 3a540 | 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>,.< |
| 3a560 | 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> |
| 3a580 | 20 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 | .};.....<span.class="tok-kw">var |
| 3a5a0 | 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 20 63 6c | </span>.runtime_length:.<span.cl |
| 3a5c0 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 | ass="tok-type">usize</span>.=.<s |
| 3a5e0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 3b | pan.class="tok-number">3</span>; |
| 3a600 | 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 0a 20 20 | ....._.=.&runtime_length;... |
| 3a620 | 20 20 3c 73 70 61 6e 20 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 |
| 3a640 | 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 3d 22 74 | an>.slice.=.array[<span.class="t |
| 3a660 | 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 6c 65 6e | ok-number">0</span>..runtime_len |
| 3a680 | 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 3e 30 3c | gth.:<span.class="tok-number">0< |
| 3a6a0 | 2f 73 70 61 6e 3e 5d 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 |
| 3a6c0 | 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 | w">try</span>.expect(<span.class |
| 3a6e0 | 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 73 6c | ="tok-builtin">@TypeOf</span>(sl |
| 3a700 | 69 63 65 29 20 3d 3d 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 | ice).==.[:<span.class="tok-numbe |
| 3a720 | 72 22 3e 30 3c 2f 73 70 61 6e 3e 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | r">0</span>]<span.class="tok-typ |
| 3a740 | 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | e">u8</span>);.....<span.class=" |
| 3a760 | 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 73 6c 69 63 65 2e | tok-kw">try</span>.expect(slice. |
| 3a780 | 6c 65 6e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e | len.==.<span.class="tok-number"> |
| 3a7a0 | 33 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 | 3</span>);.}</code></pre></figur |
| 3a7c0 | 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 |
| 3a7e0 | 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>< |
| 3a800 | 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 6e 75 6c 6c 5f 74 | samp>$.<kbd>zig.test.test_null_t |
| 3a820 | 65 72 6d 69 6e 61 74 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 | erminated_slicing.zig</kbd>.1/1. |
| 3a840 | 74 65 73 74 5f 6e 75 6c 6c 5f 74 65 72 6d 69 6e 61 74 65 64 5f 73 6c 69 63 69 6e 67 2e 74 65 73 | test_null_terminated_slicing.tes |
| 3a860 | 74 2e 30 2d 74 65 72 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 | t.0-terminated.slicing...OK.All. |
| 3a880 | 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 |
| 3a8a0 | 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 6e 74 69 6e 65 6c | igure>........<p>.......Sentinel |
| 3a8c0 | 2d 74 65 72 6d 69 6e 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 | -terminated.slicing.asserts.that |
| 3a8e0 | 20 74 68 65 20 65 6c 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 | .the.element.in.the.sentinel.pos |
| 3a900 | 69 74 69 6f 6e 20 6f 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 | ition.of.the.backing.data.is.... |
| 3a920 | 20 20 20 61 63 74 75 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 | ...actually.the.sentinel.value.. |
| 3a940 | 49 66 20 74 68 69 73 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 | If.this.is.not.the.case,.safety- |
| 3a960 | 63 68 65 63 6b 65 64 20 3c 61 20 68 72 65 66 3d 22 23 49 6c 6c 65 67 61 6c 2d 42 65 68 61 76 69 | checked.<a.href="#Illegal-Behavi |
| 3a980 | 6f 72 22 3e 49 6c 6c 65 67 61 6c 20 42 65 68 61 76 69 6f 72 3c 2f 61 3e 20 72 65 73 75 6c 74 73 | or">Illegal.Behavior</a>.results |
| 3a9a0 | 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 |
| 3a9c0 | 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 |
| 3a9e0 | 73 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 | ss="file">test_sentinel_mismatch |
| 3aa00 | 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 |
| 3aa20 | 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 |
| 3aa40 | 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 |
| 3aa60 | 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= |
| 3aa80 | 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> |
| 3aaa0 | 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 |
| 3aac0 | 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 |
| 3aae0 | 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 |
| 3ab00 | 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">" |
| 3ab20 | 73 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 | sentinel.mismatch"</span>.{ |
| 3ab40 | 0a 20 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 |
| 3ab60 | 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 22 74 6f 6b | pan>.array.=.[_]<span.class="tok |
| 3ab80 | 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 |
| 3aba0 | 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 |
| 3abc0 | 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 |
| 3abe0 | 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 |
| 3ac00 | 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>.};. |
| 3ac20 | 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">/ |
| 3ac40 | 2f 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 | /.Creating.a.sentinel-terminated |
| 3ac60 | 20 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 | .slice.from.the.array.with.a.len |
| 3ac80 | 67 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 | gth.of.2</span>.....<span.class= |
| 3aca0 | 22 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 | "tok-comment">//.will.result.in. |
| 3acc0 | 74 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 | the.value.`1`.occupying.the.sent |
| 3ace0 | 69 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 | inel.element.position.</span>... |
| 3ad00 | 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 |
| 3ad20 | 68 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 | his.does.not.match.the.indicated |
| 3ad40 | 20 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 | .sentinel.value.of.`0`.and.will. |
| 3ad60 | 6c 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 | lead</span>.....<span.class="tok |
| 3ad80 | 2d 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 | -comment">//.to.a.runtime.panic. |
| 3ada0 | 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" |
| 3adc0 | 3e 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 | >var</span>.runtime_length:.<spa |
| 3ade0 | 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>. |
| 3ae00 | 3d 20 3c 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 |
| 3ae20 | 61 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 | an>;....._.=.&runtime_length |
| 3ae40 | 3b 0a 20 20 20 20 3c 73 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 |
| 3ae60 | 3c 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 | </span>.slice.=.array[<span.clas |
| 3ae80 | 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 72 75 6e 74 69 6d 65 | s="tok-number">0</span>..runtime |
| 3aea0 | 5f 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 | _length.:<span.class="tok-number |
| 3aec0 | 22 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 | ">0</span>];......_.=.slice;.}</ |
| 3aee0 | 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 |
| 3af00 | 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< |
| 3af20 | 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 |
| 3af40 | 67 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 | g.test.test_sentinel_mismatch.zi |
| 3af60 | 67 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 | g</kbd>.1/1.test_sentinel_mismat |
| 3af80 | 63 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 | ch.test.sentinel.mismatch...thre |
| 3afa0 | 61 64 20 31 31 30 31 32 37 35 20 70 61 6e 69 63 3a 20 73 65 6e 74 69 6e 65 6c 20 6d 69 73 6d 61 | ad.1101275.panic:.sentinel.misma |
| 3afc0 | 74 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 | tch:.expected.0,.found.1.<span.c |
| 3afe0 | 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 | lass="sgr-1m">/home/andy/dev/zig |
| 3b000 | 2f 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 | /doc/langref/test_sentinel_misma |
| 3b020 | 74 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 | tch.zig:13:24</span>:.<span.clas |
| 3b040 | 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 32 63 31 31 37 20 69 6e 20 74 65 73 74 2e 73 65 6e | s="sgr-2m">0x102c117.in.test.sen |
| 3b060 | 74 69 6e 65 6c 20 6d 69 73 6d 61 74 63 68 20 28 74 65 73 74 5f 73 65 6e 74 69 6e 65 6c 5f 6d 69 | tinel.mismatch.(test_sentinel_mi |
| 3b080 | 73 6d 61 74 63 68 2e 7a 69 67 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 63 6f 6e 73 74 20 73 6c 69 | smatch.zig)</span>.....const.sli |
| 3b0a0 | 63 65 20 3d 20 61 72 72 61 79 5b 30 2e 2e 72 75 6e 74 69 6d 65 5f 6c 65 6e 67 74 68 20 3a 30 5d | ce.=.array[0..runtime_length.:0] |
| 3b0c0 | 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 3c 73 70 61 6e 20 63 | ;........................<span.c |
| 3b0e0 | 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 |
| 3b100 | 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f | ass="sgr-1m">/home/andy/dev/zig/ |
| 3b120 | 6c 69 62 2f 63 6f 6d 70 69 6c 65 72 2f 74 65 73 74 5f 72 75 6e 6e 65 72 2e 7a 69 67 3a 32 31 38 | lib/compiler/test_runner.zig:218 |
| 3b140 | 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 22 | :25</span>:.<span.class="sgr-2m" |
| 3b160 | 3e 30 78 31 31 35 63 63 37 30 20 69 6e 20 6d 61 69 6e 54 65 72 6d 69 6e 61 6c 20 28 74 65 73 74 | >0x115cc70.in.mainTerminal.(test |
| 3b180 | 5f 72 75 6e 6e 65 72 2e 7a 69 67 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 69 66 20 28 | _runner.zig)</span>.........if.( |
| 3b1a0 | 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 20 | test_fn.func()).|_|.{........... |
| 3b1c0 | 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 |
| 3b1e0 | 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 |
| 3b200 | 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 63 6f 6d 70 69 6c 65 | ">/home/andy/dev/zig/lib/compile |
| 3b220 | 72 2f 74 65 73 74 5f 72 75 6e 6e 65 72 2e 7a 69 67 3a 36 36 3a 32 38 3c 2f 73 70 61 6e 3e 3a 20 | r/test_runner.zig:66:28</span>:. |
| 3b240 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 31 35 35 65 39 31 20 69 | <span.class="sgr-2m">0x1155e91.i |
| 3b260 | 6e 20 6d 61 69 6e 20 28 74 65 73 74 5f 72 75 6e 6e 65 72 2e 7a 69 67 29 3c 2f 73 70 61 6e 3e 0a | n.main.(test_runner.zig)</span>. |
| 3b280 | 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 0a 20 | ........return.mainTerminal();.. |
| 3b2a0 | 20 20 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. |
| 3b2c0 | 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 |
| 3b2e0 | 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 | lass="sgr-1m">/home/andy/dev/zig |
| 3b300 | 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 36 31 38 3a 32 32 3c 2f 73 70 61 6e 3e | /lib/std/start.zig:618:22</span> |
| 3b320 | 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 31 34 66 63 32 64 | :.<span.class="sgr-2m">0x114fc2d |
| 3b340 | 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 73 74 64 2e 7a 69 | .in.posixCallMainAndExit.(std.zi |
| 3b360 | 67 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 | g)</span>.............root.main( |
| 3b380 | 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 |
| 3b3a0 | 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 |
| 3b3c0 | 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c | ss="sgr-1m">/home/andy/dev/zig/l |
| 3b3e0 | 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 32 33 32 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c | ib/std/start.zig:232:5</span>:.< |
| 3b400 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 31 34 66 34 63 31 20 69 6e | span.class="sgr-2m">0x114f4c1.in |
| 3b420 | 20 5f 73 74 61 72 74 20 28 73 74 64 2e 7a 69 67 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 61 73 6d | ._start.(std.zig)</span>.....asm |
| 3b440 | 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 20 | .volatile.(switch.(native_arch). |
| 3b460 | 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 73 | {.....<span.class="sgr-32m">^</s |
| 3b480 | 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 3a | pan>.<span.class="sgr-1m">???:?: |
| 3b4a0 | 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 30 | ?</span>:.<span.class="sgr-2m">0 |
| 3b4c0 | 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 68 | x0.in.???.(???)</span>.error:.th |
| 3b4e0 | 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 64 | e.following.test.command.crashed |
| 3b500 | 3a 0a 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 2e 7a 69 67 2d 63 61 63 68 65 2f | :./home/andy/dev/zig/.zig-cache/ |
| 3b520 | 6f 2f 66 34 61 62 33 32 37 64 34 32 63 37 31 33 36 66 34 39 62 64 63 30 37 61 36 30 31 61 62 33 | o/f4ab327d42c7136f49bdc07a601ab3 |
| 3b540 | 33 33 2f 74 65 73 74 20 2d 2d 73 65 65 64 3d 30 78 66 33 33 32 62 64 31 36 0a 3c 2f 73 61 6d 70 | 33/test.--seed=0xf332bd16.</samp |
| 3b560 | 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 |
| 3b580 | 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 53 65 6e 74 69 | lso:</p><ul>.<li><a.href="#Senti |
| 3b5a0 | 6e 65 6c 2d 54 65 72 6d 69 6e 61 74 65 64 2d 50 6f 69 6e 74 65 72 73 22 3e 53 65 6e 74 69 6e 65 | nel-Terminated-Pointers">Sentine |
| 3b5c0 | 6c 2d 54 65 72 6d 69 6e 61 74 65 64 20 50 6f 69 6e 74 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c | l-Terminated.Pointers</a></li>.< |
| 3b5e0 | 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 |
| 3b600 | 2d 41 72 72 61 79 73 22 3e 53 65 6e 74 69 6e 65 6c 2d 54 65 72 6d 69 6e 61 74 65 64 20 41 72 72 | -Arrays">Sentinel-Terminated.Arr |
| 3b620 | 61 79 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 | ays</a></li>.</ul>.............. |
| 3b640 | 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 73 74 72 75 63 74 22 3e 3c 61 20 68 72 65 66 | .........<h2.id="struct"><a.href |
| 3b660 | 3d 22 23 74 6f 63 2d 73 74 72 75 63 74 22 3e 73 74 72 75 63 74 3c 2f 61 3e 20 3c 61 20 63 6c 61 | ="#toc-struct">struct</a>.<a.cla |
| 3b680 | 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 73 74 72 75 63 74 22 3e c2 a7 3c 2f 61 3e 3c 2f | ss="hdr".href="#struct">..</a></ |
| 3b6a0 | 68 32 3e 0a 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 | h2>........<figure><figcaption.c |
| 3b6c0 | 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 |
| 3b6e0 | 22 3e 74 65 73 74 5f 73 74 72 75 63 74 73 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 | ">test_structs.zig</cite></figca |
| 3b700 | 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 |
| 3b720 | 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 74 72 75 63 74 2e 3c | k-comment">//.Declare.a.struct.< |
| 3b740 | 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" |
| 3b760 | 3e 2f 2f 20 5a 69 67 20 67 69 76 65 73 20 6e 6f 20 67 75 61 72 61 6e 74 65 65 73 20 61 62 6f 75 | >//.Zig.gives.no.guarantees.abou |
| 3b780 | 74 20 74 68 65 20 6f 72 64 65 72 20 6f 66 20 66 69 65 6c 64 73 20 61 6e 64 20 74 68 65 20 73 69 | t.the.order.of.fields.and.the.si |
| 3b7a0 | 7a 65 20 6f 66 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f | ze.of</span>.<span.class="tok-co |
| 3b7c0 | 6d 6d 65 6e 74 22 3e 2f 2f 20 74 68 65 20 73 74 72 75 63 74 20 62 75 74 20 74 68 65 20 66 69 65 | mment">//.the.struct.but.the.fie |
| 3b7e0 | 6c 64 73 20 61 72 65 20 67 75 61 72 61 6e 74 65 65 64 20 74 6f 20 62 65 20 41 42 49 2d 61 6c 69 | lds.are.guaranteed.to.be.ABI-ali |
| 3b800 | 67 6e 65 64 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | gned.</span>.<span.class="tok-kw |
| 3b820 | 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 50 6f 69 6e 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 | ">const</span>.Point.=.<span.cla |
| 3b840 | 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>.{..... |
| 3b860 | 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 | x:.<span.class="tok-type">f32</s |
| 3b880 | 70 61 6e 3e 2c 0a 20 20 20 20 79 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | pan>,.....y:.<span.class="tok-ty |
| 3b8a0 | 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | pe">f32</span>,.};..<span.class= |
| 3b8c0 | 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 44 65 63 6c 61 72 65 20 61 6e 20 69 6e 73 74 | "tok-comment">//.Declare.an.inst |
| 3b8e0 | 61 6e 63 65 20 6f 66 20 61 20 73 74 72 75 63 74 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 | ance.of.a.struct.</span>.<span.c |
| 3b900 | 6c 61 73 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 3a 20 50 6f | lass="tok-kw">const</span>.p:.Po |
| 3b920 | 69 6e 74 20 3d 20 2e 7b 0a 20 20 20 20 2e 78 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | int.=..{......x.=.<span.class="t |
| 3b940 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 2e 31 32 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 2e 79 20 3d | ok-number">0.12</span>,......y.= |
| 3b960 | 20 3c 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 33 34 3c 2f | .<span.class="tok-number">0.34</ |
| 3b980 | 73 70 61 6e 3e 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d | span>,.};..<span.class="tok-comm |
| 3b9a0 | 65 6e 74 22 3e 2f 2f 20 46 75 6e 63 74 69 6f 6e 73 20 69 6e 20 74 68 65 20 73 74 72 75 63 74 27 | ent">//.Functions.in.the.struct' |
| 3b9c0 | 73 20 6e 61 6d 65 73 70 61 63 65 20 63 61 6e 20 62 65 20 63 61 6c 6c 65 64 20 77 69 74 68 20 64 | s.namespace.can.be.called.with.d |
| 3b9e0 | 6f 74 20 73 79 6e 74 61 78 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ot.syntax.</span>.<span.class="t |
| 3ba00 | 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 56 65 63 33 20 3d 20 3c 73 70 61 6e | ok-kw">const</span>.Vec3.=.<span |
| 3ba20 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 74 72 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 0a | .class="tok-kw">struct</span>.{. |
| 3ba40 | 20 20 20 20 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 33 | ....x:.<span.class="tok-type">f3 |
| 3ba60 | 32 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 79 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | 2</span>,.....y:.<span.class="to |
| 3ba80 | 6b 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 7a 3a 20 3c 73 70 61 6e | k-type">f32</span>,.....z:.<span |
| 3baa0 | 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 0a 20 | .class="tok-type">f32</span>,... |
| 3bac0 | 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 |
| 3bae0 | 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 |
| 3bb00 | 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 69 6e 69 74 3c 2f 73 70 61 | >.<span.class="tok-fn">init</spa |
| 3bb20 | 6e 3e 28 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 33 32 | n>(x:.<span.class="tok-type">f32 |
| 3bb40 | 3c 2f 73 70 61 6e 3e 2c 20 79 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | </span>,.y:.<span.class="tok-typ |
| 3bb60 | 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 2c 20 7a 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | e">f32</span>,.z:.<span.class="t |
| 3bb80 | 6f 6b 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 29 20 56 65 63 33 20 7b 0a 20 20 20 20 | ok-type">f32</span>).Vec3.{..... |
| 3bba0 | 20 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< |
| 3bbc0 | 2f 73 70 61 6e 3e 20 56 65 63 33 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 2e 78 20 3d 20 78 2c | /span>.Vec3{..............x.=.x, |
| 3bbe0 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 2e 79 20 3d 20 79 2c 0a 20 20 20 20 20 20 20 20 20 20 20 | ..............y.=.y,............ |
| 3bc00 | 20 2e 7a 20 3d 20 7a 2c 0a 20 20 20 20 20 20 20 20 7d 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 20 3c | ..z.=.z,.........};.....}......< |
| 3bc20 | 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>.< |
| 3bc40 | 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 |
| 3bc60 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 64 6f 74 3c 2f 73 70 61 6e 3e 28 73 65 | pan.class="tok-fn">dot</span>(se |
| 3bc80 | 6c 66 3a 20 56 65 63 33 2c 20 6f 74 68 65 72 3a 20 56 65 63 33 29 20 3c 73 70 61 6e 20 63 6c 61 | lf:.Vec3,.other:.Vec3).<span.cla |
| 3bca0 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 | ss="tok-type">f32</span>.{...... |
| 3bcc0 | 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</ |
| 3bce0 | 73 70 61 6e 3e 20 73 65 6c 66 2e 78 20 2a 20 6f 74 68 65 72 2e 78 20 2b 20 73 65 6c 66 2e 79 20 | span>.self.x.*.other.x.+.self.y. |
| 3bd00 | 2a 20 6f 74 68 65 72 2e 79 20 2b 20 73 65 6c 66 2e 7a 20 2a 20 6f 74 68 65 72 2e 7a 3b 0a 20 20 | *.other.y.+.self.z.*.other.z;... |
| 3bd20 | 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 65 73 | ..}.};..<span.class="tok-kw">tes |
| 3bd40 | 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">& |
| 3bd60 | 71 75 6f 74 3b 64 6f 74 20 70 72 6f 64 75 63 74 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a | quot;dot.product"</span>.{. |
| 3bd80 | 20 20 20 20 3c 73 70 61 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</ |
| 3bda0 | 73 70 61 6e 3e 20 76 31 20 3d 20 56 65 63 33 2e 69 6e 69 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 | span>.v1.=.Vec3.init(<span.class |
| 3bdc0 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 2e 30 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 | ="tok-number">1.0</span>,.<span. |
| 3bde0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 2e 30 3c 2f 73 70 61 6e 3e 2c 20 3c | class="tok-number">0.0</span>,.< |
| 3be00 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 2e 30 3c 2f 73 70 61 | span.class="tok-number">0.0</spa |
| 3be20 | 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 |
| 3be40 | 6e 73 74 3c 2f 73 70 61 6e 3e 20 76 32 20 3d 20 56 65 63 33 2e 69 6e 69 74 28 3c 73 70 61 6e 20 | nst</span>.v2.=.Vec3.init(<span. |
| 3be60 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 2e 30 3c 2f 73 70 61 6e 3e 2c 20 3c | class="tok-number">0.0</span>,.< |
| 3be80 | 73 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 |
| 3bea0 | 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 2e 30 | n>,.<span.class="tok-number">0.0 |
| 3bec0 | 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 |
| 3bee0 | 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 76 31 2e 64 6f 74 28 76 32 29 20 | w">try</span>.expect(v1.dot(v2). |
| 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 2e 30 3c | ==.<span.class="tok-number">0.0< |
| 3bf20 | 2f 73 70 61 6e 3e 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 | /span>);......<span.class="tok-c |
| 3bf40 | 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 4f 74 68 65 72 20 74 68 61 6e 20 62 65 69 6e 67 20 61 76 61 69 | omment">//.Other.than.being.avai |
| 3bf60 | 6c 61 62 6c 65 20 74 6f 20 63 61 6c 6c 20 77 69 74 68 20 64 6f 74 20 73 79 6e 74 61 78 2c 20 73 | lable.to.call.with.dot.syntax,.s |
| 3bf80 | 74 72 75 63 74 20 6d 65 74 68 6f 64 73 20 61 72 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 | truct.methods.are</span>.....<sp |
| 3bfa0 | 61 6e 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 74 20 73 70 | an.class="tok-comment">//.not.sp |
| 3bfc0 | 65 63 69 61 6c 2e 20 59 6f 75 20 63 61 6e 20 72 65 66 65 72 65 6e 63 65 20 74 68 65 6d 20 61 73 | ecial..You.can.reference.them.as |
| 3bfe0 | 20 61 6e 79 20 6f 74 68 65 72 20 64 65 63 6c 61 72 61 74 69 6f 6e 20 69 6e 73 69 64 65 3c 2f 73 | .any.other.declaration.inside</s |
| 3c000 | 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 |
| 3c020 | 74 22 3e 2f 2f 20 74 68 65 20 73 74 72 75 63 74 3a 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 | t">//.the.struct:</span>.....<sp |
| 3c040 | 61 6e 20 63 6c 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 |
| 3c060 | 65 63 74 28 56 65 63 33 2e 64 6f 74 28 76 31 2c 20 76 32 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c | ect(Vec3.dot(v1,.v2).==.<span.cl |
| 3c080 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 2e 30 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a | ass="tok-number">0.0</span>);.}. |
| 3c0a0 | 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 53 74 | .<span.class="tok-comment">//.St |
| 3c0c0 | 72 75 63 74 73 20 63 61 6e 20 68 61 76 65 20 64 65 63 6c 61 72 61 74 69 6f 6e 73 2e 3c 2f 73 70 | ructs.can.have.declarations.</sp |
| 3c0e0 | 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">// |
| 3c100 | 20 53 74 72 75 63 74 73 20 63 61 6e 20 68 61 76 65 20 30 20 66 69 65 6c 64 73 2e 3c 2f 73 70 61 | .Structs.can.have.0.fields.</spa |
| 3c120 | 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 | n>.<span.class="tok-kw">const</s |
| 3c140 | 70 61 6e 3e 20 45 6d 70 74 79 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | pan>.Empty.=.<span.class="tok-kw |
| 3c160 | 22 3e 73 74 72 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | ">struct</span>.{.....<span.clas |
| 3c180 | 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 |
| 3c1a0 | 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 49 20 3d 20 3c 73 70 | s="tok-kw">const</span>.PI.=.<sp |
| 3c1c0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 2e 31 34 3c 2f 73 70 61 6e | an.class="tok-number">3.14</span |
| 3c1e0 | 3e 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 74 65 73 74 3c | >;.};.<span.class="tok-kw">test< |
| 3c200 | 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 |
| 3c220 | 6f 74 3b 73 74 72 75 63 74 20 6e 61 6d 65 73 70 61 63 65 64 20 76 61 72 69 61 62 6c 65 26 71 75 | ot;struct.namespaced.variable&qu |
| 3c240 | 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 |
| 3c260 | 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 45 6d 70 74 79 2e 50 49 | k-kw">try</span>.expect(Empty.PI |
| 3c280 | 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 2e 31 | .==.<span.class="tok-number">3.1 |
| 3c2a0 | 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- |
| 3c2c0 | 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 |
| 3c2e0 | 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 45 | s="tok-builtin">@sizeOf</span>(E |
| 3c300 | 6d 70 74 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 | mpty).==.<span.class="tok-number |
| 3c320 | 22 3e 30 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ">0</span>);......<span.class="t |
| 3c340 | 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 45 6d 70 74 79 20 73 74 72 75 63 74 73 20 63 61 6e | ok-comment">//.Empty.structs.can |
| 3c360 | 20 62 65 20 69 6e 73 74 61 6e 74 69 61 74 65 64 20 74 68 65 20 73 61 6d 65 20 61 73 20 75 73 75 | .be.instantiated.the.same.as.usu |
| 3c380 | 61 6c 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 | al.</span>.....<span.class="tok- |
| 3c3a0 | 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 3a 20 45 | kw">const</span>.does_nothing:.E |
| 3c3c0 | 6d 70 74 79 20 3d 20 2e 7b 7d 3b 0a 0a 20 20 20 20 5f 20 3d 20 64 6f 65 73 5f 6e 6f 74 68 69 6e | mpty.=..{};......_.=.does_nothin |
| 3c3e0 | 67 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 | g;.}..<span.class="tok-comment"> |
| 3c400 | 2f 2f 20 53 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 | //.Struct.field.order.is.determi |
| 3c420 | 6e 65 64 20 62 79 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 2c 20 68 6f 77 65 76 65 72 2c 20 61 20 | ned.by.the.compiler,.however,.a. |
| 3c440 | 62 61 73 65 20 70 6f 69 6e 74 65 72 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | base.pointer</span>.<span.class= |
| 3c460 | 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 63 61 6e 20 62 65 20 63 6f 6d 70 75 74 65 64 | "tok-comment">//.can.be.computed |
| 3c480 | 20 66 72 6f 6d 20 61 20 66 69 65 6c 64 20 70 6f 69 6e 74 65 72 3a 3c 2f 73 70 61 6e 3e 0a 3c 73 | .from.a.field.pointer:</span>.<s |
| 3c4a0 | 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 |
| 3c4c0 | 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 65 64 4f 6e 58 3c 2f | an.class="tok-fn">setYBasedOnX</ |
| 3c4e0 | 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 74 79 70 65 22 | span>(x:.*<span.class="tok-type" |
| 3c500 | 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 73 73 3d 22 74 6f 6b | >f32</span>,.y:.<span.class="tok |
| 3c520 | 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 63 6c 61 73 73 3d 22 | -type">f32</span>).<span.class=" |
| 3c540 | 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 |
| 3c560 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 70 6f | n.class="tok-kw">const</span>.po |
| 3c580 | 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 3d 22 74 6f 6b 2d 62 | int:.*Point.=.<span.class="tok-b |
| 3c5a0 | 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 73 70 61 6e 3e 28 3c | uiltin">@fieldParentPtr</span>(< |
| 3c5c0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 78 26 71 75 6f | span.class="tok-str">"x&quo |
| 3c5e0 | 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 79 20 3d 20 79 3b 0a | t;</span>,.x);.....point.y.=.y;. |
| 3c600 | 7d 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 | }.<span.class="tok-kw">test</spa |
| 3c620 | 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 |
| 3c640 | 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 3c 2f 73 70 61 6e 3e | ield.parent.pointer"</span> |
| 3c660 | 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< |
| 3c680 | 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 20 20 20 20 20 2e 78 | /span>.point.=.Point{..........x |
| 3c6a0 | 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 2e 31 32 | .=.<span.class="tok-number">0.12 |
| 3c6c0 | 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 73 70 61 6e 20 63 6c | 34</span>,..........y.=.<span.cl |
| 3c6e0 | 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 73 70 61 6e 3e 2c 0a | ass="tok-number">0.5678</span>,. |
| 3c700 | 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 61 6d 70 3b 70 6f 69 | ....};.....setYBasedOnX(&poi |
| 3c720 | 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 6d 62 65 72 22 3e 30 | nt.x,.<span.class="tok-number">0 |
| 3c740 | 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 73 73 3d 22 74 6f 6b | .9</span>);.....<span.class="tok |
| 3c760 | 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 69 6e 74 2e 79 20 3d | -kw">try</span>.expect(point.y.= |
| 3c780 | 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 2e 39 3c 2f | =.<span.class="tok-number">0.9</ |
| 3c7a0 | 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 |
| 3c7c0 | 65 6e 74 22 3e 2f 2f 20 53 74 72 75 63 74 73 20 63 61 6e 20 62 65 20 72 65 74 75 72 6e 65 64 20 | ent">//.Structs.can.be.returned. |
| 3c7e0 | 66 72 6f 6d 20 66 75 6e 63 74 69 6f 6e 73 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 | from.functions.</span>.<span.cla |
| 3c800 | 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 |
| 3c820 | 73 3d 22 74 6f 6b 2d 66 6e 22 3e 4c 69 6e 6b 65 64 4c 69 73 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 | s="tok-fn">LinkedList</span>(<sp |
| 3c840 | 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 |
| 3c860 | 3e 20 54 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 | >.T:.<span.class="tok-type">type |
| 3c880 | 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"> |
| 3c8a0 | 74 79 70 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | type</span>.{.....<span.class="t |
| 3c8c0 | 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 |
| 3c8e0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 73 74 72 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 | ="tok-kw">struct</span>.{....... |
| 3c900 | 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 70 61 6e | ..<span.class="tok-kw">pub</span |
| 3c920 | 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 |
| 3c940 | 61 6e 3e 20 4e 6f 64 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | an>.Node.=.<span.class="tok-kw"> |
| 3c960 | 73 74 72 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 70 72 65 76 | struct</span>.{.............prev |
| 3c980 | 3a 20 3f 2a 4e 6f 64 65 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 6e 65 78 74 3a 20 3f 2a 4e 6f | :.?*Node,.............next:.?*No |
| 3c9a0 | 64 65 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 64 61 74 61 3a 20 54 2c 0a 20 20 20 20 20 20 20 | de,.............data:.T,........ |
| 3c9c0 | 20 7d 3b 0a 0a 20 20 20 20 20 20 20 20 66 69 72 73 74 3a 20 3f 2a 4e 6f 64 65 2c 0a 20 20 20 20 | .};..........first:.?*Node,..... |
| 3c9e0 | 20 20 20 20 6c 61 73 74 3a 20 3f 2a 4e 6f 64 65 2c 0a 20 20 20 20 20 20 20 20 6c 65 6e 3a 20 3c | ....last:.?*Node,.........len:.< |
| 3ca00 | 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 |
| 3ca20 | 6e 3e 2c 0a 20 20 20 20 7d 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | n>,.....};.}..<span.class="tok-k |
| 3ca40 | 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- |
| 3ca60 | 73 74 72 22 3e 26 71 75 6f 74 3b 6c 69 6e 6b 65 64 20 6c 69 73 74 26 71 75 6f 74 3b 3c 2f 73 70 | str">"linked.list"</sp |
| 3ca80 | 61 6e 3e 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 |
| 3caa0 | 6e 74 22 3e 2f 2f 20 46 75 6e 63 74 69 6f 6e 73 20 63 61 6c 6c 65 64 20 61 74 20 63 6f 6d 70 69 | nt">//.Functions.called.at.compi |
| 3cac0 | 6c 65 2d 74 69 6d 65 20 61 72 65 20 6d 65 6d 6f 69 7a 65 64 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 | le-time.are.memoized.</span>.... |
| 3cae0 | 20 3c 73 70 61 6e 20 63 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> |
| 3cb00 | 20 65 78 70 65 63 74 28 4c 69 6e 6b 65 64 4c 69 73 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | .expect(LinkedList(<span.class=" |
| 3cb20 | 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 4c 69 6e 6b 65 64 4c | tok-type">i32</span>).==.LinkedL |
| 3cb40 | 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</ |
| 3cb60 | 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 6b | span>));......<span.class="tok-k |
| 3cb80 | 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6c 69 73 74 20 3d 20 4c 69 6e 6b 65 64 4c 69 73 | w">const</span>.list.=.LinkedLis |
| 3cba0 | 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 | t(<span.class="tok-type">i32</sp |
| 3cbc0 | 61 6e 3e 29 7b 0a 20 20 20 20 20 20 20 20 2e 66 69 72 73 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 | an>){..........first.=.<span.cla |
| 3cbe0 | 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 | ss="tok-null">null</span>,...... |
| 3cc00 | 20 20 20 2e 6c 61 73 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c | ....last.=.<span.class="tok-null |
| 3cc20 | 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 2e 6c 65 6e 20 3d 20 3c 73 | ">null</span>,..........len.=.<s |
| 3cc40 | 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>, |
| 3cc60 | 0a 20 20 20 20 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | .....};.....<span.class="tok-kw" |
| 3cc80 | 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 6c 69 73 74 2e 6c 65 6e 20 3d 3d 20 3c | >try</span>.expect(list.len.==.< |
| 3cca0 | 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> |
| 3ccc0 | 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 |
| 3cce0 | 22 3e 2f 2f 20 53 69 6e 63 65 20 74 79 70 65 73 20 61 72 65 20 66 69 72 73 74 20 63 6c 61 73 73 | ">//.Since.types.are.first.class |
| 3cd00 | 20 76 61 6c 75 65 73 20 79 6f 75 20 63 61 6e 20 69 6e 73 74 61 6e 74 69 61 74 65 20 74 68 65 20 | .values.you.can.instantiate.the. |
| 3cd20 | 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 |
| 3cd40 | 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 62 79 20 61 73 73 69 67 6e 69 6e 67 20 69 74 20 74 6f 20 | -comment">//.by.assigning.it.to. |
| 3cd60 | 61 20 76 61 72 69 61 62 6c 65 3a 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | a.variable:</span>.....<span.cla |
| 3cd80 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 4c 69 73 74 4f 66 49 | ss="tok-kw">const</span>.ListOfI |
| 3cda0 | 6e 74 73 20 3d 20 4c 69 6e 6b 65 64 4c 69 73 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | nts.=.LinkedList(<span.class="to |
| 3cdc0 | 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 | k-type">i32</span>);.....<span.c |
| 3cde0 | 6c 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( |
| 3ce00 | 4c 69 73 74 4f 66 49 6e 74 73 20 3d 3d 20 4c 69 6e 6b 65 64 4c 69 73 74 28 3c 73 70 61 6e 20 63 | ListOfInts.==.LinkedList(<span.c |
| 3ce20 | 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 3b 0a 0a 20 | lass="tok-type">i32</span>));... |
| 3ce40 | 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 |
| 3ce60 | 6e 3e 20 6e 6f 64 65 20 3d 20 4c 69 73 74 4f 66 49 6e 74 73 2e 4e 6f 64 65 7b 0a 20 20 20 20 20 | n>.node.=.ListOfInts.Node{...... |
| 3ce80 | 20 20 20 2e 70 72 65 76 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c | ....prev.=.<span.class="tok-null |
| 3cea0 | 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 2e 6e 65 78 74 20 3d 20 3c | ">null</span>,..........next.=.< |
| 3cec0 | 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 |
| 3cee0 | 3e 2c 0a 20 20 20 20 20 20 20 20 2e 64 61 74 61 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | >,..........data.=.<span.class=" |
| 3cf00 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 7d 3b 0a | tok-number">1234</span>,.....};. |
| 3cf20 | 20 20 20 20 3c 73 70 61 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</ |
| 3cf40 | 73 70 61 6e 3e 20 6c 69 73 74 32 20 3d 20 4c 69 6e 6b 65 64 4c 69 73 74 28 3c 73 70 61 6e 20 63 | span>.list2.=.LinkedList(<span.c |
| 3cf60 | 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 20 20 | lass="tok-type">i32</span>){.... |
| 3cf80 | 20 20 20 20 20 2e 66 69 72 73 74 20 3d 20 26 61 6d 70 3b 6e 6f 64 65 2c 0a 20 20 20 20 20 20 20 | ......first.=.&node,........ |
| 3cfa0 | 20 2e 6c 61 73 74 20 3d 20 26 61 6d 70 3b 6e 6f 64 65 2c 0a 20 20 20 20 20 20 20 20 2e 6c 65 6e | ..last.=.&node,..........len |
| 3cfc0 | 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 |
| 3cfe0 | 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 6c 61 73 73 3d 22 74 | pan>,.....};......<span.class="t |
| 3d000 | 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 57 68 65 6e 20 75 73 69 6e 67 20 61 20 70 6f 69 6e | ok-comment">//.When.using.a.poin |
| 3d020 | 74 65 72 20 74 6f 20 61 20 73 74 72 75 63 74 2c 20 66 69 65 6c 64 73 20 63 61 6e 20 62 65 20 61 | ter.to.a.struct,.fields.can.be.a |
| 3d040 | 63 63 65 73 73 65 64 20 64 69 72 65 63 74 6c 79 2c 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 | ccessed.directly,</span>.....<sp |
| 3d060 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 77 69 74 68 6f 75 | an.class="tok-comment">//.withou |
| 3d080 | 74 20 65 78 70 6c 69 63 69 74 6c 79 20 64 65 72 65 66 65 72 65 6e 63 69 6e 67 20 74 68 65 20 70 | t.explicitly.dereferencing.the.p |
| 3d0a0 | 6f 69 6e 74 65 72 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ointer.</span>.....<span.class=" |
| 3d0c0 | 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 53 6f 20 79 6f 75 20 63 61 6e 20 64 6f 3c 2f 73 | tok-comment">//.So.you.can.do</s |
| 3d0e0 | 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 |
| 3d100 | 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 6c 69 73 74 32 2e 66 69 72 73 74 2e 3f 2e 64 61 | y</span>.expect(list2.first.?.da |
| 3d120 | 74 61 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 | ta.==.<span.class="tok-number">1 |
| 3d140 | 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 6f | 234</span>);.....<span.class="to |
| 3d160 | 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 69 6e 73 74 65 61 64 20 6f 66 20 74 72 79 20 65 78 70 | k-comment">//.instead.of.try.exp |
| 3d180 | 65 63 74 28 6c 69 73 74 32 2e 66 69 72 73 74 2e 3f 2e 2a 2e 64 61 74 61 20 3d 3d 20 31 32 33 34 | ect(list2.first.?.*.data.==.1234 |
| 3d1a0 | 29 3b 3c 2f 73 70 61 6e 3e 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | );</span>.}..<span.class="tok-kw |
| 3d1c0 | 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 3c 73 70 61 6e 20 63 6c | ">const</span>.expect.=.<span.cl |
| 3d1e0 | 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> |
| 3d200 | 28 3c 73 70 61 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 |
| 3d220 | 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 3c 2f | "</span>).testing.expect;</ |
| 3d240 | 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 |
| 3d260 | 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< |
| 3d280 | 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 |
| 3d2a0 | 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/ |
| 3d2c0 | 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. |
| 3d2e0 | 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 |
| 3d300 | 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 |
| 3d320 | 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 |
| 3d340 | 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 |
| 3d360 | 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 |
| 3d380 | 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>.... |
| 3d3a0 | 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 |
| 3d3c0 | 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 |
| 3d3e0 | 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>. |
| 3d400 | 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 |
| 3d420 | 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>........< |
| 3d440 | 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 |
| 3d460 | 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 |
| 3d480 | 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 |
| 3d4a0 | 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. |
| 3d4c0 | 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 |
| 3d4e0 | 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 |
| 3d500 | 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 |
| 3d520 | 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> |
| 3d540 | 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 |
| 3d560 | 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 |
| 3d580 | 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 |
| 3d5a0 | 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 |
| 3d5c0 | 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 |
| 3d5e0 | 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: |
| 3d600 | 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 |
| 3d620 | 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 |
| 3d640 | 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 |
| 3d660 | 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 |
| 3d680 | 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. |
| 3d6a0 | 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 |
| 3d6c0 | 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" |
| 3d6e0 | 3c 2f 73 70 61 6e 3e 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 |
| 3d700 | 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.=..{..... |
| 3d720 | 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 |
| 3d740 | 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 |
| 3d760 | 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 |
| 3d780 | 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 |
| 3d7a0 | 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= |
| 3d7c0 | 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 |
| 3d7e0 | 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> |
| 3d800 | 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>< |
| 3d820 | 66 69 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- |
| 3d840 | 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 |
| 3d860 | 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 |
| 3d880 | 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 |
| 3d8a0 | 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 |
| 3d8c0 | 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 |
| 3d8e0 | 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 |
| 3d900 | 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 68 34 20 69 64 3d | p></pre></figure>........<h4.id= |
| 3d920 | 22 46 61 75 6c 74 79 2d 44 65 66 61 75 6c 74 2d 46 69 65 6c 64 2d 56 61 6c 75 65 73 22 3e 3c 61 | "Faulty-Default-Field-Values"><a |
| 3d940 | 20 68 72 65 66 3d 22 23 74 6f 63 2d 46 61 75 6c 74 79 2d 44 65 66 61 75 6c 74 2d 46 69 65 6c 64 | .href="#toc-Faulty-Default-Field |
| 3d960 | 2d 56 61 6c 75 65 73 22 3e 46 61 75 6c 74 79 20 44 65 66 61 75 6c 74 20 46 69 65 6c 64 20 56 61 | -Values">Faulty.Default.Field.Va |
| 3d980 | 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 65 66 3d 22 23 46 | lues</a>.<a.class="hdr".href="#F |
| 3d9a0 | 61 75 6c 74 79 2d 44 65 66 61 75 6c 74 2d 46 69 65 6c 64 2d 56 61 6c 75 65 73 22 3e c2 a7 3c 2f | aulty-Default-Field-Values">..</ |
| 3d9c0 | 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 44 65 66 61 75 6c 74 | a></h4>........<p>.......Default |
| 3d9e0 | 20 66 69 65 6c 64 20 76 61 6c 75 65 73 20 61 72 65 20 6f 6e 6c 79 20 61 70 70 72 6f 70 72 69 61 | .field.values.are.only.appropria |
| 3da00 | 74 65 20 77 68 65 6e 20 74 68 65 20 64 61 74 61 20 69 6e 76 61 72 69 61 6e 74 73 20 6f 66 20 61 | te.when.the.data.invariants.of.a |
| 3da20 | 20 73 74 72 75 63 74 0a 20 20 20 20 20 20 63 61 6e 6e 6f 74 20 62 65 20 76 69 6f 6c 61 74 65 64 | .struct.......cannot.be.violated |
| 3da40 | 20 62 79 20 6f 6d 69 74 74 69 6e 67 20 74 68 61 74 20 66 69 65 6c 64 20 66 72 6f 6d 20 61 6e 20 | .by.omitting.that.field.from.an. |
| 3da60 | 69 6e 69 74 69 61 6c 69 7a 61 74 69 6f 6e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 | initialization........</p>...... |
| 3da80 | 20 3c 70 3e 0a 20 20 20 20 20 20 46 6f 72 20 65 78 61 6d 70 6c 65 2c 20 68 65 72 65 20 69 73 20 | .<p>.......For.example,.here.is. |
| 3daa0 | 61 6e 20 69 6e 61 70 70 72 6f 70 72 69 61 74 65 20 75 73 65 20 6f 66 20 64 65 66 61 75 6c 74 20 | an.inappropriate.use.of.default. |
| 3dac0 | 73 74 72 75 63 74 20 66 69 65 6c 64 20 69 6e 69 74 69 61 6c 69 7a 61 74 69 6f 6e 3a 0a 20 20 20 | struct.field.initialization:.... |
| 3dae0 | 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 |
| 3db00 | 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 |
| 3db20 | 69 6c 65 22 3e 62 61 64 5f 64 65 66 61 75 6c 74 5f 76 61 6c 75 65 2e 7a 69 67 3c 2f 63 69 74 65 | ile">bad_default_value.zig</cite |
| 3db40 | 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 |
| 3db60 | 6c 61 73 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 68 72 65 73 | lass="tok-kw">const</span>.Thres |
| 3db80 | 68 6f 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 73 74 72 75 | hold.=.<span.class="tok-kw">stru |
| 3dba0 | 63 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 6d 69 6e 69 6d 75 6d 3a 20 3c 73 70 61 6e 20 63 | ct</span>.{.....minimum:.<span.c |
| 3dbc0 | 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 70 | lass="tok-type">f32</span>.=.<sp |
| 3dbe0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 2e 32 35 3c 2f 73 70 61 6e | an.class="tok-number">0.25</span |
| 3dc00 | 3e 2c 0a 20 20 20 20 6d 61 78 69 6d 75 6d 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | >,.....maximum:.<span.class="tok |
| 3dc20 | 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | -type">f32</span>.=.<span.class= |
| 3dc40 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 2e 37 35 3c 2f 73 70 61 6e 3e 2c 0a 0a 20 20 20 20 3c | "tok-number">0.75</span>,......< |
| 3dc60 | 73 70 61 6e 20 63 6c 61 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> |
| 3dc80 | 20 43 61 74 65 67 6f 72 79 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | .Category.=.<span.class="tok-kw" |
| 3dca0 | 3e 65 6e 75 6d 3c 2f 73 70 61 6e 3e 20 7b 20 6c 6f 77 2c 20 6d 65 64 69 75 6d 2c 20 68 69 67 68 | >enum</span>.{.low,.medium,.high |
| 3dcc0 | 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 66 6e | .};......<span.class="tok-kw">fn |
| 3dce0 | 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 63 61 74 | </span>.<span.class="tok-fn">cat |
| 3dd00 | 65 67 6f 72 69 7a 65 3c 2f 73 70 61 6e 3e 28 74 3a 20 54 68 72 65 73 68 6f 6c 64 2c 20 76 61 6c | egorize</span>(t:.Threshold,.val |
| 3dd20 | 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 66 33 32 3c 2f | ue:.<span.class="tok-type">f32</ |
| 3dd40 | 73 70 61 6e 3e 29 20 43 61 74 65 67 6f 72 79 20 7b 0a 20 20 20 20 20 20 20 20 61 73 73 65 72 74 | span>).Category.{.........assert |
| 3dd60 | 28 74 2e 6d 61 78 69 6d 75 6d 20 26 67 74 3b 3d 20 74 2e 6d 69 6e 69 6d 75 6d 29 3b 0a 20 20 20 | (t.maximum.>=.t.minimum);.... |
| 3dd80 | 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 |
| 3dda0 | 61 6e 3e 20 28 76 61 6c 75 65 20 26 6c 74 3b 20 74 2e 6d 69 6e 69 6d 75 6d 29 20 3c 73 70 61 6e | an>.(value.<.t.minimum).<span |
| 3ddc0 | 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 2e 6c | .class="tok-kw">return</span>..l |
| 3dde0 | 6f 77 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 | ow;.........<span.class="tok-kw" |
| 3de00 | 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 76 61 6c 75 65 20 26 67 74 3b 20 74 2e 6d 61 78 69 6d 75 6d | >if</span>.(value.>.t.maximum |
| 3de20 | 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 | ).<span.class="tok-kw">return</s |
| 3de40 | 70 61 6e 3e 20 2e 68 69 67 68 3b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | pan>..high;.........<span.class= |
| 3de60 | 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 2e 6d 65 64 69 75 6d 3b 0a | "tok-kw">return</span>..medium;. |
| 3de80 | 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 70 | ....}.};..<span.class="tok-kw">p |
| 3dea0 | 75 62 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 | ub</span>.<span.class="tok-kw">f |
| 3dec0 | 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 6d 61 | n</span>.<span.class="tok-fn">ma |
| 3dee0 | 69 6e 3c 2f 73 70 61 6e 3e 28 29 20 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | in</span>().!<span.class="tok-ty |
| 3df00 | 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 |
| 3df20 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 74 68 72 65 73 68 6f 6c 64 3a | s="tok-kw">var</span>.threshold: |
| 3df40 | 20 54 68 72 65 73 68 6f 6c 64 20 3d 20 2e 7b 0a 20 20 20 20 20 20 20 20 2e 6d 61 78 69 6d 75 6d | .Threshold.=..{..........maximum |
| 3df60 | 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 32 30 | .=.<span.class="tok-number">0.20 |
| 3df80 | 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | </span>,.....};.....<span.class= |
| 3dfa0 | 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 63 61 74 65 67 6f 72 79 20 3d | "tok-kw">const</span>.category.= |
| 3dfc0 | 20 74 68 72 65 73 68 6f 6c 64 2e 63 61 74 65 67 6f 72 69 7a 65 28 3c 73 70 61 6e 20 63 6c 61 73 | .threshold.categorize(<span.clas |
| 3dfe0 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 2e 39 30 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 | s="tok-number">0.90</span>);.... |
| 3e000 | 20 3c 73 70 61 6e 20 63 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> |
| 3e020 | 20 73 74 64 2e 66 73 2e 46 69 6c 65 2e 73 74 64 6f 75 74 28 29 2e 77 72 69 74 65 41 6c 6c 28 3c | .std.fs.File.stdout().writeAll(< |
| 3e040 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 74 61 67 4e 61 6d | span.class="tok-builtin">@tagNam |
| 3e060 | 65 3c 2f 73 70 61 6e 3e 28 63 61 74 65 67 6f 72 79 29 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c | e</span>(category));.}..<span.cl |
| 3e080 | 61 73 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.=. |
| 3e0a0 | 3c 73 70 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 |
| 3e0c0 | 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">& |
| 3e0e0 | 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 |
| 3e100 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 73 73 65 72 74 | ass="tok-kw">const</span>.assert |
| 3e120 | 20 3d 20 73 74 64 2e 64 65 62 75 67 2e 61 73 73 65 72 74 3b 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 | .=.std.debug.assert;</code></pre |
| 3e140 | 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 |
| 3e160 | 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 |
| 3e180 | 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 |
| 3e1a0 | 65 20 62 61 64 5f 64 65 66 61 75 6c 74 5f 76 61 6c 75 65 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 24 20 | e.bad_default_value.zig</kbd>.$. |
| 3e1c0 | 3c 6b 62 64 3e 2e 2f 62 61 64 5f 64 65 66 61 75 6c 74 5f 76 61 6c 75 65 3c 2f 6b 62 64 3e 0a 74 | <kbd>./bad_default_value</kbd>.t |
| 3e1e0 | 68 72 65 61 64 20 31 30 39 33 34 39 39 20 70 61 6e 69 63 3a 20 72 65 61 63 68 65 64 20 75 6e 72 | hread.1093499.panic:.reached.unr |
| 3e200 | 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 67 72 2d 31 | eachable.code.<span.class="sgr-1 |
| 3e220 | 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 64 65 | m">/home/andy/dev/zig/lib/std/de |
| 3e240 | 62 75 67 2e 7a 69 67 3a 35 35 39 3a 31 34 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 | bug.zig:559:14</span>:.<span.cla |
| 3e260 | 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 34 34 31 37 39 20 69 6e 20 61 73 73 65 72 74 20 | ss="sgr-2m">0x1044179.in.assert. |
| 3e280 | 28 73 74 64 2e 7a 69 67 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 69 66 20 28 21 6f 6b 29 20 75 6e | (std.zig)</span>.....if.(!ok).un |
| 3e2a0 | 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. |
| 3e2c0 | 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 |
| 3e2e0 | 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" |
| 3e300 | 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f | >/home/andy/dev/zig/doc/langref/ |
| 3e320 | 62 61 64 5f 64 65 66 61 75 6c 74 5f 76 61 6c 75 65 2e 7a 69 67 3a 38 3a 31 35 3c 2f 73 70 61 6e | bad_default_value.zig:8:15</span |
| 3e340 | 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 31 33 65 63 33 | >:.<span.class="sgr-2m">0x113ec3 |
| 3e360 | 34 20 69 6e 20 63 61 74 65 67 6f 72 69 7a 65 20 28 62 61 64 5f 64 65 66 61 75 6c 74 5f 76 61 6c | 4.in.categorize.(bad_default_val |
| 3e380 | 75 65 2e 7a 69 67 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 61 73 73 65 72 74 28 74 2e | ue.zig)</span>.........assert(t. |
| 3e3a0 | 6d 61 78 69 6d 75 6d 20 26 67 74 3b 3d 20 74 2e 6d 69 6e 69 6d 75 6d 29 3b 0a 20 20 20 20 20 20 | maximum.>=.t.minimum);....... |
| 3e3c0 | 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">^< |
| 3e3e0 | 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 |
| 3e400 | 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 62 61 64 5f 64 | e/andy/dev/zig/doc/langref/bad_d |
| 3e420 | 65 66 61 75 6c 74 5f 76 61 6c 75 65 2e 7a 69 67 3a 31 39 3a 34 32 3c 2f 73 70 61 6e 3e 3a 20 3c | efault_value.zig:19:42</span>:.< |
| 3e440 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 31 33 64 34 32 34 20 69 6e | span.class="sgr-2m">0x113d424.in |
| 3e460 | 20 6d 61 69 6e 20 28 62 61 64 5f 64 65 66 61 75 6c 74 5f 76 61 6c 75 65 2e 7a 69 67 29 3c 2f 73 | .main.(bad_default_value.zig)</s |
| 3e480 | 70 61 6e 3e 0a 20 20 20 20 63 6f 6e 73 74 20 63 61 74 65 67 6f 72 79 20 3d 20 74 68 72 65 73 68 | pan>.....const.category.=.thresh |
| 3e4a0 | 6f 6c 64 2e 63 61 74 65 67 6f 72 69 7a 65 28 30 2e 39 30 29 3b 0a 20 20 20 20 20 20 20 20 20 20 | old.categorize(0.90);........... |
| 3e4c0 | 20 20 20 20 20 20 20 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 | ...............................< |
| 3e4e0 | 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 |
| 3e500 | 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 | pan.class="sgr-1m">/home/andy/de |
| 3e520 | 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 36 32 37 3a 33 37 3c 2f | v/zig/lib/std/start.zig:627:37</ |
| 3e540 | 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 31 | span>:.<span.class="sgr-2m">0x11 |
| 3e560 | 33 64 63 38 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 73 | 3dc89.in.posixCallMainAndExit.(s |
| 3e580 | 74 64 2e 7a 69 67 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 73 74 | td.zig)</span>.............const |
| 3e5a0 | 20 72 65 73 75 6c 74 20 3d 20 72 6f 6f 74 2e 6d 61 69 6e 28 29 20 63 61 74 63 68 20 7c 65 72 72 | .result.=.root.main().catch.|err |
| 3e5c0 | 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 20 20 20 20 | |.{............................. |
| 3e5e0 | 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">^< |
| 3e600 | 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 |
| 3e620 | 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 | e/andy/dev/zig/lib/std/start.zig |
| 3e640 | 3a 32 33 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 | :232:5</span>:.<span.class="sgr- |
| 3e660 | 32 6d 22 3e 30 78 31 31 33 64 33 33 31 20 69 6e 20 5f 73 74 61 72 74 20 28 73 74 64 2e 7a 69 67 | 2m">0x113d331.in._start.(std.zig |
| 3e680 | 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 |
| 3e6a0 | 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 |
| 3e6c0 | 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 |
| 3e6e0 | 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. |
| 3e700 | 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.???.(???)< |
| 3e720 | 2f 73 70 61 6e 3e 0a 28 70 72 6f 63 65 73 73 20 74 65 72 6d 69 6e 61 74 65 64 20 62 79 20 73 69 | /span>.(process.terminated.by.si |
| 3e740 | 67 6e 61 6c 29 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 | gnal).</samp></pre></figure>.... |
| 3e760 | 20 20 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 | ....<p>.......Above.you.can.see. |
| 3e780 | 74 68 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 | the.danger.of.ignoring.this.prin |
| 3e7a0 | 63 69 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 | ciple..The.default.......field.v |
| 3e7c0 | 61 6c 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 | alues.caused.the.data.invariant. |
| 3e7e0 | 74 6f 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 | to.be.violated,.causing.illegal. |
| 3e800 | 20 20 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 | ......behavior........</p>...... |
| 3e820 | 20 3c 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 | .<p>.......To.fix.this,.remove.t |
| 3e840 | 68 65 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 | he.default.values.from.all.the.s |
| 3e860 | 74 72 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 | truct.fields,.and.provide....... |
| 3e880 | 61 20 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 | a.named.default.value:.......</p |
| 3e8a0 | 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 |
| 3e8c0 | 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 73 | s="zig-cap"><cite.class="file">s |
| 3e8e0 | 74 72 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 | truct_default_value.zig</cite></ |
| 3e900 | 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 |
| 3e920 | 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 68 72 65 73 68 6f 6c | s="tok-kw">const</span>.Threshol |
| 3e940 | 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 73 74 72 75 63 74 3c | d.=.<span.class="tok-kw">struct< |
| 3e960 | 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 6d 69 6e 69 6d 75 6d 3a 20 3c 73 70 61 6e 20 63 6c 61 73 | /span>.{.....minimum:.<span.clas |
| 3e980 | 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 6d 61 78 | s="tok-type">f32</span>,.....max |
| 3e9a0 | 69 6d 75 6d 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 33 32 | imum:.<span.class="tok-type">f32 |
| 3e9c0 | 3c 2f 73 70 61 6e 3e 2c 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | </span>,......<span.class="tok-k |
| 3e9e0 | 77 22 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 | w">const</span>.default:.Thresho |
| 3ea00 | 6c 64 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 | ld.=..{..........minimum.=.<span |
| 3ea20 | 20 63 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 | .class="tok-number">0.25</span>, |
| 3ea40 | 0a 20 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 | ..........maximum.=.<span.class= |
| 3ea60 | 22 74 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 | "tok-number">0.75</span>,.....}; |
| 3ea80 | 0a 7d 3b 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 | .};</code></pre></figure>....... |
| 3eaa0 | 20 3c 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 | .<p>If.a.struct.value.requires.a |
| 3eac0 | 20 72 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 | .runtime-known.value.in.order.to |
| 3eae0 | 20 62 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 | .be.initialized.......without.vi |
| 3eb00 | 6f 6c 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 | olating.data.invariants,.then.us |
| 3eb20 | 65 20 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 | e.an.initialization.method.that. |
| 3eb40 | 61 63 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 | accepts.......those.runtime.valu |
| 3eb60 | 65 73 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 | es,.and.populates.the.remaining. |
| 3eb80 | 66 69 65 6c 64 73 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 | fields.</p>..................... |
| 3eba0 | 20 3c 68 33 20 69 64 3d 22 65 78 74 65 72 6e 2d 73 74 72 75 63 74 22 3e 3c 61 20 68 72 65 66 3d | .<h3.id="extern-struct"><a.href= |
| 3ebc0 | 22 23 74 6f 63 2d 65 78 74 65 72 6e 2d 73 74 72 75 63 74 22 3e 65 78 74 65 72 6e 20 73 74 72 75 | "#toc-extern-struct">extern.stru |
| 3ebe0 | 63 74 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 65 78 74 | ct</a>.<a.class="hdr".href="#ext |
| 3ec00 | 65 72 6e 2d 73 74 72 75 63 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c | ern-struct">..</a></h3>........< |
| 3ec20 | 70 3e 41 6e 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | p>An.<code><span.class="tok-kw"> |
| 3ec40 | 65 78 74 65 72 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | extern</span>.<span.class="tok-k |
| 3ec60 | 77 22 3e 73 74 72 75 63 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 68 61 73 20 69 6e 2d 6d | w">struct</span></code>.has.in-m |
| 3ec80 | 65 6d 6f 72 79 20 6c 61 79 6f 75 74 20 6d 61 74 63 68 69 6e 67 0a 20 20 20 20 20 20 74 68 65 20 | emory.layout.matching.......the. |
| 3eca0 | 43 20 41 42 49 20 66 6f 72 20 74 68 65 20 74 61 72 67 65 74 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 | C.ABI.for.the.target.</p>....... |
| 3ecc0 | 3c 70 3e 49 66 20 77 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 | <p>If.well-defined.in-memory.lay |
| 3ece0 | 6f 75 74 20 69 73 20 6e 6f 74 20 72 65 71 75 69 72 65 64 2c 20 3c 61 20 68 72 65 66 3d 22 23 73 | out.is.not.required,.<a.href="#s |
| 3ed00 | 74 72 75 63 74 22 3e 73 74 72 75 63 74 3c 2f 61 3e 20 69 73 20 61 20 62 65 74 74 65 72 20 63 68 | truct">struct</a>.is.a.better.ch |
| 3ed20 | 6f 69 63 65 0a 20 20 20 20 20 20 62 65 63 61 75 73 65 20 69 74 20 70 6c 61 63 65 73 20 66 65 77 | oice.......because.it.places.few |
| 3ed40 | 65 72 20 72 65 73 74 72 69 63 74 69 6f 6e 73 20 6f 6e 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 2e | er.restrictions.on.the.compiler. |
| 3ed60 | 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 3c 61 20 68 72 65 66 3d 22 23 70 61 63 6b | </p>.......<p>See.<a.href="#pack |
| 3ed80 | 65 64 2d 73 74 72 75 63 74 22 3e 70 61 63 6b 65 64 20 73 74 72 75 63 74 3c 2f 61 3e 20 66 6f 72 | ed-struct">packed.struct</a>.for |
| 3eda0 | 20 61 20 73 74 72 75 63 74 20 74 68 61 74 20 68 61 73 20 74 68 65 20 41 42 49 20 6f 66 20 69 74 | .a.struct.that.has.the.ABI.of.it |
| 3edc0 | 73 20 62 61 63 6b 69 6e 67 20 69 6e 74 65 67 65 72 2c 0a 20 20 20 20 20 20 77 68 69 63 68 20 63 | s.backing.integer,.......which.c |
| 3ede0 | 61 6e 20 62 65 20 75 73 65 66 75 6c 20 66 6f 72 20 6d 6f 64 65 6c 69 6e 67 20 66 6c 61 67 73 2e | an.be.useful.for.modeling.flags. |
| 3ee00 | 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>. |
| 3ee20 | 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 65 78 74 65 72 6e 2d 75 6e 69 6f 6e 22 3e 65 78 74 65 | <li><a.href="#extern-union">exte |
| 3ee40 | 72 6e 20 75 6e 69 6f 6e 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 | rn.union</a></li>.<li><a.href="# |
| 3ee60 | 65 78 74 65 72 6e 2d 65 6e 75 6d 22 3e 65 78 74 65 72 6e 20 65 6e 75 6d 3c 2f 61 3e 3c 2f 6c 69 | extern-enum">extern.enum</a></li |
| 3ee80 | 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 70 | >.</ul>................<h3.id="p |
| 3eea0 | 61 63 6b 65 64 2d 73 74 72 75 63 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 70 61 63 6b | acked-struct"><a.href="#toc-pack |
| 3eec0 | 65 64 2d 73 74 72 75 63 74 22 3e 70 61 63 6b 65 64 20 73 74 72 75 63 74 3c 2f 61 3e 20 3c 61 20 | ed-struct">packed.struct</a>.<a. |
| 3eee0 | 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 70 61 63 6b 65 64 2d 73 74 72 75 63 74 | class="hdr".href="#packed-struct |
| 3ef00 | 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 3c | ">..</a></h3>........<p>.......< |
| 3ef20 | 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 61 63 6b 65 64 | code><span.class="tok-kw">packed |
| 3ef40 | 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 73 74 72 75 63 74 73 2c 20 6c 69 6b 65 20 3c 63 6f | </span></code>.structs,.like.<co |
| 3ef60 | 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 6e 75 6d 3c 2f 73 70 | de><span.class="tok-kw">enum</sp |
| 3ef80 | 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 61 72 65 20 62 61 73 65 64 20 6f 6e 20 74 68 65 20 63 6f 6e | an></code>,.are.based.on.the.con |
| 3efa0 | 63 65 70 74 0a 20 20 20 20 20 20 6f 66 20 69 6e 74 65 72 70 72 65 74 69 6e 67 20 69 6e 74 65 67 | cept.......of.interpreting.integ |
| 3efc0 | 65 72 73 20 64 69 66 66 65 72 65 6e 74 6c 79 2e 20 41 6c 6c 20 70 61 63 6b 65 64 20 73 74 72 75 | ers.differently..All.packed.stru |
| 3efe0 | 63 74 73 20 68 61 76 65 20 61 20 3c 73 74 72 6f 6e 67 3e 62 61 63 6b 69 6e 67 20 69 6e 74 65 67 | cts.have.a.<strong>backing.integ |
| 3f000 | 65 72 3c 2f 73 74 72 6f 6e 67 3e 2c 0a 20 20 20 20 20 20 77 68 69 63 68 20 69 73 20 69 6d 70 6c | er</strong>,.......which.is.impl |
| 3f020 | 69 63 69 74 6c 79 20 64 65 74 65 72 6d 69 6e 65 64 20 62 79 20 74 68 65 20 74 6f 74 61 6c 20 62 | icitly.determined.by.the.total.b |
| 3f040 | 69 74 20 63 6f 75 6e 74 20 6f 66 20 66 69 65 6c 64 73 2c 20 6f 72 20 65 78 70 6c 69 63 69 74 6c | it.count.of.fields,.or.explicitl |
| 3f060 | 79 20 73 70 65 63 69 66 69 65 64 2e 0a 20 20 20 20 20 20 50 61 63 6b 65 64 20 73 74 72 75 63 74 | y.specified........Packed.struct |
| 3f080 | 73 20 68 61 76 65 20 77 65 6c 6c 2d 64 65 66 69 6e 65 64 20 6d 65 6d 6f 72 79 20 6c 61 79 6f 75 | s.have.well-defined.memory.layou |
| 3f0a0 | 74 20 2d 20 65 78 61 63 74 6c 79 20 74 68 65 20 73 61 6d 65 20 41 42 49 20 61 73 20 74 68 65 69 | t.-.exactly.the.same.ABI.as.thei |
| 3f0c0 | 72 20 62 61 63 6b 69 6e 67 20 69 6e 74 65 67 65 72 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 | r.backing.integer........</p>... |
| 3f0e0 | 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 45 61 63 68 20 66 69 65 6c 64 20 6f 66 20 61 20 70 61 | ....<p>.......Each.field.of.a.pa |
| 3f100 | 63 6b 65 64 20 73 74 72 75 63 74 20 69 73 20 69 6e 74 65 72 70 72 65 74 65 64 20 61 73 20 61 20 | cked.struct.is.interpreted.as.a. |
| 3f120 | 6c 6f 67 69 63 61 6c 20 73 65 71 75 65 6e 63 65 20 6f 66 20 62 69 74 73 2c 20 61 72 72 61 6e 67 | logical.sequence.of.bits,.arrang |
| 3f140 | 65 64 20 66 72 6f 6d 0a 20 20 20 20 20 20 6c 65 61 73 74 20 74 6f 20 6d 6f 73 74 20 73 69 67 6e | ed.from.......least.to.most.sign |
| 3f160 | 69 66 69 63 61 6e 74 2e 20 41 6c 6c 6f 77 65 64 20 66 69 65 6c 64 20 74 79 70 65 73 3a 0a 20 20 | ificant..Allowed.field.types:... |
| 3f180 | 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e | ....</p>.......<ul>.........<li> |
| 3f1a0 | 41 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 2f | An.<a.href="#Integers">integer</ |
| 3f1c0 | 61 3e 20 66 69 65 6c 64 20 75 73 65 73 20 65 78 61 63 74 6c 79 20 61 73 20 6d 61 6e 79 20 62 69 | a>.field.uses.exactly.as.many.bi |
| 3f1e0 | 74 73 20 61 73 20 69 74 73 0a 20 20 20 20 20 20 20 20 62 69 74 20 77 69 64 74 68 2e 20 46 6f 72 | ts.as.its.........bit.width..For |
| 3f200 | 20 65 78 61 6d 70 6c 65 2c 20 61 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | .example,.a.<code><span.class="t |
| 3f220 | 6f 6b 2d 74 79 70 65 22 3e 75 35 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 77 69 6c 6c 20 75 | ok-type">u5</span></code>.will.u |
| 3f240 | 73 65 20 35 20 62 69 74 73 20 6f 66 0a 20 20 20 20 20 20 20 20 74 68 65 20 62 61 63 6b 69 6e 67 | se.5.bits.of.........the.backing |
| 3f260 | 20 69 6e 74 65 67 65 72 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 41 20 3c 61 20 | .integer.</li>.........<li>A.<a. |
| 3f280 | 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> |
| 3f2a0 | 20 66 69 65 6c 64 20 75 73 65 73 20 65 78 61 63 74 6c 79 20 31 20 62 69 74 2e 3c 2f 6c 69 3e 0a | .field.uses.exactly.1.bit.</li>. |
| 3f2c0 | 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 65 | ........<li>An.<a.href="#enum">e |
| 3f2e0 | 6e 75 6d 3c 2f 61 3e 20 66 69 65 6c 64 20 75 73 65 73 20 65 78 61 63 74 6c 79 20 74 68 65 20 62 | num</a>.field.uses.exactly.the.b |
| 3f300 | 69 74 20 77 69 64 74 68 20 6f 66 20 69 74 73 20 69 6e 74 65 67 65 72 20 74 61 67 20 74 79 70 65 | it.width.of.its.integer.tag.type |
| 3f320 | 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 41 20 3c 61 20 68 72 65 66 3d 22 23 70 | .</li>.........<li>A.<a.href="#p |
| 3f340 | 61 63 6b 65 64 2d 75 6e 69 6f 6e 22 3e 70 61 63 6b 65 64 20 75 6e 69 6f 6e 3c 2f 61 3e 20 66 69 | acked-union">packed.union</a>.fi |
| 3f360 | 65 6c 64 20 75 73 65 73 20 65 78 61 63 74 6c 79 20 74 68 65 20 62 69 74 20 77 69 64 74 68 20 6f | eld.uses.exactly.the.bit.width.o |
| 3f380 | 66 20 74 68 65 20 75 6e 69 6f 6e 20 66 69 65 6c 64 20 77 69 74 68 0a 20 20 20 20 20 20 20 20 74 | f.the.union.field.with.........t |
| 3f3a0 | 68 65 20 6c 61 72 67 65 73 74 20 62 69 74 20 77 69 64 74 68 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 | he.largest.bit.width.</li>...... |
| 3f3c0 | 20 20 20 3c 6c 69 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 | ...<li>A.<code><span.class="tok- |
| 3f3e0 | 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 |
| 3f400 | 6f 6b 2d 6b 77 22 3e 73 74 72 75 63 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 66 69 65 6c | ok-kw">struct</span></code>.fiel |
| 3f420 | 64 20 75 73 65 73 20 74 68 65 20 62 69 74 73 20 6f 66 20 69 74 73 20 62 61 63 6b 69 6e 67 20 69 | d.uses.the.bits.of.its.backing.i |
| 3f440 | 6e 74 65 67 65 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 | nteger.</li>.......</ul>.......< |
| 3f460 | 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 65 | p>.......This.means.that.a.<code |
| 3f480 | 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 70 | ><span.class="tok-kw">packed</sp |
| 3f4a0 | 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< |
| 3f4c0 | 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 20 | /span></code>.can.participate... |
| 3f4e0 | 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 74 | ....in.a.<a.href="#bitCast">@bit |
| 3f500 | 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 22 | Cast</a>.or.a.<a.href="#ptrCast" |
| 3f520 | 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 6d | >@ptrCast</a>.to.reinterpret.mem |
| 3f540 | 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 61 | ory........This.even.works.at.<a |
| 3f560 | 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 0a | .href="#comptime">comptime</a>:. |
| 3f580 | 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 |
| 3f5a0 | 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 |
| 3f5c0 | 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 3c | ="file">test_packed_structs.zig< |
| 3f5e0 | 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 |
| 3f600 | 70 61 6e 20 63 6c 61 73 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>. |
| 3f620 | 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"> |
| 3f640 | 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- |
| 3f660 | 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 |
| 3f680 | 70 61 6e 20 63 6c 61 73 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>. |
| 3f6a0 | 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 6b | native_endian.=.<span.class="tok |
| 3f6c0 | 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 |
| 3f6e0 | 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 6f | lass="tok-str">"builtin&quo |
| 3f700 | 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 61 | t;</span>).target.cpu.arch.endia |
| 3f720 | 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 3c | n();.<span.class="tok-kw">const< |
| 3f740 | 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 |
| 3f760 | 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< |
| 3f780 | 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 6b | /span>.Full.=.<span.class="tok-k |
| 3f7a0 | 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 |
| 3f7c0 | 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 72 | k-kw">struct</span>.{.....number |
| 3f7e0 | 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 31 36 3c 2f 73 70 | :.<span.class="tok-type">u16</sp |
| 3f800 | 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 6e | an>,.};.<span.class="tok-kw">con |
| 3f820 | 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 3d | st</span>.Divided.=.<span.class= |
| 3f840 | 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 61 | "tok-kw">packed</span>.<span.cla |
| 3f860 | 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>.{..... |
| 3f880 | 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 38 | half1:.<span.class="tok-type">u8 |
| 3f8a0 | 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 61 | </span>,.....quarter3:.<span.cla |
| 3f8c0 | 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 61 | ss="tok-type">u4</span>,.....qua |
| 3f8e0 | 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 34 | rter4:.<span.class="tok-type">u4 |
| 3f900 | 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 |
| 3f920 | 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 |
| 3f940 | 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 65 | tr">"@bitCast.between.packe |
| 3f960 | 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 70 | d.structs"</span>.{.....<sp |
| 3f980 | 61 6e 20 63 6c 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 54 | an.class="tok-kw">try</span>.doT |
| 3f9a0 | 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 6b | heTest();.....<span.class="tok-k |
| 3f9c0 | 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 6b | w">try</span>.<span.class="tok-k |
| 3f9e0 | 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 0a | w">comptime</span>.doTheTest();. |
| 3fa00 | 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e | }..<span.class="tok-kw">fn</span |
| 3fa20 | 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 74 | >.<span.class="tok-fn">doTheTest |
| 3fa40 | 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 |
| 3fa60 | 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= |
| 3fa80 | 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 3c 73 70 61 6e | "tok-kw">try</span>.expect(<span |
| 3faa0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 69 7a 65 4f 66 3c 2f 73 70 | .class="tok-builtin">@sizeOf</sp |
| 3fac0 | 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 75 | an>(Full).==.<span.class="tok-nu |
| 3fae0 | 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 73 | mber">2</span>);.....<span.class |
| 3fb00 | 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 |
| 3fb20 | 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 |
| 3fb40 | 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 6f | pan>(Divided).==.<span.class="to |
| 3fb60 | 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 63 | k-number">2</span>);.....<span.c |
| 3fb80 | 6c 61 73 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 20 | lass="tok-kw">const</span>.full. |
| 3fba0 | 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 74 | =.Full{..number.=.<span.class="t |
| 3fbc0 | 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 20 | ok-number">0x1234</span>.};..... |
| 3fbe0 | 3c 73 70 61 6e 20 63 6c 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 |
| 3fc00 | 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 73 | >.divided:.Divided.=.<span.class |
| 3fc20 | 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 66 | ="tok-builtin">@bitCast</span>(f |
| 3fc40 | 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 74 | ull);.....<span.class="tok-kw">t |
| 3fc60 | 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 3d | ry</span>.expect(divided.half1.= |
| 3fc80 | 3d 20 3c 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 3c | =.<span.class="tok-number">0x34< |
| 3fca0 | 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 |
| 3fcc0 | 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 72 | ">try</span>.expect(divided.quar |
| 3fce0 | 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 22 | ter3.==.<span.class="tok-number" |
| 3fd00 | 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 74 | >0x2</span>);.....<span.class="t |
| 3fd20 | 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 64 | ok-kw">try</span>.expect(divided |
| 3fd40 | 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 75 | .quarter4.==.<span.class="tok-nu |
| 3fd60 | 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 6c | mber">0x1</span>);......<span.cl |
| 3fd80 | 61 73 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 65 | ass="tok-kw">const</span>.ordere |
| 3fda0 | 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 2f | d:.[<span.class="tok-number">2</ |
| 3fdc0 | 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< |
| 3fde0 | 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 | /span>.=.<span.class="tok-builti |
| 3fe00 | 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 73 | n">@bitCast</span>(full);.....<s |
| 3fe20 | 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> |
| 3fe40 | 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 20 | .(native_endian).{..........big. |
| 3fe60 | 3d 26 67 74 3b 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | =>.{.............<span.class= |
| 3fe80 | 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 72 | "tok-kw">try</span>.expect(order |
| 3fea0 | 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 73 | ed[<span.class="tok-number">0</s |
| 3fec0 | 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 |
| 3fee0 | 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 61 | ">0x12</span>);.............<spa |
| 3ff00 | 6e 20 63 6c 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 |
| 3ff20 | 63 74 28 6f 72 64 65 72 65 64 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | ct(ordered[<span.class="tok-numb |
| 3ff40 | 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 6f | er">1</span>].==.<span.class="to |
| 3ff60 | 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 33 34 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 20 20 20 20 | k-number">0x34</span>);......... |
| 3ff80 | 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 20 | },..........little.=>.{...... |
| 3ffa0 | 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< |
| 3ffc0 | 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 73 | /span>.expect(ordered[<span.clas |
| 3ffe0 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 5d 20 3d 3d 20 3c 73 70 61 | s="tok-number">0</span>].==.<spa |
| 40000 | 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 3e | n.class="tok-number">0x34</span> |
| 40020 | 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 2d | );.............<span.class="tok- |
| 40040 | 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 73 | kw">try</span>.expect(ordered[<s |
| 40060 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 5d | pan.class="tok-number">1</span>] |
| 40080 | 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 31 | .==.<span.class="tok-number">0x1 |
| 400a0 | 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 63 | 2</span>);.........},.....}.}</c |
| 400c0 | 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 |
| 400e0 | 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</ |
| 40100 | 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 |
| 40120 | 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 6b | .test.test_packed_structs.zig</k |
| 40140 | 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 74 | bd>.1/1.test_packed_structs.test |
| 40160 | 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 73 | .@bitCast.between.packed.structs |
| 40180 | 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 |
| 401a0 | 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 20 | ></pre></figure>.......<p>...... |
| 401c0 | 20 54 68 65 20 62 61 63 6b 69 6e 67 20 69 6e 74 65 67 65 72 20 63 61 6e 20 62 65 20 69 6e 66 65 | .The.backing.integer.can.be.infe |
| 401e0 | 72 72 65 64 20 6f 72 20 65 78 70 6c 69 63 69 74 6c 79 20 70 72 6f 76 69 64 65 64 2e 20 57 68 65 | rred.or.explicitly.provided..Whe |
| 40200 | 6e 0a 20 20 20 20 20 20 69 6e 66 65 72 72 65 64 2c 20 69 74 20 77 69 6c 6c 20 62 65 20 75 6e 73 | n.......inferred,.it.will.be.uns |
| 40220 | 69 67 6e 65 64 2e 20 57 68 65 6e 20 65 78 70 6c 69 63 69 74 6c 79 20 70 72 6f 76 69 64 65 64 2c | igned..When.explicitly.provided, |
| 40240 | 20 69 74 73 20 62 69 74 20 77 69 64 74 68 0a 20 20 20 20 20 20 77 69 6c 6c 20 62 65 20 65 6e 66 | .its.bit.width.......will.be.enf |
| 40260 | 6f 72 63 65 64 20 61 74 20 63 6f 6d 70 69 6c 65 20 74 69 6d 65 20 74 6f 20 65 78 61 63 74 6c 79 | orced.at.compile.time.to.exactly |
| 40280 | 20 6d 61 74 63 68 20 74 68 65 20 74 6f 74 61 6c 20 62 69 74 20 77 69 64 74 68 20 6f 66 0a 20 20 | .match.the.total.bit.width.of... |
| 402a0 | 20 20 20 20 74 68 65 20 66 69 65 6c 64 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 | ....the.fields:.......</p>...... |
| 402c0 | 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- |
| 402e0 | 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 6d 69 73 | cap"><cite.class="file">test_mis |
| 40300 | 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 3e 3c 2f | sized_packed_struct.zig</cite></ |
| 40320 | 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 |
| 40340 | 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 |
| 40360 | 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 61 63 6b | ss="tok-str">"missized.pack |
| 40380 | 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 3c 73 70 | ed.struct"</span>.{.....<sp |
| 403a0 | 61 6e 20 63 6c 61 73 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 | an.class="tok-kw">const</span>.S |
| 403c0 | 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</ |
| 403e0 | 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 |
| 40400 | 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | t</span>(<span.class="tok-type"> |
| 40420 | 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 22 74 6f | u32</span>).{.a:.<span.class="to |
| 40440 | 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 63 6c 61 | k-type">u16</span>,.b:.<span.cla |
| 40460 | 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 20 20 5f | ss="tok-type">u8</span>.};....._ |
| 40480 | 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 75 6d 62 | .=.S{..a.=.<span.class="tok-numb |
| 404a0 | 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 73 3d 22 | er">4</span>,..b.=.<span.class=" |
| 404c0 | 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 64 65 3e | tok-number">2</span>.};.}</code> |
| 404e0 | 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 |
| 40500 | 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 |
| 40520 | 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 |
| 40540 | 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 2e 7a 69 | t.test_missized_packed_struct.zi |
| 40560 | 67 3c 2f 6b 62 64 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f | g</kbd>.<span.class="sgr-1m">/ho |
| 40580 | 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 | me/andy/dev/zig/doc/langref/test |
| 405a0 | 5f 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 3a 32 3a 32 39 | _missized_packed_struct.zig:2:29 |
| 405c0 | 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 |
| 405e0 | 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 |
| 40600 | 22 3e 62 61 63 6b 69 6e 67 20 69 6e 74 65 67 65 72 20 74 79 70 65 20 27 75 33 32 27 20 68 61 73 | ">backing.integer.type.'u32'.has |
| 40620 | 20 62 69 74 20 73 69 7a 65 20 33 32 20 62 75 74 20 74 68 65 20 73 74 72 75 63 74 20 66 69 65 6c | .bit.size.32.but.the.struct.fiel |
| 40640 | 64 73 20 68 61 76 65 20 61 20 74 6f 74 61 6c 20 62 69 74 20 73 69 7a 65 20 6f 66 20 32 34 0a 3c | ds.have.a.total.bit.size.of.24.< |
| 40660 | 2f 73 70 61 6e 3e 20 20 20 20 63 6f 6e 73 74 20 53 20 3d 20 70 61 63 6b 65 64 20 73 74 72 75 63 | /span>....const.S.=.packed.struc |
| 40680 | 74 28 75 33 32 29 20 7b 20 61 3a 20 75 31 36 2c 20 62 3a 20 75 38 20 7d 3b 0a 20 20 20 20 20 20 | t(u32).{.a:.u16,.b:.u8.};....... |
| 406a0 | 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 |
| 406c0 | 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 7e 7e 0a 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 | s="sgr-32m">^~~.</span><span.cla |
| 406e0 | 73 73 3d 22 73 67 72 2d 32 6d 22 3e 72 65 66 65 72 65 6e 63 65 64 20 62 79 3a 0a 20 20 20 20 74 | ss="sgr-2m">referenced.by:.....t |
| 40700 | 65 73 74 2e 6d 69 73 73 69 7a 65 64 20 70 61 63 6b 65 64 20 73 74 72 75 63 74 3a 20 2f 68 6f 6d | est.missized.packed.struct:./hom |
| 40720 | 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f | e/andy/dev/zig/doc/langref/test_ |
| 40740 | 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 3a 32 3a 32 32 0a | missized_packed_struct.zig:2:22. |
| 40760 | 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>.. |
| 40780 | 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 |
| 407a0 | 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 |
| 407c0 | 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>...... |
| 407e0 | 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- |
| 40800 | 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 |
| 40820 | 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 |
| 40840 | 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 |
| 40860 | 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 |
| 40880 | 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 |
| 408a0 | 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 |
| 408c0 | 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>); |
| 408e0 | 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 |
| 40900 | 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;. |
| 40920 | 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 |
| 40940 | 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 |
| 40960 | 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 |
| 40980 | 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 |
| 409a0 | 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>,.. |
| 409c0 | 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< |
| 409e0 | 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- |
| 40a00 | 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 |
| 40a20 | 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 |
| 40a40 | 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 |
| 40a60 | 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. |
| 40a80 | 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>,.... |
| 40aa0 | 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 |
| 40ac0 | 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 |
| 40ae0 | 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 |
| 40b00 | 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 |
| 40b20 | 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>.{.....< |
| 40b40 | 73 70 61 6e 20 63 6c 61 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> |
| 40b60 | 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 |
| 40b80 | 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 |
| 40ba0 | 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"> |
| 40bc0 | 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 |
| 40be0 | 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 |
| 40c00 | 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>< |
| 40c20 | 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 |
| 40c40 | 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< |
| 40c60 | 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 |
| 40c80 | 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 |
| 40ca0 | 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 |
| 40cc0 | 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></ |
| 40ce0 | 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 |
| 40d00 | 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 |
| 40d20 | 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 |
| 40d40 | 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 |
| 40d60 | 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:.. |
| 40d80 | 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 |
| 40da0 | 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= |
| 40dc0 | 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 |
| 40de0 | 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 |
| 40e00 | 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 |
| 40e20 | 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 |
| 40e40 | 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 |
| 40e60 | 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>); |
| 40e80 | 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 |
| 40ea0 | 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;. |
| 40ec0 | 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 |
| 40ee0 | 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 |
| 40f00 | 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 |
| 40f20 | 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 |
| 40f40 | 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>,.. |
| 40f60 | 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< |
| 40f80 | 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- |
| 40fa0 | 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 |
| 40fc0 | 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.= |
| 40fe0 | 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= |
| 41000 | 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.=. |
| 41020 | 3c 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 |
| 41040 | 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 |
| 41060 | 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=" |
| 41080 | 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= |
| 410a0 | 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 |
| 410c0 | 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>.{ |
| 410e0 | 0a 20 20 20 20 3c 73 70 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 |
| 41100 | 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 |
| 41120 | 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< |
| 41140 | 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" |
| 41160 | 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"> |
| 41180 | 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- |
| 411a0 | 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 |
| 411c0 | 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=" |
| 411e0 | 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. |
| 41200 | 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.* |
| 41220 | 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 |
| 41240 | 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 |
| 41260 | 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 |
| 41280 | 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 |
| 412a0 | 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 |
| 412c0 | 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 | m">/home/andy/dev/zig/doc/langre |
| 412e0 | 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 69 67 3a 31 37 | f/test_misaligned_pointer.zig:17 |
| 41300 | 3a 32 30 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 31 6d | :20:.</span><span.class="sgr-31m |
| 41320 | 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 |
| 41340 | 2d 31 6d 22 3e 65 78 70 65 63 74 65 64 20 74 79 70 65 20 27 2a 63 6f 6e 73 74 20 75 33 27 2c 20 | -1m">expected.type.'*const.u3',. |
| 41360 | 66 6f 75 6e 64 20 27 2a 61 6c 69 67 6e 28 31 3a 33 3a 31 29 20 75 33 27 0a 3c 2f 73 70 61 6e 3e | found.'*align(1:3:1).u3'.</span> |
| 41380 | 20 20 20 20 74 72 79 20 65 78 70 65 63 74 28 62 61 72 28 26 61 6d 70 3b 62 69 74 5f 66 69 65 6c | ....try.expect(bar(&bit_fiel |
| 413a0 | 64 2e 62 29 20 3d 3d 20 32 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c | d.b).==.2);....................< |
| 413c0 | 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">^~~~~~~~~~~ |
| 413e0 | 7e 0a 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 | ~.</span><span.class="sgr-1m">/h |
| 41400 | 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 | ome/andy/dev/zig/doc/langref/tes |
| 41420 | 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 20 | t_misaligned_pointer.zig:17:20:. |
| 41440 | 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 36 6d 22 3e 6e 6f 74 | </span><span.class="sgr-36m">not |
| 41460 | 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 70 | e:.</span><span.class="sgr-1m">p |
| 41480 | 6f 69 6e 74 65 72 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 | ointer.host.size.'1'.cannot.cast |
| 414a0 | 20 69 6e 74 6f 20 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 | .into.pointer.host.size.'0'.</sp |
| 414c0 | 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e | an><span.class="sgr-1m">/home/an |
| 414e0 | 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 6d 69 73 61 | dy/dev/zig/doc/langref/test_misa |
| 41500 | 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 |
| 41520 | 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 |
| 41540 | 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 |
| 41560 | 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 73 74 20 69 6e 74 6f | .bit.offset.'3'.cannot.cast.into |
| 41580 | 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 2f 73 70 61 6e 3e 3c | .pointer.bit.offset.'0'.</span>< |
| 415a0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 | span.class="sgr-1m">/home/andy/d |
| 415c0 | 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 6d 69 73 61 6c 69 67 6e | ev/zig/doc/langref/test_misalign |
| 415e0 | 65 64 5f 70 6f 69 6e 74 65 72 2e 7a 69 67 3a 32 30 3a 31 31 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 | ed_pointer.zig:20:11:.</span><sp |
| 41600 | 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 36 6d 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e 3e | an.class="sgr-36m">note:.</span> |
| 41620 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 70 61 72 61 6d 65 74 65 72 20 74 | <span.class="sgr-1m">parameter.t |
| 41640 | 79 70 65 20 64 65 63 6c 61 72 65 64 20 68 65 72 65 0a 3c 2f 73 70 61 6e 3e 66 6e 20 62 61 72 28 | ype.declared.here.</span>fn.bar( |
| 41660 | 78 3a 20 2a 63 6f 6e 73 74 20 75 33 29 20 75 33 20 7b 0a 20 20 20 20 20 20 20 20 20 20 3c 73 70 | x:.*const.u3).u3.{...........<sp |
| 41680 | 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 0a 3c 2f 73 | an.class="sgr-32m">^~~~~~~~~.</s |
| 416a0 | 70 61 6e 3e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 | pan>.</samp></pre></figure>..... |
| 416c0 | 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 6e 20 74 68 69 73 20 63 61 73 65 2c 20 74 68 65 20 66 | ...<p>.......In.this.case,.the.f |
| 416e0 | 75 6e 63 74 69 6f 6e 20 3c 63 6f 64 65 3e 62 61 72 3c 2f 63 6f 64 65 3e 20 63 61 6e 6e 6f 74 20 | unction.<code>bar</code>.cannot. |
| 41700 | 62 65 20 63 61 6c 6c 65 64 20 62 65 63 61 75 73 65 20 74 68 65 20 70 6f 69 6e 74 65 72 0a 20 20 | be.called.because.the.pointer... |
| 41720 | 20 20 20 20 74 6f 20 74 68 65 20 6e 6f 6e 2d 41 42 49 2d 61 6c 69 67 6e 65 64 20 66 69 65 6c 64 | ....to.the.non-ABI-aligned.field |
| 41740 | 20 6d 65 6e 74 69 6f 6e 73 20 74 68 65 20 62 69 74 20 6f 66 66 73 65 74 2c 20 62 75 74 20 74 68 | .mentions.the.bit.offset,.but.th |
| 41760 | 65 20 66 75 6e 63 74 69 6f 6e 20 65 78 70 65 63 74 73 20 61 6e 20 41 42 49 2d 61 6c 69 67 6e 65 | e.function.expects.an.ABI-aligne |
| 41780 | 64 20 70 6f 69 6e 74 65 72 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a | d.pointer........</p>.......<p>. |
| 417a0 | 20 20 20 20 20 20 50 6f 69 6e 74 65 72 73 20 74 6f 20 6e 6f 6e 2d 41 42 49 2d 61 6c 69 67 6e 65 | ......Pointers.to.non-ABI-aligne |
| 417c0 | 64 20 66 69 65 6c 64 73 20 73 68 61 72 65 20 74 68 65 20 73 61 6d 65 20 61 64 64 72 65 73 73 20 | d.fields.share.the.same.address. |
| 417e0 | 61 73 20 74 68 65 20 6f 74 68 65 72 20 66 69 65 6c 64 73 20 77 69 74 68 69 6e 20 74 68 65 69 72 | as.the.other.fields.within.their |
| 41800 | 20 68 6f 73 74 20 69 6e 74 65 67 65 72 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 | .host.integer:.......</p>....... |
| 41820 | 3c 66 69 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 |
| 41840 | 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 61 63 6b | ap"><cite.class="file">test_pack |
| 41860 | 65 64 5f 73 74 72 75 63 74 5f 66 69 65 6c 64 5f 61 64 64 72 65 73 73 2e 7a 69 67 3c 2f 63 69 74 | ed_struct_field_address.zig</cit |
| 41880 | 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. |
| 418a0 | 63 6c 61 73 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. |
| 418c0 | 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 |
| 418e0 | 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" |
| 41900 | 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. |
| 41920 | 63 6c 61 73 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 |
| 41940 | 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. |
| 41960 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 42 69 74 46 | class="tok-kw">const</span>.BitF |
| 41980 | 69 65 6c 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 61 63 6b | ield.=.<span.class="tok-kw">pack |
| 419a0 | 65 64 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 | ed</span>.<span.class="tok-kw">s |
| 419c0 | 74 72 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 | truct</span>.{.....a:.<span.clas |
| 419e0 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 62 3a 20 3c | s="tok-type">u3</span>,.....b:.< |
| 41a00 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 3c 2f 73 70 61 6e 3e 2c | span.class="tok-type">u3</span>, |
| 41a20 | 0a 20 20 20 20 63 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 | .....c:.<span.class="tok-type">u |
| 41a40 | 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 6b | 2</span>,.};..<span.class="tok-k |
| 41a60 | 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 62 69 74 5f 66 69 65 6c 64 20 3d 20 42 69 74 46 69 65 | w">var</span>.bit_field.=.BitFie |
| 41a80 | 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 75 | ld{......a.=.<span.class="tok-nu |
| 41aa0 | 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 63 | mber">1</span>,......b.=.<span.c |
| 41ac0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 | lass="tok-number">2</span>,..... |
| 41ae0 | 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 3c | .c.=.<span.class="tok-number">3< |
| 41b00 | 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" |
| 41b20 | 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 |
| 41b40 | 72 22 3e 26 71 75 6f 74 3b 70 6f 69 6e 74 65 72 73 20 6f 66 20 73 75 62 2d 62 79 74 65 2d 61 6c | r">"pointers.of.sub-byte-al |
| 41b60 | 69 67 6e 65 64 20 66 69 65 6c 64 73 20 73 68 61 72 65 20 61 64 64 72 65 73 73 65 73 26 71 75 6f | igned.fields.share.addresses&quo |
| 41b80 | 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 |
| 41ba0 | 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 |
| 41bc0 | 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 70 | ss="tok-builtin">@intFromPtr</sp |
| 41be0 | 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 20 63 | an>(&bit_field.a).==.<span.c |
| 41c00 | 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</ |
| 41c20 | 73 70 61 6e 3e 28 26 61 6d 70 3b 62 69 74 5f 66 69 65 6c 64 2e 62 29 29 3b 0a 20 20 20 20 3c 73 | span>(&bit_field.b));.....<s |
| 41c40 | 70 61 6e 20 63 6c 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 |
| 41c60 | 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">@ |
| 41c80 | 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 5f 66 69 65 6c 64 | intFromPtr</span>(&bit_field |
| 41ca0 | 2e 61 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 | .a).==.<span.class="tok-builtin" |
| 41cc0 | 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 5f 66 69 65 | >@intFromPtr</span>(&bit_fie |
| 41ce0 | 6c 64 2e 63 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 | ld.c));.}</code></pre></figure>< |
| 41d00 | 66 69 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- |
| 41d20 | 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 |
| 41d40 | 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 70 61 63 6b 65 64 5f 73 74 | p>$.<kbd>zig.test.test_packed_st |
| 41d60 | 72 75 63 74 5f 66 69 65 6c 64 5f 61 64 64 72 65 73 73 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 | ruct_field_address.zig</kbd>.1/1 |
| 41d80 | 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 64 64 72 65 73 | .test_packed_struct_field_addres |
| 41da0 | 73 2e 74 65 73 74 2e 70 6f 69 6e 74 65 72 73 20 6f 66 20 73 75 62 2d 62 79 74 65 2d 61 6c 69 67 | s.test.pointers.of.sub-byte-alig |
| 41dc0 | 6e 65 64 20 66 69 65 6c 64 73 20 73 68 61 72 65 20 61 64 64 72 65 73 73 65 73 2e 2e 2e 4f 4b 0a | ned.fields.share.addresses...OK. |
| 41de0 | 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 |
| 41e00 | 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 | ></figure>........<p>.......This |
| 41e20 | 20 63 61 6e 20 62 65 20 6f 62 73 65 72 76 65 64 20 77 69 74 68 20 3c 61 20 68 72 65 66 3d 22 23 | .can.be.observed.with.<a.href="# |
| 41e40 | 62 69 74 4f 66 66 73 65 74 4f 66 22 3e 40 62 69 74 4f 66 66 73 65 74 4f 66 3c 2f 61 3e 20 61 6e | bitOffsetOf">@bitOffsetOf</a>.an |
| 41e60 | 64 20 3c 61 20 68 72 65 66 3d 22 23 6f 66 66 73 65 74 4f 66 22 3e 6f 66 66 73 65 74 4f 66 3c 2f | d.<a.href="#offsetOf">offsetOf</ |
| 41e80 | 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 69 | a>:.......</p>.......<figure><fi |
| 41ea0 | 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 |
| 41ec0 | 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 62 69 74 4f 66 66 73 65 74 4f 66 5f 6f 66 66 | lass="file">test_bitOffsetOf_off |
| 41ee0 | 73 65 74 4f 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 | setOf.zig</cite></figcaption><pr |
| 41f00 | 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 |
| 41f20 | 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 |
| 41f40 | 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 |
| 41f60 | 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"</ |
| 41f80 | 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 |
| 41fa0 | 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 |
| 41fc0 | 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 |
| 41fe0 | 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 20 63 6c 61 73 73 | st</span>.BitField.=.<span.class |
| 42000 | 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 |
| 42020 | 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>.{.... |
| 42040 | 20 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 3c 2f 73 | .a:.<span.class="tok-type">u3</s |
| 42060 | 70 61 6e 3e 2c 0a 20 20 20 20 62 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | pan>,.....b:.<span.class="tok-ty |
| 42080 | 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 6e 20 63 6c 61 73 | pe">u3</span>,.....c:.<span.clas |
| 420a0 | 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 0a 0a 3c 73 70 61 | s="tok-type">u2</span>,.};..<spa |
| 420c0 | 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 |
| 420e0 | 61 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 66 66 73 65 74 73 | an.class="tok-str">"offsets |
| 42100 | 20 6f 66 20 6e 6f 6e 2d 62 79 74 65 2d 61 6c 69 67 6e 65 64 20 66 69 65 6c 64 73 26 71 75 6f 74 | .of.non-byte-aligned.fields" |
| 42120 | 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ;</span>.{.....<span.class="tok- |
| 42140 | 6b 77 22 3e 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 |
| 42160 | 70 61 6e 20 63 6c 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 |
| 42180 | 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">@ |
| 421a0 | 62 69 74 4f 66 66 73 65 74 4f 66 3c 2f 73 70 61 6e 3e 28 42 69 74 46 69 65 6c 64 2c 20 3c 73 70 | bitOffsetOf</span>(BitField,.<sp |
| 421c0 | 61 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" |
| 421e0 | 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 |
| 42200 | 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 |
| 42220 | 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(< |
| 42240 | 73 70 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 | span.class="tok-builtin">@bitOff |
| 42260 | 73 65 74 4f 66 3c 2f 73 70 61 6e 3e 28 42 69 74 46 69 65 6c 64 2c 20 3c 73 70 61 6e 20 63 6c 61 | setOf</span>(BitField,.<span.cla |
| 42280 | 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 62 26 71 75 6f 74 3b 3c 2f 73 70 61 6e | ss="tok-str">"b"</span |
| 422a0 | 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 33 | >).==.<span.class="tok-number">3 |
| 422c0 | 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | </span>);.........<span.class="t |
| 422e0 | 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 |
| 42300 | 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< |
| 42320 | 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 |
| 42340 | 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 63 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 | k-str">"c"</span>).==. |
| 42360 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 36 3c 2f 73 70 61 6e | <span.class="tok-number">6</span |
| 42380 | 3e 29 3b 0a 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | >);..........<span.class="tok-kw |
| 423a0 | 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= |
| 423c0 | 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 28 42 | "tok-builtin">@offsetOf</span>(B |
| 423e0 | 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 3e 26 | itField,.<span.class="tok-str">& |
| 42400 | 71 75 6f 74 3b 61 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 | quot;a"</span>).==.<span.cl |
| 42420 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 | ass="tok-number">0</span>);..... |
| 42440 | 20 20 20 20 3c 73 70 61 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 |
| 42460 | 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 |
| 42480 | 74 69 6e 22 3e 40 6f 66 66 73 65 74 4f 66 3c 2f 73 70 61 6e 3e 28 42 69 74 46 69 65 6c 64 2c 20 | tin">@offsetOf</span>(BitField,. |
| 424a0 | 3c 73 70 61 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 26 71 75 | <span.class="tok-str">"b&qu |
| 424c0 | 6f 74 3b 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ot;</span>).==.<span.class="tok- |
| 424e0 | 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e | number">0</span>);.........<span |
| 42500 | 20 63 6c 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 |
| 42520 | 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 6f 66 66 | t(<span.class="tok-builtin">@off |
| 42540 | 73 65 74 4f 66 3c 2f 73 70 61 6e 3e 28 42 69 74 46 69 65 6c 64 2c 20 3c 73 70 61 6e 20 63 6c 61 | setOf</span>(BitField,.<span.cla |
| 42560 | 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 63 26 71 75 6f 74 3b 3c 2f 73 70 61 6e | ss="tok-str">"c"</span |
| 42580 | 3e 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 | >).==.<span.class="tok-number">0 |
| 425a0 | 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 3c 2f | </span>);.....}.}</code></pre></ |
| 425c0 | 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 |
| 425e0 | 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>< |
| 42600 | 70 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 62 | pre><samp>$.<kbd>zig.test.test_b |
| 42620 | 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 6b 62 64 3e 0a 31 2f | itOffsetOf_offsetOf.zig</kbd>.1/ |
| 42640 | 31 20 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 74 65 73 74 | 1.test_bitOffsetOf_offsetOf.test |
| 42660 | 2e 6f 66 66 73 65 74 73 20 6f 66 20 6e 6f 6e 2d 62 79 74 65 2d 61 6c 69 67 6e 65 64 20 66 69 65 | .offsets.of.non-byte-aligned.fie |
| 42680 | 6c 64 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 | lds...OK.All.1.tests.passed..</s |
| 426a0 | 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 | amp></pre></figure>........<p>.. |
| 426c0 | 20 20 20 20 20 50 61 63 6b 65 64 20 73 74 72 75 63 74 73 20 68 61 76 65 20 74 68 65 20 73 61 6d | .....Packed.structs.have.the.sam |
| 426e0 | 65 20 61 6c 69 67 6e 6d 65 6e 74 20 61 73 20 74 68 65 69 72 20 62 61 63 6b 69 6e 67 20 69 6e 74 | e.alignment.as.their.backing.int |
| 42700 | 65 67 65 72 2c 20 68 6f 77 65 76 65 72 2c 20 6f 76 65 72 61 6c 69 67 6e 65 64 0a 20 20 20 20 20 | eger,.however,.overaligned...... |
| 42720 | 20 70 6f 69 6e 74 65 72 73 20 74 6f 20 70 61 63 6b 65 64 20 73 74 72 75 63 74 73 20 63 61 6e 20 | .pointers.to.packed.structs.can. |
| 42740 | 6f 76 65 72 72 69 64 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 | override.this:.......</p>....... |
| 42760 | 3c 66 69 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 |
| 42780 | 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 6f 76 65 72 | ap"><cite.class="file">test_over |
| 427a0 | 61 6c 69 67 6e 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 3e | aligned_packed_struct.zig</cite> |
| 427c0 | 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 |
| 427e0 | 61 73 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.=. |
| 42800 | 3c 73 70 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 |
| 42820 | 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">& |
| 42840 | 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 |
| 42860 | 61 73 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 |
| 42880 | 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 |
| 428a0 | 61 73 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 | ass="tok-kw">const</span>.S.=.<s |
| 428c0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 61 63 6b 65 64 3c 2f 73 70 61 6e 3e | pan.class="tok-kw">packed</span> |
| 428e0 | 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 |
| 42900 | 61 6e 3e 20 7b 0a 20 20 20 20 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | an>.{.....a:.<span.class="tok-ty |
| 42920 | 70 65 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 | pe">u32</span>,.....b:.<span.cla |
| 42940 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 2c 0a 7d 3b 0a 3c 73 70 | ss="tok-type">u32</span>,.};.<sp |
| 42960 | 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 |
| 42980 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 6f 76 65 72 61 6c | pan.class="tok-str">"overal |
| 429a0 | 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 74 72 75 63 74 26 71 | igned.pointer.to.packed.struct&q |
| 429c0 | 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 |
| 429e0 | 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 66 6f 6f 3a 20 53 20 3c 73 70 61 6e 20 63 | ok-kw">var</span>.foo:.S.<span.c |
| 42a00 | 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 |
| 42a20 | 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>).=. |
| 42a40 | 2e 7b 20 2e 61 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 | .{..a.=.<span.class="tok-number" |
| 42a60 | 3e 31 3c 2f 73 70 61 6e 3e 2c 20 2e 62 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | >1</span>,..b.=.<span.class="tok |
| 42a80 | 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 | -number">2</span>.};.....<span.c |
| 42aa0 | 6c 61 73 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 | lass="tok-kw">const</span>.ptr:. |
| 42ac0 | 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 |
| 42ae0 | 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 | n>(<span.class="tok-number">4</s |
| 42b00 | 70 61 6e 3e 29 20 53 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 | pan>).S.=.&foo;.....<span.cl |
| 42b20 | 61 73 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 5f 74 6f | ass="tok-kw">const</span>.ptr_to |
| 42b40 | 5f 62 3a 20 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c | _b:.*<span.class="tok-type">u32< |
| 42b60 | 2f 73 70 61 6e 3e 20 3d 20 26 61 6d 70 3b 70 74 72 2e 62 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 | /span>.=.&ptr.b;.....<span.c |
| 42b80 | 6c 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( |
| 42ba0 | 70 74 72 5f 74 6f 5f 62 2e 2a 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | ptr_to_b.*.==.<span.class="tok-n |
| 42bc0 | 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e | umber">2</span>);.}</code></pre> |
| 42be0 | 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 |
| 42c00 | 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 |
| 42c20 | 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 |
| 42c40 | 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 7a 69 67 3c 2f | _overaligned_packed_struct.zig</ |
| 42c60 | 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 6f 76 65 72 61 6c 69 67 6e 65 64 5f 70 61 63 6b 65 64 | kbd>.1/1.test_overaligned_packed |
| 42c80 | 5f 73 74 72 75 63 74 2e 74 65 73 74 2e 6f 76 65 72 61 6c 69 67 6e 65 64 20 70 6f 69 6e 74 65 72 | _struct.test.overaligned.pointer |
| 42ca0 | 20 74 6f 20 70 61 63 6b 65 64 20 73 74 72 75 63 74 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 | .to.packed.struct...OK.All.1.tes |
| 42cc0 | 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 |
| 42ce0 | 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 74 27 73 20 61 6c 73 6f 20 70 6f 73 | >........<p>.......It's.also.pos |
| 42d00 | 73 69 62 6c 65 20 74 6f 20 73 65 74 20 61 6c 69 67 6e 6d 65 6e 74 20 6f 66 20 73 74 72 75 63 74 | sible.to.set.alignment.of.struct |
| 42d20 | 20 66 69 65 6c 64 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 | .fields:.......</p>.......<figur |
| 42d40 | 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 |
| 42d60 | 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 61 6c 69 67 6e 65 64 5f 73 74 | ite.class="file">test_aligned_st |
| 42d80 | 72 75 63 74 5f 66 69 65 6c 64 73 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 | ruct_fields.zig</cite></figcapti |
| 42da0 | 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 |
| 42dc0 | 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 |
| 42de0 | 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>(< |
| 42e00 | 73 70 61 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 |
| 42e20 | 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 |
| 42e40 | 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 6c 20 3d 20 73 74 | w">const</span>.expectEqual.=.st |
| 42e60 | 64 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 45 71 75 61 6c 3b 0a 0a 3c 73 70 61 6e 20 63 6c | d.testing.expectEqual;..<span.cl |
| 42e80 | 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 |
| 42ea0 | 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 61 6c 69 67 6e 65 64 20 73 74 72 | lass="tok-str">"aligned.str |
| 42ec0 | 75 63 74 20 66 69 65 6c 64 73 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 | uct.fields"</span>.{.....<s |
| 42ee0 | 70 61 6e 20 63 6c 61 73 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>. |
| 42f00 | 53 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 74 72 75 63 74 3c | S.=.<span.class="tok-kw">struct< |
| 42f20 | 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | /span>.{.........a:.<span.class= |
| 42f40 | 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 61 6e 20 63 6c 61 73 | "tok-type">u32</span>.<span.clas |
| 42f60 | 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 |
| 42f80 | 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 2c 0a 20 20 20 20 | ass="tok-number">2</span>),..... |
| 42fa0 | 20 20 20 20 62 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 | ....b:.<span.class="tok-type">u3 |
| 42fc0 | 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 6c | 2</span>.<span.class="tok-kw">al |
| 42fe0 | 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 62 | ign</span>(<span.class="tok-numb |
| 43000 | 65 72 22 3e 36 34 3c 2f 73 70 61 6e 3e 29 2c 0a 20 20 20 20 7d 3b 0a 20 20 20 20 3c 73 70 61 6e | er">64</span>),.....};.....<span |
| 43020 | 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 20 3d | .class="tok-kw">var</span>.foo.= |
| 43040 | 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 75 6d 62 65 72 | .S{..a.=.<span.class="tok-number |
| 43060 | 22 3e 31 3c 2f 73 70 61 6e 3e 2c 20 2e 62 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ">1</span>,..b.=.<span.class="to |
| 43080 | 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 0a 20 20 20 20 3c 73 70 61 6e | k-number">2</span>.};......<span |
| 430a0 | 20 63 6c 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 |
| 430c0 | 74 45 71 75 61 6c 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e | tEqual(<span.class="tok-number"> |
| 430e0 | 36 34 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c | 64</span>,.<span.class="tok-buil |
| 43100 | 74 69 6e 22 3e 40 61 6c 69 67 6e 4f 66 3c 2f 73 70 61 6e 3e 28 53 29 29 3b 0a 20 20 20 20 3c 73 | tin">@alignOf</span>(S));.....<s |
| 43120 | 70 61 6e 20 63 6c 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 |
| 43140 | 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 6b 77 22 3e | pectEqual(*<span.class="tok-kw"> |
| 43160 | 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 |
| 43180 | 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 |
| 431a0 | 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | -type">u32</span>,.<span.class=" |
| 431c0 | 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 26 61 6d 70 | tok-builtin">@TypeOf</span>(& |
| 431e0 | 3b 66 6f 6f 2e 61 29 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | ;foo.a));.....<span.class="tok-k |
| 43200 | 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 73 70 61 6e | w">try</span>.expectEqual(*<span |
| 43220 | 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 |
| 43240 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 36 34 3c 2f 73 70 61 6e 3e 29 | an.class="tok-number">64</span>) |
| 43260 | 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 |
| 43280 | 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 | n>,.<span.class="tok-builtin">@T |
| 432a0 | 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 26 61 6d 70 3b 66 6f 6f 2e 62 29 29 3b 0a 7d 3c 2f 63 6f | ypeOf</span>(&foo.b));.}</co |
| 432c0 | 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 |
| 432e0 | 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 |
| 43300 | 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. |
| 43320 | 74 65 73 74 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 | test.test_aligned_struct_fields. |
| 43340 | 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 61 6c 69 67 6e 65 64 5f 73 74 72 75 63 | zig</kbd>.1/1.test_aligned_struc |
| 43360 | 74 5f 66 69 65 6c 64 73 2e 74 65 73 74 2e 61 6c 69 67 6e 65 64 20 73 74 72 75 63 74 20 66 69 65 | t_fields.test.aligned.struct.fie |
| 43380 | 6c 64 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 | lds...OK.All.1.tests.passed..</s |
| 433a0 | 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 | amp></pre></figure>........<p>.. |
| 433c0 | 20 20 20 20 20 45 71 75 61 74 69 6e 67 20 70 61 63 6b 65 64 20 73 74 72 75 63 74 73 20 72 65 73 | .....Equating.packed.structs.res |
| 433e0 | 75 6c 74 73 20 69 6e 20 61 20 63 6f 6d 70 61 72 69 73 6f 6e 20 6f 66 20 74 68 65 20 62 61 63 6b | ults.in.a.comparison.of.the.back |
| 43400 | 69 6e 67 20 69 6e 74 65 67 65 72 2c 0a 20 20 20 20 20 20 61 6e 64 20 6f 6e 6c 79 20 77 6f 72 6b | ing.integer,.......and.only.work |
| 43420 | 73 20 66 6f 72 20 74 68 65 20 3c 63 6f 64 65 3e 3d 3d 3c 2f 63 6f 64 65 3e 20 61 6e 64 20 3c 63 | s.for.the.<code>==</code>.and.<c |
| 43440 | 6f 64 65 3e 21 3d 3c 2f 63 6f 64 65 3e 20 3c 61 20 68 72 65 66 3d 22 23 4f 70 65 72 61 74 6f 72 | ode>!=</code>.<a.href="#Operator |
| 43460 | 73 22 3e 4f 70 65 72 61 74 6f 72 73 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 | s">Operators</a>........</p>.... |
| 43480 | 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 |
| 434a0 | 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 |
| 434c0 | 61 63 6b 65 64 5f 73 74 72 75 63 74 5f 65 71 75 61 6c 69 74 79 2e 7a 69 67 3c 2f 63 69 74 65 3e | acked_struct_equality.zig</cite> |
| 434e0 | 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 |
| 43500 | 61 73 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.=. |
| 43520 | 3c 73 70 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 |
| 43540 | 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">& |
| 43560 | 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 |
| 43580 | 61 73 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 |
| 435a0 | 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 |
| 435c0 | 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 |
| 435e0 | 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 70 61 63 6b 65 64 20 73 74 72 75 | lass="tok-str">"packed.stru |
| 43600 | 63 74 20 65 71 75 61 6c 69 74 79 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c | ct.equality"</span>.{.....< |
| 43620 | 73 70 61 6e 20 63 6c 61 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> |
| 43640 | 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 64 | .S.=.<span.class="tok-kw">packed |
| 43660 | 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 74 72 | </span>.<span.class="tok-kw">str |
| 43680 | 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 61 3a 20 3c 73 70 61 6e 20 63 6c | uct</span>.{.........a:.<span.cl |
| 436a0 | 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 20 20 | ass="tok-type">u4</span>,....... |
| 436c0 | 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 34 3c 2f | ..b:.<span.class="tok-type">u4</ |
| 436e0 | 73 70 61 6e 3e 2c 0a 20 20 20 20 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | span>,.....};.....<span.class="t |
| 43700 | 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 78 3a 20 53 20 3d 20 2e 7b 20 2e 61 | ok-kw">const</span>.x:.S.=..{..a |
| 43720 | 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 |
| 43740 | 70 61 6e 3e 2c 20 2e 62 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | pan>,..b.=.<span.class="tok-numb |
| 43760 | 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | er">2</span>.};.....<span.class= |
| 43780 | 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 53 20 3d 20 2e 7b 20 | "tok-kw">const</span>.y:.S.=..{. |
| 437a0 | 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< |
| 437c0 | 2f 73 70 61 6e 3e 2c 20 2e 61 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | /span>,..a.=.<span.class="tok-nu |
| 437e0 | 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | mber">1</span>.};.....<span.clas |
| 43800 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 78 20 3d | s="tok-kw">try</span>.expect(x.= |
| 43820 | 3d 20 79 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 | =.y);.}</code></pre></figure><fi |
| 43840 | 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 |
| 43860 | 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> |
| 43880 | 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 70 61 63 6b 65 64 5f 73 74 72 75 | $.<kbd>zig.test.test_packed_stru |
| 438a0 | 63 74 5f 65 71 75 61 6c 69 74 79 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 70 | ct_equality.zig</kbd>.1/1.test_p |
| 438c0 | 61 63 6b 65 64 5f 73 74 72 75 63 74 5f 65 71 75 61 6c 69 74 79 2e 74 65 73 74 2e 70 61 63 6b 65 | acked_struct_equality.test.packe |
| 438e0 | 64 20 73 74 72 75 63 74 20 65 71 75 61 6c 69 74 79 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 | d.struct.equality...OK.All.1.tes |
| 43900 | 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 |
| 43920 | 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 46 69 65 6c 64 20 61 63 63 65 73 73 20 | >........<p>.......Field.access. |
| 43940 | 61 6e 64 20 61 73 73 69 67 6e 6d 65 6e 74 20 63 61 6e 20 62 65 20 75 6e 64 65 72 73 74 6f 6f 64 | and.assignment.can.be.understood |
| 43960 | 20 61 73 20 73 68 6f 72 74 68 61 6e 64 20 66 6f 72 20 62 69 74 73 68 69 66 74 73 0a 20 20 20 20 | .as.shorthand.for.bitshifts..... |
| 43980 | 20 20 6f 6e 20 74 68 65 20 62 61 63 6b 69 6e 67 20 69 6e 74 65 67 65 72 2e 20 54 68 65 73 65 20 | ..on.the.backing.integer..These. |
| 439a0 | 6f 70 65 72 61 74 69 6f 6e 73 20 61 72 65 20 6e 6f 74 20 3c 61 20 68 72 65 66 3d 22 23 41 74 6f | operations.are.not.<a.href="#Ato |
| 439c0 | 6d 69 63 73 22 3e 61 74 6f 6d 69 63 3c 2f 61 3e 2c 0a 20 20 20 20 20 20 73 6f 20 62 65 77 61 72 | mics">atomic</a>,.......so.bewar |
| 439e0 | 65 20 75 73 69 6e 67 20 66 69 65 6c 64 20 61 63 63 65 73 73 20 73 79 6e 74 61 78 20 77 68 65 6e | e.using.field.access.syntax.when |
| 43a00 | 20 63 6f 6d 62 69 6e 65 64 20 77 69 74 68 20 6d 65 6d 6f 72 79 2d 6d 61 70 70 65 64 0a 20 20 20 | .combined.with.memory-mapped.... |
| 43a20 | 20 20 20 69 6e 70 75 74 2d 6f 75 74 70 75 74 20 28 4d 4d 49 4f 29 2e 20 49 6e 73 74 65 61 64 20 | ...input-output.(MMIO)..Instead. |
| 43a40 | 6f 66 20 66 69 65 6c 64 20 61 63 63 65 73 73 20 6f 6e 20 3c 61 20 68 72 65 66 3d 22 23 76 6f 6c | of.field.access.on.<a.href="#vol |
| 43a60 | 61 74 69 6c 65 22 3e 76 6f 6c 61 74 69 6c 65 3c 2f 61 3e 20 3c 61 20 68 72 65 66 3d 22 23 50 6f | atile">volatile</a>.<a.href="#Po |
| 43a80 | 69 6e 74 65 72 73 22 3e 50 6f 69 6e 74 65 72 73 3c 2f 61 3e 2c 0a 20 20 20 20 20 20 63 6f 6e 73 | inters">Pointers</a>,.......cons |
| 43aa0 | 74 72 75 63 74 20 61 20 66 75 6c 6c 79 2d 66 6f 72 6d 65 64 20 6e 65 77 20 76 61 6c 75 65 20 66 | truct.a.fully-formed.new.value.f |
| 43ac0 | 69 72 73 74 2c 20 74 68 65 6e 20 77 72 69 74 65 20 74 68 61 74 20 76 61 6c 75 65 20 74 6f 20 74 | irst,.then.write.that.value.to.t |
| 43ae0 | 68 65 20 76 6f 6c 61 74 69 6c 65 20 70 6f 69 6e 74 65 72 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a | he.volatile.pointer........</p>. |
| 43b00 | 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= |
| 43b20 | 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 61 63 | "zig-cap"><cite.class="file">pac |
| 43b40 | 6b 65 64 5f 73 74 72 75 63 74 5f 6d 6d 69 6f 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 | ked_struct_mmio.zig</cite></figc |
| 43b60 | 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 |
| 43b80 | 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 |
| 43ba0 | 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 47 70 69 6f 52 65 67 69 73 74 65 72 | ok-kw">const</span>.GpioRegister |
| 43bc0 | 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</ |
| 43be0 | 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 |
| 43c00 | 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | t</span>(<span.class="tok-type"> |
| 43c20 | 75 38 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 47 50 49 4f 30 3a 20 3c 73 70 61 6e 20 63 6c | u8</span>).{.....GPIO0:.<span.cl |
| 43c40 | 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>,..... |
| 43c60 | 47 50 49 4f 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 62 6f | GPIO1:.<span.class="tok-type">bo |
| 43c80 | 6f 6c 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 47 50 49 4f 32 3a 20 3c 73 70 61 6e 20 63 6c 61 73 | ol</span>,.....GPIO2:.<span.clas |
| 43ca0 | 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 47 50 | s="tok-type">bool</span>,.....GP |
| 43cc0 | 49 4f 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 62 6f 6f 6c | IO3:.<span.class="tok-type">bool |
| 43ce0 | 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 72 65 73 65 72 76 65 64 3a 20 3c 73 70 61 6e 20 63 6c 61 | </span>,.....reserved:.<span.cla |
| 43d00 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 34 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 | ss="tok-type">u4</span>.=.<span. |
| 43d20 | 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 7d 3b 0a | class="tok-number">0</span>,.};. |
| 43d40 | 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 |
| 43d60 | 6e 3e 20 67 70 69 6f 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 | n>.gpio:.*<span.class="tok-kw">v |
| 43d80 | 6f 6c 61 74 69 6c 65 3c 2f 73 70 61 6e 3e 20 47 70 69 6f 52 65 67 69 73 74 65 72 20 3d 20 3c 73 | olatile</span>.GpioRegister.=.<s |
| 43da0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 70 74 72 46 72 6f 6d | pan.class="tok-builtin">@ptrFrom |
| 43dc0 | 49 6e 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | Int</span>(<span.class="tok-numb |
| 43de0 | 65 72 22 3e 30 78 30 31 32 33 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | er">0x0123</span>);..<span.class |
| 43e00 | 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 |
| 43e20 | 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= |
| 43e40 | 22 74 6f 6b 2d 66 6e 22 3e 77 72 69 74 65 54 6f 47 70 69 6f 3c 2f 73 70 61 6e 3e 28 6e 65 77 5f | "tok-fn">writeToGpio</span>(new_ |
| 43e60 | 73 74 61 74 65 73 3a 20 47 70 69 6f 52 65 67 69 73 74 65 72 29 20 3c 73 70 61 6e 20 63 6c 61 73 | states:.GpioRegister).<span.clas |
| 43e80 | 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>.{.....< |
| 43ea0 | 73 70 61 6e 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 78 61 6d | span.class="tok-comment">//.Exam |
| 43ec0 | 70 6c 65 20 6f 66 20 77 68 61 74 20 6e 6f 74 20 74 6f 20 64 6f 3a 3c 2f 73 70 61 6e 3e 0a 20 20 | ple.of.what.not.to.do:</span>... |
| 43ee0 | 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 42 | ..<span.class="tok-comment">//.B |
| 43f00 | 41 44 21 20 67 70 69 6f 2e 47 50 49 4f 30 20 3d 20 74 72 75 65 3b 20 42 41 44 21 3c 2f 73 70 61 | AD!.gpio.GPIO0.=.true;.BAD!</spa |
| 43f20 | 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 63 6f 6d 6d 65 6e 74 | n>......<span.class="tok-comment |
| 43f40 | 22 3e 2f 2f 20 49 6e 73 74 65 61 64 2c 20 64 6f 20 74 68 69 73 3a 3c 2f 73 70 61 6e 3e 0a 20 20 | ">//.Instead,.do.this:</span>... |
| 43f60 | 20 20 67 70 69 6f 2e 2a 20 3d 20 6e 65 77 5f 73 74 61 74 65 73 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c | ..gpio.*.=.new_states;.}</code>< |
| 43f80 | 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 | /pre></figure>...............<h3 |
| 43fa0 | 20 69 64 3d 22 53 74 72 75 63 74 2d 4e 61 6d 69 6e 67 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f | .id="Struct-Naming"><a.href="#to |
| 43fc0 | 63 2d 53 74 72 75 63 74 2d 4e 61 6d 69 6e 67 22 3e 53 74 72 75 63 74 20 4e 61 6d 69 6e 67 3c 2f | c-Struct-Naming">Struct.Naming</ |
| 43fe0 | 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 53 74 72 75 63 74 2d | a>.<a.class="hdr".href="#Struct- |
| 44000 | 4e 61 6d 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 53 69 | Naming">..</a></h3>........<p>Si |
| 44020 | 6e 63 65 20 61 6c 6c 20 73 74 72 75 63 74 73 20 61 72 65 20 61 6e 6f 6e 79 6d 6f 75 73 2c 20 5a | nce.all.structs.are.anonymous,.Z |
| 44040 | 69 67 20 69 6e 66 65 72 73 20 74 68 65 20 74 79 70 65 20 6e 61 6d 65 20 62 61 73 65 64 20 6f 6e | ig.infers.the.type.name.based.on |
| 44060 | 20 61 20 66 65 77 20 72 75 6c 65 73 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 | .a.few.rules.</p>.......<ul>.... |
| 44080 | 20 20 20 20 20 20 20 3c 6c 69 3e 49 66 20 74 68 65 20 73 74 72 75 63 74 20 69 73 20 69 6e 20 74 | .......<li>If.the.struct.is.in.t |
| 440a0 | 68 65 20 69 6e 69 74 69 61 6c 69 7a 61 74 69 6f 6e 20 65 78 70 72 65 73 73 69 6f 6e 20 6f 66 20 | he.initialization.expression.of. |
| 440c0 | 61 20 76 61 72 69 61 62 6c 65 2c 20 69 74 20 67 65 74 73 20 6e 61 6d 65 64 20 61 66 74 65 72 0a | a.variable,.it.gets.named.after. |
| 440e0 | 20 20 20 20 20 20 20 20 20 20 74 68 61 74 20 76 61 72 69 61 62 6c 65 2e 3c 2f 6c 69 3e 0a 20 20 | ..........that.variable.</li>... |
| 44100 | 20 20 20 20 20 20 20 20 3c 6c 69 3e 49 66 20 74 68 65 20 73 74 72 75 63 74 20 69 73 20 69 6e 20 | ........<li>If.the.struct.is.in. |
| 44120 | 74 68 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 | the.<code><span.class="tok-kw">r |
| 44140 | 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 65 78 70 72 65 73 73 69 6f 6e 2c 20 | eturn</span></code>.expression,. |
| 44160 | 69 74 20 67 65 74 73 20 6e 61 6d 65 64 20 61 66 74 65 72 0a 20 20 20 20 20 20 20 20 20 20 74 68 | it.gets.named.after...........th |
| 44180 | 65 20 66 75 6e 63 74 69 6f 6e 20 69 74 20 69 73 20 72 65 74 75 72 6e 69 6e 67 20 66 72 6f 6d 2c | e.function.it.is.returning.from, |
| 441a0 | 20 77 69 74 68 20 74 68 65 20 70 61 72 61 6d 65 74 65 72 20 76 61 6c 75 65 73 20 73 65 72 69 61 | .with.the.parameter.values.seria |
| 441c0 | 6c 69 7a 65 64 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 4f 74 68 65 72 77 | lized.</li>...........<li>Otherw |
| 441e0 | 69 73 65 2c 20 74 68 65 20 73 74 72 75 63 74 20 67 65 74 73 20 61 20 6e 61 6d 65 20 73 75 63 68 | ise,.the.struct.gets.a.name.such |
| 44200 | 20 61 73 20 3c 63 6f 64 65 3e 28 66 69 6c 65 6e 61 6d 65 2e 66 75 6e 63 6e 61 6d 65 5f 5f 73 74 | .as.<code>(filename.funcname__st |
| 44220 | 72 75 63 74 5f 49 44 29 3c 2f 63 6f 64 65 3e 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 | ruct_ID)</code>.</li>........... |
| 44240 | 3c 6c 69 3e 49 66 20 74 68 65 20 73 74 72 75 63 74 20 69 73 20 64 65 63 6c 61 72 65 64 20 69 6e | <li>If.the.struct.is.declared.in |
| 44260 | 73 69 64 65 20 61 6e 6f 74 68 65 72 20 73 74 72 75 63 74 2c 20 69 74 20 67 65 74 73 20 6e 61 6d | side.another.struct,.it.gets.nam |
| 44280 | 65 64 20 61 66 74 65 72 20 62 6f 74 68 20 74 68 65 20 70 61 72 65 6e 74 0a 20 20 20 20 20 20 20 | ed.after.both.the.parent........ |
| 442a0 | 20 20 20 73 74 72 75 63 74 20 61 6e 64 20 74 68 65 20 6e 61 6d 65 20 69 6e 66 65 72 72 65 64 20 | ...struct.and.the.name.inferred. |
| 442c0 | 62 79 20 74 68 65 20 70 72 65 76 69 6f 75 73 20 72 75 6c 65 73 2c 20 73 65 70 61 72 61 74 65 64 | by.the.previous.rules,.separated |
| 442e0 | 20 62 79 20 61 20 64 6f 74 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 | .by.a.dot.</li>.......</ul>..... |
| 44300 | 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 |
| 44320 | 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 75 63 74 5f | -cap"><cite.class="file">struct_ |
| 44340 | 6e 61 6d 65 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 | name.zig</cite></figcaption><pre |
| 44360 | 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 |
| 44380 | 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- |
| 443a0 | 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 |
| 443c0 | 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 |
| 443e0 | 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 |
| 44400 | 3c 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< |
| 44420 | 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 |
| 44440 | 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" |
| 44460 | 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=" |
| 44480 | 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 6e | tok-kw">const</span>.Foo.=.<span |
| 444a0 | 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 7d | .class="tok-kw">struct</span>.{} |
| 444c0 | 3b 0a 20 20 20 20 73 74 64 2e 64 65 62 75 67 2e 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 6c 61 73 | ;.....std.debug.print(<span.clas |
| 444e0 | 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 76 61 72 69 61 62 6c 65 3a 20 7b 73 7d 5c | s="tok-str">"variable:.{s}\ |
| 44500 | 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 74 | n"</span>,..{<span.class="t |
| 44520 | 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 46 6f 6f | ok-builtin">@typeName</span>(Foo |
| 44540 | 29 7d 29 3b 0a 20 20 20 20 73 74 64 2e 64 65 62 75 67 2e 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 | )});.....std.debug.print(<span.c |
| 44560 | 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 61 6e 6f 6e 79 6d 6f 75 73 3a 20 | lass="tok-str">"anonymous:. |
| 44580 | 7b 73 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 3c 73 70 61 6e 20 63 6c 61 73 | {s}\n"</span>,..{<span.clas |
| 445a0 | 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 74 79 70 65 4e 61 6d 65 3c 2f 73 70 61 6e 3e | s="tok-builtin">@typeName</span> |
| 445c0 | 28 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 |
| 445e0 | 61 6e 3e 20 7b 7d 29 7d 29 3b 0a 20 20 20 20 73 74 64 2e 64 65 62 75 67 2e 70 72 69 6e 74 28 3c | an>.{})});.....std.debug.print(< |
| 44600 | 73 70 61 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 63 74 | span.class="tok-str">"funct |
| 44620 | 69 6f 6e 3a 20 7b 73 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 3c 73 70 61 6e | ion:.{s}\n"</span>,..{<span |
| 44640 | 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 2f | .class="tok-builtin">@typeName</ |
| 44660 | 73 70 61 6e 3e 28 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 | span>(List(<span.class="tok-type |
| 44680 | 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 29 7d 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | ">i32</span>))});.}..<span.class |
| 446a0 | 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= |
| 446c0 | 22 74 6f 6b 2d 66 6e 22 3e 4c 69 73 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 | "tok-fn">List</span>(<span.class |
| 446e0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 54 3a 20 3c 73 70 | ="tok-kw">comptime</span>.T:.<sp |
| 44700 | 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 29 | an.class="tok-type">type</span>) |
| 44720 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 | .<span.class="tok-type">type</sp |
| 44740 | 61 6e 3e 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 |
| 44760 | 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 |
| 44780 | 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 54 2c 0a | ">struct</span>.{.........x:.T,. |
| 447a0 | 20 20 20 20 7d 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 | ....};.}</code></pre></figure><f |
| 447c0 | 69 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 |
| 447e0 | 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 |
| 44800 | 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 73 74 72 75 63 74 5f 6e 61 6d | >$.<kbd>zig.build-exe.struct_nam |
| 44820 | 65 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 24 20 3c 6b 62 64 3e 2e 2f 73 74 72 75 63 74 5f 6e 61 6d 65 | e.zig</kbd>.$.<kbd>./struct_name |
| 44840 | 3c 2f 6b 62 64 3e 0a 76 61 72 69 61 62 6c 65 3a 20 73 74 72 75 63 74 5f 6e 61 6d 65 2e 6d 61 69 | </kbd>.variable:.struct_name.mai |
| 44860 | 6e 2e 46 6f 6f 0a 61 6e 6f 6e 79 6d 6f 75 73 3a 20 73 74 72 75 63 74 5f 6e 61 6d 65 2e 6d 61 69 | n.Foo.anonymous:.struct_name.mai |
| 44880 | 6e 5f 5f 73 74 72 75 63 74 5f 32 32 36 39 36 0a 66 75 6e 63 74 69 6f 6e 3a 20 73 74 72 75 63 74 | n__struct_22696.function:.struct |
| 448a0 | 5f 6e 61 6d 65 2e 4c 69 73 74 28 69 33 32 29 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 | _name.List(i32).</samp></pre></f |
| 448c0 | 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 41 6e | igure>................<h3.id="An |
| 448e0 | 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 3c 61 20 68 72 65 66 | onymous-Struct-Literals"><a.href |
| 44900 | 3d 22 23 74 6f 63 2d 41 6e 6f 6e 79 6d 6f 75 73 2d 53 74 72 75 63 74 2d 4c 69 74 65 72 61 6c 73 | ="#toc-Anonymous-Struct-Literals |
| 44920 | 22 3e 41 6e 6f 6e 79 6d 6f 75 73 20 53 74 72 75 63 74 20 4c 69 74 65 72 61 6c 73 3c 2f 61 3e 20 | ">Anonymous.Struct.Literals</a>. |
| 44940 | 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 6e 79 6d 6f 75 73 2d | <a.class="hdr".href="#Anonymous- |
| 44960 | 53 74 72 75 63 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 | Struct-Literals">..</a></h3>.... |
| 44980 | 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 6f 6d 69 74 74 69 6e | ....<p>.......Zig.allows.omittin |
| 449a0 | 67 20 74 68 65 20 73 74 72 75 63 74 20 74 79 70 65 20 6f 66 20 61 20 6c 69 74 65 72 61 6c 2e 20 | g.the.struct.type.of.a.literal.. |
| 449c0 | 57 68 65 6e 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 54 79 70 | When.the.result.is.<a.href="#Typ |
| 449e0 | 65 2d 43 6f 65 72 63 69 6f 6e 22 3e 63 6f 65 72 63 65 64 3c 2f 61 3e 2c 0a 20 20 20 20 20 20 74 | e-Coercion">coerced</a>,.......t |
| 44a00 | 68 65 20 73 74 72 75 63 74 20 6c 69 74 65 72 61 6c 20 77 69 6c 6c 20 64 69 72 65 63 74 6c 79 20 | he.struct.literal.will.directly. |
| 44a20 | 69 6e 73 74 61 6e 74 69 61 74 65 20 74 68 65 20 3c 61 20 68 72 65 66 3d 22 23 52 65 73 75 6c 74 | instantiate.the.<a.href="#Result |
| 44a40 | 2d 4c 6f 63 61 74 69 6f 6e 2d 53 65 6d 61 6e 74 69 63 73 22 3e 72 65 73 75 6c 74 20 6c 6f 63 61 | -Location-Semantics">result.loca |
| 44a60 | 74 69 6f 6e 3c 2f 61 3e 2c 0a 20 20 20 20 20 20 77 69 74 68 20 6e 6f 20 63 6f 70 79 3a 0a 20 20 | tion</a>,.......with.no.copy:... |
| 44a80 | 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 |
| 44aa0 | 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=" |
| 44ac0 | 66 69 6c 65 22 3e 74 65 73 74 5f 73 74 72 75 63 74 5f 72 65 73 75 6c 74 2e 7a 69 67 3c 2f 63 69 | file">test_struct_result.zig</ci |
| 44ae0 | 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 |
| 44b00 | 20 63 6c 61 73 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 |
| 44b20 | 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 |
| 44b40 | 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 |
| 44b60 | 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 |
| 44b80 | 20 63 6c 61 73 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 |
| 44ba0 | 65 63 74 20 3d 20 73 74 64 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 0a 3c 73 70 61 6e | ect.=.std.testing.expect;..<span |
| 44bc0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 50 6f 69 | .class="tok-kw">const</span>.Poi |
| 44be0 | 6e 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 74 72 75 63 74 | nt.=.<span.class="tok-kw">struct |
| 44c00 | 3c 2f 73 70 61 6e 3e 20 7b 20 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | </span>.{.x:.<span.class="tok-ty |
| 44c20 | 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 2c 20 79 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | pe">i32</span>,.y:.<span.class=" |
| 44c40 | 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 0a 3c 73 70 61 6e 20 63 | tok-type">i32</span>.};..<span.c |
| 44c60 | 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. |
| 44c80 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 61 6e 6f 6e 79 6d 6f 75 73 20 | class="tok-str">"anonymous. |
| 44ca0 | 73 74 72 75 63 74 20 6c 69 74 65 72 61 6c 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 | struct.literal"</span>.{... |
| 44cc0 | 20 20 3c 73 70 61 6e 20 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 |
| 44ce0 | 61 6e 3e 20 70 74 3a 20 50 6f 69 6e 74 20 3d 20 2e 7b 0a 20 20 20 20 20 20 20 20 2e 78 20 3d 20 | an>.pt:.Point.=..{..........x.=. |
| 44d00 | 3c 73 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 | <span.class="tok-number">13</spa |
| 44d20 | 6e 3e 2c 0a 20 20 20 20 20 20 20 20 2e 79 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | n>,..........y.=.<span.class="to |
| 44d40 | 6b 2d 6e 75 6d 62 65 72 22 3e 36 37 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 7d 3b 0a 20 20 20 20 | k-number">67</span>,.....};..... |
| 44d60 | 3c 73 70 61 6e 20 63 6c 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>. |
| 44d80 | 65 78 70 65 63 74 28 70 74 2e 78 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | expect(pt.x.==.<span.class="tok- |
| 44da0 | 6e 75 6d 62 65 72 22 3e 31 33 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | number">13</span>);.....<span.cl |
| 44dc0 | 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 |
| 44de0 | 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 22 3e | t.y.==.<span.class="tok-number"> |
| 44e00 | 36 37 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 | 67</span>);.}</code></pre></figu |
| 44e20 | 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 |
| 44e40 | 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> |
| 44e60 | 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 75 63 | <samp>$.<kbd>zig.test.test_struc |
| 44e80 | 74 5f 72 65 73 75 6c 74 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 73 74 72 75 | t_result.zig</kbd>.1/1.test_stru |
| 44ea0 | 63 74 5f 72 65 73 75 6c 74 2e 74 65 73 74 2e 61 6e 6f 6e 79 6d 6f 75 73 20 73 74 72 75 63 74 20 | ct_result.test.anonymous.struct. |
| 44ec0 | 6c 69 74 65 72 61 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 2e | literal...OK.All.1.tests.passed. |
| 44ee0 | 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>........< |
| 44f00 | 70 3e 0a 20 20 20 20 20 20 54 68 65 20 73 74 72 75 63 74 20 74 79 70 65 20 63 61 6e 20 62 65 20 | p>.......The.struct.type.can.be. |
| 44f20 | 69 6e 66 65 72 72 65 64 2e 20 48 65 72 65 20 74 68 65 20 3c 61 20 68 72 65 66 3d 22 23 52 65 73 | inferred..Here.the.<a.href="#Res |
| 44f40 | 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 20 6c | ult-Location-Semantics">result.l |
| 44f60 | 6f 63 61 74 69 6f 6e 3c 2f 61 3e 0a 20 20 20 20 20 20 64 6f 65 73 20 6e 6f 74 20 69 6e 63 6c 75 | ocation</a>.......does.not.inclu |
| 44f80 | 64 65 20 61 20 74 79 70 65 2c 20 61 6e 64 20 73 6f 20 5a 69 67 20 69 6e 66 65 72 73 20 74 68 65 | de.a.type,.and.so.Zig.infers.the |
| 44fa0 | 20 74 79 70 65 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e | .type:.......</p>.......<figure> |
| 44fc0 | 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 |
| 44fe0 | 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 61 6e 6f 6e 79 6d 6f 75 73 5f 73 74 | e.class="file">test_anonymous_st |
| 45000 | 72 75 63 74 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 | ruct.zig</cite></figcaption><pre |
| 45020 | 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 |
| 45040 | 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- |
| 45060 | 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 |
| 45080 | 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 |
| 450a0 | 70 61 6e 3e 29 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 | pan>);.<span.class="tok-kw">cons |
| 450c0 | 74 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 73 74 64 2e 74 65 73 74 69 6e 67 2e 65 78 | t</span>.expect.=.std.testing.ex |
| 450e0 | 70 65 63 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 | pect;..<span.class="tok-kw">test |
| 45100 | 3c 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 |
| 45120 | 75 6f 74 3b 66 75 6c 6c 79 20 61 6e 6f 6e 79 6d 6f 75 73 20 73 74 72 75 63 74 26 71 75 6f 74 3b | uot;fully.anonymous.struct" |
| 45140 | 3c 2f 73 70 61 6e 3e 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 |
| 45160 | 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 63 68 65 63 6b 28 2e 7b 0a 20 20 20 20 20 20 20 20 2e | w">try</span>.check(.{.......... |
| 45180 | 69 6e 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e | int.=.<span.class="tok-builtin"> |
| 451a0 | 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 |
| 451c0 | 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | ">u32</span>,.<span.class="tok-n |
| 451e0 | 75 6d 62 65 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 29 2c 0a 20 20 20 20 20 20 20 20 2e 66 6c | umber">1234</span>),..........fl |
| 45200 | 6f 61 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 | oat.=.<span.class="tok-builtin"> |
| 45220 | 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 |
| 45240 | 22 3e 66 36 34 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | ">f64</span>,.<span.class="tok-n |
| 45260 | 75 6d 62 65 72 22 3e 31 32 2e 33 34 3c 2f 73 70 61 6e 3e 29 2c 0a 20 20 20 20 20 20 20 20 2e 62 | umber">12.34</span>),..........b |
| 45280 | 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 2f | .=.<span.class="tok-null">true</ |
| 452a0 | 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 2e 73 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | span>,..........s.=.<span.class= |
| 452c0 | 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 68 69 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c | "tok-str">"hi"</span>, |
| 452e0 | 0a 20 20 20 20 7d 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | .....});.}..<span.class="tok-kw" |
| 45300 | 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"> |
| 45320 | 63 68 65 63 6b 3c 2f 73 70 61 6e 3e 28 61 72 67 73 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | check</span>(args:.<span.class=" |
| 45340 | 74 6f 6b 2d 6b 77 22 3e 61 6e 79 74 79 70 65 3c 2f 73 70 61 6e 3e 29 20 21 3c 73 70 61 6e 20 63 | tok-kw">anytype</span>).!<span.c |
| 45360 | 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>.{... |
| 45380 | 20 20 3c 73 70 61 6e 20 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 |
| 453a0 | 3e 20 65 78 70 65 63 74 28 61 72 67 73 2e 69 6e 74 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | >.expect(args.int.==.<span.class |
| 453c0 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 | ="tok-number">1234</span>);..... |
| 453e0 | 3c 73 70 61 6e 20 63 6c 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>. |
| 45400 | 65 78 70 65 63 74 28 61 72 67 73 2e 66 6c 6f 61 74 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | expect(args.float.==.<span.class |
| 45420 | 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 3b 0a 20 20 20 | ="tok-number">12.34</span>);.... |
| 45440 | 20 3c 73 70 61 6e 20 63 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> |
| 45460 | 20 65 78 70 65 63 74 28 61 72 67 73 2e 62 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | .expect(args.b);.....<span.class |
| 45480 | 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 61 72 67 73 | ="tok-kw">try</span>.expect(args |
| 454a0 | 2e 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 | .s[<span.class="tok-number">0</s |
| 454c0 | 70 61 6e 3e 5d 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 | pan>].==.<span.class="tok-str">' |
| 454e0 | 68 27 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | h'</span>);.....<span.class="tok |
| 45500 | 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 61 72 67 73 2e 73 5b 3c 73 | -kw">try</span>.expect(args.s[<s |
| 45520 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 5d | pan.class="tok-number">1</span>] |
| 45540 | 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 69 27 3c 2f 73 | .==.<span.class="tok-str">'i'</s |
| 45560 | 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 |
| 45580 | 69 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 |
| 455a0 | 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 |
| 455c0 | 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 6d 6f 75 73 5f | >$.<kbd>zig.test.test_anonymous_ |
| 455e0 | 73 74 72 75 63 74 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 61 6e 6f 6e 79 6d | struct.zig</kbd>.1/1.test_anonym |
| 45600 | 6f 75 73 5f 73 74 72 75 63 74 2e 74 65 73 74 2e 66 75 6c 6c 79 20 61 6e 6f 6e 79 6d 6f 75 73 20 | ous_struct.test.fully.anonymous. |
| 45620 | 73 74 72 75 63 74 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a | struct...OK.All.1.tests.passed.. |
| 45640 | 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>.......... |
| 45660 | 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 54 75 70 6c 65 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 | ......<h3.id="Tuples"><a.href="# |
| 45680 | 74 6f 63 2d 54 75 70 6c 65 73 22 3e 54 75 70 6c 65 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d | toc-Tuples">Tuples</a>.<a.class= |
| 456a0 | 22 68 64 72 22 20 68 72 65 66 3d 22 23 54 75 70 6c 65 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e | "hdr".href="#Tuples">..</a></h3> |
| 456c0 | 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 41 6e 6f 6e 79 6d 6f 75 73 20 73 74 72 75 | ........<p>.......Anonymous.stru |
| 456e0 | 63 74 73 20 63 61 6e 20 62 65 20 63 72 65 61 74 65 64 20 77 69 74 68 6f 75 74 20 73 70 65 63 69 | cts.can.be.created.without.speci |
| 45700 | 66 79 69 6e 67 20 66 69 65 6c 64 20 6e 61 6d 65 73 2c 20 61 6e 64 20 61 72 65 20 72 65 66 65 72 | fying.field.names,.and.are.refer |
| 45720 | 72 65 64 20 74 6f 20 61 73 20 22 74 75 70 6c 65 73 22 2e 20 41 6e 20 65 6d 70 74 79 20 74 75 70 | red.to.as."tuples"..An.empty.tup |
| 45740 | 6c 65 20 6c 6f 6f 6b 73 20 6c 69 6b 65 20 3c 63 6f 64 65 3e 2e 7b 7d 3c 2f 63 6f 64 65 3e 20 61 | le.looks.like.<code>.{}</code>.a |
| 45760 | 6e 64 20 63 61 6e 20 62 65 20 73 65 65 6e 20 69 6e 20 6f 6e 65 20 6f 66 20 74 68 65 20 3c 61 20 | nd.can.be.seen.in.one.of.the.<a. |
| 45780 | 68 72 65 66 3d 22 23 48 65 6c 6c 6f 2d 57 6f 72 6c 64 22 3e 48 65 6c 6c 6f 20 57 6f 72 6c 64 20 | href="#Hello-World">Hello.World. |
| 457a0 | 65 78 61 6d 70 6c 65 73 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c | examples</a>........</p>.......< |
| 457c0 | 70 3e 0a 20 20 20 20 20 20 54 68 65 20 66 69 65 6c 64 73 20 61 72 65 20 69 6d 70 6c 69 63 69 74 | p>.......The.fields.are.implicit |
| 457e0 | 6c 79 20 6e 61 6d 65 64 20 75 73 69 6e 67 20 6e 75 6d 62 65 72 73 20 73 74 61 72 74 69 6e 67 20 | ly.named.using.numbers.starting. |
| 45800 | 66 72 6f 6d 20 30 2e 20 42 65 63 61 75 73 65 20 74 68 65 69 72 20 6e 61 6d 65 73 20 61 72 65 20 | from.0..Because.their.names.are. |
| 45820 | 69 6e 74 65 67 65 72 73 2c 0a 20 20 20 20 20 20 74 68 65 79 20 63 61 6e 6e 6f 74 20 62 65 20 61 | integers,.......they.cannot.be.a |
| 45840 | 63 63 65 73 73 65 64 20 77 69 74 68 20 3c 63 6f 64 65 3e 2e 3c 2f 63 6f 64 65 3e 20 73 79 6e 74 | ccessed.with.<code>.</code>.synt |
| 45860 | 61 78 20 77 69 74 68 6f 75 74 20 61 6c 73 6f 20 77 72 61 70 70 69 6e 67 20 74 68 65 6d 20 69 6e | ax.without.also.wrapping.them.in |
| 45880 | 0a 20 20 20 20 20 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 | .......<code>@""</code |
| 458a0 | 3e 2e 20 4e 61 6d 65 73 20 69 6e 73 69 64 65 20 3c 63 6f 64 65 3e 40 26 71 75 6f 74 3b 26 71 75 | >..Names.inside.<code>@"&qu |
| 458c0 | 6f 74 3b 3c 2f 63 6f 64 65 3e 20 61 72 65 20 61 6c 77 61 79 73 20 72 65 63 6f 67 6e 69 73 65 64 | ot;</code>.are.always.recognised |
| 458e0 | 20 61 73 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 49 64 65 6e 74 69 66 69 65 72 73 22 | .as.......<a.href="#Identifiers" |
| 45900 | 3e 69 64 65 6e 74 69 66 69 65 72 73 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 | >identifiers</a>........</p>.... |
| 45920 | 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 4c 69 6b 65 20 61 72 72 61 79 73 2c 20 74 75 70 6c 65 73 | ...<p>.......Like.arrays,.tuples |
| 45940 | 20 68 61 76 65 20 61 20 2e 6c 65 6e 20 66 69 65 6c 64 2c 20 63 61 6e 20 62 65 20 69 6e 64 65 78 | .have.a..len.field,.can.be.index |
| 45960 | 65 64 20 28 70 72 6f 76 69 64 65 64 20 74 68 65 20 69 6e 64 65 78 20 69 73 20 63 6f 6d 70 74 69 | ed.(provided.the.index.is.compti |
| 45980 | 6d 65 2d 6b 6e 6f 77 6e 29 0a 20 20 20 20 20 20 61 6e 64 20 77 6f 72 6b 20 77 69 74 68 20 74 68 | me-known).......and.work.with.th |
| 459a0 | 65 20 2b 2b 20 61 6e 64 20 2a 2a 20 6f 70 65 72 61 74 6f 72 73 2e 20 54 68 65 79 20 63 61 6e 20 | e.++.and.**.operators..They.can. |
| 459c0 | 61 6c 73 6f 20 62 65 20 69 74 65 72 61 74 65 64 20 6f 76 65 72 20 77 69 74 68 20 3c 61 20 68 72 | also.be.iterated.over.with.<a.hr |
| 459e0 | 65 66 3d 22 23 69 6e 6c 69 6e 65 2d 66 6f 72 22 3e 69 6e 6c 69 6e 65 20 66 6f 72 3c 2f 61 3e 2e | ef="#inline-for">inline.for</a>. |
| 45a00 | 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 |
| 45a20 | 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 |
| 45a40 | 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 74 75 70 6c 65 73 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c | s="file">test_tuples.zig</cite>< |
| 45a60 | 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 |
| 45a80 | 73 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.=.< |
| 45aa0 | 73 70 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 |
| 45ac0 | 3c 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 |
| 45ae0 | 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 |
| 45b00 | 73 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. |
| 45b20 | 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 |
| 45b40 | 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 |
| 45b60 | 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 74 75 70 6c 65 26 71 75 6f 74 3b 3c | ass="tok-str">"tuple"< |
| 45b80 | 2f 73 70 61 6e 3e 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 |
| 45ba0 | 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 76 61 6c 75 65 73 20 3d 20 2e 7b 0a 20 20 20 20 20 | ">const</span>.values.=..{...... |
| 45bc0 | 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 61 73 | ...<span.class="tok-builtin">@as |
| 45be0 | 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 | </span>(<span.class="tok-type">u |
| 45c00 | 33 32 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | 32</span>,.<span.class="tok-numb |
| 45c20 | 65 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 29 2c 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 | er">1234</span>),.........<span. |
| 45c40 | 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>(< |
| 45c60 | 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> |
| 45c80 | 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 2e 33 34 | ,.<span.class="tok-number">12.34 |
| 45ca0 | 3c 2f 73 70 61 6e 3e 29 2c 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | </span>),.........<span.class="t |
| 45cc0 | 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 3c 73 | ok-null">true</span>,.........<s |
| 45ce0 | 70 61 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 |
| 45d00 | 74 3b 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 7d 20 2b 2b 20 2e 7b 3c 73 70 61 6e 20 63 6c 61 73 | t;</span>,.....}.++..{<span.clas |
| 45d20 | 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 7d 20 2a 2a 20 3c 73 | s="tok-null">false</span>}.**.<s |
| 45d40 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 3b | pan.class="tok-number">2</span>; |
| 45d60 | 0a 20 20 20 20 3c 73 70 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 |
| 45d80 | 70 61 6e 3e 20 65 78 70 65 63 74 28 76 61 6c 75 65 73 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | pan>.expect(values[<span.class=" |
| 45da0 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 5d 20 3d 3d 20 3c 73 70 61 6e 20 63 | tok-number">0</span>].==.<span.c |
| 45dc0 | 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>);. |
| 45de0 | 20 20 20 20 3c 73 70 61 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 |
| 45e00 | 61 6e 3e 20 65 78 70 65 63 74 28 76 61 6c 75 65 73 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | an>.expect(values[<span.class="t |
| 45e20 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 5d 20 3d 3d 20 3c 73 70 61 6e 20 63 6c | ok-number">4</span>].==.<span.cl |
| 45e40 | 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 20 20 | ass="tok-null">false</span>);... |
| 45e60 | 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 |
| 45e80 | 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 73 | pan>.<span.class="tok-kw">for</s |
| 45ea0 | 70 61 6e 3e 20 28 76 61 6c 75 65 73 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | pan>.(values,.<span.class="tok-n |
| 45ec0 | 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 2e 2e 29 20 7c 76 2c 20 69 7c 20 7b 0a 20 20 20 20 | umber">0</span>..).|v,.i|.{..... |
| 45ee0 | 20 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 |
| 45f00 | 6e 3e 20 28 69 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 | n>.(i.!=.<span.class="tok-number |
| 45f20 | 22 3e 32 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | ">2</span>).<span.class="tok-kw" |
| 45f40 | 3e 63 6f 6e 74 69 6e 75 65 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 | >continue</span>;.........<span. |
| 45f60 | 63 6c 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 |
| 45f80 | 28 76 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 | (v);.....}.....<span.class="tok- |
| 45fa0 | 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 76 61 6c 75 65 73 2e 6c 65 6e | kw">try</span>.expect(values.len |
| 45fc0 | 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</ |
| 45fe0 | 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" |
| 46000 | 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 76 61 6c 75 65 73 2e 40 26 71 75 6f 74 | >try</span>.expect(values.@" |
| 46020 | 3b 33 26 71 75 6f 74 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 | ;3"[<span.class="tok-number |
| 46040 | 22 3e 30 3c 2f 73 70 61 6e 3e 5d 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ">0</span>].==.<span.class="tok- |
| 46060 | 73 74 72 22 3e 27 68 27 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e | str">'h'</span>);.}</code></pre> |
| 46080 | 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 |
| 460a0 | 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 |
| 460c0 | 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 |
| 460e0 | 5f 74 75 70 6c 65 73 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 74 75 70 6c 65 | _tuples.zig</kbd>.1/1.test_tuple |
| 46100 | 73 2e 74 65 73 74 2e 74 75 70 6c 65 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 | s.test.tuple...OK.All.1.tests.pa |
| 46120 | 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>.... |
| 46140 | 20 20 20 20 3c 68 34 20 69 64 3d 22 44 65 73 74 72 75 63 74 75 72 69 6e 67 2d 54 75 70 6c 65 73 | ....<h4.id="Destructuring-Tuples |
| 46160 | 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 44 65 73 74 72 75 63 74 75 72 69 6e 67 2d 54 75 | "><a.href="#toc-Destructuring-Tu |
| 46180 | 70 6c 65 73 22 3e 44 65 73 74 72 75 63 74 75 72 69 6e 67 20 54 75 70 6c 65 73 3c 2f 61 3e 20 3c | ples">Destructuring.Tuples</a>.< |
| 461a0 | 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 44 65 73 74 72 75 63 74 75 72 69 | a.class="hdr".href="#Destructuri |
| 461c0 | 6e 67 2d 54 75 70 6c 65 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 34 3e 0a 0a 20 20 20 20 20 20 3c 70 | ng-Tuples">..</a></h4>........<p |
| 461e0 | 3e 0a 20 20 20 20 20 20 20 20 54 75 70 6c 65 73 20 63 61 6e 20 62 65 20 3c 61 20 68 72 65 66 3d | >.........Tuples.can.be.<a.href= |
| 46200 | 22 23 44 65 73 74 72 75 63 74 75 72 69 6e 67 22 3e 64 65 73 74 72 75 63 74 75 72 65 64 3c 2f 61 | "#Destructuring">destructured</a |
| 46220 | 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 20 20 | >........</p>.......<p>......... |
| 46240 | 54 75 70 6c 65 20 64 65 73 74 72 75 63 74 75 72 69 6e 67 20 69 73 20 68 65 6c 70 66 75 6c 20 66 | Tuple.destructuring.is.helpful.f |
| 46260 | 6f 72 20 72 65 74 75 72 6e 69 6e 67 20 6d 75 6c 74 69 70 6c 65 20 76 61 6c 75 65 73 20 66 72 6f | or.returning.multiple.values.fro |
| 46280 | 6d 20 61 20 62 6c 6f 63 6b 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 | m.a.block:.......</p>.......<fig |
| 462a0 | 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"> |
| 462c0 | 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 64 65 73 74 72 75 63 74 75 72 69 6e 67 | <cite.class="file">destructuring |
| 462e0 | 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 3c 70 | _block.zig</cite></figcaption><p |
| 46300 | 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 |
| 46320 | 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 3d 22 | nst</span>.print.=.<span.class=" |
| 46340 | 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 |
| 46360 | 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" |
| 46380 | 3b 3c 2f 73 70 61 6e 3e 29 2e 64 65 62 75 67 2e 70 72 69 6e 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c | ;</span>).debug.print;..<span.cl |
| 463a0 | 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 |
| 463c0 | 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 |
| 463e0 | 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. |
| 46400 | 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>.{.. |
| 46420 | 20 20 20 3c 73 70 61 6e 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 |
| 46440 | 70 61 6e 3e 20 64 69 67 69 74 73 20 3d 20 5b 5f 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | pan>.digits.=.[_]<span.class="to |
| 46460 | 6b 2d 74 79 70 65 22 3e 69 38 3c 2f 73 70 61 6e 3e 20 7b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | k-type">i8</span>.{.<span.class= |
| 46480 | 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 |
| 464a0 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 38 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 | ss="tok-number">8</span>,.<span. |
| 464c0 | 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 2c 20 3c 73 70 | class="tok-number">9</span>,.<sp |
| 464e0 | 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 20 | an.class="tok-number">0</span>,. |
| 46500 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 37 3c 2f 73 70 61 6e | <span.class="tok-number">7</span |
| 46520 | 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 |
| 46540 | 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 | pan>,.<span.class="tok-number">1 |
| 46560 | 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | </span>.};......<span.class="tok |
| 46580 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6d 69 6e 2c 20 3c 73 70 61 6e 20 63 6c 61 | -kw">const</span>.min,.<span.cla |
| 465a0 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6d 61 78 20 3d 20 62 | ss="tok-kw">const</span>.max.=.b |
| 465c0 | 6c 6b 3a 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | lk:.{.........<span.class="tok-k |
| 465e0 | 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 6d 69 6e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | w">var</span>.min:.<span.class=" |
| 46600 | 74 6f 6b 2d 74 79 70 65 22 3e 69 38 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | tok-type">i8</span>.=.<span.clas |
| 46620 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 37 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 20 | s="tok-number">127</span>;...... |
| 46640 | 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 |
| 46660 | 6e 3e 20 6d 61 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 | n>.max:.<span.class="tok-type">i |
| 46680 | 38 3c 2f 73 70 61 6e 3e 20 3d 20 2d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | 8</span>.=.-<span.class="tok-num |
| 466a0 | 62 65 72 22 3e 31 32 38 3c 2f 73 70 61 6e 3e 3b 0a 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 | ber">128</span>;..........<span. |
| 466c0 | 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 64 69 67 69 74 | class="tok-kw">for</span>.(digit |
| 466e0 | 73 29 20 7c 64 69 67 69 74 7c 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 | s).|digit|.{.............<span.c |
| 46700 | 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 69 67 69 74 20 26 | lass="tok-kw">if</span>.(digit.& |
| 46720 | 6c 74 3b 20 6d 69 6e 29 20 6d 69 6e 20 3d 20 64 69 67 69 74 3b 0a 20 20 20 20 20 20 20 20 20 20 | lt;.min).min.=.digit;........... |
| 46740 | 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> |
| 46760 | 20 28 64 69 67 69 74 20 26 67 74 3b 20 6d 61 78 29 20 6d 61 78 20 3d 20 64 69 67 69 74 3b 0a 20 | .(digit.>.max).max.=.digit;.. |
| 46780 | 20 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | .......}..........<span.class="t |
| 467a0 | 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 2e 7b 20 6d 69 6e 2c | ok-kw">break</span>.:blk..{.min, |
| 467c0 | 20 6d 61 78 20 7d 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 | .max.};.....};......print(<span. |
| 467e0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 6d 69 6e 20 3d 20 7b 7d 26 71 | class="tok-str">"min.=.{}&q |
| 46800 | 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 20 6d 69 6e 20 7d 29 3b 0a 20 20 20 20 70 72 69 6e | uot;</span>,..{.min.});.....prin |
| 46820 | 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 6d 61 | t(<span.class="tok-str">"ma |
| 46840 | 78 20 3d 20 7b 7d 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 20 6d 61 78 20 7d 29 3b 0a | x.=.{}"</span>,..{.max.});. |
| 46860 | 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>< |
| 46880 | 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 |
| 468a0 | 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 |
| 468c0 | 3e 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 64 65 73 74 72 75 63 74 75 72 69 6e 67 5f 62 6c 6f | >zig.build-exe.destructuring_blo |
| 468e0 | 63 6b 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 24 20 3c 6b 62 64 3e 2e 2f 64 65 73 74 72 75 63 74 75 72 | ck.zig</kbd>.$.<kbd>./destructur |
| 46900 | 69 6e 67 5f 62 6c 6f 63 6b 3c 2f 6b 62 64 3e 0a 6d 69 6e 20 3d 20 30 6d 61 78 20 3d 20 39 0a 3c | ing_block</kbd>.min.=.0max.=.9.< |
| 46920 | 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> |
| 46940 | 0a 20 20 20 20 20 20 20 20 54 75 70 6c 65 20 64 65 73 74 72 75 63 74 75 72 69 6e 67 20 69 73 20 | .........Tuple.destructuring.is. |
| 46960 | 68 65 6c 70 66 75 6c 20 66 6f 72 20 64 65 61 6c 69 6e 67 20 77 69 74 68 20 66 75 6e 63 74 69 6f | helpful.for.dealing.with.functio |
| 46980 | 6e 73 20 61 6e 64 20 62 75 69 6c 74 2d 69 6e 73 20 74 68 61 74 20 72 65 74 75 72 6e 20 6d 75 6c | ns.and.built-ins.that.return.mul |
| 469a0 | 74 69 70 6c 65 20 76 61 6c 75 65 73 0a 20 20 20 20 20 20 20 20 61 73 20 61 20 74 75 70 6c 65 3a | tiple.values.........as.a.tuple: |
| 469c0 | 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 |
| 469e0 | 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 |
| 46a00 | 73 3d 22 66 69 6c 65 22 3e 64 65 73 74 72 75 63 74 75 72 69 6e 67 5f 72 65 74 75 72 6e 5f 76 61 | s="file">destructuring_return_va |
| 46a20 | 6c 75 65 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e | lue.zig</cite></figcaption><pre> |
| 46a40 | 3c 63 6f 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 |
| 46a60 | 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 6b | </span>.print.=.<span.class="tok |
| 46a80 | 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 |
| 46aa0 | 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"</ |
| 46ac0 | 73 70 61 6e 3e 29 2e 64 65 62 75 67 2e 70 72 69 6e 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | span>).debug.print;..<span.class |
| 46ae0 | 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= |
| 46b00 | 22 74 6f 6b 2d 66 6e 22 3e 64 69 76 6d 6f 64 3c 2f 73 70 61 6e 3e 28 6e 75 6d 65 72 61 74 6f 72 | "tok-fn">divmod</span>(numerator |
| 46b20 | 3a 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 |
| 46b40 | 61 6e 3e 2c 20 64 65 6e 6f 6d 69 6e 61 74 6f 72 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | an>,.denominator:.<span.class="t |
| 46b60 | 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ok-type">u32</span>).<span.class |
| 46b80 | 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 61 6e 20 | ="tok-kw">struct</span>.{.<span. |
| 46ba0 | 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 |
| 46bc0 | 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 7d | an.class="tok-type">u32</span>.} |
| 46be0 | 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 |
| 46c00 | 72 6e 3c 2f 73 70 61 6e 3e 20 2e 7b 20 6e 75 6d 65 72 61 74 6f 72 20 2f 20 64 65 6e 6f 6d 69 6e | rn</span>..{.numerator./.denomin |
| 46c20 | 61 74 6f 72 2c 20 6e 75 6d 65 72 61 74 6f 72 20 25 20 64 65 6e 6f 6d 69 6e 61 74 6f 72 20 7d 3b | ator,.numerator.%.denominator.}; |
| 46c40 | 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 70 | .}..<span.class="tok-kw">pub</sp |
| 46c60 | 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 |
| 46c80 | 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 |
| 46ca0 | 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 |
| 46cc0 | 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- |
| 46ce0 | 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 64 69 76 2c 20 3c 73 70 61 6e 20 63 6c 61 73 | kw">const</span>.div,.<span.clas |
| 46d00 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6d 6f 64 20 3d 20 64 69 | s="tok-kw">const</span>.mod.=.di |
| 46d20 | 76 6d 6f 64 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 | vmod(<span.class="tok-number">10 |
| 46d40 | 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 |
| 46d60 | 22 3e 33 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 63 6c | ">3</span>);......print(<span.cl |
| 46d80 | 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 31 30 20 2f 20 33 20 3d 20 7b 7d 5c | ass="tok-str">"10./.3.=.{}\ |
| 46da0 | 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 64 69 76 7d 29 3b 0a 20 20 20 20 70 72 69 | n"</span>,..{div});.....pri |
| 46dc0 | 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 31 | nt(<span.class="tok-str">"1 |
| 46de0 | 30 20 25 20 33 20 3d 20 7b 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 6d 6f 64 | 0.%.3.=.{}\n"</span>,..{mod |
| 46e00 | 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 |
| 46e20 | 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" |
| 46e40 | 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>$. |
| 46e60 | 3c 6b 62 64 3e 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 64 65 73 74 72 75 63 74 75 72 69 6e 67 | <kbd>zig.build-exe.destructuring |
| 46e80 | 5f 72 65 74 75 72 6e 5f 76 61 6c 75 65 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 24 20 3c 6b 62 64 3e 2e | _return_value.zig</kbd>.$.<kbd>. |
| 46ea0 | 2f 64 65 73 74 72 75 63 74 75 72 69 6e 67 5f 72 65 74 75 72 6e 5f 76 61 6c 75 65 3c 2f 6b 62 64 | /destructuring_return_value</kbd |
| 46ec0 | 3e 0a 31 30 20 2f 20 33 20 3d 20 33 0a 31 30 20 25 20 33 20 3d 20 31 0a 3c 2f 73 61 6d 70 3e 3c | >.10./.3.=.3.10.%.3.=.1.</samp>< |
| 46ee0 | 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 |
| 46f00 | 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 44 65 73 74 72 75 63 | o:</p><ul>.<li><a.href="#Destruc |
| 46f20 | 74 75 72 69 6e 67 22 3e 44 65 73 74 72 75 63 74 75 72 69 6e 67 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c | turing">Destructuring</a></li>.< |
| 46f40 | 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 44 65 73 74 72 75 63 74 75 72 69 6e 67 2d 41 72 72 61 79 | li><a.href="#Destructuring-Array |
| 46f60 | 73 22 3e 44 65 73 74 72 75 63 74 75 72 69 6e 67 20 41 72 72 61 79 73 3c 2f 61 3e 3c 2f 6c 69 3e | s">Destructuring.Arrays</a></li> |
| 46f80 | 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 44 65 73 74 72 75 63 74 75 72 69 6e 67 2d 56 65 63 | .<li><a.href="#Destructuring-Vec |
| 46fa0 | 74 6f 72 73 22 3e 44 65 73 74 72 75 63 74 75 72 69 6e 67 20 56 65 63 74 6f 72 73 3c 2f 61 3e 3c | tors">Destructuring.Vectors</a>< |
| 46fc0 | 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 | /li>.</ul>...................... |
| 46fe0 | 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 |
| 47000 | 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>.< |
| 47020 | 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 |
| 47040 | 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>..... |
| 47060 | 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= |
| 47080 | 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 |
| 470a0 | 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>.... |
| 470c0 | 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 |
| 470e0 | 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_ |
| 47100 | 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 |
| 47120 | 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 |
| 47140 | 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=" |
| 47160 | 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 |
| 47180 | 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" |
| 471a0 | 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. |
| 471c0 | 63 6c 61 73 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. |
| 471e0 | 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 |
| 47200 | 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" |
| 47220 | 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;..< |
| 47240 | 73 70 61 6e 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 |
| 47260 | 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= |
| 47280 | 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 |
| 472a0 | 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>.{. |
| 472c0 | 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 |
| 472e0 | 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 |
| 47300 | 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 |
| 47320 | 20 63 6c 61 73 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.= |
| 47340 | 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 |
| 47360 | 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 |
| 47380 | 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< |
| 473a0 | 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" |
| 473c0 | 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 |
| 473e0 | 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< |
| 47400 | 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- |
| 47420 | 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 |
| 47440 | 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,... |
| 47460 | 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=" |
| 47480 | 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 |
| 474a0 | 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 |
| 474c0 | 70 61 6e 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 |
| 474e0 | 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 |
| 47500 | 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 |
| 47520 | 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 |
| 47540 | 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- |
| 47560 | 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 |
| 47580 | 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 |
| 475a0 | 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 |
| 475c0 | 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</ |
| 475e0 | 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 |
| 47600 | 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 |
| 47620 | 61 6e 20 63 6c 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 |
| 47640 | 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 |
| 47660 | 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).==. |
| 47680 | 3c 73 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 |
| 476a0 | 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 |
| 476c0 | 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- |
| 476e0 | 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 |
| 47700 | 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 |
| 47720 | 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 |
| 47740 | 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. |
| 47760 | 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.</ |
| 47780 | 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 |
| 477a0 | 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 |
| 477c0 | 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 |
| 477e0 | 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 |
| 47800 | 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 |
| 47820 | 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 |
| 47840 | 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>,.. |
| 47860 | 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 |
| 47880 | 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 |
| 478a0 | 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. |
| 478c0 | 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 |
| 478e0 | 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>.{..... |
| 47900 | 3c 73 70 61 6e 20 63 6c 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>. |
| 47920 | 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" |
| 47940 | 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 |
| 47960 | 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" |
| 47980 | 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 |
| 479a0 | 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 |
| 479c0 | 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< |
| 479e0 | 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 |
| 47a00 | 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>) |
| 47a20 | 3b 0a 20 20 20 20 3c 73 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</ |
| 47a40 | 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 |
| 47a60 | 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 |
| 47a80 | 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 |
| 47aa0 | 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 |
| 47ac0 | 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. |
| 47ae0 | 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.< |
| 47b00 | 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 |
| 47b20 | 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 |
| 47b40 | 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=" |
| 47b60 | 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,... |
| 47b80 | 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 |
| 47ba0 | 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 |
| 47bc0 | 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 |
| 47be0 | 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</ |
| 47c00 | 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 |
| 47c20 | 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 |
| 47c40 | 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 |
| 47c60 | 3e 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 |
| 47c80 | 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- |
| 47ca0 | 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 |
| 47cc0 | 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 |
| 47ce0 | 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 |
| 47d00 | 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 |
| 47d20 | 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< |
| 47d40 | 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= |
| 47d60 | 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 |
| 47d80 | 6e 20 63 6c 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 |
| 47da0 | 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 |
| 47dc0 | 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 |
| 47de0 | 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>) |
| 47e00 | 3b 0a 20 20 20 20 3c 73 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</ |
| 47e20 | 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 |
| 47e40 | 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 |
| 47e60 | 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" |
| 47e80 | 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 |
| 47ea0 | 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 |
| 47ec0 | 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 |
| 47ee0 | 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 |
| 47f00 | 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 |
| 47f20 | 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. |
| 47f40 | 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 |
| 47f60 | 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 |
| 47f80 | 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 |
| 47fa0 | 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 |
| 47fc0 | 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 |
| 47fe0 | 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. |
| 48000 | 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> |
| 48020 | 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 |
| 48040 | 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 |
| 48060 | 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 |
| 48080 | 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,... |
| 480a0 | 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 |
| 480c0 | 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 |
| 480e0 | 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</ |
| 48100 | 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 |
| 48120 | 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>.{.........< |
| 48140 | 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 |
| 48160 | 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;.....}.};.< |
| 48180 | 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>. |
| 481a0 | 3c 73 70 61 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 |
| 481c0 | 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 |
| 481e0 | 20 63 6c 61 73 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.= |
| 48200 | 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 |
| 48220 | 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 |
| 48240 | 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 |
| 48260 | 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. |
| 48280 | 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 |
| 482a0 | 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 |
| 482c0 | 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 |
| 482e0 | 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 |
| 48300 | 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 |
| 48320 | 70 61 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 |
| 48340 | 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 |
| 48360 | 6c 61 73 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 |
| 48380 | 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- |
| 483a0 | 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 |
| 483c0 | 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> |
| 483e0 | 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.=>. |
| 48400 | 3c 73 70 61 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 |
| 48420 | 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>,...... |
| 48440 | 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= |
| 48460 | 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 |
| 48480 | 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. |
| 484a0 | 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 |
| 484c0 | 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>,.. |
| 484e0 | 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 |
| 48500 | 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 |
| 48520 | 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_ |
| 48540 | 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 |
| 48560 | 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> |
| 48580 | 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" |
| 485a0 | 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 |
| 485c0 | 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 |
| 485e0 | 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" |
| 48600 | 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 |
| 48620 | 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 |
| 48640 | 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,. |
| 48660 | 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 |
| 48680 | 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">" |
| 486a0 | 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>.{..... |
| 486c0 | 3c 73 70 61 6e 20 63 6c 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>. |
| 486e0 | 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" |
| 48700 | 3e 40 74 79 70 65 49 6e 66 6f 3c 2f 73 70 61 6e 3e 28 53 6d 61 6c 6c 29 2e 40 26 71 75 6f 74 3b | >@typeInfo</span>(Small).@" |
| 48720 | 65 6e 75 6d 26 71 75 6f 74 3b 2e 74 61 67 5f 74 79 70 65 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 | enum".tag_type.==.<span.cla |
| 48740 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 32 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 | ss="tok-type">u2</span>);.}..<sp |
| 48760 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 40 74 79 70 65 49 | an.class="tok-comment">//.@typeI |
| 48780 | 6e 66 6f 20 74 65 6c 6c 73 20 75 73 20 74 68 65 20 66 69 65 6c 64 20 63 6f 75 6e 74 20 61 6e 64 | nfo.tells.us.the.field.count.and |
| 487a0 | 20 74 68 65 20 66 69 65 6c 64 73 20 6e 61 6d 65 73 3a 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 | .the.fields.names:</span>.<span. |
| 487c0 | 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 |
| 487e0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 40 74 79 70 65 49 6e 66 6f | .class="tok-str">"@typeInfo |
| 48800 | 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= |
| 48820 | 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 3c 73 70 61 6e | "tok-kw">try</span>.expect(<span |
| 48840 | 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</ |
| 48860 | 73 70 61 6e 3e 28 53 6d 61 6c 6c 29 2e 40 26 71 75 6f 74 3b 65 6e 75 6d 26 71 75 6f 74 3b 2e 66 | span>(Small).@"enum".f |
| 48880 | 69 65 6c 64 73 2e 6c 65 6e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | ields.len.==.<span.class="tok-nu |
| 488a0 | 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | mber">4</span>);.....<span.class |
| 488c0 | 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 6d 2e | ="tok-kw">try</span>.expect(mem. |
| 488e0 | 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 |
| 48900 | 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 3e | pan>,.<span.class="tok-builtin"> |
| 48920 | 40 74 79 70 65 49 6e 66 6f 3c 2f 73 70 61 6e 3e 28 53 6d 61 6c 6c 29 2e 40 26 71 75 6f 74 3b 65 | @typeInfo</span>(Small).@"e |
| 48940 | 6e 75 6d 26 71 75 6f 74 3b 2e 66 69 65 6c 64 73 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | num".fields[<span.class="to |
| 48960 | 6b 2d 6e 75 6d 62 65 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 | k-number">1</span>].name,.<span. |
| 48980 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 74 77 6f 26 71 75 6f 74 3b 3c | class="tok-str">"two"< |
| 489a0 | 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 6f | /span>));.}..<span.class="tok-co |
| 489c0 | 6d 6d 65 6e 74 22 3e 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 | mment">//.@tagName.gives.a.[:0]c |
| 489e0 | 6f 6e 73 74 20 75 38 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 | onst.u8.representation.of.an.enu |
| 48a00 | 6d 20 76 61 6c 75 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 | m.value:</span>.<span.class="tok |
| 48a20 | 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 |
| 48a40 | 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 40 74 61 67 4e 61 6d 65 26 71 75 6f 74 3b 3c 2f 73 70 61 | k-str">"@tagName"</spa |
| 48a60 | 6e 3e 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 |
| 48a80 | 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 |
| 48aa0 | 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. |
| 48ac0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 74 61 67 4e 61 6d 65 3c 2f 73 70 | class="tok-builtin">@tagName</sp |
| 48ae0 | 61 6e 3e 28 53 6d 61 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 | an>(Small.three),.<span.class="t |
| 48b00 | 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 3e | ok-str">"three"</span> |
| 48b20 | 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 |
| 48b40 | 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" |
| 48b60 | 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>$. |
| 48b80 | 3c 6b 62 64 3e 7a 69 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 | <kbd>zig.test.test_enums.zig</kb |
| 48ba0 | 64 3e 0a 31 2f 38 20 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 | d>.1/8.test_enums.test.enum.ordi |
| 48bc0 | 6e 61 6c 20 76 61 6c 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 | nal.value...OK.2/8.test_enums.te |
| 48be0 | 73 74 2e 73 65 74 20 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 | st.set.enum.ordinal.value...OK.3 |
| 48c00 | 2f 38 20 74 65 73 74 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 | /8.test_enums.test.enum.implicit |
| 48c20 | 20 6f 72 64 69 6e 61 6c 20 76 61 6c 75 65 73 20 61 6e 64 20 6f 76 65 72 72 69 64 64 65 6e 20 76 | .ordinal.values.and.overridden.v |
| 48c40 | 61 6c 75 65 73 2e 2e 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 | alues...OK.4/8.test_enums.test.e |
| 48c60 | 6e 75 6d 20 6d 65 74 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 | num.method...OK.5/8.test_enums.t |
| 48c80 | 65 73 74 2e 65 6e 75 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 | est.enum.switch...OK.6/8.test_en |
| 48ca0 | 75 6d 73 2e 74 65 73 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 | ums.test.std.meta.Tag...OK.7/8.t |
| 48cc0 | 65 73 74 5f 65 6e 75 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 | est_enums.test.@typeInfo...OK.8/ |
| 48ce0 | 38 20 74 65 73 74 5f 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 | 8.test_enums.test.@tagName...OK. |
| 48d00 | 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 65 | All.8.tests.passed..</samp></pre |
| 48d20 | 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:</ |
| 48d40 | 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 74 79 70 65 49 6e 66 6f 22 3e 40 | p><ul>.<li><a.href="#typeInfo">@ |
| 48d60 | 74 79 70 65 49 6e 66 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 | typeInfo</a></li>.<li><a.href="# |
| 48d80 | 74 61 67 4e 61 6d 65 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 | tagName">@tagName</a></li>.<li>< |
| 48da0 | 61 20 68 72 65 66 3d 22 23 73 69 7a 65 4f 66 22 3e 40 73 69 7a 65 4f 66 3c 2f 61 3e 3c 2f 6c 69 | a.href="#sizeOf">@sizeOf</a></li |
| 48dc0 | 3e 0a 3c 2f 75 6c 3e 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 | >.</ul>.........<h3.id="extern-e |
| 48de0 | 6e 75 6d 22 3e 3c 61 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 | num"><a.href="#toc-extern-enum"> |
| 48e00 | 65 78 74 65 72 6e 20 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 | extern.enum</a>.<a.class="hdr".h |
| 48e20 | 72 65 66 3d 22 23 65 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 | ref="#extern-enum">..</a></h3>.. |
| 48e40 | 20 20 20 20 20 20 3c 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 | ......<p>.......By.default,.enum |
| 48e60 | 73 20 61 72 65 20 6e 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 | s.are.not.guaranteed.to.be.compa |
| 48e80 | 74 69 62 6c 65 20 77 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 | tible.with.the.C.ABI:.......</p> |
| 48ea0 | 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 |
| 48ec0 | 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 6e | ="zig-cap"><cite.class="file">en |
| 48ee0 | 75 6d 5f 65 78 70 6f 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 | um_export_error.zig</cite></figc |
| 48f00 | 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 |
| 48f20 | 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 46 6f 6f 20 3d 20 3c 73 70 61 6e 20 | ok-kw">const</span>.Foo.=.<span. |
| 48f40 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6e 75 6d 3c 2f 73 70 61 6e 3e 20 7b 20 61 2c 20 | class="tok-kw">enum</span>.{.a,. |
| 48f60 | 62 2c 20 63 20 7d 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 78 70 | b,.c.};.<span.class="tok-kw">exp |
| 48f80 | 6f 72 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | ort</span>.<span.class="tok-kw"> |
| 48fa0 | 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 |
| 48fc0 | 6e 74 72 79 3c 2f 73 70 61 6e 3e 28 66 6f 6f 3a 20 46 6f 6f 29 20 3c 73 70 61 6e 20 63 6c 61 73 | ntry</span>(foo:.Foo).<span.clas |
| 48fe0 | 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>.{....._ |
| 49000 | 20 3d 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 75 72 65 3e 3c | .=.foo;.}</code></pre></figure>< |
| 49020 | 66 69 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- |
| 49040 | 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 |
| 49060 | 70 3e 24 20 3c 6b 62 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 | p>$.<kbd>zig.build-obj.enum_expo |
| 49080 | 72 74 5f 65 72 72 6f 72 2e 7a 69 67 20 2d 74 61 72 67 65 74 20 78 38 36 5f 36 34 2d 6c 69 6e 75 | rt_error.zig.-target.x86_64-linu |
| 490a0 | 78 3c 2f 6b 62 64 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f | x</kbd>.<span.class="sgr-1m">/ho |
| 490c0 | 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 65 6e 75 6d | me/andy/dev/zig/doc/langref/enum |
| 490e0 | 5f 65 78 70 6f 72 74 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 | _export_error.zig:2:17:.</span>< |
| 49100 | 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 |
| 49120 | 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 70 61 72 61 6d 65 74 65 | an><span.class="sgr-1m">paramete |
| 49140 | 72 20 6f 66 20 74 79 70 65 20 27 65 6e 75 6d 5f 65 78 70 6f 72 74 5f 65 72 72 6f 72 2e 46 6f 6f | r.of.type.'enum_export_error.Foo |
| 49160 | 27 20 6e 6f 74 20 61 6c 6c 6f 77 65 64 20 69 6e 20 66 75 6e 63 74 69 6f 6e 20 77 69 74 68 20 63 | '.not.allowed.in.function.with.c |
| 49180 | 61 6c 6c 69 6e 67 20 63 6f 6e 76 65 6e 74 69 6f 6e 20 27 78 38 36 5f 36 34 5f 73 79 73 76 27 0a | alling.convention.'x86_64_sysv'. |
| 491a0 | 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 6f 3a 20 46 6f 6f 29 | </span>export.fn.entry(foo:.Foo) |
| 491c0 | 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 73 70 61 6e 20 63 6c | .void.{.................<span.cl |
| 491e0 | 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 73 70 61 6e 3e 3c 73 | ass="sgr-32m">^~~~~~~~.</span><s |
| 49200 | 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 | pan.class="sgr-1m">/home/andy/de |
| 49220 | 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 65 6e 75 6d 5f 65 78 70 6f 72 74 5f 65 72 | v/zig/doc/langref/enum_export_er |
| 49240 | 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 61 73 73 | ror.zig:2:17:.</span><span.class |
| 49260 | 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 |
| 49280 | 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 65 6e 75 6d 20 74 61 67 20 74 79 70 65 20 27 75 32 27 20 | ass="sgr-1m">enum.tag.type.'u2'. |
| 492a0 | 69 73 20 6e 6f 74 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 | is.not.extern.compatible.</span> |
| 492c0 | 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/ |
| 492e0 | 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 65 6e 75 6d 5f 65 78 70 6f 72 74 5f | dev/zig/doc/langref/enum_export_ |
| 49300 | 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 61 | error.zig:2:17:.</span><span.cla |
| 49320 | 73 73 3d 22 73 67 72 2d 33 36 6d 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 | ss="sgr-36m">note:.</span><span. |
| 49340 | 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 74 | class="sgr-1m">only.integers.wit |
| 49360 | 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 20 | h.0,.8,.16,.32,.64.and.128.bits. |
| 49380 | 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 70 | are.extern.compatible.</span><sp |
| 493a0 | 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 | an.class="sgr-1m">/home/andy/dev |
| 493c0 | 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 65 6e 75 6d 5f 65 78 70 6f 72 74 5f 65 72 72 | /zig/doc/langref/enum_export_err |
| 493e0 | 6f 72 2e 7a 69 67 3a 31 3a 31 33 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | or.zig:1:13:.</span><span.class= |
| 49400 | 22 73 67 72 2d 33 36 6d 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 | "sgr-36m">note:.</span><span.cla |
| 49420 | 73 73 3d 22 73 67 72 2d 31 6d 22 3e 65 6e 75 6d 20 64 65 63 6c 61 72 65 64 20 68 65 72 65 0a 3c | ss="sgr-1m">enum.declared.here.< |
| 49440 | 2f 73 70 61 6e 3e 63 6f 6e 73 74 20 46 6f 6f 20 3d 20 65 6e 75 6d 20 7b 20 61 2c 20 62 2c 20 63 | /span>const.Foo.=.enum.{.a,.b,.c |
| 49460 | 20 7d 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 | .};.............<span.class="sgr |
| 49480 | 2d 33 32 6d 22 3e 5e 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 | -32m">^~~~~~~~~~~~~~~~.</span><s |
| 494a0 | 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 72 65 66 65 72 65 6e 63 65 64 20 62 79 | pan.class="sgr-2m">referenced.by |
| 494c0 | 3a 0a 20 20 20 20 72 6f 6f 74 3a 20 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c | :.....root:./home/andy/dev/zig/l |
| 494e0 | 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 33 3a 32 32 0a 20 20 20 20 63 6f 6d 70 74 69 | ib/std/start.zig:3:22.....compti |
| 49500 | 6d 65 3a 20 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 | me:./home/andy/dev/zig/lib/std/s |
| 49520 | 74 61 72 74 2e 7a 69 67 3a 33 31 3a 39 0a 20 20 20 20 32 20 72 65 66 65 72 65 6e 63 65 28 73 29 | tart.zig:31:9.....2.reference(s) |
| 49540 | 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 63 65 3d | .hidden;.use.'-freference-trace= |
| 49560 | 34 27 20 74 6f 20 73 65 65 20 61 6c 6c 20 72 65 66 65 72 65 6e 63 65 73 0a 3c 2f 73 70 61 6e 3e | 4'.to.see.all.references.</span> |
| 49580 | 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>........< |
| 495a0 | 70 3e 0a 20 20 20 20 20 20 46 6f 72 20 61 20 43 2d 41 42 49 2d 63 6f 6d 70 61 74 69 62 6c 65 20 | p>.......For.a.C-ABI-compatible. |
| 495c0 | 65 6e 75 6d 2c 20 70 72 6f 76 69 64 65 20 61 6e 20 65 78 70 6c 69 63 69 74 20 74 61 67 20 74 79 | enum,.provide.an.explicit.tag.ty |
| 495e0 | 70 65 20 74 6f 0a 20 20 20 20 20 20 74 68 65 20 65 6e 75 6d 3a 0a 20 20 20 20 20 20 3c 2f 70 3e | pe.to.......the.enum:.......</p> |
| 49600 | 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 |
| 49620 | 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 6e | ="zig-cap"><cite.class="file">en |
| 49640 | 75 6d 5f 65 78 70 6f 72 74 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e | um_export.zig</cite></figcaption |
| 49660 | 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" |
| 49680 | 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 3d | >const</span>.Foo.=.<span.class= |
| 496a0 | 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 73 | "tok-kw">enum</span>(<span.class |
| 496c0 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 63 5f 69 6e 74 3c 2f 73 70 61 6e 3e 29 20 7b 20 61 2c 20 62 | ="tok-type">c_int</span>).{.a,.b |
| 496e0 | 2c 20 63 20 7d 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 78 70 6f | ,.c.};.<span.class="tok-kw">expo |
| 49700 | 72 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 | rt</span>.<span.class="tok-kw">f |
| 49720 | 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 65 6e | n</span>.<span.class="tok-fn">en |
| 49740 | 74 72 79 3c 2f 73 70 61 6e 3e 28 66 6f 6f 3a 20 46 6f 6f 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 | try</span>(foo:.Foo).<span.class |
| 49760 | 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>.{....._. |
| 49780 | 3d 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 75 72 65 3e 3c 66 | =.foo;.}</code></pre></figure><f |
| 497a0 | 69 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 |
| 497c0 | 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 |
| 497e0 | 3e 24 20 3c 6b 62 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 | >$.<kbd>zig.build-obj.enum_expor |
| 49800 | 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 2f 66 69 67 75 72 | t.zig</kbd>.</samp></pre></figur |
| 49820 | 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 45 6e 75 6d 2d 4c | e>................<h3.id="Enum-L |
| 49840 | 69 74 65 72 61 6c 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 45 6e 75 6d 2d 4c 69 74 65 | iterals"><a.href="#toc-Enum-Lite |
| 49860 | 72 61 6c 73 22 3e 45 6e 75 6d 20 4c 69 74 65 72 61 6c 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 | rals">Enum.Literals</a>.<a.class |
| 49880 | 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 45 6e 75 6d 2d 4c 69 74 65 72 61 6c 73 22 3e c2 a7 3c | ="hdr".href="#Enum-Literals">..< |
| 498a0 | 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 6e 75 6d 20 6c | /a></h3>........<p>.......Enum.l |
| 498c0 | 69 74 65 72 61 6c 73 20 61 6c 6c 6f 77 20 73 70 65 63 69 66 79 69 6e 67 20 74 68 65 20 6e 61 6d | iterals.allow.specifying.the.nam |
| 498e0 | 65 20 6f 66 20 61 6e 20 65 6e 75 6d 20 66 69 65 6c 64 20 77 69 74 68 6f 75 74 20 73 70 65 63 69 | e.of.an.enum.field.without.speci |
| 49900 | 66 79 69 6e 67 20 74 68 65 20 65 6e 75 6d 20 74 79 70 65 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a | fying.the.enum.type:.......</p>. |
| 49920 | 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= |
| 49940 | 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 |
| 49960 | 74 5f 65 6e 75 6d 5f 6c 69 74 65 72 61 6c 73 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 | t_enum_literals.zig</cite></figc |
| 49980 | 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 |
| 499a0 | 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. |
| 499c0 | 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 |
| 499e0 | 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 |
| 49a00 | 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 |
| 49a20 | 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 |
| 49a40 | 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 |
| 49a60 | 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 |
| 49a80 | 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>.{.. |
| 49aa0 | 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 |
| 49ac0 | 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>.< |
| 49ae0 | 73 70 61 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 | span.class="tok-str">"enum. |
| 49b00 | 6c 69 74 65 72 61 6c 73 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 | literals"</span>.{.....<spa |
| 49b20 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 63 6f | n.class="tok-kw">const</span>.co |
| 49b40 | 6c 6f 72 31 3a 20 43 6f 6c 6f 72 20 3d 20 2e 61 75 74 6f 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 | lor1:.Color.=..auto;.....<span.c |
| 49b60 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 63 6f 6c 6f 72 | lass="tok-kw">const</span>.color |
| 49b80 | 32 20 3d 20 43 6f 6c 6f 72 2e 61 75 74 6f 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | 2.=.Color.auto;.....<span.class= |
| 49ba0 | 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 63 6f 6c 6f 72 | "tok-kw">try</span>.expect(color |
| 49bc0 | 31 20 3d 3d 20 63 6f 6c 6f 72 32 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | 1.==.color2);.}..<span.class="to |
| 49be0 | 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 |
| 49c00 | 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 77 69 74 63 68 20 75 73 69 6e 67 20 65 6e 75 6d 20 | ok-str">"switch.using.enum. |
| 49c20 | 6c 69 74 65 72 61 6c 73 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 | literals"</span>.{.....<spa |
| 49c40 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 63 6f | n.class="tok-kw">const</span>.co |
| 49c60 | 6c 6f 72 20 3d 20 43 6f 6c 6f 72 2e 6f 6e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | lor.=.Color.on;.....<span.class= |
| 49c80 | 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 72 65 73 75 6c 74 20 3d 20 3c | "tok-kw">const</span>.result.=.< |
| 49ca0 | 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 |
| 49cc0 | 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 3d 26 67 74 3b 20 | >.(color).{..........auto.=>. |
| 49ce0 | 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 |
| 49d00 | 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 61 6e 20 63 6c 61 | an>,..........on.=>.<span.cla |
| 49d20 | 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>,...... |
| 49d40 | 20 20 20 2e 6f 66 66 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | ....off.=>.<span.class="tok-n |
| 49d60 | 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 |
| 49d80 | 70 61 6e 20 63 6c 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 |
| 49da0 | 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 65 3e 3c 2f 66 69 | pect(result);.}</code></pre></fi |
| 49dc0 | 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=" |
| 49de0 | 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 |
| 49e00 | 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 6e 75 | e><samp>$.<kbd>zig.test.test_enu |
| 49e20 | 6d 5f 6c 69 74 65 72 61 6c 73 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 32 20 74 65 73 74 5f 65 6e | m_literals.zig</kbd>.1/2.test_en |
| 49e40 | 75 6d 5f 6c 69 74 65 72 61 6c 73 2e 74 65 73 74 2e 65 6e 75 6d 20 6c 69 74 65 72 61 6c 73 2e 2e | um_literals.test.enum.literals.. |
| 49e60 | 2e 4f 4b 0a 32 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 | .OK.2/2.test_enum_literals.test. |
| 49e80 | 73 77 69 74 63 68 20 75 73 69 6e 67 20 65 6e 75 6d 20 6c 69 74 65 72 61 6c 73 2e 2e 2e 4f 4b 0a | switch.using.enum.literals...OK. |
| 49ea0 | 41 6c 6c 20 32 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 | All.2.tests.passed..</samp></pre |
| 49ec0 | 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 33 20 69 64 | ></figure>................<h3.id |
| 49ee0 | 3d 22 4e 6f 6e 2d 65 78 68 61 75 73 74 69 76 65 2d 65 6e 75 6d 22 3e 3c 61 20 68 72 65 66 3d 22 | ="Non-exhaustive-enum"><a.href=" |
| 49f00 | 23 74 6f 63 2d 4e 6f 6e 2d 65 78 68 61 75 73 74 69 76 65 2d 65 6e 75 6d 22 3e 4e 6f 6e 2d 65 78 | #toc-Non-exhaustive-enum">Non-ex |
| 49f20 | 68 61 75 73 74 69 76 65 20 65 6e 75 6d 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 | haustive.enum</a>.<a.class="hdr" |
| 49f40 | 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 c2 a7 3c | .href="#Non-exhaustive-enum">..< |
| 49f60 | 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 20 6e 6f 6e 2d | /a></h3>........<p>.......A.non- |
| 49f80 | 65 78 68 61 75 73 74 69 76 65 20 65 6e 75 6d 20 63 61 6e 20 62 65 20 63 72 65 61 74 65 64 20 62 | exhaustive.enum.can.be.created.b |
| 49fa0 | 79 20 61 64 64 69 6e 67 20 61 20 74 72 61 69 6c 69 6e 67 20 3c 63 6f 64 65 3e 5f 3c 2f 63 6f 64 | y.adding.a.trailing.<code>_</cod |
| 49fc0 | 65 3e 20 66 69 65 6c 64 2e 0a 20 20 20 20 20 20 54 68 65 20 65 6e 75 6d 20 6d 75 73 74 20 73 70 | e>.field........The.enum.must.sp |
| 49fe0 | 65 63 69 66 79 20 61 20 74 61 67 20 74 79 70 65 20 61 6e 64 20 63 61 6e 6e 6f 74 20 63 6f 6e 73 | ecify.a.tag.type.and.cannot.cons |
| 4a000 | 75 6d 65 20 65 76 65 72 79 20 65 6e 75 6d 65 72 61 74 69 6f 6e 20 76 61 6c 75 65 2e 0a 20 20 20 | ume.every.enumeration.value..... |
| 4a020 | 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d | ...</p>.......<p>.......<a.href= |
| 4a040 | 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 2f 61 3e 20 | "#enumFromInt">@enumFromInt</a>. |
| 4a060 | 6f 6e 20 61 20 6e 6f 6e 2d 65 78 68 61 75 73 74 69 76 65 20 65 6e 75 6d 20 69 6e 76 6f 6c 76 65 | on.a.non-exhaustive.enum.involve |
| 4a080 | 73 20 74 68 65 20 73 61 66 65 74 79 20 73 65 6d 61 6e 74 69 63 73 0a 20 20 20 20 20 20 6f 66 20 | s.the.safety.semantics.......of. |
| 4a0a0 | 3c 61 20 68 72 65 66 3d 22 23 69 6e 74 43 61 73 74 22 3e 40 69 6e 74 43 61 73 74 3c 2f 61 3e 20 | <a.href="#intCast">@intCast</a>. |
| 4a0c0 | 74 6f 20 74 68 65 20 69 6e 74 65 67 65 72 20 74 61 67 20 74 79 70 65 2c 20 62 75 74 20 62 65 79 | to.the.integer.tag.type,.but.bey |
| 4a0e0 | 6f 6e 64 20 74 68 61 74 20 61 6c 77 61 79 73 20 72 65 73 75 6c 74 73 20 69 6e 0a 20 20 20 20 20 | ond.that.always.results.in...... |
| 4a100 | 20 61 20 77 65 6c 6c 2d 64 65 66 69 6e 65 64 20 65 6e 75 6d 20 76 61 6c 75 65 2e 0a 20 20 20 20 | .a.well-defined.enum.value...... |
| 4a120 | 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 73 77 69 74 63 68 20 | ..</p>.......<p>.......A.switch. |
| 4a140 | 6f 6e 20 61 20 6e 6f 6e 2d 65 78 68 61 75 73 74 69 76 65 20 65 6e 75 6d 20 63 61 6e 20 69 6e 63 | on.a.non-exhaustive.enum.can.inc |
| 4a160 | 6c 75 64 65 20 61 20 3c 63 6f 64 65 3e 5f 3c 2f 63 6f 64 65 3e 20 70 72 6f 6e 67 20 61 73 20 61 | lude.a.<code>_</code>.prong.as.a |
| 4a180 | 6e 20 61 6c 74 65 72 6e 61 74 69 76 65 20 74 6f 20 61 6e 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 | n.alternative.to.an.<code><span. |
| 4a1a0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 | class="tok-kw">else</span></code |
| 4a1c0 | 3e 20 70 72 6f 6e 67 2e 0a 20 20 20 20 20 20 57 69 74 68 20 61 20 3c 63 6f 64 65 3e 5f 3c 2f 63 | >.prong........With.a.<code>_</c |
| 4a1e0 | 6f 64 65 3e 20 70 72 6f 6e 67 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 20 65 72 72 6f 72 73 20 69 | ode>.prong.the.compiler.errors.i |
| 4a200 | 66 20 61 6c 6c 20 74 68 65 20 6b 6e 6f 77 6e 20 74 61 67 20 6e 61 6d 65 73 20 61 72 65 20 6e 6f | f.all.the.known.tag.names.are.no |
| 4a220 | 74 20 68 61 6e 64 6c 65 64 20 62 79 20 74 68 65 20 73 77 69 74 63 68 2e 0a 20 20 20 20 20 20 3c | t.handled.by.the.switch........< |
| 4a240 | 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 |
| 4a260 | 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" |
| 4a280 | 3e 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 7a 69 67 3c | >test_switch_non-exhaustive.zig< |
| 4a2a0 | 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 |
| 4a2c0 | 70 61 6e 20 63 6c 61 73 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>. |
| 4a2e0 | 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"> |
| 4a300 | 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- |
| 4a320 | 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 |
| 4a340 | 70 61 6e 20 63 6c 61 73 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>. |
| 4a360 | 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 |
| 4a380 | 70 61 6e 20 63 6c 61 73 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>. |
| 4a3a0 | 4e 75 6d 62 65 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6e | Number.=.<span.class="tok-kw">en |
| 4a3c0 | 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 2d 74 79 70 65 22 | um</span>(<span.class="tok-type" |
| 4a3e0 | 3e 75 38 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 6f 6e 65 2c 0a 20 20 20 20 74 77 6f 2c 0a | >u8</span>).{.....one,.....two,. |
| 4a400 | 20 20 20 20 74 68 72 65 65 2c 0a 20 20 20 20 5f 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 | ....three,....._,.};..<span.clas |
| 4a420 | 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 |
| 4a440 | 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 77 69 74 63 68 20 6f 6e 20 6e 6f 6e | ss="tok-str">"switch.on.non |
| 4a460 | 2d 65 78 68 61 75 73 74 69 76 65 20 65 6e 75 6d 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a | -exhaustive.enum"</span>.{. |
| 4a480 | 20 20 20 20 3c 73 70 61 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</ |
| 4a4a0 | 73 70 61 6e 3e 20 6e 75 6d 62 65 72 20 3d 20 4e 75 6d 62 65 72 2e 6f 6e 65 3b 0a 20 20 20 20 3c | span>.number.=.Number.one;.....< |
| 4a4c0 | 73 70 61 6e 20 63 6c 61 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> |
| 4a4e0 | 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 73 | .result.=.<span.class="tok-kw">s |
| 4a500 | 77 69 74 63 68 3c 2f 73 70 61 6e 3e 20 28 6e 75 6d 62 65 72 29 20 7b 0a 20 20 20 20 20 20 20 20 | witch</span>.(number).{......... |
| 4a520 | 2e 6f 6e 65 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c | .one.=>.<span.class="tok-null |
| 4a540 | 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 2e 74 77 6f 2c 20 2e 74 68 | ">true</span>,..........two,..th |
| 4a560 | 72 65 65 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 | ree.=>.<span.class="tok-null" |
| 4a580 | 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 5f 20 3d 26 67 74 3b 20 3c | >false</span>,........._.=>.< |
| 4a5a0 | 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 |
| 4a5c0 | 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- |
| 4a5e0 | 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 72 65 73 75 6c 74 29 3b 0a 20 | kw">try</span>.expect(result);.. |
| 4a600 | 20 20 20 3c 73 70 61 6e 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 |
| 4a620 | 70 61 6e 3e 20 69 73 5f 6f 6e 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | pan>.is_one.=.<span.class="tok-k |
| 4a640 | 77 22 3e 73 77 69 74 63 68 3c 2f 73 70 61 6e 3e 20 28 6e 75 6d 62 65 72 29 20 7b 0a 20 20 20 20 | w">switch</span>.(number).{..... |
| 4a660 | 20 20 20 20 2e 6f 6e 65 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | .....one.=>.<span.class="tok- |
| 4a680 | 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 3c 73 70 61 6e | null">true</span>,.........<span |
| 4a6a0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 3d 26 67 74 | .class="tok-kw">else</span>.=> |
| 4a6c0 | 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 73 65 3c 2f | ;.<span.class="tok-null">false</ |
| 4a6e0 | 73 70 61 6e 3e 2c 0a 20 20 20 20 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | span>,.....};.....<span.class="t |
| 4a700 | 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 69 73 5f 6f 6e 65 29 | ok-kw">try</span>.expect(is_one) |
| 4a720 | 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 |
| 4a740 | 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 |
| 4a760 | 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 |
| 4a780 | 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 73 77 69 74 63 68 5f 6e 6f 6e 2d 65 78 68 61 | bd>zig.test.test_switch_non-exha |
| 4a7a0 | 75 73 74 69 76 65 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 | ustive.zig</kbd>.1/1.test_switch |
| 4a7c0 | 5f 6e 6f 6e 2d 65 78 68 61 75 73 74 69 76 65 2e 74 65 73 74 2e 73 77 69 74 63 68 20 6f 6e 20 6e | _non-exhaustive.test.switch.on.n |
| 4a7e0 | 6f 6e 2d 65 78 68 61 75 73 74 69 76 65 20 65 6e 75 6d 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 | on-exhaustive.enum...OK.All.1.te |
| 4a800 | 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 |
| 4a820 | 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 69 64 3d | e>.......................<h2.id= |
| 4a840 | 22 75 6e 69 6f 6e 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 75 6e 69 6f 6e 22 3e 75 6e 69 | "union"><a.href="#toc-union">uni |
| 4a860 | 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 75 6e 69 | on</a>.<a.class="hdr".href="#uni |
| 4a880 | 6f 6e 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 | on">..</a></h2>........<p>...... |
| 4a8a0 | 20 41 20 62 61 72 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | .A.bare.<code><span.class="tok-k |
| 4a8c0 | 77 22 3e 75 6e 69 6f 6e 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 64 65 66 69 6e 65 73 20 61 | w">union</span></code>.defines.a |
| 4a8e0 | 20 73 65 74 20 6f 66 20 70 6f 73 73 69 62 6c 65 20 74 79 70 65 73 20 74 68 61 74 20 61 20 76 61 | .set.of.possible.types.that.a.va |
| 4a900 | 6c 75 65 0a 20 20 20 20 20 20 63 61 6e 20 62 65 20 61 73 20 61 20 6c 69 73 74 20 6f 66 20 66 69 | lue.......can.be.as.a.list.of.fi |
| 4a920 | 65 6c 64 73 2e 20 4f 6e 6c 79 20 6f 6e 65 20 66 69 65 6c 64 20 63 61 6e 20 62 65 20 61 63 74 69 | elds..Only.one.field.can.be.acti |
| 4a940 | 76 65 20 61 74 20 61 20 74 69 6d 65 2e 0a 20 20 20 20 20 20 54 68 65 20 69 6e 2d 6d 65 6d 6f 72 | ve.at.a.time........The.in-memor |
| 4a960 | 79 20 72 65 70 72 65 73 65 6e 74 61 74 69 6f 6e 20 6f 66 20 62 61 72 65 20 75 6e 69 6f 6e 73 20 | y.representation.of.bare.unions. |
| 4a980 | 69 73 20 6e 6f 74 20 67 75 61 72 61 6e 74 65 65 64 2e 0a 20 20 20 20 20 20 42 61 72 65 20 75 6e | is.not.guaranteed........Bare.un |
| 4a9a0 | 69 6f 6e 73 20 63 61 6e 6e 6f 74 20 62 65 20 75 73 65 64 20 74 6f 20 72 65 69 6e 74 65 72 70 72 | ions.cannot.be.used.to.reinterpr |
| 4a9c0 | 65 74 20 6d 65 6d 6f 72 79 2e 20 46 6f 72 20 74 68 61 74 2c 20 75 73 65 20 3c 61 20 68 72 65 66 | et.memory..For.that,.use.<a.href |
| 4a9e0 | 3d 22 23 70 74 72 43 61 73 74 22 3e 40 70 74 72 43 61 73 74 3c 2f 61 3e 2c 0a 20 20 20 20 20 20 | ="#ptrCast">@ptrCast</a>,....... |
| 4aa00 | 6f 72 20 75 73 65 20 61 6e 20 3c 61 20 68 72 65 66 3d 22 23 65 78 74 65 72 6e 2d 75 6e 69 6f 6e | or.use.an.<a.href="#extern-union |
| 4aa20 | 22 3e 65 78 74 65 72 6e 20 75 6e 69 6f 6e 3c 2f 61 3e 20 6f 72 20 61 20 3c 61 20 68 72 65 66 3d | ">extern.union</a>.or.a.<a.href= |
| 4aa40 | 22 23 70 61 63 6b 65 64 2d 75 6e 69 6f 6e 22 3e 70 61 63 6b 65 64 20 75 6e 69 6f 6e 3c 2f 61 3e | "#packed-union">packed.union</a> |
| 4aa60 | 20 77 68 69 63 68 20 68 61 76 65 0a 20 20 20 20 20 20 67 75 61 72 61 6e 74 65 65 64 20 69 6e 2d | .which.have.......guaranteed.in- |
| 4aa80 | 6d 65 6d 6f 72 79 20 6c 61 79 6f 75 74 2e 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 57 | memory.layout........<a.href="#W |
| 4aaa0 | 72 6f 6e 67 2d 55 6e 69 6f 6e 2d 46 69 65 6c 64 2d 41 63 63 65 73 73 22 3e 41 63 63 65 73 73 69 | rong-Union-Field-Access">Accessi |
| 4aac0 | 6e 67 20 74 68 65 20 6e 6f 6e 2d 61 63 74 69 76 65 20 66 69 65 6c 64 3c 2f 61 3e 20 69 73 0a 20 | ng.the.non-active.field</a>.is.. |
| 4aae0 | 20 20 20 20 20 73 61 66 65 74 79 2d 63 68 65 63 6b 65 64 20 3c 61 20 68 72 65 66 3d 22 23 49 6c | .....safety-checked.<a.href="#Il |
| 4ab00 | 6c 65 67 61 6c 2d 42 65 68 61 76 69 6f 72 22 3e 49 6c 6c 65 67 61 6c 20 42 65 68 61 76 69 6f 72 | legal-Behavior">Illegal.Behavior |
| 4ab20 | 3c 2f 61 3e 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c | </a>:.......</p>.......<figure>< |
| 4ab40 | 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 |
| 4ab60 | 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 77 72 6f 6e 67 5f 75 6e 69 6f 6e 5f 61 | .class="file">test_wrong_union_a |
| 4ab80 | 63 63 65 73 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 | ccess.zig</cite></figcaption><pr |
| 4aba0 | 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 |
| 4abc0 | 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= |
| 4abe0 | 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: |
| 4ac00 | 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 |
| 4ac20 | 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- |
| 4ac40 | 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:.< |
| 4ac60 | 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 |
| 4ac80 | 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< |
| 4aca0 | 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 |
| 4acc0 | 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>.{.. |
| 4ace0 | 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 |
| 4ad00 | 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 |
| 4ad20 | 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 |
| 4ad40 | 3e 20 7d 3b 0a 20 20 20 20 70 61 79 6c 6f 61 64 2e 66 6c 6f 61 74 20 3d 20 3c 73 70 61 6e 20 63 | >.};.....payload.float.=.<span.c |
| 4ad60 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 2e 33 34 3c 2f 73 70 61 6e 3e 3b 0a | lass="tok-number">12.34</span>;. |
| 4ad80 | 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>< |
| 4ada0 | 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 |
| 4adc0 | 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 |
| 4ade0 | 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 77 72 6f 6e 67 5f 75 6e 69 6f 6e 5f 61 63 63 65 73 | >zig.test.test_wrong_union_acces |
| 4ae00 | 73 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 77 72 6f 6e 67 5f 75 6e 69 6f 6e | s.zig</kbd>.1/1.test_wrong_union |
| 4ae20 | 5f 61 63 63 65 73 73 2e 74 65 73 74 2e 73 69 6d 70 6c 65 20 75 6e 69 6f 6e 2e 2e 2e 74 68 72 65 | _access.test.simple.union...thre |
| 4ae40 | 61 64 20 31 30 39 35 30 34 32 20 70 61 6e 69 63 3a 20 61 63 63 65 73 73 20 6f 66 20 75 6e 69 6f | ad.1095042.panic:.access.of.unio |
| 4ae60 | 6e 20 66 69 65 6c 64 20 27 66 6c 6f 61 74 27 20 77 68 69 6c 65 20 66 69 65 6c 64 20 27 69 6e 74 | n.field.'float'.while.field.'int |
| 4ae80 | 27 20 69 73 20 61 63 74 69 76 65 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 | '.is.active.<span.class="sgr-1m" |
| 4aea0 | 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f | >/home/andy/dev/zig/doc/langref/ |
| 4aec0 | 74 65 73 74 5f 77 72 6f 6e 67 5f 75 6e 69 6f 6e 5f 61 63 63 65 73 73 2e 7a 69 67 3a 38 3a 31 32 | test_wrong_union_access.zig:8:12 |
| 4aee0 | 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 |
| 4af00 | 31 30 32 63 30 38 33 20 69 6e 20 74 65 73 74 2e 73 69 6d 70 6c 65 20 75 6e 69 6f 6e 20 28 74 65 | 102c083.in.test.simple.union.(te |
| 4af20 | 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 29 3c 2f 73 70 61 6e | st_wrong_union_access.zig)</span |
| 4af40 | 3e 0a 20 20 20 20 70 61 79 6c 6f 61 64 2e 66 6c 6f 61 74 20 3d 20 31 32 2e 33 34 3b 0a 20 20 20 | >.....payload.float.=.12.34;.... |
| 4af60 | 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">^< |
| 4af80 | 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 |
| 4afa0 | 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 63 6f 6d 70 69 6c 65 72 2f 74 65 73 74 | e/andy/dev/zig/lib/compiler/test |
| 4afc0 | 5f 72 75 6e 6e 65 72 2e 7a 69 67 3a 32 31 38 3a 32 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e | _runner.zig:218:25</span>:.<span |
| 4afe0 | 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 31 35 63 64 39 30 20 69 6e 20 6d 61 69 | .class="sgr-2m">0x115cd90.in.mai |
| 4b000 | 6e 54 65 72 6d 69 6e 61 6c 20 28 74 65 73 74 5f 72 75 6e 6e 65 72 2e 7a 69 67 29 3c 2f 73 70 61 | nTerminal.(test_runner.zig)</spa |
| 4b020 | 6e 3e 0a 20 20 20 20 20 20 20 20 69 66 20 28 74 65 73 74 5f 66 6e 2e 66 75 6e 63 28 29 29 20 7c | n>.........if.(test_fn.func()).| |
| 4b040 | 5f 7c 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 | _|.{.........................<sp |
| 4b060 | 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 |
| 4b080 | 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f | n.class="sgr-1m">/home/andy/dev/ |
| 4b0a0 | 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 |
| 4b0c0 | 3a 36 36 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 | :66:28</span>:.<span.class="sgr- |
| 4b0e0 | 32 6d 22 3e 30 78 31 31 35 35 66 62 31 20 69 6e 20 6d 61 69 6e 20 28 74 65 73 74 5f 72 75 6e 6e | 2m">0x1155fb1.in.main.(test_runn |
| 4b100 | 65 72 2e 7a 69 67 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 | er.zig)</span>.........return.ma |
| 4b120 | 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 20 20 20 | inTerminal();................... |
| 4b140 | 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">^ |
| 4b160 | 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 |
| 4b180 | 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 | me/andy/dev/zig/lib/std/start.zi |
| 4b1a0 | 67 3a 36 31 38 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:618:22</span>:.<span.class="sg |
| 4b1c0 | 72 2d 32 6d 22 3e 30 78 31 31 34 66 64 34 64 20 69 6e 20 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e | r-2m">0x114fd4d.in.posixCallMain |
| 4b1e0 | 41 6e 64 45 78 69 74 20 28 73 74 64 2e 7a 69 67 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 | AndExit.(std.zig)</span>........ |
| 4b200 | 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();............... |
| 4b220 | 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">^</ |
| 4b240 | 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 |
| 4b260 | 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a | /andy/dev/zig/lib/std/start.zig: |
| 4b280 | 32 33 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 | 232:5</span>:.<span.class="sgr-2 |
| 4b2a0 | 6d 22 3e 30 78 31 31 34 66 35 65 31 20 69 6e 20 5f 73 74 61 72 74 20 28 73 74 64 2e 7a 69 67 29 | m">0x114f5e1.in._start.(std.zig) |
| 4b2c0 | 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 |
| 4b2e0 | 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 |
| 4b300 | 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= |
| 4b320 | 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 |
| 4b340 | 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.???.(???)</ |
| 4b360 | 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 20 | span>.error:.the.following.test. |
| 4b380 | 63 6f 6d 6d 61 6e 64 20 63 72 61 73 68 65 64 3a 0a 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f | command.crashed:./home/andy/dev/ |
| 4b3a0 | 7a 69 67 2f 2e 7a 69 67 2d 63 61 63 68 65 2f 6f 2f 62 61 34 61 64 36 33 35 32 61 36 32 33 37 63 | zig/.zig-cache/o/ba4ad6352a6237c |
| 4b3c0 | 33 38 31 65 38 66 31 35 63 32 62 34 36 62 63 64 36 2f 74 65 73 74 20 2d 2d 73 65 65 64 3d 30 78 | 381e8f15c2b46bcd6/test.--seed=0x |
| 4b3e0 | 38 62 36 65 65 64 32 38 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a | 8b6eed28.</samp></pre></figure>. |
| 4b400 | 0a 20 20 20 20 20 20 3c 70 3e 59 6f 75 20 63 61 6e 20 61 63 74 69 76 61 74 65 20 61 6e 6f 74 68 | .......<p>You.can.activate.anoth |
| 4b420 | 65 72 20 66 69 65 6c 64 20 62 79 20 61 73 73 69 67 6e 69 6e 67 20 74 68 65 20 65 6e 74 69 72 65 | er.field.by.assigning.the.entire |
| 4b440 | 20 75 6e 69 6f 6e 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 | .union:</p>.......<figure><figca |
| 4b460 | 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 |
| 4b480 | 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 73 69 6d 70 6c 65 5f 75 6e 69 6f 6e 2e 7a 69 67 3c 2f | s="file">test_simple_union.zig</ |
| 4b4a0 | 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 |
| 4b4c0 | 61 6e 20 63 6c 61 73 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 |
| 4b4e0 | 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">@ |
| 4b500 | 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 |
| 4b520 | 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 |
| 4b540 | 61 6e 20 63 6c 61 73 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 |
| 4b560 | 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 |
| 4b580 | 61 6e 20 63 6c 61 73 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 | an.class="tok-kw">const</span>.P |
| 4b5a0 | 61 79 6c 6f 61 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e | ayload.=.<span.class="tok-kw">un |
| 4b5c0 | 69 6f 6e 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 69 6e 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 | ion</span>.{.....int:.<span.clas |
| 4b5e0 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 36 34 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 66 6c 6f | s="tok-type">i64</span>,.....flo |
| 4b600 | 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 36 34 3c 2f | at:.<span.class="tok-type">f64</ |
| 4b620 | 73 70 61 6e 3e 2c 0a 20 20 20 20 62 6f 6f 6c 65 61 6e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | span>,.....boolean:.<span.class= |
| 4b640 | 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 2c 0a 7d 3b 0a 3c 73 70 61 6e | "tok-type">bool</span>,.};.<span |
| 4b660 | 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 |
| 4b680 | 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 69 6d 70 6c 65 20 75 | n.class="tok-str">"simple.u |
| 4b6a0 | 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 6c | nion"</span>.{.....<span.cl |
| 4b6c0 | 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 61 79 6c 6f 61 64 20 | ass="tok-kw">var</span>.payload. |
| 4b6e0 | 3d 20 50 61 79 6c 6f 61 64 7b 20 2e 69 6e 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | =.Payload{..int.=.<span.class="t |
| 4b700 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 20 20 20 20 3c 73 | ok-number">1234</span>.};.....<s |
| 4b720 | 70 61 6e 20 63 6c 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 |
| 4b740 | 70 65 63 74 28 70 61 79 6c 6f 61 64 2e 69 6e 74 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | pect(payload.int.==.<span.class= |
| 4b760 | 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 70 | "tok-number">1234</span>);.....p |
| 4b780 | 61 79 6c 6f 61 64 20 3d 20 50 61 79 6c 6f 61 64 7b 20 2e 66 6c 6f 61 74 20 3d 20 3c 73 70 61 6e | ayload.=.Payload{..float.=.<span |
| 4b7a0 | 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 3e | .class="tok-number">12.34</span> |
| 4b7c0 | 20 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 | .};.....<span.class="tok-kw">try |
| 4b7e0 | 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 70 61 79 6c 6f 61 64 2e 66 6c 6f 61 74 20 3d 3d 20 | </span>.expect(payload.float.==. |
| 4b800 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 2e 33 34 3c 2f | <span.class="tok-number">12.34</ |
| 4b820 | 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>< |
| 4b840 | 66 69 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- |
| 4b860 | 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 |
| 4b880 | 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 73 69 6d 70 6c 65 5f 75 6e | p>$.<kbd>zig.test.test_simple_un |
| 4b8a0 | 69 6f 6e 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 73 69 6d 70 6c 65 5f 75 6e | ion.zig</kbd>.1/1.test_simple_un |
| 4b8c0 | 69 6f 6e 2e 74 65 73 74 2e 73 69 6d 70 6c 65 20 75 6e 69 6f 6e 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 | ion.test.simple.union...OK.All.1 |
| 4b8e0 | 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 |
| 4b900 | 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 6f 72 64 65 72 20 | gure>........<p>.......In.order. |
| 4b920 | 74 6f 20 75 73 65 20 3c 61 20 68 72 65 66 3d 22 23 73 77 69 74 63 68 22 3e 73 77 69 74 63 68 3c | to.use.<a.href="#switch">switch< |
| 4b940 | 2f 61 3e 20 77 69 74 68 20 61 20 75 6e 69 6f 6e 2c 20 69 74 20 6d 75 73 74 20 62 65 20 61 20 3c | /a>.with.a.union,.it.must.be.a.< |
| 4b960 | 61 20 68 72 65 66 3d 22 23 54 61 67 67 65 64 2d 75 6e 69 6f 6e 22 3e 54 61 67 67 65 64 20 75 6e | a.href="#Tagged-union">Tagged.un |
| 4b980 | 69 6f 6e 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 | ion</a>........</p>.......<p>... |
| 4b9a0 | 20 20 20 20 54 6f 20 69 6e 69 74 69 61 6c 69 7a 65 20 61 20 75 6e 69 6f 6e 20 77 68 65 6e 20 74 | ....To.initialize.a.union.when.t |
| 4b9c0 | 68 65 20 74 61 67 20 69 73 20 61 20 3c 61 20 68 72 65 66 3d 22 23 63 6f 6d 70 74 69 6d 65 22 3e | he.tag.is.a.<a.href="#comptime"> |
| 4b9e0 | 63 6f 6d 70 74 69 6d 65 3c 2f 61 3e 2d 6b 6e 6f 77 6e 20 6e 61 6d 65 2c 20 73 65 65 20 3c 61 20 | comptime</a>-known.name,.see.<a. |
| 4ba00 | 68 72 65 66 3d 22 23 75 6e 69 6f 6e 49 6e 69 74 22 3e 40 75 6e 69 6f 6e 49 6e 69 74 3c 2f 61 3e | href="#unionInit">@unionInit</a> |
| 4ba20 | 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 54 61 67 67 | ........</p>........<h3.id="Tagg |
| 4ba40 | 65 64 2d 75 6e 69 6f 6e 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 54 61 67 67 65 64 2d 75 | ed-union"><a.href="#toc-Tagged-u |
| 4ba60 | 6e 69 6f 6e 22 3e 54 61 67 67 65 64 20 75 6e 69 6f 6e 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d | nion">Tagged.union</a>.<a.class= |
| 4ba80 | 22 68 64 72 22 20 68 72 65 66 3d 22 23 54 61 67 67 65 64 2d 75 6e 69 6f 6e 22 3e c2 a7 3c 2f 61 | "hdr".href="#Tagged-union">..</a |
| 4baa0 | 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 55 6e 69 6f 6e 73 20 63 61 6e 20 62 65 20 64 | ></h3>........<p>Unions.can.be.d |
| 4bac0 | 65 63 6c 61 72 65 64 20 77 69 74 68 20 61 6e 20 65 6e 75 6d 20 74 61 67 20 74 79 70 65 2e 0a 20 | eclared.with.an.enum.tag.type... |
| 4bae0 | 20 20 20 20 20 54 68 69 73 20 74 75 72 6e 73 20 74 68 65 20 75 6e 69 6f 6e 20 69 6e 74 6f 20 61 | .....This.turns.the.union.into.a |
| 4bb00 | 20 3c 65 6d 3e 74 61 67 67 65 64 3c 2f 65 6d 3e 20 75 6e 69 6f 6e 2c 20 77 68 69 63 68 20 6d 61 | .<em>tagged</em>.union,.which.ma |
| 4bb20 | 6b 65 73 20 69 74 20 65 6c 69 67 69 62 6c 65 0a 20 20 20 20 20 20 74 6f 20 75 73 65 20 77 69 74 | kes.it.eligible.......to.use.wit |
| 4bb40 | 68 20 3c 61 20 68 72 65 66 3d 22 23 73 77 69 74 63 68 22 3e 73 77 69 74 63 68 3c 2f 61 3e 20 65 | h.<a.href="#switch">switch</a>.e |
| 4bb60 | 78 70 72 65 73 73 69 6f 6e 73 2e 0a 20 20 20 20 20 20 54 61 67 67 65 64 20 75 6e 69 6f 6e 73 20 | xpressions........Tagged.unions. |
| 4bb80 | 63 6f 65 72 63 65 20 74 6f 20 74 68 65 69 72 20 74 61 67 20 74 79 70 65 3a 20 3c 61 20 68 72 65 | coerce.to.their.tag.type:.<a.hre |
| 4bba0 | 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 45 6e 75 | f="#Type-Coercion-Unions-and-Enu |
| 4bbc0 | 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 20 45 6e | ms">Type.Coercion:.Unions.and.En |
| 4bbe0 | 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 66 69 67 75 72 | ums</a>........</p>.......<figur |
| 4bc00 | 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 |
| 4bc20 | 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 74 61 67 67 65 64 5f 75 6e 69 | ite.class="file">test_tagged_uni |
| 4bc40 | 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>< |
| 4bc60 | 63 6f 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< |
| 4bc80 | 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 |
| 4bca0 | 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 |
| 4bcc0 | 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 |
| 4bce0 | 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< |
| 4bd00 | 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 |
| 4bd20 | 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< |
| 4bd40 | 2f 73 70 61 6e 3e 20 43 6f 6d 70 6c 65 78 54 79 70 65 54 61 67 20 3d 20 3c 73 70 61 6e 20 63 6c | /span>.ComplexTypeTag.=.<span.cl |
| 4bd60 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6e 75 6d 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 6f | ass="tok-kw">enum</span>.{.....o |
| 4bd80 | 6b 2c 0a 20 20 20 20 6e 6f 74 5f 6f 6b 2c 0a 7d 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | k,.....not_ok,.};.<span.class="t |
| 4bda0 | 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 43 6f 6d 70 6c 65 78 54 79 70 65 20 | ok-kw">const</span>.ComplexType. |
| 4bdc0 | 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 |
| 4bde0 | 61 6e 3e 28 43 6f 6d 70 6c 65 78 54 79 70 65 54 61 67 29 20 7b 0a 20 20 20 20 6f 6b 3a 20 3c 73 | an>(ComplexTypeTag).{.....ok:.<s |
| 4be00 | 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 0a | pan.class="tok-type">u8</span>,. |
| 4be20 | 20 20 20 20 6e 6f 74 5f 6f 6b 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | ....not_ok:.<span.class="tok-typ |
| 4be40 | 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | e">void</span>,.};..<span.class= |
| 4be60 | 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 |
| 4be80 | 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 77 69 74 63 68 20 6f 6e 20 74 61 67 67 65 | ="tok-str">"switch.on.tagge |
| 4bea0 | 64 20 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 | d.union"</span>.{.....<span |
| 4bec0 | 20 63 6c 61 73 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.= |
| 4bee0 | 20 43 6f 6d 70 6c 65 78 54 79 70 65 7b 20 2e 6f 6b 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | .ComplexType{..ok.=.<span.class= |
| 4bf00 | 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 73 | "tok-number">42</span>.};.....<s |
| 4bf20 | 70 61 6e 20 63 6c 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 |
| 4bf40 | 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">@ |
| 4bf60 | 61 73 3c 2f 73 70 61 6e 3e 28 43 6f 6d 70 6c 65 78 54 79 70 65 54 61 67 2c 20 63 29 20 3d 3d 20 | as</span>(ComplexTypeTag,.c).==. |
| 4bf80 | 43 6f 6d 70 6c 65 78 54 79 70 65 54 61 67 2e 6f 6b 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 | ComplexTypeTag.ok);......<span.c |
| 4bfa0 | 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 63 29 20 | lass="tok-kw">switch</span>.(c). |
| 4bfc0 | 7b 0a 20 20 20 20 20 20 20 20 2e 6f 6b 20 3d 26 67 74 3b 20 7c 76 61 6c 75 65 7c 20 3c 73 70 61 | {..........ok.=>.|value|.<spa |
| 4bfe0 | 6e 20 63 6c 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 |
| 4c000 | 63 74 28 76 61 6c 75 65 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | ct(value.==.<span.class="tok-num |
| 4c020 | 62 65 72 22 3e 34 32 3c 2f 73 70 61 6e 3e 29 2c 0a 20 20 20 20 20 20 20 20 2e 6e 6f 74 5f 6f 6b | ber">42</span>),..........not_ok |
| 4c040 | 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 72 65 | .=>.<span.class="tok-kw">unre |
| 4c060 | 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 7d 0a 7d 0a 0a 3c 73 70 61 6e 20 63 | achable</span>,.....}.}..<span.c |
| 4c080 | 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. |
| 4c0a0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 67 65 74 20 74 61 67 20 74 79 | class="tok-str">"get.tag.ty |
| 4c0c0 | 70 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | pe"</span>.{.....<span.clas |
| 4c0e0 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 73 74 64 | s="tok-kw">try</span>.expect(std |
| 4c100 | 2e 6d 65 74 61 2e 54 61 67 28 43 6f 6d 70 6c 65 78 54 79 70 65 29 20 3d 3d 20 43 6f 6d 70 6c 65 | .meta.Tag(ComplexType).==.Comple |
| 4c120 | 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 3c 2f 66 69 67 75 72 | xTypeTag);.}</code></pre></figur |
| 4c140 | 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 |
| 4c160 | 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>< |
| 4c180 | 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 74 61 67 67 65 64 | samp>$.<kbd>zig.test.test_tagged |
| 4c1a0 | 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 5f 74 61 67 67 65 64 | _union.zig</kbd>.1/2.test_tagged |
| 4c1c0 | 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 20 75 6e 69 | _union.test.switch.on.tagged.uni |
| 4c1e0 | 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 6e 69 6f 6e 2e 74 65 | on...OK.2/2.test_tagged_union.te |
| 4c200 | 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 32 20 74 65 73 74 73 | st.get.tag.type...OK.All.2.tests |
| 4c220 | 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>. |
| 4c240 | 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 69 66 79 20 74 68 65 | .......<p>In.order.to.modify.the |
| 4c260 | 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 6e 20 69 6e 20 61 20 | .payload.of.a.tagged.union.in.a. |
| 4c280 | 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 70 6c 61 63 65 20 61 | switch.expression,.......place.a |
| 4c2a0 | 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 65 20 76 61 72 69 61 | .<code>*</code>.before.the.varia |
| 4c2c0 | 62 6c 65 20 6e 61 6d 65 20 74 6f 20 6d 61 6b 65 20 69 74 20 61 20 70 6f 69 6e 74 65 72 3a 0a 20 | ble.name.to.make.it.a.pointer:.. |
| 4c2e0 | 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 |
| 4c300 | 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= |
| 4c320 | 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 5f 74 61 67 67 65 64 | "file">test_switch_modify_tagged |
| 4c340 | 5f 75 6e 69 6f 6e 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 | _union.zig</cite></figcaption><p |
| 4c360 | 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 |
| 4c380 | 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 |
| 4c3a0 | 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. |
| 4c3c0 | 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"< |
| 4c3e0 | 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 |
| 4c400 | 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. |
| 4c420 | 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 6f | expect;..<span.class="tok-kw">co |
| 4c440 | 6e 73 74 3c 2f 73 70 61 6e 3e 20 43 6f 6d 70 6c 65 78 54 79 70 65 54 61 67 20 3d 20 3c 73 70 61 | nst</span>.ComplexTypeTag.=.<spa |
| 4c460 | 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>.{.. |
| 4c480 | 20 20 20 6f 6b 2c 0a 20 20 20 20 6e 6f 74 5f 6f 6b 2c 0a 7d 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 | ...ok,.....not_ok,.};.<span.clas |
| 4c4a0 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 43 6f 6d 70 6c 65 78 54 | s="tok-kw">const</span>.ComplexT |
| 4c4c0 | 79 70 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 69 6f 6e | ype.=.<span.class="tok-kw">union |
| 4c4e0 | 3c 2f 73 70 61 6e 3e 28 43 6f 6d 70 6c 65 78 54 79 70 65 54 61 67 29 20 7b 0a 20 20 20 20 6f 6b | </span>(ComplexTypeTag).{.....ok |
| 4c500 | 3a 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 |
| 4c520 | 6e 3e 2c 0a 20 20 20 20 6e 6f 74 5f 6f 6b 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | n>,.....not_ok:.<span.class="tok |
| 4c540 | 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c | -type">void</span>,.};..<span.cl |
| 4c560 | 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 |
| 4c580 | 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 74 61 67 67 | lass="tok-str">"modify.tagg |
| 4c5a0 | 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 2f 73 70 61 6e 3e 20 | ed.union.in.switch"</span>. |
| 4c5c0 | 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</ |
| 4c5e0 | 73 70 61 6e 3e 20 63 20 3d 20 43 6f 6d 70 6c 65 78 54 79 70 65 7b 20 2e 6f 6b 20 3d 20 3c 73 70 | span>.c.=.ComplexType{..ok.=.<sp |
| 4c600 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 32 3c 2f 73 70 61 6e 3e 20 | an.class="tok-number">42</span>. |
| 4c620 | 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 73 77 69 | };......<span.class="tok-kw">swi |
| 4c640 | 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 43 6f 6d 70 6c 65 78 | tch</span>.(c).{.........Complex |
| 4c660 | 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 20 76 61 6c 75 65 2e | TypeTag.ok.=>.|*value|.value. |
| 4c680 | 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< |
| 4c6a0 | 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 70 65 54 61 67 2e 6e | /span>,.........ComplexTypeTag.n |
| 4c6c0 | 6f 74 5f 6f 6b 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | ot_ok.=>.<span.class="tok-kw" |
| 4c6e0 | 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 0a 20 20 20 20 | >unreachable</span>,.....}...... |
| 4c700 | 3c 73 70 61 6e 20 63 6c 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>. |
| 4c720 | 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 73 3d 22 74 6f 6b 2d | expect(c.ok.==.<span.class="tok- |
| 4c740 | 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 64 65 3e 3c 2f 70 72 | number">43</span>);.}</code></pr |
| 4c760 | 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 |
| 4c780 | 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 |
| 4c7a0 | 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 |
| 4c7c0 | 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 6e 69 6f 6e 2e 7a 69 | st_switch_modify_tagged_union.zi |
| 4c7e0 | 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 6f 64 69 66 79 5f 74 | g</kbd>.1/1.test_switch_modify_t |
| 4c800 | 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 61 67 67 65 64 20 75 | agged_union.test.modify.tagged.u |
| 4c820 | 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 20 74 65 73 74 73 20 | nion.in.switch...OK.All.1.tests. |
| 4c840 | 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>.. |
| 4c860 | 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 55 6e 69 6f 6e 73 20 63 61 6e 20 62 65 20 6d 61 | ......<p>.......Unions.can.be.ma |
| 4c880 | 64 65 20 74 6f 20 69 6e 66 65 72 20 74 68 65 20 65 6e 75 6d 20 74 61 67 20 74 79 70 65 2e 0a 20 | de.to.infer.the.enum.tag.type... |
| 4c8a0 | 20 20 20 20 20 46 75 72 74 68 65 72 2c 20 75 6e 69 6f 6e 73 20 63 61 6e 20 68 61 76 65 20 6d 65 | .....Further,.unions.can.have.me |
| 4c8c0 | 74 68 6f 64 73 20 6a 75 73 74 20 6c 69 6b 65 20 73 74 72 75 63 74 73 20 61 6e 64 20 65 6e 75 6d | thods.just.like.structs.and.enum |
| 4c8e0 | 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 69 67 | s........</p>.......<figure><fig |
| 4c900 | 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 |
| 4c920 | 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 68 6f 64 2e 7a 69 67 | ass="file">test_union_method.zig |
| 4c940 | 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>< |
| 4c960 | 73 70 61 6e 20 63 6c 61 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> |
| 4c980 | 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" |
| 4c9a0 | 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 |
| 4c9c0 | 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>);.< |
| 4c9e0 | 73 70 61 6e 20 63 6c 61 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> |
| 4ca00 | 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;..< |
| 4ca20 | 73 70 61 6e 20 63 6c 61 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> |
| 4ca40 | 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 6f 6b 2d 6b 77 22 3e | .Variant.=.<span.class="tok-kw"> |
| 4ca60 | 75 6e 69 6f 6e 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | union</span>(<span.class="tok-kw |
| 4ca80 | 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 20 3c 73 70 61 6e 20 | ">enum</span>).{.....int:.<span. |
| 4caa0 | 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>,.... |
| 4cac0 | 20 62 6f 6f 6c 65 61 6e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 | .boolean:.<span.class="tok-type" |
| 4cae0 | 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 63 6c 61 73 73 3d 22 | >bool</span>,......<span.class=" |
| 4cb00 | 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 62 65 20 6f 6d 69 74 | tok-comment">//.void.can.be.omit |
| 4cb20 | 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 61 67 20 74 79 70 65 | ted.when.inferring.enum.tag.type |
| 4cb40 | 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 73 70 61 6e 20 63 6c | .</span>.....none,......<span.cl |
| 4cb60 | 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 |
| 4cb80 | 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 28 73 65 6c 66 3a 20 | ss="tok-fn">truthy</span>(self:. |
| 4cba0 | 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 2d 74 79 70 65 22 3e | Variant).<span.class="tok-type"> |
| 4cbc0 | 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | bool</span>.{.........<span.clas |
| 4cbe0 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 | s="tok-kw">return</span>.<span.c |
| 4cc00 | 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 73 65 6c | lass="tok-kw">switch</span>.(sel |
| 4cc20 | 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 69 6e 74 20 3d 26 67 | f).{.............Variant.int.=&g |
| 4cc40 | 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 20 63 6c 61 73 73 3d | t;.|x_int|.x_int.!=.<span.class= |
| 4cc60 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 20 | "tok-number">0</span>,.......... |
| 4cc80 | 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 7c 78 5f 62 6f 6f 6c | ...Variant.boolean.=>.|x_bool |
| 4cca0 | 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 69 61 6e 74 2e 6e 6f | |.x_bool,.............Variant.no |
| 4ccc0 | 6e 65 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e | ne.=>.<span.class="tok-null"> |
| 4cce0 | 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 20 20 20 20 7d 0a 7d | false</span>,.........};.....}.} |
| 4cd00 | 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 |
| 4cd20 | 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">" |
| 4cd40 | 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 20 7b 0a 20 20 20 20 | union.method"</span>.{..... |
| 4cd60 | 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>. |
| 4cd80 | 76 31 3a 20 56 61 72 69 61 6e 74 20 3d 20 2e 7b 20 2e 69 6e 74 20 3d 20 3c 73 70 61 6e 20 63 6c | v1:.Variant.=..{..int.=.<span.cl |
| 4cda0 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 20 20 20 | ass="tok-number">1</span>.};.... |
| 4cdc0 | 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> |
| 4cde0 | 20 76 32 3a 20 56 61 72 69 61 6e 74 20 3d 20 2e 7b 20 2e 62 6f 6f 6c 65 61 6e 20 3d 20 3c 73 70 | .v2:.Variant.=..{..boolean.=.<sp |
| 4ce00 | 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> |
| 4ce20 | 20 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 | .};.....<span.class="tok-kw">var |
| 4ce40 | 3c 2f 73 70 61 6e 3e 20 76 33 3a 20 56 61 72 69 61 6e 74 20 3d 20 2e 6e 6f 6e 65 3b 0a 0a 20 20 | </span>.v3:.Variant.=..none;.... |
| 4ce60 | 20 20 3c 73 70 61 6e 20 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 |
| 4ce80 | 3e 20 65 78 70 65 63 74 28 76 31 2e 74 72 75 74 68 79 28 29 29 3b 0a 20 20 20 20 3c 73 70 61 6e | >.expect(v1.truthy());.....<span |
| 4cea0 | 20 63 6c 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 |
| 4cec0 | 74 28 21 76 32 2e 74 72 75 74 68 79 28 29 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | t(!v2.truthy());.....<span.class |
| 4cee0 | 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 76 33 2e | ="tok-kw">try</span>.expect(!v3. |
| 4cf00 | 74 72 75 74 68 79 28 29 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 | truthy());.}</code></pre></figur |
| 4cf20 | 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 |
| 4cf40 | 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>< |
| 4cf60 | 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 75 6e 69 6f 6e 5f | samp>$.<kbd>zig.test.test_union_ |
| 4cf80 | 6d 65 74 68 6f 64 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 75 6e 69 6f 6e 5f | method.zig</kbd>.1/1.test_union_ |
| 4cfa0 | 6d 65 74 68 6f 64 2e 74 65 73 74 2e 75 6e 69 6f 6e 20 6d 65 74 68 6f 64 2e 2e 2e 4f 4b 0a 41 6c | method.test.union.method...OK.Al |
| 4cfc0 | 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>< |
| 4cfe0 | 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 6e 69 6f 6e 73 | /figure>........<p>.......Unions |
| 4d000 | 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 79 70 65 73 20 63 61 | .with.inferred.enum.tag.types.ca |
| 4d020 | 6e 20 61 6c 73 6f 20 61 73 73 69 67 6e 20 6f 72 64 69 6e 61 6c 20 76 61 6c 75 65 73 20 74 6f 20 | n.also.assign.ordinal.values.to. |
| 4d040 | 74 68 65 69 72 20 69 6e 66 65 72 72 65 64 20 74 61 67 2e 0a 20 20 20 20 20 20 54 68 69 73 20 72 | their.inferred.tag........This.r |
| 4d060 | 65 71 75 69 72 65 73 20 74 68 65 20 74 61 67 20 74 6f 20 73 70 65 63 69 66 79 20 61 6e 20 65 78 | equires.the.tag.to.specify.an.ex |
| 4d080 | 70 6c 69 63 69 74 20 69 6e 74 65 67 65 72 20 74 79 70 65 2e 0a 20 20 20 20 20 20 3c 61 20 68 72 | plicit.integer.type........<a.hr |
| 4d0a0 | 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 6d 3c 2f | ef="#intFromEnum">@intFromEnum</ |
| 4d0c0 | 61 3e 20 63 61 6e 20 62 65 20 75 73 65 64 20 74 6f 20 61 63 63 65 73 73 20 74 68 65 20 6f 72 64 | a>.can.be.used.to.access.the.ord |
| 4d0e0 | 69 6e 61 6c 20 76 61 6c 75 65 20 63 6f 72 72 65 73 70 6f 6e 64 69 6e 67 20 74 6f 20 74 68 65 20 | inal.value.corresponding.to.the. |
| 4d100 | 61 63 74 69 76 65 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 | active.field........</p>.......< |
| 4d120 | 66 69 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 |
| 4d140 | 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 74 61 67 67 65 | p"><cite.class="file">test_tagge |
| 4d160 | 64 5f 75 6e 69 6f 6e 5f 77 69 74 68 5f 74 61 67 5f 76 61 6c 75 65 73 2e 7a 69 67 3c 2f 63 69 74 | d_union_with_tag_values.zig</cit |
| 4d180 | 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. |
| 4d1a0 | 63 6c 61 73 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. |
| 4d1c0 | 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 |
| 4d1e0 | 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" |
| 4d200 | 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. |
| 4d220 | 63 6c 61 73 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 |
| 4d240 | 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. |
| 4d260 | 63 6c 61 73 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 61 67 67 | class="tok-kw">const</span>.Tagg |
| 4d280 | 65 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 69 6f 6e 3c | ed.=.<span.class="tok-kw">union< |
| 4d2a0 | 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 6e 75 6d | /span>(<span.class="tok-kw">enum |
| 4d2c0 | 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 | </span>(<span.class="tok-type">u |
| 4d2e0 | 33 32 3c 2f 73 70 61 6e 3e 29 29 20 7b 0a 20 20 20 20 69 6e 74 3a 20 3c 73 70 61 6e 20 63 6c 61 | 32</span>)).{.....int:.<span.cla |
| 4d300 | 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 61 6e | ss="tok-type">i64</span>.=.<span |
| 4d320 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 3c 2f 73 70 61 6e 3e 2c 0a | .class="tok-number">123</span>,. |
| 4d340 | 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 74 79 | ....boolean:.<span.class="tok-ty |
| 4d360 | 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | pe">bool</span>.=.<span.class="t |
| 4d380 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 36 37 3c 2f 73 70 61 6e 3e 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 | ok-number">67</span>,.};..<span. |
| 4d3a0 | 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 |
| 4d3c0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 74 61 67 20 76 61 6c 75 65 | .class="tok-str">"tag.value |
| 4d3e0 | 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 |
| 4d400 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 69 6e 74 3a 20 54 61 67 67 | ="tok-kw">const</span>.int:.Tagg |
| 4d420 | 65 64 20 3d 20 2e 7b 20 2e 69 6e 74 20 3d 20 2d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ed.=..{..int.=.-<span.class="tok |
| 4d440 | 2d 6e 75 6d 62 65 72 22 3e 34 30 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 | -number">40</span>.};.....<span. |
| 4d460 | 63 6c 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 |
| 4d480 | 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6e 74 46 | (<span.class="tok-builtin">@intF |
| 4d4a0 | 72 6f 6d 45 6e 75 6d 3c 2f 73 70 61 6e 3e 28 69 6e 74 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 | romEnum</span>(int).==.<span.cla |
| 4d4c0 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 20 20 | ss="tok-number">123</span>);.... |
| 4d4e0 | 20 20 3c 73 70 61 6e 20 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 |
| 4d500 | 61 6e 3e 20 62 6f 6f 6c 65 61 6e 3a 20 54 61 67 67 65 64 20 3d 20 2e 7b 20 2e 62 6f 6f 6c 65 61 | an>.boolean:.Tagged.=..{..boolea |
| 4d520 | 6e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 | n.=.<span.class="tok-null">false |
| 4d540 | 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- |
| 4d560 | 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 |
| 4d580 | 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6e 74 46 72 6f 6d 45 6e 75 6d 3c 2f 73 70 | s="tok-builtin">@intFromEnum</sp |
| 4d5a0 | 61 6e 3e 28 62 6f 6f 6c 65 61 6e 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | an>(boolean).==.<span.class="tok |
| 4d5c0 | 2d 6e 75 6d 62 65 72 22 3e 36 37 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 | -number">67</span>);.}</code></p |
| 4d5e0 | 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. |
| 4d600 | 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 |
| 4d620 | 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 |
| 4d640 | 65 73 74 5f 74 61 67 67 65 64 5f 75 6e 69 6f 6e 5f 77 69 74 68 5f 74 61 67 5f 76 61 6c 75 65 73 | est_tagged_union_with_tag_values |
| 4d660 | 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 74 61 67 67 65 64 5f 75 6e 69 6f 6e | .zig</kbd>.1/1.test_tagged_union |
| 4d680 | 5f 77 69 74 68 5f 74 61 67 5f 76 61 6c 75 65 73 2e 74 65 73 74 2e 74 61 67 20 76 61 6c 75 65 73 | _with_tag_values.test.tag.values |
| 4d6a0 | 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 |
| 4d6c0 | 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>..... |
| 4d6e0 | 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 61 6d 65 3c 2f 61 | ..<a.href="#tagName">@tagName</a |
| 4d700 | 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 3c 61 20 68 72 65 | >.can.be.used.to.return.a.<a.hre |
| 4d720 | 66 3d 22 23 63 6f 6d 70 74 69 6d 65 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 61 3e 0a 20 20 20 20 20 | f="#comptime">comptime</a>...... |
| 4d740 | 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 6e 75 6d 62 65 72 | .<code>[:<span.class="tok-number |
| 4d760 | 22 3e 30 3c 2f 73 70 61 6e 3e 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | ">0</span>]<span.class="tok-kw"> |
| 4d780 | 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 |
| 4d7a0 | 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 76 61 6c 75 65 20 72 65 70 72 65 | pe">u8</span></code>.value.repre |
| 4d7c0 | 73 65 6e 74 69 6e 67 20 74 68 65 20 66 69 65 6c 64 20 6e 61 6d 65 3a 0a 20 20 20 20 20 20 3c 2f | senting.the.field.name:.......</ |
| 4d7e0 | 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 |
| 4d800 | 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"> |
| 4d820 | 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 69 67 63 61 70 74 | test_tagName.zig</cite></figcapt |
| 4d840 | 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- |
| 4d860 | 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 |
| 4d880 | 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>( |
| 4d8a0 | 3c 73 70 61 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& |
| 4d8c0 | 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- |
| 4d8e0 | 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 73 74 64 2e 74 65 | kw">const</span>.expect.=.std.te |
| 4d900 | 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- |
| 4d920 | 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 3c 73 70 61 6e 20 | kw">const</span>.Small2.=.<span. |
| 4d940 | 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 3c 73 70 61 | class="tok-kw">union</span>(<spa |
| 4d960 | 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 29 20 7b 0a | n.class="tok-kw">enum</span>).{. |
| 4d980 | 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 69 33 | ....a:.<span.class="tok-type">i3 |
| 4d9a0 | 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 3d 22 74 6f | 2</span>,.....b:.<span.class="to |
| 4d9c0 | 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 3a 20 3c 73 70 61 | k-type">bool</span>,.....c:.<spa |
| 4d9e0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 0a 7d 3b | n.class="tok-type">u8</span>,.}; |
| 4da00 | 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 |
| 4da20 | 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 74 | >.<span.class="tok-str">"@t |
| 4da40 | 61 67 4e 61 6d 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 | agName"</span>.{.....<span. |
| 4da60 | 63 6c 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 |
| 4da80 | 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 |
| 4daa0 | 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- |
| 4dac0 | 62 75 69 6c 74 69 6e 22 3e 40 74 61 67 4e 61 6d 65 3c 2f 73 70 61 6e 3e 28 53 6d 61 6c 6c 32 2e | builtin">@tagName</span>(Small2. |
| 4dae0 | 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 26 71 75 6f 74 3b | a),.<span.class="tok-str">" |
| 4db00 | 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 3c 2f 70 72 65 3e | a"</span>));.}</code></pre> |
| 4db20 | 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 |
| 4db40 | 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 |
| 4db60 | 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 |
| 4db80 | 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 74 5f 74 61 67 4e | _tagName.zig</kbd>.1/1.test_tagN |
| 4dba0 | 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 20 31 20 74 65 73 | ame.test.@tagName...OK.All.1.tes |
| 4dbc0 | 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 |
| 4dbe0 | 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 74 65 72 6e 2d | >................<h3.id="extern- |
| 4dc00 | 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 6e 2d 75 6e 69 6f | union"><a.href="#toc-extern-unio |
| 4dc20 | 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 73 73 3d 22 68 64 | n">extern.union</a>.<a.class="hd |
| 4dc40 | 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 3c 2f 61 3e 3c 2f | r".href="#extern-union">..</a></ |
| 4dc60 | 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 6f 64 65 3e 3c 73 | h3>........<p>.......An.<code><s |
| 4dc80 | 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> |
| 4dca0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 69 6f 6e 3c 2f 73 70 61 | .<span.class="tok-kw">union</spa |
| 4dcc0 | 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 74 20 67 75 61 72 | n></code>.has.memory.layout.guar |
| 4dce0 | 61 6e 74 65 65 64 20 74 6f 20 62 65 20 63 6f 6d 70 61 74 69 62 6c 65 20 77 69 74 68 0a 20 20 20 | anteed.to.be.compatible.with.... |
| 4dd00 | 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 20 3c 2f 70 3e 0a | ...the.target.C.ABI........</p>. |
| 4dd20 | 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>< |
| 4dd40 | 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 74 65 72 6e 20 73 | a.href="#extern-struct">extern.s |
| 4dd60 | 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 20 20 0a 0a 20 20 | truct</a></li>.</ul>............ |
| 4dd80 | 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 3c 61 20 68 72 65 | ....<h3.id="packed-union"><a.hre |
| 4dda0 | 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 65 64 20 75 6e 69 | f="#toc-packed-union">packed.uni |
| 4ddc0 | 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 70 61 63 | on</a>.<a.class="hdr".href="#pac |
| 4dde0 | 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 20 20 20 20 3c 70 | ked-union">..</a></h3>........<p |
| 4de00 | 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 6b 77 22 3e 70 61 | >A.<code><span.class="tok-kw">pa |
| 4de20 | 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" |
| 4de40 | 3e 75 6e 69 6f 6e 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 68 61 73 20 77 65 6c 6c 2d 64 65 | >union</span></code>.has.well-de |
| 4de60 | 66 69 6e 65 64 20 69 6e 2d 6d 65 6d 6f 72 79 20 6c 61 79 6f 75 74 20 61 6e 64 20 69 73 20 65 6c | fined.in-memory.layout.and.is.el |
| 4de80 | 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 61 20 3c 61 20 68 | igible...........to.be.in.a.<a.h |
| 4dea0 | 72 65 66 3d 22 23 70 61 63 6b 65 64 2d 73 74 72 75 63 74 22 3e 70 61 63 6b 65 64 20 73 74 72 75 | ref="#packed-struct">packed.stru |
| 4dec0 | 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 3c 68 33 20 69 64 | ct</a>.</p>...............<h3.id |
| 4dee0 | 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 22 3e 3c 61 20 68 | ="Anonymous-Union-Literals"><a.h |
| 4df00 | 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 4c 69 74 65 72 61 | ref="#toc-Anonymous-Union-Litera |
| 4df20 | 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 6c 73 3c 2f 61 3e | ls">Anonymous.Union.Literals</a> |
| 4df40 | 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 6e 79 6d 6f 75 73 | .<a.class="hdr".href="#Anonymous |
| 4df60 | 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 33 3e 0a 0a 20 20 | -Union-Literals">..</a></h3>.... |
| 4df80 | 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 2d 53 74 72 75 63 | ....<p><a.href="#Anonymous-Struc |
| 4dfa0 | 74 2d 4c 69 74 65 72 61 6c 73 22 3e 41 6e 6f 6e 79 6d 6f 75 73 20 53 74 72 75 63 74 20 4c 69 74 | t-Literals">Anonymous.Struct.Lit |
| 4dfc0 | 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 65 64 20 74 6f 20 | erals</a>.syntax.can.be.used.to. |
| 4dfe0 | 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 73 70 65 63 69 66 | initialize.unions.without.specif |
| 4e000 | 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 20 20 20 20 20 3c | ying.......the.type:</p>.......< |
| 4e020 | 66 69 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 |
| 4e040 | 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 6e 6f 6e 79 | p"><cite.class="file">test_anony |
| 4e060 | 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 63 61 70 74 69 6f | mous_union.zig</cite></figcaptio |
| 4e080 | 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 |
| 4e0a0 | 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 |
| 4e0c0 | 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 |
| 4e0e0 | 70 61 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 |
| 4e100 | 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 |
| 4e120 | 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 |
| 4e140 | 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 |
| 4e160 | 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 4e 75 6d 62 65 72 20 3d 20 3c 73 70 61 6e 20 63 6c | ">const</span>.Number.=.<span.cl |
| 4e180 | 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 20 | ass="tok-kw">union</span>.{..... |
| 4e1a0 | 69 6e 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c | int:.<span.class="tok-type">i32< |
| 4e1c0 | 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 66 6c 6f 61 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | /span>,.....float:.<span.class=" |
| 4e1e0 | 74 6f 6b 2d 74 79 70 65 22 3e 66 36 34 3c 2f 73 70 61 6e 3e 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 | tok-type">f64</span>,.};..<span. |
| 4e200 | 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 |
| 4e220 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 61 6e 6f 6e 79 6d 6f 75 73 | .class="tok-str">"anonymous |
| 4e240 | 20 75 6e 69 6f 6e 20 6c 69 74 65 72 61 6c 20 73 79 6e 74 61 78 26 71 75 6f 74 3b 3c 2f 73 70 61 | .union.literal.syntax"</spa |
| 4e260 | 6e 3e 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 |
| 4e280 | 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 2e 69 6e 74 20 3d | nst</span>.i:.Number.=..{..int.= |
| 4e2a0 | 20 3c 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 |
| 4e2c0 | 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"> |
| 4e2e0 | 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 72 28 29 3b 0a 20 | const</span>.f.=.makeNumber();.. |
| 4e300 | 20 20 20 3c 73 70 61 6e 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 |
| 4e320 | 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 6c 61 73 73 3d 22 | n>.expect(i.int.==.<span.class=" |
| 4e340 | 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 20 20 3c 73 70 61 | tok-number">42</span>);.....<spa |
| 4e360 | 6e 20 63 6c 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 |
| 4e380 | 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 22 74 6f 6b 2d 6e | ct(f.float.==.<span.class="tok-n |
| 4e3a0 | 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 73 70 61 6e 20 63 | umber">12.34</span>);.}..<span.c |
| 4e3c0 | 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 |
| 4e3e0 | 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 70 61 6e 3e 28 29 | ass="tok-fn">makeNumber</span>() |
| 4e400 | 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 22 74 6f 6b 2d 6b | .Number.{.....<span.class="tok-k |
| 4e420 | 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 20 3d 20 3c 73 70 | w">return</span>..{..float.=.<sp |
| 4e440 | 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 |
| 4e460 | 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 72 65 3e 3c 66 69 | n>.};.}</code></pre></figure><fi |
| 4e480 | 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 |
| 4e4a0 | 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> |
| 4e4c0 | 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 6d 6f 75 73 5f 75 | $.<kbd>zig.test.test_anonymous_u |
| 4e4e0 | 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 6f 6e 79 6d 6f 75 | nion.zig</kbd>.1/1.test_anonymou |
| 4e500 | 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 6f 6e 20 6c 69 74 | s_union.test.anonymous.union.lit |
| 4e520 | 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 74 73 20 70 61 73 | eral.syntax...OK.All.1.tests.pas |
| 4e540 | 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>..... |
| 4e560 | 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 6f 70 61 71 75 | ...................<h2.id="opaqu |
| 4e580 | 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 70 61 71 75 65 3c | e"><a.href="#toc-opaque">opaque< |
| 4e5a0 | 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 6f 70 61 71 75 65 | /a>.<a.class="hdr".href="#opaque |
| 4e5c0 | 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 3c | ">..</a></h2>........<p>.......< |
| 4e5e0 | 63 6f 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 61 71 75 65 | code><span.class="tok-kw">opaque |
| 4e600 | 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 20 61 20 6e 65 77 | </span>.{}</code>.declares.a.new |
| 4e620 | 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 20 6e 6f 6e 2d 7a | .type.with.an.unknown.(but.non-z |
| 4e640 | 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 20 20 20 20 20 49 | ero).size.and.alignment........I |
| 4e660 | 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 20 74 68 65 20 73 | t.can.contain.declarations.the.s |
| 4e680 | 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 74 72 75 63 74 73 | ame.as.<a.href="#struct">structs |
| 4e6a0 | 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 3c 2f 61 | </a>,.<a.href="#union">unions</a |
| 4e6c0 | 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 6d 22 3e 65 6e 75 | >,.......and.<a.href="#enum">enu |
| 4e6e0 | 6d 73 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 | ms</a>........</p>.......<p>.... |
| 4e700 | 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 66 6f 72 20 74 79 | ...This.is.typically.used.for.ty |
| 4e720 | 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 20 77 69 74 68 20 | pe.safety.when.interacting.with. |
| 4e740 | 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 65 20 73 74 72 75 | C.code.that.does.not.expose.stru |
| 4e760 | 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 0a 20 20 20 20 20 | ct.details........Example:...... |
| 4e780 | 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. |
| 4e7a0 | 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 |
| 4e7c0 | 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 2f 66 69 67 63 61 | e">test_opaque.zig</cite></figca |
| 4e7e0 | 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 |
| 4e800 | 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 44 65 72 70 20 3d 20 3c 73 70 61 6e 20 | k-kw">const</span>.Derp.=.<span. |
| 4e820 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 6f 70 61 71 75 65 3c 2f 73 70 61 6e 3e 20 7b 7d 3b | class="tok-kw">opaque</span>.{}; |
| 4e840 | 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 |
| 4e860 | 6e 3e 20 57 61 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 6f 70 | n>.Wat.=.<span.class="tok-kw">op |
| 4e880 | 61 71 75 65 3c 2f 73 70 61 6e 3e 20 7b 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | aque</span>.{};..<span.class="to |
| 4e8a0 | 6b 2d 6b 77 22 3e 65 78 74 65 72 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | k-kw">extern</span>.<span.class= |
| 4e8c0 | 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=" |
| 4e8e0 | 74 6f 6b 2d 66 6e 22 3e 62 61 72 3c 2f 73 70 61 6e 3e 28 64 3a 20 2a 44 65 72 70 29 20 3c 73 70 | tok-fn">bar</span>(d:.*Derp).<sp |
| 4e900 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 3b | an.class="tok-type">void</span>; |
| 4e920 | 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>. |
| 4e940 | 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>( |
| 4e960 | 77 3a 20 2a 57 61 74 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 61 | w:.*Wat).<span.class="tok-kw">ca |
| 4e980 | 6c 6c 63 6f 6e 76 3c 2f 73 70 61 6e 3e 28 2e 63 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | llconv</span>(.c).<span.class="t |
| 4e9a0 | 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 62 61 72 28 77 | ok-type">void</span>.{.....bar(w |
| 4e9c0 | 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< |
| 4e9e0 | 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 |
| 4ea00 | 6f 74 3b 63 61 6c 6c 20 66 6f 6f 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 66 | ot;call.foo"</span>.{.....f |
| 4ea20 | 6f 6f 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 75 6e 64 65 66 69 | oo(<span.class="tok-null">undefi |
| 4ea40 | 6e 65 64 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 | ned</span>);.}</code></pre></fig |
| 4ea60 | 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 |
| 4ea80 | 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 |
| 4eaa0 | 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 6f 70 61 71 | ><samp>$.<kbd>zig.test.test_opaq |
| 4eac0 | 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 73 67 72 2d 31 6d | ue.zig</kbd>.<span.class="sgr-1m |
| 4eae0 | 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 | ">/home/andy/dev/zig/doc/langref |
| 4eb00 | 2f 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 | /test_opaque.zig:6:9:.</span><sp |
| 4eb20 | 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 |
| 4eb40 | 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 65 64 20 74 | ><span.class="sgr-1m">expected.t |
| 4eb60 | 79 70 65 20 27 2a 74 65 73 74 5f 6f 70 61 71 75 65 2e 44 65 72 70 27 2c 20 66 6f 75 6e 64 20 27 | ype.'*test_opaque.Derp',.found.' |
| 4eb80 | 2a 74 65 73 74 5f 6f 70 61 71 75 65 2e 57 61 74 27 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 62 61 72 | *test_opaque.Wat'.</span>....bar |
| 4eba0 | 28 77 29 3b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 | (w);.........<span.class="sgr-32 |
| 4ebc0 | 6d 22 3e 5e 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 | m">^.</span><span.class="sgr-1m" |
| 4ebe0 | 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f | >/home/andy/dev/zig/doc/langref/ |
| 4ec00 | 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 |
| 4ec20 | 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>< |
| 4ec40 | 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 |
| 4ec60 | 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. |
| 4ec80 | 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 |
| 4eca0 | 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 |
| 4ecc0 | 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 | ss="sgr-1m">/home/andy/dev/zig/d |
| 4ece0 | 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 6f 70 61 71 75 65 2e 7a 69 67 3a 32 3a 31 33 3a | oc/langref/test_opaque.zig:2:13: |
| 4ed00 | 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 |
| 4ed20 | 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"> |
| 4ed40 | 6f 70 61 71 75 65 20 64 65 63 6c 61 72 65 64 20 68 65 72 65 0a 3c 2f 73 70 61 6e 3e 63 6f 6e 73 | opaque.declared.here.</span>cons |
| 4ed60 | 74 20 57 61 74 20 3d 20 6f 70 61 71 75 65 20 7b 7d 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c | t.Wat.=.opaque.{};.............< |
| 4ed80 | 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 0a 3c | span.class="sgr-32m">^~~~~~~~~.< |
| 4eda0 | 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 | /span><span.class="sgr-1m">/home |
| 4edc0 | 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 6f | /andy/dev/zig/doc/langref/test_o |
| 4ede0 | 70 61 71 75 65 2e 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 | paque.zig:1:14:.</span><span.cla |
| 4ee00 | 73 73 3d 22 73 67 72 2d 33 36 6d 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 | ss="sgr-36m">note:.</span><span. |
| 4ee20 | 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 6f 70 61 71 75 65 20 64 65 63 6c 61 72 65 64 20 68 | class="sgr-1m">opaque.declared.h |
| 4ee40 | 65 72 65 0a 3c 2f 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 | ere.</span>const.Derp.=.opaque.{ |
| 4ee60 | 7d 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 67 72 | };..............<span.class="sgr |
| 4ee80 | 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 6c 61 | -32m">^~~~~~~~~.</span><span.cla |
| 4eea0 | 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 | ss="sgr-1m">/home/andy/dev/zig/d |
| 4eec0 | 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 6f 70 61 71 75 65 2e 7a 69 67 3a 34 3a 31 38 3a | oc/langref/test_opaque.zig:4:18: |
| 4eee0 | 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 |
| 4ef00 | 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"> |
| 4ef20 | 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 65 72 65 0a 3c 2f 73 | parameter.type.declared.here.</s |
| 4ef40 | 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 70 29 20 76 6f 69 64 | pan>extern.fn.bar(d:.*Derp).void |
| 4ef60 | 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 63 6c 61 73 73 3d 22 | ;..................<span.class=" |
| 4ef80 | 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 61 6e 20 63 6c 61 73 | sgr-32m">^~~~~.</span><span.clas |
| 4efa0 | 73 3d 22 73 67 72 2d 32 6d 22 3e 72 65 66 65 72 65 6e 63 65 64 20 62 79 3a 0a 20 20 20 20 74 65 | s="sgr-2m">referenced.by:.....te |
| 4efc0 | 73 74 2e 63 61 6c 6c 20 66 6f 6f 3a 20 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f | st.call.foo:./home/andy/dev/zig/ |
| 4efe0 | 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 6f 70 61 71 75 65 2e 7a 69 67 3a 31 30 3a 38 | doc/langref/test_opaque.zig:10:8 |
| 4f000 | 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>. |
| 4f020 | 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 42 6c 6f 63 6b 73 22 3e 3c | ...............<h2.id="Blocks">< |
| 4f040 | 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 42 6c 6f 63 6b 73 22 3e 42 6c 6f 63 6b 73 3c 2f 61 3e 20 | a.href="#toc-Blocks">Blocks</a>. |
| 4f060 | 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 42 6c 6f 63 6b 73 22 3e c2 a7 | <a.class="hdr".href="#Blocks">.. |
| 4f080 | 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 6c 6f 63 6b | </a></h2>........<p>.......Block |
| 4f0a0 | 73 20 61 72 65 20 75 73 65 64 20 74 6f 20 6c 69 6d 69 74 20 74 68 65 20 73 63 6f 70 65 20 6f 66 | s.are.used.to.limit.the.scope.of |
| 4f0c0 | 20 76 61 72 69 61 62 6c 65 20 64 65 63 6c 61 72 61 74 69 6f 6e 73 3a 0a 20 20 20 20 20 20 3c 2f | .variable.declarations:.......</ |
| 4f0e0 | 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 |
| 4f100 | 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"> |
| 4f120 | 74 65 73 74 5f 62 6c 6f 63 6b 73 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 | test_blocks.zig</cite></figcapti |
| 4f140 | 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 |
| 4f160 | 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- |
| 4f180 | 73 74 72 22 3e 26 71 75 6f 74 3b 61 63 63 65 73 73 20 76 61 72 69 61 62 6c 65 20 61 66 74 65 72 | str">"access.variable.after |
| 4f1a0 | 20 62 6c 6f 63 6b 20 73 63 6f 70 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 | .block.scope"</span>.{..... |
| 4f1c0 | 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 |
| 4f1e0 | 61 72 3c 2f 73 70 61 6e 3e 20 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | ar</span>.x:.<span.class="tok-ty |
| 4f200 | 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 |
| 4f220 | 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 5f 20 3d 20 | k-number">1</span>;........._.=. |
| 4f240 | 26 61 6d 70 3b 78 3b 0a 20 20 20 20 7d 0a 20 20 20 20 78 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 | &x;.....}.....x.+=.<span.cla |
| 4f260 | 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 64 | ss="tok-number">1</span>;.}</cod |
| 4f280 | 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 |
| 4f2a0 | 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 |
| 4f2c0 | 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 |
| 4f2e0 | 65 73 74 20 74 65 73 74 5f 62 6c 6f 63 6b 73 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 3c 73 70 61 6e 20 | est.test_blocks.zig</kbd>.<span. |
| 4f300 | 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 | class="sgr-1m">/home/andy/dev/zi |
| 4f320 | 67 2f 64 6f 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 | g/doc/langref/test_blocks.zig:6: |
| 4f340 | 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"> |
| 4f360 | 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 |
| 4f380 | 6d 22 3e 75 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 | m">use.of.undeclared.identifier. |
| 4f3a0 | 27 78 27 0a 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 | 'x'.</span>....x.+=.1;.....<span |
| 4f3c0 | 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 0a 3c 2f 73 70 61 6e 3e 0a 3c 2f 73 61 6d | .class="sgr-32m">^.</span>.</sam |
| 4f3e0 | 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 42 6c 6f 63 | p></pre></figure>........<p>Bloc |
| 4f400 | 6b 73 20 61 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 | ks.are.expressions..When.labeled |
| 4f420 | 2c 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 62 72 65 | ,.<code><span.class="tok-kw">bre |
| 4f440 | 61 6b 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 63 61 6e 20 62 65 20 75 73 65 64 0a 20 20 20 | ak</span></code>.can.be.used.... |
| 4f460 | 20 20 20 74 6f 20 72 65 74 75 72 6e 20 61 20 76 61 6c 75 65 20 66 72 6f 6d 20 74 68 65 20 62 6c | ...to.return.a.value.from.the.bl |
| 4f480 | 6f 63 6b 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 | ock:.......</p>.......<figure><f |
| 4f4a0 | 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. |
| 4f4c0 | 63 6c 61 73 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 | class="file">test_labeled_break. |
| 4f4e0 | 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 |
| 4f500 | 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 |
| 4f520 | 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 |
| 4f540 | 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=" |
| 4f560 | 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>) |
| 4f580 | 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 |
| 4f5a0 | 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; |
| 4f5c0 | 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 |
| 4f5e0 | 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 6c | n>.<span.class="tok-str">"l |
| 4f600 | 61 62 65 6c 65 64 20 62 72 65 61 6b 20 66 72 6f 6d 20 6c 61 62 65 6c 65 64 20 62 6c 6f 63 6b 20 | abeled.break.from.labeled.block. |
| 4f620 | 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 |
| 4f640 | 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: |
| 4f660 | 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 |
| 4f680 | 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 |
| 4f6a0 | 33 3c 2f 73 70 61 6e 3e 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | 3</span>;......<span.class="tok- |
| 4f6c0 | 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 78 20 3d 20 62 6c 6b 3a 20 7b 0a 20 20 20 20 | kw">const</span>.x.=.blk:.{..... |
| 4f6e0 | 20 20 20 20 79 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | ....y.+=.<span.class="tok-number |
| 4f700 | 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ">1</span>;.........<span.class= |
| 4f720 | 22 74 6f 6b 2d 6b 77 22 3e 62 72 65 61 6b 3c 2f 73 70 61 6e 3e 20 3a 62 6c 6b 20 79 3b 0a 20 20 | "tok-kw">break</span>.:blk.y;... |
| 4f740 | 20 20 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 | ..};.....<span.class="tok-kw">tr |
| 4f760 | 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 78 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | y</span>.expect(x.==.<span.class |
| 4f780 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 34 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c | ="tok-number">124</span>);.....< |
| 4f7a0 | 73 70 61 6e 20 63 6c 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 |
| 4f7c0 | 78 70 65 63 74 28 79 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | xpect(y.==.<span.class="tok-numb |
| 4f7e0 | 65 72 22 3e 31 32 34 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c | er">124</span>);.}</code></pre>< |
| 4f800 | 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 |
| 4f820 | 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> |
| 4f840 | 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_ |
| 4f860 | 6c 61 62 65 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 | labeled_break.zig</kbd>.1/1.test |
| 4f880 | 5f 6c 61 62 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 | _labeled_break.test.labeled.brea |
| 4f8a0 | 6b 20 66 72 6f 6d 20 6c 61 62 65 6c 65 64 20 62 6c 6f 63 6b 20 65 78 70 72 65 73 73 69 6f 6e 2e | k.from.labeled.block.expression. |
| 4f8c0 | 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> |
| 4f8e0 | 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 65 72 65 2c 20 | </pre></figure>........<p>Here,. |
| 4f900 | 3c 63 6f 64 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 | <code>blk</code>.can.be.any.name |
| 4f920 | 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 3e | .</p>.......<p>See.also:</p><ul> |
| 4f940 | 0a 3c 6c 69 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 | .<li><a.href="#Labeled-while">La |
| 4f960 | 62 65 6c 65 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 | beled.while</a></li>.<li><a.href |
| 4f980 | 3d 22 23 4c 61 62 65 6c 65 64 2d 66 6f 72 22 3e 4c 61 62 65 6c 65 64 20 66 6f 72 3c 2f 61 3e 3c | ="#Labeled-for">Labeled.for</a>< |
| 4f9a0 | 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 68 61 64 6f | /li>.</ul>.........<h3.id="Shado |
| 4f9c0 | 77 69 6e 67 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 | wing"><a.href="#toc-Shadowing">S |
| 4f9e0 | 68 61 64 6f 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 | hadowing</a>.<a.class="hdr".href |
| 4fa00 | 3d 22 23 53 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 | ="#Shadowing">..</a></h3>....... |
| 4fa20 | 20 3c 70 3e 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 | .<p><a.href="#Identifiers">Ident |
| 4fa40 | 69 66 69 65 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 | ifiers</a>.are.never.allowed.to. |
| 4fa60 | 22 68 69 64 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 | "hide".other.identifiers.by.usin |
| 4fa80 | 67 20 74 68 65 20 73 61 6d 65 20 6e 61 6d 65 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 | g.the.same.name:</p>.......<figu |
| 4faa0 | 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">< |
| 4fac0 | 63 69 74 65 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 | cite.class="file">test_shadowing |
| 4fae0 | 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 |
| 4fb00 | 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 |
| 4fb20 | 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 6b 2d 6e 75 6d 62 65 | pan>.pi.=.<span.class="tok-numbe |
| 4fb40 | 72 22 3e 33 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 | r">3.14</span>;..<span.class="to |
| 4fb60 | 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 |
| 4fb80 | 6f 6b 2d 73 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 | ok-str">"inside.test.block& |
| 4fba0 | 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=" |
| 4fbc0 | 74 6f 6b 2d 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 | tok-comment">//.Let's.even.go.in |
| 4fbe0 | 73 69 64 65 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 | side.another.block</span>.....{. |
| 4fc00 | 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 72 | ........<span.class="tok-kw">var |
| 4fc20 | 3c 2f 73 70 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 | </span>.pi:.<span.class="tok-typ |
| 4fc40 | 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 |
| 4fc60 | 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 7d 0a 7d 3c 2f 63 | -number">1234</span>;.....}.}</c |
| 4fc80 | 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 |
| 4fca0 | 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</ |
| 4fcc0 | 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 |
| 4fce0 | 20 74 65 73 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 | .test.test_shadowing.zig</kbd>.< |
| 4fd00 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 | span.class="sgr-1m">/home/andy/d |
| 4fd20 | 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 73 68 61 64 6f 77 69 6e | ev/zig/doc/langref/test_shadowin |
| 4fd40 | 67 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 6c 61 73 73 3d 22 | g.zig:6:13:.</span><span.class=" |
| 4fd60 | 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 |
| 4fd80 | 73 73 3d 22 73 67 72 2d 31 6d 22 3e 6c 6f 63 61 6c 20 76 61 72 69 61 62 6c 65 20 73 68 61 64 6f | ss="sgr-1m">local.variable.shado |
| 4fda0 | 77 73 20 64 65 63 6c 61 72 61 74 69 6f 6e 20 6f 66 20 27 70 69 27 0a 3c 2f 73 70 61 6e 3e 20 20 | ws.declaration.of.'pi'.</span>.. |
| 4fdc0 | 20 20 20 20 20 20 76 61 72 20 70 69 3a 20 69 33 32 20 3d 20 31 32 33 34 3b 0a 20 20 20 20 20 20 | ......var.pi:.i32.=.1234;....... |
| 4fde0 | 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 0a 3c | ......<span.class="sgr-32m">^~.< |
| 4fe00 | 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 | /span><span.class="sgr-1m">/home |
| 4fe20 | 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 73 | /andy/dev/zig/doc/langref/test_s |
| 4fe40 | 68 61 64 6f 77 69 6e 67 2e 7a 69 67 3a 31 3a 31 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 | hadowing.zig:1:1:.</span><span.c |
| 4fe60 | 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 |
| 4fe80 | 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 64 65 63 6c 61 72 65 64 20 68 65 72 65 0a 3c | n.class="sgr-1m">declared.here.< |
| 4fea0 | 2f 73 70 61 6e 3e 63 6f 6e 73 74 20 70 69 20 3d 20 33 2e 31 34 3b 0a 3c 73 70 61 6e 20 63 6c 61 | /span>const.pi.=.3.14;.<span.cla |
| 4fec0 | 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a 3c 2f 73 | ss="sgr-32m">^~~~~~~~~~~~~~~.</s |
| 4fee0 | 70 61 6e 3e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 | pan>.</samp></pre></figure>..... |
| 4ff00 | 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 42 65 63 61 75 73 65 20 6f 66 20 74 68 69 73 2c 20 77 68 | ...<p>.......Because.of.this,.wh |
| 4ff20 | 65 6e 20 79 6f 75 20 72 65 61 64 20 5a 69 67 20 63 6f 64 65 20 79 6f 75 20 63 61 6e 20 61 6c 77 | en.you.read.Zig.code.you.can.alw |
| 4ff40 | 61 79 73 20 72 65 6c 79 20 6f 6e 20 61 6e 20 69 64 65 6e 74 69 66 69 65 72 20 74 6f 20 63 6f 6e | ays.rely.on.an.identifier.to.con |
| 4ff60 | 73 69 73 74 65 6e 74 6c 79 20 6d 65 61 6e 0a 20 20 20 20 20 20 74 68 65 20 73 61 6d 65 20 74 68 | sistently.mean.......the.same.th |
| 4ff80 | 69 6e 67 20 77 69 74 68 69 6e 20 74 68 65 20 73 63 6f 70 65 20 69 74 20 69 73 20 64 65 66 69 6e | ing.within.the.scope.it.is.defin |
| 4ffa0 | 65 64 2e 20 4e 6f 74 65 20 74 68 61 74 20 79 6f 75 20 63 61 6e 2c 20 68 6f 77 65 76 65 72 2c 20 | ed..Note.that.you.can,.however,. |
| 4ffc0 | 75 73 65 20 74 68 65 20 73 61 6d 65 20 6e 61 6d 65 20 69 66 0a 20 20 20 20 20 20 74 68 65 20 73 | use.the.same.name.if.......the.s |
| 4ffe0 | 63 6f 70 65 73 20 61 72 65 20 73 65 70 61 72 61 74 65 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 | copes.are.separate:.......</p>.. |
| 50000 | 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=" |
| 50020 | 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 |
| 50040 | 5f 73 63 6f 70 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 | _scopes.zig</cite></figcaption>< |
| 50060 | 70 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 |
| 50080 | 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" |
| 500a0 | 3e 26 71 75 6f 74 3b 73 65 70 61 72 61 74 65 20 73 63 6f 70 65 73 26 71 75 6f 74 3b 3c 2f 73 70 | >"separate.scopes"</sp |
| 500c0 | 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 6c 61 73 73 3d | an>.{.....{.........<span.class= |
| 500e0 | 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 70 69 20 3d 20 3c 73 70 61 6e | "tok-kw">const</span>.pi.=.<span |
| 50100 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 2e 31 34 3c 2f 73 70 61 6e 3e 3b | .class="tok-number">3.14</span>; |
| 50120 | 0a 20 20 20 20 20 20 20 20 5f 20 3d 20 70 69 3b 0a 20 20 20 20 7d 0a 20 20 20 20 7b 0a 20 20 20 | ........._.=.pi;.....}.....{.... |
| 50140 | 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 | .....<span.class="tok-kw">var</s |
| 50160 | 70 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 | pan>.pi:.<span.class="tok-type"> |
| 50180 | 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | bool</span>.=.<span.class="tok-n |
| 501a0 | 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 20 5f 20 3d 20 26 61 | ull">true</span>;........._.=.&a |
| 501c0 | 6d 70 3b 70 69 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 | mp;pi;.....}.}</code></pre></fig |
| 501e0 | 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 |
| 50200 | 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 |
| 50220 | 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 63 6f 70 | ><samp>$.<kbd>zig.test.test_scop |
| 50240 | 65 73 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 73 63 6f 70 65 73 2e 74 65 73 | es.zig</kbd>.1/1.test_scopes.tes |
| 50260 | 74 2e 73 65 70 61 72 61 74 65 20 73 63 6f 70 65 73 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 | t.separate.scopes...OK.All.1.tes |
| 50280 | 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 |
| 502a0 | 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 45 6d 70 74 79 2d 42 | >................<h3.id="Empty-B |
| 502c0 | 6c 6f 63 6b 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 45 6d 70 74 79 2d 42 6c 6f 63 6b | locks"><a.href="#toc-Empty-Block |
| 502e0 | 73 22 3e 45 6d 70 74 79 20 42 6c 6f 63 6b 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 | s">Empty.Blocks</a>.<a.class="hd |
| 50300 | 72 22 20 68 72 65 66 3d 22 23 45 6d 70 74 79 2d 42 6c 6f 63 6b 73 22 3e c2 a7 3c 2f 61 3e 3c 2f | r".href="#Empty-Blocks">..</a></ |
| 50320 | 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 6e 20 65 6d 70 74 79 20 62 6c 6f 63 6b 20 69 73 20 | h3>........<p>An.empty.block.is. |
| 50340 | 65 71 75 69 76 61 6c 65 6e 74 20 74 6f 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | equivalent.to.<code><span.class= |
| 50360 | 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 7b 7d 3c 2f 63 6f 64 65 3e 3a | "tok-type">void</span>{}</code>: |
| 50380 | 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 |
| 503a0 | 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 |
| 503c0 | 22 3e 74 65 73 74 5f 65 6d 70 74 79 5f 62 6c 6f 63 6b 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 | ">test_empty_block.zig</cite></f |
| 503e0 | 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 |
| 50400 | 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 |
| 50420 | 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</ |
| 50440 | 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 |
| 50460 | 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 |
| 50480 | 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.=. |
| 504a0 | 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 |
| 504c0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 | ="tok-kw">test</span>.{.....<spa |
| 504e0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 20 | n.class="tok-kw">const</span>.a. |
| 50500 | 3d 20 7b 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 | =.{};.....<span.class="tok-kw">c |
| 50520 | 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 |
| 50540 | 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 7b 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 | -type">void</span>{};.....<span. |
| 50560 | 63 6c 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 |
| 50580 | 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 |
| 505a0 | 4f 66 3c 2f 73 70 61 6e 3e 28 61 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | Of</span>(a).==.<span.class="tok |
| 505c0 | 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 63 | -type">void</span>);.....<span.c |
| 505e0 | 6c 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( |
| 50600 | 3c 73 70 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 |
| 50620 | 66 3c 2f 73 70 61 6e 3e 28 62 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | f</span>(b).==.<span.class="tok- |
| 50640 | 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 63 6c | type">void</span>);.....<span.cl |
| 50660 | 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 |
| 50680 | 20 3d 3d 20 62 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 | .==.b);.}</code></pre></figure>< |
| 506a0 | 66 69 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- |
| 506c0 | 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 |
| 506e0 | 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 65 6d 70 74 79 5f 62 6c 6f | p>$.<kbd>zig.test.test_empty_blo |
| 50700 | 63 6b 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 65 6d 70 74 79 5f 62 6c 6f 63 | ck.zig</kbd>.1/1.test_empty_bloc |
| 50720 | 6b 2e 74 65 73 74 5f 30 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 | k.test_0...OK.All.1.tests.passed |
| 50740 | 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>........ |
| 50760 | 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 73 77 69 74 63 68 22 3e 3c | ...............<h2.id="switch">< |
| 50780 | 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 73 77 69 74 63 68 22 3e 73 77 69 74 63 68 3c 2f 61 3e 20 | a.href="#toc-switch">switch</a>. |
| 507a0 | 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 73 77 69 74 63 68 22 3e c2 a7 | <a.class="hdr".href="#switch">.. |
| 507c0 | 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 | </a></h2>........<figure><figcap |
| 507e0 | 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 |
| 50800 | 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 73 77 69 74 63 68 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f | ="file">test_switch.zig</cite></ |
| 50820 | 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 |
| 50840 | 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 |
| 50860 | 70 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< |
| 50880 | 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 |
| 508a0 | 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 |
| 508c0 | 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 6e 20 | s="tok-kw">const</span>.builtin. |
| 508e0 | 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 |
| 50900 | 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" |
| 50920 | 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 3c 73 | >"builtin"</span>);.<s |
| 50940 | 70 61 6e 20 63 6c 61 73 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>. |
| 50960 | 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 |
| 50980 | 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>.< |
| 509a0 | 73 70 61 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 |
| 509c0 | 68 20 73 69 6d 70 6c 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 | h.simple"</span>.{.....<spa |
| 509e0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 3a | n.class="tok-kw">const</span>.a: |
| 50a00 | 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 |
| 50a20 | 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 30 | n>.=.<span.class="tok-number">10 |
| 50a40 | 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 |
| 50a60 | 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 7a 7a 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ">const</span>.zz:.<span.class=" |
| 50a80 | 74 6f 6b 2d 74 79 70 65 22 3e 75 36 34 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 | tok-type">u64</span>.=.<span.cla |
| 50aa0 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 33 3c 2f 73 70 61 6e 3e 3b 0a 0a 20 20 20 | ss="tok-number">103</span>;..... |
| 50ac0 | 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 6c | .<span.class="tok-comment">//.Al |
| 50ae0 | 6c 20 62 72 61 6e 63 68 65 73 20 6f 66 20 61 20 73 77 69 74 63 68 20 65 78 70 72 65 73 73 69 6f | l.branches.of.a.switch.expressio |
| 50b00 | 6e 20 6d 75 73 74 20 62 65 20 61 62 6c 65 20 74 6f 20 62 65 20 63 6f 65 72 63 65 64 20 74 6f 20 | n.must.be.able.to.be.coerced.to. |
| 50b20 | 61 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f | a</span>.....<span.class="tok-co |
| 50b40 | 6d 6d 65 6e 74 22 3e 2f 2f 20 63 6f 6d 6d 6f 6e 20 74 79 70 65 2e 3c 2f 73 70 61 6e 3e 0a 20 20 | mment">//.common.type.</span>... |
| 50b60 | 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 3c 2f | ..<span.class="tok-comment">//</ |
| 50b80 | 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 |
| 50ba0 | 6e 74 22 3e 2f 2f 20 42 72 61 6e 63 68 65 73 20 63 61 6e 6e 6f 74 20 66 61 6c 6c 74 68 72 6f 75 | nt">//.Branches.cannot.fallthrou |
| 50bc0 | 67 68 2e 20 49 66 20 66 61 6c 6c 74 68 72 6f 75 67 68 20 62 65 68 61 76 69 6f 72 20 69 73 20 64 | gh..If.fallthrough.behavior.is.d |
| 50be0 | 65 73 69 72 65 64 2c 20 63 6f 6d 62 69 6e 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e | esired,.combine</span>.....<span |
| 50c00 | 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 63 61 73 65 | .class="tok-comment">//.the.case |
| 50c20 | 73 20 61 6e 64 20 75 73 65 20 61 6e 20 69 66 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 | s.and.use.an.if.</span>.....<spa |
| 50c40 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 62 20 | n.class="tok-kw">const</span>.b. |
| 50c60 | 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 73 | =.<span.class="tok-kw">switch</s |
| 50c80 | 70 61 6e 3e 20 28 61 29 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | pan>.(a).{.........<span.class=" |
| 50ca0 | 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 4d 75 6c 74 69 70 6c 65 20 63 61 73 65 73 20 63 | tok-comment">//.Multiple.cases.c |
| 50cc0 | 61 6e 20 62 65 20 63 6f 6d 62 69 6e 65 64 20 76 69 61 20 61 20 27 2c 27 3c 2f 73 70 61 6e 3e 0a | an.be.combined.via.a.','</span>. |
| 50ce0 | 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 | ........<span.class="tok-number" |
| 50d00 | 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 |
| 50d20 | 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 |
| 50d40 | 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 | umber">3</span>.=>.<span.clas |
| 50d60 | 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 0a 20 20 20 20 20 20 | s="tok-number">0</span>,........ |
| 50d80 | 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 52 | ..<span.class="tok-comment">//.R |
| 50da0 | 61 6e 67 65 73 20 63 61 6e 20 62 65 20 73 70 65 63 69 66 69 65 64 20 75 73 69 6e 67 20 74 68 65 | anges.can.be.specified.using.the |
| 50dc0 | 20 2e 2e 2e 20 73 79 6e 74 61 78 2e 20 54 68 65 73 65 20 61 72 65 20 69 6e 63 6c 75 73 69 76 65 | .....syntax..These.are.inclusive |
| 50de0 | 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 |
| 50e00 | 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 6f 66 20 62 6f 74 68 20 65 6e 64 73 2e 3c 2f 73 70 61 6e | -comment">//.of.both.ends.</span |
| 50e20 | 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 65 | >.........<span.class="tok-numbe |
| 50e40 | 72 22 3e 35 3c 2f 73 70 61 6e 3e 2e 2e 2e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | r">5</span>...<span.class="tok-n |
| 50e60 | 75 6d 62 65 72 22 3e 31 30 30 3c 2f 73 70 61 6e 3e 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c | umber">100</span>.=>.<span.cl |
| 50e80 | 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 0a 20 20 20 20 | ass="tok-number">1</span>,...... |
| 50ea0 | 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">// |
| 50ec0 | 20 42 72 61 6e 63 68 65 73 20 63 61 6e 20 62 65 20 61 72 62 69 74 72 61 72 69 6c 79 20 63 6f 6d | .Branches.can.be.arbitrarily.com |
| 50ee0 | 70 6c 65 78 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 | plex.</span>.........<span.class |
| 50f00 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 31 3c 2f 73 70 61 6e 3e 20 3d 26 67 74 3b 20 62 | ="tok-number">101</span>.=>.b |
| 50f20 | 6c 6b 3a 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 | lk:.{.............<span.class="t |
| 50f40 | 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 63 3a 20 3c 73 70 61 6e 20 63 6c 61 | ok-kw">const</span>.c:.<span.cla |
| 50f60 | 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 |
| 50f80 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 3b 0a 20 20 | .class="tok-number">5</span>;... |
| 50fa0 | 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 62 | ..........<span.class="tok-kw">b |
| 50fc0 | 72 65 61 6b 3c 2f 73 70 61 6e 3e 20 3a 62 6c 6b 20 63 20 2a 20 3c 73 70 61 6e 20 63 6c 61 73 73 | reak</span>.:blk.c.*.<span.class |
| 50fe0 | 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 70 61 6e 20 63 | ="tok-number">2</span>.+.<span.c |
| 51000 | 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>;..... |
| 51020 | 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 6b | ....},..........<span.class="tok |
| 51040 | 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 53 77 69 74 63 68 69 6e 67 20 6f 6e 20 61 72 62 69 74 72 | -comment">//.Switching.on.arbitr |
| 51060 | 61 72 79 20 65 78 70 72 65 73 73 69 6f 6e 73 20 69 73 20 61 6c 6c 6f 77 65 64 20 61 73 20 6c 6f | ary.expressions.is.allowed.as.lo |
| 51080 | 6e 67 20 61 73 20 74 68 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 | ng.as.the</span>.........<span.c |
| 510a0 | 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 65 78 70 72 65 73 73 69 6f 6e | lass="tok-comment">//.expression |
| 510c0 | 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 73 70 61 6e | .is.known.at.compile-time.</span |
| 510e0 | 3e 0a 20 20 20 20 20 20 20 20 7a 7a 20 3d 26 67 74 3b 20 7a 7a 2c 0a 20 20 20 20 20 20 20 20 62 | >.........zz.=>.zz,.........b |
| 51100 | 6c 6b 3a 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 | lk:.{.............<span.class="t |
| 51120 | 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 64 3a 20 3c 73 70 61 6e 20 63 6c 61 | ok-kw">const</span>.d:.<span.cla |
| 51140 | 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 |
| 51160 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 3b 0a 20 20 | .class="tok-number">5</span>;... |
| 51180 | 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 | ..........<span.class="tok-kw">c |
| 511a0 | 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | onst</span>.e:.<span.class="tok- |
| 511c0 | 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | type">u32</span>.=.<span.class=" |
| 511e0 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 30 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 20 20 20 20 | tok-number">100</span>;......... |
| 51200 | 20 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</ |
| 51220 | 73 70 61 6e 3e 20 3a 62 6c 6b 20 64 20 2b 20 65 3b 0a 20 20 20 20 20 20 20 20 7d 20 3d 26 67 74 | span>.:blk.d.+.e;.........}.=> |
| 51240 | 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 37 3c 2f | ;.<span.class="tok-number">107</ |
| 51260 | 73 70 61 6e 3e 2c 0a 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | span>,..........<span.class="tok |
| 51280 | 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 65 20 65 6c 73 65 20 62 72 61 6e 63 68 20 63 61 74 | -comment">//.The.else.branch.cat |
| 512a0 | 63 68 65 73 20 65 76 65 72 79 74 68 69 6e 67 20 6e 6f 74 20 61 6c 72 65 61 64 79 20 63 61 70 74 | ches.everything.not.already.capt |
| 512c0 | 75 72 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 | ured.</span>.........<span.class |
| 512e0 | 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 45 6c 73 65 20 62 72 61 6e 63 68 65 73 20 | ="tok-comment">//.Else.branches. |
| 51300 | 61 72 65 20 6d 61 6e 64 61 74 6f 72 79 20 75 6e 6c 65 73 73 20 74 68 65 20 65 6e 74 69 72 65 20 | are.mandatory.unless.the.entire. |
| 51320 | 72 61 6e 67 65 20 6f 66 20 76 61 6c 75 65 73 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 3c | range.of.values</span>.........< |
| 51340 | 73 70 61 6e 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 73 20 68 | span.class="tok-comment">//.is.h |
| 51360 | 61 6e 64 6c 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 | andled.</span>.........<span.cla |
| 51380 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 3d 26 67 74 3b 20 3c 73 | ss="tok-kw">else</span>.=>.<s |
| 513a0 | 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 2c | pan.class="tok-number">9</span>, |
| 513c0 | 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 |
| 513e0 | 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 73 70 61 6e 20 63 | ">try</span>.expect(b.==.<span.c |
| 51400 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a | lass="tok-number">1</span>);.}.. |
| 51420 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 53 77 69 | <span.class="tok-comment">//.Swi |
| 51440 | 74 63 68 20 65 78 70 72 65 73 73 69 6f 6e 73 20 63 61 6e 20 62 65 20 75 73 65 64 20 6f 75 74 73 | tch.expressions.can.be.used.outs |
| 51460 | 69 64 65 20 61 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 61 | ide.a.function:</span>.<span.cla |
| 51480 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6f 73 5f 6d 73 67 20 | ss="tok-kw">const</span>.os_msg. |
| 514a0 | 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 73 | =.<span.class="tok-kw">switch</s |
| 514c0 | 70 61 6e 3e 20 28 62 75 69 6c 74 69 6e 2e 74 61 72 67 65 74 2e 6f 73 2e 74 61 67 29 20 7b 0a 20 | pan>.(builtin.target.os.tag).{.. |
| 514e0 | 20 20 20 2e 6c 69 6e 75 78 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ....linux.=>.<span.class="tok |
| 51500 | 2d 73 74 72 22 3e 26 71 75 6f 74 3b 77 65 20 66 6f 75 6e 64 20 61 20 6c 69 6e 75 78 20 75 73 65 | -str">"we.found.a.linux.use |
| 51520 | 72 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | r"</span>,.....<span.class= |
| 51540 | 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 |
| 51560 | 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 74 20 61 20 6c 69 6e | .class="tok-str">"not.a.lin |
| 51580 | 75 78 20 75 73 65 72 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 | ux.user"</span>,.};..<span. |
| 515a0 | 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 73 69 64 65 20 61 20 | class="tok-comment">//.Inside.a. |
| 515c0 | 66 75 6e 63 74 69 6f 6e 2c 20 73 77 69 74 63 68 20 73 74 61 74 65 6d 65 6e 74 73 20 69 6d 70 6c | function,.switch.statements.impl |
| 515e0 | 69 63 69 74 6c 79 20 61 72 65 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 3c 2f 73 70 61 6e 3e 0a 3c | icitly.are.compile-time</span>.< |
| 51600 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 65 76 61 6c | span.class="tok-comment">//.eval |
| 51620 | 75 61 74 65 64 20 69 66 20 74 68 65 20 74 61 72 67 65 74 20 65 78 70 72 65 73 73 69 6f 6e 20 69 | uated.if.the.target.expression.i |
| 51640 | 73 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 6b 6e 6f 77 6e 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 | s.compile-time.known.</span>.<sp |
| 51660 | 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 |
| 51680 | 70 61 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 |
| 516a0 | 20 69 6e 73 69 64 65 20 66 75 6e 63 74 69 6f 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a | .inside.function"</span>.{. |
| 516c0 | 20 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< |
| 516e0 | 2f 73 70 61 6e 3e 20 28 62 75 69 6c 74 69 6e 2e 74 61 72 67 65 74 2e 6f 73 2e 74 61 67 29 20 7b | /span>.(builtin.target.os.tag).{ |
| 51700 | 0a 20 20 20 20 20 20 20 20 2e 66 75 63 68 73 69 61 20 3d 26 67 74 3b 20 7b 0a 20 20 20 20 20 20 | ..........fuchsia.=>.{....... |
| 51720 | 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"> |
| 51740 | 2f 2f 20 4f 6e 20 61 6e 20 4f 53 20 6f 74 68 65 72 20 74 68 61 6e 20 66 75 63 68 73 69 61 2c 20 | //.On.an.OS.other.than.fuchsia,. |
| 51760 | 62 6c 6f 63 6b 20 69 73 20 6e 6f 74 20 65 76 65 6e 20 61 6e 61 6c 79 7a 65 64 2c 3c 2f 73 70 61 | block.is.not.even.analyzed,</spa |
| 51780 | 6e 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | n>.............<span.class="tok- |
| 517a0 | 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 73 6f 20 74 68 69 73 20 63 6f 6d 70 69 6c 65 20 65 72 72 6f | comment">//.so.this.compile.erro |
| 517c0 | 72 20 69 73 20 6e 6f 74 20 74 72 69 67 67 65 72 65 64 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 | r.is.not.triggered.</span>...... |
| 517e0 | 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" |
| 51800 | 3e 2f 2f 20 4f 6e 20 66 75 63 68 73 69 61 20 74 68 69 73 20 63 6f 6d 70 69 6c 65 20 65 72 72 6f | >//.On.fuchsia.this.compile.erro |
| 51820 | 72 20 77 6f 75 6c 64 20 62 65 20 74 72 69 67 67 65 72 65 64 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 | r.would.be.triggered.</span>.... |
| 51840 | 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 74 69 | .........<span.class="tok-builti |
| 51860 | 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 63 6c | n">@compileError</span>(<span.cl |
| 51880 | 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 66 75 63 68 73 69 61 20 6e 6f 74 20 | ass="tok-str">"fuchsia.not. |
| 518a0 | 73 75 70 70 6f 72 74 65 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 20 20 20 | supported"</span>);........ |
| 518c0 | 20 7d 2c 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | .},.........<span.class="tok-kw" |
| 518e0 | 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 3d 26 67 74 3b 20 7b 7d 2c 0a 20 20 20 20 7d 0a 7d 3c 2f | >else</span>.=>.{},.....}.}</ |
| 51900 | 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 |
| 51920 | 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< |
| 51940 | 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 |
| 51960 | 67 20 74 65 73 74 20 74 65 73 74 5f 73 77 69 74 63 68 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 32 | g.test.test_switch.zig</kbd>.1/2 |
| 51980 | 20 74 65 73 74 5f 73 77 69 74 63 68 2e 74 65 73 74 2e 73 77 69 74 63 68 20 73 69 6d 70 6c 65 2e | .test_switch.test.switch.simple. |
| 519a0 | 2e 2e 4f 4b 0a 32 2f 32 20 74 65 73 74 5f 73 77 69 74 63 68 2e 74 65 73 74 2e 73 77 69 74 63 68 | ..OK.2/2.test_switch.test.switch |
| 519c0 | 20 69 6e 73 69 64 65 20 66 75 6e 63 74 69 6f 6e 2e 2e 2e 4f 4b 0a 41 6c 6c 20 32 20 74 65 73 74 | .inside.function...OK.All.2.test |
| 519e0 | 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> |
| 51a00 | 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 |
| 51a20 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 77 69 74 63 68 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 | ass="tok-kw">switch</span></code |
| 51a40 | 3e 20 63 61 6e 20 62 65 20 75 73 65 64 20 74 6f 20 63 61 70 74 75 72 65 20 74 68 65 20 66 69 65 | >.can.be.used.to.capture.the.fie |
| 51a60 | 6c 64 20 76 61 6c 75 65 73 0a 20 20 20 20 20 20 6f 66 20 61 20 3c 61 20 68 72 65 66 3d 22 23 54 | ld.values.......of.a.<a.href="#T |
| 51a80 | 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 20 4d | agged-union">Tagged.union</a>..M |
| 51aa0 | 6f 64 69 66 69 63 61 74 69 6f 6e 73 20 74 6f 20 74 68 65 20 66 69 65 6c 64 20 76 61 6c 75 65 73 | odifications.to.the.field.values |
| 51ac0 | 20 63 61 6e 20 62 65 0a 20 20 20 20 20 20 64 6f 6e 65 20 62 79 20 70 6c 61 63 69 6e 67 20 61 20 | .can.be.......done.by.placing.a. |
| 51ae0 | 3c 63 6f 64 65 3e 2a 3c 2f 63 6f 64 65 3e 20 62 65 66 6f 72 65 20 74 68 65 20 63 61 70 74 75 72 | <code>*</code>.before.the.captur |
| 51b00 | 65 20 76 61 72 69 61 62 6c 65 20 6e 61 6d 65 2c 0a 20 20 20 20 20 20 74 75 72 6e 69 6e 67 20 69 | e.variable.name,.......turning.i |
| 51b20 | 74 20 69 6e 74 6f 20 61 20 70 6f 69 6e 74 65 72 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 | t.into.a.pointer........</p>.... |
| 51b40 | 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 |
| 51b60 | 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 73 | g-cap"><cite.class="file">test_s |
| 51b80 | 77 69 74 63 68 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 | witch_tagged_union.zig</cite></f |
| 51ba0 | 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 |
| 51bc0 | 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.=. |
| 51be0 | 3c 73 70 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 |
| 51c00 | 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">& |
| 51c20 | 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 |
| 51c40 | 78 70 65 63 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 | xpect;..<span.class="tok-kw">tes |
| 51c60 | 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">& |
| 51c80 | 71 75 6f 74 3b 73 77 69 74 63 68 20 6f 6e 20 74 61 67 67 65 64 20 75 6e 69 6f 6e 26 71 75 6f 74 | quot;switch.on.tagged.union" |
| 51ca0 | 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- |
| 51cc0 | 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 50 6f 69 6e 74 20 3d 20 3c 73 70 61 6e 20 63 | kw">const</span>.Point.=.<span.c |
| 51ce0 | 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>.{... |
| 51d00 | 20 20 20 20 20 20 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | ......x:.<span.class="tok-type"> |
| 51d20 | 75 38 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 79 3a 20 3c 73 70 61 6e 20 63 6c 61 73 | u8</span>,.........y:.<span.clas |
| 51d40 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 7d 3b 0a 20 | s="tok-type">u8</span>,.....};.. |
| 51d60 | 20 20 20 3c 73 70 61 6e 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 |
| 51d80 | 70 61 6e 3e 20 49 74 65 6d 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | pan>.Item.=.<span.class="tok-kw" |
| 51da0 | 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 2d 6b | >union</span>(<span.class="tok-k |
| 51dc0 | 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 61 3a 20 3c 73 70 | w">enum</span>).{.........a:.<sp |
| 51de0 | 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 0a | an.class="tok-type">u32</span>,. |
| 51e00 | 20 20 20 20 20 20 20 20 63 3a 20 50 6f 69 6e 74 2c 0a 20 20 20 20 20 20 20 20 64 2c 0a 20 20 20 | ........c:.Point,.........d,.... |
| 51e20 | 20 20 20 20 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 | .....e:.<span.class="tok-type">u |
| 51e40 | 33 32 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 6c 61 | 32</span>,.....};......<span.cla |
| 51e60 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 61 20 3d 20 49 74 65 6d 7b | ss="tok-kw">var</span>.a.=.Item{ |
| 51e80 | 20 2e 63 20 3d 20 50 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 | ..c.=.Point{..x.=.<span.class="t |
| 51ea0 | 6f 6b 2d 6e 75 6d 62 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 | ok-number">1</span>,..y.=.<span. |
| 51ec0 | 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 20 7d 3b | class="tok-number">2</span>.}.}; |
| 51ee0 | 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"> |
| 51f00 | 2f 2f 20 53 77 69 74 63 68 69 6e 67 20 6f 6e 20 6d 6f 72 65 20 63 6f 6d 70 6c 65 78 20 65 6e 75 | //.Switching.on.more.complex.enu |
| 51f20 | 6d 73 20 69 73 20 61 6c 6c 6f 77 65 64 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 | ms.is.allowed.</span>.....<span. |
| 51f40 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 62 20 3d 20 | class="tok-kw">const</span>.b.=. |
| 51f60 | 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 |
| 51f80 | 6e 3e 20 28 61 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>.(a).{.........<span.class="to |
| 51fa0 | 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 41 20 63 61 70 74 75 72 65 20 67 72 6f 75 70 20 69 73 | k-comment">//.A.capture.group.is |
| 51fc0 | 20 61 6c 6c 6f 77 65 64 20 6f 6e 20 61 20 6d 61 74 63 68 2c 20 61 6e 64 20 77 69 6c 6c 20 72 65 | .allowed.on.a.match,.and.will.re |
| 51fe0 | 74 75 72 6e 20 74 68 65 20 65 6e 75 6d 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 3c 73 70 | turn.the.enum</span>.........<sp |
| 52000 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 76 61 6c 75 65 20 | an.class="tok-comment">//.value. |
| 52020 | 6d 61 74 63 68 65 64 2e 20 49 66 20 74 68 65 20 70 61 79 6c 6f 61 64 20 74 79 70 65 73 20 6f 66 | matched..If.the.payload.types.of |
| 52040 | 20 62 6f 74 68 20 63 61 73 65 73 20 61 72 65 20 74 68 65 20 73 61 6d 65 3c 2f 73 70 61 6e 3e 0a | .both.cases.are.the.same</span>. |
| 52060 | 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 |
| 52080 | 22 3e 2f 2f 20 74 68 65 79 20 63 61 6e 20 62 65 20 70 75 74 20 69 6e 74 6f 20 74 68 65 20 73 61 | ">//.they.can.be.put.into.the.sa |
| 520a0 | 6d 65 20 73 77 69 74 63 68 20 70 72 6f 6e 67 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 | me.switch.prong.</span>......... |
| 520c0 | 49 74 65 6d 2e 61 2c 20 49 74 65 6d 2e 65 20 3d 26 67 74 3b 20 7c 69 74 65 6d 7c 20 69 74 65 6d | Item.a,.Item.e.=>.|item|.item |
| 520e0 | 2c 0a 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d | ,..........<span.class="tok-comm |
| 52100 | 65 6e 74 22 3e 2f 2f 20 41 20 72 65 66 65 72 65 6e 63 65 20 74 6f 20 74 68 65 20 6d 61 74 63 68 | ent">//.A.reference.to.the.match |
| 52120 | 65 64 20 76 61 6c 75 65 20 63 61 6e 20 62 65 20 6f 62 74 61 69 6e 65 64 20 75 73 69 6e 67 20 60 | ed.value.can.be.obtained.using.` |
| 52140 | 2a 60 20 73 79 6e 74 61 78 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 49 74 65 6d 2e 63 | *`.syntax.</span>.........Item.c |
| 52160 | 20 3d 26 67 74 3b 20 7c 2a 69 74 65 6d 7c 20 62 6c 6b 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 | .=>.|*item|.blk:.{........... |
| 52180 | 20 20 69 74 65 6d 2e 2a 2e 78 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | ..item.*.x.+=.<span.class="tok-n |
| 521a0 | 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 20 3c 73 70 | umber">1</span>;.............<sp |
| 521c0 | 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 3a | an.class="tok-kw">break</span>.: |
| 521e0 | 62 6c 6b 20 3c 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 | blk.<span.class="tok-number">6</ |
| 52200 | 73 70 61 6e 3e 3b 0a 20 20 20 20 20 20 20 20 7d 2c 0a 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e | span>;.........},..........<span |
| 52220 | 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 20 65 6c 73 65 20 | .class="tok-comment">//.No.else. |
| 52240 | 69 73 20 72 65 71 75 69 72 65 64 20 69 66 20 74 68 65 20 74 79 70 65 73 20 63 61 73 65 73 20 77 | is.required.if.the.types.cases.w |
| 52260 | 61 73 20 65 78 68 61 75 73 74 69 76 65 6c 79 20 68 61 6e 64 6c 65 64 3c 2f 73 70 61 6e 3e 0a 20 | as.exhaustively.handled</span>.. |
| 52280 | 20 20 20 20 20 20 20 49 74 65 6d 2e 64 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | .......Item.d.=>.<span.class= |
| 522a0 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 38 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 7d 3b 0a 0a 20 | "tok-number">8</span>,.....};... |
| 522c0 | 20 20 20 3c 73 70 61 6e 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 |
| 522e0 | 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- |
| 52300 | 6e 75 6d 62 65 72 22 3e 36 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | number">6</span>);.....<span.cla |
| 52320 | 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 2e | ss="tok-kw">try</span>.expect(a. |
| 52340 | 63 2e 78 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e | c.x.==.<span.class="tok-number"> |
| 52360 | 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 |
| 52380 | 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 |
| 523a0 | 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>< |
| 523c0 | 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 74 63 68 | samp>$.<kbd>zig.test.test_switch |
| 523e0 | 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 31 20 74 65 73 74 | _tagged_union.zig</kbd>.1/1.test |
| 52400 | 5f 73 77 69 74 63 68 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 | _switch_tagged_union.test.switch |
| 52420 | 20 6f 6e 20 74 61 67 67 65 64 20 75 6e 69 6f 6e 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 | .on.tagged.union...OK.All.1.test |
| 52440 | 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> |
| 52460 | 0a 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 | ........<p>See.also:</p><ul>.<li |
| 52480 | 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 3c 2f 61 | ><a.href="#comptime">comptime</a |
| 524a0 | 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 65 6e 75 6d 22 3e 65 6e 75 6d 3c | ></li>.<li><a.href="#enum">enum< |
| 524c0 | 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 63 6f 6d 70 69 6c 65 45 72 | /a></li>.<li><a.href="#compileEr |
| 524e0 | 72 6f 72 22 3e 40 63 6f 6d 70 69 6c 65 45 72 72 6f 72 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e | ror">@compileError</a></li>.<li> |
| 52500 | 3c 61 20 68 72 65 66 3d 22 23 43 6f 6d 70 69 6c 65 2d 56 61 72 69 61 62 6c 65 73 22 3e 43 6f 6d | <a.href="#Compile-Variables">Com |
| 52520 | 70 69 6c 65 20 56 61 72 69 61 62 6c 65 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 0a | pile.Variables</a></li>.</ul>... |
| 52540 | 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 45 78 68 61 75 73 74 69 76 65 2d 53 77 69 74 63 68 69 | ......<h3.id="Exhaustive-Switchi |
| 52560 | 6e 67 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 45 78 68 61 75 73 74 69 76 65 2d 53 77 69 | ng"><a.href="#toc-Exhaustive-Swi |
| 52580 | 74 63 68 69 6e 67 22 3e 45 78 68 61 75 73 74 69 76 65 20 53 77 69 74 63 68 69 6e 67 3c 2f 61 3e | tching">Exhaustive.Switching</a> |
| 525a0 | 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 68 61 75 73 74 69 76 | .<a.class="hdr".href="#Exhaustiv |
| 525c0 | 65 2d 53 77 69 74 63 68 69 6e 67 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 | e-Switching">..</a></h3>........ |
| 525e0 | 3c 70 3e 0a 20 20 20 20 20 20 57 68 65 6e 20 61 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 | <p>.......When.a.<code><span.cla |
| 52600 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 77 69 74 63 68 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e | ss="tok-kw">switch</span></code> |
| 52620 | 20 65 78 70 72 65 73 73 69 6f 6e 20 64 6f 65 73 20 6e 6f 74 20 68 61 76 65 20 61 6e 20 3c 63 6f | .expression.does.not.have.an.<co |
| 52640 | 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 | de><span.class="tok-kw">else</sp |
| 52660 | 61 6e 3e 3c 2f 63 6f 64 65 3e 20 63 6c 61 75 73 65 2c 0a 20 20 20 20 20 20 69 74 20 6d 75 73 74 | an></code>.clause,.......it.must |
| 52680 | 20 65 78 68 61 75 73 74 69 76 65 6c 79 20 6c 69 73 74 20 61 6c 6c 20 74 68 65 20 70 6f 73 73 69 | .exhaustively.list.all.the.possi |
| 526a0 | 62 6c 65 20 76 61 6c 75 65 73 2e 20 46 61 69 6c 75 72 65 20 74 6f 20 64 6f 20 73 6f 20 69 73 20 | ble.values..Failure.to.do.so.is. |
| 526c0 | 61 20 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 | a.compile.error:.......</p>..... |
| 526e0 | 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 |
| 52700 | 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 75 6e | -cap"><cite.class="file">test_un |
| 52720 | 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 67 3c 2f 63 | handled_enumeration_value.zig</c |
| 52740 | 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 |
| 52760 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 43 6f | n.class="tok-kw">const</span>.Co |
| 52780 | 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 6d 3c | lor.=.<span.class="tok-kw">enum< |
| 527a0 | 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 20 20 | /span>.{.....auto,.....off,..... |
| 527c0 | 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 65 73 | on,.};..<span.class="tok-kw">tes |
| 527e0 | 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">& |
| 52800 | 71 75 6f 74 3b 65 78 68 61 75 73 74 69 76 65 20 73 77 69 74 63 68 69 6e 67 26 71 75 6f 74 3b 3c | quot;exhaustive.switching"< |
| 52820 | 2f 73 70 61 6e 3e 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 |
| 52840 | 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 63 6f 6c 6f 72 20 3d 20 43 6f 6c 6f 72 2e 6f 66 66 | ">const</span>.color.=.Color.off |
| 52860 | 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 77 69 74 63 | ;.....<span.class="tok-kw">switc |
| 52880 | 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 43 6f 6c 6f 72 | h</span>.(color).{.........Color |
| 528a0 | 2e 61 75 74 6f 20 3d 26 67 74 3b 20 7b 7d 2c 0a 20 20 20 20 20 20 20 20 43 6f 6c 6f 72 2e 6f 6e | .auto.=>.{},.........Color.on |
| 528c0 | 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 3e 3c | .=>.{},.....}.}</code></pre>< |
| 528e0 | 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 |
| 52900 | 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> |
| 52920 | 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_ |
| 52940 | 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 67 3c | unhandled_enumeration_value.zig< |
| 52960 | 2f 6b 62 64 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 | /kbd>.<span.class="sgr-1m">/home |
| 52980 | 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 75 | /andy/dev/zig/doc/langref/test_u |
| 529a0 | 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 67 3a 39 | nhandled_enumeration_value.zig:9 |
| 529c0 | 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 22 | :5:.</span><span.class="sgr-31m" |
| 529e0 | 3e 65 72 72 6f 72 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d | >error:.</span><span.class="sgr- |
| 52a00 | 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 73 73 69 | 1m">switch.must.handle.all.possi |
| 52a20 | 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 6f 6c 6f | bilities.</span>....switch.(colo |
| 52a40 | 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 22 3e 5e | r).{.....<span.class="sgr-32m">^ |
| 52a60 | 7e 7e 7e 7e 7e 0a 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d | ~~~~~.</span><span.class="sgr-1m |
| 52a80 | 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 | ">/home/andy/dev/zig/doc/langref |
| 52aa0 | 2f 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 6c 75 | /test_unhandled_enumeration_valu |
| 52ac0 | 65 2e 7a 69 67 3a 33 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 | e.zig:3:5:.</span><span.class="s |
| 52ae0 | 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 |
| 52b00 | 3d 22 73 67 72 2d 31 6d 22 3e 75 6e 68 61 6e 64 6c 65 64 20 65 6e 75 6d 65 72 61 74 69 6f 6e 20 | ="sgr-1m">unhandled.enumeration. |
| 52b20 | 76 61 6c 75 65 3a 20 27 6f 66 66 27 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 6f 66 66 2c 0a 20 20 20 | value:.'off'.</span>....off,.... |
| 52b40 | 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 |
| 52b60 | 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 | n><span.class="sgr-1m">/home/and |
| 52b80 | 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 75 6e 68 61 6e | y/dev/zig/doc/langref/test_unhan |
| 52ba0 | 64 6c 65 64 5f 65 6e 75 6d 65 72 61 74 69 6f 6e 5f 76 61 6c 75 65 2e 7a 69 67 3a 31 3a 31 35 3a | dled_enumeration_value.zig:1:15: |
| 52bc0 | 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 |
| 52be0 | 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"> |
| 52c00 | 65 6e 75 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 | enum.'test_unhandled_enumeration |
| 52c20 | 5f 76 61 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 | _value.Color'.declared.here.</sp |
| 52c40 | 61 6e 3e 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 | an>const.Color.=.enum.{......... |
| 52c60 | 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 7e 7e 7e | ......<span.class="sgr-32m">^~~~ |
| 52c80 | 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>. |
| 52ca0 | 0a 20 20 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 | ...............<h3.id="Switching |
| 52cc0 | 2d 77 69 74 68 2d 45 6e 75 6d 2d 4c 69 74 65 72 61 6c 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 | -with-Enum-Literals"><a.href="#t |
| 52ce0 | 6f 63 2d 53 77 69 74 63 68 69 6e 67 2d 77 69 74 68 2d 45 6e 75 6d 2d 4c 69 74 65 72 61 6c 73 22 | oc-Switching-with-Enum-Literals" |
| 52d00 | 3e 53 77 69 74 63 68 69 6e 67 20 77 69 74 68 20 45 6e 75 6d 20 4c 69 74 65 72 61 6c 73 3c 2f 61 | >Switching.with.Enum.Literals</a |
| 52d20 | 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 77 69 74 63 68 69 6e | >.<a.class="hdr".href="#Switchin |
| 52d40 | 67 2d 77 69 74 68 2d 45 6e 75 6d 2d 4c 69 74 65 72 61 6c 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 | g-with-Enum-Literals">..</a></h3 |
| 52d60 | 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 45 6e 75 | >........<p>.......<a.href="#Enu |
| 52d80 | 6d 2d 4c 69 74 65 72 61 6c 73 22 3e 45 6e 75 6d 20 4c 69 74 65 72 61 6c 73 3c 2f 61 3e 20 63 61 | m-Literals">Enum.Literals</a>.ca |
| 52da0 | 6e 20 62 65 20 75 73 65 66 75 6c 20 74 6f 20 75 73 65 20 77 69 74 68 20 3c 63 6f 64 65 3e 3c 73 | n.be.useful.to.use.with.<code><s |
| 52dc0 | 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> |
| 52de0 | 3c 2f 63 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 | </code>.to.avoid.......repetitiv |
| 52e00 | 65 6c 79 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 | ely.specifying.<a.href="#enum">e |
| 52e20 | 6e 75 6d 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 | num</a>.or.<a.href="#union">unio |
| 52e40 | 6e 3c 2f 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 | n</a>.types:.......</p>.......<f |
| 52e60 | 69 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 |
| 52e80 | 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 68 61 75 73 | "><cite.class="file">test_exhaus |
| 52ea0 | 74 69 76 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 | tive_switch.zig</cite></figcapti |
| 52ec0 | 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 |
| 52ee0 | 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 |
| 52f00 | 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>(< |
| 52f20 | 73 70 61 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 |
| 52f40 | 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 |
| 52f60 | 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 |
| 52f80 | 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 |
| 52fa0 | 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 6e 20 63 6c | w">const</span>.Color.=.<span.cl |
| 52fc0 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6e 75 6d 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 61 | ass="tok-kw">enum</span>.{.....a |
| 52fe0 | 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 70 61 6e 20 | uto,.....off,.....on,.};..<span. |
| 53000 | 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 |
| 53020 | 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 6c 69 74 65 | .class="tok-str">"enum.lite |
| 53040 | 72 61 6c 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 | rals.with.switch"</span>.{. |
| 53060 | 20 20 20 20 3c 73 70 61 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</ |
| 53080 | 73 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 | span>.color.=.Color.off;.....<sp |
| 530a0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 72 | an.class="tok-kw">const</span>.r |
| 530c0 | 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 73 77 69 | esult.=.<span.class="tok-kw">swi |
| 530e0 | 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 2e 61 75 | tch</span>.(color).{..........au |
| 53100 | 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 6c 22 3e | to.=>.<span.class="tok-null"> |
| 53120 | 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 74 3b 20 | false</span>,..........on.=>. |
| 53140 | 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 |
| 53160 | 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 63 6c | an>,..........off.=>.<span.cl |
| 53180 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 | ass="tok-null">true</span>,..... |
| 531a0 | 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< |
| 531c0 | 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 65 3e 3c | /span>.expect(result);.}</code>< |
| 531e0 | 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 |
| 53200 | 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 |
| 53220 | 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 |
| 53240 | 20 74 65 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 | .test_exhaustive_switch.zig</kbd |
| 53260 | 3e 0a 31 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 | >.1/1.test_exhaustive_switch.tes |
| 53280 | 74 2e 65 6e 75 6d 20 6c 69 74 65 72 61 6c 73 20 77 69 74 68 20 73 77 69 74 63 68 2e 2e 2e 4f 4b | t.enum.literals.with.switch...OK |
| 532a0 | 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 |
| 532c0 | 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 33 20 69 | e></figure>................<h3.i |
| 532e0 | 64 3d 22 4c 61 62 65 6c 65 64 2d 73 77 69 74 63 68 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 | d="Labeled-switch"><a.href="#toc |
| 53300 | 2d 4c 61 62 65 6c 65 64 2d 73 77 69 74 63 68 22 3e 4c 61 62 65 6c 65 64 20 73 77 69 74 63 68 3c | -Labeled-switch">Labeled.switch< |
| 53320 | 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 61 62 65 6c 65 | /a>.<a.class="hdr".href="#Labele |
| 53340 | 64 2d 73 77 69 74 63 68 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e | d-switch">..</a></h3>........<p> |
| 53360 | 0a 20 20 20 20 20 20 57 68 65 6e 20 61 20 73 77 69 74 63 68 20 73 74 61 74 65 6d 65 6e 74 20 69 | .......When.a.switch.statement.i |
| 53380 | 73 20 6c 61 62 65 6c 65 64 2c 20 69 74 20 63 61 6e 20 62 65 20 72 65 66 65 72 65 6e 63 65 64 20 | s.labeled,.it.can.be.referenced. |
| 533a0 | 66 72 6f 6d 20 61 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 | from.a.......<code><span.class=" |
| 533c0 | 74 6f 6b 2d 6b 77 22 3e 62 72 65 61 6b 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6f 72 20 3c | tok-kw">break</span></code>.or.< |
| 533e0 | 63 6f 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 |
| 53400 | 75 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 | ue</span></code>........<code><s |
| 53420 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 62 72 65 61 6b 3c 2f 73 70 61 6e 3e 3c | pan.class="tok-kw">break</span>< |
| 53440 | 2f 63 6f 64 65 3e 20 77 69 6c 6c 20 72 65 74 75 72 6e 20 61 20 76 61 6c 75 65 20 66 72 6f 6d 20 | /code>.will.return.a.value.from. |
| 53460 | 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 73 | the.<code><span.class="tok-kw">s |
| 53480 | 77 69 74 63 68 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 | witch</span></code>........</p>. |
| 534a0 | 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 41 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c | ......<p>.......A.<code><span.cl |
| 534c0 | 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 |
| 534e0 | 64 65 3e 20 74 61 72 67 65 74 69 6e 67 20 61 20 73 77 69 74 63 68 20 6d 75 73 74 20 68 61 76 65 | de>.targeting.a.switch.must.have |
| 53500 | 20 61 6e 0a 20 20 20 20 20 20 6f 70 65 72 61 6e 64 2e 20 57 68 65 6e 20 65 78 65 63 75 74 65 64 | .an.......operand..When.executed |
| 53520 | 2c 20 69 74 20 77 69 6c 6c 20 6a 75 6d 70 20 74 6f 20 74 68 65 20 6d 61 74 63 68 69 6e 67 20 70 | ,.it.will.jump.to.the.matching.p |
| 53540 | 72 6f 6e 67 2c 20 61 73 20 69 66 20 74 68 65 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 | rong,.as.if.the.......<code><spa |
| 53560 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 77 69 74 63 68 3c 2f 73 70 61 6e 3e 3c 2f | n.class="tok-kw">switch</span></ |
| 53580 | 63 6f 64 65 3e 20 77 65 72 65 20 65 78 65 63 75 74 65 64 20 61 67 61 69 6e 20 77 69 74 68 20 74 | code>.were.executed.again.with.t |
| 535a0 | 68 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f | he.<code><span.class="tok-kw">co |
| 535c0 | 6e 74 69 6e 75 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 27 73 20 6f 70 65 72 61 6e 64 20 72 | ntinue</span></code>'s.operand.r |
| 535e0 | 65 70 6c 61 63 69 6e 67 20 74 68 65 20 69 6e 69 74 69 61 6c 20 73 77 69 74 63 68 20 76 61 6c 75 | eplacing.the.initial.switch.valu |
| 53600 | 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 | e........</p>........<figure><fi |
| 53620 | 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 |
| 53640 | 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 73 77 69 74 63 68 5f 63 6f 6e 74 69 6e 75 65 | lass="file">test_switch_continue |
| 53660 | 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 |
| 53680 | 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 |
| 536a0 | 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 |
| 536c0 | 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= |
| 536e0 | 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> |
| 53700 | 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 3c 2f 73 | );..<span.class="tok-kw">test</s |
| 53720 | 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">" |
| 53740 | 3b 73 77 69 74 63 68 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 | ;switch.continue"</span>.{. |
| 53760 | 20 20 20 20 73 77 3a 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 | ....sw:.<span.class="tok-kw">swi |
| 53780 | 74 63 68 3c 2f 73 70 61 6e 3e 20 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 | tch</span>.(<span.class="tok-bui |
| 537a0 | 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 |
| 537c0 | 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= |
| 537e0 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 29 29 20 7b 0a 20 20 20 20 20 20 | "tok-number">5</span>)).{....... |
| 53800 | 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 35 3c 2f 73 70 | ..<span.class="tok-number">5</sp |
| 53820 | 61 6e 3e 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 | an>.=>.<span.class="tok-kw">c |
| 53840 | 6f 6e 74 69 6e 75 65 3c 2f 73 70 61 6e 3e 20 3a 73 77 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ontinue</span>.:sw.<span.class=" |
| 53860 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 2c 0a 0a 20 20 20 20 20 20 20 20 3c | tok-number">4</span>,..........< |
| 53880 | 73 70 61 6e 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 63 6f 6e | span.class="tok-comment">//.`con |
| 538a0 | 74 69 6e 75 65 60 20 63 61 6e 20 6f 63 63 75 72 20 6d 75 6c 74 69 70 6c 65 20 74 69 6d 65 73 20 | tinue`.can.occur.multiple.times. |
| 538c0 | 77 69 74 68 69 6e 20 61 20 73 69 6e 67 6c 65 20 73 77 69 74 63 68 20 70 72 6f 6e 67 2e 3c 2f 73 | within.a.single.switch.prong.</s |
| 538e0 | 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 6e 75 | pan>.........<span.class="tok-nu |
| 53900 | 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 2e 2e 2e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | mber">2</span>...<span.class="to |
| 53920 | 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 7c 76 7c 20 7b 0a 20 | k-number">4</span>.=>.|v|.{.. |
| 53940 | 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | ...........<span.class="tok-kw"> |
| 53960 | 69 66 3c 2f 73 70 61 6e 3e 20 28 76 20 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | if</span>.(v.>.<span.class="t |
| 53980 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 20 20 20 20 20 | ok-number">3</span>).{.......... |
| 539a0 | 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 74 | .......<span.class="tok-kw">cont |
| 539c0 | 69 6e 75 65 3c 2f 73 70 61 6e 3e 20 3a 73 77 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | inue</span>.:sw.<span.class="tok |
| 539e0 | 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d | -number">2</span>;.............} |
| 53a00 | 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 |
| 53a20 | 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e | >.<span.class="tok-kw">if</span> |
| 53a40 | 20 28 76 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e | .(v.==.<span.class="tok-number"> |
| 53a60 | 33 3c 2f 73 70 61 6e 3e 29 20 7b 0a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 | 3</span>).{..................<sp |
| 53a80 | 61 6e 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 62 72 65 61 6b | an.class="tok-comment">//.`break |
| 53aa0 | 60 20 63 61 6e 20 74 61 72 67 65 74 20 6c 61 62 65 6c 65 64 20 6c 6f 6f 70 73 2e 3c 2f 73 70 61 | `.can.target.labeled.loops.</spa |
| 53ac0 | 6e 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | n>.................<span.class=" |
| 53ae0 | 74 6f 6b 2d 6b 77 22 3e 62 72 65 61 6b 3c 2f 73 70 61 6e 3e 20 3a 73 77 3b 0a 20 20 20 20 20 20 | tok-kw">break</span>.:sw;....... |
| 53b00 | 20 20 20 20 20 20 7d 0a 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 |
| 53b20 | 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 73 77 20 3c 73 | ="tok-kw">continue</span>.:sw.<s |
| 53b40 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b | pan.class="tok-number">1</span>; |
| 53b60 | 0a 20 20 20 20 20 20 20 20 7d 2c 0a 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | .........},..........<span.class |
| 53b80 | 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 20 3c 73 70 | ="tok-number">1</span>.=>.<sp |
| 53ba0 | 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 2c | an.class="tok-kw">return</span>, |
| 53bc0 | 0a 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 | ..........<span.class="tok-kw">e |
| 53be0 | 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 |
| 53c00 | 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 0a | k-kw">unreachable</span>,.....}. |
| 53c20 | 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>< |
| 53c40 | 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 |
| 53c60 | 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 |
| 53c80 | 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 73 77 69 74 63 68 5f 63 6f 6e 74 69 6e 75 65 2e 7a | >zig.test.test_switch_continue.z |
| 53ca0 | 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 73 77 69 74 63 68 5f 63 6f 6e 74 69 6e 75 | ig</kbd>.1/1.test_switch_continu |
| 53cc0 | 65 2e 74 65 73 74 2e 73 77 69 74 63 68 20 63 6f 6e 74 69 6e 75 65 2e 2e 2e 4f 4b 0a 41 6c 6c 20 | e.test.switch.continue...OK.All. |
| 53ce0 | 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 |
| 53d00 | 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 6d 61 6e 74 69 63 | igure>........<p>.......Semantic |
| 53d20 | 61 6c 6c 79 2c 20 74 68 69 73 20 69 73 20 65 71 75 69 76 61 6c 65 6e 74 20 74 6f 20 74 68 65 20 | ally,.this.is.equivalent.to.the. |
| 53d40 | 66 6f 6c 6c 6f 77 69 6e 67 20 6c 6f 6f 70 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 | following.loop:.......</p>...... |
| 53d60 | 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- |
| 53d80 | 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 77 69 | cap"><cite.class="file">test_swi |
| 53da0 | 74 63 68 5f 63 6f 6e 74 69 6e 75 65 5f 65 71 75 69 76 61 6c 65 6e 74 2e 7a 69 67 3c 2f 63 69 74 | tch_continue_equivalent.zig</cit |
| 53dc0 | 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. |
| 53de0 | 63 6c 61 73 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. |
| 53e00 | 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 |
| 53e20 | 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" |
| 53e40 | 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 |
| 53e60 | 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 |
| 53e80 | 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 20 63 | n.class="tok-str">"switch.c |
| 53ea0 | 6f 6e 74 69 6e 75 65 2c 20 65 71 75 69 76 61 6c 65 6e 74 20 6c 6f 6f 70 26 71 75 6f 74 3b 3c 2f | ontinue,.equivalent.loop"</ |
| 53ec0 | 73 70 61 6e 3e 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" |
| 53ee0 | 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 73 77 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | >var</span>.sw:.<span.class="tok |
| 53f00 | 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= |
| 53f20 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e | "tok-number">5</span>;.....<span |
| 53f40 | 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 |
| 53f60 | 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> |
| 53f80 | 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" |
| 53fa0 | 3e 73 77 69 74 63 68 3c 2f 73 70 61 6e 3e 20 28 73 77 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 | >switch</span>.(sw).{........... |
| 53fc0 | 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 35 3c 2f 73 70 | ..<span.class="tok-number">5</sp |
| 53fe0 | 61 6e 3e 20 3d 26 67 74 3b 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 77 20 3d | an>.=>.{.................sw.= |
| 54000 | 20 3c 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 |
| 54020 | 6e 3e 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | n>;.................<span.class= |
| 54040 | 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>;....... |
| 54060 | 20 20 20 20 20 20 7d 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 | ......},.............<span.class |
| 54080 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 2e 2e 2e 3c 73 70 61 6e 20 63 | ="tok-number">2</span>...<span.c |
| 540a0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 20 3d 26 67 74 3b | lass="tok-number">4</span>.=> |
| 540c0 | 20 7c 76 7c 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 61 | .|v|.{.................<span.cla |
| 540e0 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 76 20 26 67 74 3b 20 3c 73 | ss="tok-kw">if</span>.(v.>.<s |
| 54100 | 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>) |
| 54120 | 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 77 20 3d 20 3c 73 70 61 | .{.....................sw.=.<spa |
| 54140 | 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>;.. |
| 54160 | 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=" |
| 54180 | 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 20 | tok-kw">continue</span>;........ |
| 541a0 | 20 20 20 20 20 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 | .........}.<span.class="tok-kw"> |
| 541c0 | 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 22 | else</span>.<span.class="tok-kw" |
| 541e0 | 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 76 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | >if</span>.(v.==.<span.class="to |
| 54200 | 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 | k-number">3</span>).{........... |
| 54220 | 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 62 | ..........<span.class="tok-kw">b |
| 54240 | 72 65 61 6b 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 0a | reak</span>;.................}.. |
| 54260 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 77 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ................sw.=.<span.class |
| 54280 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 20 20 20 20 | ="tok-number">1</span>;......... |
| 542a0 | 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 |
| 542c0 | 74 69 6e 75 65 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 | tinue</span>;.............},.... |
| 542e0 | 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 |
| 54300 | 22 3e 31 3c 2f 73 70 61 6e 3e 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ">1</span>.=>.<span.class="to |
| 54320 | 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 20 20 20 | k-kw">return</span>,............ |
| 54340 | 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 |
| 54360 | 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 |
| 54380 | 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 0a 20 20 20 20 7d | eachable</span>,.........}.....} |
| 543a0 | 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> |
| 543c0 | 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 |
| 543e0 | 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 |
| 54400 | 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 73 77 69 74 63 68 5f 63 6f 6e 74 69 6e 75 65 5f | d>zig.test.test_switch_continue_ |
| 54420 | 65 71 75 69 76 61 6c 65 6e 74 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 73 77 | equivalent.zig</kbd>.1/1.test_sw |
| 54440 | 69 74 63 68 5f 63 6f 6e 74 69 6e 75 65 5f 65 71 75 69 76 61 6c 65 6e 74 2e 74 65 73 74 2e 73 77 | itch_continue_equivalent.test.sw |
| 54460 | 69 74 63 68 20 63 6f 6e 74 69 6e 75 65 2c 20 65 71 75 69 76 61 6c 65 6e 74 20 6c 6f 6f 70 2e 2e | itch.continue,.equivalent.loop.. |
| 54480 | 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>< |
| 544a0 | 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>....... |
| 544c0 | 54 68 69 73 20 63 61 6e 20 69 6d 70 72 6f 76 65 20 63 6c 61 72 69 74 79 20 6f 66 20 28 66 6f 72 | This.can.improve.clarity.of.(for |
| 544e0 | 20 65 78 61 6d 70 6c 65 29 20 73 74 61 74 65 20 6d 61 63 68 69 6e 65 73 2c 20 77 68 65 72 65 20 | .example).state.machines,.where. |
| 54500 | 74 68 65 20 73 79 6e 74 61 78 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | the.syntax.<code><span.class="to |
| 54520 | 6b 2d 6b 77 22 3e 63 6f 6e 74 69 6e 75 65 3c 2f 73 70 61 6e 3e 20 3a 73 77 20 2e 6e 65 78 74 5f | k-kw">continue</span>.:sw..next_ |
| 54540 | 73 74 61 74 65 3c 2f 63 6f 64 65 3e 20 69 73 20 75 6e 61 6d 62 69 67 75 6f 75 73 2c 20 65 78 70 | state</code>.is.unambiguous,.exp |
| 54560 | 6c 69 63 69 74 2c 20 61 6e 64 20 69 6d 6d 65 64 69 61 74 65 6c 79 20 75 6e 64 65 72 73 74 61 6e | licit,.and.immediately.understan |
| 54580 | 64 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 | dable........</p>.......<p>..... |
| 545a0 | 20 20 48 6f 77 65 76 65 72 2c 20 74 68 65 20 6d 6f 74 69 76 61 74 69 6e 67 20 65 78 61 6d 70 6c | ..However,.the.motivating.exampl |
| 545c0 | 65 20 69 73 20 61 20 73 77 69 74 63 68 20 6f 6e 20 65 61 63 68 20 65 6c 65 6d 65 6e 74 20 6f 66 | e.is.a.switch.on.each.element.of |
| 545e0 | 20 61 6e 20 61 72 72 61 79 2c 20 77 68 65 72 65 20 75 73 69 6e 67 20 61 20 73 69 6e 67 6c 65 20 | .an.array,.where.using.a.single. |
| 54600 | 73 77 69 74 63 68 20 63 61 6e 20 69 6d 70 72 6f 76 65 20 63 6c 61 72 69 74 79 20 61 6e 64 20 70 | switch.can.improve.clarity.and.p |
| 54620 | 65 72 66 6f 72 6d 61 6e 63 65 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 | erformance:.......</p>.......<fi |
| 54640 | 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" |
| 54660 | 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 77 69 74 63 68 5f | ><cite.class="file">test_switch_ |
| 54680 | 64 69 73 70 61 74 63 68 5f 6c 6f 6f 70 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 | dispatch_loop.zig</cite></figcap |
| 546a0 | 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 |
| 546c0 | 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 |
| 546e0 | 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> |
| 54700 | 28 3c 73 70 61 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 |
| 54720 | 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 |
| 54740 | 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 6c 20 3d 20 | -kw">const</span>.expectEqual.=. |
| 54760 | 73 74 64 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 45 71 75 61 6c 3b 0a 0a 3c 73 70 61 6e 20 | std.testing.expectEqual;..<span. |
| 54780 | 63 6c 61 73 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 6e 73 74 | class="tok-kw">const</span>.Inst |
| 547a0 | 72 75 63 74 69 6f 6e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 | ruction.=.<span.class="tok-kw">e |
| 547c0 | 6e 75 6d 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 61 64 64 2c 0a 20 20 20 20 6d 75 6c 2c 0a 20 | num</span>.{.....add,.....mul,.. |
| 547e0 | 20 20 20 65 6e 64 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | ...end,.};..<span.class="tok-kw" |
| 54800 | 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"> |
| 54820 | 65 76 61 6c 75 61 74 65 3c 2f 73 70 61 6e 3e 28 69 6e 69 74 69 61 6c 5f 73 74 61 63 6b 3a 20 5b | evaluate</span>(initial_stack:.[ |
| 54840 | 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 |
| 54860 | 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 | n>.<span.class="tok-type">i32</s |
| 54880 | 70 61 6e 3e 2c 20 63 6f 64 65 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | pan>,.code:.[]<span.class="tok-k |
| 548a0 | 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 49 6e 73 74 72 75 63 74 69 6f 6e 29 20 21 3c 73 | w">const</span>.Instruction).!<s |
| 548c0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 | pan.class="tok-type">i32</span>. |
| 548e0 | 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</ |
| 54900 | 73 70 61 6e 3e 20 62 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 | span>.buffer:.[<span.class="tok- |
| 54920 | 6e 75 6d 62 65 72 22 3e 38 3c 2f 73 70 61 6e 3e 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | number">8</span>]<span.class="to |
| 54940 | 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 |
| 54960 | 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 75 6e 64 65 66 69 6e 65 64 3c 2f 73 70 61 6e 3e 3b 0a 20 20 | ="tok-null">undefined</span>;... |
| 54980 | 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 |
| 549a0 | 3e 20 73 74 61 63 6b 20 3d 20 73 74 64 2e 41 72 72 61 79 4c 69 73 74 55 6e 6d 61 6e 61 67 65 64 | >.stack.=.std.ArrayListUnmanaged |
| 549c0 | 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 |
| 549e0 | 6e 3e 29 2e 69 6e 69 74 42 75 66 66 65 72 28 26 61 6d 70 3b 62 75 66 66 65 72 29 3b 0a 20 20 20 | n>).initBuffer(&buffer);.... |
| 54a00 | 20 3c 73 70 61 6e 20 63 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> |
| 54a20 | 20 73 74 61 63 6b 2e 61 70 70 65 6e 64 53 6c 69 63 65 42 6f 75 6e 64 65 64 28 69 6e 69 74 69 61 | .stack.appendSliceBounded(initia |
| 54a40 | 6c 5f 73 74 61 63 6b 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | l_stack);.....<span.class="tok-k |
| 54a60 | 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 69 70 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | w">var</span>.ip:.<span.class="t |
| 54a80 | 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 |
| 54aa0 | 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>;...... |
| 54ac0 | 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 |
| 54ae0 | 6e 3e 20 76 6d 3a 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>.vm:.<span.class="tok-kw">swit |
| 54b00 | 63 68 3c 2f 73 70 61 6e 3e 20 28 63 6f 64 65 5b 69 70 5d 29 20 7b 0a 20 20 20 20 20 20 20 20 3c | ch</span>.(code[ip]).{.........< |
| 54b20 | 73 70 61 6e 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 65 63 61 | span.class="tok-comment">//.Beca |
| 54b40 | 75 73 65 20 61 6c 6c 20 63 6f 64 65 20 61 66 74 65 72 20 60 63 6f 6e 74 69 6e 75 65 60 20 69 73 | use.all.code.after.`continue`.is |
| 54b60 | 20 75 6e 72 65 61 63 68 61 62 6c 65 2c 20 74 68 69 73 20 62 72 61 6e 63 68 20 64 6f 65 73 3c 2f | .unreachable,.this.branch.does</ |
| 54b80 | 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 | span>.........<span.class="tok-c |
| 54ba0 | 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 6e 6f 74 20 70 72 6f 76 69 64 65 20 61 20 72 65 73 75 6c 74 2e | omment">//.not.provide.a.result. |
| 54bc0 | 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 2e 61 64 64 20 3d 26 67 74 3b 20 7b 0a 20 20 20 | </span>..........add.=>.{.... |
| 54be0 | 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 | .........<span.class="tok-kw">tr |
| 54c00 | 79 3c 2f 73 70 61 6e 3e 20 73 74 61 63 6b 2e 61 70 70 65 6e 64 42 6f 75 6e 64 65 64 28 73 74 61 | y</span>.stack.appendBounded(sta |
| 54c20 | 63 6b 2e 70 6f 70 28 29 2e 3f 20 2b 20 73 74 61 63 6b 2e 70 6f 70 28 29 2e 3f 29 3b 0a 0a 20 20 | ck.pop().?.+.stack.pop().?);.... |
| 54c40 | 20 20 20 20 20 20 20 20 20 20 69 70 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ..........ip.+=.<span.class="tok |
| 54c60 | 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 20 3c | -number">1</span>;.............< |
| 54c80 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 74 69 6e 75 65 3c 2f 73 70 | span.class="tok-kw">continue</sp |
| 54ca0 | 61 6e 3e 20 3a 76 6d 20 63 6f 64 65 5b 69 70 5d 3b 0a 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 | an>.:vm.code[ip];.........},.... |
| 54cc0 | 20 20 20 20 20 2e 6d 75 6c 20 3d 26 67 74 3b 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 | ......mul.=>.{.............<s |
| 54ce0 | 70 61 6e 20 63 6c 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 | pan.class="tok-kw">try</span>.st |
| 54d00 | 61 63 6b 2e 61 70 70 65 6e 64 42 6f 75 6e 64 65 64 28 73 74 61 63 6b 2e 70 6f 70 28 29 2e 3f 20 | ack.appendBounded(stack.pop().?. |
| 54d20 | 2a 20 73 74 61 63 6b 2e 70 6f 70 28 29 2e 3f 29 3b 0a 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 | *.stack.pop().?);..............i |
| 54d40 | 70 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 | p.+=.<span.class="tok-number">1< |
| 54d60 | 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | /span>;.............<span.class= |
| 54d80 | 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 76 6d 20 63 6f 64 | "tok-kw">continue</span>.:vm.cod |
| 54da0 | 65 5b 69 70 5d 3b 0a 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 2e 65 6e 64 20 3d | e[ip];.........},..........end.= |
| 54dc0 | 26 67 74 3b 20 73 74 61 63 6b 2e 70 6f 70 28 29 2e 3f 2c 0a 20 20 20 20 7d 3b 0a 7d 0a 0a 3c 73 | >.stack.pop().?,.....};.}..<s |
| 54de0 | 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>.< |
| 54e00 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 65 76 61 6c 75 | span.class="tok-str">"evalu |
| 54e20 | 61 74 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 | ate"</span>.{.....<span.cla |
| 54e40 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 72 65 73 75 6c 74 20 | ss="tok-kw">const</span>.result. |
| 54e60 | 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 |
| 54e80 | 3e 20 65 76 61 6c 75 61 74 65 28 26 61 6d 70 3b 2e 7b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | >.evaluate(&.{.<span.class=" |
| 54ea0 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 37 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 | tok-number">7</span>,.<span.clas |
| 54ec0 | 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 2d 3c 73 70 61 6e 20 | s="tok-number">2</span>,.-<span. |
| 54ee0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 20 7d 2c 20 26 | class="tok-number">3</span>.},.& |
| 54f00 | 61 6d 70 3b 2e 7b 20 2e 6d 75 6c 2c 20 2e 61 64 64 2c 20 2e 65 6e 64 20 7d 29 3b 0a 20 20 20 20 | amp;.{..mul,..add,..end.});..... |
| 54f20 | 3c 73 70 61 6e 20 63 6c 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>. |
| 54f40 | 65 78 70 65 63 74 45 71 75 61 6c 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | expectEqual(<span.class="tok-num |
| 54f60 | 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 2c 20 72 65 73 75 6c 74 29 3b 0a 7d 3c 2f 63 6f 64 65 3e | ber">1</span>,.result);.}</code> |
| 54f80 | 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 |
| 54fa0 | 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 |
| 54fc0 | 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 |
| 54fe0 | 74 20 74 65 73 74 5f 73 77 69 74 63 68 5f 64 69 73 70 61 74 63 68 5f 6c 6f 6f 70 2e 7a 69 67 3c | t.test_switch_dispatch_loop.zig< |
| 55000 | 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 73 77 69 74 63 68 5f 64 69 73 70 61 74 63 68 5f 6c | /kbd>.1/1.test_switch_dispatch_l |
| 55020 | 6f 6f 70 2e 74 65 73 74 2e 65 76 61 6c 75 61 74 65 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 | oop.test.evaluate...OK.All.1.tes |
| 55040 | 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 |
| 55060 | 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 66 20 74 68 65 20 6f 70 65 72 61 6e | >........<p>.......If.the.operan |
| 55080 | 64 20 74 6f 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | d.to.<code><span.class="tok-kw"> |
| 550a0 | 63 6f 6e 74 69 6e 75 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 69 73 0a 20 20 20 20 20 20 | continue</span></code>.is....... |
| 550c0 | 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> |
| 550e0 | 2d 6b 6e 6f 77 6e 2c 20 74 68 65 6e 20 69 74 20 63 61 6e 20 62 65 20 6c 6f 77 65 72 65 64 20 74 | -known,.then.it.can.be.lowered.t |
| 55100 | 6f 20 61 6e 20 75 6e 63 6f 6e 64 69 74 69 6f 6e 61 6c 20 62 72 61 6e 63 68 0a 20 20 20 20 20 20 | o.an.unconditional.branch....... |
| 55120 | 74 6f 20 74 68 65 20 72 65 6c 65 76 61 6e 74 20 63 61 73 65 2e 20 53 75 63 68 20 61 20 62 72 61 | to.the.relevant.case..Such.a.bra |
| 55140 | 6e 63 68 20 69 73 20 70 65 72 66 65 63 74 6c 79 20 70 72 65 64 69 63 74 65 64 2c 20 61 6e 64 20 | nch.is.perfectly.predicted,.and. |
| 55160 | 68 65 6e 63 65 0a 20 20 20 20 20 20 74 79 70 69 63 61 6c 6c 79 20 76 65 72 79 20 66 61 73 74 20 | hence.......typically.very.fast. |
| 55180 | 74 6f 20 65 78 65 63 75 74 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 0a 20 20 20 20 20 20 3c 70 | to.execute........</p>........<p |
| 551a0 | 3e 0a 20 20 20 20 20 20 49 66 20 74 68 65 20 6f 70 65 72 61 6e 64 20 69 73 20 72 75 6e 74 69 6d | >.......If.the.operand.is.runtim |
| 551c0 | 65 2d 6b 6e 6f 77 6e 2c 20 65 61 63 68 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | e-known,.each.<code><span.class= |
| 551e0 | 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 74 69 6e 75 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 | "tok-kw">continue</span></code>. |
| 55200 | 63 61 6e 0a 20 20 20 20 20 20 65 6d 62 65 64 20 61 20 63 6f 6e 64 69 74 69 6f 6e 61 6c 20 62 72 | can.......embed.a.conditional.br |
| 55220 | 61 6e 63 68 20 69 6e 6c 69 6e 65 20 28 69 64 65 61 6c 6c 79 20 74 68 72 6f 75 67 68 20 61 20 6a | anch.inline.(ideally.through.a.j |
| 55240 | 75 6d 70 20 74 61 62 6c 65 29 2c 20 77 68 69 63 68 0a 20 20 20 20 20 20 61 6c 6c 6f 77 73 20 61 | ump.table),.which.......allows.a |
| 55260 | 20 43 50 55 20 74 6f 20 70 72 65 64 69 63 74 20 69 74 73 20 74 61 72 67 65 74 20 69 6e 64 65 70 | .CPU.to.predict.its.target.indep |
| 55280 | 65 6e 64 65 6e 74 6c 79 20 6f 66 20 61 6e 79 20 6f 74 68 65 72 20 70 72 6f 6e 67 2e 20 41 0a 20 | endently.of.any.other.prong..A.. |
| 552a0 | 20 20 20 20 20 6c 6f 6f 70 2d 62 61 73 65 64 20 6c 6f 77 65 72 69 6e 67 20 77 6f 75 6c 64 20 66 | .....loop-based.lowering.would.f |
| 552c0 | 6f 72 63 65 20 65 76 65 72 79 20 62 72 61 6e 63 68 20 74 68 72 6f 75 67 68 20 74 68 65 20 73 61 | orce.every.branch.through.the.sa |
| 552e0 | 6d 65 20 64 69 73 70 61 74 63 68 0a 20 20 20 20 20 20 70 6f 69 6e 74 2c 20 68 69 6e 64 65 72 69 | me.dispatch.......point,.hinderi |
| 55300 | 6e 67 20 62 72 61 6e 63 68 20 70 72 65 64 69 63 74 69 6f 6e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e | ng.branch.prediction........</p> |
| 55320 | 0a 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 49 6e 6c 69 6e 65 2d | .................<h3.id="Inline- |
| 55340 | 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 74 6f 63 2d 49 6e 6c | Switch-Prongs"><a.href="#toc-Inl |
| 55360 | 69 6e 65 2d 53 77 69 74 63 68 2d 50 72 6f 6e 67 73 22 3e 49 6e 6c 69 6e 65 20 53 77 69 74 63 68 | ine-Switch-Prongs">Inline.Switch |
| 55380 | 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 22 20 68 72 65 66 3d | .Prongs</a>.<a.class="hdr".href= |
| 553a0 | 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 a7 3c 2f 61 3e 3c 2f | "#Inline-Switch-Prongs">..</a></ |
| 553c0 | 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 63 68 20 70 72 6f 6e | h3>........<p>.......Switch.pron |
| 553e0 | 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 3e 3c 73 70 61 6e 20 | gs.can.be.marked.as.<code><span. |
| 55400 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 6e 6c 69 6e 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f | class="tok-kw">inline</span></co |
| 55420 | 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 20 70 72 6f 6e 67 27 | de>.to.generate.......the.prong' |
| 55440 | 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 76 61 6c 75 65 20 69 | s.body.for.each.possible.value.i |
| 55460 | 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 20 20 20 20 20 20 63 | t.could.have,.making.the.......c |
| 55480 | 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 6f 6d 70 74 69 6d 65 | aptured.value.<a.href="#comptime |
| 554a0 | 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 20 20 | ">comptime</a>........</p>...... |
| 554c0 | 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- |
| 554e0 | 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 6c | cap"><cite.class="file">test_inl |
| 55500 | 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 67 63 61 70 74 69 6f | ine_switch.zig</cite></figcaptio |
| 55520 | 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 |
| 55540 | 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 |
| 55560 | 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 |
| 55580 | 70 61 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 |
| 555a0 | 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 |
| 555c0 | 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 |
| 555e0 | 69 6e 67 2e 65 78 70 65 63 74 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | ing.expect;.<span.class="tok-kw" |
| 55600 | 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 20 3d 20 73 74 64 2e | >const</span>.expectError.=.std. |
| 55620 | 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 61 6e 20 63 6c 61 73 | testing.expectError;..<span.clas |
| 55640 | 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 |
| 55660 | 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 3c 2f 73 70 61 6e 3e | ="tok-fn">isFieldOptional</span> |
| 55680 | 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f | (<span.class="tok-kw">comptime</ |
| 556a0 | 73 70 61 6e 3e 20 54 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | span>.T:.<span.class="tok-type"> |
| 556c0 | 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 20 3c 73 70 61 6e 20 | type</span>,.field_index:.<span. |
| 556e0 | 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 21 | class="tok-type">usize</span>).! |
| 55700 | 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 |
| 55720 | 6e 3e 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 |
| 55740 | 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 20 63 6c 61 73 73 3d | nst</span>.fields.=.<span.class= |
| 55760 | 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 |
| 55780 | 29 2e 40 26 71 75 6f 74 3b 73 74 72 75 63 74 26 71 75 6f 74 3b 2e 66 69 65 6c 64 73 3b 0a 20 20 | ).@"struct".fields;... |
| 557a0 | 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 |
| 557c0 | 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 77 69 74 63 68 | pan>.<span.class="tok-kw">switch |
| 557e0 | 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 20 20 20 20 20 | </span>.(field_index).{......... |
| 55800 | 3c 73 70 61 6e 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 | <span.class="tok-comment">//.Thi |
| 55820 | 73 20 70 72 6f 6e 67 20 69 73 20 61 6e 61 6c 79 7a 65 64 20 74 77 69 63 65 20 77 69 74 68 20 60 | s.prong.is.analyzed.twice.with.` |
| 55840 | 69 64 78 60 20 62 65 69 6e 67 20 61 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 3c 73 70 61 | idx`.being.a</span>.........<spa |
| 55860 | 6e 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 74 69 6d | n.class="tok-comment">//.comptim |
| 55880 | 65 2d 6b 6e 6f 77 6e 20 76 61 6c 75 65 20 65 61 63 68 20 74 69 6d 65 2e 3c 2f 73 70 61 6e 3e 0a | e-known.value.each.time.</span>. |
| 558a0 | 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 6e 6c | ........<span.class="tok-kw">inl |
| 558c0 | 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 6e 75 6d 62 | ine</span>.<span.class="tok-numb |
| 558e0 | 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 6e | er">0</span>,.<span.class="tok-n |
| 55900 | 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 20 3d 26 67 74 3b 20 7c 69 64 78 7c 20 3c 73 70 61 | umber">1</span>.=>.|idx|.<spa |
| 55920 | 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< |
| 55940 | 2f 73 70 61 6e 3e 28 66 69 65 6c 64 73 5b 69 64 78 5d 2e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | /span>(fields[idx].<span.class=" |
| 55960 | 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 2e 6f 70 74 69 6f | tok-type">type</span>).==..optio |
| 55980 | 6e 61 6c 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 | nal,.........<span.class="tok-kw |
| 559a0 | 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= |
| 559c0 | 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 |
| 559e0 | 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 75 | ss="tok-kw">error</span>.IndexOu |
| 55a00 | 74 4f 66 42 6f 75 6e 64 73 2c 0a 20 20 20 20 7d 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | tOfBounds,.....};.}..<span.class |
| 55a20 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 53 74 72 75 63 74 31 20 3d | ="tok-kw">const</span>.Struct1.= |
| 55a40 | 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 |
| 55a60 | 61 6e 3e 20 7b 20 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | an>.{.a:.<span.class="tok-type"> |
| 55a80 | 75 33 32 3c 2f 73 70 61 6e 3e 2c 20 62 3a 20 3f 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | u32</span>,.b:.?<span.class="tok |
| 55aa0 | 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 | -type">u32</span>.};..<span.clas |
| 55ac0 | 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 |
| 55ae0 | 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 40 74 79 70 65 49 6e | ss="tok-str">"using.@typeIn |
| 55b00 | 66 6f 20 77 69 74 68 20 72 75 6e 74 69 6d 65 20 76 61 6c 75 65 73 26 71 75 6f 74 3b 3c 2f 73 70 | fo.with.runtime.values"</sp |
| 55b20 | 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 | an>.{.....<span.class="tok-kw">v |
| 55b40 | 61 72 3c 2f 73 70 61 6e 3e 20 69 6e 64 65 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ar</span>.index:.<span.class="to |
| 55b60 | 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 |
| 55b80 | 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 73 | ss="tok-number">0</span>;.....<s |
| 55ba0 | 70 61 6e 20 63 6c 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 |
| 55bc0 | 70 65 63 74 28 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f | pect(!<span.class="tok-kw">try</ |
| 55be0 | 73 70 61 6e 3e 20 69 73 46 69 65 6c 64 4f 70 74 69 6f 6e 61 6c 28 53 74 72 75 63 74 31 2c 20 69 | span>.isFieldOptional(Struct1,.i |
| 55c00 | 6e 64 65 78 29 29 3b 0a 20 20 20 20 69 6e 64 65 78 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ndex));.....index.+=.<span.class |
| 55c20 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 | ="tok-number">1</span>;.....<spa |
| 55c40 | 6e 20 63 6c 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 |
| 55c60 | 63 74 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 | ct(<span.class="tok-kw">try</spa |
| 55c80 | 6e 3e 20 69 73 46 69 65 6c 64 4f 70 74 69 6f 6e 61 6c 28 53 74 72 75 63 74 31 2c 20 69 6e 64 65 | n>.isFieldOptional(Struct1,.inde |
| 55ca0 | 78 29 29 3b 0a 20 20 20 20 69 6e 64 65 78 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | x));.....index.+=.<span.class="t |
| 55cc0 | 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 |
| 55ce0 | 6c 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 45 | lass="tok-kw">try</span>.expectE |
| 55d00 | 72 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 | rror(<span.class="tok-kw">error< |
| 55d20 | 2f 73 70 61 6e 3e 2e 49 6e 64 65 78 4f 75 74 4f 66 42 6f 75 6e 64 73 2c 20 69 73 46 69 65 6c 64 | /span>.IndexOutOfBounds,.isField |
| 55d40 | 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 7d 0a 0a 3c 73 | Optional(Struct1,.index));.}..<s |
| 55d60 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 43 61 6c 6c 73 | pan.class="tok-comment">//.Calls |
| 55d80 | 20 74 6f 20 60 69 73 46 69 65 6c 64 4f 70 74 69 6f 6e 61 6c 60 20 6f 6e 20 60 53 74 72 75 63 74 | .to.`isFieldOptional`.on.`Struct |
| 55da0 | 31 60 20 67 65 74 20 75 6e 72 6f 6c 6c 65 64 20 74 6f 20 61 6e 20 65 71 75 69 76 61 6c 65 6e 74 | 1`.get.unrolled.to.an.equivalent |
| 55dc0 | 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 |
| 55de0 | 22 3e 2f 2f 20 6f 66 20 74 68 69 73 20 66 75 6e 63 74 69 6f 6e 3a 3c 2f 73 70 61 6e 3e 0a 3c 73 | ">//.of.this.function:</span>.<s |
| 55e00 | 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 |
| 55e20 | 61 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 | an.class="tok-fn">isFieldOptiona |
| 55e40 | 6c 55 6e 72 6f 6c 6c 65 64 3c 2f 73 70 61 6e 3e 28 66 69 65 6c 64 5f 69 6e 64 65 78 3a 20 3c 73 | lUnrolled</span>(field_index:.<s |
| 55e60 | 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 |
| 55e80 | 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 6f 6c 3c | >).!<span.class="tok-type">bool< |
| 55ea0 | 2f 73 70 61 6e 3e 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 |
| 55ec0 | 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ">return</span>.<span.class="tok |
| 55ee0 | 2d 6b 77 22 3e 73 77 69 74 63 68 3c 2f 73 70 61 6e 3e 20 28 66 69 65 6c 64 5f 69 6e 64 65 78 29 | -kw">switch</span>.(field_index) |
| 55f00 | 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 6e 75 6d 62 | .{.........<span.class="tok-numb |
| 55f20 | 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | er">0</span>.=>.<span.class=" |
| 55f40 | 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 20 20 | tok-null">false</span>,......... |
| 55f60 | 3c 73 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 |
| 55f80 | 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 6c 6c 22 3e 74 | >.=>.<span.class="tok-null">t |
| 55fa0 | 72 75 65 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | rue</span>,.........<span.class= |
| 55fc0 | 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 |
| 55fe0 | 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 |
| 56000 | 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>. |
| 56020 | 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 63 6f 64 65 | IndexOutOfBounds,.....};.}</code |
| 56040 | 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 |
| 56060 | 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 |
| 56080 | 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 |
| 560a0 | 73 74 20 74 65 73 74 5f 69 6e 6c 69 6e 65 5f 73 77 69 74 63 68 2e 7a 69 67 3c 2f 6b 62 64 3e 0a | st.test_inline_switch.zig</kbd>. |
| 560c0 | 31 2f 31 20 74 65 73 74 5f 69 6e 6c 69 6e 65 5f 73 77 69 74 63 68 2e 74 65 73 74 2e 75 73 69 6e | 1/1.test_inline_switch.test.usin |
| 560e0 | 67 20 40 74 79 70 65 49 6e 66 6f 20 77 69 74 68 20 72 75 6e 74 69 6d 65 20 76 61 6c 75 65 73 2e | g.@typeInfo.with.runtime.values. |
| 56100 | 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> |
| 56120 | 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 65 20 3c 63 | </pre></figure>........<p>The.<c |
| 56140 | 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 6e 6c 69 6e 65 3c | ode><span.class="tok-kw">inline< |
| 56160 | 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6b 65 79 77 6f 72 64 20 6d 61 79 20 61 6c 73 6f 20 62 | /span></code>.keyword.may.also.b |
| 56180 | 65 20 63 6f 6d 62 69 6e 65 64 20 77 69 74 68 20 72 61 6e 67 65 73 3a 3c 2f 70 3e 0a 20 20 20 20 | e.combined.with.ranges:</p>..... |
| 561a0 | 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 |
| 561c0 | 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 69 6e 6c 69 6e 65 5f | -cap"><cite.class="file">inline_ |
| 561e0 | 70 72 6f 6e 67 5f 72 61 6e 67 65 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 | prong_range.zig</cite></figcapti |
| 56200 | 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 |
| 56220 | 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 |
| 56240 | 22 3e 69 73 46 69 65 6c 64 4f 70 74 69 6f 6e 61 6c 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 | ">isFieldOptional</span>(<span.c |
| 56260 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 54 3a | lass="tok-kw">comptime</span>.T: |
| 56280 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 | .<span.class="tok-type">type</sp |
| 562a0 | 61 6e 3e 2c 20 66 69 65 6c 64 5f 69 6e 64 65 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | an>,.field_index:.<span.class="t |
| 562c0 | 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 29 20 21 3c 73 70 61 6e 20 63 6c | ok-type">usize</span>).!<span.cl |
| 562e0 | 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 20 | ass="tok-type">bool</span>.{.... |
| 56300 | 20 3c 73 70 61 6e 20 63 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 |
| 56320 | 6e 3e 20 66 69 65 6c 64 73 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 | n>.fields.=.<span.class="tok-bui |
| 56340 | 6c 74 69 6e 22 3e 40 74 79 70 65 49 6e 66 6f 3c 2f 73 70 61 6e 3e 28 54 29 2e 40 26 71 75 6f 74 | ltin">@typeInfo</span>(T).@" |
| 56360 | 3b 73 74 72 75 63 74 26 71 75 6f 74 3b 2e 66 69 65 6c 64 73 3b 0a 20 20 20 20 3c 73 70 61 6e 20 | ;struct".fields;.....<span. |
| 56380 | 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 |
| 563a0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 77 69 74 63 68 3c 2f 73 70 61 6e 3e 20 | an.class="tok-kw">switch</span>. |
| 563c0 | 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 63 6c | (field_index).{.........<span.cl |
| 563e0 | 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 |
| 56400 | 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 2e 66 | .class="tok-number">0</span>...f |
| 56420 | 69 65 6c 64 73 2e 6c 65 6e 20 2d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | ields.len.-.<span.class="tok-num |
| 56440 | 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 20 3d 26 67 74 3b 20 7c 69 64 78 7c 20 3c 73 70 61 6e 20 | ber">1</span>.=>.|idx|.<span. |
| 56460 | 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 |
| 56480 | 70 61 6e 3e 28 66 69 65 6c 64 73 5b 69 64 78 5d 2e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | pan>(fields[idx].<span.class="to |
| 564a0 | 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 2e 6f 70 74 69 6f 6e 61 | k-type">type</span>).==..optiona |
| 564c0 | 6c 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 | l,.........<span.class="tok-kw"> |
| 564e0 | 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | else</span>.=>.<span.class="t |
| 56500 | 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 |
| 56520 | 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 75 74 4f | ="tok-kw">error</span>.IndexOutO |
| 56540 | 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 3e 3c 2f | fBounds,.....};.}</code></pre></ |
| 56560 | 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c | figure>........<p>.......<code>< |
| 56580 | 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 6e | span.class="tok-kw">inline</span |
| 565a0 | 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 61 | >.<span.class="tok-kw">else</spa |
| 565c0 | 6e 3e 3c 2f 63 6f 64 65 3e 20 70 72 6f 6e 67 73 20 63 61 6e 20 62 65 20 75 73 65 64 20 61 73 20 | n></code>.prongs.can.be.used.as. |
| 565e0 | 61 20 74 79 70 65 20 73 61 66 65 0a 20 20 20 20 20 20 61 6c 74 65 72 6e 61 74 69 76 65 20 74 6f | a.type.safe.......alternative.to |
| 56600 | 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 6e 6c 69 | .<code><span.class="tok-kw">inli |
| 56620 | 6e 65 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 | ne</span>.<span.class="tok-kw">f |
| 56640 | 6f 72 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6c 6f 6f 70 73 3a 0a 20 20 20 20 20 20 3c 2f | or</span></code>.loops:.......</ |
| 56660 | 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 |
| 56680 | 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"> |
| 566a0 | 74 65 73 74 5f 69 6e 6c 69 6e 65 5f 65 6c 73 65 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 | test_inline_else.zig</cite></fig |
| 566c0 | 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=" |
| 566e0 | 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 |
| 56700 | 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 |
| 56720 | 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">" |
| 56740 | 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=" |
| 56760 | 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 |
| 56780 | 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=" |
| 567a0 | 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 70 65 41 20 | tok-kw">const</span>.SliceTypeA. |
| 567c0 | 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 6e 3c 2f 73 | =.<span.class="tok-kw">extern</s |
| 567e0 | 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 |
| 56800 | 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 6c 65 6e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | </span>.{.....len:.<span.class=" |
| 56820 | 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 70 74 72 3a | tok-type">usize</span>,.....ptr: |
| 56840 | 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 33 32 3c 2f | .[*]<span.class="tok-type">u32</ |
| 56860 | 73 70 61 6e 3e 2c 0a 7d 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 | span>,.};.<span.class="tok-kw">c |
| 56880 | 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 53 6c 69 63 65 54 79 70 65 42 20 3d 20 3c 73 70 61 6e 20 63 | onst</span>.SliceTypeB.=.<span.c |
| 568a0 | 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 |
| 568c0 | 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>.{ |
| 568e0 | 0a 20 20 20 20 70 74 72 3a 20 5b 2a 5d 53 6c 69 63 65 54 79 70 65 41 2c 0a 20 20 20 20 6c 65 6e | .....ptr:.[*]SliceTypeA,.....len |
| 56900 | 3a 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</ |
| 56920 | 73 70 61 6e 3e 2c 0a 7d 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 | span>,.};.<span.class="tok-kw">c |
| 56940 | 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 41 6e 79 53 6c 69 63 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 | onst</span>.AnySlice.=.<span.cla |
| 56960 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 69 6f 6e 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 | ss="tok-kw">union</span>(<span.c |
| 56980 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6e 75 6d 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 | lass="tok-kw">enum</span>).{.... |
| 569a0 | 20 61 3a 20 53 6c 69 63 65 54 79 70 65 41 2c 0a 20 20 20 20 62 3a 20 53 6c 69 63 65 54 79 70 65 | .a:.SliceTypeA,.....b:.SliceType |
| 569c0 | 42 2c 0a 20 20 20 20 63 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | B,.....c:.[]<span.class="tok-kw" |
| 569e0 | 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 |
| 56a00 | 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 64 3a 20 5b 5d 41 6e 79 53 6c 69 63 | ype">u8</span>,.....d:.[]AnySlic |
| 56a20 | 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 22 3e 66 6e 3c 2f | e,.};..<span.class="tok-kw">fn</ |
| 56a40 | 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 77 69 74 68 46 | span>.<span.class="tok-fn">withF |
| 56a60 | 6f 72 3c 2f 73 70 61 6e 3e 28 61 6e 79 3a 20 41 6e 79 53 6c 69 63 65 29 20 3c 73 70 61 6e 20 63 | or</span>(any:.AnySlice).<span.c |
| 56a80 | 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 | lass="tok-type">usize</span>.{.. |
| 56aa0 | 20 20 20 3c 73 70 61 6e 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 |
| 56ac0 | 70 61 6e 3e 20 54 61 67 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c | pan>.Tag.=.<span.class="tok-buil |
| 56ae0 | 74 69 6e 22 3e 40 74 79 70 65 49 6e 66 6f 3c 2f 73 70 61 6e 3e 28 41 6e 79 53 6c 69 63 65 29 2e | tin">@typeInfo</span>(AnySlice). |
| 56b00 | 40 26 71 75 6f 74 3b 75 6e 69 6f 6e 26 71 75 6f 74 3b 2e 74 61 67 5f 74 79 70 65 2e 3f 3b 0a 20 | @"union".tag_type.?;.. |
| 56b20 | 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</ |
| 56b40 | 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</ |
| 56b60 | 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" |
| 56b80 | 3e 40 74 79 70 65 49 6e 66 6f 3c 2f 73 70 61 6e 3e 28 54 61 67 29 2e 40 26 71 75 6f 74 3b 65 6e | >@typeInfo</span>(Tag).@"en |
| 56ba0 | 75 6d 26 71 75 6f 74 3b 2e 66 69 65 6c 64 73 29 20 7c 66 69 65 6c 64 7c 20 7b 0a 20 20 20 20 20 | um".fields).|field|.{...... |
| 56bc0 | 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">//. |
| 56be0 | 57 69 74 68 20 60 69 6e 6c 69 6e 65 20 66 6f 72 60 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 67 | With.`inline.for`.the.function.g |
| 56c00 | 65 74 73 20 67 65 6e 65 72 61 74 65 64 20 61 73 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 | ets.generated.as</span>......... |
| 56c20 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 61 20 73 | <span.class="tok-comment">//.a.s |
| 56c40 | 65 72 69 65 73 20 6f 66 20 60 69 66 60 20 73 74 61 74 65 6d 65 6e 74 73 20 72 65 6c 79 69 6e 67 | eries.of.`if`.statements.relying |
| 56c60 | 20 6f 6e 20 74 68 65 20 6f 70 74 69 6d 69 7a 65 72 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 | .on.the.optimizer</span>........ |
| 56c80 | 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 6f | .<span.class="tok-comment">//.to |
| 56ca0 | 20 63 6f 6e 76 65 72 74 20 69 74 20 74 6f 20 61 20 73 77 69 74 63 68 2e 3c 2f 73 70 61 6e 3e 0a | .convert.it.to.a.switch.</span>. |
| 56cc0 | 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< |
| 56ce0 | 2f 73 70 61 6e 3e 20 28 66 69 65 6c 64 2e 76 61 6c 75 65 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 | /span>.(field.value.==.<span.cla |
| 56d00 | 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 |
| 56d20 | 70 61 6e 3e 28 61 6e 79 29 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 | pan>(any)).{.............<span.c |
| 56d40 | 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 |
| 56d60 | 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 |
| 56d80 | 61 6e 3e 28 61 6e 79 2c 20 66 69 65 6c 64 2e 6e 61 6d 65 29 2e 6c 65 6e 3b 0a 20 20 20 20 20 20 | an>(any,.field.name).len;....... |
| 56da0 | 20 20 7d 0a 20 20 20 20 7d 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 | ..}.....}.....<span.class="tok-c |
| 56dc0 | 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 57 68 65 6e 20 75 73 69 6e 67 20 60 69 6e 6c 69 6e 65 20 66 6f | omment">//.When.using.`inline.fo |
| 56de0 | 72 60 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 20 64 6f 65 73 6e 27 74 20 6b 6e 6f 77 20 74 68 61 | r`.the.compiler.doesn't.know.tha |
| 56e00 | 74 20 65 76 65 72 79 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | t.every</span>.....<span.class=" |
| 56e20 | 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 70 6f 73 73 69 62 6c 65 20 63 61 73 65 20 68 61 | tok-comment">//.possible.case.ha |
| 56e40 | 73 20 62 65 65 6e 20 68 61 6e 64 6c 65 64 20 72 65 71 75 69 72 69 6e 67 20 61 6e 20 65 78 70 6c | s.been.handled.requiring.an.expl |
| 56e60 | 69 63 69 74 20 60 75 6e 72 65 61 63 68 61 62 6c 65 60 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c | icit.`unreachable`.</span>.....< |
| 56e80 | 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< |
| 56ea0 | 2f 73 70 61 6e 3e 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | /span>;.}..<span.class="tok-kw"> |
| 56ec0 | 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 |
| 56ee0 | 69 74 68 53 77 69 74 63 68 3c 2f 73 70 61 6e 3e 28 61 6e 79 3a 20 41 6e 79 53 6c 69 63 65 29 20 | ithSwitch</span>(any:.AnySlice). |
| 56f00 | 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 |
| 56f20 | 61 6e 3e 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 |
| 56f40 | 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 |
| 56f60 | 22 3e 73 77 69 74 63 68 3c 2f 73 70 61 6e 3e 20 28 61 6e 79 29 20 7b 0a 20 20 20 20 20 20 20 20 | ">switch</span>.(any).{......... |
| 56f80 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 57 69 74 | <span.class="tok-comment">//.Wit |
| 56fa0 | 68 20 60 69 6e 6c 69 6e 65 20 65 6c 73 65 60 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 69 73 20 | h.`inline.else`.the.function.is. |
| 56fc0 | 65 78 70 6c 69 63 69 74 6c 79 20 67 65 6e 65 72 61 74 65 64 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 | explicitly.generated</span>..... |
| 56fe0 | 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">// |
| 57000 | 20 61 73 20 74 68 65 20 64 65 73 69 72 65 64 20 73 77 69 74 63 68 20 61 6e 64 20 74 68 65 20 63 | .as.the.desired.switch.and.the.c |
| 57020 | 6f 6d 70 69 6c 65 72 20 63 61 6e 20 63 68 65 63 6b 20 74 68 61 74 3c 2f 73 70 61 6e 3e 0a 20 20 | ompiler.can.check.that</span>... |
| 57040 | 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"> |
| 57060 | 2f 2f 20 65 76 65 72 79 20 70 6f 73 73 69 62 6c 65 20 63 61 73 65 20 69 73 20 68 61 6e 64 6c 65 | //.every.possible.case.is.handle |
| 57080 | 64 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | d.</span>.........<span.class="t |
| 570a0 | 6f 6b 2d 6b 77 22 3e 69 6e 6c 69 6e 65 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ok-kw">inline</span>.<span.class |
| 570c0 | 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 7c 73 6c 69 | ="tok-kw">else</span>.=>.|sli |
| 570e0 | 63 65 7c 20 73 6c 69 63 65 2e 6c 65 6e 2c 0a 20 20 20 20 7d 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 | ce|.slice.len,.....};.}..<span.c |
| 57100 | 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. |
| 57120 | 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 |
| 57140 | 20 61 6e 64 20 69 6e 6c 69 6e 65 20 65 6c 73 65 20 73 69 6d 69 6c 61 72 69 74 79 26 71 75 6f 74 | .and.inline.else.similarity" |
| 57160 | 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- |
| 57180 | 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 6e 79 20 3d 20 41 6e 79 53 6c 69 63 65 7b | kw">const</span>.any.=.AnySlice{ |
| 571a0 | 20 2e 63 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 | ..c.=.<span.class="tok-str">&quo |
| 571c0 | 74 3b 68 65 6c 6c 6f 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 20 20 20 20 3c 73 70 61 | t;hello"</span>.};.....<spa |
| 571e0 | 6e 20 63 6c 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 |
| 57200 | 63 74 28 77 69 74 68 46 6f 72 28 61 6e 79 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ct(withFor(any).==.<span.class=" |
| 57220 | 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 3c 73 70 61 6e | tok-number">5</span>);.....<span |
| 57240 | 20 63 6c 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 |
| 57260 | 74 28 77 69 74 68 53 77 69 74 63 68 28 61 6e 79 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | t(withSwitch(any).==.<span.class |
| 57280 | 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 3c 2f 63 6f 64 65 | ="tok-number">5</span>);.}</code |
| 572a0 | 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 |
| 572c0 | 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 |
| 572e0 | 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 |
| 57300 | 73 74 20 74 65 73 74 5f 69 6e 6c 69 6e 65 5f 65 6c 73 65 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f | st.test_inline_else.zig</kbd>.1/ |
| 57320 | 31 20 74 65 73 74 5f 69 6e 6c 69 6e 65 5f 65 6c 73 65 2e 74 65 73 74 2e 69 6e 6c 69 6e 65 20 66 | 1.test_inline_else.test.inline.f |
| 57340 | 6f 72 20 61 6e 64 20 69 6e 6c 69 6e 65 20 65 6c 73 65 20 73 69 6d 69 6c 61 72 69 74 79 2e 2e 2e | or.and.inline.else.similarity... |
| 57360 | 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 73 61 6d 70 3e 3c 2f | OK.All.1.tests.passed..</samp></ |
| 57380 | 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 57 | pre></figure>........<p>.......W |
| 573a0 | 68 65 6e 20 75 73 69 6e 67 20 61 6e 20 69 6e 6c 69 6e 65 20 70 72 6f 6e 67 20 73 77 69 74 63 68 | hen.using.an.inline.prong.switch |
| 573c0 | 69 6e 67 20 6f 6e 20 61 6e 20 75 6e 69 6f 6e 20 61 6e 20 61 64 64 69 74 69 6f 6e 61 6c 0a 20 20 | ing.on.an.union.an.additional... |
| 573e0 | 20 20 20 20 63 61 70 74 75 72 65 20 63 61 6e 20 62 65 20 75 73 65 64 20 74 6f 20 6f 62 74 61 69 | ....capture.can.be.used.to.obtai |
| 57400 | 6e 20 74 68 65 20 75 6e 69 6f 6e 27 73 20 65 6e 75 6d 20 74 61 67 20 76 61 6c 75 65 2e 0a 20 20 | n.the.union's.enum.tag.value.... |
| 57420 | 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 |
| 57440 | 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=" |
| 57460 | 66 69 6c 65 22 3e 74 65 73 74 5f 69 6e 6c 69 6e 65 5f 73 77 69 74 63 68 5f 75 6e 69 6f 6e 5f 74 | file">test_inline_switch_union_t |
| 57480 | 61 67 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c | ag.zig</cite></figcaption><pre>< |
| 574a0 | 63 6f 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< |
| 574c0 | 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 |
| 574e0 | 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 |
| 57500 | 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 |
| 57520 | 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< |
| 57540 | 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 |
| 57560 | 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< |
| 57580 | 2f 73 70 61 6e 3e 20 55 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | /span>.U.=.<span.class="tok-kw"> |
| 575a0 | 75 6e 69 6f 6e 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | union</span>(<span.class="tok-kw |
| 575c0 | 22 3e 65 6e 75 6d 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 61 3a 20 3c 73 70 61 6e 20 63 6c | ">enum</span>).{.....a:.<span.cl |
| 575e0 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 62 | ass="tok-type">u32</span>,.....b |
| 57600 | 3a 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 |
| 57620 | 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 66 6e | an>,.};..<span.class="tok-kw">fn |
| 57640 | 3c 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 | </span>.<span.class="tok-fn">get |
| 57660 | 4e 75 6d 3c 2f 73 70 61 6e 3e 28 75 3a 20 55 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | Num</span>(u:.U).<span.class="to |
| 57680 | 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 |
| 576a0 | 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 75 29 20 | lass="tok-kw">switch</span>.(u). |
| 576c0 | 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 | {.........<span.class="tok-comme |
| 576e0 | 6e 74 22 3e 2f 2f 20 48 65 72 65 20 60 6e 75 6d 60 20 69 73 20 61 20 72 75 6e 74 69 6d 65 2d 6b | nt">//.Here.`num`.is.a.runtime-k |
| 57700 | 6e 6f 77 6e 20 76 61 6c 75 65 20 74 68 61 74 20 69 73 20 65 69 74 68 65 72 3c 2f 73 70 61 6e 3e | nown.value.that.is.either</span> |
| 57720 | 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 |
| 57740 | 74 22 3e 2f 2f 20 60 75 2e 61 60 20 6f 72 20 60 75 2e 62 60 20 61 6e 64 20 60 74 61 67 60 20 69 | t">//.`u.a`.or.`u.b`.and.`tag`.i |
| 57760 | 73 20 60 75 60 27 73 20 63 6f 6d 70 74 69 6d 65 2d 6b 6e 6f 77 6e 20 74 61 67 20 76 61 6c 75 65 | s.`u`'s.comptime-known.tag.value |
| 57780 | 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | .</span>.........<span.class="to |
| 577a0 | 6b 2d 6b 77 22 3e 69 6e 6c 69 6e 65 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | k-kw">inline</span>.<span.class= |
| 577c0 | 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 3d 26 67 74 3b 20 7c 6e 75 6d 2c | "tok-kw">else</span>.=>.|num, |
| 577e0 | 20 74 61 67 7c 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | .tag|.{.............<span.class= |
| 57800 | 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 74 61 67 20 3d 3d 20 2e 62 29 20 7b | "tok-kw">if</span>.(tag.==..b).{ |
| 57820 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | .................<span.class="to |
| 57840 | 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= |
| 57860 | 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 74 3c 2f 73 70 61 | "tok-builtin">@intFromFloat</spa |
| 57880 | 6e 3e 28 6e 75 6d 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 20 | n>(num);.............}.......... |
| 578a0 | 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</ |
| 578c0 | 73 70 61 6e 3e 20 6e 75 6d 3b 0a 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 7d 0a 7d 0a 0a 3c | span>.num;.........},.....}.}..< |
| 578e0 | 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>. |
| 57900 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 74 65 73 74 | <span.class="tok-str">"test |
| 57920 | 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= |
| 57940 | 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 75 20 3d 20 55 7b 20 2e 62 20 | "tok-kw">const</span>.u.=.U{..b. |
| 57960 | 3d 20 3c 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 |
| 57980 | 70 61 6e 3e 20 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | pan>.};.....<span.class="tok-kw" |
| 579a0 | 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 67 65 74 4e 75 6d 28 75 29 20 3d 3d 20 | >try</span>.expect(getNum(u).==. |
| 579c0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 32 3c 2f 73 70 61 | <span.class="tok-number">42</spa |
| 579e0 | 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 |
| 57a00 | 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 |
| 57a20 | 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>$ |
| 57a40 | 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 65 5f 73 77 69 74 63 | .<kbd>zig.test.test_inline_switc |
| 57a60 | 68 5f 75 6e 69 6f 6e 5f 74 61 67 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 69 | h_union_tag.zig</kbd>.1/1.test_i |
| 57a80 | 6e 6c 69 6e 65 5f 73 77 69 74 63 68 5f 75 6e 69 6f 6e 5f 74 61 67 2e 74 65 73 74 2e 74 65 73 74 | nline_switch_union_tag.test.test |
| 57aa0 | 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 |
| 57ac0 | 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 |
| 57ae0 | 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 69 6e 6c 69 6e | lso:</p><ul>.<li><a.href="#inlin |
| 57b00 | 65 2d 77 68 69 6c 65 22 3e 69 6e 6c 69 6e 65 20 77 68 69 6c 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c | e-while">inline.while</a></li>.< |
| 57b20 | 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 69 6e 6c 69 6e 65 2d 66 6f 72 22 3e 69 6e 6c 69 6e 65 20 | li><a.href="#inline-for">inline. |
| 57b40 | 66 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 | for</a></li>.</ul>.............. |
| 57b60 | 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 77 68 69 6c 65 22 3e 3c 61 20 68 72 65 66 3d | .........<h2.id="while"><a.href= |
| 57b80 | 22 23 74 6f 63 2d 77 68 69 6c 65 22 3e 77 68 69 6c 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d | "#toc-while">while</a>.<a.class= |
| 57ba0 | 22 68 64 72 22 20 68 72 65 66 3d 22 23 77 68 69 6c 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a | "hdr".href="#while">..</a></h2>. |
| 57bc0 | 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 41 20 77 68 69 6c 65 20 6c 6f 6f 70 20 69 73 | .......<p>.......A.while.loop.is |
| 57be0 | 20 75 73 65 64 20 74 6f 20 72 65 70 65 61 74 65 64 6c 79 20 65 78 65 63 75 74 65 20 61 6e 20 65 | .used.to.repeatedly.execute.an.e |
| 57c00 | 78 70 72 65 73 73 69 6f 6e 20 75 6e 74 69 6c 0a 20 20 20 20 20 20 73 6f 6d 65 20 63 6f 6e 64 69 | xpression.until.......some.condi |
| 57c20 | 74 69 6f 6e 20 69 73 20 6e 6f 20 6c 6f 6e 67 65 72 20 74 72 75 65 2e 0a 20 20 20 20 20 20 3c 2f | tion.is.no.longer.true........</ |
| 57c40 | 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 |
| 57c60 | 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"> |
| 57c80 | 74 65 73 74 5f 77 68 69 6c 65 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f | test_while.zig</cite></figcaptio |
| 57ca0 | 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 |
| 57cc0 | 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 3c 73 70 61 6e 20 63 6c | ">const</span>.expect.=.<span.cl |
| 57ce0 | 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> |
| 57d00 | 28 3c 73 70 61 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 |
| 57d20 | 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 0a | "</span>).testing.expect;.. |
| 57d40 | 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> |
| 57d60 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 77 68 69 | .<span.class="tok-str">"whi |
| 57d80 | 6c 65 20 62 61 73 69 63 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 | le.basic"</span>.{.....<spa |
| 57da0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 69 3a 20 3c | n.class="tok-kw">var</span>.i:.< |
| 57dc0 | 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 |
| 57de0 | 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< |
| 57e00 | 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" |
| 57e20 | 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 61 73 | >while</span>.(i.<.<span.clas |
| 57e40 | 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 7b 0a 20 20 20 20 | s="tok-number">10</span>).{..... |
| 57e60 | 20 20 20 20 69 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | ....i.+=.<span.class="tok-number |
| 57e80 | 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 7d 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | ">1</span>;.....}.....<span.clas |
| 57ea0 | 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 3d | s="tok-kw">try</span>.expect(i.= |
| 57ec0 | 3d 20 3c 73 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 |
| 57ee0 | 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 |
| 57f00 | 69 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 |
| 57f20 | 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 |
| 57f40 | 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 2e 7a 69 67 3c | >$.<kbd>zig.test.test_while.zig< |
| 57f60 | 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 77 68 69 6c 65 2e 74 65 73 74 2e 77 68 69 6c 65 20 | /kbd>.1/1.test_while.test.while. |
| 57f80 | 62 61 73 69 63 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c | basic...OK.All.1.tests.passed..< |
| 57fa0 | 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> |
| 57fc0 | 0a 20 20 20 20 20 20 55 73 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | .......Use.<code><span.class="to |
| 57fe0 | 6b 2d 6b 77 22 3e 62 72 65 61 6b 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 74 6f 20 65 78 69 | k-kw">break</span></code>.to.exi |
| 58000 | 74 20 61 20 77 68 69 6c 65 20 6c 6f 6f 70 20 65 61 72 6c 79 2e 0a 20 20 20 20 20 20 3c 2f 70 3e | t.a.while.loop.early........</p> |
| 58020 | 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 |
| 58040 | 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 |
| 58060 | 73 74 5f 77 68 69 6c 65 5f 62 72 65 61 6b 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 | st_while_break.zig</cite></figca |
| 58080 | 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 |
| 580a0 | 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 |
| 580c0 | 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 |
| 580e0 | 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">" |
| 58100 | 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 |
| 58120 | 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 |
| 58140 | 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">" |
| 58160 | 3b 77 68 69 6c 65 20 62 72 65 61 6b 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 | ;while.break"</span>.{..... |
| 58180 | 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>. |
| 581a0 | 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 3c | i:.<span.class="tok-type">usize< |
| 581c0 | 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 |
| 581e0 | 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 |
| 58200 | 2d 6b 77 22 3e 77 68 69 6c 65 3c 2f 73 70 61 6e 3e 20 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | -kw">while</span>.(<span.class=" |
| 58220 | 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 20 20 20 | tok-null">true</span>).{........ |
| 58240 | 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>. |
| 58260 | 28 69 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 | (i.==.<span.class="tok-number">1 |
| 58280 | 30 3c 2f 73 70 61 6e 3e 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | 0</span>).............<span.clas |
| 582a0 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 62 72 65 61 6b 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 20 20 20 | s="tok-kw">break</span>;........ |
| 582c0 | 20 69 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 | .i.+=.<span.class="tok-number">1 |
| 582e0 | 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 7d 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | </span>;.....}.....<span.class=" |
| 58300 | 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 69 20 3d 3d 20 3c | tok-kw">try</span>.expect(i.==.< |
| 58320 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 3c 2f 73 70 61 6e | span.class="tok-number">10</span |
| 58340 | 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 |
| 58360 | 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" |
| 58380 | 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>$. |
| 583a0 | 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 62 72 65 61 6b 2e 7a | <kbd>zig.test.test_while_break.z |
| 583c0 | 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 77 68 69 6c 65 5f 62 72 65 61 6b 2e 74 65 | ig</kbd>.1/1.test_while_break.te |
| 583e0 | 73 74 2e 77 68 69 6c 65 20 62 72 65 61 6b 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 | st.while.break...OK.All.1.tests. |
| 58400 | 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>.. |
| 58420 | 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 55 73 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 | ......<p>.......Use.<code><span. |
| 58440 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 74 69 6e 75 65 3c 2f 73 70 61 6e 3e 3c 2f | class="tok-kw">continue</span></ |
| 58460 | 63 6f 64 65 3e 20 74 6f 20 6a 75 6d 70 20 62 61 63 6b 20 74 6f 20 74 68 65 20 62 65 67 69 6e 6e | code>.to.jump.back.to.the.beginn |
| 58480 | 69 6e 67 20 6f 66 20 74 68 65 20 6c 6f 6f 70 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 | ing.of.the.loop........</p>..... |
| 584a0 | 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 |
| 584c0 | 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 77 68 | -cap"><cite.class="file">test_wh |
| 584e0 | 69 6c 65 5f 63 6f 6e 74 69 6e 75 65 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 | ile_continue.zig</cite></figcapt |
| 58500 | 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- |
| 58520 | 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 20 | kw">const</span>.expect.=.<span. |
| 58540 | 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 |
| 58560 | 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 |
| 58580 | 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 3b | td"</span>).testing.expect; |
| 585a0 | 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 |
| 585c0 | 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 |
| 585e0 | 68 69 6c 65 20 63 6f 6e 74 69 6e 75 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 | hile.continue"</span>.{.... |
| 58600 | 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> |
| 58620 | 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 |
| 58640 | 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 |
| 58660 | 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 |
| 58680 | 6b 2d 6b 77 22 3e 77 68 69 6c 65 3c 2f 73 70 61 6e 3e 20 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d | k-kw">while</span>.(<span.class= |
| 586a0 | 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 20 20 | "tok-null">true</span>).{....... |
| 586c0 | 20 20 69 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e | ..i.+=.<span.class="tok-number"> |
| 586e0 | 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 |
| 58700 | 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 69 20 26 6c 74 3b 20 3c 73 70 61 6e 20 63 | ok-kw">if</span>.(i.<.<span.c |
| 58720 | 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>).... |
| 58740 | 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f | .........<span.class="tok-kw">co |
| 58760 | 6e 74 69 6e 75 65 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | ntinue</span>;.........<span.cla |
| 58780 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 62 72 65 61 6b 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 7d 0a | ss="tok-kw">break</span>;.....}. |
| 587a0 | 20 20 20 20 3c 73 70 61 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 |
| 587c0 | 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 6f 6b | an>.expect(i.==.<span.class="tok |
| 587e0 | 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 2f 70 | -number">10</span>);.}</code></p |
| 58800 | 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. |
| 58820 | 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 |
| 58840 | 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 |
| 58860 | 65 73 74 5f 77 68 69 6c 65 5f 63 6f 6e 74 69 6e 75 65 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 | est_while_continue.zig</kbd>.1/1 |
| 58880 | 20 74 65 73 74 5f 77 68 69 6c 65 5f 63 6f 6e 74 69 6e 75 65 2e 74 65 73 74 2e 77 68 69 6c 65 20 | .test_while_continue.test.while. |
| 588a0 | 63 6f 6e 74 69 6e 75 65 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 | continue...OK.All.1.tests.passed |
| 588c0 | 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>........ |
| 588e0 | 3c 70 3e 0a 20 20 20 20 20 20 57 68 69 6c 65 20 6c 6f 6f 70 73 20 73 75 70 70 6f 72 74 20 61 20 | <p>.......While.loops.support.a. |
| 58900 | 63 6f 6e 74 69 6e 75 65 20 65 78 70 72 65 73 73 69 6f 6e 20 77 68 69 63 68 20 69 73 20 65 78 65 | continue.expression.which.is.exe |
| 58920 | 63 75 74 65 64 20 77 68 65 6e 20 74 68 65 20 6c 6f 6f 70 0a 20 20 20 20 20 20 69 73 20 63 6f 6e | cuted.when.the.loop.......is.con |
| 58940 | 74 69 6e 75 65 64 2e 20 54 68 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | tinued..The.<code><span.class="t |
| 58960 | 6f 6b 2d 6b 77 22 3e 63 6f 6e 74 69 6e 75 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6b 65 | ok-kw">continue</span></code>.ke |
| 58980 | 79 77 6f 72 64 20 72 65 73 70 65 63 74 73 20 74 68 69 73 20 65 78 70 72 65 73 73 69 6f 6e 2e 0a | yword.respects.this.expression.. |
| 589a0 | 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 |
| 589c0 | 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 |
| 589e0 | 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 5f 65 78 70 72 | ="file">test_while_continue_expr |
| 58a00 | 65 73 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 70 | ession.zig</cite></figcaption><p |
| 58a20 | 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 |
| 58a40 | 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | nst</span>.expect.=.<span.class= |
| 58a60 | 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 |
| 58a80 | 61 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 |
| 58aa0 | 74 3b 3c 2f 73 70 61 6e 3e 29 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 0a 3c 73 70 61 | t;</span>).testing.expect;..<spa |
| 58ac0 | 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 |
| 58ae0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 77 68 69 6c 65 20 6c | an.class="tok-str">"while.l |
| 58b00 | 6f 6f 70 20 63 6f 6e 74 69 6e 75 65 20 65 78 70 72 65 73 73 69 6f 6e 26 71 75 6f 74 3b 3c 2f 73 | oop.continue.expression"</s |
| 58b20 | 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | pan>.{.....<span.class="tok-kw"> |
| 58b40 | 76 61 72 3c 2f 73 70 61 6e 3e 20 69 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | var</span>.i:.<span.class="tok-t |
| 58b60 | 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ype">usize</span>.=.<span.class= |
| 58b80 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e | "tok-number">0</span>;.....<span |
| 58ba0 | 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. |
| 58bc0 | 26 6c 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 | <.<span.class="tok-number">10 |
| 58be0 | 3c 2f 73 70 61 6e 3e 29 20 3a 20 28 69 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | </span>).:.(i.+=.<span.class="to |
| 58c00 | 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 20 7b 7d 0a 20 20 20 20 3c 73 70 61 6e | k-number">1</span>).{}.....<span |
| 58c20 | 20 63 6c 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 |
| 58c40 | 74 28 69 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e | t(i.==.<span.class="tok-number"> |
| 58c60 | 31 30 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | 10</span>);.}..<span.class="tok- |
| 58c80 | 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 |
| 58ca0 | 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. |
| 58cc0 | 65 78 70 72 65 73 73 69 6f 6e 2c 20 6d 6f 72 65 20 63 6f 6d 70 6c 69 63 61 74 65 64 26 71 75 6f | expression,.more.complicated&quo |
| 58ce0 | 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 |
| 58d00 | 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 69 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | -kw">var</span>.i:.<span.class=" |
| 58d20 | 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 |
| 58d40 | 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>;..... |
| 58d60 | 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>. |
| 58d80 | 6a 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c | j:.<span.class="tok-type">usize< |
| 58da0 | 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 |
| 58dc0 | 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ">1</span>;.....<span.class="tok |
| 58de0 | 2d 6b 77 22 3e 77 68 69 6c 65 3c 2f 73 70 61 6e 3e 20 28 69 20 2a 20 6a 20 26 6c 74 3b 20 3c 73 | -kw">while</span>.(i.*.j.<.<s |
| 58e00 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 30 30 30 3c 2f 73 70 61 | pan.class="tok-number">2000</spa |
| 58e20 | 6e 3e 29 20 3a 20 28 7b 0a 20 20 20 20 20 20 20 20 69 20 2a 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | n>).:.({.........i.*=.<span.clas |
| 58e40 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 20 20 20 | s="tok-number">2</span>;........ |
| 58e60 | 20 6a 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 22 3e 33 | .j.*=.<span.class="tok-number">3 |
| 58e80 | 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 7d 29 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 | </span>;.....}).{.........<span. |
| 58ea0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6d 79 5f 69 | class="tok-kw">const</span>.my_i |
| 58ec0 | 6a 20 3d 20 69 20 2a 20 6a 3b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | j.=.i.*.j;.........<span.class=" |
| 58ee0 | 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 79 5f 69 6a 20 | tok-kw">try</span>.expect(my_ij. |
| 58f00 | 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 30 | <.<span.class="tok-number">20 |
| 58f20 | 30 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 | 00</span>);.....}.}</code></pre> |
| 58f40 | 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 |
| 58f60 | 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 |
| 58f80 | 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 |
| 58fa0 | 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 7a 69 67 3c 2f | _while_continue_expression.zig</ |
| 58fc0 | 6b 62 64 3e 0a 31 2f 32 20 74 65 73 74 5f 77 68 69 6c 65 5f 63 6f 6e 74 69 6e 75 65 5f 65 78 70 | kbd>.1/2.test_while_continue_exp |
| 58fe0 | 72 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 | ression.test.while.loop.continue |
| 59000 | 20 65 78 70 72 65 73 73 69 6f 6e 2e 2e 2e 4f 4b 0a 32 2f 32 20 74 65 73 74 5f 77 68 69 6c 65 5f | .expression...OK.2/2.test_while_ |
| 59020 | 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 77 68 69 6c 65 20 6c | continue_expression.test.while.l |
| 59040 | 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 6f 72 65 20 63 6f | oop.continue.expression,.more.co |
| 59060 | 6d 70 6c 69 63 61 74 65 64 2e 2e 2e 4f 4b 0a 41 6c 6c 20 32 20 74 65 73 74 73 20 70 61 73 73 65 | mplicated...OK.All.2.tests.passe |
| 59080 | 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>....... |
| 590a0 | 20 3c 70 3e 0a 20 20 20 20 20 20 57 68 69 6c 65 20 6c 6f 6f 70 73 20 61 72 65 20 65 78 70 72 65 | .<p>.......While.loops.are.expre |
| 590c0 | 73 73 69 6f 6e 73 2e 20 54 68 65 20 72 65 73 75 6c 74 20 6f 66 20 74 68 65 20 65 78 70 72 65 73 | ssions..The.result.of.the.expres |
| 590e0 | 73 69 6f 6e 20 69 73 20 74 68 65 0a 20 20 20 20 20 20 72 65 73 75 6c 74 20 6f 66 20 74 68 65 20 | sion.is.the.......result.of.the. |
| 59100 | 3c 63 6f 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< |
| 59120 | 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 63 6c 61 75 73 65 20 6f 66 20 61 20 77 68 69 6c 65 20 | /span></code>.clause.of.a.while. |
| 59140 | 6c 6f 6f 70 2c 20 77 68 69 63 68 20 69 73 20 65 78 65 63 75 74 65 64 20 77 68 65 6e 0a 20 20 20 | loop,.which.is.executed.when.... |
| 59160 | 20 20 20 74 68 65 20 63 6f 6e 64 69 74 69 6f 6e 20 6f 66 20 74 68 65 20 77 68 69 6c 65 20 6c 6f | ...the.condition.of.the.while.lo |
| 59180 | 6f 70 20 69 73 20 74 65 73 74 65 64 20 61 73 20 66 61 6c 73 65 2e 0a 20 20 20 20 20 20 3c 2f 70 | op.is.tested.as.false........</p |
| 591a0 | 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c | >.......<p>.......<code><span.cl |
| 591c0 | 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> |
| 591e0 | 2c 20 6c 69 6b 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | ,.like.<code><span.class="tok-kw |
| 59200 | 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 61 63 63 65 70 74 73 20 | ">return</span></code>,.accepts. |
| 59220 | 61 20 76 61 6c 75 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 70 61 72 61 6d 65 74 65 72 2e | a.value...............parameter. |
| 59240 | 20 54 68 69 73 20 69 73 20 74 68 65 20 72 65 73 75 6c 74 20 6f 66 20 74 68 65 20 3c 63 6f 64 65 | .This.is.the.result.of.the.<code |
| 59260 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 77 68 69 6c 65 3c 2f 73 70 61 | ><span.class="tok-kw">while</spa |
| 59280 | 6e 3e 3c 2f 63 6f 64 65 3e 20 65 78 70 72 65 73 73 69 6f 6e 2e 0a 20 20 20 20 20 20 20 20 20 20 | n></code>.expression............ |
| 592a0 | 20 20 20 20 20 20 20 20 57 68 65 6e 20 79 6f 75 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 | ........When.you.<code><span.cla |
| 592c0 | 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 20 | ss="tok-kw">break</span></code>. |
| 592e0 | 66 72 6f 6d 20 61 20 77 68 69 6c 65 20 6c 6f 6f 70 2c 20 74 68 65 20 3c 63 6f 64 65 3e 3c 73 70 | from.a.while.loop,.the.<code><sp |
| 59300 | 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 |
| 59320 | 6f 64 65 3e 20 62 72 61 6e 63 68 20 69 73 20 6e 6f 74 0a 20 20 20 20 20 20 65 76 61 6c 75 61 74 | ode>.branch.is.not.......evaluat |
| 59340 | 65 64 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 | ed........</p>.......<figure><fi |
| 59360 | 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 |
| 59380 | 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 77 68 69 6c 65 5f 65 6c 73 65 2e 7a 69 67 3c | lass="file">test_while_else.zig< |
| 593a0 | 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 |
| 593c0 | 70 61 6e 20 63 6c 61 73 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>. |
| 593e0 | 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 |
| 59400 | 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 |
| 59420 | 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>). |
| 59440 | 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 |
| 59460 | 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 |
| 59480 | 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 77 68 69 6c 65 20 65 6c 73 65 26 71 75 6f 74 3b 3c 2f | ok-str">"while.else"</ |
| 594a0 | 73 70 61 6e 3e 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" |
| 594c0 | 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 72 61 6e 67 65 48 61 73 4e 75 6d 62 65 | >try</span>.expect(rangeHasNumbe |
| 594e0 | 72 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 | r(<span.class="tok-number">0</sp |
| 59500 | 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 | an>,.<span.class="tok-number">10 |
| 59520 | 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 |
| 59540 | 22 3e 35 3c 2f 73 70 61 6e 3e 29 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ">5</span>));.....<span.class="t |
| 59560 | 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 72 61 6e 67 65 48 | ok-kw">try</span>.expect(!rangeH |
| 59580 | 61 73 4e 75 6d 62 65 72 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | asNumber(<span.class="tok-number |
| 595a0 | 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 6e 75 6d | ">0</span>,.<span.class="tok-num |
| 595c0 | 62 65 72 22 3e 31 30 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ber">10</span>,.<span.class="tok |
| 595e0 | 2d 6e 75 6d 62 65 72 22 3e 31 35 3c 2f 73 70 61 6e 3e 29 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 | -number">15</span>));.}..<span.c |
| 59600 | 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 |
| 59620 | 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 72 61 6e 67 65 48 61 73 4e 75 6d 62 65 72 3c 2f 73 70 61 | ass="tok-fn">rangeHasNumber</spa |
| 59640 | 6e 3e 28 62 65 67 69 6e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 | n>(begin:.<span.class="tok-type" |
| 59660 | 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 2c 20 65 6e 64 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | >usize</span>,.end:.<span.class= |
| 59680 | 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 2c 20 6e 75 6d 62 65 72 3a | "tok-type">usize</span>,.number: |
| 596a0 | 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 |
| 596c0 | 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 62 6f 6f | pan>).<span.class="tok-type">boo |
| 596e0 | 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 2d | l</span>.{.....<span.class="tok- |
| 59700 | 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 69 20 3d 20 62 65 67 69 6e 3b 0a 20 20 20 20 3c 73 | kw">var</span>.i.=.begin;.....<s |
| 59720 | 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> |
| 59740 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 77 68 69 6c 65 3c 2f 73 70 61 | .<span.class="tok-kw">while</spa |
| 59760 | 6e 3e 20 28 69 20 26 6c 74 3b 20 65 6e 64 29 20 3a 20 28 69 20 2b 3d 20 3c 73 70 61 6e 20 63 6c | n>.(i.<.end).:.(i.+=.<span.cl |
| 59780 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 | ass="tok-number">1</span>).{.... |
| 597a0 | 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 |
| 597c0 | 61 6e 3e 20 28 69 20 3d 3d 20 6e 75 6d 62 65 72 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 | an>.(i.==.number).{............. |
| 597e0 | 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 |
| 59800 | 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 | >.<span.class="tok-null">true</s |
| 59820 | 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 61 73 | pan>;.........}.....}.<span.clas |
| 59840 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 | s="tok-kw">else</span>.<span.cla |
| 59860 | 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 7d 3c 2f 63 | ss="tok-null">false</span>;.}</c |
| 59880 | 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 |
| 598a0 | 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</ |
| 598c0 | 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 |
| 598e0 | 20 74 65 73 74 20 74 65 73 74 5f 77 68 69 6c 65 5f 65 6c 73 65 2e 7a 69 67 3c 2f 6b 62 64 3e 0a | .test.test_while_else.zig</kbd>. |
| 59900 | 31 2f 31 20 74 65 73 74 5f 77 68 69 6c 65 5f 65 6c 73 65 2e 74 65 73 74 2e 77 68 69 6c 65 20 65 | 1/1.test_while_else.test.while.e |
| 59920 | 6c 73 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 | lse...OK.All.1.tests.passed..</s |
| 59940 | 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 68 33 20 69 | amp></pre></figure>........<h3.i |
| 59960 | 64 3d 22 4c 61 62 65 6c 65 64 2d 77 68 69 6c 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d | d="Labeled-while"><a.href="#toc- |
| 59980 | 4c 61 62 65 6c 65 64 2d 77 68 69 6c 65 22 3e 4c 61 62 65 6c 65 64 20 77 68 69 6c 65 3c 2f 61 3e | Labeled-while">Labeled.while</a> |
| 599a0 | 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 2d 77 | .<a.class="hdr".href="#Labeled-w |
| 599c0 | 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 57 68 65 6e | hile">..</a></h3>........<p>When |
| 599e0 | 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 77 68 | .a.<code><span.class="tok-kw">wh |
| 59a00 | 69 6c 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6c 6f 6f 70 20 69 73 20 6c 61 62 65 6c 65 | ile</span></code>.loop.is.labele |
| 59a20 | 64 2c 20 69 74 20 63 61 6e 20 62 65 20 72 65 66 65 72 65 6e 63 65 64 20 66 72 6f 6d 20 61 20 3c | d,.it.can.be.referenced.from.a.< |
| 59a40 | 63 6f 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 | code><span.class="tok-kw">break< |
| 59a60 | 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6f 72 20 3c | /span></code>...............or.< |
| 59a80 | 63 6f 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 |
| 59aa0 | 75 65 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 | ue</span></code>.from.within.a.n |
| 59ac0 | 65 73 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 | ested.loop:</p>.......<figure><f |
| 59ae0 | 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. |
| 59b00 | 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 77 68 69 6c 65 5f 6e 65 73 74 65 64 5f 62 | class="file">test_while_nested_b |
| 59b20 | 72 65 61 6b 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 | reak.zig</cite></figcaption><pre |
| 59b40 | 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 74 | ><code><span.class="tok-kw">test |
| 59b60 | 3c 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 |
| 59b80 | 75 6f 74 3b 6e 65 73 74 65 64 20 62 72 65 61 6b 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a | uot;nested.break"</span>.{. |
| 59ba0 | 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 6b 2d 6b 77 22 3e | ....outer:.<span.class="tok-kw"> |
| 59bc0 | 77 68 69 6c 65 3c 2f 73 70 61 6e 3e 20 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | while</span>.(<span.class="tok-n |
| 59be0 | 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 | ull">true</span>).{.........<spa |
| 59c00 | 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 3c | n.class="tok-kw">while</span>.(< |
| 59c20 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e | span.class="tok-null">true</span |
| 59c40 | 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 22 74 6f | >).{.............<span.class="to |
| 59c60 | 6b 2d 6b 77 22 3e 62 72 65 61 6b 3c 2f 73 70 61 6e 3e 20 3a 6f 75 74 65 72 3b 0a 20 20 20 20 20 | k-kw">break</span>.:outer;...... |
| 59c80 | 20 20 20 7d 0a 20 20 20 20 7d 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | ...}.....}.}..<span.class="tok-k |
| 59ca0 | 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- |
| 59cc0 | 73 74 72 22 3e 26 71 75 6f 74 3b 6e 65 73 74 65 64 20 63 6f 6e 74 69 6e 75 65 26 71 75 6f 74 3b | str">"nested.continue" |
| 59ce0 | 3c 2f 73 70 61 6e 3e 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 |
| 59d00 | 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 6f | w">var</span>.i:.<span.class="to |
| 59d20 | 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 |
| 59d40 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 6f 75 | ss="tok-number">0</span>;.....ou |
| 59d60 | 74 65 72 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 77 68 69 6c 65 3c | ter:.<span.class="tok-kw">while< |
| 59d80 | 2f 73 70 61 6e 3e 20 28 69 20 26 6c 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | /span>.(i.<.<span.class="tok- |
| 59da0 | 6e 75 6d 62 65 72 22 3e 31 30 3c 2f 73 70 61 6e 3e 29 20 3a 20 28 69 20 2b 3d 20 3c 73 70 61 6e | number">10</span>).:.(i.+=.<span |
| 59dc0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 20 7b 0a | .class="tok-number">1</span>).{. |
| 59de0 | 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 77 68 69 | ........<span.class="tok-kw">whi |
| 59e00 | 6c 65 3c 2f 73 70 61 6e 3e 20 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c | le</span>.(<span.class="tok-null |
| 59e20 | 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 20 20 20 20 3c 73 70 | ">true</span>).{.............<sp |
| 59e40 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 74 69 6e 75 65 3c 2f 73 70 61 6e | an.class="tok-kw">continue</span |
| 59e60 | 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 3c 2f 63 6f 64 | >.:outer;.........}.....}.}</cod |
| 59e80 | 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 |
| 59ea0 | 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 |
| 59ec0 | 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 |
| 59ee0 | 65 73 74 20 74 65 73 74 5f 77 68 69 6c 65 5f 6e 65 73 74 65 64 5f 62 72 65 61 6b 2e 7a 69 67 3c | est.test_while_nested_break.zig< |
| 59f00 | 2f 6b 62 64 3e 0a 31 2f 32 20 74 65 73 74 5f 77 68 69 6c 65 5f 6e 65 73 74 65 64 5f 62 72 65 61 | /kbd>.1/2.test_while_nested_brea |
| 59f20 | 6b 2e 74 65 73 74 2e 6e 65 73 74 65 64 20 62 72 65 61 6b 2e 2e 2e 4f 4b 0a 32 2f 32 20 74 65 73 | k.test.nested.break...OK.2/2.tes |
| 59f40 | 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 |
| 59f60 | 20 63 6f 6e 74 69 6e 75 65 2e 2e 2e 4f 4b 0a 41 6c 6c 20 32 20 74 65 73 74 73 20 70 61 73 73 65 | .continue...OK.All.2.tests.passe |
| 59f80 | 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>....... |
| 59fa0 | 20 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 77 68 69 6c 65 2d 77 69 74 68 2d 4f 70 74 69 6f | ........<h3.id="while-with-Optio |
| 59fc0 | 6e 61 6c 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 77 68 69 6c 65 2d 77 69 74 68 2d 4f | nals"><a.href="#toc-while-with-O |
| 59fe0 | 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</ |
| 5a000 | 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 77 68 69 6c 65 2d 77 | a>.<a.class="hdr".href="#while-w |
| 5a020 | 69 74 68 2d 4f 70 74 69 6f 6e 61 6c 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 | ith-Optionals">..</a></h3>...... |
| 5a040 | 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 23 | ..<p>.......Just.like.<a.href="# |
| 5a060 | 69 66 22 3e 69 66 3c 2f 61 3e 20 65 78 70 72 65 73 73 69 6f 6e 73 2c 20 77 68 69 6c 65 20 6c 6f | if">if</a>.expressions,.while.lo |
| 5a080 | 6f 70 73 20 63 61 6e 20 74 61 6b 65 20 61 6e 20 6f 70 74 69 6f 6e 61 6c 20 61 73 20 74 68 65 0a | ops.can.take.an.optional.as.the. |
| 5a0a0 | 20 20 20 20 20 20 63 6f 6e 64 69 74 69 6f 6e 20 61 6e 64 20 63 61 70 74 75 72 65 20 74 68 65 20 | ......condition.and.capture.the. |
| 5a0c0 | 70 61 79 6c 6f 61 64 2e 20 57 68 65 6e 20 3c 61 20 68 72 65 66 3d 22 23 6e 75 6c 6c 22 3e 6e 75 | payload..When.<a.href="#null">nu |
| 5a0e0 | 6c 6c 3c 2f 61 3e 20 69 73 20 65 6e 63 6f 75 6e 74 65 72 65 64 20 74 68 65 20 6c 6f 6f 70 0a 20 | ll</a>.is.encountered.the.loop.. |
| 5a100 | 20 20 20 20 20 65 78 69 74 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e | .....exits........</p>.......<p> |
| 5a120 | 0a 20 20 20 20 20 20 57 68 65 6e 20 74 68 65 20 3c 63 6f 64 65 3e 7c 78 7c 3c 2f 63 6f 64 65 3e | .......When.the.<code>|x|</code> |
| 5a140 | 20 73 79 6e 74 61 78 20 69 73 20 70 72 65 73 65 6e 74 20 6f 6e 20 61 20 3c 63 6f 64 65 3e 3c 73 | .syntax.is.present.on.a.<code><s |
| 5a160 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 77 68 69 6c 65 3c 2f 73 70 61 6e 3e 3c | pan.class="tok-kw">while</span>< |
| 5a180 | 2f 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 | /code>.expression,.......the.whi |
| 5a1a0 | 6c 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 | le.condition.must.have.an.<a.hre |
| 5a1c0 | 66 3d 22 23 4f 70 74 69 6f 6e 61 6c 2d 54 79 70 65 22 3e 4f 70 74 69 6f 6e 61 6c 20 54 79 70 65 | f="#Optional-Type">Optional.Type |
| 5a1e0 | 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 | </a>........</p>.......<p>...... |
| 5a200 | 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"> |
| 5a220 | 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 73 20 61 6c 6c | else</span></code>.branch.is.all |
| 5a240 | 6f 77 65 64 20 6f 6e 20 6f 70 74 69 6f 6e 61 6c 20 69 74 65 72 61 74 69 6f 6e 2e 20 49 6e 20 74 | owed.on.optional.iteration..In.t |
| 5a260 | 68 69 73 20 63 61 73 65 2c 20 69 74 20 77 69 6c 6c 0a 20 20 20 20 20 20 62 65 20 65 78 65 63 75 | his.case,.it.will.......be.execu |
| 5a280 | 74 65 64 20 6f 6e 20 74 68 65 20 66 69 72 73 74 20 6e 75 6c 6c 20 76 61 6c 75 65 20 65 6e 63 6f | ted.on.the.first.null.value.enco |
| 5a2a0 | 75 6e 74 65 72 65 64 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 | untered........</p>.......<figur |
| 5a2c0 | 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 |
| 5a2e0 | 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 6e 75 6c 6c | ite.class="file">test_while_null |
| 5a300 | 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 6f 6e 3e | _capture.zig</cite></figcaption> |
| 5a320 | 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"> |
| 5a340 | 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 |
| 5a360 | 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>(< |
| 5a380 | 73 70 61 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 |
| 5a3a0 | 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 |
| 5a3c0 | 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>.< |
| 5a3e0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 77 68 69 6c 65 | span.class="tok-str">"while |
| 5a400 | 20 6e 75 6c 6c 20 63 61 70 74 75 72 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 | .null.capture"</span>.{.... |
| 5a420 | 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> |
| 5a440 | 20 73 75 6d 31 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 | .sum1:.<span.class="tok-type">u3 |
| 5a460 | 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 |
| 5a480 | 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 6e 75 6d 62 65 72 73 5f 6c 65 66 74 20 3d | er">0</span>;.....numbers_left.= |
| 5a4a0 | 20 3c 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 |
| 5a4c0 | 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 77 68 69 | n>;.....<span.class="tok-kw">whi |
| 5a4e0 | 6c 65 3c 2f 73 70 61 6e 3e 20 28 65 76 65 6e 74 75 61 6c 6c 79 4e 75 6c 6c 53 65 71 75 65 6e 63 | le</span>.(eventuallyNullSequenc |
| 5a500 | 65 28 29 29 20 7c 76 61 6c 75 65 7c 20 7b 0a 20 20 20 20 20 20 20 20 73 75 6d 31 20 2b 3d 20 76 | e()).|value|.{.........sum1.+=.v |
| 5a520 | 61 6c 75 65 3b 0a 20 20 20 20 7d 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | alue;.....}.....<span.class="tok |
| 5a540 | 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 73 75 6d 31 20 3d 3d 20 3c | -kw">try</span>.expect(sum1.==.< |
| 5a560 | 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> |
| 5a580 | 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 |
| 5a5a0 | 22 3e 2f 2f 20 6e 75 6c 6c 20 63 61 70 74 75 72 65 20 77 69 74 68 20 61 6e 20 65 6c 73 65 20 62 | ">//.null.capture.with.an.else.b |
| 5a5c0 | 6c 6f 63 6b 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | lock</span>.....<span.class="tok |
| 5a5e0 | 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 73 75 6d 32 3a 20 3c 73 70 61 6e 20 63 6c 61 73 | -kw">var</span>.sum2:.<span.clas |
| 5a600 | 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 20 | s="tok-type">u32</span>.=.<span. |
| 5a620 | 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>;.... |
| 5a640 | 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 22 74 6f 6b | .numbers_left.=.<span.class="tok |
| 5a660 | 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 6c 61 | -number">3</span>;.....<span.cla |
| 5a680 | 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 65 6e 74 75 | ss="tok-kw">while</span>.(eventu |
| 5a6a0 | 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 7b 0a 20 20 | allyNullSequence()).|value|.{... |
| 5a6c0 | 20 20 20 20 20 20 73 75 6d 32 20 2b 3d 20 76 61 6c 75 65 3b 0a 20 20 20 20 7d 20 3c 73 70 61 6e | ......sum2.+=.value;.....}.<span |
| 5a6e0 | 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 20 | .class="tok-kw">else</span>.{... |
| 5a700 | 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</ |
| 5a720 | 73 70 61 6e 3e 20 65 78 70 65 63 74 28 73 75 6d 32 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | span>.expect(sum2.==.<span.class |
| 5a740 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 7d 0a 0a | ="tok-number">3</span>);.....}.. |
| 5a760 | 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">// |
| 5a780 | 20 6e 75 6c 6c 20 63 61 70 74 75 72 65 20 77 69 74 68 20 61 20 63 6f 6e 74 69 6e 75 65 20 65 78 | .null.capture.with.a.continue.ex |
| 5a7a0 | 70 72 65 73 73 69 6f 6e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | pression</span>.....<span.class= |
| 5a7c0 | 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 |
| 5a7e0 | 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 |
| 5a800 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 3b 0a 20 20 | .class="tok-number">0</span>;... |
| 5a820 | 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 |
| 5a840 | 3e 20 73 75 6d 33 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 | >.sum3:.<span.class="tok-type">u |
| 5a860 | 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 |
| 5a880 | 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 20 | ber">0</span>;.....numbers_left. |
| 5a8a0 | 3d 20 3c 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 |
| 5a8c0 | 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 77 68 | an>;.....<span.class="tok-kw">wh |
| 5a8e0 | 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 6e | ile</span>.(eventuallyNullSequen |
| 5a900 | 63 65 28 29 29 20 7c 76 61 6c 75 65 7c 20 3a 20 28 69 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | ce()).|value|.:.(i.+=.<span.clas |
| 5a920 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 20 | s="tok-number">1</span>).{...... |
| 5a940 | 20 20 20 73 75 6d 33 20 2b 3d 20 76 61 6c 75 65 3b 0a 20 20 20 20 7d 0a 20 20 20 20 3c 73 70 61 | ...sum3.+=.value;.....}.....<spa |
| 5a960 | 6e 20 63 6c 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 |
| 5a980 | 63 74 28 69 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 | ct(i.==.<span.class="tok-number" |
| 5a9a0 | 3e 33 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | >3</span>);.}..<span.class="tok- |
| 5a9c0 | 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 |
| 5a9e0 | 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>.= |
| 5aa00 | 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 |
| 5aa20 | 64 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 | d</span>;.<span.class="tok-kw">f |
| 5aa40 | 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 76 | n</span>.<span.class="tok-fn">ev |
| 5aa60 | 65 6e 74 75 61 6c 6c 79 4e 75 6c 6c 53 65 71 75 65 6e 63 65 3c 2f 73 70 61 6e 3e 28 29 20 3f 3c | entuallyNullSequence</span>().?< |
| 5aa80 | 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> |
| 5aaa0 | 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 |
| 5aac0 | 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 69 | rn</span>.<span.class="tok-kw">i |
| 5aae0 | 66 3c 2f 73 70 61 6e 3e 20 28 6e 75 6d 62 65 72 73 5f 6c 65 66 74 20 3d 3d 20 3c 73 70 61 6e 20 | f</span>.(numbers_left.==.<span. |
| 5ab00 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 | class="tok-number">0</span>).<sp |
| 5ab20 | 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 20 | an.class="tok-null">null</span>. |
| 5ab40 | 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> |
| 5ab60 | 20 62 6c 6b 3a 20 7b 0a 20 20 20 20 20 20 20 20 6e 75 6d 62 65 72 73 5f 6c 65 66 74 20 2d 3d 20 | .blk:.{.........numbers_left.-=. |
| 5ab80 | 3c 73 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 |
| 5aba0 | 3e 3b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | >;.........<span.class="tok-kw"> |
| 5abc0 | 62 72 65 61 6b 3c 2f 73 70 61 6e 3e 20 3a 62 6c 6b 20 6e 75 6d 62 65 72 73 5f 6c 65 66 74 3b 0a | break</span>.:blk.numbers_left;. |
| 5abe0 | 20 20 20 20 7d 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 | ....};.}</code></pre></figure><f |
| 5ac00 | 69 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 |
| 5ac20 | 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 |
| 5ac40 | 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 6e 75 6c 6c | >$.<kbd>zig.test.test_while_null |
| 5ac60 | 5f 63 61 70 74 75 72 65 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 77 68 69 6c | _capture.zig</kbd>.1/1.test_whil |
| 5ac80 | 65 5f 6e 75 6c 6c 5f 63 61 70 74 75 72 65 2e 74 65 73 74 2e 77 68 69 6c 65 20 6e 75 6c 6c 20 63 | e_null_capture.test.while.null.c |
| 5aca0 | 61 70 74 75 72 65 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a | apture...OK.All.1.tests.passed.. |
| 5acc0 | 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>.......... |
| 5ace0 | 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 77 68 69 6c 65 2d 77 69 74 68 2d 45 72 72 6f 72 2d 55 | ......<h3.id="while-with-Error-U |
| 5ad00 | 6e 69 6f 6e 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 77 68 69 6c 65 2d 77 69 74 68 2d | nions"><a.href="#toc-while-with- |
| 5ad20 | 45 72 72 6f 72 2d 55 6e 69 6f 6e 73 22 3e 77 68 69 6c 65 20 77 69 74 68 20 45 72 72 6f 72 20 55 | Error-Unions">while.with.Error.U |
| 5ad40 | 6e 69 6f 6e 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 | nions</a>.<a.class="hdr".href="# |
| 5ad60 | 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 c2 a7 3c 2f 61 3e 3c | while-with-Error-Unions">..</a>< |
| 5ad80 | 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 4a 75 73 74 20 6c 69 6b 65 20 | /h3>........<p>.......Just.like. |
| 5ada0 | 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 69 6f 6e 73 | <a.href="#if">if</a>.expressions |
| 5adc0 | 2c 20 77 68 69 6c 65 20 6c 6f 6f 70 73 20 63 61 6e 20 74 61 6b 65 20 61 6e 20 65 72 72 6f 72 20 | ,.while.loops.can.take.an.error. |
| 5ade0 | 75 6e 69 6f 6e 20 61 73 0a 20 20 20 20 20 20 74 68 65 20 63 6f 6e 64 69 74 69 6f 6e 20 61 6e 64 | union.as.......the.condition.and |
| 5ae00 | 20 63 61 70 74 75 72 65 20 74 68 65 20 70 61 79 6c 6f 61 64 20 6f 72 20 74 68 65 20 65 72 72 6f | .capture.the.payload.or.the.erro |
| 5ae20 | 72 20 63 6f 64 65 2e 20 57 68 65 6e 20 74 68 65 0a 20 20 20 20 20 20 63 6f 6e 64 69 74 69 6f 6e | r.code..When.the.......condition |
| 5ae40 | 20 72 65 73 75 6c 74 73 20 69 6e 20 61 6e 20 65 72 72 6f 72 20 63 6f 64 65 20 74 68 65 20 65 6c | .results.in.an.error.code.the.el |
| 5ae60 | 73 65 20 62 72 61 6e 63 68 20 69 73 20 65 76 61 6c 75 61 74 65 64 20 61 6e 64 0a 20 20 20 20 20 | se.branch.is.evaluated.and...... |
| 5ae80 | 20 74 68 65 20 6c 6f 6f 70 20 69 73 20 66 69 6e 69 73 68 65 64 2e 0a 20 20 20 20 20 20 3c 2f 70 | .the.loop.is.finished........</p |
| 5aea0 | 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 65 20 3c 63 6f 64 65 | >.......<p>.......When.the.<code |
| 5aec0 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e | ><span.class="tok-kw">else</span |
| 5aee0 | 3e 20 7c 78 7c 3c 2f 63 6f 64 65 3e 20 73 79 6e 74 61 78 20 69 73 20 70 72 65 73 65 6e 74 20 6f | >.|x|</code>.syntax.is.present.o |
| 5af00 | 6e 20 61 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 77 | n.a.<code><span.class="tok-kw">w |
| 5af20 | 68 69 6c 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 65 78 70 72 65 73 73 69 6f 6e 2c 0a 20 | hile</span></code>.expression,.. |
| 5af40 | 20 20 20 20 20 74 68 65 20 77 68 69 6c 65 20 63 6f 6e 64 69 74 69 6f 6e 20 6d 75 73 74 20 68 61 | .....the.while.condition.must.ha |
| 5af60 | 76 65 20 61 6e 20 3c 61 20 68 72 65 66 3d 22 23 45 72 72 6f 72 2d 55 6e 69 6f 6e 2d 54 79 70 65 | ve.an.<a.href="#Error-Union-Type |
| 5af80 | 22 3e 45 72 72 6f 72 20 55 6e 69 6f 6e 20 54 79 70 65 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f | ">Error.Union.Type</a>........</ |
| 5afa0 | 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 |
| 5afc0 | 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"> |
| 5afe0 | 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 3c 2f 63 69 | test_while_error_capture.zig</ci |
| 5b000 | 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 |
| 5b020 | 20 63 6c 61 73 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 |
| 5b040 | 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"> |
| 5b060 | 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- |
| 5b080 | 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 |
| 5b0a0 | 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 |
| 5b0c0 | 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- |
| 5b0e0 | 73 74 72 22 3e 26 71 75 6f 74 3b 77 68 69 6c 65 20 65 72 72 6f 72 20 75 6e 69 6f 6e 20 63 61 70 | str">"while.error.union.cap |
| 5b100 | 74 75 72 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | ture"</span>.{.....<span.cl |
| 5b120 | 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 31 3a 20 3c 73 | ass="tok-kw">var</span>.sum1:.<s |
| 5b140 | 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>. |
| 5b160 | 3d 20 3c 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 |
| 5b180 | 61 6e 3e 3b 0a 20 20 20 20 6e 75 6d 62 65 72 73 5f 6c 65 66 74 20 3d 20 3c 73 70 61 6e 20 63 6c | an>;.....numbers_left.=.<span.cl |
| 5b1a0 | 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 3c | ass="tok-number">3</span>;.....< |
| 5b1c0 | 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> |
| 5b1e0 | 20 28 65 76 65 6e 74 75 61 6c 6c 79 45 72 72 6f 72 53 65 71 75 65 6e 63 65 28 29 29 20 7c 76 61 | .(eventuallyErrorSequence()).|va |
| 5b200 | 6c 75 65 7c 20 7b 0a 20 20 20 20 20 20 20 20 73 75 6d 31 20 2b 3d 20 76 61 6c 75 65 3b 0a 20 20 | lue|.{.........sum1.+=.value;... |
| 5b220 | 20 20 7d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 | ..}.<span.class="tok-kw">else</s |
| 5b240 | 70 61 6e 3e 20 7c 65 72 72 7c 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | pan>.|err|.{.........<span.class |
| 5b260 | 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 65 72 72 20 | ="tok-kw">try</span>.expect(err. |
| 5b280 | 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 | ==.<span.class="tok-kw">error</s |
| 5b2a0 | 70 61 6e 3e 2e 52 65 61 63 68 65 64 5a 65 72 6f 29 3b 0a 20 20 20 20 7d 0a 7d 0a 0a 3c 73 70 61 | pan>.ReachedZero);.....}.}..<spa |
| 5b2c0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 6e 75 6d 62 | n.class="tok-kw">var</span>.numb |
| 5b2e0 | 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 2d 74 79 70 65 22 | ers_left:.<span.class="tok-type" |
| 5b300 | 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 |
| 5b320 | 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 20 63 6c | ull">undefined</span>;..<span.cl |
| 5b340 | 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 |
| 5b360 | 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 65 76 65 6e 74 75 61 6c 6c 79 45 72 72 6f 72 53 65 71 75 65 | ss="tok-fn">eventuallyErrorSeque |
| 5b380 | 6e 63 65 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | nce</span>().<span.class="tok-ty |
| 5b3a0 | 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= |
| 5b3c0 | 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 |
| 5b3e0 | 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>.< |
| 5b400 | 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 |
| 5b420 | 75 6d 62 65 72 73 5f 6c 65 66 74 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | umbers_left.==.<span.class="tok- |
| 5b440 | 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | number">0</span>).<span.class="t |
| 5b460 | 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 65 72 6f 20 | ok-kw">error</span>.ReachedZero. |
| 5b480 | 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> |
| 5b4a0 | 20 62 6c 6b 3a 20 7b 0a 20 20 20 20 20 20 20 20 6e 75 6d 62 65 72 73 5f 6c 65 66 74 20 2d 3d 20 | .blk:.{.........numbers_left.-=. |
| 5b4c0 | 3c 73 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 |
| 5b4e0 | 3e 3b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | >;.........<span.class="tok-kw"> |
| 5b500 | 62 72 65 61 6b 3c 2f 73 70 61 6e 3e 20 3a 62 6c 6b 20 6e 75 6d 62 65 72 73 5f 6c 65 66 74 3b 0a | break</span>.:blk.numbers_left;. |
| 5b520 | 20 20 20 20 7d 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 | ....};.}</code></pre></figure><f |
| 5b540 | 69 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 |
| 5b560 | 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 |
| 5b580 | 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 65 72 72 6f | >$.<kbd>zig.test.test_while_erro |
| 5b5a0 | 72 5f 63 61 70 74 75 72 65 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 77 68 69 | r_capture.zig</kbd>.1/1.test_whi |
| 5b5c0 | 6c 65 5f 65 72 72 6f 72 5f 63 61 70 74 75 72 65 2e 74 65 73 74 2e 77 68 69 6c 65 20 65 72 72 6f | le_error_capture.test.while.erro |
| 5b5e0 | 72 20 75 6e 69 6f 6e 20 63 61 70 74 75 72 65 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 | r.union.capture...OK.All.1.tests |
| 5b600 | 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>. |
| 5b620 | 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 6c 69 6e 65 2d 77 68 | ...............<h3.id="inline-wh |
| 5b640 | 69 6c 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 69 6e 6c 69 6e 65 2d 77 68 69 6c 65 22 | ile"><a.href="#toc-inline-while" |
| 5b660 | 3e 69 6e 6c 69 6e 65 20 77 68 69 6c 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 | >inline.while</a>.<a.class="hdr" |
| 5b680 | 20 68 72 65 66 3d 22 23 69 6e 6c 69 6e 65 2d 77 68 69 6c 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 | .href="#inline-while">..</a></h3 |
| 5b6a0 | 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 57 68 69 6c 65 20 6c 6f 6f 70 73 20 63 | >........<p>.......While.loops.c |
| 5b6c0 | 61 6e 20 62 65 20 69 6e 6c 69 6e 65 64 2e 20 54 68 69 73 20 63 61 75 73 65 73 20 74 68 65 20 6c | an.be.inlined..This.causes.the.l |
| 5b6e0 | 6f 6f 70 20 74 6f 20 62 65 20 75 6e 72 6f 6c 6c 65 64 2c 20 77 68 69 63 68 0a 20 20 20 20 20 20 | oop.to.be.unrolled,.which....... |
| 5b700 | 61 6c 6c 6f 77 73 20 74 68 65 20 63 6f 64 65 20 74 6f 20 64 6f 20 73 6f 6d 65 20 74 68 69 6e 67 | allows.the.code.to.do.some.thing |
| 5b720 | 73 20 77 68 69 63 68 20 6f 6e 6c 79 20 77 6f 72 6b 20 61 74 20 63 6f 6d 70 69 6c 65 20 74 69 6d | s.which.only.work.at.compile.tim |
| 5b740 | 65 2c 0a 20 20 20 20 20 20 73 75 63 68 20 61 73 20 75 73 65 20 74 79 70 65 73 20 61 73 20 66 69 | e,.......such.as.use.types.as.fi |
| 5b760 | 72 73 74 20 63 6c 61 73 73 20 76 61 6c 75 65 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 | rst.class.values........</p>.... |
| 5b780 | 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 |
| 5b7a0 | 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 |
| 5b7c0 | 6e 6c 69 6e 65 5f 77 68 69 6c 65 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 | nline_while.zig</cite></figcapti |
| 5b7e0 | 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 |
| 5b800 | 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 |
| 5b820 | 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 |
| 5b840 | 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 |
| 5b860 | 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;. |
| 5b880 | 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 |
| 5b8a0 | 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 69 6e | >.<span.class="tok-str">"in |
| 5b8c0 | 6c 69 6e 65 20 77 68 69 6c 65 20 6c 6f 6f 70 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 | line.while.loop"</span>.{.. |
| 5b8e0 | 20 20 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 |
| 5b900 | 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 | </span>.<span.class="tok-kw">var |
| 5b920 | 3c 2f 73 70 61 6e 3e 20 69 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | </span>.i.=.<span.class="tok-num |
| 5b940 | 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=" |
| 5b960 | 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 73 75 6d 3a 20 3c 73 70 61 6e 20 63 6c | tok-kw">var</span>.sum:.<span.cl |
| 5b980 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 | ass="tok-type">usize</span>.=.<s |
| 5b9a0 | 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>; |
| 5b9c0 | 0a 20 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 |
| 5b9e0 | 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 77 68 69 | </span>.<span.class="tok-kw">whi |
| 5ba00 | 6c 65 3c 2f 73 70 61 6e 3e 20 28 69 20 26 6c 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | le</span>.(i.<.<span.class="t |
| 5ba20 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 29 20 3a 20 28 69 20 2b 3d 20 3c 73 70 | ok-number">3</span>).:.(i.+=.<sp |
| 5ba40 | 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>). |
| 5ba60 | 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 |
| 5ba80 | 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 |
| 5baa0 | 2d 6b 77 22 3e 73 77 69 74 63 68 3c 2f 73 70 61 6e 3e 20 28 69 29 20 7b 0a 20 20 20 20 20 20 20 | -kw">switch</span>.(i).{........ |
| 5bac0 | 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< |
| 5bae0 | 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 |
| 5bb00 | 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 | pe">f32</span>,.............<spa |
| 5bb20 | 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 26 | n.class="tok-number">1</span>.=& |
| 5bb40 | 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 38 3c 2f 73 | gt;.<span.class="tok-type">i8</s |
| 5bb60 | 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 74 | pan>,.............<span.class="t |
| 5bb80 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 | ok-number">2</span>.=>.<span. |
| 5bba0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 2c 0a 20 20 | class="tok-type">bool</span>,... |
| 5bbc0 | 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 |
| 5bbe0 | 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 |
| 5bc00 | 6b 2d 6b 77 22 3e 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 | k-kw">unreachable</span>,....... |
| 5bc20 | 20 20 7d 3b 0a 20 20 20 20 20 20 20 20 73 75 6d 20 2b 3d 20 74 79 70 65 4e 61 6d 65 4c 65 6e 67 | ..};.........sum.+=.typeNameLeng |
| 5bc40 | 74 68 28 54 29 3b 0a 20 20 20 20 7d 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | th(T);.....}.....<span.class="to |
| 5bc60 | 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 73 75 6d 20 3d 3d 20 3c | k-kw">try</span>.expect(sum.==.< |
| 5bc80 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 39 3c 2f 73 70 61 6e 3e | span.class="tok-number">9</span> |
| 5bca0 | 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 |
| 5bcc0 | 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 74 79 70 65 4e 61 | pan>.<span.class="tok-fn">typeNa |
| 5bce0 | 6d 65 4c 65 6e 67 74 68 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | meLength</span>(<span.class="tok |
| 5bd00 | 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 |
| 5bd20 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 | ass="tok-type">type</span>).<spa |
| 5bd40 | 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>. |
| 5bd60 | 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 |
| 5bd80 | 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 | n</span>.<span.class="tok-builti |
| 5bda0 | 6e 22 3e 40 74 79 70 65 4e 61 6d 65 3c 2f 73 70 61 6e 3e 28 54 29 2e 6c 65 6e 3b 0a 7d 3c 2f 63 | n">@typeName</span>(T).len;.}</c |
| 5bdc0 | 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 |
| 5bde0 | 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</ |
| 5be00 | 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 |
| 5be20 | 20 74 65 73 74 20 74 65 73 74 5f 69 6e 6c 69 6e 65 5f 77 68 69 6c 65 2e 7a 69 67 3c 2f 6b 62 64 | .test.test_inline_while.zig</kbd |
| 5be40 | 3e 0a 31 2f 31 20 74 65 73 74 5f 69 6e 6c 69 6e 65 5f 77 68 69 6c 65 2e 74 65 73 74 2e 69 6e 6c | >.1/1.test_inline_while.test.inl |
| 5be60 | 69 6e 65 20 77 68 69 6c 65 20 6c 6f 6f 70 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 | ine.while.loop...OK.All.1.tests. |
| 5be80 | 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>.. |
| 5bea0 | 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 74 20 69 73 20 72 65 63 6f 6d 6d 65 6e 64 65 | ......<p>.......It.is.recommende |
| 5bec0 | 64 20 74 6f 20 75 73 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | d.to.use.<code><span.class="tok- |
| 5bee0 | 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 6c 6f 6f 70 73 20 6f | kw">inline</span></code>.loops.o |
| 5bf00 | 6e 6c 79 20 66 6f 72 20 6f 6e 65 20 6f 66 20 74 68 65 73 65 20 72 65 61 73 6f 6e 73 3a 0a 20 20 | nly.for.one.of.these.reasons:... |
| 5bf20 | 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e | ....</p>.......<ul>.........<li> |
| 5bf40 | 59 6f 75 20 6e 65 65 64 20 74 68 65 20 6c 6f 6f 70 20 74 6f 20 65 78 65 63 75 74 65 20 61 74 20 | You.need.the.loop.to.execute.at. |
| 5bf60 | 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> |
| 5bf80 | 20 66 6f 72 20 74 68 65 20 73 65 6d 61 6e 74 69 63 73 20 74 6f 20 77 6f 72 6b 2e 3c 2f 6c 69 3e | .for.the.semantics.to.work.</li> |
| 5bfa0 | 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 0a 20 20 20 20 20 20 20 20 59 6f 75 20 68 61 76 65 20 61 | .........<li>.........You.have.a |
| 5bfc0 | 20 62 65 6e 63 68 6d 61 72 6b 20 74 6f 20 70 72 6f 76 65 20 74 68 61 74 20 66 6f 72 63 69 62 6c | .benchmark.to.prove.that.forcibl |
| 5bfe0 | 79 20 75 6e 72 6f 6c 6c 69 6e 67 20 74 68 65 20 6c 6f 6f 70 20 69 6e 20 74 68 69 73 20 77 61 79 | y.unrolling.the.loop.in.this.way |
| 5c000 | 20 69 73 20 6d 65 61 73 75 72 61 62 6c 79 20 66 61 73 74 65 72 2e 0a 20 20 20 20 20 20 20 20 3c | .is.measurably.faster..........< |
| 5c020 | 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 70 | /li>.......</ul>..............<p |
| 5c040 | 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=" |
| 5c060 | 23 69 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 4f | #if">if</a></li>.<li><a.href="#O |
| 5c080 | 70 74 69 6f 6e 61 6c 73 22 3e 4f 70 74 69 6f 6e 61 6c 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 | ptionals">Optionals</a></li>.<li |
| 5c0a0 | 3e 3c 61 20 68 72 65 66 3d 22 23 45 72 72 6f 72 73 22 3e 45 72 72 6f 72 73 3c 2f 61 3e 3c 2f 6c | ><a.href="#Errors">Errors</a></l |
| 5c0c0 | 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 63 6f 6d 70 74 | i>.<li><a.href="#comptime">compt |
| 5c0e0 | 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 75 6e 72 65 61 | ime</a></li>.<li><a.href="#unrea |
| 5c100 | 63 68 61 62 6c 65 22 3e 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 | chable">unreachable</a></li>.</u |
| 5c120 | 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 66 6f 72 22 3e 3c 61 | l>...............<h2.id="for"><a |
| 5c140 | 20 68 72 65 66 3d 22 23 74 6f 63 2d 66 6f 72 22 3e 66 6f 72 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 | .href="#toc-for">for</a>.<a.clas |
| 5c160 | 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 66 6f 72 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a | s="hdr".href="#for">..</a></h2>. |
| 5c180 | 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 |
| 5c1a0 | 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 |
| 5c1c0 | 73 74 5f 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 | st_for.zig</cite></figcaption><p |
| 5c1e0 | 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 |
| 5c200 | 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | nst</span>.expect.=.<span.class= |
| 5c220 | 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 |
| 5c240 | 61 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 |
| 5c260 | 74 3b 3c 2f 73 70 61 6e 3e 29 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 0a 3c 73 70 61 | t;</span>).testing.expect;..<spa |
| 5c280 | 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 |
| 5c2a0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 66 6f 72 20 62 61 73 | an.class="tok-str">"for.bas |
| 5c2c0 | 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 |
| 5c2e0 | 73 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 74 65 6d 73 20 3d | ss="tok-kw">const</span>.items.= |
| 5c300 | 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 2f | .[_]<span.class="tok-type">i32</ |
| 5c320 | 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"> |
| 5c340 | 34 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | 4</span>,.<span.class="tok-numbe |
| 5c360 | 72 22 3e 35 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | r">5</span>,.<span.class="tok-nu |
| 5c380 | 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 6b | mber">3</span>,.<span.class="tok |
| 5c3a0 | 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | -number">4</span>,.<span.class=" |
| 5c3c0 | 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 20 3c 73 70 61 | tok-number">0</span>.};.....<spa |
| 5c3e0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 73 75 6d 3a | n.class="tok-kw">var</span>.sum: |
| 5c400 | 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 |
| 5c420 | 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< |
| 5c440 | 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 63 6f | /span>;......<span.class="tok-co |
| 5c460 | 6d 6d 65 6e 74 22 3e 2f 2f 20 46 6f 72 20 6c 6f 6f 70 73 20 69 74 65 72 61 74 65 20 6f 76 65 72 | mment">//.For.loops.iterate.over |
| 5c480 | 20 73 6c 69 63 65 73 20 61 6e 64 20 61 72 72 61 79 73 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c | .slices.and.arrays.</span>.....< |
| 5c4a0 | 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 20 28 | span.class="tok-kw">for</span>.( |
| 5c4c0 | 69 74 65 6d 73 29 20 7c 76 61 6c 75 65 7c 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 | items).|value|.{.........<span.c |
| 5c4e0 | 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 42 72 65 61 6b 20 61 6e 64 20 | lass="tok-comment">//.Break.and. |
| 5c500 | 63 6f 6e 74 69 6e 75 65 20 61 72 65 20 73 75 70 70 6f 72 74 65 64 2e 3c 2f 73 70 61 6e 3e 0a 20 | continue.are.supported.</span>.. |
| 5c520 | 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</ |
| 5c540 | 73 70 61 6e 3e 20 28 76 61 6c 75 65 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | span>.(value.==.<span.class="tok |
| 5c560 | 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>).{............ |
| 5c580 | 20 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</ |
| 5c5a0 | 73 70 61 6e 3e 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 73 75 6d 20 2b 3d 20 | span>;.........}.........sum.+=. |
| 5c5c0 | 76 61 6c 75 65 3b 0a 20 20 20 20 7d 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | value;.....}.....<span.class="to |
| 5c5e0 | 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 73 75 6d 20 3d 3d 20 3c | k-kw">try</span>.expect(sum.==.< |
| 5c600 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 36 3c 2f 73 70 61 6e | span.class="tok-number">16</span |
| 5c620 | 3e 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e | >);......<span.class="tok-commen |
| 5c640 | 74 22 3e 2f 2f 20 54 6f 20 69 74 65 72 61 74 65 20 6f 76 65 72 20 61 20 70 6f 72 74 69 6f 6e 20 | t">//.To.iterate.over.a.portion. |
| 5c660 | 6f 66 20 61 20 73 6c 69 63 65 2c 20 72 65 73 6c 69 63 65 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 | of.a.slice,.reslice.</span>..... |
| 5c680 | 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 20 | <span.class="tok-kw">for</span>. |
| 5c6a0 | 28 69 74 65 6d 73 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e | (items[<span.class="tok-number"> |
| 5c6c0 | 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 6d 62 65 | 0</span>..<span.class="tok-numbe |
| 5c6e0 | 72 22 3e 31 3c 2f 73 70 61 6e 3e 5d 29 20 7c 76 61 6c 75 65 7c 20 7b 0a 20 20 20 20 20 20 20 20 | r">1</span>]).|value|.{......... |
| 5c700 | 73 75 6d 20 2b 3d 20 76 61 6c 75 65 3b 0a 20 20 20 20 7d 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | sum.+=.value;.....}.....<span.cl |
| 5c720 | 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 |
| 5c740 | 75 6d 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 | um.==.<span.class="tok-number">2 |
| 5c760 | 30 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | 0</span>);......<span.class="tok |
| 5c780 | 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 6f 20 61 63 63 65 73 73 20 74 68 65 20 69 6e 64 65 78 | -comment">//.To.access.the.index |
| 5c7a0 | 20 6f 66 20 69 74 65 72 61 74 69 6f 6e 2c 20 73 70 65 63 69 66 79 20 61 20 73 65 63 6f 6e 64 20 | .of.iteration,.specify.a.second. |
| 5c7c0 | 63 6f 6e 64 69 74 69 6f 6e 20 61 73 20 77 65 6c 6c 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 | condition.as.well</span>.....<sp |
| 5c7e0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 61 73 20 61 20 73 | an.class="tok-comment">//.as.a.s |
| 5c800 | 65 63 6f 6e 64 20 63 61 70 74 75 72 65 20 76 61 6c 75 65 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 | econd.capture.value.</span>..... |
| 5c820 | 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>. |
| 5c840 | 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 69 33 32 | sum2:.<span.class="tok-type">i32 |
| 5c860 | 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 |
| 5c880 | 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 |
| 5c8a0 | 6b 2d 6b 77 22 3e 66 6f 72 3c 2f 73 70 61 6e 3e 20 28 69 74 65 6d 73 2c 20 3c 73 70 61 6e 20 63 | k-kw">for</span>.(items,.<span.c |
| 5c8c0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 2e 2e 29 20 7c 5f | lass="tok-number">0</span>..).|_ |
| 5c8e0 | 2c 20 69 7c 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ,.i|.{.........<span.class="tok- |
| 5c900 | 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 |
| 5c920 | 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 69 | s="tok-builtin">@TypeOf</span>(i |
| 5c940 | 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 75 73 69 7a | ).==.<span.class="tok-type">usiz |
| 5c960 | 65 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 20 20 20 20 73 75 6d 32 20 2b 3d 20 3c 73 70 61 6e | e</span>);.........sum2.+=.<span |
| 5c980 | 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>( |
| 5c9a0 | 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 |
| 5c9c0 | 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 69 6e | >,.<span.class="tok-builtin">@in |
| 5c9e0 | 74 43 61 73 74 3c 2f 73 70 61 6e 3e 28 69 29 29 3b 0a 20 20 20 20 7d 0a 20 20 20 20 3c 73 70 61 | tCast</span>(i));.....}.....<spa |
| 5ca00 | 6e 20 63 6c 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 |
| 5ca20 | 63 74 28 73 75 6d 32 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | ct(sum2.==.<span.class="tok-numb |
| 5ca40 | 65 72 22 3e 31 30 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | er">10</span>);......<span.class |
| 5ca60 | 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 61 74 65 20 6f 76 65 | ="tok-comment">//.To.iterate.ove |
| 5ca80 | 72 20 63 6f 6e 73 65 63 75 74 69 76 65 20 69 6e 74 65 67 65 72 73 2c 20 75 73 65 20 74 68 65 20 | r.consecutive.integers,.use.the. |
| 5caa0 | 72 61 6e 67 65 20 73 79 6e 74 61 78 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 | range.syntax.</span>.....<span.c |
| 5cac0 | 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 55 6e 62 6f 75 6e 64 65 64 20 | lass="tok-comment">//.Unbounded. |
| 5cae0 | 72 61 6e 67 65 20 69 73 20 61 6c 77 61 79 73 20 61 20 63 6f 6d 70 69 6c 65 20 65 72 72 6f 72 2e | range.is.always.a.compile.error. |
| 5cb00 | 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" |
| 5cb20 | 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 73 75 6d 33 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | >var</span>.sum3:.<span.class="t |
| 5cb40 | 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 |
| 5cb60 | 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>;.....< |
| 5cb80 | 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 20 28 | span.class="tok-kw">for</span>.( |
| 5cba0 | 3c 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 |
| 5cbc0 | 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 35 3c 2f 73 | >..<span.class="tok-number">5</s |
| 5cbe0 | 70 61 6e 3e 29 20 7c 69 7c 20 7b 0a 20 20 20 20 20 20 20 20 73 75 6d 33 20 2b 3d 20 69 3b 0a 20 | pan>).|i|.{.........sum3.+=.i;.. |
| 5cc00 | 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 |
| 5cc20 | 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 73 75 6d 33 20 3d 3d 20 3c 73 70 61 6e 20 63 6c | y</span>.expect(sum3.==.<span.cl |
| 5cc40 | 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 0a 0a | ass="tok-number">10</span>);.}.. |
| 5cc60 | 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> |
| 5cc80 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 6d 75 6c | .<span.class="tok-str">"mul |
| 5cca0 | 74 69 20 6f 62 6a 65 63 74 20 66 6f 72 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 | ti.object.for"</span>.{.... |
| 5ccc0 | 20 3c 73 70 61 6e 20 63 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 |
| 5cce0 | 6e 3e 20 69 74 65 6d 73 20 3d 20 5b 5f 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | n>.items.=.[_]<span.class="tok-t |
| 5cd00 | 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 7b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ype">usize</span>{.<span.class=" |
| 5cd20 | 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 |
| 5cd40 | 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 |
| 5cd60 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 20 20 | lass="tok-number">3</span>.};... |
| 5cd80 | 20 20 3c 73 70 61 6e 20 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 |
| 5cda0 | 61 6e 3e 20 69 74 65 6d 73 32 20 3d 20 5b 5f 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | an>.items2.=.[_]<span.class="tok |
| 5cdc0 | 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 7b 20 3c 73 70 61 6e 20 63 6c 61 73 73 | -type">usize</span>{.<span.class |
| 5cde0 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c | ="tok-number">4</span>,.<span.cl |
| 5ce00 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e | ass="tok-number">5</span>,.<span |
| 5ce20 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 36 3c 2f 73 70 61 6e 3e 20 7d 3b 0a | .class="tok-number">6</span>.};. |
| 5ce40 | 20 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 |
| 5ce60 | 61 6e 3e 20 63 6f 75 6e 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | an>.count:.<span.class="tok-type |
| 5ce80 | 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 |
| 5cea0 | 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 3c 73 70 61 6e 20 63 | k-number">0</span>;......<span.c |
| 5cec0 | 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 49 74 65 72 61 74 65 20 6f 76 | lass="tok-comment">//.Iterate.ov |
| 5cee0 | 65 72 20 6d 75 6c 74 69 70 6c 65 20 6f 62 6a 65 63 74 73 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 | er.multiple.objects.</span>..... |
| 5cf00 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 41 6c 6c | <span.class="tok-comment">//.All |
| 5cf20 | 20 6c 65 6e 67 74 68 73 20 6d 75 73 74 20 62 65 20 65 71 75 61 6c 20 61 74 20 74 68 65 20 73 74 | .lengths.must.be.equal.at.the.st |
| 5cf40 | 61 72 74 20 6f 66 20 74 68 65 20 6c 6f 6f 70 2c 20 6f 74 68 65 72 77 69 73 65 20 64 65 74 65 63 | art.of.the.loop,.otherwise.detec |
| 5cf60 | 74 61 62 6c 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | table</span>.....<span.class="to |
| 5cf80 | 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 69 6c 6c 65 67 61 6c 20 62 65 68 61 76 69 6f 72 20 6f | k-comment">//.illegal.behavior.o |
| 5cfa0 | 63 63 75 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 | ccurs.</span>.....<span.class="t |
| 5cfc0 | 6f 6b 2d 6b 77 22 3e 66 6f 72 3c 2f 73 70 61 6e 3e 20 28 69 74 65 6d 73 2c 20 69 74 65 6d 73 32 | ok-kw">for</span>.(items,.items2 |
| 5cfe0 | 29 20 7c 69 2c 20 6a 7c 20 7b 0a 20 20 20 20 20 20 20 20 63 6f 75 6e 74 20 2b 3d 20 69 20 2b 20 | ).|i,.j|.{.........count.+=.i.+. |
| 5d000 | 6a 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 | j;.....}......<span.class="tok-k |
| 5d020 | 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 63 6f 75 6e 74 20 3d 3d 20 3c 73 | w">try</span>.expect(count.==.<s |
| 5d040 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 31 3c 2f 73 70 61 6e 3e | pan.class="tok-number">21</span> |
| 5d060 | 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< |
| 5d080 | 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 |
| 5d0a0 | 6f 74 3b 66 6f 72 20 72 65 66 65 72 65 6e 63 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a | ot;for.reference"</span>.{. |
| 5d0c0 | 20 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 |
| 5d0e0 | 61 6e 3e 20 69 74 65 6d 73 20 3d 20 5b 5f 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | an>.items.=.[_]<span.class="tok- |
| 5d100 | 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 |
| 5d120 | 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 |
| 5d140 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c | ="tok-number">4</span>,.<span.cl |
| 5d160 | 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 0a 20 20 | ass="tok-number">2</span>.};.... |
| 5d180 | 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 |
| 5d1a0 | 74 65 72 61 74 65 20 6f 76 65 72 20 74 68 65 20 73 6c 69 63 65 20 62 79 20 72 65 66 65 72 65 6e | terate.over.the.slice.by.referen |
| 5d1c0 | 63 65 20 62 79 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ce.by</span>.....<span.class="to |
| 5d1e0 | 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 73 70 65 63 69 66 79 69 6e 67 20 74 68 61 74 20 74 68 | k-comment">//.specifying.that.th |
| 5d200 | 65 20 63 61 70 74 75 72 65 20 76 61 6c 75 65 20 69 73 20 61 20 70 6f 69 6e 74 65 72 2e 3c 2f 73 | e.capture.value.is.a.pointer.</s |
| 5d220 | 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 66 6f | pan>.....<span.class="tok-kw">fo |
| 5d240 | 72 3c 2f 73 70 61 6e 3e 20 28 26 61 6d 70 3b 69 74 65 6d 73 29 20 7c 2a 76 61 6c 75 65 7c 20 7b | r</span>.(&items).|*value|.{ |
| 5d260 | 0a 20 20 20 20 20 20 20 20 76 61 6c 75 65 2e 2a 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | .........value.*.+=.<span.class= |
| 5d280 | 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 7d 0a 0a 20 20 | "tok-number">1</span>;.....}.... |
| 5d2a0 | 20 20 3c 73 70 61 6e 20 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 |
| 5d2c0 | 3e 20 65 78 70 65 63 74 28 69 74 65 6d 73 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | >.expect(items[<span.class="tok- |
| 5d2e0 | 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 |
| 5d300 | 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 |
| 5d320 | 61 6e 20 63 6c 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 |
| 5d340 | 65 63 74 28 69 74 65 6d 73 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | ect(items[<span.class="tok-numbe |
| 5d360 | 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 6f 6b | r">1</span>].==.<span.class="tok |
| 5d380 | 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | -number">5</span>);.....<span.cl |
| 5d3a0 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 69 | ass="tok-kw">try</span>.expect(i |
| 5d3c0 | 74 65 6d 73 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c | tems[<span.class="tok-number">2< |
| 5d3e0 | 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 |
| 5d400 | 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | er">3</span>);.}..<span.class="t |
| 5d420 | 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=" |
| 5d440 | 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 66 6f 72 20 65 6c 73 65 26 71 75 6f 74 3b 3c 2f 73 | tok-str">"for.else"</s |
| 5d460 | 70 61 6e 3e 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 |
| 5d480 | 65 6e 74 22 3e 2f 2f 20 46 6f 72 20 61 6c 6c 6f 77 73 20 61 6e 20 65 6c 73 65 20 61 74 74 61 63 | ent">//.For.allows.an.else.attac |
| 5d4a0 | 68 65 64 20 74 6f 20 69 74 2c 20 74 68 65 20 73 61 6d 65 20 61 73 20 61 20 77 68 69 6c 65 20 6c | hed.to.it,.the.same.as.a.while.l |
| 5d4c0 | 6f 6f 70 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 | oop.</span>.....<span.class="tok |
| 5d4e0 | 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 5d 3f 3c 73 | -kw">const</span>.items.=.[_]?<s |
| 5d500 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 7b | pan.class="tok-type">i32</span>{ |
| 5d520 | 20 3c 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 |
| 5d540 | 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 2f | n>,.<span.class="tok-number">4</ |
| 5d560 | 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 | span>,.<span.class="tok-null">nu |
| 5d580 | 6c 6c 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | ll</span>,.<span.class="tok-numb |
| 5d5a0 | 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | er">5</span>.};......<span.class |
| 5d5c0 | 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 46 6f 72 20 6c 6f 6f 70 73 20 63 61 6e 20 | ="tok-comment">//.For.loops.can. |
| 5d5e0 | 61 6c 73 6f 20 62 65 20 75 73 65 64 20 61 73 20 65 78 70 72 65 73 73 69 6f 6e 73 2e 3c 2f 73 70 | also.be.used.as.expressions.</sp |
| 5d600 | 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 |
| 5d620 | 22 3e 2f 2f 20 53 69 6d 69 6c 61 72 20 74 6f 20 77 68 69 6c 65 20 6c 6f 6f 70 73 2c 20 77 68 65 | ">//.Similar.to.while.loops,.whe |
| 5d640 | 6e 20 79 6f 75 20 62 72 65 61 6b 20 66 72 6f 6d 20 61 20 66 6f 72 20 6c 6f 6f 70 2c 20 74 68 65 | n.you.break.from.a.for.loop,.the |
| 5d660 | 20 65 6c 73 65 20 62 72 61 6e 63 68 20 69 73 20 6e 6f 74 20 65 76 61 6c 75 61 74 65 64 2e 3c 2f | .else.branch.is.not.evaluated.</ |
| 5d680 | 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 |
| 5d6a0 | 61 72 3c 2f 73 70 61 6e 3e 20 73 75 6d 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ar</span>.sum:.<span.class="tok- |
| 5d6c0 | 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | type">i32</span>.=.<span.class=" |
| 5d6e0 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 | tok-number">0</span>;.....<span. |
| 5d700 | 63 6c 61 73 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 |
| 5d720 | 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 66 6f 72 3c 2f 73 | lt.=.<span.class="tok-kw">for</s |
| 5d740 | 70 61 6e 3e 20 28 69 74 65 6d 73 29 20 7c 76 61 6c 75 65 7c 20 7b 0a 20 20 20 20 20 20 20 20 3c | pan>.(items).|value|.{.........< |
| 5d760 | 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 76 | span.class="tok-kw">if</span>.(v |
| 5d780 | 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 3e 6e | alue.!=.<span.class="tok-null">n |
| 5d7a0 | 75 6c 6c 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 73 75 6d 20 2b 3d | ull</span>).{.............sum.+= |
| 5d7c0 | 20 76 61 6c 75 65 2e 3f 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 7d 20 3c 73 70 61 6e 20 | .value.?;.........}.....}.<span. |
| 5d7e0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 62 6c 6b 3a 20 | class="tok-kw">else</span>.blk:. |
| 5d800 | 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 | {.........<span.class="tok-kw">t |
| 5d820 | 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 73 75 6d 20 3d 3d 20 3c 73 70 61 6e 20 63 6c | ry</span>.expect(sum.==.<span.cl |
| 5d840 | 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 29 3b 0a 20 20 20 | ass="tok-number">12</span>);.... |
| 5d860 | 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< |
| 5d880 | 2f 73 70 61 6e 3e 20 3a 62 6c 6b 20 73 75 6d 3b 0a 20 20 20 20 7d 3b 0a 20 20 20 20 3c 73 70 61 | /span>.:blk.sum;.....};.....<spa |
| 5d8a0 | 6e 20 63 6c 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 |
| 5d8c0 | 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 |
| 5d8e0 | 6d 62 65 72 22 3e 31 32 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e | mber">12</span>);.}</code></pre> |
| 5d900 | 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 |
| 5d920 | 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 |
| 5d940 | 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 |
| 5d960 | 5f 66 6f 72 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 34 20 74 65 73 74 5f 66 6f 72 2e 74 65 73 74 | _for.zig</kbd>.1/4.test_for.test |
| 5d980 | 2e 66 6f 72 20 62 61 73 69 63 73 2e 2e 2e 4f 4b 0a 32 2f 34 20 74 65 73 74 5f 66 6f 72 2e 74 65 | .for.basics...OK.2/4.test_for.te |
| 5d9a0 | 73 74 2e 6d 75 6c 74 69 20 6f 62 6a 65 63 74 20 66 6f 72 2e 2e 2e 4f 4b 0a 33 2f 34 20 74 65 73 | st.multi.object.for...OK.3/4.tes |
| 5d9c0 | 74 5f 66 6f 72 2e 74 65 73 74 2e 66 6f 72 20 72 65 66 65 72 65 6e 63 65 2e 2e 2e 4f 4b 0a 34 2f | t_for.test.for.reference...OK.4/ |
| 5d9e0 | 34 20 74 65 73 74 5f 66 6f 72 2e 74 65 73 74 2e 66 6f 72 20 65 6c 73 65 2e 2e 2e 4f 4b 0a 41 6c | 4.test_for.test.for.else...OK.Al |
| 5da00 | 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 2f 70 72 65 3e 3c | l.4.tests.passed..</samp></pre>< |
| 5da20 | 2f 66 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 | /figure>........<h3.id="Labeled- |
| 5da40 | 66 6f 72 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 4c 61 62 65 6c 65 64 2d 66 6f 72 22 3e | for"><a.href="#toc-Labeled-for"> |
| 5da60 | 4c 61 62 65 6c 65 64 20 66 6f 72 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 | Labeled.for</a>.<a.class="hdr".h |
| 5da80 | 72 65 66 3d 22 23 4c 61 62 65 6c 65 64 2d 66 6f 72 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a | ref="#Labeled-for">..</a></h3>.. |
| 5daa0 | 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 6e 20 63 6c 61 73 | ......<p>When.a.<code><span.clas |
| 5dac0 | 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 6f | s="tok-kw">for</span></code>.loo |
| 5dae0 | 70 20 69 73 20 6c 61 62 65 6c 65 64 2c 20 69 74 20 63 61 6e 20 62 65 20 72 65 66 65 72 65 6e 63 | p.is.labeled,.it.can.be.referenc |
| 5db00 | 65 64 20 66 72 6f 6d 20 61 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ed.from.a.<code><span.class="tok |
| 5db20 | 2d 6b 77 22 3e 62 72 65 61 6b 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 0a 20 20 20 20 20 20 20 | -kw">break</span></code>........ |
| 5db40 | 20 20 20 20 20 20 20 6f 72 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | .......or.<code><span.class="tok |
| 5db60 | 2d 6b 77 22 3e 63 6f 6e 74 69 6e 75 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 66 72 6f 6d | -kw">continue</span></code>.from |
| 5db80 | 20 77 69 74 68 69 6e 20 61 20 6e 65 73 74 65 64 20 6c 6f 6f 70 3a 3c 2f 70 3e 0a 20 20 20 20 20 | .within.a.nested.loop:</p>...... |
| 5dba0 | 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- |
| 5dbc0 | 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 66 6f 72 | cap"><cite.class="file">test_for |
| 5dbe0 | 5f 6e 65 73 74 65 64 5f 62 72 65 61 6b 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 | _nested_break.zig</cite></figcap |
| 5dc00 | 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 |
| 5dc20 | 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 |
| 5dc40 | 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> |
| 5dc60 | 28 3c 73 70 61 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 |
| 5dc80 | 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 |
| 5dca0 | 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 |
| 5dcc0 | 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 |
| 5dce0 | 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 |
| 5dd00 | 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 6e 65 73 74 65 64 20 62 72 65 61 6b 26 71 75 6f 74 3b 3c | k-str">"nested.break"< |
| 5dd20 | 2f 73 70 61 6e 3e 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 |
| 5dd40 | 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 63 6f 75 6e 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ">var</span>.count:.<span.class= |
| 5dd60 | 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. |
| 5dd80 | 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>;.... |
| 5dda0 | 20 6f 75 74 65 72 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6f 72 | .outer:.<span.class="tok-kw">for |
| 5ddc0 | 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 6d 62 65 72 | </span>.(<span.class="tok-number |
| 5dde0 | 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 |
| 5de00 | 62 65 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 3c 73 70 | ber">6</span>).|_|.{.........<sp |
| 5de20 | 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 3c 73 | an.class="tok-kw">for</span>.(<s |
| 5de40 | 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 2e | pan.class="tok-number">1</span>. |
| 5de60 | 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 36 3c 2f 73 70 61 | .<span.class="tok-number">6</spa |
| 5de80 | 6e 3e 29 20 7c 5f 7c 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 75 6e 74 20 2b 3d 20 3c | n>).|_|.{.............count.+=.< |
| 5dea0 | 73 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> |
| 5dec0 | 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | ;.............<span.class="tok-k |
| 5dee0 | 77 22 3e 62 72 65 61 6b 3c 2f 73 70 61 6e 3e 20 3a 6f 75 74 65 72 3b 0a 20 20 20 20 20 20 20 20 | w">break</span>.:outer;......... |
| 5df00 | 7d 0a 20 20 20 20 7d 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | }.....}.....<span.class="tok-kw" |
| 5df20 | 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 63 6f 75 6e 74 20 3d 3d 20 3c 73 70 61 | >try</span>.expect(count.==.<spa |
| 5df40 | 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>);. |
| 5df60 | 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 |
| 5df80 | 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">" |
| 5dfa0 | 6e 65 73 74 65 64 20 63 6f 6e 74 69 6e 75 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 | nested.continue"</span>.{.. |
| 5dfc0 | 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 |
| 5dfe0 | 6e 3e 20 63 6f 75 6e 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 | n>.count:.<span.class="tok-type" |
| 5e000 | 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | >usize</span>.=.<span.class="tok |
| 5e020 | 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 6f 75 74 65 72 3a 20 3c 73 | -number">0</span>;.....outer:.<s |
| 5e040 | 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 3c | pan.class="tok-kw">for</span>.(< |
| 5e060 | 73 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> |
| 5e080 | 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 39 3c 2f 73 70 | ..<span.class="tok-number">9</sp |
| 5e0a0 | 61 6e 3e 29 20 7c 5f 7c 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | an>).|_|.{.........<span.class=" |
| 5e0c0 | 74 6f 6b 2d 6b 77 22 3e 66 6f 72 3c 2f 73 70 61 6e 3e 20 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d | tok-kw">for</span>.(<span.class= |
| 5e0e0 | 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 70 61 6e 20 63 6c 61 | "tok-number">1</span>..<span.cla |
| 5e100 | 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 20 7c 5f 7c 20 7b 0a | ss="tok-number">6</span>).|_|.{. |
| 5e120 | 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 75 6e 74 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ............count.+=.<span.class |
| 5e140 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 20 20 20 20 | ="tok-number">1</span>;......... |
| 5e160 | 20 20 20 20 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 | ....<span.class="tok-kw">continu |
| 5e180 | 65 3c 2f 73 70 61 6e 3e 20 3a 6f 75 74 65 72 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 7d | e</span>.:outer;.........}.....} |
| 5e1a0 | 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</ |
| 5e1c0 | 73 70 61 6e 3e 20 65 78 70 65 63 74 28 63 6f 75 6e 74 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | span>.expect(count.==.<span.clas |
| 5e1e0 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 38 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 | s="tok-number">8</span>);.}</cod |
| 5e200 | 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 |
| 5e220 | 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 |
| 5e240 | 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 |
| 5e260 | 65 73 74 20 74 65 73 74 5f 66 6f 72 5f 6e 65 73 74 65 64 5f 62 72 65 61 6b 2e 7a 69 67 3c 2f 6b | est.test_for_nested_break.zig</k |
| 5e280 | 62 64 3e 0a 31 2f 32 20 74 65 73 74 5f 66 6f 72 5f 6e 65 73 74 65 64 5f 62 72 65 61 6b 2e 74 65 | bd>.1/2.test_for_nested_break.te |
| 5e2a0 | 73 74 2e 6e 65 73 74 65 64 20 62 72 65 61 6b 2e 2e 2e 4f 4b 0a 32 2f 32 20 74 65 73 74 5f 66 6f | st.nested.break...OK.2/2.test_fo |
| 5e2c0 | 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 63 6f 6e 74 69 | r_nested_break.test.nested.conti |
| 5e2e0 | 6e 75 65 2e 2e 2e 4f 4b 0a 41 6c 6c 20 32 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 73 | nue...OK.All.2.tests.passed..</s |
| 5e300 | 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 | amp></pre></figure>............. |
| 5e320 | 20 20 3c 68 33 20 69 64 3d 22 69 6e 6c 69 6e 65 2d 66 6f 72 22 3e 3c 61 20 68 72 65 66 3d 22 23 | ..<h3.id="inline-for"><a.href="# |
| 5e340 | 74 6f 63 2d 69 6e 6c 69 6e 65 2d 66 6f 72 22 3e 69 6e 6c 69 6e 65 20 66 6f 72 3c 2f 61 3e 20 3c | toc-inline-for">inline.for</a>.< |
| 5e360 | 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 2d 66 6f 72 22 | a.class="hdr".href="#inline-for" |
| 5e380 | 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 46 6f | >..</a></h3>........<p>.......Fo |
| 5e3a0 | 72 20 6c 6f 6f 70 73 20 63 61 6e 20 62 65 20 69 6e 6c 69 6e 65 64 2e 20 54 68 69 73 20 63 61 75 | r.loops.can.be.inlined..This.cau |
| 5e3c0 | 73 65 73 20 74 68 65 20 6c 6f 6f 70 20 74 6f 20 62 65 20 75 6e 72 6f 6c 6c 65 64 2c 20 77 68 69 | ses.the.loop.to.be.unrolled,.whi |
| 5e3e0 | 63 68 0a 20 20 20 20 20 20 61 6c 6c 6f 77 73 20 74 68 65 20 63 6f 64 65 20 74 6f 20 64 6f 20 73 | ch.......allows.the.code.to.do.s |
| 5e400 | 6f 6d 65 20 74 68 69 6e 67 73 20 77 68 69 63 68 20 6f 6e 6c 79 20 77 6f 72 6b 20 61 74 20 63 6f | ome.things.which.only.work.at.co |
| 5e420 | 6d 70 69 6c 65 20 74 69 6d 65 2c 0a 20 20 20 20 20 20 73 75 63 68 20 61 73 20 75 73 65 20 74 79 | mpile.time,.......such.as.use.ty |
| 5e440 | 70 65 73 20 61 73 20 66 69 72 73 74 20 63 6c 61 73 73 20 76 61 6c 75 65 73 2e 0a 20 20 20 20 20 | pes.as.first.class.values....... |
| 5e460 | 20 54 68 65 20 63 61 70 74 75 72 65 20 76 61 6c 75 65 20 61 6e 64 20 69 74 65 72 61 74 6f 72 20 | .The.capture.value.and.iterator. |
| 5e480 | 76 61 6c 75 65 20 6f 66 20 69 6e 6c 69 6e 65 64 20 66 6f 72 20 6c 6f 6f 70 73 20 61 72 65 0a 20 | value.of.inlined.for.loops.are.. |
| 5e4a0 | 20 20 20 20 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 6b 6e 6f 77 6e 2e 0a 20 20 20 20 20 20 3c | .....compile-time.known........< |
| 5e4c0 | 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 |
| 5e4e0 | 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" |
| 5e500 | 3e 74 65 73 74 5f 69 6e 6c 69 6e 65 5f 66 6f 72 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 | >test_inline_for.zig</cite></fig |
| 5e520 | 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=" |
| 5e540 | 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 |
| 5e560 | 70 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< |
| 5e580 | 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 |
| 5e5a0 | 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 |
| 5e5c0 | 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< |
| 5e5e0 | 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 |
| 5e600 | 6f 74 3b 69 6e 6c 69 6e 65 20 66 6f 72 20 6c 6f 6f 70 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 | ot;inline.for.loop"</span>. |
| 5e620 | 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 |
| 5e640 | 3c 2f 73 70 61 6e 3e 20 6e 75 6d 73 20 3d 20 5b 5f 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | </span>.nums.=.[_]<span.class="t |
| 5e660 | 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 7b 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ok-type">i32</span>{.<span.class |
| 5e680 | 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 |
| 5e6a0 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e | ass="tok-number">4</span>,.<span |
| 5e6c0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 36 3c 2f 73 70 61 6e 3e 20 7d 3b 0a | .class="tok-number">6</span>.};. |
| 5e6e0 | 20 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 |
| 5e700 | 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 22 3e | an>.sum:.<span.class="tok-type"> |
| 5e720 | 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | usize</span>.=.<span.class="tok- |
| 5e740 | 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 |
| 5e760 | 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 |
| 5e780 | 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 6e 75 6d 73 29 20 | lass="tok-kw">for</span>.(nums). |
| 5e7a0 | 7c 69 7c 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | |i|.{.........<span.class="tok-k |
| 5e7c0 | 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 54 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | w">const</span>.T.=.<span.class= |
| 5e7e0 | 22 74 6f 6b 2d 6b 77 22 3e 73 77 69 74 63 68 3c 2f 73 70 61 6e 3e 20 28 69 29 20 7b 0a 20 20 20 | "tok-kw">switch</span>.(i).{.... |
| 5e800 | 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 |
| 5e820 | 22 3e 32 3c 2f 73 70 61 6e 3e 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ">2</span>.=>.<span.class="to |
| 5e840 | 6b 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 | k-type">f32</span>,............. |
| 5e860 | 3c 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 |
| 5e880 | 3e 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 | >.=>.<span.class="tok-type">i |
| 5e8a0 | 38 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | 8</span>,.............<span.clas |
| 5e8c0 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 36 3c 2f 73 70 61 6e 3e 20 3d 26 67 74 3b 20 3c 73 | s="tok-number">6</span>.=>.<s |
| 5e8e0 | 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> |
| 5e900 | 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 6b | ,.............<span.class="tok-k |
| 5e920 | 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 |
| 5e940 | 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 2c 0a 20 20 | ="tok-kw">unreachable</span>,... |
| 5e960 | 20 20 20 20 20 20 7d 3b 0a 20 20 20 20 20 20 20 20 73 75 6d 20 2b 3d 20 74 79 70 65 4e 61 6d 65 | ......};.........sum.+=.typeName |
| 5e980 | 4c 65 6e 67 74 68 28 54 29 3b 0a 20 20 20 20 7d 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | Length(T);.....}.....<span.class |
| 5e9a0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 73 75 6d 20 | ="tok-kw">try</span>.expect(sum. |
| 5e9c0 | 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 39 3c 2f 73 | ==.<span.class="tok-number">9</s |
| 5e9e0 | 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 | pan>);.}..<span.class="tok-kw">f |
| 5ea00 | 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 74 79 | n</span>.<span.class="tok-fn">ty |
| 5ea20 | 70 65 4e 61 6d 65 4c 65 6e 67 74 68 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d | peNameLength</span>(<span.class= |
| 5ea40 | 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 54 3a 20 3c 73 70 61 | "tok-kw">comptime</span>.T:.<spa |
| 5ea60 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 29 20 | n.class="tok-type">type</span>). |
| 5ea80 | 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 |
| 5eaa0 | 61 6e 3e 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 |
| 5eac0 | 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 62 75 | eturn</span>.<span.class="tok-bu |
| 5eae0 | 69 6c 74 69 6e 22 3e 40 74 79 70 65 4e 61 6d 65 3c 2f 73 70 61 6e 3e 28 54 29 2e 6c 65 6e 3b 0a | iltin">@typeName</span>(T).len;. |
| 5eb00 | 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>< |
| 5eb20 | 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 |
| 5eb40 | 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 |
| 5eb60 | 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 69 6e 6c 69 6e 65 5f 66 6f 72 2e 7a 69 67 3c 2f 6b | >zig.test.test_inline_for.zig</k |
| 5eb80 | 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 69 6e 6c 69 6e 65 5f 66 6f 72 2e 74 65 73 74 2e 69 6e 6c | bd>.1/1.test_inline_for.test.inl |
| 5eba0 | 69 6e 65 20 66 6f 72 20 6c 6f 6f 70 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 | ine.for.loop...OK.All.1.tests.pa |
| 5ebc0 | 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>.... |
| 5ebe0 | 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 74 20 69 73 20 72 65 63 6f 6d 6d 65 6e 64 65 64 20 | ....<p>.......It.is.recommended. |
| 5ec00 | 74 6f 20 75 73 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | to.use.<code><span.class="tok-kw |
| 5ec20 | 22 3e 69 6e 6c 69 6e 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6c 6f 6f 70 73 20 6f 6e 6c | ">inline</span></code>.loops.onl |
| 5ec40 | 79 20 66 6f 72 20 6f 6e 65 20 6f 66 20 74 68 65 73 65 20 72 65 61 73 6f 6e 73 3a 0a 20 20 20 20 | y.for.one.of.these.reasons:..... |
| 5ec60 | 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 59 6f | ..</p>.......<ul>.........<li>Yo |
| 5ec80 | 75 20 6e 65 65 64 20 74 68 65 20 6c 6f 6f 70 20 74 6f 20 65 78 65 63 75 74 65 20 61 74 20 3c 61 | u.need.the.loop.to.execute.at.<a |
| 5eca0 | 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 20 66 | .href="#comptime">comptime</a>.f |
| 5ecc0 | 6f 72 20 74 68 65 20 73 65 6d 61 6e 74 69 63 73 20 74 6f 20 77 6f 72 6b 2e 3c 2f 6c 69 3e 0a 20 | or.the.semantics.to.work.</li>.. |
| 5ece0 | 20 20 20 20 20 20 20 3c 6c 69 3e 0a 20 20 20 20 20 20 20 20 59 6f 75 20 68 61 76 65 20 61 20 62 | .......<li>.........You.have.a.b |
| 5ed00 | 65 6e 63 68 6d 61 72 6b 20 74 6f 20 70 72 6f 76 65 20 74 68 61 74 20 66 6f 72 63 69 62 6c 79 20 | enchmark.to.prove.that.forcibly. |
| 5ed20 | 75 6e 72 6f 6c 6c 69 6e 67 20 74 68 65 20 6c 6f 6f 70 20 69 6e 20 74 68 69 73 20 77 61 79 20 69 | unrolling.the.loop.in.this.way.i |
| 5ed40 | 73 20 6d 65 61 73 75 72 61 62 6c 79 20 66 61 73 74 65 72 2e 0a 20 20 20 20 20 20 20 20 3c 2f 6c | s.measurably.faster..........</l |
| 5ed60 | 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 70 3e 53 | i>.......</ul>..............<p>S |
| 5ed80 | 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 77 | ee.also:</p><ul>.<li><a.href="#w |
| 5eda0 | 68 69 6c 65 22 3e 77 68 69 6c 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 | hile">while</a></li>.<li><a.href |
| 5edc0 | 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>.< |
| 5ede0 | 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 41 72 72 61 79 73 22 3e 41 72 72 61 79 73 3c 2f 61 3e 3c | li><a.href="#Arrays">Arrays</a>< |
| 5ee00 | 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 3e 53 6c 69 63 65 | /li>.<li><a.href="#Slices">Slice |
| 5ee20 | 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>...............< |
| 5ee40 | 68 32 20 69 64 3d 22 69 66 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 69 66 22 3e 69 66 3c | h2.id="if"><a.href="#toc-if">if< |
| 5ee60 | 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 69 66 22 3e c2 a7 | /a>.<a.class="hdr".href="#if">.. |
| 5ee80 | 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 | </a></h2>........<figure><figcap |
| 5eea0 | 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 |
| 5eec0 | 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 69 66 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 | ="file">test_if.zig</cite></figc |
| 5eee0 | 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 |
| 5ef00 | 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 68 61 | ok-comment">//.If.expressions.ha |
| 5ef20 | 76 65 20 74 68 72 65 65 20 75 73 65 73 2c 20 63 6f 72 72 65 73 70 6f 6e 64 69 6e 67 20 74 6f 20 | ve.three.uses,.corresponding.to. |
| 5ef40 | 74 68 65 20 74 68 72 65 65 20 74 79 70 65 73 3a 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c | the.three.types:</span>.<span.cl |
| 5ef60 | 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 2a 20 62 6f 6f 6c 3c 2f 73 70 61 | ass="tok-comment">//.*.bool</spa |
| 5ef80 | 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 | n>.<span.class="tok-comment">//. |
| 5efa0 | 2a 20 3f 54 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d | *.?T</span>.<span.class="tok-com |
| 5efc0 | 6d 65 6e 74 22 3e 2f 2f 20 2a 20 61 6e 79 65 72 72 6f 72 21 54 3c 2f 73 70 61 6e 3e 0a 0a 3c 73 | ment">//.*.anyerror!T</span>..<s |
| 5efe0 | 70 61 6e 20 63 6c 61 73 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>. |
| 5f000 | 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 |
| 5f020 | 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 |
| 5f040 | 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>). |
| 5f060 | 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 |
| 5f080 | 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 |
| 5f0a0 | 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 69 66 20 65 78 70 72 65 73 73 69 6f 6e 26 71 75 6f 74 | ok-str">"if.expression" |
| 5f0c0 | 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- |
| 5f0e0 | 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 61 72 65 20 75 | comment">//.If.expressions.are.u |
| 5f100 | 73 65 64 20 69 6e 73 74 65 61 64 20 6f 66 20 61 20 74 65 72 6e 61 72 79 20 65 78 70 72 65 73 73 | sed.instead.of.a.ternary.express |
| 5f120 | 69 6f 6e 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ion.</span>.....<span.class="tok |
| 5f140 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 | -kw">const</span>.a:.<span.class |
| 5f160 | 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 |
| 5f180 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 | lass="tok-number">5</span>;..... |
| 5f1a0 | 3c 73 70 61 6e 20 63 6c 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 |
| 5f1c0 | 3e 20 62 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c | >.b:.<span.class="tok-type">u32< |
| 5f1e0 | 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 |
| 5f200 | 22 3e 34 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ">4</span>;.....<span.class="tok |
| 5f220 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 72 65 73 75 6c 74 20 3d 20 3c 73 70 61 6e | -kw">const</span>.result.=.<span |
| 5f240 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 61 20 21 3d 20 | .class="tok-kw">if</span>.(a.!=. |
| 5f260 | 62 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 37 3c 2f | b).<span.class="tok-number">47</ |
| 5f280 | 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c | span>.<span.class="tok-kw">else< |
| 5f2a0 | 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e | /span>.<span.class="tok-number"> |
| 5f2c0 | 33 30 38 39 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | 3089</span>;.....<span.class="to |
| 5f2e0 | 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 72 65 73 75 6c 74 20 3d | k-kw">try</span>.expect(result.= |
| 5f300 | 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 37 3c 2f 73 | =.<span.class="tok-number">47</s |
| 5f320 | 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 |
| 5f340 | 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" |
| 5f360 | 3e 26 71 75 6f 74 3b 69 66 20 62 6f 6f 6c 65 61 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b | >"if.boolean"</span>.{ |
| 5f380 | 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">/ |
| 5f3a0 | 2f 20 49 66 20 65 78 70 72 65 73 73 69 6f 6e 73 20 74 65 73 74 20 62 6f 6f 6c 65 61 6e 20 63 6f | /.If.expressions.test.boolean.co |
| 5f3c0 | 6e 64 69 74 69 6f 6e 73 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | nditions.</span>.....<span.class |
| 5f3e0 | 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. |
| 5f400 | 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 |
| 5f420 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 3b | pan.class="tok-number">5</span>; |
| 5f440 | 0a 20 20 20 20 3c 73 70 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< |
| 5f460 | 2f 73 70 61 6e 3e 20 62 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 | /span>.b:.<span.class="tok-type" |
| 5f480 | 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 |
| 5f4a0 | 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | umber">4</span>;.....<span.class |
| 5f4c0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 61 20 21 3d 20 62 29 20 7b 0a 20 | ="tok-kw">if</span>.(a.!=.b).{.. |
| 5f4e0 | 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< |
| 5f500 | 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 6e | /span>.expect(<span.class="tok-n |
| 5f520 | 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 7d 20 3c 73 70 61 6e 20 63 | ull">true</span>);.....}.<span.c |
| 5f540 | 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. |
| 5f560 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 61 20 3d 3d 20 3c | class="tok-kw">if</span>.(a.==.< |
| 5f580 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 39 3c 2f 73 70 61 6e 3e | span.class="tok-number">9</span> |
| 5f5a0 | 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" |
| 5f5c0 | 3e 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 7d 20 3c 73 70 61 6e | >unreachable</span>;.....}.<span |
| 5f5e0 | 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 20 | .class="tok-kw">else</span>.{... |
| 5f600 | 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 72 65 61 | ......<span.class="tok-kw">unrea |
| 5f620 | 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 63 6c | chable</span>;.....}.}..<span.cl |
| 5f640 | 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 |
| 5f660 | 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 75 6e | lass="tok-str">"if.error.un |
| 5f680 | 69 6f 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | ion"</span>.{.....<span.cla |
| 5f6a0 | 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 49 66 20 65 78 70 72 65 73 73 69 6f | ss="tok-comment">//.If.expressio |
| 5f6c0 | 6e 73 20 74 65 73 74 20 66 6f 72 20 65 72 72 6f 72 73 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c | ns.test.for.errors.</span>.....< |
| 5f6e0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 4e 6f 74 65 | span.class="tok-comment">//.Note |
| 5f700 | 20 74 68 65 20 7c 65 72 72 7c 20 63 61 70 74 75 72 65 20 6f 6e 20 74 68 65 20 65 6c 73 65 2e 3c | .the.|err|.capture.on.the.else.< |
| 5f720 | 2f 73 70 61 6e 3e 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | /span>......<span.class="tok-kw" |
| 5f740 | 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | >const</span>.a:.<span.class="to |
| 5f760 | 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 |
| 5f780 | 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 |
| 5f7a0 | 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>;.. |
| 5f7c0 | 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 |
| 5f7e0 | 3e 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 | >.(a).|value|.{.........<span.cl |
| 5f800 | 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 76 | ass="tok-kw">try</span>.expect(v |
| 5f820 | 61 6c 75 65 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 | alue.==.<span.class="tok-number" |
| 5f840 | 3e 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 | >0</span>);.....}.<span.class="t |
| 5f860 | 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|.{...... |
| 5f880 | 20 20 20 5f 20 3d 20 65 72 72 3b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ..._.=.err;.........<span.class= |
| 5f8a0 | 22 74 6f 6b 2d 6b 77 22 3e 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 | "tok-kw">unreachable</span>;.... |
| 5f8c0 | 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 63 6f 6e | .}......<span.class="tok-kw">con |
| 5f8e0 | 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 |
| 5f900 | 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= |
| 5f920 | 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 |
| 5f940 | 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 6c | ass="tok-kw">error</span>.BadVal |
| 5f960 | 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 69 66 3c | ue;.....<span.class="tok-kw">if< |
| 5f980 | 2f 73 70 61 6e 3e 20 28 62 29 20 7c 76 61 6c 75 65 7c 20 7b 0a 20 20 20 20 20 20 20 20 5f 20 3d | /span>.(b).|value|.{........._.= |
| 5f9a0 | 20 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 6b | .value;.........<span.class="tok |
| 5f9c0 | 2d 6b 77 22 3e 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 7d 20 3c | -kw">unreachable</span>;.....}.< |
| 5f9e0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 | span.class="tok-kw">else</span>. |
| 5fa00 | 7c 65 72 72 7c 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | |err|.{.........<span.class="tok |
| 5fa20 | 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 65 72 72 20 3d 3d 20 3c 73 | -kw">try</span>.expect(err.==.<s |
| 5fa40 | 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>. |
| 5fa60 | 42 61 64 56 61 6c 75 65 29 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | BadValue);.....}......<span.clas |
| 5fa80 | 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 65 20 65 6c 73 65 20 61 6e 64 20 | s="tok-comment">//.The.else.and. |
| 5faa0 | 7c 65 72 72 7c 20 63 61 70 74 75 72 65 20 69 73 20 73 74 72 69 63 74 6c 79 20 72 65 71 75 69 72 | |err|.capture.is.strictly.requir |
| 5fac0 | 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- |
| 5fae0 | 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|.{..... |
| 5fb00 | 20 20 20 20 3c 73 70 61 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 |
| 5fb20 | 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= |
| 5fb40 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 7d 20 3c 73 | "tok-number">0</span>);.....}.<s |
| 5fb60 | 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>.| |
| 5fb80 | 5f 7c 20 7b 7d 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d | _|.{}......<span.class="tok-comm |
| 5fba0 | 65 6e 74 22 3e 2f 2f 20 54 6f 20 63 68 65 63 6b 20 6f 6e 6c 79 20 74 68 65 20 65 72 72 6f 72 20 | ent">//.To.check.only.the.error. |
| 5fbc0 | 76 61 6c 75 65 2c 20 75 73 65 20 61 6e 20 65 6d 70 74 79 20 62 6c 6f 63 6b 20 65 78 70 72 65 73 | value,.use.an.empty.block.expres |
| 5fbe0 | 73 69 6f 6e 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | sion.</span>.....<span.class="to |
| 5fc00 | 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 62 29 20 7c 5f 7c 20 7b 7d 20 3c 73 70 61 6e | k-kw">if</span>.(b).|_|.{}.<span |
| 5fc20 | 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 |
| 5fc40 | 7c 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | |.{.........<span.class="tok-kw" |
| 5fc60 | 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 65 72 72 20 3d 3d 20 3c 73 70 61 6e 20 | >try</span>.expect(err.==.<span. |
| 5fc80 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 42 61 64 56 | class="tok-kw">error</span>.BadV |
| 5fca0 | 61 6c 75 65 29 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | alue);.....}......<span.class="t |
| 5fcc0 | 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. |
| 5fce0 | 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 |
| 5fd00 | 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 |
| 5fd20 | 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 63 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | k-kw">var</span>.c:.<span.class= |
| 5fd40 | 22 74 6f 6b 2d 74 79 70 65 22 3e 61 6e 79 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 21 3c 73 70 61 6e | "tok-type">anyerror</span>!<span |
| 5fd60 | 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>.=.< |
| 5fd80 | 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> |
| 5fda0 | 3b 0a 20 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 |
| 5fdc0 | 70 61 6e 3e 20 28 63 29 20 7c 2a 76 61 6c 75 65 7c 20 7b 0a 20 20 20 20 20 20 20 20 76 61 6c 75 | pan>.(c).|*value|.{.........valu |
| 5fde0 | 65 2e 2a 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 39 | e.*.=.<span.class="tok-number">9 |
| 5fe00 | 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 6f 6b 2d | </span>;.....}.<span.class="tok- |
| 5fe20 | 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 |
| 5fe40 | 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</ |
| 5fe60 | 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 |
| 5fe80 | 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 63 29 20 7c 76 61 6c 75 65 7c 20 7b 0a 20 | ok-kw">if</span>.(c).|value|.{.. |
| 5fea0 | 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< |
| 5fec0 | 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 76 61 6c 75 65 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 | /span>.expect(value.==.<span.cla |
| 5fee0 | 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 7d | ss="tok-number">9</span>);.....} |
| 5ff00 | 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 |
| 5ff20 | 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 6b | >.|_|.{.........<span.class="tok |
| 5ff40 | 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 7d | -kw">unreachable</span>;.....}.} |
| 5ff60 | 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 |
| 5ff80 | 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 |
| 5ffa0 | 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> |
| 5ffc0 | 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 69 66 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 33 20 74 | zig.test.test_if.zig</kbd>.1/3.t |
| 5ffe0 | 65 73 74 5f 69 66 2e 74 65 73 74 2e 69 66 20 65 78 70 72 65 73 73 69 6f 6e 2e 2e 2e 4f 4b 0a 32 | est_if.test.if.expression...OK.2 |
| 60000 | 2f 33 20 74 65 73 74 5f 69 66 2e 74 65 73 74 2e 69 66 20 62 6f 6f 6c 65 61 6e 2e 2e 2e 4f 4b 0a | /3.test_if.test.if.boolean...OK. |
| 60020 | 33 2f 33 20 74 65 73 74 5f 69 66 2e 74 65 73 74 2e 69 66 20 65 72 72 6f 72 20 75 6e 69 6f 6e 2e | 3/3.test_if.test.if.error.union. |
| 60040 | 2e 2e 4f 4b 0a 41 6c 6c 20 33 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 73 61 6d 70 3e | ..OK.All.3.tests.passed..</samp> |
| 60060 | 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 69 | </pre></figure>........<h3.id="i |
| 60080 | 66 2d 77 69 74 68 2d 4f 70 74 69 6f 6e 61 6c 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d | f-with-Optionals"><a.href="#toc- |
| 600a0 | 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 69 6f | if-with-Optionals">if.with.Optio |
| 600c0 | 6e 61 6c 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 69 | nals</a>.<a.class="hdr".href="#i |
| 600e0 | 66 2d 77 69 74 68 2d 4f 70 74 69 6f 6e 61 6c 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 0a | f-with-Optionals">..</a></h3>... |
| 60100 | 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= |
| 60120 | 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 |
| 60140 | 74 5f 69 66 5f 6f 70 74 69 6f 6e 61 6c 73 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 | t_if_optionals.zig</cite></figca |
| 60160 | 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 |
| 60180 | 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 |
| 601a0 | 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 |
| 601c0 | 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">" |
| 601e0 | 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 |
| 60200 | 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 |
| 60220 | 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">" |
| 60240 | 3b 69 66 20 6f 70 74 69 6f 6e 61 6c 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 | ;if.optional"</span>.{..... |
| 60260 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 49 66 20 | <span.class="tok-comment">//.If. |
| 60280 | 65 78 70 72 65 73 73 69 6f 6e 73 20 74 65 73 74 20 66 6f 72 20 6e 75 6c 6c 2e 3c 2f 73 70 61 6e | expressions.test.for.null.</span |
| 602a0 | 3e 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 | >......<span.class="tok-kw">cons |
| 602c0 | 74 3c 2f 73 70 61 6e 3e 20 61 3a 20 3f 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | t</span>.a:.?<span.class="tok-ty |
| 602e0 | 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 |
| 60300 | 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 |
| 60320 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 61 29 20 7c 76 61 6c 75 | ass="tok-kw">if</span>.(a).|valu |
| 60340 | 65 7c 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | e|.{.........<span.class="tok-kw |
| 60360 | 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 76 61 6c 75 65 20 3d 3d 20 3c 73 70 | ">try</span>.expect(value.==.<sp |
| 60380 | 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>); |
| 603a0 | 0a 20 20 20 20 7d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 | .....}.<span.class="tok-kw">else |
| 603c0 | 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 |
| 603e0 | 6f 6b 2d 6b 77 22 3e 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 7d | ok-kw">unreachable</span>;.....} |
| 60400 | 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 |
| 60420 | 3c 2f 73 70 61 6e 3e 20 62 3a 20 3f 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | </span>.b:.?<span.class="tok-typ |
| 60440 | 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 |
| 60460 | 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | -null">null</span>;.....<span.cl |
| 60480 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 62 29 20 7c 5f 7c 20 7b | ass="tok-kw">if</span>.(b).|_|.{ |
| 604a0 | 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e | .........<span.class="tok-kw">un |
| 604c0 | 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 7d 20 3c 73 70 61 6e 20 63 6c | reachable</span>;.....}.<span.cl |
| 604e0 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 | ass="tok-kw">else</span>.{...... |
| 60500 | 20 20 20 3c 73 70 61 6e 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 |
| 60520 | 6e 3e 20 65 78 70 65 63 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 | n>.expect(<span.class="tok-null" |
| 60540 | 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 20 3c 73 70 61 6e 20 | >true</span>);.....}......<span. |
| 60560 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 65 20 65 6c 73 65 20 | class="tok-comment">//.The.else. |
| 60580 | 69 73 20 6e 6f 74 20 72 65 71 75 69 72 65 64 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 | is.not.required.</span>.....<spa |
| 605a0 | 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 29 20 7c | n.class="tok-kw">if</span>.(a).| |
| 605c0 | 76 61 6c 75 65 7c 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | value|.{.........<span.class="to |
| 605e0 | 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 76 61 6c 75 65 20 3d 3d | k-kw">try</span>.expect(value.== |
| 60600 | 20 3c 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 |
| 60620 | 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 6f 6b | n>);.....}......<span.class="tok |
| 60640 | 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 6f 20 74 65 73 74 20 61 67 61 69 6e 73 74 20 6e 75 6c | -comment">//.To.test.against.nul |
| 60660 | 6c 20 6f 6e 6c 79 2c 20 75 73 65 20 74 68 65 20 62 69 6e 61 72 79 20 65 71 75 61 6c 69 74 79 20 | l.only,.use.the.binary.equality. |
| 60680 | 6f 70 65 72 61 74 6f 72 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | operator.</span>.....<span.class |
| 606a0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 62 20 3d 3d 20 3c 73 70 61 6e 20 | ="tok-kw">if</span>.(b.==.<span. |
| 606c0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 29 20 7b 0a | class="tok-null">null</span>).{. |
| 606e0 | 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 |
| 60700 | 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- |
| 60720 | 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 20 3c | null">true</span>);.....}......< |
| 60740 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 41 63 63 65 | span.class="tok-comment">//.Acce |
| 60760 | 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 75 73 69 6e 67 20 | ss.the.value.by.reference.using. |
| 60780 | 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 20 20 20 20 3c 73 | a.pointer.capture.</span>.....<s |
| 607a0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 63 3a | pan.class="tok-kw">var</span>.c: |
| 607c0 | 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 |
| 607e0 | 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 33 | an>.=.<span.class="tok-number">3 |
| 60800 | 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 |
| 60820 | 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 63 29 20 7c 2a 76 61 6c 75 65 7c 20 7b 0a 20 20 20 20 20 | ">if</span>.(c).|*value|.{...... |
| 60840 | 20 20 20 76 61 6c 75 65 2e 2a 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | ...value.*.=.<span.class="tok-nu |
| 60860 | 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 20 3c 73 70 61 6e | mber">2</span>;.....}......<span |
| 60880 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 63 29 20 7c 76 | .class="tok-kw">if</span>.(c).|v |
| 608a0 | 61 6c 75 65 7c 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | alue|.{.........<span.class="tok |
| 608c0 | 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 76 61 6c 75 65 20 3d 3d 20 | -kw">try</span>.expect(value.==. |
| 608e0 | 3c 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 |
| 60900 | 3e 29 3b 0a 20 20 20 20 7d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 | >);.....}.<span.class="tok-kw">e |
| 60920 | 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 73 | lse</span>.{.........<span.class |
| 60940 | 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 3b 0a 20 20 | ="tok-kw">unreachable</span>;... |
| 60960 | 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 74 65 73 74 | ..}.}..<span.class="tok-kw">test |
| 60980 | 3c 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 |
| 609a0 | 75 6f 74 3b 69 66 20 65 72 72 6f 72 20 75 6e 69 6f 6e 20 77 69 74 68 20 6f 70 74 69 6f 6e 61 6c | uot;if.error.union.with.optional |
| 609c0 | 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= |
| 609e0 | 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 49 66 20 65 78 70 72 65 73 73 69 6f 6e 73 20 | "tok-comment">//.If.expressions. |
| 60a00 | 74 65 73 74 20 66 6f 72 20 65 72 72 6f 72 73 20 62 65 66 6f 72 65 20 75 6e 77 72 61 70 70 69 6e | test.for.errors.before.unwrappin |
| 60a20 | 67 20 6f 70 74 69 6f 6e 61 6c 73 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | g.optionals.</span>.....<span.cl |
| 60a40 | 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 7c 6f 70 74 69 6f 6e | ass="tok-comment">//.The.|option |
| 60a60 | 61 6c 5f 76 61 6c 75 65 7c 20 63 61 70 74 75 72 65 27 73 20 74 79 70 65 20 69 73 20 3f 75 33 32 | al_value|.capture's.type.is.?u32 |
| 60a80 | 2e 3c 2f 73 70 61 6e 3e 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | .</span>......<span.class="tok-k |
| 60aa0 | 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=" |
| 60ac0 | 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 61 6e | tok-type">anyerror</span>!?<span |
| 60ae0 | 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>.=.< |
| 60b00 | 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> |
| 60b20 | 3b 0a 20 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 |
| 60b40 | 70 61 6e 3e 20 28 61 29 20 7c 6f 70 74 69 6f 6e 61 6c 5f 76 61 6c 75 65 7c 20 7b 0a 20 20 20 20 | pan>.(a).|optional_value|.{..... |
| 60b60 | 20 20 20 20 3c 73 70 61 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 |
| 60b80 | 61 6e 3e 20 65 78 70 65 63 74 28 6f 70 74 69 6f 6e 61 6c 5f 76 61 6c 75 65 2e 3f 20 3d 3d 20 3c | an>.expect(optional_value.?.==.< |
| 60ba0 | 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> |
| 60bc0 | 29 3b 0a 20 20 20 20 7d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c | );.....}.<span.class="tok-kw">el |
| 60be0 | 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 5f 20 3d 20 65 72 | se</span>.|err|.{........._.=.er |
| 60c00 | 72 3b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | r;.........<span.class="tok-kw"> |
| 60c20 | 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 20 3c | unreachable</span>;.....}......< |
| 60c40 | 73 70 61 6e 20 63 6c 61 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> |
| 60c60 | 20 62 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 61 6e 79 65 72 | .b:.<span.class="tok-type">anyer |
| 60c80 | 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 79 70 | ror</span>!?<span.class="tok-typ |
| 60ca0 | 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 |
| 60cc0 | 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | -null">null</span>;.....<span.cl |
| 60ce0 | 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 6f 70 74 69 | ass="tok-kw">if</span>.(b).|opti |
| 60d00 | 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 73 | onal_value|.{.........<span.clas |
| 60d20 | 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 74 | s="tok-kw">try</span>.expect(opt |
| 60d40 | 69 6f 6e 61 6c 5f 76 61 6c 75 65 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ional_value.==.<span.class="tok- |
| 60d60 | 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 7d 20 3c 73 70 61 6e 20 | null">null</span>);.....}.<span. |
| 60d80 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 7c 5f 7c 20 7b | class="tok-kw">else</span>.|_|.{ |
| 60da0 | 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e | .........<span.class="tok-kw">un |
| 60dc0 | 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 20 3c 73 70 | reachable</span>;.....}......<sp |
| 60de0 | 61 6e 20 63 6c 61 73 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 | an.class="tok-kw">const</span>.c |
| 60e00 | 3a 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 |
| 60e20 | 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 79 70 65 22 | r</span>!?<span.class="tok-type" |
| 60e40 | 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 6b | >u32</span>.=.<span.class="tok-k |
| 60e60 | 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 42 61 64 56 61 6c 75 65 3b 0a 20 20 20 20 3c 73 | w">error</span>.BadValue;.....<s |
| 60e80 | 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 63 29 | pan.class="tok-kw">if</span>.(c) |
| 60ea0 | 20 7c 6f 70 74 69 6f 6e 61 6c 5f 76 61 6c 75 65 7c 20 7b 0a 20 20 20 20 20 20 20 20 5f 20 3d 20 | .|optional_value|.{........._.=. |
| 60ec0 | 6f 70 74 69 6f 6e 61 6c 5f 76 61 6c 75 65 3b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c | optional_value;.........<span.cl |
| 60ee0 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 3b | ass="tok-kw">unreachable</span>; |
| 60f00 | 0a 20 20 20 20 7d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 | .....}.<span.class="tok-kw">else |
| 60f20 | 3c 2f 73 70 61 6e 3e 20 7c 65 72 72 7c 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c | </span>.|err|.{.........<span.cl |
| 60f40 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 65 | ass="tok-kw">try</span>.expect(e |
| 60f60 | 72 72 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 | rr.==.<span.class="tok-kw">error |
| 60f80 | 3c 2f 73 70 61 6e 3e 2e 42 61 64 56 61 6c 75 65 29 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 20 3c 73 | </span>.BadValue);.....}......<s |
| 60fa0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 41 63 63 65 73 | pan.class="tok-comment">//.Acces |
| 60fc0 | 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 62 79 20 75 73 69 6e | s.the.value.by.reference.by.usin |
| 60fe0 | 67 20 61 20 70 6f 69 6e 74 65 72 20 63 61 70 74 75 72 65 20 65 61 63 68 20 74 69 6d 65 2e 3c 2f | g.a.pointer.capture.each.time.</ |
| 61000 | 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 |
| 61020 | 61 72 3c 2f 73 70 61 6e 3e 20 64 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | ar</span>.d:.<span.class="tok-ty |
| 61040 | 70 65 22 3e 61 6e 79 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 21 3f 3c 73 70 61 6e 20 63 6c 61 73 73 | pe">anyerror</span>!?<span.class |
| 61060 | 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 |
| 61080 | 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>;..... |
| 610a0 | 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>.( |
| 610c0 | 64 29 20 7c 2a 6f 70 74 69 6f 6e 61 6c 5f 76 61 6c 75 65 7c 20 7b 0a 20 20 20 20 20 20 20 20 3c | d).|*optional_value|.{.........< |
| 610e0 | 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 6f | span.class="tok-kw">if</span>.(o |
| 61100 | 70 74 69 6f 6e 61 6c 5f 76 61 6c 75 65 2e 2a 29 20 7c 2a 76 61 6c 75 65 7c 20 7b 0a 20 20 20 20 | ptional_value.*).|*value|.{..... |
| 61120 | 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 6c 61 73 73 3d 22 74 | ........value.*.=.<span.class="t |
| 61140 | 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 20 20 20 20 7d 0a 20 | ok-number">9</span>;.........}.. |
| 61160 | 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</ |
| 61180 | 73 70 61 6e 3e 20 7c 5f 7c 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | span>.|_|.{.........<span.class= |
| 611a0 | 22 74 6f 6b 2d 6b 77 22 3e 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 | "tok-kw">unreachable</span>;.... |
| 611c0 | 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 69 66 3c | .}......<span.class="tok-kw">if< |
| 611e0 | 2f 73 70 61 6e 3e 20 28 64 29 20 7c 6f 70 74 69 6f 6e 61 6c 5f 76 61 6c 75 65 7c 20 7b 0a 20 20 | /span>.(d).|optional_value|.{... |
| 61200 | 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</ |
| 61220 | 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 2e 3f 20 3d 3d | span>.expect(optional_value.?.== |
| 61240 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 39 3c 2f 73 70 61 | .<span.class="tok-number">9</spa |
| 61260 | 6e 3e 29 3b 0a 20 20 20 20 7d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | n>);.....}.<span.class="tok-kw"> |
| 61280 | 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 7c 5f 7c 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 | else</span>.|_|.{.........<span. |
| 612a0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e | class="tok-kw">unreachable</span |
| 612c0 | 3e 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 | >;.....}.}</code></pre></figure> |
| 612e0 | 3c 66 69 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 |
| 61300 | 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 |
| 61320 | 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 66 5f 6f 70 74 69 6f | mp>$.<kbd>zig.test.test_if_optio |
| 61340 | 6e 61 6c 73 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 32 20 74 65 73 74 5f 69 66 5f 6f 70 74 69 6f | nals.zig</kbd>.1/2.test_if_optio |
| 61360 | 6e 61 6c 73 2e 74 65 73 74 2e 69 66 20 6f 70 74 69 6f 6e 61 6c 2e 2e 2e 4f 4b 0a 32 2f 32 20 74 | nals.test.if.optional...OK.2/2.t |
| 61380 | 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 65 72 72 6f 72 20 75 | est_if_optionals.test.if.error.u |
| 613a0 | 6e 69 6f 6e 20 77 69 74 68 20 6f 70 74 69 6f 6e 61 6c 2e 2e 2e 4f 4b 0a 41 6c 6c 20 32 20 74 65 | nion.with.optional...OK.All.2.te |
| 613c0 | 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 |
| 613e0 | 65 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 | e>...............<p>See.also:</p |
| 61400 | 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 4f | ><ul>.<li><a.href="#Optionals">O |
| 61420 | 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 23 | ptionals</a></li>.<li><a.href="# |
| 61440 | 45 72 72 6f 72 73 22 3e 45 72 72 6f 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 | Errors">Errors</a></li>.</ul>... |
| 61460 | 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 64 65 66 65 72 22 3e 3c 61 20 68 72 | ............<h2.id="defer"><a.hr |
| 61480 | 65 66 3d 22 23 74 6f 63 2d 64 65 66 65 72 22 3e 64 65 66 65 72 3c 2f 61 3e 20 3c 61 20 63 6c 61 | ef="#toc-defer">defer</a>.<a.cla |
| 614a0 | 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 64 65 66 65 72 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 | ss="hdr".href="#defer">..</a></h |
| 614c0 | 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 45 78 65 63 75 74 65 73 20 61 6e 20 65 78 70 72 65 73 73 | 2>........<p>Executes.an.express |
| 614e0 | 69 6f 6e 20 75 6e 63 6f 6e 64 69 74 69 6f 6e 61 6c 6c 79 20 61 74 20 73 63 6f 70 65 20 65 78 69 | ion.unconditionally.at.scope.exi |
| 61500 | 74 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 | t.</p>.......<figure><figcaption |
| 61520 | 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 |
| 61540 | 6c 65 22 3e 74 65 73 74 5f 64 65 66 65 72 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 | le">test_defer.zig</cite></figca |
| 61560 | 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 |
| 61580 | 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 |
| 615a0 | 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 |
| 615c0 | 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 |
| 615e0 | 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 |
| 61600 | 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. |
| 61620 | 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 6b | testing.expect;.<span.class="tok |
| 61640 | 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 65 | -kw">const</span>.print.=.std.de |
| 61660 | 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" |
| 61680 | 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"> |
| 616a0 | 64 65 66 65 72 45 78 61 6d 70 6c 65 3c 2f 73 70 61 6e 3e 28 29 20 21 3c 73 70 61 6e 20 63 6c 61 | deferExample</span>().!<span.cla |
| 616c0 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 | ss="tok-type">usize</span>.{.... |
| 616e0 | 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> |
| 61700 | 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 73 69 7a 65 | .a:.<span.class="tok-type">usize |
| 61720 | 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 |
| 61740 | 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 0a 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 | r">1</span>;......{.........<spa |
| 61760 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 64 65 66 65 72 3c 2f 73 70 61 6e 3e 20 61 20 | n.class="tok-kw">defer</span>.a. |
| 61780 | 3d 20 3c 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 |
| 617a0 | 61 6e 3e 3b 0a 20 20 20 20 20 20 20 20 61 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | an>;.........a.=.<span.class="to |
| 617c0 | 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 7d 0a 20 20 20 20 3c 73 | k-number">1</span>;.....}.....<s |
| 617e0 | 70 61 6e 20 63 6c 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 |
| 61800 | 70 65 63 74 28 61 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | pect(a.==.<span.class="tok-numbe |
| 61820 | 72 22 3e 32 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 20 20 20 20 61 20 3d 20 3c 73 70 61 6e 20 63 6c 61 | r">2</span>);......a.=.<span.cla |
| 61840 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 | ss="tok-number">5</span>;.....<s |
| 61860 | 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> |
| 61880 | 20 61 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 | .a;.}..<span.class="tok-kw">test |
| 618a0 | 3c 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 |
| 618c0 | 75 6f 74 3b 64 65 66 65 72 20 62 61 73 69 63 73 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a | uot;defer.basics"</span>.{. |
| 618e0 | 20 20 20 20 3c 73 70 61 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 |
| 61900 | 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" |
| 61920 | 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 64 65 66 65 72 45 78 61 6d 70 6c 65 28 29 29 20 3d 3d 20 3c | >try</span>.deferExample()).==.< |
| 61940 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e | span.class="tok-number">5</span> |
| 61960 | 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 |
| 61980 | 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"> |
| 619a0 | 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>$.< |
| 619c0 | 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 64 65 66 65 72 2e 7a 69 67 3c 2f 6b 62 64 | kbd>zig.test.test_defer.zig</kbd |
| 619e0 | 3e 0a 31 2f 31 20 74 65 73 74 5f 64 65 66 65 72 2e 74 65 73 74 2e 64 65 66 65 72 20 62 61 73 69 | >.1/1.test_defer.test.defer.basi |
| 61a00 | 63 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 | cs...OK.All.1.tests.passed..</sa |
| 61a20 | 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 44 65 66 | mp></pre></figure>........<p>Def |
| 61a40 | 65 72 20 65 78 70 72 65 73 73 69 6f 6e 73 20 61 72 65 20 65 76 61 6c 75 61 74 65 64 20 69 6e 20 | er.expressions.are.evaluated.in. |
| 61a60 | 72 65 76 65 72 73 65 20 6f 72 64 65 72 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 | reverse.order.</p>.......<figure |
| 61a80 | 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 |
| 61aa0 | 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 64 65 66 65 72 5f 75 6e 77 69 6e 64 2e 7a 69 67 | te.class="file">defer_unwind.zig |
| 61ac0 | 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>< |
| 61ae0 | 73 70 61 6e 20 63 6c 61 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> |
| 61b00 | 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" |
| 61b20 | 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 |
| 61b40 | 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>);.< |
| 61b60 | 73 70 61 6e 20 63 6c 61 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> |
| 61b80 | 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 73 70 61 6e | .print.=.std.debug.print;..<span |
| 61ba0 | 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 |
| 61bc0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 | .class="tok-kw">fn</span>.<span. |
| 61be0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 6d 61 69 6e 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 | class="tok-fn">main</span>().<sp |
| 61c00 | 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>. |
| 61c20 | 7b 0a 20 20 20 20 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 | {.....print(<span.class="tok-str |
| 61c40 | 22 3e 26 71 75 6f 74 3b 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 7d 29 3b 0a 0a | ">"\n"</span>,..{});.. |
| 61c60 | 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 64 65 66 65 72 3c 2f | ....<span.class="tok-kw">defer</ |
| 61c80 | 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 6c 61 73 | span>.{.........print(<span.clas |
| 61ca0 | 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 31 20 26 71 75 6f 74 3b 3c 2f 73 70 61 6e | s="tok-str">"1."</span |
| 61cc0 | 3e 2c 20 2e 7b 7d 29 3b 0a 20 20 20 20 7d 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | >,..{});.....}.....<span.class=" |
| 61ce0 | 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 70 | tok-kw">defer</span>.{.........p |
| 61d00 | 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">" |
| 61d20 | 3b 32 20 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 7d 29 3b 0a 20 20 20 20 7d 0a 20 20 | ;2."</span>,..{});.....}... |
| 61d40 | 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> |
| 61d60 | 20 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f | .(<span.class="tok-null">false</ |
| 61d80 | 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | span>).{.........<span.class="to |
| 61da0 | 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 64 65 66 65 72 73 20 61 72 65 20 6e 6f 74 20 72 75 6e | k-comment">//.defers.are.not.run |
| 61dc0 | 20 69 66 20 74 68 65 79 20 61 72 65 20 6e 65 76 65 72 20 65 78 65 63 75 74 65 64 2e 3c 2f 73 70 | .if.they.are.never.executed.</sp |
| 61de0 | 61 6e 3e 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | an>.........<span.class="tok-kw" |
| 61e00 | 3e 64 65 66 65 72 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 70 72 69 6e | >defer</span>.{.............prin |
| 61e20 | 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 33 20 | t(<span.class="tok-str">"3. |
| 61e40 | 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 7d 29 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 | "</span>,..{});.........}.. |
| 61e60 | 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 |
| 61e80 | 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 |
| 61ea0 | 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>$ |
| 61ec0 | 20 3c 6b 62 64 3e 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 64 65 66 65 72 5f 75 6e 77 69 6e 64 | .<kbd>zig.build-exe.defer_unwind |
| 61ee0 | 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 24 20 3c 6b 62 64 3e 2e 2f 64 65 66 65 72 5f 75 6e 77 69 6e 64 | .zig</kbd>.$.<kbd>./defer_unwind |
| 61f00 | 3c 2f 6b 62 64 3e 0a 0a 32 20 31 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 | </kbd>..2.1.</samp></pre></figur |
| 61f20 | 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 20 65 78 70 72 | e>........<p>Inside.a.defer.expr |
| 61f40 | 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 20 69 73 20 6e | ession.the.return.statement.is.n |
| 61f60 | 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 72 65 3e 3c 66 | ot.allowed.</p>.......<figure><f |
| 61f80 | 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. |
| 61fa0 | 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 65 66 65 72 2e | class="file">test_invalid_defer. |
| 61fc0 | 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 |
| 61fe0 | 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e | e><span.class="tok-kw">fn</span> |
| 62000 | 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 49 6e 76 61 6c | .<span.class="tok-fn">deferInval |
| 62020 | 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 6c 61 73 73 3d | idExample</span>().!<span.class= |
| 62040 | 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 |
| 62060 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 64 65 66 65 72 3c 2f 73 70 61 6e 3e 20 7b | an.class="tok-kw">defer</span>.{ |
| 62080 | 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 |
| 620a0 | 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" |
| 620c0 | 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 20 20 20 7d 0a | >error</span>.DeferError;.....}. |
| 620e0 | 0a 20 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 |
| 62100 | 3c 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 |
| 62120 | 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 64 65 3e 3c 2f | or</span>.DeferError;.}</code></ |
| 62140 | 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 |
| 62160 | 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 |
| 62180 | 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. |
| 621a0 | 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 3e 0a 3c 73 70 | test_invalid_defer.zig</kbd>.<sp |
| 621c0 | 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 | an.class="sgr-1m">/home/andy/dev |
| 621e0 | 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 69 6e 76 61 6c 69 64 5f 64 65 | /zig/doc/langref/test_invalid_de |
| 62200 | 66 65 72 2e 7a 69 67 3a 33 3a 39 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | fer.zig:3:9:.</span><span.class= |
| 62220 | 22 73 67 72 2d 33 31 6d 22 3e 65 72 72 6f 72 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c | "sgr-31m">error:.</span><span.cl |
| 62240 | 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 63 61 6e 6e 6f 74 20 72 65 74 75 72 6e 20 66 72 6f 6d 20 | ass="sgr-1m">cannot.return.from. |
| 62260 | 64 65 66 65 72 20 65 78 70 72 65 73 73 69 6f 6e 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 20 20 20 20 | defer.expression.</span>........ |
| 62280 | 72 65 74 75 72 6e 20 65 72 72 6f 72 2e 44 65 66 65 72 45 72 72 6f 72 3b 0a 20 20 20 20 20 20 20 | return.error.DeferError;........ |
| 622a0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 7e 7e 7e 7e 7e 7e 7e 7e | .<span.class="sgr-32m">^~~~~~~~~ |
| 622c0 | 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 | ~~~~~~~~~~~~~~.</span><span.clas |
| 622e0 | 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f | s="sgr-1m">/home/andy/dev/zig/do |
| 62300 | 63 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 | c/langref/test_invalid_defer.zig |
| 62320 | 3a 32 3a 35 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 36 | :2:5:.</span><span.class="sgr-36 |
| 62340 | 6d 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 | m">note:.</span><span.class="sgr |
| 62360 | 2d 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 | -1m">defer.expression.here.</spa |
| 62380 | 6e 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 | n>....defer.{.....<span.class="s |
| 623a0 | 67 72 2d 33 32 6d 22 3e 5e 7e 7e 7e 7e 0a 3c 2f 73 70 61 6e 3e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 | gr-32m">^~~~~.</span>.</samp></p |
| 623c0 | 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: |
| 623e0 | 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 45 72 72 6f 72 73 22 3e 45 | </p><ul>.<li><a.href="#Errors">E |
| 62400 | 72 72 6f 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 | rrors</a></li>.</ul>............ |
| 62420 | 20 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 | ...<h2.id="unreachable"><a.href= |
| 62440 | 22 23 74 6f 63 2d 75 6e 72 65 61 63 68 61 62 6c 65 22 3e 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f | "#toc-unreachable">unreachable</ |
| 62460 | 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 75 6e 72 65 61 63 68 | a>.<a.class="hdr".href="#unreach |
| 62480 | 61 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 | able">..</a></h2>........<p>.... |
| 624a0 | 20 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 | ...In.<a.href="#Debug">Debug</a> |
| 624c0 | 20 61 6e 64 20 3c 61 20 68 72 65 66 3d 22 23 52 65 6c 65 61 73 65 53 61 66 65 22 3e 52 65 6c 65 | .and.<a.href="#ReleaseSafe">Rele |
| 624e0 | 61 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 | aseSafe</a>.mode.......<code><sp |
| 62500 | 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 |
| 62520 | 70 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 | pan></code>.emits.a.call.to.<cod |
| 62540 | 65 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 | e>panic</code>.with.the.message. |
| 62560 | 3c 63 6f 64 65 3e 72 65 61 63 68 65 64 20 75 6e 72 65 61 63 68 61 62 6c 65 20 63 6f 64 65 3c 2f | <code>reached.unreachable.code</ |
| 62580 | 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 | code>........</p>.......<p>..... |
| 625a0 | 20 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 | ..In.<a.href="#ReleaseFast">Rele |
| 625c0 | 61 73 65 46 61 73 74 3c 2f 61 3e 20 61 6e 64 20 3c 61 20 68 72 65 66 3d 22 23 52 65 6c 65 61 73 | aseFast</a>.and.<a.href="#Releas |
| 625e0 | 65 53 6d 61 6c 6c 22 3e 52 65 6c 65 61 73 65 53 6d 61 6c 6c 3c 2f 61 3e 20 6d 6f 64 65 2c 20 74 | eSmall">ReleaseSmall</a>.mode,.t |
| 62600 | 68 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 | he.optimizer.uses.the.assumption |
| 62620 | 20 74 68 61 74 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | .that.<code><span.class="tok-kw" |
| 62640 | 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 63 6f 64 65 0a | >unreachable</span></code>.code. |
| 62660 | 20 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 | ......will.never.be.hit.to.perfo |
| 62680 | 72 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 | rm.optimizations........</p>.... |
| 626a0 | 20 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 | ...<h3.id="Basics"><a.href="#toc |
| 626c0 | 2d 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 | -Basics">Basics</a>.<a.class="hd |
| 626e0 | 72 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 | r".href="#Basics">..</a></h3>... |
| 62700 | 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=" |
| 62720 | 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 |
| 62740 | 5f 75 6e 72 65 61 63 68 61 62 6c 65 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 | _unreachable.zig</cite></figcapt |
| 62760 | 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- |
| 62780 | 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 75 6e 72 65 61 63 68 61 62 6c 65 20 69 73 20 75 73 65 64 20 | comment">//.unreachable.is.used. |
| 627a0 | 74 6f 20 61 73 73 65 72 74 20 74 68 61 74 20 63 6f 6e 74 72 6f 6c 20 66 6c 6f 77 20 77 69 6c 6c | to.assert.that.control.flow.will |
| 627c0 | 20 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 | .never.reach.a</span>.<span.clas |
| 627e0 | 73 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 | s="tok-comment">//.particular.lo |
| 62800 | 63 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 | cation:</span>.<span.class="tok- |
| 62820 | 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 |
| 62840 | 2d 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 | -str">"basic.math"</sp |
| 62860 | 61 6e 3e 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 |
| 62880 | 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 6b | onst</span>.x.=.<span.class="tok |
| 628a0 | 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | -number">1</span>;.....<span.cla |
| 628c0 | 73 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 | ss="tok-kw">const</span>.y.=.<sp |
| 628e0 | 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>;. |
| 62900 | 20 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 |
| 62920 | 6e 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 | n>.(x.+.y.!=.<span.class="tok-nu |
| 62940 | 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 | mber">3</span>).{.........<span. |
| 62960 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e | class="tok-kw">unreachable</span |
| 62980 | 3e 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 | >;.....}.}</code></pre></figure> |
| 629a0 | 3c 66 69 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 |
| 629c0 | 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 |
| 629e0 | 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 75 6e 72 65 61 63 68 61 | mp>$.<kbd>zig.test.test_unreacha |
| 62a00 | 62 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 | ble.zig</kbd>.1/1.test_unreachab |
| 62a20 | 6c 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 | le.test.basic.math...OK.All.1.te |
| 62a40 | 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 |
| 62a60 | 65 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 | e>........<p>In.fact,.this.is.ho |
| 62a80 | 77 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 | w.<code>std.debug.assert</code>. |
| 62aa0 | 69 73 20 69 6d 70 6c 65 6d 65 6e 74 65 64 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 | is.implemented:</p>.......<figur |
| 62ac0 | 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 |
| 62ae0 | 69 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 | ite.class="file">test_assertion_ |
| 62b00 | 66 61 69 6c 75 72 65 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c | failure.zig</cite></figcaption>< |
| 62b20 | 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 | pre><code><span.class="tok-comme |
| 62b40 | 6e 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 | nt">//.This.is.how.std.debug.ass |
| 62b60 | 65 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 | ert.is.implemented</span>.<span. |
| 62b80 | 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 |
| 62ba0 | 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 61 73 73 65 72 74 3c 2f 73 70 61 6e 3e 28 6f 6b 3a 20 | lass="tok-fn">assert</span>(ok:. |
| 62bc0 | 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 |
| 62be0 | 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< |
| 62c00 | 2f 73 70 61 6e 3e 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 |
| 62c20 | 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 21 6f 6b 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ">if</span>.(!ok).<span.class="t |
| 62c40 | 6f 6b 2d 6b 77 22 3e 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 3b 20 3c 73 70 61 6e | ok-kw">unreachable</span>;.<span |
| 62c60 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 61 73 73 65 72 74 69 6f | .class="tok-comment">//.assertio |
| 62c80 | 6e 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 | n.failure</span>.}..<span.class= |
| 62ca0 | 22 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 | "tok-comment">//.This.test.will. |
| 62cc0 | 66 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 | fail.because.we.hit.unreachable. |
| 62ce0 | 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 | </span>.<span.class="tok-kw">tes |
| 62d00 | 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">& |
| 62d20 | 71 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 | quot;this.will.fail"</span> |
| 62d40 | 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 2d 6e | .{.....assert(<span.class="tok-n |
| 62d60 | 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 3e 3c 2f 70 72 | ull">false</span>);.}</code></pr |
| 62d80 | 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 |
| 62da0 | 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 |
| 62dc0 | 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 |
| 62de0 | 73 74 5f 61 73 73 65 72 74 69 6f 6e 5f 66 61 69 6c 75 72 65 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 | st_assertion_failure.zig</kbd>.1 |
| 62e00 | 2f 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 | /1.test_assertion_failure.test.t |
| 62e20 | 68 69 73 20 77 69 6c 6c 20 66 61 69 6c 2e 2e 2e 74 68 72 65 61 64 20 31 30 39 35 32 35 35 20 70 | his.will.fail...thread.1095255.p |
| 62e40 | 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 65 0a 3c | anic:.reached.unreachable.code.< |
| 62e60 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 | span.class="sgr-1m">/home/andy/d |
| 62e80 | 65 76 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 | ev/zig/doc/langref/test_assertio |
| 62ea0 | 6e 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 | n_failure.zig:3:14</span>:.<span |
| 62ec0 | 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 32 63 30 33 39 20 69 6e 20 61 73 73 | .class="sgr-2m">0x102c039.in.ass |
| 62ee0 | 65 72 74 20 28 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 29 | ert.(test_assertion_failure.zig) |
| 62f00 | 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 69 66 20 28 21 6f 6b 29 20 75 6e 72 65 61 63 68 61 62 6c 65 | </span>.....if.(!ok).unreachable |
| 62f20 | 3b 20 2f 2f 20 61 73 73 65 72 74 69 6f 6e 20 66 61 69 6c 75 72 65 0a 20 20 20 20 20 20 20 20 20 | ;.//.assertion.failure.......... |
| 62f40 | 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 |
| 62f60 | 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 |
| 62f80 | 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 61 73 73 65 | dy/dev/zig/doc/langref/test_asse |
| 62fa0 | 72 74 69 6f 6e 5f 66 61 69 6c 75 72 65 2e 7a 69 67 3a 38 3a 31 31 3c 2f 73 70 61 6e 3e 3a 20 3c | rtion_failure.zig:8:11</span>:.< |
| 62fc0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 32 63 30 30 65 20 69 6e | span.class="sgr-2m">0x102c00e.in |
| 62fe0 | 20 74 65 73 74 2e 74 68 69 73 20 77 69 6c 6c 20 66 61 69 6c 20 28 74 65 73 74 5f 61 73 73 65 72 | .test.this.will.fail.(test_asser |
| 63000 | 74 69 6f 6e 5f 66 61 69 6c 75 72 65 2e 7a 69 67 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 61 73 73 | tion_failure.zig)</span>.....ass |
| 63020 | 65 72 74 28 66 61 6c 73 65 29 3b 0a 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | ert(false);...........<span.clas |
| 63040 | 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 |
| 63060 | 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 | ="sgr-1m">/home/andy/dev/zig/lib |
| 63080 | 2f 63 6f 6d 70 69 6c 65 72 2f 74 65 73 74 5f 72 75 6e 6e 65 72 2e 7a 69 67 3a 32 31 38 3a 32 35 | /compiler/test_runner.zig:218:25 |
| 630a0 | 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 |
| 630c0 | 31 31 35 63 62 33 30 20 69 6e 20 6d 61 69 6e 54 65 72 6d 69 6e 61 6c 20 28 74 65 73 74 5f 72 75 | 115cb30.in.mainTerminal.(test_ru |
| 630e0 | 6e 6e 65 72 2e 7a 69 67 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 69 66 20 28 74 65 73 | nner.zig)</span>.........if.(tes |
| 63100 | 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()).|_|.{.............. |
| 63120 | 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" |
| 63140 | 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">/ |
| 63160 | 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 63 6f 6d 70 69 6c 65 72 2f 74 | home/andy/dev/zig/lib/compiler/t |
| 63180 | 65 73 74 5f 72 75 6e 6e 65 72 2e 7a 69 67 3a 36 36 3a 32 38 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 | est_runner.zig:66:28</span>:.<sp |
| 631a0 | 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 31 35 35 64 35 31 20 69 6e 20 6d | an.class="sgr-2m">0x1155d51.in.m |
| 631c0 | 61 69 6e 20 28 74 65 73 74 5f 72 75 6e 6e 65 72 2e 7a 69 67 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 | ain.(test_runner.zig)</span>.... |
| 631e0 | 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 0a 20 20 20 20 | .....return.mainTerminal();..... |
| 63200 | 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 |
| 63220 | 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 |
| 63240 | 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 | s="sgr-1m">/home/andy/dev/zig/li |
| 63260 | 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 36 31 38 3a 32 32 3c 2f 73 70 61 6e 3e 3a 20 3c | b/std/start.zig:618:22</span>:.< |
| 63280 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 31 34 66 61 65 64 20 69 6e | span.class="sgr-2m">0x114faed.in |
| 632a0 | 20 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 20 28 73 74 64 2e 7a 69 67 29 3c | .posixCallMainAndExit.(std.zig)< |
| 632c0 | 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 6f 6f 74 2e 6d 61 69 6e 28 29 3b 0a | /span>.............root.main();. |
| 632e0 | 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 |
| 63300 | 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= |
| 63320 | 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f | "sgr-1m">/home/andy/dev/zig/lib/ |
| 63340 | 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 32 33 32 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 | std/start.zig:232:5</span>:.<spa |
| 63360 | 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 31 34 66 33 38 31 20 69 6e 20 5f 73 | n.class="sgr-2m">0x114f381.in._s |
| 63380 | 74 61 72 74 20 28 73 74 64 2e 7a 69 67 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 61 73 6d 20 76 6f | tart.(std.zig)</span>.....asm.vo |
| 633a0 | 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).{.. |
| 633c0 | 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 |
| 633e0 | 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">???:?:?</ |
| 63400 | 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. |
| 63420 | 69 6e 20 3f 3f 3f 20 28 3f 3f 3f 29 3c 2f 73 70 61 6e 3e 0a 65 72 72 6f 72 3a 20 74 68 65 20 66 | in.???.(???)</span>.error:.the.f |
| 63440 | 6f 6c 6c 6f 77 69 6e 67 20 74 65 73 74 20 63 6f 6d 6d 61 6e 64 20 63 72 61 73 68 65 64 3a 0a 2f | ollowing.test.command.crashed:./ |
| 63460 | 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 2e 7a 69 67 2d 63 61 63 68 65 2f 6f 2f 66 | home/andy/dev/zig/.zig-cache/o/f |
| 63480 | 31 38 33 32 30 66 34 37 64 39 32 30 64 65 33 31 39 30 35 39 62 30 33 63 31 34 65 35 33 38 35 2f | 18320f47d920de319059b03c14e5385/ |
| 634a0 | 74 65 73 74 20 2d 2d 73 65 65 64 3d 30 78 62 61 31 34 32 39 66 64 0a 3c 2f 73 61 6d 70 3e 3c 2f | test.--seed=0xba1429fd.</samp></ |
| 634c0 | 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 33 20 | pre></figure>...............<h3. |
| 634e0 | 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 66 3d 22 23 74 | id="At-Compile-Time"><a.href="#t |
| 63500 | 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 69 6c 65 2d 54 | oc-At-Compile-Time">At.Compile-T |
| 63520 | 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 3d 22 23 41 74 | ime</a>.<a.class="hdr".href="#At |
| 63540 | 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 0a 20 20 20 20 | -Compile-Time">..</a></h3>...... |
| 63560 | 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 |
| 63580 | 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 |
| 635a0 | 6d 70 74 69 6d 65 5f 75 6e 72 65 61 63 68 61 62 6c 65 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 | mptime_unreachable.zig</cite></f |
| 635c0 | 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 |
| 635e0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 73 73 65 72 74 20 3d 20 | ="tok-kw">const</span>.assert.=. |
| 63600 | 3c 73 70 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 |
| 63620 | 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">& |
| 63640 | 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 64 65 62 75 67 2e 61 73 73 | quot;std"</span>).debug.ass |
| 63660 | 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 74 65 73 74 3c | ert;..<span.class="tok-kw">test< |
| 63680 | 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 |
| 636a0 | 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 3b 3c 2f 73 70 | ot;type.of.unreachable"</sp |
| 636c0 | 61 6e 3e 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 |
| 636e0 | 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 | omptime</span>.{.........<span.c |
| 63700 | 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 79 70 65 20 6f | lass="tok-comment">//.The.type.o |
| 63720 | 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 2f 73 70 61 6e | f.unreachable.is.noreturn.</span |
| 63740 | 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 2d 63 6f 6d 6d | >..........<span.class="tok-comm |
| 63760 | 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 69 6f 6e 20 77 | ent">//.However.this.assertion.w |
| 63780 | 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 65 63 61 75 73 | ill.still.fail.to.compile.becaus |
| 637a0 | 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 73 3d 22 74 6f | e</span>.........<span.class="to |
| 637c0 | 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 78 70 72 65 73 | k-comment">//.unreachable.expres |
| 637e0 | 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 73 70 61 6e 3e | sions.are.compile.errors.</span> |
| 63800 | 0a 0a 20 20 20 20 20 20 20 20 61 73 73 65 72 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ..........assert(<span.class="to |
| 63820 | 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 6e 20 | k-builtin">@TypeOf</span>(<span. |
| 63840 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e | class="tok-kw">unreachable</span |
| 63860 | 3e 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 6e 6f 72 | >).==.<span.class="tok-type">nor |
| 63880 | 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 7d 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 | eturn</span>);.....}.}</code></p |
| 638a0 | 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. |
| 638c0 | 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 |
| 638e0 | 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 |
| 63900 | 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 75 6e 72 65 61 63 68 61 62 6c 65 2e 7a 69 67 3c 2f 6b 62 | est_comptime_unreachable.zig</kb |
| 63920 | 64 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e | d>.<span.class="sgr-1m">/home/an |
| 63940 | 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 63 6f 6d 70 | dy/dev/zig/doc/langref/test_comp |
| 63960 | 74 69 6d 65 5f 75 6e 72 65 61 63 68 61 62 6c 65 2e 7a 69 67 3a 31 30 3a 31 36 3a 20 3c 2f 73 70 | time_unreachable.zig:10:16:.</sp |
| 63980 | 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:. |
| 639a0 | 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 72 65 | </span><span.class="sgr-1m">unre |
| 639c0 | 61 63 68 61 62 6c 65 20 63 6f 64 65 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 20 20 20 20 61 73 73 65 | achable.code.</span>........asse |
| 639e0 | 72 74 28 40 54 79 70 65 4f 66 28 75 6e 72 65 61 63 68 61 62 6c 65 29 20 3d 3d 20 6e 6f 72 65 74 | rt(@TypeOf(unreachable).==.noret |
| 63a00 | 75 72 6e 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | urn);................<span.class |
| 63a20 | 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a | ="sgr-32m">^~~~~~~~~~~~~~~~~~~~. |
| 63a40 | 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d | </span><span.class="sgr-1m">/hom |
| 63a60 | 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f | e/andy/dev/zig/doc/langref/test_ |
| 63a80 | 63 6f 6d 70 74 69 6d 65 5f 75 6e 72 65 61 63 68 61 62 6c 65 2e 7a 69 67 3a 31 30 3a 32 34 3a 20 | comptime_unreachable.zig:10:24:. |
| 63aa0 | 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 36 6d 22 3e 6e 6f 74 | </span><span.class="sgr-36m">not |
| 63ac0 | 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 63 | e:.</span><span.class="sgr-1m">c |
| 63ae0 | 6f 6e 74 72 6f 6c 20 66 6c 6f 77 20 69 73 20 64 69 76 65 72 74 65 64 20 68 65 72 65 0a 3c 2f 73 | ontrol.flow.is.diverted.here.</s |
| 63b00 | 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 65 61 | pan>........assert(@TypeOf(unrea |
| 63b20 | 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 20 20 | chable).==.noreturn);........... |
| 63b40 | 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 |
| 63b60 | 6d 22 3e 5e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a 3c 2f 73 70 61 6e 3e 0a 3c 2f 73 61 6d 70 3e 3c 2f | m">^~~~~~~~~~~.</span>.</samp></ |
| 63b80 | 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f | pre></figure>........<p>See.also |
| 63ba0 | 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 5a 69 67 2d 54 65 73 74 | :</p><ul>.<li><a.href="#Zig-Test |
| 63bc0 | 22 3e 5a 69 67 20 54 65 73 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d | ">Zig.Test</a></li>.<li><a.href= |
| 63be0 | 22 23 42 75 69 6c 64 2d 4d 6f 64 65 22 3e 42 75 69 6c 64 20 4d 6f 64 65 3c 2f 61 3e 3c 2f 6c 69 | "#Build-Mode">Build.Mode</a></li |
| 63c00 | 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 63 6f 6d 70 74 69 6d 65 22 3e 63 6f 6d 70 74 69 | >.<li><a.href="#comptime">compti |
| 63c20 | 6d 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 | me</a></li>.</ul>............... |
| 63c40 | 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 6e 6f 72 65 74 75 72 6e 22 3e 3c 61 20 68 72 65 66 | .......<h2.id="noreturn"><a.href |
| 63c60 | 3d 22 23 74 6f 63 2d 6e 6f 72 65 74 75 72 6e 22 3e 6e 6f 72 65 74 75 72 6e 3c 2f 61 3e 20 3c 61 | ="#toc-noreturn">noreturn</a>.<a |
| 63c80 | 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 6e 6f 72 65 74 75 72 6e 22 3e c2 a7 | .class="hdr".href="#noreturn">.. |
| 63ca0 | 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 3c 63 6f 64 65 | </a></h2>........<p>.......<code |
| 63cc0 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 6e 6f 72 65 74 75 72 6e | ><span.class="tok-type">noreturn |
| 63ce0 | 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 69 73 20 74 68 65 20 74 79 70 65 20 6f 66 3a 0a 20 | </span></code>.is.the.type.of:.. |
| 63d00 | 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>...........< |
| 63d20 | 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 62 72 | li><code><span.class="tok-kw">br |
| 63d40 | 65 61 6b 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 | eak</span></code></li>.......... |
| 63d60 | 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"> |
| 63d80 | 63 6f 6e 74 69 6e 75 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 | continue</span></code></li>..... |
| 63da0 | 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 |
| 63dc0 | 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 | -kw">return</span></code></li>.. |
| 63de0 | 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=" |
| 63e00 | 74 6f 6b 2d 6b 77 22 3e 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 | tok-kw">unreachable</span></code |
| 63e20 | 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 |
| 63e40 | 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 |
| 63e60 | 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> |
| 63e80 | 29 20 7b 7d 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 | ).{}</code></li>.......</ul>.... |
| 63ea0 | 20 20 20 3c 70 3e 57 68 65 6e 20 72 65 73 6f 6c 76 69 6e 67 20 74 79 70 65 73 20 74 6f 67 65 74 | ...<p>When.resolving.types.toget |
| 63ec0 | 68 65 72 2c 20 73 75 63 68 20 61 73 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | her,.such.as.<code><span.class=" |
| 63ee0 | 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 63 6c 61 75 73 65 73 | tok-kw">if</span></code>.clauses |
| 63f00 | 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 22 3e 73 | .or.<code><span.class="tok-kw">s |
| 63f20 | 77 69 74 63 68 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 70 72 6f 6e 67 73 2c 0a 20 20 20 20 | witch</span></code>.prongs,..... |
| 63f40 | 20 20 20 20 20 20 20 20 20 20 74 68 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ..........the.<code><span.class= |
| 63f60 | 22 74 6f 6b 2d 74 79 70 65 22 3e 6e 6f 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 | "tok-type">noreturn</span></code |
| 63f80 | 3e 20 74 79 70 65 20 69 73 20 63 6f 6d 70 61 74 69 62 6c 65 20 77 69 74 68 20 65 76 65 72 79 20 | >.type.is.compatible.with.every. |
| 63fa0 | 6f 74 68 65 72 20 74 79 70 65 2e 20 43 6f 6e 73 69 64 65 72 3a 0a 20 20 20 20 20 20 3c 2f 70 3e | other.type..Consider:.......</p> |
| 63fc0 | 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 |
| 63fe0 | 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 |
| 64000 | 73 74 5f 6e 6f 72 65 74 75 72 6e 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 | st_noreturn.zig</cite></figcapti |
| 64020 | 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 |
| 64040 | 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 |
| 64060 | 22 3e 66 6f 6f 3c 2f 73 70 61 6e 3e 28 63 6f 6e 64 69 74 69 6f 6e 3a 20 3c 73 70 61 6e 20 63 6c | ">foo</span>(condition:.<span.cl |
| 64080 | 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 62 3a 20 3c | ass="tok-type">bool</span>,.b:.< |
| 640a0 | 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> |
| 640c0 | 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 |
| 640e0 | 70 61 6e 3e 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"> |
| 64100 | 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | const</span>.a.=.<span.class="to |
| 64120 | 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 63 6f 6e 64 69 74 69 6f 6e 29 20 62 20 3c 73 | k-kw">if</span>.(condition).b.<s |
| 64140 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 3c | pan.class="tok-kw">else</span>.< |
| 64160 | 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 |
| 64180 | 3e 3b 0a 20 20 20 20 5f 20 3d 20 61 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | >;....._.=.a;.....<span.class="t |
| 641a0 | 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 70 61 6e 69 63 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 | ok-builtin">@panic</span>(<span. |
| 641c0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 64 6f 20 73 6f 6d 65 74 68 69 | class="tok-str">"do.somethi |
| 641e0 | 6e 67 20 77 69 74 68 20 61 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 3c 73 70 61 6e | ng.with.a"</span>);.}.<span |
| 64200 | 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 |
| 64220 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 6e 6f 72 65 74 75 72 6e | n.class="tok-str">"noreturn |
| 64240 | 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 66 6f 6f 28 3c 73 70 61 6e 20 63 6c | "</span>.{.....foo(<span.cl |
| 64260 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 | ass="tok-null">false</span>,.<sp |
| 64280 | 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 3b | an.class="tok-number">1</span>); |
| 642a0 | 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> |
| 642c0 | 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 |
| 642e0 | 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 |
| 64300 | 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 6e 6f 72 65 74 75 72 6e 2e 7a 69 67 3c 2f 6b 62 | d>zig.test.test_noreturn.zig</kb |
| 64320 | 64 3e 0a 31 2f 31 20 74 65 73 74 5f 6e 6f 72 65 74 75 72 6e 2e 74 65 73 74 2e 6e 6f 72 65 74 75 | d>.1/1.test_noreturn.test.noretu |
| 64340 | 72 6e 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 73 61 | rn...OK.All.1.tests.passed..</sa |
| 64360 | 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 6e 6f | mp></pre></figure>........<p>Ano |
| 64380 | 74 68 65 72 20 75 73 65 20 63 61 73 65 20 66 6f 72 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c | ther.use.case.for.<code><span.cl |
| 643a0 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 6e 6f 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 3c 2f | ass="tok-type">noreturn</span></ |
| 643c0 | 63 6f 64 65 3e 20 69 73 20 74 68 65 20 3c 63 6f 64 65 3e 65 78 69 74 3c 2f 63 6f 64 65 3e 20 66 | code>.is.the.<code>exit</code>.f |
| 643e0 | 75 6e 63 74 69 6f 6e 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 | unction:</p>.......<figure><figc |
| 64400 | 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 |
| 64420 | 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 6e 6f 72 65 74 75 72 6e 5f 66 72 6f 6d 5f 65 78 69 | ss="file">test_noreturn_from_exi |
| 64440 | 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 3c 63 | t.zig</cite></figcaption><pre><c |
| 64460 | 6f 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</ |
| 64480 | 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 |
| 644a0 | 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 |
| 644c0 | 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 |
| 644e0 | 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</ |
| 64500 | 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 6f 6b | span>.builtin.=.<span.class="tok |
| 64520 | 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 |
| 64540 | 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 6f | lass="tok-str">"builtin&quo |
| 64560 | 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" |
| 64580 | 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6e 61 74 69 76 65 5f 61 72 63 68 20 3d 20 62 75 69 6c | >const</span>.native_arch.=.buil |
| 645a0 | 74 69 6e 2e 63 70 75 2e 61 72 63 68 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | tin.cpu.arch;.<span.class="tok-k |
| 645c0 | 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 |
| 645e0 | 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 |
| 64600 | 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 57 49 4e 41 50 49 3a 20 73 74 64 2e 62 75 69 6c | w">const</span>.WINAPI:.std.buil |
| 64620 | 74 69 6e 2e 43 61 6c 6c 69 6e 67 43 6f 6e 76 65 6e 74 69 6f 6e 20 3d 20 3c 73 70 61 6e 20 63 6c | tin.CallingConvention.=.<span.cl |
| 64640 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 6e 61 74 69 76 65 5f 61 | ass="tok-kw">if</span>.(native_a |
| 64660 | 72 63 68 20 3d 3d 20 2e 78 38 36 29 20 2e 7b 20 2e 78 38 36 5f 73 74 64 63 61 6c 6c 20 3d 20 2e | rch.==..x86)..{..x86_stdcall.=.. |
| 64680 | 7b 7d 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</ |
| 646a0 | 73 70 61 6e 3e 20 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 65 | span>..c;.<span.class="tok-kw">e |
| 646c0 | 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 73 74 | xtern</span>.<span.class="tok-st |
| 646e0 | 72 22 3e 26 71 75 6f 74 3b 6b 65 72 6e 65 6c 33 32 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 3c | r">"kernel32"</span>.< |
| 64700 | 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 |
| 64720 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 45 78 69 74 50 72 6f 63 65 73 73 3c 2f | pan.class="tok-fn">ExitProcess</ |
| 64740 | 73 70 61 6e 3e 28 65 78 69 74 5f 63 6f 64 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | span>(exit_code:.<span.class="to |
| 64760 | 6b 2d 74 79 70 65 22 3e 63 5f 75 69 6e 74 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 | k-type">c_uint</span>).<span.cla |
| 64780 | 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 57 49 4e 41 | ss="tok-kw">callconv</span>(WINA |
| 647a0 | 50 49 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 6e 6f 72 65 74 | PI).<span.class="tok-type">noret |
| 647c0 | 75 72 6e 3c 2f 73 70 61 6e 3e 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | urn</span>;..<span.class="tok-kw |
| 647e0 | 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 |
| 64800 | 74 72 22 3e 26 71 75 6f 74 3b 66 6f 6f 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 | tr">"foo"</span>.{.... |
| 64820 | 20 3c 73 70 61 6e 20 63 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 |
| 64840 | 6e 3e 20 76 61 6c 75 65 20 3d 20 62 61 72 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | n>.value.=.bar().<span.class="to |
| 64860 | 6b 2d 6b 77 22 3e 63 61 74 63 68 3c 2f 73 70 61 6e 3e 20 45 78 69 74 50 72 6f 63 65 73 73 28 3c | k-kw">catch</span>.ExitProcess(< |
| 64880 | 73 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> |
| 648a0 | 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< |
| 648c0 | 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 76 61 6c 75 65 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 | /span>.expect(value.==.<span.cla |
| 648e0 | 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 7d 0a | ss="tok-number">1234</span>);.}. |
| 64900 | 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>. |
| 64920 | 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>( |
| 64940 | 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 |
| 64960 | 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"> |
| 64980 | 75 33 32 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | u32</span>.{.....<span.class="to |
| 649a0 | 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= |
| 649c0 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 3b 0a 7d 3c 2f 63 6f 64 | "tok-number">1234</span>;.}</cod |
| 649e0 | 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 |
| 64a00 | 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 |
| 64a20 | 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 |
| 64a40 | 65 73 74 20 74 65 73 74 5f 6e 6f 72 65 74 75 72 6e 5f 66 72 6f 6d 5f 65 78 69 74 2e 7a 69 67 20 | est.test_noreturn_from_exit.zig. |
| 64a60 | 2d 74 61 72 67 65 74 20 78 38 36 5f 36 34 2d 77 69 6e 64 6f 77 73 20 2d 2d 74 65 73 74 2d 6e 6f | -target.x86_64-windows.--test-no |
| 64a80 | 2d 65 78 65 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 | -exec</kbd>.</samp></pre></figur |
| 64aa0 | 65 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 46 75 6e 63 74 69 | e>................<h2.id="Functi |
| 64ac0 | 6f 6e 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 46 75 6e 63 74 69 6f 6e 73 22 3e 46 75 | ons"><a.href="#toc-Functions">Fu |
| 64ae0 | 6e 63 74 69 6f 6e 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d | nctions</a>.<a.class="hdr".href= |
| 64b00 | 22 23 46 75 6e 63 74 69 6f 6e 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 | "#Functions">..</a></h2>........ |
| 64b20 | 3c 66 69 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 |
| 64b40 | 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 66 75 6e 63 | ap"><cite.class="file">test_func |
| 64b60 | 74 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 3c 70 72 | tions.zig</cite></figcaption><pr |
| 64b80 | 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 |
| 64ba0 | 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 |
| 64bc0 | 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 |
| 64be0 | 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"</ |
| 64c00 | 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 |
| 64c20 | 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 73 3d | st</span>.builtin.=.<span.class= |
| 64c40 | 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 |
| 64c60 | 61 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 |
| 64c80 | 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 |
| 64ca0 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6e 61 74 69 76 65 5f 61 72 63 68 20 3d 20 | -kw">const</span>.native_arch.=. |
| 64cc0 | 62 75 69 6c 74 69 6e 2e 63 70 75 2e 61 72 63 68 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | builtin.cpu.arch;.<span.class="t |
| 64ce0 | 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 |
| 64d00 | 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 |
| 64d20 | 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 61 72 65 20 64 65 63 | ok-comment">//.Functions.are.dec |
| 64d40 | 6c 61 72 65 64 20 6c 69 6b 65 20 74 68 69 73 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 | lared.like.this</span>.<span.cla |
| 64d60 | 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 |
| 64d80 | 73 3d 22 74 6f 6b 2d 66 6e 22 3e 61 64 64 3c 2f 73 70 61 6e 3e 28 61 3a 20 3c 73 70 61 6e 20 63 | s="tok-fn">add</span>(a:.<span.c |
| 64da0 | 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 3a 20 3c 73 | lass="tok-type">i8</span>,.b:.<s |
| 64dc0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 38 3c 2f 73 70 61 6e 3e 29 20 | pan.class="tok-type">i8</span>). |
| 64de0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 38 3c 2f 73 70 61 6e 3e | <span.class="tok-type">i8</span> |
| 64e00 | 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f | .{.....<span.class="tok-kw">if</ |
| 64e20 | 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 6f 6b 2d 6e 75 6d | span>.(a.==.<span.class="tok-num |
| 64e40 | 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 3c 73 70 61 6e 20 63 | ber">0</span>).{.........<span.c |
| 64e60 | 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 3b 0a 20 | lass="tok-kw">return</span>.b;.. |
| 64e80 | 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 |
| 64ea0 | 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 61 20 2b 20 62 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 | eturn</span>.a.+.b;.}..<span.cla |
| 64ec0 | 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 65 20 65 78 70 6f 72 74 20 73 | ss="tok-comment">//.The.export.s |
| 64ee0 | 70 65 63 69 66 69 65 72 20 6d 61 6b 65 73 20 61 20 66 75 6e 63 74 69 6f 6e 20 65 78 74 65 72 6e | pecifier.makes.a.function.extern |
| 64f00 | 61 6c 6c 79 20 76 69 73 69 62 6c 65 20 69 6e 20 74 68 65 20 67 65 6e 65 72 61 74 65 64 3c 2f 73 | ally.visible.in.the.generated</s |
| 64f20 | 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f | pan>.<span.class="tok-comment">/ |
| 64f40 | 2f 20 6f 62 6a 65 63 74 20 66 69 6c 65 2c 20 61 6e 64 20 6d 61 6b 65 73 20 69 74 20 75 73 65 20 | /.object.file,.and.makes.it.use. |
| 64f60 | 74 68 65 20 43 20 41 42 49 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | the.C.ABI.</span>.<span.class="t |
| 64f80 | 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 73 | ok-kw">export</span>.<span.class |
| 64fa0 | 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= |
| 64fc0 | 22 74 6f 6b 2d 66 6e 22 3e 73 75 62 3c 2f 73 70 61 6e 3e 28 61 3a 20 3c 73 70 61 6e 20 63 6c 61 | "tok-fn">sub</span>(a:.<span.cla |
| 64fe0 | 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 3a 20 3c 73 70 61 | ss="tok-type">i8</span>,.b:.<spa |
| 65000 | 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 29 20 3c 73 | n.class="tok-type">i8</span>).<s |
| 65020 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 38 3c 2f 73 70 61 6e 3e 20 7b | pan.class="tok-type">i8</span>.{ |
| 65040 | 0a 20 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 |
| 65060 | 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 61 73 73 3d 22 74 | </span>.a.-.b;.}..<span.class="t |
| 65080 | 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 65 20 65 78 74 65 72 6e 20 73 70 65 63 69 66 | ok-comment">//.The.extern.specif |
| 650a0 | 69 65 72 20 69 73 20 75 73 65 64 20 74 6f 20 64 65 63 6c 61 72 65 20 61 20 66 75 6e 63 74 69 6f | ier.is.used.to.declare.a.functio |
| 650c0 | 6e 20 74 68 61 74 20 77 69 6c 6c 20 62 65 20 72 65 73 6f 6c 76 65 64 3c 2f 73 70 61 6e 3e 0a 3c | n.that.will.be.resolved</span>.< |
| 650e0 | 73 70 61 6e 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 74 20 6c | span.class="tok-comment">//.at.l |
| 65100 | 69 6e 6b 20 74 69 6d 65 2c 20 77 68 65 6e 20 6c 69 6e 6b 69 6e 67 20 73 74 61 74 69 63 61 6c 6c | ink.time,.when.linking.staticall |
| 65120 | 79 2c 20 6f 72 20 61 74 20 72 75 6e 74 69 6d 65 2c 20 77 68 65 6e 20 6c 69 6e 6b 69 6e 67 3c 2f | y,.or.at.runtime,.when.linking</ |
| 65140 | 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"> |
| 65160 | 2f 2f 20 64 79 6e 61 6d 69 63 61 6c 6c 79 2e 20 54 68 65 20 71 75 6f 74 65 64 20 69 64 65 6e 74 | //.dynamically..The.quoted.ident |
| 65180 | 69 66 69 65 72 20 61 66 74 65 72 20 74 68 65 20 65 78 74 65 72 6e 20 6b 65 79 77 6f 72 64 20 73 | ifier.after.the.extern.keyword.s |
| 651a0 | 70 65 63 69 66 69 65 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 | pecifies</span>.<span.class="tok |
| 651c0 | 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 74 68 65 20 6c 69 62 72 61 72 79 20 74 68 61 74 20 68 61 | -comment">//.the.library.that.ha |
| 651e0 | 73 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 2e 20 28 65 2e 67 2e 20 26 71 75 6f 74 3b 63 26 71 75 | s.the.function..(e.g.."c&qu |
| 65200 | 6f 74 3b 20 2d 26 67 74 3b 20 6c 69 62 63 2e 73 6f 29 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 | ot;.->.libc.so)</span>.<span. |
| 65220 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 65 20 63 61 6c 6c 63 | class="tok-comment">//.The.callc |
| 65240 | 6f 6e 76 20 73 70 65 63 69 66 69 65 72 20 63 68 61 6e 67 65 73 20 74 68 65 20 63 61 6c 6c 69 6e | onv.specifier.changes.the.callin |
| 65260 | 67 20 63 6f 6e 76 65 6e 74 69 6f 6e 20 6f 66 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 2e 3c 2f 73 | g.convention.of.the.function.</s |
| 65280 | 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 78 74 65 72 6e | pan>.<span.class="tok-kw">extern |
| 652a0 | 3c 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 |
| 652c0 | 75 6f 74 3b 6b 65 72 6e 65 6c 33 32 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 | uot;kernel32"</span>.<span. |
| 652e0 | 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 |
| 65300 | 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 45 78 69 74 50 72 6f 63 65 73 73 3c 2f 73 70 61 6e 3e | lass="tok-fn">ExitProcess</span> |
| 65320 | 28 65 78 69 74 5f 63 6f 64 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | (exit_code:.<span.class="tok-typ |
| 65340 | 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | e">u32</span>).<span.class="tok- |
| 65360 | 6b 77 22 3e 63 61 6c 6c 63 6f 6e 76 3c 2f 73 70 61 6e 3e 28 2e 77 69 6e 61 70 69 29 20 3c 73 70 | kw">callconv</span>(.winapi).<sp |
| 65380 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 6e 6f 72 65 74 75 72 6e 3c 2f 73 70 | an.class="tok-type">noreturn</sp |
| 653a0 | 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 78 74 65 72 6e | an>;.<span.class="tok-kw">extern |
| 653c0 | 3c 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 |
| 653e0 | 75 6f 74 3b 63 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | uot;c"</span>.<span.class=" |
| 65400 | 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 |
| 65420 | 6f 6b 2d 66 6e 22 3e 61 74 61 6e 32 3c 2f 73 70 61 6e 3e 28 61 3a 20 3c 73 70 61 6e 20 63 6c 61 | ok-fn">atan2</span>(a:.<span.cla |
| 65440 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 36 34 3c 2f 73 70 61 6e 3e 2c 20 62 3a 20 3c 73 70 | ss="tok-type">f64</span>,.b:.<sp |
| 65460 | 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 20 | an.class="tok-type">f64</span>). |
| 65480 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 36 34 3c 2f 73 70 61 6e | <span.class="tok-type">f64</span |
| 654a0 | 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 2f | >;..<span.class="tok-comment">// |
| 654c0 | 20 54 68 65 20 40 62 72 61 6e 63 68 48 69 6e 74 20 62 75 69 6c 74 69 6e 20 63 61 6e 20 62 65 20 | .The.@branchHint.builtin.can.be. |
| 654e0 | 75 73 65 64 20 74 6f 20 74 65 6c 6c 20 74 68 65 20 6f 70 74 69 6d 69 7a 65 72 20 74 68 61 74 20 | used.to.tell.the.optimizer.that. |
| 65500 | 61 20 66 75 6e 63 74 69 6f 6e 20 69 73 20 72 61 72 65 6c 79 20 63 61 6c 6c 65 64 20 28 26 71 75 | a.function.is.rarely.called.(&qu |
| 65520 | 6f 74 3b 63 6f 6c 64 26 71 75 6f 74 3b 29 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 | ot;cold").</span>.<span.cla |
| 65540 | 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 |
| 65560 | 73 3d 22 74 6f 6b 2d 66 6e 22 3e 61 62 6f 72 74 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 | s="tok-fn">abort</span>().<span. |
| 65580 | 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> |
| 655a0 | 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 | .{.....<span.class="tok-builtin" |
| 655c0 | 3e 40 62 72 61 6e 63 68 48 69 6e 74 3c 2f 73 70 61 6e 3e 28 2e 63 6f 6c 64 29 3b 0a 20 20 20 20 | >@branchHint</span>(.cold);..... |
| 655e0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 77 68 69 6c 65 3c 2f 73 70 61 6e | <span.class="tok-kw">while</span |
| 65600 | 3e 20 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f | >.(<span.class="tok-null">true</ |
| 65620 | 73 70 61 6e 3e 29 20 7b 7d 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f | span>).{}.}..<span.class="tok-co |
| 65640 | 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 65 20 6e 61 6b 65 64 20 63 61 6c 6c 69 6e 67 20 63 6f 6e 76 | mment">//.The.naked.calling.conv |
| 65660 | 65 6e 74 69 6f 6e 20 6d 61 6b 65 73 20 61 20 66 75 6e 63 74 69 6f 6e 20 6e 6f 74 20 68 61 76 65 | ention.makes.a.function.not.have |
| 65680 | 20 61 6e 79 20 66 75 6e 63 74 69 6f 6e 20 70 72 6f 6c 6f 67 75 65 20 6f 72 20 65 70 69 6c 6f 67 | .any.function.prologue.or.epilog |
| 656a0 | 75 65 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d | ue.</span>.<span.class="tok-comm |
| 656c0 | 65 6e 74 22 3e 2f 2f 20 54 68 69 73 20 63 61 6e 20 62 65 20 75 73 65 66 75 6c 20 77 68 65 6e 20 | ent">//.This.can.be.useful.when. |
| 656e0 | 69 6e 74 65 67 72 61 74 69 6e 67 20 77 69 74 68 20 61 73 73 65 6d 62 6c 79 2e 3c 2f 73 70 61 6e | integrating.with.assembly.</span |
| 65700 | 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e | >.<span.class="tok-kw">fn</span> |
| 65720 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 5f 73 74 61 72 74 3c 2f 73 70 | .<span.class="tok-fn">_start</sp |
| 65740 | 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 61 6c 6c 63 | an>().<span.class="tok-kw">callc |
| 65760 | 6f 6e 76 3c 2f 73 70 61 6e 3e 28 2e 6e 61 6b 65 64 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | onv</span>(.naked).<span.class=" |
| 65780 | 74 6f 6b 2d 74 79 70 65 22 3e 6e 6f 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 | tok-type">noreturn</span>.{..... |
| 657a0 | 61 62 6f 72 74 28 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d | abort();.}..<span.class="tok-com |
| 657c0 | 6d 65 6e 74 22 3e 2f 2f 20 54 68 65 20 69 6e 6c 69 6e 65 20 63 61 6c 6c 69 6e 67 20 63 6f 6e 76 | ment">//.The.inline.calling.conv |
| 657e0 | 65 6e 74 69 6f 6e 20 66 6f 72 63 65 73 20 61 20 66 75 6e 63 74 69 6f 6e 20 74 6f 20 62 65 20 69 | ention.forces.a.function.to.be.i |
| 65800 | 6e 6c 69 6e 65 64 20 61 74 20 61 6c 6c 20 63 61 6c 6c 20 73 69 74 65 73 2e 3c 2f 73 70 61 6e 3e | nlined.at.all.call.sites.</span> |
| 65820 | 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 49 66 | .<span.class="tok-comment">//.If |
| 65840 | 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 63 61 6e 6e 6f 74 20 62 65 20 69 6e 6c 69 6e 65 64 2c | .the.function.cannot.be.inlined, |
| 65860 | 20 69 74 20 69 73 20 61 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 65 72 72 6f 72 2e 3c 2f 73 70 | .it.is.a.compile-time.error.</sp |
| 65880 | 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 6e 6c 69 6e 65 3c | an>.<span.class="tok-kw">inline< |
| 658a0 | 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</ |
| 658c0 | 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 73 68 69 66 74 | span>.<span.class="tok-fn">shift |
| 658e0 | 4c 65 66 74 4f 6e 65 3c 2f 73 70 61 6e 3e 28 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | LeftOne</span>(a:.<span.class="t |
| 65900 | 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ok-type">u32</span>).<span.class |
| 65920 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 | ="tok-type">u32</span>.{.....<sp |
| 65940 | 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>. |
| 65960 | 61 20 26 6c 74 3b 26 6c 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | a.<<.<span.class="tok-numb |
| 65980 | 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 74 6f | er">1</span>;.}..<span.class="to |
| 659a0 | 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 65 20 70 75 62 20 73 70 65 63 69 66 69 65 72 20 | k-comment">//.The.pub.specifier. |
| 659c0 | 61 6c 6c 6f 77 73 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 74 6f 20 62 65 20 76 69 73 69 62 6c | allows.the.function.to.be.visibl |
| 659e0 | 65 20 77 68 65 6e 20 69 6d 70 6f 72 74 69 6e 67 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 | e.when.importing.</span>.<span.c |
| 65a00 | 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 41 6e 6f 74 68 65 72 20 66 69 | lass="tok-comment">//.Another.fi |
| 65a20 | 6c 65 20 63 61 6e 20 75 73 65 20 40 69 6d 70 6f 72 74 20 61 6e 64 20 63 61 6c 6c 20 73 75 62 32 | le.can.use.@import.and.call.sub2 |
| 65a40 | 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 70 75 62 | </span>.<span.class="tok-kw">pub |
| 65a60 | 3c 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< |
| 65a80 | 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 62 32 | /span>.<span.class="tok-fn">sub2 |
| 65aa0 | 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 |
| 65ac0 | 22 3e 69 38 3c 2f 73 70 61 6e 3e 2c 20 62 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ">i8</span>,.b:.<span.class="tok |
| 65ae0 | 2d 74 79 70 65 22 3e 69 38 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | -type">i8</span>).<span.class="t |
| 65b00 | 6f 6b 2d 74 79 70 65 22 3e 69 38 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 | ok-type">i8</span>.{.....<span.c |
| 65b20 | 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 2d 20 | lass="tok-kw">return</span>.a.-. |
| 65b40 | 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 3e | b;.}..<span.class="tok-comment"> |
| 65b60 | 2f 2f 20 46 75 6e 63 74 69 6f 6e 20 70 6f 69 6e 74 65 72 73 20 61 72 65 20 70 72 65 66 69 78 65 | //.Function.pointers.are.prefixe |
| 65b80 | 64 20 77 69 74 68 20 60 2a 63 6f 6e 73 74 20 60 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 | d.with.`*const.`.</span>.<span.c |
| 65ba0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 43 61 6c 6c 32 | lass="tok-kw">const</span>.Call2 |
| 65bc0 | 4f 70 20 3d 20 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 | Op.=.*<span.class="tok-kw">const |
| 65be0 | 3c 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< |
| 65c00 | 2f 73 70 61 6e 3e 20 28 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | /span>.(a:.<span.class="tok-type |
| 65c20 | 22 3e 69 38 3c 2f 73 70 61 6e 3e 2c 20 62 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ">i8</span>,.b:.<span.class="tok |
| 65c40 | 2d 74 79 70 65 22 3e 69 38 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | -type">i8</span>).<span.class="t |
| 65c60 | 6f 6b 2d 74 79 70 65 22 3e 69 38 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ok-type">i8</span>;.<span.class= |
| 65c80 | 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=" |
| 65ca0 | 74 6f 6b 2d 66 6e 22 3e 64 6f 4f 70 3c 2f 73 70 61 6e 3e 28 66 6e 43 61 6c 6c 3a 20 43 61 6c 6c | tok-fn">doOp</span>(fnCall:.Call |
| 65cc0 | 32 4f 70 2c 20 6f 70 31 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 | 2Op,.op1:.<span.class="tok-type" |
| 65ce0 | 3e 69 38 3c 2f 73 70 61 6e 3e 2c 20 6f 70 32 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | >i8</span>,.op2:.<span.class="to |
| 65d00 | 6b 2d 74 79 70 65 22 3e 69 38 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | k-type">i8</span>).<span.class=" |
| 65d20 | 74 6f 6b 2d 74 79 70 65 22 3e 69 38 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 | tok-type">i8</span>.{.....<span. |
| 65d40 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 66 6e 43 | class="tok-kw">return</span>.fnC |
| 65d60 | 61 6c 6c 28 6f 70 31 2c 20 6f 70 32 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | all(op1,.op2);.}..<span.class="t |
| 65d80 | 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=" |
| 65da0 | 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 66 75 6e 63 74 69 6f 6e 26 71 75 6f 74 3b 3c 2f 73 | tok-str">"function"</s |
| 65dc0 | 70 61 6e 3e 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"> |
| 65de0 | 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 64 6f 4f 70 28 61 64 64 2c 20 3c 73 70 61 | try</span>.expect(doOp(add,.<spa |
| 65e00 | 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 3c | n.class="tok-number">5</span>,.< |
| 65e20 | 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> |
| 65e40 | 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 31 | ).==.<span.class="tok-number">11 |
| 65e60 | 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 |
| 65e80 | 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 64 6f 4f 70 28 73 75 62 32 2c 20 | w">try</span>.expect(doOp(sub2,. |
| 65ea0 | 3c 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 |
| 65ec0 | 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 36 3c 2f 73 | >,.<span.class="tok-number">6</s |
| 65ee0 | 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 62 65 | pan>).==.-<span.class="tok-numbe |
| 65f00 | 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 | r">1</span>);.}</code></pre></fi |
| 65f20 | 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=" |
| 65f40 | 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 |
| 65f60 | 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 75 6e | e><samp>$.<kbd>zig.test.test_fun |
| 65f80 | 63 74 69 6f 6e 73 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 66 75 6e 63 74 69 | ctions.zig</kbd>.1/1.test_functi |
| 65fa0 | 6f 6e 73 2e 74 65 73 74 2e 66 75 6e 63 74 69 6f 6e 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 | ons.test.function...OK.All.1.tes |
| 65fc0 | 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 |
| 65fe0 | 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 54 68 65 72 65 20 69 73 20 61 20 64 69 66 66 65 72 65 6e 63 | >........<p>There.is.a.differenc |
| 66000 | 65 20 62 65 74 77 65 65 6e 20 61 20 66 75 6e 63 74 69 6f 6e 20 3c 65 6d 3e 62 6f 64 79 3c 2f 65 | e.between.a.function.<em>body</e |
| 66020 | 6d 3e 20 61 6e 64 20 61 20 66 75 6e 63 74 69 6f 6e 20 3c 65 6d 3e 70 6f 69 6e 74 65 72 3c 2f 65 | m>.and.a.function.<em>pointer</e |
| 66040 | 6d 3e 2e 0a 20 20 20 20 20 20 46 75 6e 63 74 69 6f 6e 20 62 6f 64 69 65 73 20 61 72 65 20 3c 61 | m>........Function.bodies.are.<a |
| 66060 | 20 68 72 65 66 3d 22 23 63 6f 6d 70 74 69 6d 65 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 61 3e 2d 6f | .href="#comptime">comptime</a>-o |
| 66080 | 6e 6c 79 20 74 79 70 65 73 20 77 68 69 6c 65 20 66 75 6e 63 74 69 6f 6e 20 3c 61 20 68 72 65 66 | nly.types.while.function.<a.href |
| 660a0 | 3d 22 23 50 6f 69 6e 74 65 72 73 22 3e 50 6f 69 6e 74 65 72 73 3c 2f 61 3e 20 6d 61 79 20 62 65 | ="#Pointers">Pointers</a>.may.be |
| 660c0 | 0a 20 20 20 20 20 20 72 75 6e 74 69 6d 65 2d 6b 6e 6f 77 6e 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 | .......runtime-known.</p>....... |
| 660e0 | 3c 68 33 20 69 64 3d 22 50 61 73 73 2d 62 79 2d 76 61 6c 75 65 2d 50 61 72 61 6d 65 74 65 72 73 | <h3.id="Pass-by-value-Parameters |
| 66100 | 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 50 61 73 73 2d 62 79 2d 76 61 6c 75 65 2d 50 61 | "><a.href="#toc-Pass-by-value-Pa |
| 66120 | 72 61 6d 65 74 65 72 73 22 3e 50 61 73 73 2d 62 79 2d 76 61 6c 75 65 20 50 61 72 61 6d 65 74 65 | rameters">Pass-by-value.Paramete |
| 66140 | 72 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 50 61 73 | rs</a>.<a.class="hdr".href="#Pas |
| 66160 | 73 2d 62 79 2d 76 61 6c 75 65 2d 50 61 72 61 6d 65 74 65 72 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 | s-by-value-Parameters">..</a></h |
| 66180 | 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 50 72 69 6d 69 74 69 76 65 20 74 79 | 3>........<p>.......Primitive.ty |
| 661a0 | 70 65 73 20 73 75 63 68 20 61 73 20 3c 61 20 68 72 65 66 3d 22 23 49 6e 74 65 67 65 72 73 22 3e | pes.such.as.<a.href="#Integers"> |
| 661c0 | 49 6e 74 65 67 65 72 73 3c 2f 61 3e 20 61 6e 64 20 3c 61 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 | Integers</a>.and.<a.href="#Float |
| 661e0 | 73 22 3e 46 6c 6f 61 74 73 3c 2f 61 3e 20 70 61 73 73 65 64 20 61 73 20 70 61 72 61 6d 65 74 65 | s">Floats</a>.passed.as.paramete |
| 66200 | 72 73 0a 20 20 20 20 20 20 61 72 65 20 63 6f 70 69 65 64 2c 20 61 6e 64 20 74 68 65 6e 20 74 68 | rs.......are.copied,.and.then.th |
| 66220 | 65 20 63 6f 70 79 20 69 73 20 61 76 61 69 6c 61 62 6c 65 20 69 6e 20 74 68 65 20 66 75 6e 63 74 | e.copy.is.available.in.the.funct |
| 66240 | 69 6f 6e 20 62 6f 64 79 2e 20 54 68 69 73 20 69 73 20 63 61 6c 6c 65 64 20 22 70 61 73 73 69 6e | ion.body..This.is.called."passin |
| 66260 | 67 20 62 79 20 76 61 6c 75 65 22 2e 0a 20 20 20 20 20 20 43 6f 70 79 69 6e 67 20 61 20 70 72 69 | g.by.value"........Copying.a.pri |
| 66280 | 6d 69 74 69 76 65 20 74 79 70 65 20 69 73 20 65 73 73 65 6e 74 69 61 6c 6c 79 20 66 72 65 65 20 | mitive.type.is.essentially.free. |
| 662a0 | 61 6e 64 20 74 79 70 69 63 61 6c 6c 79 20 69 6e 76 6f 6c 76 65 73 20 6e 6f 74 68 69 6e 67 20 6d | and.typically.involves.nothing.m |
| 662c0 | 6f 72 65 20 74 68 61 6e 0a 20 20 20 20 20 20 73 65 74 74 69 6e 67 20 61 20 72 65 67 69 73 74 65 | ore.than.......setting.a.registe |
| 662e0 | 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 53 74 | r........</p>.......<p>.......St |
| 66300 | 72 75 63 74 73 2c 20 75 6e 69 6f 6e 73 2c 20 61 6e 64 20 61 72 72 61 79 73 20 63 61 6e 20 73 6f | ructs,.unions,.and.arrays.can.so |
| 66320 | 6d 65 74 69 6d 65 73 20 62 65 20 6d 6f 72 65 20 65 66 66 69 63 69 65 6e 74 6c 79 20 70 61 73 73 | metimes.be.more.efficiently.pass |
| 66340 | 65 64 20 61 73 20 61 20 72 65 66 65 72 65 6e 63 65 2c 20 73 69 6e 63 65 20 61 20 63 6f 70 79 0a | ed.as.a.reference,.since.a.copy. |
| 66360 | 20 20 20 20 20 20 63 6f 75 6c 64 20 62 65 20 61 72 62 69 74 72 61 72 69 6c 79 20 65 78 70 65 6e | ......could.be.arbitrarily.expen |
| 66380 | 73 69 76 65 20 64 65 70 65 6e 64 69 6e 67 20 6f 6e 20 74 68 65 20 73 69 7a 65 2e 20 57 68 65 6e | sive.depending.on.the.size..When |
| 663a0 | 20 74 68 65 73 65 20 74 79 70 65 73 20 61 72 65 20 70 61 73 73 65 64 0a 20 20 20 20 20 20 61 73 | .these.types.are.passed.......as |
| 663c0 | 20 70 61 72 61 6d 65 74 65 72 73 2c 20 5a 69 67 20 6d 61 79 20 63 68 6f 6f 73 65 20 74 6f 20 63 | .parameters,.Zig.may.choose.to.c |
| 663e0 | 6f 70 79 20 61 6e 64 20 70 61 73 73 20 62 79 20 76 61 6c 75 65 2c 20 6f 72 20 70 61 73 73 20 62 | opy.and.pass.by.value,.or.pass.b |
| 66400 | 79 20 72 65 66 65 72 65 6e 63 65 2c 20 77 68 69 63 68 65 76 65 72 20 77 61 79 0a 20 20 20 20 20 | y.reference,.whichever.way...... |
| 66420 | 20 5a 69 67 20 64 65 63 69 64 65 73 20 77 69 6c 6c 20 62 65 20 66 61 73 74 65 72 2e 20 54 68 69 | .Zig.decides.will.be.faster..Thi |
| 66440 | 73 20 69 73 20 6d 61 64 65 20 70 6f 73 73 69 62 6c 65 2c 20 69 6e 20 70 61 72 74 2c 20 62 79 20 | s.is.made.possible,.in.part,.by. |
| 66460 | 74 68 65 20 66 61 63 74 20 74 68 61 74 20 70 61 72 61 6d 65 74 65 72 73 20 61 72 65 20 69 6d 6d | the.fact.that.parameters.are.imm |
| 66480 | 75 74 61 62 6c 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 | utable........</p>.......<figure |
| 664a0 | 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 |
| 664c0 | 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 70 61 73 73 5f 62 79 5f 72 65 66 | te.class="file">test_pass_by_ref |
| 664e0 | 65 72 65 6e 63 65 5f 6f 72 5f 76 61 6c 75 65 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 | erence_or_value.zig</cite></figc |
| 66500 | 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 |
| 66520 | 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 50 6f 69 6e 74 20 3d 20 3c 73 70 61 | ok-kw">const</span>.Point.=.<spa |
| 66540 | 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>.{ |
| 66560 | 0a 20 20 20 20 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 | .....x:.<span.class="tok-type">i |
| 66580 | 33 32 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 79 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | 32</span>,.....y:.<span.class="t |
| 665a0 | 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 |
| 665c0 | 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 |
| 665e0 | 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 66 6f 6f 3c 2f 73 70 61 6e 3e 28 70 6f 69 6e 74 3a 20 50 | ass="tok-fn">foo</span>(point:.P |
| 66600 | 6f 69 6e 74 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 | oint).<span.class="tok-type">i32 |
| 66620 | 3c 2f 73 70 61 6e 3e 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 |
| 66640 | 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 48 65 72 65 2c 20 60 70 6f 69 6e 74 60 20 63 6f 75 6c 64 20 62 | omment">//.Here,.`point`.could.b |
| 66660 | 65 20 61 20 72 65 66 65 72 65 6e 63 65 2c 20 6f 72 20 61 20 63 6f 70 79 2e 20 54 68 65 20 66 75 | e.a.reference,.or.a.copy..The.fu |
| 66680 | 6e 63 74 69 6f 6e 20 62 6f 64 79 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | nction.body</span>.....<span.cla |
| 666a0 | 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 63 61 6e 20 69 67 6e 6f 72 65 20 74 | ss="tok-comment">//.can.ignore.t |
| 666c0 | 68 65 20 64 69 66 66 65 72 65 6e 63 65 20 61 6e 64 20 74 72 65 61 74 20 69 74 20 61 73 20 61 20 | he.difference.and.treat.it.as.a. |
| 666e0 | 76 61 6c 75 65 2e 20 42 65 20 76 65 72 79 20 63 61 72 65 66 75 6c 3c 2f 73 70 61 6e 3e 0a 20 20 | value..Be.very.careful</span>... |
| 66700 | 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 74 | ..<span.class="tok-comment">//.t |
| 66720 | 61 6b 69 6e 67 20 74 68 65 20 61 64 64 72 65 73 73 20 6f 66 20 74 68 65 20 70 61 72 61 6d 65 74 | aking.the.address.of.the.paramet |
| 66740 | 65 72 20 2d 20 69 74 20 73 68 6f 75 6c 64 20 62 65 20 74 72 65 61 74 65 64 20 61 73 20 69 66 3c | er.-.it.should.be.treated.as.if< |
| 66760 | 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 |
| 66780 | 65 6e 74 22 3e 2f 2f 20 74 68 65 20 61 64 64 72 65 73 73 20 77 69 6c 6c 20 62 65 63 6f 6d 65 20 | ent">//.the.address.will.become. |
| 667a0 | 69 6e 76 61 6c 69 64 20 77 68 65 6e 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 72 65 74 75 72 6e | invalid.when.the.function.return |
| 667c0 | 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 |
| 667e0 | 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 70 6f 69 6e 74 2e 78 20 2b 20 70 6f 69 6e 74 | w">return</span>.point.x.+.point |
| 66800 | 2e 79 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 | .y;.}..<span.class="tok-kw">cons |
| 66820 | 74 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | t</span>.expect.=.<span.class="t |
| 66840 | 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 |
| 66860 | 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" |
| 66880 | 3c 2f 73 70 61 6e 3e 29 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 0a 3c 73 70 61 6e 20 | </span>).testing.expect;..<span. |
| 668a0 | 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 |
| 668c0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 70 61 73 73 20 73 74 72 75 | .class="tok-str">"pass.stru |
| 668e0 | 63 74 20 74 6f 20 66 75 6e 63 74 69 6f 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 | ct.to.function"</span>.{... |
| 66900 | 20 20 3c 73 70 61 6e 20 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 |
| 66920 | 3e 20 65 78 70 65 63 74 28 66 6f 6f 28 50 6f 69 6e 74 7b 20 2e 78 20 3d 20 3c 73 70 61 6e 20 63 | >.expect(foo(Point{..x.=.<span.c |
| 66940 | 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 79 20 3d | lass="tok-number">1</span>,..y.= |
| 66960 | 20 3c 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 |
| 66980 | 6e 3e 20 7d 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | n>.}).==.<span.class="tok-number |
| 669a0 | 22 3e 33 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 | ">3</span>);.}</code></pre></fig |
| 669c0 | 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 |
| 669e0 | 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 |
| 66a00 | 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 70 61 73 73 | ><samp>$.<kbd>zig.test.test_pass |
| 66a20 | 5f 62 79 5f 72 65 66 65 72 65 6e 63 65 5f 6f 72 5f 76 61 6c 75 65 2e 7a 69 67 3c 2f 6b 62 64 3e | _by_reference_or_value.zig</kbd> |
| 66a40 | 0a 31 2f 31 20 74 65 73 74 5f 70 61 73 73 5f 62 79 5f 72 65 66 65 72 65 6e 63 65 5f 6f 72 5f 76 | .1/1.test_pass_by_reference_or_v |
| 66a60 | 61 6c 75 65 2e 74 65 73 74 2e 70 61 73 73 20 73 74 72 75 63 74 20 74 6f 20 66 75 6e 63 74 69 6f | alue.test.pass.struct.to.functio |
| 66a80 | 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 |
| 66aa0 | 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>.... |
| 66ac0 | 20 20 20 46 6f 72 20 65 78 74 65 72 6e 20 66 75 6e 63 74 69 6f 6e 73 2c 20 5a 69 67 20 66 6f 6c | ...For.extern.functions,.Zig.fol |
| 66ae0 | 6c 6f 77 73 20 74 68 65 20 43 20 41 42 49 20 66 6f 72 20 70 61 73 73 69 6e 67 20 73 74 72 75 63 | lows.the.C.ABI.for.passing.struc |
| 66b00 | 74 73 20 61 6e 64 20 75 6e 69 6f 6e 73 20 62 79 20 76 61 6c 75 65 2e 0a 20 20 20 20 20 20 3c 2f | ts.and.unions.by.value........</ |
| 66b20 | 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 46 75 6e 63 74 69 6f 6e | p>..............<h3.id="Function |
| 66b40 | 2d 50 61 72 61 6d 65 74 65 72 2d 54 79 70 65 2d 49 6e 66 65 72 65 6e 63 65 22 3e 3c 61 20 68 72 | -Parameter-Type-Inference"><a.hr |
| 66b60 | 65 66 3d 22 23 74 6f 63 2d 46 75 6e 63 74 69 6f 6e 2d 50 61 72 61 6d 65 74 65 72 2d 54 79 70 65 | ef="#toc-Function-Parameter-Type |
| 66b80 | 2d 49 6e 66 65 72 65 6e 63 65 22 3e 46 75 6e 63 74 69 6f 6e 20 50 61 72 61 6d 65 74 65 72 20 54 | -Inference">Function.Parameter.T |
| 66ba0 | 79 70 65 20 49 6e 66 65 72 65 6e 63 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 | ype.Inference</a>.<a.class="hdr" |
| 66bc0 | 20 68 72 65 66 3d 22 23 46 75 6e 63 74 69 6f 6e 2d 50 61 72 61 6d 65 74 65 72 2d 54 79 70 65 2d | .href="#Function-Parameter-Type- |
| 66be0 | 49 6e 66 65 72 65 6e 63 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 | Inference">..</a></h3>........<p |
| 66c00 | 3e 0a 20 20 20 20 20 20 46 75 6e 63 74 69 6f 6e 20 70 61 72 61 6d 65 74 65 72 73 20 63 61 6e 20 | >.......Function.parameters.can. |
| 66c20 | 62 65 20 64 65 63 6c 61 72 65 64 20 77 69 74 68 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 | be.declared.with.<code><span.cla |
| 66c40 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 79 74 79 70 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 | ss="tok-kw">anytype</span></code |
| 66c60 | 3e 20 69 6e 20 70 6c 61 63 65 20 6f 66 20 74 68 65 20 74 79 70 65 2e 0a 20 20 20 20 20 20 49 6e | >.in.place.of.the.type........In |
| 66c80 | 20 74 68 69 73 20 63 61 73 65 20 74 68 65 20 70 61 72 61 6d 65 74 65 72 20 74 79 70 65 73 20 77 | .this.case.the.parameter.types.w |
| 66ca0 | 69 6c 6c 20 62 65 20 69 6e 66 65 72 72 65 64 20 77 68 65 6e 20 74 68 65 20 66 75 6e 63 74 69 6f | ill.be.inferred.when.the.functio |
| 66cc0 | 6e 20 69 73 20 63 61 6c 6c 65 64 2e 0a 20 20 20 20 20 20 55 73 65 20 3c 61 20 68 72 65 66 3d 22 | n.is.called........Use.<a.href=" |
| 66ce0 | 23 54 79 70 65 4f 66 22 3e 40 54 79 70 65 4f 66 3c 2f 61 3e 20 61 6e 64 20 3c 61 20 68 72 65 66 | #TypeOf">@TypeOf</a>.and.<a.href |
| 66d00 | 3d 22 23 74 79 70 65 49 6e 66 6f 22 3e 40 74 79 70 65 49 6e 66 6f 3c 2f 61 3e 20 74 6f 20 67 65 | ="#typeInfo">@typeInfo</a>.to.ge |
| 66d20 | 74 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 61 62 6f 75 74 20 74 68 65 20 69 6e 66 65 72 72 65 64 | t.information.about.the.inferred |
| 66d40 | 20 74 79 70 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e | .type........</p>.......<figure> |
| 66d60 | 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 |
| 66d80 | 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 66 6e 5f 74 79 70 65 5f 69 6e 66 65 | e.class="file">test_fn_type_infe |
| 66da0 | 72 65 6e 63 65 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 | rence.zig</cite></figcaption><pr |
| 66dc0 | 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 |
| 66de0 | 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=" |
| 66e00 | 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 |
| 66e20 | 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" |
| 66e40 | 3b 3c 2f 73 70 61 6e 3e 29 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 0a 3c 73 70 61 6e | ;</span>).testing.expect;..<span |
| 66e60 | 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. |
| 66e80 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 61 64 64 46 6f 72 74 79 54 77 6f 3c 2f 73 70 61 6e | class="tok-fn">addFortyTwo</span |
| 66ea0 | 3e 28 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 79 74 79 70 | >(x:.<span.class="tok-kw">anytyp |
| 66ec0 | 65 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 | e</span>).<span.class="tok-built |
| 66ee0 | 69 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 78 29 20 7b 0a 20 20 20 20 3c 73 70 61 | in">@TypeOf</span>(x).{.....<spa |
| 66f00 | 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 78 | n.class="tok-kw">return</span>.x |
| 66f20 | 20 2b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 32 3c 2f | .+.<span.class="tok-number">42</ |
| 66f40 | 73 70 61 6e 3e 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 | span>;.}..<span.class="tok-kw">t |
| 66f60 | 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" |
| 66f80 | 3e 26 71 75 6f 74 3b 66 6e 20 74 79 70 65 20 69 6e 66 65 72 65 6e 63 65 26 71 75 6f 74 3b 3c 2f | >"fn.type.inference"</ |
| 66fa0 | 73 70 61 6e 3e 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" |
| 66fc0 | 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 61 64 64 46 6f 72 74 79 54 77 6f 28 3c | >try</span>.expect(addFortyTwo(< |
| 66fe0 | 73 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> |
| 67000 | 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 34 33 | ).==.<span.class="tok-number">43 |
| 67020 | 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 |
| 67040 | 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 | w">try</span>.expect(<span.class |
| 67060 | 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 61 64 | ="tok-builtin">@TypeOf</span>(ad |
| 67080 | 64 46 6f 72 74 79 54 77 6f 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | dFortyTwo(<span.class="tok-numbe |
| 670a0 | 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | r">1</span>)).==.<span.class="to |
| 670c0 | 6b 2d 74 79 70 65 22 3e 63 6f 6d 70 74 69 6d 65 5f 69 6e 74 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 | k-type">comptime_int</span>);... |
| 670e0 | 20 20 3c 73 70 61 6e 20 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 |
| 67100 | 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 36 | an>.y:.<span.class="tok-type">i6 |
| 67120 | 34 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | 4</span>.=.<span.class="tok-numb |
| 67140 | 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | er">2</span>;.....<span.class="t |
| 67160 | 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 61 64 64 46 6f 72 74 | ok-kw">try</span>.expect(addFort |
| 67180 | 79 54 77 6f 28 79 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | yTwo(y).==.<span.class="tok-numb |
| 671a0 | 65 72 22 3e 34 34 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | er">44</span>);.....<span.class= |
| 671c0 | 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 3c 73 70 61 6e | "tok-kw">try</span>.expect(<span |
| 671e0 | 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 |
| 67200 | 61 6e 3e 28 61 64 64 46 6f 72 74 79 54 77 6f 28 79 29 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 | an>(addFortyTwo(y)).==.<span.cla |
| 67220 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 36 34 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f | ss="tok-type">i64</span>);.}</co |
| 67240 | 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 |
| 67260 | 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 |
| 67280 | 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. |
| 672a0 | 74 65 73 74 20 74 65 73 74 5f 66 6e 5f 74 79 70 65 5f 69 6e 66 65 72 65 6e 63 65 2e 7a 69 67 3c | test.test_fn_type_inference.zig< |
| 672c0 | 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 66 6e 5f 74 79 70 65 5f 69 6e 66 65 72 65 6e 63 65 | /kbd>.1/1.test_fn_type_inference |
| 672e0 | 2e 74 65 73 74 2e 66 6e 20 74 79 70 65 20 69 6e 66 65 72 65 6e 63 65 2e 2e 2e 4f 4b 0a 41 6c 6c | .test.fn.type.inference...OK.All |
| 67300 | 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></ |
| 67320 | 66 69 67 75 72 65 3e 0a 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 | figure>.................<h3.id=" |
| 67340 | 69 6e 6c 69 6e 65 2d 66 6e 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 69 6e 6c 69 6e 65 2d | inline-fn"><a.href="#toc-inline- |
| 67360 | 66 6e 22 3e 69 6e 6c 69 6e 65 20 66 6e 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 | fn">inline.fn</a>.<a.class="hdr" |
| 67380 | 20 68 72 65 66 3d 22 23 69 6e 6c 69 6e 65 2d 66 6e 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a | .href="#inline-fn">..</a></h3>.. |
| 673a0 | 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 41 64 64 69 6e 67 20 74 68 65 20 3c 63 6f 64 65 | ......<p>.......Adding.the.<code |
| 673c0 | 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 |
| 673e0 | 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6b 65 79 77 6f 72 64 20 74 6f 20 61 20 66 75 6e 63 74 69 6f 6e | an></code>.keyword.to.a.function |
| 67400 | 20 64 65 66 69 6e 69 74 69 6f 6e 20 6d 61 6b 65 73 20 74 68 61 74 0a 20 20 20 20 20 20 66 75 6e | .definition.makes.that.......fun |
| 67420 | 63 74 69 6f 6e 20 62 65 63 6f 6d 65 20 3c 65 6d 3e 73 65 6d 61 6e 74 69 63 61 6c 6c 79 20 69 6e | ction.become.<em>semantically.in |
| 67440 | 6c 69 6e 65 64 3c 2f 65 6d 3e 20 61 74 20 74 68 65 20 63 61 6c 6c 73 69 74 65 2e 20 54 68 69 73 | lined</em>.at.the.callsite..This |
| 67460 | 20 69 73 0a 20 20 20 20 20 20 6e 6f 74 20 61 20 68 69 6e 74 20 74 6f 20 62 65 20 70 6f 73 73 69 | .is.......not.a.hint.to.be.possi |
| 67480 | 62 6c 79 20 6f 62 73 65 72 76 65 64 20 62 79 20 6f 70 74 69 6d 69 7a 61 74 69 6f 6e 20 70 61 73 | bly.observed.by.optimization.pas |
| 674a0 | 73 65 73 2c 20 62 75 74 20 68 61 73 0a 20 20 20 20 20 20 69 6d 70 6c 69 63 61 74 69 6f 6e 73 20 | ses,.but.has.......implications. |
| 674c0 | 6f 6e 20 74 68 65 20 74 79 70 65 73 20 61 6e 64 20 76 61 6c 75 65 73 20 69 6e 76 6f 6c 76 65 64 | on.the.types.and.values.involved |
| 674e0 | 20 69 6e 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 63 61 6c 6c 2e 0a 20 20 20 20 20 20 3c 2f 70 | .in.the.function.call........</p |
| 67500 | 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 55 6e 6c 69 6b 65 20 6e 6f 72 6d 61 6c 20 | >.......<p>.......Unlike.normal. |
| 67520 | 66 75 6e 63 74 69 6f 6e 20 63 61 6c 6c 73 2c 20 61 72 67 75 6d 65 6e 74 73 20 61 74 20 61 6e 20 | function.calls,.arguments.at.an. |
| 67540 | 69 6e 6c 69 6e 65 20 66 75 6e 63 74 69 6f 6e 20 63 61 6c 6c 73 69 74 65 20 77 68 69 63 68 20 61 | inline.function.callsite.which.a |
| 67560 | 72 65 0a 20 20 20 20 20 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 6b 6e 6f 77 6e 20 61 72 65 20 | re.......compile-time.known.are. |
| 67580 | 74 72 65 61 74 65 64 20 61 73 20 3c 61 20 68 72 65 66 3d 22 23 43 6f 6d 70 69 6c 65 2d 54 69 6d | treated.as.<a.href="#Compile-Tim |
| 675a0 | 65 2d 50 61 72 61 6d 65 74 65 72 73 22 3e 43 6f 6d 70 69 6c 65 20 54 69 6d 65 20 50 61 72 61 6d | e-Parameters">Compile.Time.Param |
| 675c0 | 65 74 65 72 73 3c 2f 61 3e 2e 20 54 68 69 73 20 63 61 6e 20 70 6f 74 65 6e 74 69 61 6c 6c 79 0a | eters</a>..This.can.potentially. |
| 675e0 | 20 20 20 20 20 20 70 72 6f 70 61 67 61 74 65 20 61 6c 6c 20 74 68 65 20 77 61 79 20 74 6f 20 74 | ......propagate.all.the.way.to.t |
| 67600 | 68 65 20 72 65 74 75 72 6e 20 76 61 6c 75 65 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 | he.return.value:.......</p>..... |
| 67620 | 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 |
| 67640 | 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 69 6e 6c 69 6e 65 5f | -cap"><cite.class="file">inline_ |
| 67660 | 63 61 6c 6c 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 | call.zig</cite></figcaption><pre |
| 67680 | 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 |
| 676a0 | 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- |
| 676c0 | 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 |
| 676e0 | 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 |
| 67700 | 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 |
| 67720 | 3c 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< |
| 67740 | 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 |
| 67760 | 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" |
| 67780 | 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=" |
| 677a0 | 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 66 6f 6f 28 3c 73 70 61 6e 20 63 6c 61 | tok-kw">if</span>.(foo(<span.cla |
| 677c0 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 30 30 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 | ss="tok-number">1200</span>,.<sp |
| 677e0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 34 3c 2f 73 70 61 6e 3e 29 | an.class="tok-number">34</span>) |
| 67800 | 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 |
| 67820 | 34 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 | 4</span>).{.........<span.class= |
| 67840 | 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 6f 6d 70 69 6c 65 45 72 72 6f 72 3c 2f 73 70 61 | "tok-builtin">@compileError</spa |
| 67860 | 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 |
| 67880 | 61 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 7d 0a 7d 0a 0a 3c 73 70 61 6e | ad"</span>);.....}.}..<span |
| 678a0 | 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 |
| 678c0 | 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 |
| 678e0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 66 6f 6f 3c 2f 73 70 61 6e 3e 28 61 3a 20 | an.class="tok-fn">foo</span>(a:. |
| 67900 | 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 |
| 67920 | 3e 2c 20 62 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 | >,.b:.<span.class="tok-type">i32 |
| 67940 | 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"> |
| 67960 | 69 33 32 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 73 74 64 2e 64 65 62 75 67 2e 70 72 69 6e 74 | i32</span>.{.....std.debug.print |
| 67980 | 28 3c 73 70 61 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 75 6e | (<span.class="tok-str">"run |
| 679a0 | 74 69 6d 65 20 61 20 3d 20 7b 7d 20 62 20 3d 20 7b 7d 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c | time.a.=.{}.b.=.{}"</span>, |
| 679c0 | 20 2e 7b 20 61 2c 20 62 20 7d 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ..{.a,.b.});.....<span.class="to |
| 679e0 | 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 61 20 2b 20 62 3b 0a 7d 3c 2f 63 6f | k-kw">return</span>.a.+.b;.}</co |
| 67a00 | 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 |
| 67a20 | 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 |
| 67a40 | 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. |
| 67a60 | 62 75 69 6c 64 2d 65 78 65 20 69 6e 6c 69 6e 65 5f 63 61 6c 6c 2e 7a 69 67 3c 2f 6b 62 64 3e 0a | build-exe.inline_call.zig</kbd>. |
| 67a80 | 24 20 3c 6b 62 64 3e 2e 2f 69 6e 6c 69 6e 65 5f 63 61 6c 6c 3c 2f 6b 62 64 3e 0a 72 75 6e 74 69 | $.<kbd>./inline_call</kbd>.runti |
| 67aa0 | 6d 65 20 61 20 3d 20 31 32 30 30 20 62 20 3d 20 33 34 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e | me.a.=.1200.b.=.34.</samp></pre> |
| 67ac0 | 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 49 66 20 3c 63 6f 64 65 3e 3c 73 70 | </figure>........<p>If.<code><sp |
| 67ae0 | 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>< |
| 67b00 | 2f 63 6f 64 65 3e 20 69 73 20 72 65 6d 6f 76 65 64 2c 20 74 68 65 20 74 65 73 74 20 66 61 69 6c | /code>.is.removed,.the.test.fail |
| 67b20 | 73 20 77 69 74 68 20 74 68 65 20 63 6f 6d 70 69 6c 65 20 65 72 72 6f 72 0a 20 20 20 20 20 20 69 | s.with.the.compile.error.......i |
| 67b40 | 6e 73 74 65 61 64 20 6f 66 20 70 61 73 73 69 6e 67 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e | nstead.of.passing.</p>.......<p> |
| 67b60 | 49 74 20 69 73 20 67 65 6e 65 72 61 6c 6c 79 20 62 65 74 74 65 72 20 74 6f 20 6c 65 74 20 74 68 | It.is.generally.better.to.let.th |
| 67b80 | 65 20 63 6f 6d 70 69 6c 65 72 20 64 65 63 69 64 65 20 77 68 65 6e 20 74 6f 20 69 6e 6c 69 6e 65 | e.compiler.decide.when.to.inline |
| 67ba0 | 20 61 0a 20 20 20 20 20 20 66 75 6e 63 74 69 6f 6e 2c 20 65 78 63 65 70 74 20 66 6f 72 20 74 68 | .a.......function,.except.for.th |
| 67bc0 | 65 73 65 20 73 63 65 6e 61 72 69 6f 73 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 | ese.scenarios:</p>.......<ul>... |
| 67be0 | 20 20 20 20 20 20 3c 6c 69 3e 54 6f 20 63 68 61 6e 67 65 20 68 6f 77 20 6d 61 6e 79 20 73 74 61 | ......<li>To.change.how.many.sta |
| 67c00 | 63 6b 20 66 72 61 6d 65 73 20 61 72 65 20 69 6e 20 74 68 65 20 63 61 6c 6c 20 73 74 61 63 6b 2c | ck.frames.are.in.the.call.stack, |
| 67c20 | 20 66 6f 72 20 64 65 62 75 67 67 69 6e 67 20 70 75 72 70 6f 73 65 73 2e 3c 2f 6c 69 3e 0a 20 20 | .for.debugging.purposes.</li>... |
| 67c40 | 20 20 20 20 20 20 3c 6c 69 3e 54 6f 20 66 6f 72 63 65 20 63 6f 6d 70 74 69 6d 65 2d 6e 65 73 73 | ......<li>To.force.comptime-ness |
| 67c60 | 20 6f 66 20 74 68 65 20 61 72 67 75 6d 65 6e 74 73 20 74 6f 20 70 72 6f 70 61 67 61 74 65 20 74 | .of.the.arguments.to.propagate.t |
| 67c80 | 6f 20 74 68 65 20 72 65 74 75 72 6e 20 76 61 6c 75 65 20 6f 66 20 74 68 65 20 66 75 6e 63 74 69 | o.the.return.value.of.the.functi |
| 67ca0 | 6f 6e 2c 20 61 73 20 69 6e 20 74 68 65 20 61 62 6f 76 65 20 65 78 61 6d 70 6c 65 2e 3c 2f 6c 69 | on,.as.in.the.above.example.</li |
| 67cc0 | 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 52 65 61 6c 20 77 6f 72 6c 64 20 70 65 72 66 6f 72 6d | >.........<li>Real.world.perform |
| 67ce0 | 61 6e 63 65 20 6d 65 61 73 75 72 65 6d 65 6e 74 73 20 64 65 6d 61 6e 64 20 69 74 2e 3c 2f 6c 69 | ance.measurements.demand.it.</li |
| 67d00 | 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c 70 3e 4e 6f 74 65 20 74 68 61 74 | >.......</ul>.......<p>Note.that |
| 67d20 | 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 6e 6c 69 | .<code><span.class="tok-kw">inli |
| 67d40 | 6e 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 61 63 74 75 61 6c 6c 79 20 3c 65 6d 3e 72 65 | ne</span></code>.actually.<em>re |
| 67d60 | 73 74 72 69 63 74 73 3c 2f 65 6d 3e 0a 20 20 20 20 20 20 77 68 61 74 20 74 68 65 20 63 6f 6d 70 | stricts</em>.......what.the.comp |
| 67d80 | 69 6c 65 72 20 69 73 20 61 6c 6c 6f 77 65 64 20 74 6f 20 64 6f 2e 20 54 68 69 73 20 63 61 6e 20 | iler.is.allowed.to.do..This.can. |
| 67da0 | 68 61 72 6d 20 62 69 6e 61 72 79 20 73 69 7a 65 2c 0a 20 20 20 20 20 20 63 6f 6d 70 69 6c 61 74 | harm.binary.size,.......compilat |
| 67dc0 | 69 6f 6e 20 73 70 65 65 64 2c 20 61 6e 64 20 65 76 65 6e 20 72 75 6e 74 69 6d 65 20 70 65 72 66 | ion.speed,.and.even.runtime.perf |
| 67de0 | 6f 72 6d 61 6e 63 65 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 | ormance.</p>...............<h3.i |
| 67e00 | 64 3d 22 46 75 6e 63 74 69 6f 6e 2d 52 65 66 6c 65 63 74 69 6f 6e 22 3e 3c 61 20 68 72 65 66 3d | d="Function-Reflection"><a.href= |
| 67e20 | 22 23 74 6f 63 2d 46 75 6e 63 74 69 6f 6e 2d 52 65 66 6c 65 63 74 69 6f 6e 22 3e 46 75 6e 63 74 | "#toc-Function-Reflection">Funct |
| 67e40 | 69 6f 6e 20 52 65 66 6c 65 63 74 69 6f 6e 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 | ion.Reflection</a>.<a.class="hdr |
| 67e60 | 22 20 68 72 65 66 3d 22 23 46 75 6e 63 74 69 6f 6e 2d 52 65 66 6c 65 63 74 69 6f 6e 22 3e c2 a7 | ".href="#Function-Reflection">.. |
| 67e80 | 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 |
| 67ea0 | 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 |
| 67ec0 | 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 66 6e 5f 72 65 66 6c 65 63 74 69 6f 6e 2e 7a 69 67 3c 2f | ="file">test_fn_reflection.zig</ |
| 67ee0 | 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 |
| 67f00 | 61 6e 20 63 6c 61 73 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 |
| 67f20 | 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">@ |
| 67f40 | 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 |
| 67f60 | 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 |
| 67f80 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6d | an.class="tok-kw">const</span>.m |
| 67fa0 | 61 74 68 20 3d 20 73 74 64 2e 6d 61 74 68 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ath.=.std.math;.<span.class="tok |
| 67fc0 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 74 65 73 74 69 6e 67 20 3d 20 73 74 64 2e | -kw">const</span>.testing.=.std. |
| 67fe0 | 74 65 73 74 69 6e 67 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 | testing;..<span.class="tok-kw">t |
| 68000 | 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" |
| 68020 | 3e 26 71 75 6f 74 3b 66 6e 20 72 65 66 6c 65 63 74 69 6f 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e | >"fn.reflection"</span |
| 68040 | 3e 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 |
| 68060 | 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 61 6e 20 63 6c 61 | </span>.testing.expect(<span.cla |
| 68080 | 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 |
| 680a0 | 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 |
| 680c0 | 65 4f 66 3c 2f 73 70 61 6e 3e 28 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 29 29 2e 40 26 71 75 | eOf</span>(testing.expect)).@&qu |
| 680e0 | 6f 74 3b 66 6e 26 71 75 6f 74 3b 2e 70 61 72 61 6d 73 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ot;fn".params[<span.class=" |
| 68100 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 5d 2e 3c 73 70 61 6e 20 63 6c 61 73 | tok-number">0</span>].<span.clas |
| 68120 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 2e 3f 20 3d 3d 20 3c 73 | s="tok-type">type</span>.?.==.<s |
| 68140 | 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> |
| 68160 | 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< |
| 68180 | 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 61 6e 20 63 6c 61 73 | /span>.testing.expect(<span.clas |
| 681a0 | 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> |
| 681c0 | 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 |
| 681e0 | 4f 66 3c 2f 73 70 61 6e 3e 28 74 65 73 74 69 6e 67 2e 74 6d 70 44 69 72 29 29 2e 40 26 71 75 6f | Of</span>(testing.tmpDir)).@&quo |
| 68200 | 74 3b 66 6e 26 71 75 6f 74 3b 2e 72 65 74 75 72 6e 5f 74 79 70 65 2e 3f 20 3d 3d 20 74 65 73 74 | t;fn".return_type.?.==.test |
| 68220 | 69 6e 67 2e 54 6d 70 44 69 72 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ing.TmpDir);......<span.class="t |
| 68240 | 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 | ok-kw">try</span>.testing.expect |
| 68260 | 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 |
| 68280 | 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 |
| 682a0 | 6c 74 69 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 6d 61 74 68 2e 4c 6f 67 32 49 6e | ltin">@TypeOf</span>(math.Log2In |
| 682c0 | 74 29 29 2e 40 26 71 75 6f 74 3b 66 6e 26 71 75 6f 74 3b 2e 69 73 5f 67 65 6e 65 72 69 63 29 3b | t)).@"fn".is_generic); |
| 682e0 | 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> |
| 68300 | 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 |
| 68320 | 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 |
| 68340 | 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 66 6e 5f 72 65 66 6c 65 63 74 69 6f 6e 2e 7a 69 | d>zig.test.test_fn_reflection.zi |
| 68360 | 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 66 6e 5f 72 65 66 6c 65 63 74 69 6f 6e 2e 74 | g</kbd>.1/1.test_fn_reflection.t |
| 68380 | 65 73 74 2e 66 6e 20 72 65 66 6c 65 63 74 69 6f 6e 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 | est.fn.reflection...OK.All.1.tes |
| 683a0 | 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 |
| 683c0 | 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 32 20 69 64 3d 22 45 | >......................<h2.id="E |
| 683e0 | 72 72 6f 72 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 45 72 72 6f 72 73 22 3e 45 72 72 | rrors"><a.href="#toc-Errors">Err |
| 68400 | 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 22 23 45 72 | ors</a>.<a.class="hdr".href="#Er |
| 68420 | 72 6f 72 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d | rors">..</a></h2>........<h3.id= |
| 68440 | 22 45 72 72 6f 72 2d 53 65 74 2d 54 79 70 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 45 | "Error-Set-Type"><a.href="#toc-E |
| 68460 | 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 |
| 68480 | 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 45 72 72 6f 72 2d 53 65 | >.<a.class="hdr".href="#Error-Se |
| 684a0 | 74 2d 54 79 70 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 | t-Type">..</a></h3>........<p>.. |
| 684c0 | 20 20 20 20 20 41 6e 20 65 72 72 6f 72 20 73 65 74 20 69 73 20 6c 69 6b 65 20 61 6e 20 3c 61 20 | .....An.error.set.is.like.an.<a. |
| 684e0 | 68 72 65 66 3d 22 23 65 6e 75 6d 22 3e 65 6e 75 6d 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 48 6f 77 | href="#enum">enum</a>........How |
| 68500 | 65 76 65 72 2c 20 65 61 63 68 20 65 72 72 6f 72 20 6e 61 6d 65 20 61 63 72 6f 73 73 20 74 68 65 | ever,.each.error.name.across.the |
| 68520 | 20 65 6e 74 69 72 65 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 20 67 65 74 73 20 61 73 73 69 67 6e 65 | .entire.compilation.gets.assigne |
| 68540 | 64 20 61 6e 20 75 6e 73 69 67 6e 65 64 20 69 6e 74 65 67 65 72 0a 20 20 20 20 20 20 67 72 65 61 | d.an.unsigned.integer.......grea |
| 68560 | 74 65 72 20 74 68 61 6e 20 30 2e 20 59 6f 75 20 61 72 65 20 61 6c 6c 6f 77 65 64 20 74 6f 20 64 | ter.than.0..You.are.allowed.to.d |
| 68580 | 65 63 6c 61 72 65 20 74 68 65 20 73 61 6d 65 20 65 72 72 6f 72 20 6e 61 6d 65 20 6d 6f 72 65 20 | eclare.the.same.error.name.more. |
| 685a0 | 74 68 61 6e 20 6f 6e 63 65 2c 20 61 6e 64 20 69 66 20 79 6f 75 20 64 6f 2c 20 69 74 0a 20 20 20 | than.once,.and.if.you.do,.it.... |
| 685c0 | 20 20 20 67 65 74 73 20 61 73 73 69 67 6e 65 64 20 74 68 65 20 73 61 6d 65 20 69 6e 74 65 67 65 | ...gets.assigned.the.same.intege |
| 685e0 | 72 20 76 61 6c 75 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 | r.value........</p>.......<p>... |
| 68600 | 20 20 20 20 54 68 65 20 65 72 72 6f 72 20 73 65 74 20 74 79 70 65 20 64 65 66 61 75 6c 74 73 20 | ....The.error.set.type.defaults. |
| 68620 | 74 6f 20 61 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | to.a.<code><span.class="tok-type |
| 68640 | 22 3e 75 31 36 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 74 68 6f 75 67 68 20 69 66 20 74 | ">u16</span></code>,.though.if.t |
| 68660 | 68 65 20 6d 61 78 69 6d 75 6d 20 6e 75 6d 62 65 72 20 6f 66 20 64 69 73 74 69 6e 63 74 0a 20 20 | he.maximum.number.of.distinct... |
| 68680 | 20 20 20 20 65 72 72 6f 72 20 76 61 6c 75 65 73 20 69 73 20 70 72 6f 76 69 64 65 64 20 76 69 61 | ....error.values.is.provided.via |
| 686a0 | 20 74 68 65 20 3c 6b 62 64 3e 2d 2d 65 72 72 6f 72 2d 6c 69 6d 69 74 20 5b 6e 75 6d 5d 3c 2f 6b | .the.<kbd>--error-limit.[num]</k |
| 686c0 | 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 20 61 6e 20 69 6e | bd>.command.line.parameter.an.in |
| 686e0 | 74 65 67 65 72 20 74 79 70 65 0a 20 20 20 20 20 20 77 69 74 68 20 74 68 65 20 6d 69 6e 69 6d 75 | teger.type.......with.the.minimu |
| 68700 | 6d 20 6e 75 6d 62 65 72 20 6f 66 20 62 69 74 73 20 72 65 71 75 69 72 65 64 20 74 6f 20 72 65 70 | m.number.of.bits.required.to.rep |
| 68720 | 72 65 73 65 6e 74 20 61 6c 6c 20 6f 66 20 74 68 65 20 65 72 72 6f 72 20 76 61 6c 75 65 73 20 77 | resent.all.of.the.error.values.w |
| 68740 | 69 6c 6c 20 62 65 20 75 73 65 64 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 | ill.be.used........</p>.......<p |
| 68760 | 3e 0a 20 20 20 20 20 20 59 6f 75 20 63 61 6e 20 3c 61 20 68 72 65 66 3d 22 23 54 79 70 65 2d 43 | >.......You.can.<a.href="#Type-C |
| 68780 | 6f 65 72 63 69 6f 6e 22 3e 63 6f 65 72 63 65 3c 2f 61 3e 20 61 6e 20 65 72 72 6f 72 20 66 72 6f | oercion">coerce</a>.an.error.fro |
| 687a0 | 6d 20 61 20 73 75 62 73 65 74 20 74 6f 20 61 20 73 75 70 65 72 73 65 74 3a 0a 20 20 20 20 20 20 | m.a.subset.to.a.superset:....... |
| 687c0 | 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 |
| 687e0 | 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 |
| 68800 | 22 3e 74 65 73 74 5f 63 6f 65 72 63 65 5f 65 72 72 6f 72 5f 73 75 62 73 65 74 5f 74 6f 5f 73 75 | ">test_coerce_error_subset_to_su |
| 68820 | 70 65 72 73 65 74 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 | perset.zig</cite></figcaption><p |
| 68840 | 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 |
| 68860 | 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 |
| 68880 | 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. |
| 688a0 | 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"< |
| 688c0 | 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 63 | /span>);..<span.class="tok-kw">c |
| 688e0 | 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 46 69 6c 65 4f 70 65 6e 45 72 72 6f 72 20 3d 20 3c 73 70 61 | onst</span>.FileOpenError.=.<spa |
| 68900 | 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>{.. |
| 68920 | 20 20 20 41 63 63 65 73 73 44 65 6e 69 65 64 2c 0a 20 20 20 20 4f 75 74 4f 66 4d 65 6d 6f 72 79 | ...AccessDenied,.....OutOfMemory |
| 68940 | 2c 0a 20 20 20 20 46 69 6c 65 4e 6f 74 46 6f 75 6e 64 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c | ,.....FileNotFound,.};..<span.cl |
| 68960 | 61 73 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 6f 63 61 | ass="tok-kw">const</span>.Alloca |
| 68980 | 74 69 6f 6e 45 72 72 6f 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | tionError.=.<span.class="tok-kw" |
| 689a0 | 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 7b 0a 20 20 20 20 4f 75 74 4f 66 4d 65 6d 6f 72 79 2c 0a | >error</span>{.....OutOfMemory,. |
| 689c0 | 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 | };..<span.class="tok-kw">test</s |
| 689e0 | 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">" |
| 68a00 | 3b 63 6f 65 72 63 65 20 73 75 62 73 65 74 20 74 6f 20 73 75 70 65 72 73 65 74 26 71 75 6f 74 3b | ;coerce.subset.to.superset" |
| 68a20 | 3c 2f 73 70 61 6e 3e 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 |
| 68a40 | 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 72 72 20 3d 20 66 6f 6f 28 41 6c 6c 6f 63 61 | w">const</span>.err.=.foo(Alloca |
| 68a60 | 74 69 6f 6e 45 72 72 6f 72 2e 4f 75 74 4f 66 4d 65 6d 6f 72 79 29 3b 0a 20 20 20 20 3c 73 70 61 | tionError.OutOfMemory);.....<spa |
| 68a80 | 6e 20 63 6c 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. |
| 68aa0 | 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 28 65 72 72 20 3d 3d 20 46 69 6c 65 4f 70 65 6e 45 72 | testing.expect(err.==.FileOpenEr |
| 68ac0 | 72 6f 72 2e 4f 75 74 4f 66 4d 65 6d 6f 72 79 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | ror.OutOfMemory);.}..<span.class |
| 68ae0 | 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= |
| 68b00 | 22 74 6f 6b 2d 66 6e 22 3e 66 6f 6f 3c 2f 73 70 61 6e 3e 28 65 72 72 3a 20 41 6c 6c 6f 63 61 74 | "tok-fn">foo</span>(err:.Allocat |
| 68b20 | 69 6f 6e 45 72 72 6f 72 29 20 46 69 6c 65 4f 70 65 6e 45 72 72 6f 72 20 7b 0a 20 20 20 20 3c 73 | ionError).FileOpenError.{.....<s |
| 68b40 | 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> |
| 68b60 | 20 65 72 72 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 | .err;.}</code></pre></figure><fi |
| 68b80 | 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 |
| 68ba0 | 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> |
| 68bc0 | 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 65 72 72 6f | $.<kbd>zig.test.test_coerce_erro |
| 68be0 | 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 6b 62 64 3e 0a 31 | r_subset_to_superset.zig</kbd>.1 |
| 68c00 | 2f 31 20 74 65 73 74 5f 63 6f 65 72 63 65 5f 65 72 72 6f 72 5f 73 75 62 73 65 74 5f 74 6f 5f 73 | /1.test_coerce_error_subset_to_s |
| 68c20 | 75 70 65 72 73 65 74 2e 74 65 73 74 2e 63 6f 65 72 63 65 20 73 75 62 73 65 74 20 74 6f 20 73 75 | uperset.test.coerce.subset.to.su |
| 68c40 | 70 65 72 73 65 74 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a | perset...OK.All.1.tests.passed.. |
| 68c60 | 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 |
| 68c80 | 3e 0a 20 20 20 20 20 20 42 75 74 20 79 6f 75 20 63 61 6e 6e 6f 74 20 3c 61 20 68 72 65 66 3d 22 | >.......But.you.cannot.<a.href=" |
| 68ca0 | 23 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 22 3e 63 6f 65 72 63 65 3c 2f 61 3e 20 61 6e 20 65 72 | #Type-Coercion">coerce</a>.an.er |
| 68cc0 | 72 6f 72 20 66 72 6f 6d 20 61 20 73 75 70 65 72 73 65 74 20 74 6f 20 61 20 73 75 62 73 65 74 3a | ror.from.a.superset.to.a.subset: |
| 68ce0 | 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 |
| 68d00 | 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 |
| 68d20 | 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 63 6f 65 72 63 65 5f 65 72 72 6f 72 5f 73 75 70 65 72 | s="file">test_coerce_error_super |
| 68d40 | 73 65 74 5f 74 6f 5f 73 75 62 73 65 74 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 | set_to_subset.zig</cite></figcap |
| 68d60 | 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 |
| 68d80 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 46 69 6c 65 4f 70 65 6e 45 72 72 6f 72 20 | -kw">const</span>.FileOpenError. |
| 68da0 | 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 | =.<span.class="tok-kw">error</sp |
| 68dc0 | 61 6e 3e 7b 0a 20 20 20 20 41 63 63 65 73 73 44 65 6e 69 65 64 2c 0a 20 20 20 20 4f 75 74 4f 66 | an>{.....AccessDenied,.....OutOf |
| 68de0 | 4d 65 6d 6f 72 79 2c 0a 20 20 20 20 46 69 6c 65 4e 6f 74 46 6f 75 6e 64 2c 0a 7d 3b 0a 0a 3c 73 | Memory,.....FileNotFound,.};..<s |
| 68e00 | 70 61 6e 20 63 6c 61 73 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>. |
| 68e20 | 41 6c 6c 6f 63 61 74 69 6f 6e 45 72 72 6f 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | AllocationError.=.<span.class="t |
| 68e40 | 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 7b 0a 20 20 20 20 4f 75 74 4f 66 4d 65 | ok-kw">error</span>{.....OutOfMe |
| 68e60 | 6d 6f 72 79 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 | mory,.};..<span.class="tok-kw">t |
| 68e80 | 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" |
| 68ea0 | 3e 26 71 75 6f 74 3b 63 6f 65 72 63 65 20 73 75 70 65 72 73 65 74 20 74 6f 20 73 75 62 73 65 74 | >"coerce.superset.to.subset |
| 68ec0 | 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 66 6f 6f 28 46 69 6c 65 4f 70 65 6e | "</span>.{.....foo(FileOpen |
| 68ee0 | 45 72 72 6f 72 2e 4f 75 74 4f 66 4d 65 6d 6f 72 79 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | Error.OutOfMemory).<span.class=" |
| 68f00 | 74 6f 6b 2d 6b 77 22 3e 63 61 74 63 68 3c 2f 73 70 61 6e 3e 20 7b 7d 3b 0a 7d 0a 0a 3c 73 70 61 | tok-kw">catch</span>.{};.}..<spa |
| 68f20 | 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 |
| 68f40 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 66 6f 6f 3c 2f 73 70 61 6e 3e 28 65 72 72 3a 20 | .class="tok-fn">foo</span>(err:. |
| 68f60 | 46 69 6c 65 4f 70 65 6e 45 72 72 6f 72 29 20 41 6c 6c 6f 63 61 74 69 6f 6e 45 72 72 6f 72 20 7b | FileOpenError).AllocationError.{ |
| 68f80 | 0a 20 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 |
| 68fa0 | 3c 2f 73 70 61 6e 3e 20 65 72 72 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 | </span>.err;.}</code></pre></fig |
| 68fc0 | 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 |
| 68fe0 | 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 |
| 69000 | 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 63 6f 65 72 | ><samp>$.<kbd>zig.test.test_coer |
| 69020 | 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 3c | ce_error_superset_to_subset.zig< |
| 69040 | 2f 6b 62 64 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 | /kbd>.<span.class="sgr-1m">/home |
| 69060 | 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 63 | /andy/dev/zig/doc/langref/test_c |
| 69080 | 6f 65 72 63 65 5f 65 72 72 6f 72 5f 73 75 70 65 72 73 65 74 5f 74 6f 5f 73 75 62 73 65 74 2e 7a | oerce_error_superset_to_subset.z |
| 690a0 | 69 67 3a 31 36 3a 31 32 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 | ig:16:12:.</span><span.class="sg |
| 690c0 | 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 |
| 690e0 | 3d 22 73 67 72 2d 31 6d 22 3e 65 78 70 65 63 74 65 64 20 74 79 70 65 20 27 65 72 72 6f 72 7b 4f | ="sgr-1m">expected.type.'error{O |
| 69100 | 75 74 4f 66 4d 65 6d 6f 72 79 7d 27 2c 20 66 6f 75 6e 64 20 27 65 72 72 6f 72 7b 41 63 63 65 73 | utOfMemory}',.found.'error{Acces |
| 69120 | 73 44 65 6e 69 65 64 2c 46 69 6c 65 4e 6f 74 46 6f 75 6e 64 2c 4f 75 74 4f 66 4d 65 6d 6f 72 79 | sDenied,FileNotFound,OutOfMemory |
| 69140 | 7d 27 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 72 65 74 75 72 6e 20 65 72 72 3b 0a 20 20 20 20 20 20 | }'.</span>....return.err;....... |
| 69160 | 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 3c | .....<span.class="sgr-32m">^~~.< |
| 69180 | 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 | /span><span.class="sgr-1m">/home |
| 691a0 | 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 63 | /andy/dev/zig/doc/langref/test_c |
| 691c0 | 6f 65 72 63 65 5f 65 72 72 6f 72 5f 73 75 70 65 72 73 65 74 5f 74 6f 5f 73 75 62 73 65 74 2e 7a | oerce_error_superset_to_subset.z |
| 691e0 | 69 67 3a 31 36 3a 31 32 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 | ig:16:12:.</span><span.class="sg |
| 69200 | 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= |
| 69220 | 22 73 67 72 2d 31 6d 22 3e 27 65 72 72 6f 72 2e 41 63 63 65 73 73 44 65 6e 69 65 64 27 20 6e 6f | "sgr-1m">'error.AccessDenied'.no |
| 69240 | 74 20 61 20 6d 65 6d 62 65 72 20 6f 66 20 64 65 73 74 69 6e 61 74 69 6f 6e 20 65 72 72 6f 72 20 | t.a.member.of.destination.error. |
| 69260 | 73 65 74 0a 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e | set.</span><span.class="sgr-1m"> |
| 69280 | 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 | /home/andy/dev/zig/doc/langref/t |
| 692a0 | 65 73 74 5f 63 6f 65 72 63 65 5f 65 72 72 6f 72 5f 73 75 70 65 72 73 65 74 5f 74 6f 5f 73 75 62 | est_coerce_error_superset_to_sub |
| 692c0 | 73 65 74 2e 7a 69 67 3a 31 36 3a 31 32 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 | set.zig:16:12:.</span><span.clas |
| 692e0 | 73 3d 22 73 67 72 2d 33 36 6d 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 | s="sgr-36m">note:.</span><span.c |
| 69300 | 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 27 65 72 72 6f 72 2e 46 69 6c 65 4e 6f 74 46 6f 75 6e | lass="sgr-1m">'error.FileNotFoun |
| 69320 | 64 27 20 6e 6f 74 20 61 20 6d 65 6d 62 65 72 20 6f 66 20 64 65 73 74 69 6e 61 74 69 6f 6e 20 65 | d'.not.a.member.of.destination.e |
| 69340 | 72 72 6f 72 20 73 65 74 0a 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 | rror.set.</span><span.class="sgr |
| 69360 | 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 | -1m">/home/andy/dev/zig/doc/lang |
| 69380 | 72 65 66 2f 74 65 73 74 5f 63 6f 65 72 63 65 5f 65 72 72 6f 72 5f 73 75 70 65 72 73 65 74 5f 74 | ref/test_coerce_error_superset_t |
| 693a0 | 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 70 61 6e | o_subset.zig:15:28:.</span><span |
| 693c0 | 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 |
| 693e0 | 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 65 74 75 | pan.class="sgr-1m">function.retu |
| 69400 | 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 66 6e 20 | rn.type.declared.here.</span>fn. |
| 69420 | 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 61 74 69 | foo(err:.FileOpenError).Allocati |
| 69440 | 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 20 20 20 | onError.{....................... |
| 69460 | 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 7e 7e 7e 7e | .....<span.class="sgr-32m">^~~~~ |
| 69480 | 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 | ~~~~~~~~~~.</span><span.class="s |
| 694a0 | 67 72 2d 32 6d 22 3e 72 65 66 65 72 65 6e 63 65 64 20 62 79 3a 0a 20 20 20 20 74 65 73 74 2e 63 | gr-2m">referenced.by:.....test.c |
| 694c0 | 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 2f 68 6f 6d 65 2f | oerce.superset.to.subset:./home/ |
| 694e0 | 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 63 6f | andy/dev/zig/doc/langref/test_co |
| 69500 | 65 72 63 65 5f 65 72 72 6f 72 5f 73 75 70 65 72 73 65 74 5f 74 6f 5f 73 75 62 73 65 74 2e 7a 69 | erce_error_superset_to_subset.zi |
| 69520 | 67 3a 31 32 3a 38 0a 3c 2f 73 70 61 6e 3e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 | g:12:8.</span>.</samp></pre></fi |
| 69540 | 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 72 65 20 69 73 20 | gure>........<p>.......There.is. |
| 69560 | 61 20 73 68 6f 72 74 63 75 74 20 66 6f 72 20 64 65 63 6c 61 72 69 6e 67 20 61 6e 20 65 72 72 6f | a.shortcut.for.declaring.an.erro |
| 69580 | 72 20 73 65 74 20 77 69 74 68 20 6f 6e 6c 79 20 31 20 76 61 6c 75 65 2c 20 61 6e 64 20 74 68 65 | r.set.with.only.1.value,.and.the |
| 695a0 | 6e 20 67 65 74 74 69 6e 67 20 74 68 61 74 20 76 61 6c 75 65 3a 0a 20 20 20 20 20 20 3c 2f 70 3e | n.getting.that.value:.......</p> |
| 695c0 | 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 |
| 695e0 | 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 73 69 | ="zig-cap"><cite.class="file">si |
| 69600 | 6e 67 6c 65 5f 76 61 6c 75 65 5f 65 72 72 6f 72 5f 73 65 74 5f 73 68 6f 72 74 63 75 74 2e 7a 69 | ngle_value_error_set_shortcut.zi |
| 69620 | 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> |
| 69640 | 3c 73 70 61 6e 20 63 6c 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 |
| 69660 | 3e 20 65 72 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 | >.err.=.<span.class="tok-kw">err |
| 69680 | 6f 72 3c 2f 73 70 61 6e 3e 2e 46 69 6c 65 4e 6f 74 46 6f 75 6e 64 3b 3c 2f 63 6f 64 65 3e 3c 2f | or</span>.FileNotFound;</code></ |
| 696a0 | 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 69 73 20 69 73 20 | pre></figure>........<p>This.is. |
| 696c0 | 65 71 75 69 76 61 6c 65 6e 74 20 74 6f 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 | equivalent.to:</p>.......<figure |
| 696e0 | 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 |
| 69700 | 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 73 69 6e 67 6c 65 5f 76 61 6c 75 65 5f 65 72 72 | te.class="file">single_value_err |
| 69720 | 6f 72 5f 73 65 74 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 | or_set.zig</cite></figcaption><p |
| 69740 | 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 |
| 69760 | 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 72 72 20 3d 20 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | nst</span>.err.=.(<span.class="t |
| 69780 | 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 7b 46 69 6c 65 4e 6f 74 46 6f 75 6e 64 | ok-kw">error</span>{FileNotFound |
| 697a0 | 7d 29 2e 46 69 6c 65 4e 6f 74 46 6f 75 6e 64 3b 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 | }).FileNotFound;</code></pre></f |
| 697c0 | 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 62 65 63 | igure>........<p>.......This.bec |
| 697e0 | 6f 6d 65 73 20 75 73 65 66 75 6c 20 77 68 65 6e 20 75 73 69 6e 67 20 3c 61 20 68 72 65 66 3d 22 | omes.useful.when.using.<a.href=" |
| 69800 | 23 49 6e 66 65 72 72 65 64 2d 45 72 72 6f 72 2d 53 65 74 73 22 3e 49 6e 66 65 72 72 65 64 20 45 | #Inferred-Error-Sets">Inferred.E |
| 69820 | 72 72 6f 72 20 53 65 74 73 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 | rror.Sets</a>........</p>....... |
| 69840 | 3c 68 34 20 69 64 3d 22 54 68 65 2d 47 6c 6f 62 61 6c 2d 45 72 72 6f 72 2d 53 65 74 22 3e 3c 61 | <h4.id="The-Global-Error-Set"><a |
| 69860 | 20 68 72 65 66 3d 22 23 74 6f 63 2d 54 68 65 2d 47 6c 6f 62 61 6c 2d 45 72 72 6f 72 2d 53 65 74 | .href="#toc-The-Global-Error-Set |
| 69880 | 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 3c 61 20 63 6c | ">The.Global.Error.Set</a>.<a.cl |
| 698a0 | 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 54 68 65 2d 47 6c 6f 62 61 6c 2d 45 72 72 6f | ass="hdr".href="#The-Global-Erro |
| 698c0 | 72 2d 53 65 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 34 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 3c 63 6f | r-Set">..</a></h4>........<p><co |
| 698e0 | 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 61 6e 79 65 72 72 | de><span.class="tok-type">anyerr |
| 69900 | 6f 72 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 72 65 66 65 72 73 20 74 6f 20 74 68 65 20 67 | or</span></code>.refers.to.the.g |
| 69920 | 6c 6f 62 61 6c 20 65 72 72 6f 72 20 73 65 74 2e 0a 20 20 20 20 20 20 54 68 69 73 20 69 73 20 74 | lobal.error.set........This.is.t |
| 69940 | 68 65 20 65 72 72 6f 72 20 73 65 74 20 74 68 61 74 20 63 6f 6e 74 61 69 6e 73 20 61 6c 6c 20 65 | he.error.set.that.contains.all.e |
| 69960 | 72 72 6f 72 73 20 69 6e 20 74 68 65 20 65 6e 74 69 72 65 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 20 | rrors.in.the.entire.compilation. |
| 69980 | 75 6e 69 74 2c 20 69 2e 65 2e 20 69 74 20 69 73 20 74 68 65 20 75 6e 69 6f 6e 20 6f 66 20 61 6c | unit,.i.e..it.is.the.union.of.al |
| 699a0 | 6c 20 6f 74 68 65 72 20 65 72 72 6f 72 20 73 65 74 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 | l.other.error.sets........</p>.. |
| 699c0 | 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 59 6f 75 20 63 61 6e 20 3c 61 20 68 72 65 66 3d 22 | .....<p>.......You.can.<a.href=" |
| 699e0 | 23 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 22 3e 63 6f 65 72 63 65 3c 2f 61 3e 20 61 6e 79 20 65 | #Type-Coercion">coerce</a>.any.e |
| 69a00 | 72 72 6f 72 20 73 65 74 20 74 6f 20 74 68 65 20 67 6c 6f 62 61 6c 20 6f 6e 65 2c 20 61 6e 64 20 | rror.set.to.the.global.one,.and. |
| 69a20 | 79 6f 75 20 63 61 6e 20 65 78 70 6c 69 63 69 74 6c 79 0a 20 20 20 20 20 20 63 61 73 74 20 61 6e | you.can.explicitly.......cast.an |
| 69a40 | 20 65 72 72 6f 72 20 6f 66 20 74 68 65 20 67 6c 6f 62 61 6c 20 65 72 72 6f 72 20 73 65 74 20 74 | .error.of.the.global.error.set.t |
| 69a60 | 6f 20 61 20 6e 6f 6e 2d 67 6c 6f 62 61 6c 20 6f 6e 65 2e 20 54 68 69 73 20 69 6e 73 65 72 74 73 | o.a.non-global.one..This.inserts |
| 69a80 | 20 61 20 6c 61 6e 67 75 61 67 65 2d 6c 65 76 65 6c 0a 20 20 20 20 20 20 61 73 73 65 72 74 20 74 | .a.language-level.......assert.t |
| 69aa0 | 6f 20 6d 61 6b 65 20 73 75 72 65 20 74 68 65 20 65 72 72 6f 72 20 76 61 6c 75 65 20 69 73 20 69 | o.make.sure.the.error.value.is.i |
| 69ac0 | 6e 20 66 61 63 74 20 69 6e 20 74 68 65 20 64 65 73 74 69 6e 61 74 69 6f 6e 20 65 72 72 6f 72 20 | n.fact.in.the.destination.error. |
| 69ae0 | 73 65 74 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 | set........</p>.......<p>....... |
| 69b00 | 54 68 65 20 67 6c 6f 62 61 6c 20 65 72 72 6f 72 20 73 65 74 20 73 68 6f 75 6c 64 20 67 65 6e 65 | The.global.error.set.should.gene |
| 69b20 | 72 61 6c 6c 79 20 62 65 20 61 76 6f 69 64 65 64 20 62 65 63 61 75 73 65 20 69 74 20 70 72 65 76 | rally.be.avoided.because.it.prev |
| 69b40 | 65 6e 74 73 20 74 68 65 0a 20 20 20 20 20 20 63 6f 6d 70 69 6c 65 72 20 66 72 6f 6d 20 6b 6e 6f | ents.the.......compiler.from.kno |
| 69b60 | 77 69 6e 67 20 77 68 61 74 20 65 72 72 6f 72 73 20 61 72 65 20 70 6f 73 73 69 62 6c 65 20 61 74 | wing.what.errors.are.possible.at |
| 69b80 | 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 2e 20 4b 6e 6f 77 69 6e 67 0a 20 20 20 20 20 20 74 68 65 | .compile-time..Knowing.......the |
| 69ba0 | 20 65 72 72 6f 72 20 73 65 74 20 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 69 73 20 62 65 | .error.set.at.compile-time.is.be |
| 69bc0 | 74 74 65 72 20 66 6f 72 20 67 65 6e 65 72 61 74 65 64 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e | tter.for.generated.documentation |
| 69be0 | 20 61 6e 64 0a 20 20 20 20 20 20 68 65 6c 70 66 75 6c 20 65 72 72 6f 72 20 6d 65 73 73 61 67 65 | .and.......helpful.error.message |
| 69c00 | 73 2c 20 73 75 63 68 20 61 73 20 66 6f 72 67 65 74 74 69 6e 67 20 61 20 70 6f 73 73 69 62 6c 65 | s,.such.as.forgetting.a.possible |
| 69c20 | 20 65 72 72 6f 72 20 76 61 6c 75 65 20 69 6e 20 61 20 3c 61 20 68 72 65 66 3d 22 23 73 77 69 74 | .error.value.in.a.<a.href="#swit |
| 69c40 | 63 68 22 3e 73 77 69 74 63 68 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 | ch">switch</a>........</p>...... |
| 69c60 | 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 55 6e 69 | ...............<h3.id="Error-Uni |
| 69c80 | 6f 6e 2d 54 79 70 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 45 72 72 6f 72 2d 55 6e 69 | on-Type"><a.href="#toc-Error-Uni |
| 69ca0 | 6f 6e 2d 54 79 70 65 22 3e 45 72 72 6f 72 20 55 6e 69 6f 6e 20 54 79 70 65 3c 2f 61 3e 20 3c 61 | on-Type">Error.Union.Type</a>.<a |
| 69cc0 | 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 45 72 72 6f 72 2d 55 6e 69 6f 6e 2d | .class="hdr".href="#Error-Union- |
| 69ce0 | 54 79 70 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 | Type">..</a></h3>........<p>.... |
| 69d00 | 20 20 20 41 6e 20 65 72 72 6f 72 20 73 65 74 20 74 79 70 65 20 61 6e 64 20 6e 6f 72 6d 61 6c 20 | ...An.error.set.type.and.normal. |
| 69d20 | 74 79 70 65 20 63 61 6e 20 62 65 20 63 6f 6d 62 69 6e 65 64 20 77 69 74 68 20 74 68 65 20 3c 63 | type.can.be.combined.with.the.<c |
| 69d40 | 6f 64 65 3e 21 3c 2f 63 6f 64 65 3e 0a 20 20 20 20 20 20 62 69 6e 61 72 79 20 6f 70 65 72 61 74 | ode>!</code>.......binary.operat |
| 69d60 | 6f 72 20 74 6f 20 66 6f 72 6d 20 61 6e 20 65 72 72 6f 72 20 75 6e 69 6f 6e 20 74 79 70 65 2e 20 | or.to.form.an.error.union.type.. |
| 69d80 | 59 6f 75 20 61 72 65 20 6c 69 6b 65 6c 79 20 74 6f 20 75 73 65 20 61 6e 0a 20 20 20 20 20 20 65 | You.are.likely.to.use.an.......e |
| 69da0 | 72 72 6f 72 20 75 6e 69 6f 6e 20 74 79 70 65 20 6d 6f 72 65 20 6f 66 74 65 6e 20 74 68 61 6e 20 | rror.union.type.more.often.than. |
| 69dc0 | 61 6e 20 65 72 72 6f 72 20 73 65 74 20 74 79 70 65 20 62 79 20 69 74 73 65 6c 66 2e 0a 20 20 20 | an.error.set.type.by.itself..... |
| 69de0 | 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 48 65 72 65 20 69 73 20 | ...</p>.......<p>.......Here.is. |
| 69e00 | 61 20 66 75 6e 63 74 69 6f 6e 20 74 6f 20 70 61 72 73 65 20 61 20 73 74 72 69 6e 67 20 69 6e 74 | a.function.to.parse.a.string.int |
| 69e20 | 6f 20 61 20 36 34 2d 62 69 74 20 69 6e 74 65 67 65 72 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 | o.a.64-bit.integer:.......</p>.. |
| 69e40 | 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=" |
| 69e60 | 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 72 72 6f | zig-cap"><cite.class="file">erro |
| 69e80 | 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 63 69 74 65 3e 3c 2f | r_union_parsing_u64.zig</cite></ |
| 69ea0 | 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 |
| 69ec0 | 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 |
| 69ee0 | 70 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< |
| 69f00 | 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 |
| 69f20 | 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 |
| 69f40 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6d 61 78 49 6e 74 20 3d | s="tok-kw">const</span>.maxInt.= |
| 69f60 | 20 73 74 64 2e 6d 61 74 68 2e 6d 61 78 49 6e 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | .std.math.maxInt;..<span.class=" |
| 69f80 | 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=" |
| 69fa0 | 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 |
| 69fc0 | 6f 6b 2d 66 6e 22 3e 70 61 72 73 65 55 36 34 3c 2f 73 70 61 6e 3e 28 62 75 66 3a 20 5b 5d 3c 73 | ok-fn">parseU64</span>(buf:.[]<s |
| 69fe0 | 70 61 6e 20 63 6c 61 73 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>. |
| 6a000 | 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> |
| 6a020 | 2c 20 72 61 64 69 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | ,.radix:.<span.class="tok-type"> |
| 6a040 | 75 38 3c 2f 73 70 61 6e 3e 29 20 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | u8</span>).!<span.class="tok-typ |
| 6a060 | 65 22 3e 75 36 34 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | e">u64</span>.{.....<span.class= |
| 6a080 | 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 |
| 6a0a0 | 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 |
| 6a0c0 | 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 0a 20 | .class="tok-number">0</span>;... |
| 6a0e0 | 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6f 72 3c 2f 73 70 61 | ...<span.class="tok-kw">for</spa |
| 6a100 | 6e 3e 20 28 62 75 66 29 20 7c 63 7c 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | n>.(buf).|c|.{.........<span.cla |
| 6a120 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 64 69 67 69 74 20 3d | ss="tok-kw">const</span>.digit.= |
| 6a140 | 20 63 68 61 72 54 6f 44 69 67 69 74 28 63 29 3b 0a 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 | .charToDigit(c);..........<span. |
| 6a160 | 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 69 67 69 74 20 | class="tok-kw">if</span>.(digit. |
| 6a180 | 26 67 74 3b 3d 20 72 61 64 69 78 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e | >=.radix).{.............<span |
| 6a1a0 | 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 |
| 6a1c0 | 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>. |
| 6a1e0 | 49 6e 76 61 6c 69 64 43 68 61 72 3b 0a 20 20 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 20 20 20 20 | InvalidChar;.........}.......... |
| 6a200 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 78 20 2a | <span.class="tok-comment">//.x.* |
| 6a220 | 3d 20 72 61 64 69 78 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | =.radix</span>.........<span.cla |
| 6a240 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 6f 76 20 3d 20 3c 73 70 61 | ss="tok-kw">var</span>.ov.=.<spa |
| 6a260 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 6d 75 6c 57 69 74 68 4f 76 | n.class="tok-builtin">@mulWithOv |
| 6a280 | 65 72 66 6c 6f 77 3c 2f 73 70 61 6e 3e 28 78 2c 20 72 61 64 69 78 29 3b 0a 20 20 20 20 20 20 20 | erflow</span>(x,.radix);........ |
| 6a2a0 | 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>. |
| 6a2c0 | 28 6f 76 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f | (ov[<span.class="tok-number">1</ |
| 6a2e0 | 73 70 61 6e 3e 5d 20 21 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | span>].!=.<span.class="tok-numbe |
| 6a300 | 72 22 3e 30 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | r">0</span>).<span.class="tok-kw |
| 6a320 | 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ">return</span>.<span.class="tok |
| 6a340 | 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 4f 76 65 72 46 6c 6f 77 3b 0a 0a 20 20 20 | -kw">error</span>.OverFlow;..... |
| 6a360 | 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">/ |
| 6a380 | 2f 20 78 20 2b 3d 20 64 69 67 69 74 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 6f 76 20 3d | /.x.+=.digit</span>.........ov.= |
| 6a3a0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 61 64 64 57 | .<span.class="tok-builtin">@addW |
| 6a3c0 | 69 74 68 4f 76 65 72 66 6c 6f 77 3c 2f 73 70 61 6e 3e 28 6f 76 5b 3c 73 70 61 6e 20 63 6c 61 73 | ithOverflow</span>(ov[<span.clas |
| 6a3e0 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 5d 2c 20 64 69 67 69 74 29 | s="tok-number">0</span>],.digit) |
| 6a400 | 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 69 | ;.........<span.class="tok-kw">i |
| 6a420 | 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 75 | f</span>.(ov[<span.class="tok-nu |
| 6a440 | 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 22 | mber">1</span>].!=.<span.class=" |
| 6a460 | 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 73 | tok-number">0</span>).<span.clas |
| 6a480 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 | s="tok-kw">return</span>.<span.c |
| 6a4a0 | 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 46 | lass="tok-kw">error</span>.OverF |
| 6a4c0 | 6c 6f 77 3b 0a 20 20 20 20 20 20 20 20 78 20 3d 20 6f 76 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d | low;.........x.=.ov[<span.class= |
| 6a4e0 | 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 20 7d 0a 0a 20 | "tok-number">0</span>];.....}... |
| 6a500 | 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</ |
| 6a520 | 73 70 61 6e 3e 20 78 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | span>.x;.}..<span.class="tok-kw" |
| 6a540 | 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"> |
| 6a560 | 63 68 61 72 54 6f 44 69 67 69 74 3c 2f 73 70 61 6e 3e 28 63 3a 20 3c 73 70 61 6e 20 63 6c 61 73 | charToDigit</span>(c:.<span.clas |
| 6a580 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c | s="tok-type">u8</span>).<span.cl |
| 6a5a0 | 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>.{.....< |
| 6a5c0 | 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 |
| 6a5e0 | 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 77 69 74 63 68 3c 2f 73 | >.<span.class="tok-kw">switch</s |
| 6a600 | 70 61 6e 3e 20 28 63 29 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | pan>.(c).{.........<span.class=" |
| 6a620 | 74 6f 6b 2d 73 74 72 22 3e 27 30 27 3c 2f 73 70 61 6e 3e 2e 2e 2e 3c 73 70 61 6e 20 63 6c 61 73 | tok-str">'0'</span>...<span.clas |
| 6a640 | 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 39 27 3c 2f 73 70 61 6e 3e 20 3d 26 67 74 3b 20 63 20 2d | s="tok-str">'9'</span>.=>.c.- |
| 6a660 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 30 27 3c 2f 73 70 61 6e | .<span.class="tok-str">'0'</span |
| 6a680 | 3e 2c 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 | >,.........<span.class="tok-str" |
| 6a6a0 | 3e 27 41 27 3c 2f 73 70 61 6e 3e 2e 2e 2e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 | >'A'</span>...<span.class="tok-s |
| 6a6c0 | 74 72 22 3e 27 5a 27 3c 2f 73 70 61 6e 3e 20 3d 26 67 74 3b 20 63 20 2d 20 3c 73 70 61 6e 20 63 | tr">'Z'</span>.=>.c.-.<span.c |
| 6a6e0 | 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 41 27 3c 2f 73 70 61 6e 3e 20 2b 20 3c 73 70 61 | lass="tok-str">'A'</span>.+.<spa |
| 6a700 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 3c 2f 73 70 61 6e 3e 2c 0a | n.class="tok-number">10</span>,. |
| 6a720 | 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 61 | ........<span.class="tok-str">'a |
| 6a740 | 27 3c 2f 73 70 61 6e 3e 2e 2e 2e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 | '</span>...<span.class="tok-str" |
| 6a760 | 3e 27 7a 27 3c 2f 73 70 61 6e 3e 20 3d 26 67 74 3b 20 63 20 2d 20 3c 73 70 61 6e 20 63 6c 61 73 | >'z'</span>.=>.c.-.<span.clas |
| 6a780 | 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 61 27 3c 2f 73 70 61 6e 3e 20 2b 20 3c 73 70 61 6e 20 63 | s="tok-str">'a'</span>.+.<span.c |
| 6a7a0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 | lass="tok-number">10</span>,.... |
| 6a7c0 | 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f | .....<span.class="tok-kw">else</ |
| 6a7e0 | 73 70 61 6e 3e 20 3d 26 67 74 3b 20 6d 61 78 49 6e 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | span>.=>.maxInt(<span.class=" |
| 6a800 | 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 2c 0a 20 20 20 20 7d 3b 0a 7d 0a 0a | tok-type">u8</span>),.....};.}.. |
| 6a820 | 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> |
| 6a840 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 70 61 72 | .<span.class="tok-str">"par |
| 6a860 | 73 65 20 75 36 34 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 | se.u64"</span>.{.....<span. |
| 6a880 | 63 6c 61 73 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 |
| 6a8a0 | 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 |
| 6a8c0 | 70 61 6e 3e 20 70 61 72 73 65 55 36 34 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 | pan>.parseU64(<span.class="tok-s |
| 6a8e0 | 74 72 22 3e 26 71 75 6f 74 3b 31 32 33 34 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 | tr">"1234"</span>,.<sp |
| 6a900 | 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 29 | an.class="tok-number">10</span>) |
| 6a920 | 3b 0a 20 20 20 20 3c 73 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</ |
| 6a940 | 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 72 65 73 75 6c 74 20 | span>.std.testing.expect(result. |
| 6a960 | 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 34 | ==.<span.class="tok-number">1234 |
| 6a980 | 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 |
| 6a9a0 | 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 |
| 6a9c0 | 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 |
| 6a9e0 | 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 65 72 72 6f 72 5f 75 6e 69 6f 6e 5f | amp>$.<kbd>zig.test.error_union_ |
| 6aa00 | 70 61 72 73 69 6e 67 5f 75 36 34 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 65 72 72 6f 72 5f | parsing_u64.zig</kbd>.1/1.error_ |
| 6aa20 | 75 6e 69 6f 6e 5f 70 61 72 73 69 6e 67 5f 75 36 34 2e 74 65 73 74 2e 70 61 72 73 65 20 75 36 34 | union_parsing_u64.test.parse.u64 |
| 6aa40 | 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 |
| 6aa60 | 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>..... |
| 6aa80 | 20 20 4e 6f 74 69 63 65 20 74 68 65 20 72 65 74 75 72 6e 20 74 79 70 65 20 69 73 20 3c 63 6f 64 | ..Notice.the.return.type.is.<cod |
| 6aaa0 | 65 3e 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 36 34 3c 2f 73 | e>!<span.class="tok-type">u64</s |
| 6aac0 | 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 20 54 68 69 73 20 6d 65 61 6e 73 20 74 68 61 74 20 74 68 65 | pan></code>..This.means.that.the |
| 6aae0 | 20 66 75 6e 63 74 69 6f 6e 0a 20 20 20 20 20 20 65 69 74 68 65 72 20 72 65 74 75 72 6e 73 20 61 | .function.......either.returns.a |
| 6ab00 | 6e 20 75 6e 73 69 67 6e 65 64 20 36 34 20 62 69 74 20 69 6e 74 65 67 65 72 2c 20 6f 72 20 61 6e | n.unsigned.64.bit.integer,.or.an |
| 6ab20 | 20 65 72 72 6f 72 2e 20 57 65 20 6c 65 66 74 20 6f 66 66 20 74 68 65 20 65 72 72 6f 72 20 73 65 | .error..We.left.off.the.error.se |
| 6ab40 | 74 0a 20 20 20 20 20 20 74 6f 20 74 68 65 20 6c 65 66 74 20 6f 66 20 74 68 65 20 3c 63 6f 64 65 | t.......to.the.left.of.the.<code |
| 6ab60 | 3e 21 3c 2f 63 6f 64 65 3e 2c 20 73 6f 20 74 68 65 20 65 72 72 6f 72 20 73 65 74 20 69 73 20 69 | >!</code>,.so.the.error.set.is.i |
| 6ab80 | 6e 66 65 72 72 65 64 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 | nferred........</p>.......<p>... |
| 6aba0 | 20 20 20 20 57 69 74 68 69 6e 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 64 65 66 69 6e 69 74 69 | ....Within.the.function.definiti |
| 6abc0 | 6f 6e 2c 20 79 6f 75 20 63 61 6e 20 73 65 65 20 73 6f 6d 65 20 72 65 74 75 72 6e 20 73 74 61 74 | on,.you.can.see.some.return.stat |
| 6abe0 | 65 6d 65 6e 74 73 20 74 68 61 74 20 72 65 74 75 72 6e 0a 20 20 20 20 20 20 61 6e 20 65 72 72 6f | ements.that.return.......an.erro |
| 6ac00 | 72 2c 20 61 6e 64 20 61 74 20 74 68 65 20 62 6f 74 74 6f 6d 20 61 20 72 65 74 75 72 6e 20 73 74 | r,.and.at.the.bottom.a.return.st |
| 6ac20 | 61 74 65 6d 65 6e 74 20 74 68 61 74 20 72 65 74 75 72 6e 73 20 61 20 3c 63 6f 64 65 3e 3c 73 70 | atement.that.returns.a.<code><sp |
| 6ac40 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 36 34 3c 2f 73 70 61 6e 3e 3c 2f | an.class="tok-type">u64</span></ |
| 6ac60 | 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 20 20 20 20 42 6f 74 68 20 74 79 70 65 73 20 3c 61 20 68 | code>............Both.types.<a.h |
| 6ac80 | 72 65 66 3d 22 23 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 22 3e 63 6f 65 72 63 65 3c 2f 61 3e 20 | ref="#Type-Coercion">coerce</a>. |
| 6aca0 | 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 3e | to.<code><span.class="tok-type"> |
| 6acc0 | 61 6e 79 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | anyerror</span>!<span.class="tok |
| 6ace0 | 2d 74 79 70 65 22 3e 75 36 34 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 | -type">u64</span></code>........ |
| 6ad00 | 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 57 68 61 74 20 69 74 20 6c 6f 6f | </p>.......<p>.......What.it.loo |
| 6ad20 | 6b 73 20 6c 69 6b 65 20 74 6f 20 75 73 65 20 74 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 76 61 72 | ks.like.to.use.this.function.var |
| 6ad40 | 69 65 73 20 64 65 70 65 6e 64 69 6e 67 20 6f 6e 20 77 68 61 74 20 79 6f 75 27 72 65 0a 20 20 20 | ies.depending.on.what.you're.... |
| 6ad60 | 20 20 20 74 72 79 69 6e 67 20 74 6f 20 64 6f 2e 20 4f 6e 65 20 6f 66 20 74 68 65 20 66 6f 6c 6c | ...trying.to.do..One.of.the.foll |
| 6ad80 | 6f 77 69 6e 67 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 | owing:.......</p>.......<ul>.... |
| 6ada0 | 20 20 20 20 20 3c 6c 69 3e 59 6f 75 20 77 61 6e 74 20 74 6f 20 70 72 6f 76 69 64 65 20 61 20 64 | .....<li>You.want.to.provide.a.d |
| 6adc0 | 65 66 61 75 6c 74 20 76 61 6c 75 65 20 69 66 20 69 74 20 72 65 74 75 72 6e 65 64 20 61 6e 20 65 | efault.value.if.it.returned.an.e |
| 6ade0 | 72 72 6f 72 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 49 66 20 69 74 20 72 65 74 | rror.</li>.........<li>If.it.ret |
| 6ae00 | 75 72 6e 65 64 20 61 6e 20 65 72 72 6f 72 20 74 68 65 6e 20 79 6f 75 20 77 61 6e 74 20 74 6f 20 | urned.an.error.then.you.want.to. |
| 6ae20 | 72 65 74 75 72 6e 20 74 68 65 20 73 61 6d 65 20 65 72 72 6f 72 2e 3c 2f 6c 69 3e 0a 20 20 20 20 | return.the.same.error.</li>..... |
| 6ae40 | 20 20 20 20 3c 6c 69 3e 59 6f 75 20 6b 6e 6f 77 20 77 69 74 68 20 63 6f 6d 70 6c 65 74 65 20 63 | ....<li>You.know.with.complete.c |
| 6ae60 | 65 72 74 61 69 6e 74 79 20 69 74 20 77 69 6c 6c 20 6e 6f 74 20 72 65 74 75 72 6e 20 61 6e 20 65 | ertainty.it.will.not.return.an.e |
| 6ae80 | 72 72 6f 72 2c 20 73 6f 20 77 61 6e 74 20 74 6f 20 75 6e 63 6f 6e 64 69 74 69 6f 6e 61 6c 6c 79 | rror,.so.want.to.unconditionally |
| 6aea0 | 20 75 6e 77 72 61 70 20 69 74 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 59 6f 75 | .unwrap.it.</li>.........<li>You |
| 6aec0 | 20 77 61 6e 74 20 74 6f 20 74 61 6b 65 20 61 20 64 69 66 66 65 72 65 6e 74 20 61 63 74 69 6f 6e | .want.to.take.a.different.action |
| 6aee0 | 20 66 6f 72 20 65 61 63 68 20 70 6f 73 73 69 62 6c 65 20 65 72 72 6f 72 2e 3c 2f 6c 69 3e 0a 20 | .for.each.possible.error.</li>.. |
| 6af00 | 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 63 61 74 63 68 22 3e | .....</ul>.......<h4.id="catch"> |
| 6af20 | 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 63 61 74 63 68 22 3e 63 61 74 63 68 3c 2f 61 3e 20 3c | <a.href="#toc-catch">catch</a>.< |
| 6af40 | 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 63 61 74 63 68 22 3e c2 a7 3c 2f | a.class="hdr".href="#catch">..</ |
| 6af60 | 61 3e 3c 2f 68 34 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 49 66 20 79 6f 75 20 77 61 6e 74 20 74 6f | a></h4>........<p>If.you.want.to |
| 6af80 | 20 70 72 6f 76 69 64 65 20 61 20 64 65 66 61 75 6c 74 20 76 61 6c 75 65 2c 20 79 6f 75 20 63 61 | .provide.a.default.value,.you.ca |
| 6afa0 | 6e 20 75 73 65 20 74 68 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | n.use.the.<code><span.class="tok |
| 6afc0 | 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 62 69 6e 61 72 79 20 | -kw">catch</span></code>.binary. |
| 6afe0 | 6f 70 65 72 61 74 6f 72 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 | operator:</p>.......<figure><fig |
| 6b000 | 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 |
| 6b020 | 61 73 73 3d 22 66 69 6c 65 22 3e 63 61 74 63 68 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 | ass="file">catch.zig</cite></fig |
| 6b040 | 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=" |
| 6b060 | 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 70 61 72 73 65 55 36 34 20 3d 20 | tok-kw">const</span>.parseU64.=. |
| 6b080 | 3c 73 70 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 |
| 6b0a0 | 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">& |
| 6b0c0 | 71 75 6f 74 3b 65 72 72 6f 72 5f 75 6e 69 6f 6e 5f 70 61 72 73 69 6e 67 5f 75 36 34 2e 7a 69 67 | quot;error_union_parsing_u64.zig |
| 6b0e0 | 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 70 61 72 73 65 55 36 34 3b 0a 0a 3c 73 70 61 6e 20 | "</span>).parseU64;..<span. |
| 6b100 | 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 |
| 6b120 | 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 70 61 6e 3e 28 73 74 | lass="tok-fn">doAThing</span>(st |
| 6b140 | 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 22 3e 75 38 3c 2f | r:.[]<span.class="tok-type">u8</ |
| 6b160 | 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f | span>).<span.class="tok-type">vo |
| 6b180 | 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | id</span>.{.....<span.class="tok |
| 6b1a0 | 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 73 65 | -kw">const</span>.number.=.parse |
| 6b1c0 | 55 36 34 28 73 74 72 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | U64(str,.<span.class="tok-number |
| 6b1e0 | 22 3e 31 30 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | ">10</span>).<span.class="tok-kw |
| 6b200 | 22 3e 63 61 74 63 68 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ">catch</span>.<span.class="tok- |
| 6b220 | 6e 75 6d 62 65 72 22 3e 31 33 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 5f 20 3d 20 6e 75 6d 62 65 | number">13</span>;....._.=.numbe |
| 6b240 | 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">//. |
| 6b260 | 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 |
| 6b280 | 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 6e 20 74 68 69 73 20 63 6f 64 65 | e>........<p>.......In.this.code |
| 6b2a0 | 2c 20 3c 63 6f 64 65 3e 6e 75 6d 62 65 72 3c 2f 63 6f 64 65 3e 20 77 69 6c 6c 20 62 65 20 65 71 | ,.<code>number</code>.will.be.eq |
| 6b2c0 | 75 61 6c 20 74 6f 20 74 68 65 20 73 75 63 63 65 73 73 66 75 6c 6c 79 20 70 61 72 73 65 64 20 73 | ual.to.the.successfully.parsed.s |
| 6b2e0 | 74 72 69 6e 67 2c 20 6f 72 0a 20 20 20 20 20 20 20 20 20 20 61 20 64 65 66 61 75 6c 74 20 76 61 | tring,.or...........a.default.va |
| 6b300 | 6c 75 65 20 6f 66 20 31 33 2e 20 54 68 65 20 74 79 70 65 20 6f 66 20 74 68 65 20 72 69 67 68 74 | lue.of.13..The.type.of.the.right |
| 6b320 | 20 68 61 6e 64 20 73 69 64 65 20 6f 66 20 74 68 65 20 62 69 6e 61 72 79 20 3c 63 6f 64 65 3e 3c | .hand.side.of.the.binary.<code>< |
| 6b340 | 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 3e | span.class="tok-kw">catch</span> |
| 6b360 | 3c 2f 63 6f 64 65 3e 20 6f 70 65 72 61 74 6f 72 20 6d 75 73 74 0a 20 20 20 20 20 20 20 20 20 20 | </code>.operator.must........... |
| 6b380 | 20 20 20 20 6d 61 74 63 68 20 74 68 65 20 75 6e 77 72 61 70 70 65 64 20 65 72 72 6f 72 20 75 6e | ....match.the.unwrapped.error.un |
| 6b3a0 | 69 6f 6e 20 74 79 70 65 2c 20 6f 72 20 62 65 20 6f 66 20 74 79 70 65 20 3c 63 6f 64 65 3e 3c 73 | ion.type,.or.be.of.type.<code><s |
| 6b3c0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 6e 6f 72 65 74 75 72 6e 3c 2f 73 | pan.class="tok-type">noreturn</s |
| 6b3e0 | 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 3c 70 3e | pan></code>........</p>......<p> |
| 6b400 | 0a 20 20 20 20 20 20 49 66 20 79 6f 75 20 77 61 6e 74 20 74 6f 20 70 72 6f 76 69 64 65 20 61 20 | .......If.you.want.to.provide.a. |
| 6b420 | 64 65 66 61 75 6c 74 20 76 61 6c 75 65 20 77 69 74 68 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c | default.value.with.......<code>< |
| 6b440 | 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 3e | span.class="tok-kw">catch</span> |
| 6b460 | 3c 2f 63 6f 64 65 3e 20 61 66 74 65 72 20 70 65 72 66 6f 72 6d 69 6e 67 20 73 6f 6d 65 20 6c 6f | </code>.after.performing.some.lo |
| 6b480 | 67 69 63 2c 20 79 6f 75 0a 20 20 20 20 20 20 63 61 6e 20 63 6f 6d 62 69 6e 65 20 3c 63 6f 64 65 | gic,.you.......can.combine.<code |
| 6b4a0 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 61 74 63 68 3c 2f 73 70 61 | ><span.class="tok-kw">catch</spa |
| 6b4c0 | 6e 3e 3c 2f 63 6f 64 65 3e 20 77 69 74 68 20 6e 61 6d 65 64 20 3c 61 20 68 72 65 66 3d 22 23 42 | n></code>.with.named.<a.href="#B |
| 6b4e0 | 6c 6f 63 6b 73 22 3e 42 6c 6f 63 6b 73 3c 2f 61 3e 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 | locks">Blocks</a>:.......</p>... |
| 6b500 | 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 |
| 6b520 | 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 6c | ig-cap"><cite.class="file">handl |
| 6b540 | 65 5f 65 72 72 6f 72 5f 77 69 74 68 5f 63 61 74 63 68 5f 62 6c 6f 63 6b 2e 7a 69 67 2e 7a 69 67 | e_error_with_catch_block.zig.zig |
| 6b560 | 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>< |
| 6b580 | 73 70 61 6e 20 63 6c 61 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> |
| 6b5a0 | 20 70 61 72 73 65 55 36 34 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 | .parseU64.=.<span.class="tok-bui |
| 6b5c0 | 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 |
| 6b5e0 | 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 65 72 72 6f 72 5f 75 6e 69 6f 6e 5f 70 61 72 | ="tok-str">"error_union_par |
| 6b600 | 73 69 6e 67 5f 75 36 34 2e 7a 69 67 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 70 61 72 73 65 | sing_u64.zig"</span>).parse |
| 6b620 | 55 36 34 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 | U64;..<span.class="tok-kw">fn</s |
| 6b640 | 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 64 6f 41 54 68 69 | pan>.<span.class="tok-fn">doAThi |
| 6b660 | 6e 67 3c 2f 73 70 61 6e 3e 28 73 74 72 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ng</span>(str:.[]<span.class="to |
| 6b680 | 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | k-type">u8</span>).<span.class=" |
| 6b6a0 | 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 |
| 6b6c0 | 6e 20 63 6c 61 73 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 |
| 6b6e0 | 6d 62 65 72 20 3d 20 70 61 72 73 65 55 36 34 28 73 74 72 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 | mber.=.parseU64(str,.<span.class |
| 6b700 | 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 |
| 6b720 | 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 62 6c 6b 3a 20 | lass="tok-kw">catch</span>.blk:. |
| 6b740 | 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 | {.........<span.class="tok-comme |
| 6b760 | 6e 74 22 3e 2f 2f 20 64 6f 20 74 68 69 6e 67 73 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 | nt">//.do.things</span>......... |
| 6b780 | 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 |
| 6b7a0 | 3e 20 3a 62 6c 6b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e | >.:blk.<span.class="tok-number"> |
| 6b7c0 | 31 33 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 7d 3b 0a 20 20 20 20 5f 20 3d 20 6e 75 6d 62 65 72 | 13</span>;.....};....._.=.number |
| 6b7e0 | 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 6e | ;.<span.class="tok-comment">//.n |
| 6b800 | 75 6d 62 65 72 20 69 73 20 6e 6f 77 20 69 6e 69 74 69 61 6c 69 7a 65 64 3c 2f 73 70 61 6e 3e 0a | umber.is.now.initialized</span>. |
| 6b820 | 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 0a | }</code></pre></figure>......... |
| 6b840 | 20 20 20 20 20 20 3c 68 34 20 69 64 3d 22 74 72 79 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 | ......<h4.id="try"><a.href="#toc |
| 6b860 | 2d 74 72 79 22 3e 74 72 79 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 | -try">try</a>.<a.class="hdr".hre |
| 6b880 | 66 3d 22 23 74 72 79 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 34 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 4c | f="#try">..</a></h4>........<p>L |
| 6b8a0 | 65 74 27 73 20 73 61 79 20 79 6f 75 20 77 61 6e 74 65 64 20 74 6f 20 72 65 74 75 72 6e 20 74 68 | et's.say.you.wanted.to.return.th |
| 6b8c0 | 65 20 65 72 72 6f 72 20 69 66 20 79 6f 75 20 67 6f 74 20 6f 6e 65 2c 20 6f 74 68 65 72 77 69 73 | e.error.if.you.got.one,.otherwis |
| 6b8e0 | 65 20 63 6f 6e 74 69 6e 75 65 20 77 69 74 68 20 74 68 65 0a 20 20 20 20 20 20 66 75 6e 63 74 69 | e.continue.with.the.......functi |
| 6b900 | 6f 6e 20 6c 6f 67 69 63 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 | on.logic:</p>.......<figure><fig |
| 6b920 | 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 |
| 6b940 | 61 73 73 3d 22 66 69 6c 65 22 3e 63 61 74 63 68 5f 65 72 72 5f 72 65 74 75 72 6e 2e 7a 69 67 3c | ass="file">catch_err_return.zig< |
| 6b960 | 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 |
| 6b980 | 70 61 6e 20 63 6c 61 73 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>. |
| 6b9a0 | 70 61 72 73 65 55 36 34 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c | parseU64.=.<span.class="tok-buil |
| 6b9c0 | 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= |
| 6b9e0 | 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 65 72 72 6f 72 5f 75 6e 69 6f 6e 5f 70 61 72 73 | "tok-str">"error_union_pars |
| 6ba00 | 69 6e 67 5f 75 36 34 2e 7a 69 67 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 70 61 72 73 65 55 | ing_u64.zig"</span>).parseU |
| 6ba20 | 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 66 6e 3c 2f 73 70 | 64;..<span.class="tok-kw">fn</sp |
| 6ba40 | 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 64 6f 41 54 68 69 6e | an>.<span.class="tok-fn">doAThin |
| 6ba60 | 67 3c 2f 73 70 61 6e 3e 28 73 74 72 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | g</span>(str:.[]<span.class="tok |
| 6ba80 | 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 20 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | -type">u8</span>).!<span.class=" |
| 6baa0 | 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 |
| 6bac0 | 6e 20 63 6c 61 73 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 |
| 6bae0 | 6d 62 65 72 20 3d 20 70 61 72 73 65 55 36 34 28 73 74 72 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 | mber.=.parseU64(str,.<span.class |
| 6bb00 | 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 |
| 6bb20 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 61 74 63 68 3c 2f 73 70 61 6e 3e 20 7c 65 72 72 7c | lass="tok-kw">catch</span>.|err| |
| 6bb40 | 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 |
| 6bb60 | 61 6e 3e 20 65 72 72 3b 0a 20 20 20 20 5f 20 3d 20 6e 75 6d 62 65 72 3b 20 3c 73 70 61 6e 20 63 | an>.err;....._.=.number;.<span.c |
| 6bb80 | 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 2e 2e 2e 3c 2f 73 70 61 6e 3e | lass="tok-comment">//....</span> |
| 6bba0 | 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>........ |
| 6bbc0 | 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 72 65 20 69 73 20 61 20 73 68 6f 72 74 63 75 74 20 66 6f | <p>.......There.is.a.shortcut.fo |
| 6bbe0 | 72 20 74 68 69 73 2e 20 54 68 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | r.this..The.<code><span.class="t |
| 6bc00 | 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 65 78 70 72 65 73 73 | ok-kw">try</span></code>.express |
| 6bc20 | 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 3c 66 | ion:.......</p>.......<figure><f |
| 6bc40 | 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. |
| 6bc60 | 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 72 79 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 | class="file">try.zig</cite></fig |
| 6bc80 | 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=" |
| 6bca0 | 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 70 61 72 73 65 55 36 34 20 3d 20 | tok-kw">const</span>.parseU64.=. |
| 6bcc0 | 3c 73 70 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 |
| 6bce0 | 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">& |
| 6bd00 | 71 75 6f 74 3b 65 72 72 6f 72 5f 75 6e 69 6f 6e 5f 70 61 72 73 69 6e 67 5f 75 36 34 2e 7a 69 67 | quot;error_union_parsing_u64.zig |
| 6bd20 | 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 70 61 72 73 65 55 36 34 3b 0a 0a 3c 73 70 61 6e 20 | "</span>).parseU64;..<span. |
| 6bd40 | 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 |
| 6bd60 | 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 70 61 6e 3e 28 73 74 | lass="tok-fn">doAThing</span>(st |
| 6bd80 | 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 22 3e 75 38 3c 2f | r:.[]<span.class="tok-type">u8</ |
| 6bda0 | 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 |
| 6bdc0 | 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 |
| 6bde0 | 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 3c 73 70 61 | k-kw">const</span>.number.=.<spa |
| 6be00 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 70 61 72 73 | n.class="tok-kw">try</span>.pars |
| 6be20 | 65 55 36 34 28 73 74 72 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | eU64(str,.<span.class="tok-numbe |
| 6be40 | 72 22 3e 31 30 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 5f 20 3d 20 6e 75 6d 62 65 72 3b 20 3c | r">10</span>);....._.=.number;.< |
| 6be60 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 2e 2e 2e 3c | span.class="tok-comment">//....< |
| 6be80 | 2f 73 70 61 6e 3e 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a | /span>.}</code></pre></figure>.. |
| 6bea0 | 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 | ......<p>.......<code><span.clas |
| 6bec0 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 65 76 61 | s="tok-kw">try</span></code>.eva |
| 6bee0 | 6c 75 61 74 65 73 20 61 6e 20 65 72 72 6f 72 20 75 6e 69 6f 6e 20 65 78 70 72 65 73 73 69 6f 6e | luates.an.error.union.expression |
| 6bf00 | 2e 20 49 66 20 69 74 20 69 73 20 61 6e 20 65 72 72 6f 72 2c 20 69 74 20 72 65 74 75 72 6e 73 0a | ..If.it.is.an.error,.it.returns. |
| 6bf20 | 20 20 20 20 20 20 66 72 6f 6d 20 74 68 65 20 63 75 72 72 65 6e 74 20 66 75 6e 63 74 69 6f 6e 20 | ......from.the.current.function. |
| 6bf40 | 77 69 74 68 20 74 68 65 20 73 61 6d 65 20 65 72 72 6f 72 2e 20 4f 74 68 65 72 77 69 73 65 2c 20 | with.the.same.error..Otherwise,. |
| 6bf60 | 74 68 65 20 65 78 70 72 65 73 73 69 6f 6e 20 72 65 73 75 6c 74 73 20 69 6e 0a 20 20 20 20 20 20 | the.expression.results.in....... |
| 6bf80 | 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 3c 2f 70 3e 0a | the.unwrapped.value........</p>. |
| 6bfa0 | 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 20 20 4d 61 79 62 65 20 79 | .............<p>.........Maybe.y |
| 6bfc0 | 6f 75 20 6b 6e 6f 77 20 77 69 74 68 20 63 6f 6d 70 6c 65 74 65 20 63 65 72 74 61 69 6e 74 79 20 | ou.know.with.complete.certainty. |
| 6bfe0 | 74 68 61 74 20 61 6e 20 65 78 70 72 65 73 73 69 6f 6e 20 77 69 6c 6c 20 6e 65 76 65 72 20 62 65 | that.an.expression.will.never.be |
| 6c000 | 20 61 6e 20 65 72 72 6f 72 2e 0a 20 20 20 20 20 20 20 20 49 6e 20 74 68 69 73 20 63 61 73 65 20 | .an.error..........In.this.case. |
| 6c020 | 79 6f 75 20 63 61 6e 20 64 6f 20 74 68 69 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 | you.can.do.this:.......</p>..... |
| 6c040 | 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 6f 6e | ..<code><span.class="tok-kw">con |
| 6c060 | 73 74 3c 2f 73 70 61 6e 3e 20 6e 75 6d 62 65 72 20 3d 20 70 61 72 73 65 55 36 34 28 3c 73 70 61 | st</span>.number.=.parseU64(<spa |
| 6c080 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 31 32 33 34 26 71 75 6f | n.class="tok-str">"1234&quo |
| 6c0a0 | 74 3b 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | t;</span>,.<span.class="tok-numb |
| 6c0c0 | 65 72 22 3e 31 30 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | er">10</span>).<span.class="tok- |
| 6c0e0 | 6b 77 22 3e 63 61 74 63 68 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | kw">catch</span>.<span.class="to |
| 6c100 | 6b 2d 6b 77 22 3e 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 3b 3c 2f 63 6f 64 65 3e | k-kw">unreachable</span>;</code> |
| 6c120 | 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 48 65 72 65 20 77 65 20 6b 6e 6f 77 20 66 6f | .......<p>.......Here.we.know.fo |
| 6c140 | 72 20 73 75 72 65 20 74 68 61 74 20 22 31 32 33 34 22 20 77 69 6c 6c 20 70 61 72 73 65 20 73 75 | r.sure.that."1234".will.parse.su |
| 6c160 | 63 63 65 73 73 66 75 6c 6c 79 2e 20 53 6f 20 77 65 20 70 75 74 20 74 68 65 0a 20 20 20 20 20 20 | ccessfully..So.we.put.the....... |
| 6c180 | 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 72 65 61 | <code><span.class="tok-kw">unrea |
| 6c1a0 | 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 76 61 6c 75 65 20 6f 6e 20 74 68 | chable</span></code>.value.on.th |
| 6c1c0 | 65 20 72 69 67 68 74 20 68 61 6e 64 20 73 69 64 65 2e 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c | e.right.hand.side........<code>< |
| 6c1e0 | 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< |
| 6c200 | 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 69 6e 76 6f 6b 65 73 20 73 61 66 65 74 79 2d 63 68 65 | /span></code>.invokes.safety-che |
| 6c220 | 63 6b 65 64 20 3c 61 20 68 72 65 66 3d 22 23 49 6c 6c 65 67 61 6c 2d 42 65 68 61 76 69 6f 72 22 | cked.<a.href="#Illegal-Behavior" |
| 6c240 | 3e 49 6c 6c 65 67 61 6c 20 42 65 68 61 76 69 6f 72 3c 2f 61 3e 2c 20 73 6f 0a 20 20 20 20 20 20 | >Illegal.Behavior</a>,.so....... |
| 6c260 | 69 6e 20 3c 61 20 68 72 65 66 3d 22 23 44 65 62 75 67 22 3e 44 65 62 75 67 3c 2f 61 3e 20 61 6e | in.<a.href="#Debug">Debug</a>.an |
| 6c280 | 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 73 65 | d.<a.href="#ReleaseSafe">Release |
| 6c2a0 | 53 61 66 65 3c 2f 61 3e 2c 20 74 72 69 67 67 65 72 73 20 61 20 73 61 66 65 74 79 20 70 61 6e 69 | Safe</a>,.triggers.a.safety.pani |
| 6c2c0 | 63 20 62 79 20 64 65 66 61 75 6c 74 2e 20 53 6f 2c 20 77 68 69 6c 65 0a 20 20 20 20 20 20 77 65 | c.by.default..So,.while.......we |
| 6c2e0 | 27 72 65 20 64 65 62 75 67 67 69 6e 67 20 74 68 65 20 61 70 70 6c 69 63 61 74 69 6f 6e 2c 20 69 | 're.debugging.the.application,.i |
| 6c300 | 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 70 72 69 73 65 20 | f.there.<em>was</em>.a.surprise. |
| 6c320 | 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 6e 0a 20 20 20 20 | error.here,.the.application..... |
| 6c340 | 20 20 77 6f 75 6c 64 20 63 72 61 73 68 20 61 70 70 72 6f 70 72 69 61 74 65 6c 79 2e 0a 20 20 20 | ..would.crash.appropriately..... |
| 6c360 | 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 6d 61 79 20 | ...</p>.......<p>.......You.may. |
| 6c380 | 77 61 6e 74 20 74 6f 20 74 61 6b 65 20 61 20 64 69 66 66 65 72 65 6e 74 20 61 63 74 69 6f 6e 20 | want.to.take.a.different.action. |
| 6c3a0 | 66 6f 72 20 65 76 65 72 79 20 73 69 74 75 61 74 69 6f 6e 2e 20 46 6f 72 20 74 68 61 74 2c 20 77 | for.every.situation..For.that,.w |
| 6c3c0 | 65 20 63 6f 6d 62 69 6e 65 0a 20 20 20 20 20 20 74 68 65 20 3c 61 20 68 72 65 66 3d 22 23 69 66 | e.combine.......the.<a.href="#if |
| 6c3e0 | 22 3e 69 66 3c 2f 61 3e 20 61 6e 64 20 3c 61 20 68 72 65 66 3d 22 23 73 77 69 74 63 68 22 3e 73 | ">if</a>.and.<a.href="#switch">s |
| 6c400 | 77 69 74 63 68 3c 2f 61 3e 20 65 78 70 72 65 73 73 69 6f 6e 3a 0a 20 20 20 20 20 20 3c 2f 70 3e | witch</a>.expression:.......</p> |
| 6c420 | 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 |
| 6c440 | 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 68 61 | ="zig-cap"><cite.class="file">ha |
| 6c460 | 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 69 67 3c 2f 63 69 | ndle_all_error_scenarios.zig</ci |
| 6c480 | 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 |
| 6c4a0 | 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. |
| 6c4c0 | 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 70 61 6e 3e 28 73 | class="tok-fn">doAThing</span>(s |
| 6c4e0 | 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 22 3e 75 38 3c | tr:.[]<span.class="tok-type">u8< |
| 6c500 | 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 | /span>).<span.class="tok-type">v |
| 6c520 | 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 |
| 6c540 | 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 73 74 72 2c 20 3c | k-kw">if</span>.(parseU64(str,.< |
| 6c560 | 73 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 |
| 6c580 | 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 6f 6d 65 74 68 69 | >)).|number|.{.........doSomethi |
| 6c5a0 | 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 7d 20 3c 73 70 61 | ngWithNumber(number);.....}.<spa |
| 6c5c0 | 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 |
| 6c5e0 | 72 7c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 77 69 74 63 68 3c 2f | r|.<span.class="tok-kw">switch</ |
| 6c600 | 73 70 61 6e 3e 20 28 65 72 72 29 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | span>.(err).{.........<span.clas |
| 6c620 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 4f 76 65 72 66 6c 6f 77 | s="tok-kw">error</span>.Overflow |
| 6c640 | 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 |
| 6c660 | 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 76 65 72 66 6c 6f | ="tok-comment">//.handle.overflo |
| 6c680 | 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 20 20 20 20 20 3c | w...</span>.........},.........< |
| 6c6a0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 77 65 20 70 | span.class="tok-comment">//.we.p |
| 6c6c0 | 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 6e 27 74 20 68 61 | romise.that.InvalidChar.won't.ha |
| 6c6e0 | 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 64 65 20 69 66 20 | ppen.(or.crash.in.debug.mode.if. |
| 6c700 | 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 70 61 6e 20 63 6c | it.does)</span>.........<span.cl |
| 6c720 | 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 |
| 6c740 | 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 6f 6b 2d 6b 77 22 | dChar.=>.<span.class="tok-kw" |
| 6c760 | 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 3c 2f 63 6f | >unreachable</span>,.....}.}</co |
| 6c780 | 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>.... |
| 6c7a0 | 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 6f 20 68 61 6e 64 | ...Finally,.you.may.want.to.hand |
| 6c7c0 | 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 68 61 74 2c 20 79 | le.only.some.errors..For.that,.y |
| 6c7e0 | 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 65 64 0a 20 20 20 | ou.can.capture.the.unhandled.... |
| 6c800 | 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 61 6e 20 63 6c 61 | ...errors.in.the.<code><span.cla |
| 6c820 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 63 | ss="tok-kw">else</span></code>.c |
| 6c840 | 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 6e 61 72 72 6f 77 | ase,.which.now.contains.a.narrow |
| 6c860 | 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 20 20 20 20 20 3c | er.error.set:.......</p>.......< |
| 6c880 | 66 69 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 |
| 6c8a0 | 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 6c 65 5f 73 6f 6d | p"><cite.class="file">handle_som |
| 6c8c0 | 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 65 3e 3c 2f 66 69 | e_error_scenarios.zig</cite></fi |
| 6c8e0 | 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= |
| 6c900 | 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=" |
| 6c920 | 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 61 6e 3e 28 73 74 | tok-fn">doAnotherThing</span>(st |
| 6c940 | 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 22 3e 75 38 3c 2f | r:.[]<span.class="tok-type">u8</ |
| 6c960 | 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 65 72 72 6f | span>).<span.class="tok-kw">erro |
| 6c980 | 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 6e 20 63 6c 61 73 | r</span>{InvalidChar}!<span.clas |
| 6c9a0 | 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>.{.....< |
| 6c9c0 | 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 70 | span.class="tok-kw">if</span>.(p |
| 6c9e0 | 61 72 73 65 55 36 34 28 73 74 72 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | arseU64(str,.<span.class="tok-nu |
| 6ca00 | 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 7b 0a 20 20 20 | mber">10</span>)).|number|.{.... |
| 6ca20 | 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 6e 75 6d 62 65 | .....doSomethingWithNumber(numbe |
| 6ca40 | 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 6b 77 22 3e 65 | r);.....}.<span.class="tok-kw">e |
| 6ca60 | 6c 73 65 3c 2f 73 70 61 6e 3e 20 7c 65 72 72 7c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | lse</span>.|err|.<span.class="to |
| 6ca80 | 6b 2d 6b 77 22 3e 73 77 69 74 63 68 3c 2f 73 70 61 6e 3e 20 28 65 72 72 29 20 7b 0a 20 20 20 20 | k-kw">switch</span>.(err).{..... |
| 6caa0 | 20 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</ |
| 6cac0 | 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 20 20 20 20 20 20 | span>.Overflow.=>.{.......... |
| 6cae0 | 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">//. |
| 6cb00 | 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 20 20 20 20 20 20 | handle.overflow...</span>....... |
| 6cb20 | 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | ..},.........<span.class="tok-kw |
| 6cb40 | 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 76 65 72 5f 65 72 | ">else</span>.=>.|leftover_er |
| 6cb60 | 72 7c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f | r|.<span.class="tok-kw">return</ |
| 6cb80 | 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 7d 3c 2f 63 6f 64 | span>.leftover_err,.....}.}</cod |
| 6cba0 | 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>..... |
| 6cbc0 | 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 65 20 63 61 70 74 | ..You.must.use.the.variable.capt |
| 6cbe0 | 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 65 65 64 20 74 68 | ure.syntax..If.you.don't.need.th |
| 6cc00 | 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 63 61 70 74 75 72 | e.......variable,.you.can.captur |
| 6cc20 | 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 61 76 6f 69 64 20 | e.with.<code>_</code>.and.avoid. |
| 6cc40 | 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 |
| 6cc60 | 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 0a 20 20 20 20 20 | -kw">switch</span></code>....... |
| 6cc80 | 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. |
| 6cca0 | 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 |
| 6ccc0 | 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 6f 73 2e 7a 69 67 | e">handle_no_error_scenarios.zig |
| 6cce0 | 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>< |
| 6cd00 | 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 |
| 6cd20 | 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 65 72 65 6e 74 54 | pan.class="tok-fn">doADifferentT |
| 6cd40 | 68 69 6e 67 3c 2f 73 70 61 6e 3e 28 73 74 72 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | hing</span>(str:.[]<span.class=" |
| 6cd60 | 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 |
| 6cd80 | 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 |
| 6cda0 | 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 70 61 | pan.class="tok-kw">if</span>.(pa |
| 6cdc0 | 72 73 65 55 36 34 28 73 74 72 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | rseU64(str,.<span.class="tok-num |
| 6cde0 | 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 7b 0a 20 20 20 20 | ber">10</span>)).|number|.{..... |
| 6ce00 | 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 6e 75 6d 62 65 72 | ....doSomethingWithNumber(number |
| 6ce20 | 29 3b 0a 20 20 20 20 7d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c | );.....}.<span.class="tok-kw">el |
| 6ce40 | 73 65 3c 2f 73 70 61 6e 3e 20 7c 5f 7c 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c | se</span>.|_|.{.........<span.cl |
| 6ce60 | 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 20 79 6f 75 27 64 | ass="tok-comment">//.do.as.you'd |
| 6ce80 | 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 3e 3c 2f 70 72 65 | .like</span>.....}.}</code></pre |
| 6cea0 | 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 72 72 64 65 66 65 | ></figure>.......<h4.id="errdefe |
| 6cec0 | 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 3e 65 72 72 64 65 | r"><a.href="#toc-errdefer">errde |
| 6cee0 | 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 3d 22 23 65 72 | fer</a>.<a.class="hdr".href="#er |
| 6cf00 | 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 20 3c 70 3e 0a 20 | rdefer">..</a></h4>........<p>.. |
| 6cf20 | 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 6f 20 65 72 72 6f | .....The.other.component.to.erro |
| 6cf40 | 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 65 6e 74 73 2e 0a | r.handling.is.defer.statements.. |
| 6cf60 | 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 63 6f 6e 64 69 74 | ......In.addition.to.an.uncondit |
| 6cf80 | 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 65 72 3c 2f 61 3e | ional.<a.href="#defer">defer</a> |
| 6cfa0 | 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 73 3d 22 74 6f 6b | ,.Zig.has.<code><span.class="tok |
| 6cfc0 | 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 2c 0a 20 20 20 | -kw">errdefer</span></code>,.... |
| 6cfe0 | 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 65 72 72 65 64 20 | ...which.evaluates.the.deferred. |
| 6d000 | 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 61 74 68 20 69 66 | expression.on.block.exit.path.if |
| 6d020 | 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 63 74 69 6f 6e 20 | .and.only.if.......the.function. |
| 6d040 | 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 6d 20 74 68 65 20 | returned.with.an.error.from.the. |
| 6d060 | 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 3e 0a 20 20 20 20 | block........</p>.......<p>..... |
| 6d080 | 20 20 45 78 61 6d 70 6c 65 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 | ..Example:.......</p>.......<fig |
| 6d0a0 | 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"> |
| 6d0c0 | 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 72 5f 65 78 61 6d | <cite.class="file">errdefer_exam |
| 6d0e0 | 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 3e 3c 70 72 65 3e | ple.zig</cite></figcaption><pre> |
| 6d100 | 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 | <code><span.class="tok-kw">fn</s |
| 6d120 | 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 61 74 65 | pan>.<span.class="tok-fn">create |
| 6d140 | 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 61 73 73 3d 22 74 | Foo</span>(param:.<span.class="t |
| 6d160 | 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 7b 0a 20 20 20 20 | ok-type">i32</span>).!Foo.{..... |
| 6d180 | 3c 73 70 61 6e 20 63 6c 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 |
| 6d1a0 | 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 77 22 3e 74 72 79 | >.foo.=.<span.class="tok-kw">try |
| 6d1c0 | 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 3b 0a 20 20 20 20 | </span>.tryToAllocateFoo();..... |
| 6d1e0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 6e 6f 77 | <span.class="tok-comment">//.now |
| 6d200 | 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 20 6e 65 65 64 20 | .we.have.allocated.foo..we.need. |
| 6d220 | 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 20 66 61 69 6c 73 | to.free.it.if.the.function.fails |
| 6d240 | 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f | .</span>.....<span.class="tok-co |
| 6d260 | 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 65 74 75 72 6e 20 | mment">//.but.we.want.to.return. |
| 6d280 | 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 73 2e 3c 2f 73 70 | it.if.the.function.succeeds.</sp |
| 6d2a0 | 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 65 72 72 | an>.....<span.class="tok-kw">err |
| 6d2c0 | 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 28 66 6f 6f 29 3b | defer</span>.deallocateFoo(foo); |
| 6d2e0 | 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 |
| 6d300 | 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 54 6d 70 42 75 66 | </span>.tmp_buf.=.allocateTmpBuf |
| 6d320 | 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 3e 6f 72 65 6c 73 | fer().<span.class="tok-kw">orels |
| 6d340 | 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 72 65 | e</span>.<span.class="tok-kw">re |
| 6d360 | 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" |
| 6d380 | 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 0a 20 20 20 20 3c | >error</span>.OutOfMemory;.....< |
| 6d3a0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 74 6d 70 5f | span.class="tok-comment">//.tmp_ |
| 6d3c0 | 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 65 73 6f 75 72 63 | buf.is.truly.a.temporary.resourc |
| 6d3e0 | 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 20 63 6c 65 61 6e | e,.and.we.for.sure.want.to.clean |
| 6d400 | 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 61 73 73 3d 22 74 | .it.up</span>.....<span.class="t |
| 6d420 | 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 20 62 6c 6f 63 6b | ok-comment">//.before.this.block |
| 6d440 | 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 73 70 61 6e 20 63 | .leaves.scope</span>.....<span.c |
| 6d460 | 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 64 65 61 6c 6c | lass="tok-kw">defer</span>.deall |
| 6d480 | 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 20 20 20 20 3c 73 | ocateTmpBuffer(tmp_buf);......<s |
| 6d4a0 | 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 70 61 | pan.class="tok-kw">if</span>.(pa |
| 6d4c0 | 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 6e 75 6d 62 65 72 | ram.>.<span.class="tok-number |
| 6d4e0 | 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 3d 22 74 6f 6b 2d | ">1337</span>).<span.class="tok- |
| 6d500 | 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 |
| 6d520 | 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 61 6d | ok-kw">error</span>.InvalidParam |
| 6d540 | 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" |
| 6d560 | 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 20 6e 6f 74 20 72 | >//.here.the.errdefer.will.not.r |
| 6d580 | 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 75 63 63 65 73 73 | un.since.we're.returning.success |
| 6d5a0 | 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 0a 20 20 20 20 3c | .from.the.function.</span>.....< |
| 6d5c0 | 73 70 61 6e 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 | span.class="tok-comment">//.but. |
| 6d5e0 | 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 0a 20 20 20 20 3c | the.defer.will.run!</span>.....< |
| 6d600 | 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 |
| 6d620 | 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 75 72 65 3e 0a 20 | >.foo;.}</code></pre></figure>.. |
| 6d640 | 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 69 6e 67 20 61 62 | .....<p>.......The.neat.thing.ab |
| 6d660 | 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 6f 62 75 73 74 20 | out.this.is.that.you.get.robust. |
| 6d680 | 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 20 20 20 74 68 65 | error.handling.without.......the |
| 6d6a0 | 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 76 65 72 68 65 61 | .verbosity.and.cognitive.overhea |
| 6d6c0 | 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 76 65 72 79 20 65 | d.of.trying.to.make.sure.every.e |
| 6d6e0 | 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 20 54 68 65 20 64 | xit.path.......is.covered..The.d |
| 6d700 | 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 20 64 69 72 65 63 | eallocation.code.is.always.direc |
| 6d720 | 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 6f 6e 20 63 6f 64 | tly.following.the.allocation.cod |
| 6d740 | 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 |
| 6d760 | 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 |
| 6d780 | 64 65 66 65 72 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 73 74 61 74 65 6d 65 6e 74 20 63 61 | defer</span></code>.statement.ca |
| 6d7a0 | 6e 20 6f 70 74 69 6f 6e 61 6c 6c 79 20 63 61 70 74 75 72 65 20 74 68 65 20 65 72 72 6f 72 3a 0a | n.optionally.capture.the.error:. |
| 6d7c0 | 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 |
| 6d7e0 | 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 |
| 6d800 | 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 65 72 72 64 65 66 65 72 5f 63 61 70 74 75 72 65 2e 7a 69 | ="file">test_errdefer_capture.zi |
| 6d820 | 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> |
| 6d840 | 3c 73 70 61 6e 20 63 6c 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 |
| 6d860 | 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 |
| 6d880 | 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 |
| 6d8a0 | 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>);. |
| 6d8c0 | 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>. |
| 6d8e0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 63 61 70 74 75 72 65 45 72 72 6f | <span.class="tok-fn">captureErro |
| 6d900 | 72 3c 2f 73 70 61 6e 3e 28 63 61 70 74 75 72 65 64 3a 20 2a 3f 3c 73 70 61 6e 20 63 6c 61 73 73 | r</span>(captured:.*?<span.class |
| 6d920 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 61 6e 79 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 29 20 21 3c 73 | ="tok-type">anyerror</span>).!<s |
| 6d940 | 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> |
| 6d960 | 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 65 72 72 64 | .{.....<span.class="tok-kw">errd |
| 6d980 | 65 66 65 72 3c 2f 73 70 61 6e 3e 20 7c 65 72 72 7c 20 7b 0a 20 20 20 20 20 20 20 20 63 61 70 74 | efer</span>.|err|.{.........capt |
| 6d9a0 | 75 72 65 64 2e 2a 20 3d 20 65 72 72 3b 0a 20 20 20 20 7d 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | ured.*.=.err;.....}.....<span.cl |
| 6d9c0 | 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 |
| 6d9e0 | 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 47 65 6e | .class="tok-kw">error</span>.Gen |
| 6da00 | 65 72 61 6c 46 61 69 6c 75 72 65 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | eralFailure;.}..<span.class="tok |
| 6da20 | 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 |
| 6da40 | 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 65 72 72 64 65 66 65 72 20 63 61 70 74 75 72 65 26 71 75 | k-str">"errdefer.capture&qu |
| 6da60 | 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 |
| 6da80 | 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 63 61 70 74 75 72 65 64 3a 20 3f 3c 73 70 61 | k-kw">var</span>.captured:.?<spa |
| 6daa0 | 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 |
| 6dac0 | 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 |
| 6dae0 | 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 |
| 6db00 | 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 63 61 70 74 75 72 65 45 72 72 6f 72 28 26 61 6d 70 3b | w">if</span>.(captureError(& |
| 6db20 | 63 61 70 74 75 72 65 64 29 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | captured)).<span.class="tok-kw"> |
| 6db40 | 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | unreachable</span>.<span.class=" |
| 6db60 | 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 20 20 20 20 | tok-kw">else</span>.|err|.{..... |
| 6db80 | 20 20 20 20 3c 73 70 61 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 |
| 6dba0 | 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 3c 73 70 61 | an>.std.testing.expectEqual(<spa |
| 6dbc0 | 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 47 65 | n.class="tok-kw">error</span>.Ge |
| 6dbe0 | 6e 65 72 61 6c 46 61 69 6c 75 72 65 2c 20 63 61 70 74 75 72 65 64 2e 3f 29 3b 0a 20 20 20 20 20 | neralFailure,.captured.?);...... |
| 6dc00 | 20 20 20 3c 73 70 61 6e 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 |
| 6dc20 | 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 3c 73 70 61 6e | n>.std.testing.expectEqual(<span |
| 6dc40 | 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 47 65 6e | .class="tok-kw">error</span>.Gen |
| 6dc60 | 65 72 61 6c 46 61 69 6c 75 72 65 2c 20 65 72 72 29 3b 0a 20 20 20 20 7d 0a 7d 3c 2f 63 6f 64 65 | eralFailure,.err);.....}.}</code |
| 6dc80 | 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 |
| 6dca0 | 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 |
| 6dcc0 | 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 |
| 6dce0 | 73 74 20 74 65 73 74 5f 65 72 72 64 65 66 65 72 5f 63 61 70 74 75 72 65 2e 7a 69 67 3c 2f 6b 62 | st.test_errdefer_capture.zig</kb |
| 6dd00 | 64 3e 0a 31 2f 31 20 74 65 73 74 5f 65 72 72 64 65 66 65 72 5f 63 61 70 74 75 72 65 2e 74 65 73 | d>.1/1.test_errdefer_capture.tes |
| 6dd20 | 74 2e 65 72 72 64 65 66 65 72 20 63 61 70 74 75 72 65 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 | t.errdefer.capture...OK.All.1.te |
| 6dd40 | 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 |
| 6dd60 | 65 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 41 20 63 6f 75 70 | e>..............<p>.......A.coup |
| 6dd80 | 6c 65 20 6f 66 20 6f 74 68 65 72 20 74 69 64 62 69 74 73 20 61 62 6f 75 74 20 65 72 72 6f 72 20 | le.of.other.tidbits.about.error. |
| 6dda0 | 68 61 6e 64 6c 69 6e 67 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a | handling:.......</p>.......<ul>. |
| 6ddc0 | 20 20 20 20 20 20 20 20 3c 6c 69 3e 54 68 65 73 65 20 70 72 69 6d 69 74 69 76 65 73 20 67 69 76 | ........<li>These.primitives.giv |
| 6dde0 | 65 20 65 6e 6f 75 67 68 20 65 78 70 72 65 73 73 69 76 65 6e 65 73 73 20 74 68 61 74 20 69 74 27 | e.enough.expressiveness.that.it' |
| 6de00 | 73 20 63 6f 6d 70 6c 65 74 65 6c 79 20 70 72 61 63 74 69 63 61 6c 0a 20 20 20 20 20 20 20 20 20 | s.completely.practical.......... |
| 6de20 | 20 20 20 74 6f 20 68 61 76 65 20 66 61 69 6c 69 6e 67 20 74 6f 20 63 68 65 63 6b 20 66 6f 72 20 | ...to.have.failing.to.check.for. |
| 6de40 | 61 6e 20 65 72 72 6f 72 20 62 65 20 61 20 63 6f 6d 70 69 6c 65 20 65 72 72 6f 72 2e 20 49 66 20 | an.error.be.a.compile.error..If. |
| 6de60 | 79 6f 75 20 72 65 61 6c 6c 79 20 77 61 6e 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 74 6f 20 69 | you.really.want.............to.i |
| 6de80 | 67 6e 6f 72 65 20 74 68 65 20 65 72 72 6f 72 2c 20 79 6f 75 20 63 61 6e 20 61 64 64 20 3c 63 6f | gnore.the.error,.you.can.add.<co |
| 6dea0 | 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 61 74 63 68 3c 2f 73 | de><span.class="tok-kw">catch</s |
| 6dec0 | 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 |
| 6dee0 | 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 61 6e 64 0a 20 20 20 20 20 20 20 20 | hable</span></code>.and......... |
| 6df00 | 20 20 20 20 67 65 74 20 74 68 65 20 61 64 64 65 64 20 62 65 6e 65 66 69 74 20 6f 66 20 63 72 61 | ....get.the.added.benefit.of.cra |
| 6df20 | 73 68 69 6e 67 20 69 6e 20 44 65 62 75 67 20 61 6e 64 20 52 65 6c 65 61 73 65 53 61 66 65 20 6d | shing.in.Debug.and.ReleaseSafe.m |
| 6df40 | 6f 64 65 73 20 69 66 20 79 6f 75 72 20 61 73 73 75 6d 70 74 69 6f 6e 20 77 61 73 20 77 72 6f 6e | odes.if.your.assumption.was.wron |
| 6df60 | 67 2e 0a 20 20 20 20 20 20 20 20 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 0a 20 20 | g..........</li>.........<li>... |
| 6df80 | 20 20 20 20 20 20 20 20 53 69 6e 63 65 20 5a 69 67 20 75 6e 64 65 72 73 74 61 6e 64 73 20 65 72 | ........Since.Zig.understands.er |
| 6dfa0 | 72 6f 72 20 74 79 70 65 73 2c 20 69 74 20 63 61 6e 20 70 72 65 2d 77 65 69 67 68 74 20 62 72 61 | ror.types,.it.can.pre-weight.bra |
| 6dfc0 | 6e 63 68 65 73 20 69 6e 20 66 61 76 6f 72 20 6f 66 0a 20 20 20 20 20 20 20 20 20 20 65 72 72 6f | nches.in.favor.of...........erro |
| 6dfe0 | 72 73 20 6e 6f 74 20 6f 63 63 75 72 72 69 6e 67 2e 20 4a 75 73 74 20 61 20 73 6d 61 6c 6c 20 6f | rs.not.occurring..Just.a.small.o |
| 6e000 | 70 74 69 6d 69 7a 61 74 69 6f 6e 20 62 65 6e 65 66 69 74 20 74 68 61 74 20 69 73 20 6e 6f 74 20 | ptimization.benefit.that.is.not. |
| 6e020 | 61 76 61 69 6c 61 62 6c 65 0a 20 20 20 20 20 20 20 20 20 20 69 6e 20 6f 74 68 65 72 20 6c 61 6e | available...........in.other.lan |
| 6e040 | 67 75 61 67 65 73 2e 0a 20 20 20 20 20 20 20 20 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c | guages..........</li>.......</ul |
| 6e060 | 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 |
| 6e080 | 3e 3c 61 20 68 72 65 66 3d 22 23 64 65 66 65 72 22 3e 64 65 66 65 72 3c 2f 61 3e 3c 2f 6c 69 3e | ><a.href="#defer">defer</a></li> |
| 6e0a0 | 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 6c 69 3e 0a 3c | .<li><a.href="#if">if</a></li>.< |
| 6e0c0 | 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 73 77 69 74 63 68 22 3e 73 77 69 74 63 68 3c 2f 61 3e 3c | li><a.href="#switch">switch</a>< |
| 6e0e0 | 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 0a 20 20 20 20 20 20 3c 70 3e 41 6e 20 65 72 72 6f 72 20 75 | /li>.</ul>.........<p>An.error.u |
| 6e100 | 6e 69 6f 6e 20 69 73 20 63 72 65 61 74 65 64 20 77 69 74 68 20 74 68 65 20 3c 63 6f 64 65 3e 21 | nion.is.created.with.the.<code>! |
| 6e120 | 3c 2f 63 6f 64 65 3e 20 62 69 6e 61 72 79 20 6f 70 65 72 61 74 6f 72 2e 0a 20 20 20 20 20 20 59 | </code>.binary.operator........Y |
| 6e140 | 6f 75 20 63 61 6e 20 75 73 65 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 72 65 66 6c 65 63 74 69 | ou.can.use.compile-time.reflecti |
| 6e160 | 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 65 20 6f 66 20 61 | on.to.access.the.child.type.of.a |
| 6e180 | 6e 20 65 72 72 6f 72 20 75 6e 69 6f 6e 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 | n.error.union:</p>.......<figure |
| 6e1a0 | 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 |
| 6e1c0 | 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 65 72 72 6f 72 5f 75 6e 69 6f 6e | te.class="file">test_error_union |
| 6e1e0 | 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 |
| 6e200 | 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 |
| 6e220 | 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 |
| 6e240 | 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 |
| 6e260 | 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 |
| 6e280 | 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 |
| 6e2a0 | 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 |
| 6e2c0 | 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 65 72 72 6f 72 20 75 6e 69 6f 6e 26 71 | ss="tok-str">"error.union&q |
| 6e2e0 | 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 |
| 6e300 | 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 66 6f 6f 3a 20 3c 73 70 61 6e 20 63 6c 61 | ok-kw">var</span>.foo:.<span.cla |
| 6e320 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 61 6e 79 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 21 3c 73 | ss="tok-type">anyerror</span>!<s |
| 6e340 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 | pan.class="tok-type">i32</span>. |
| 6e360 | 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 75 6e 64 65 66 69 6e | =.<span.class="tok-null">undefin |
| 6e380 | 65 64 3c 2f 73 70 61 6e 3e 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ed</span>;......<span.class="tok |
| 6e3a0 | 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 74 | -comment">//.Coerce.from.child.t |
| 6e3c0 | 79 70 65 20 6f 66 20 61 6e 20 65 72 72 6f 72 20 75 6e 69 6f 6e 3a 3c 2f 73 70 61 6e 3e 0a 20 20 | ype.of.an.error.union:</span>... |
| 6e3e0 | 20 20 66 6f 6f 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 | ..foo.=.<span.class="tok-number" |
| 6e400 | 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | >1234</span>;......<span.class=" |
| 6e420 | 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 43 6f 65 72 63 65 20 66 72 6f 6d 20 61 6e 20 65 | tok-comment">//.Coerce.from.an.e |
| 6e440 | 72 72 6f 72 20 73 65 74 3a 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 66 6f 6f 20 3d 20 3c 73 70 61 6e | rror.set:</span>.....foo.=.<span |
| 6e460 | 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 6f 6d | .class="tok-kw">error</span>.Som |
| 6e480 | 65 45 72 72 6f 72 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f | eError;......<span.class="tok-co |
| 6e4a0 | 6d 6d 65 6e 74 22 3e 2f 2f 20 55 73 65 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 72 65 66 6c 65 | mment">//.Use.compile-time.refle |
| 6e4c0 | 63 74 69 6f 6e 20 74 6f 20 61 63 63 65 73 73 20 74 68 65 20 70 61 79 6c 6f 61 64 20 74 79 70 65 | ction.to.access.the.payload.type |
| 6e4e0 | 20 6f 66 20 61 6e 20 65 72 72 6f 72 20 75 6e 69 6f 6e 3a 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c | .of.an.error.union:</span>.....< |
| 6e500 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 3c | span.class="tok-kw">try</span>.< |
| 6e520 | 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 |
| 6e540 | 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 |
| 6e560 | 74 69 6e 22 3e 40 74 79 70 65 49 6e 66 6f 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 | tin">@typeInfo</span>(<span.clas |
| 6e580 | 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 66 | s="tok-builtin">@TypeOf</span>(f |
| 6e5a0 | 6f 6f 29 29 2e 65 72 72 6f 72 5f 75 6e 69 6f 6e 2e 70 61 79 6c 6f 61 64 20 3d 3d 20 3c 73 70 61 | oo)).error_union.payload.==.<spa |
| 6e5c0 | 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 0a | n.class="tok-type">i32</span>);. |
| 6e5e0 | 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">/ |
| 6e600 | 2f 20 55 73 65 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 72 65 66 6c 65 63 74 69 6f 6e 20 74 6f | /.Use.compile-time.reflection.to |
| 6e620 | 20 61 63 63 65 73 73 20 74 68 65 20 65 72 72 6f 72 20 73 65 74 20 74 79 70 65 20 6f 66 20 61 6e | .access.the.error.set.type.of.an |
| 6e640 | 20 65 72 72 6f 72 20 75 6e 69 6f 6e 3a 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 | .error.union:</span>.....<span.c |
| 6e660 | 6c 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 70 61 6e 20 63 | lass="tok-kw">try</span>.<span.c |
| 6e680 | 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 65 78 | lass="tok-kw">comptime</span>.ex |
| 6e6a0 | 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">@ |
| 6e6c0 | 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 |
| 6e6e0 | 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 66 6f 6f 29 29 2e 65 | -builtin">@TypeOf</span>(foo)).e |
| 6e700 | 72 72 6f 72 5f 75 6e 69 6f 6e 2e 65 72 72 6f 72 5f 73 65 74 20 3d 3d 20 3c 73 70 61 6e 20 63 6c | rror_union.error_set.==.<span.cl |
| 6e720 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 61 6e 79 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 29 3b | ass="tok-type">anyerror</span>); |
| 6e740 | 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> |
| 6e760 | 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 |
| 6e780 | 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 |
| 6e7a0 | 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 65 72 72 6f 72 5f 75 6e 69 6f 6e 2e 7a 69 67 3c | d>zig.test.test_error_union.zig< |
| 6e7c0 | 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 65 72 72 6f 72 5f 75 6e 69 6f 6e 2e 74 65 73 74 2e | /kbd>.1/1.test_error_union.test. |
| 6e7e0 | 65 72 72 6f 72 20 75 6e 69 6f 6e 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 | error.union...OK.All.1.tests.pas |
| 6e800 | 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>..... |
| 6e820 | 20 20 20 3c 68 34 20 69 64 3d 22 4d 65 72 67 69 6e 67 2d 45 72 72 6f 72 2d 53 65 74 73 22 3e 3c | ...<h4.id="Merging-Error-Sets">< |
| 6e840 | 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 4d 65 72 67 69 6e 67 2d 45 72 72 6f 72 2d 53 65 74 73 22 | a.href="#toc-Merging-Error-Sets" |
| 6e860 | 3e 4d 65 72 67 69 6e 67 20 45 72 72 6f 72 20 53 65 74 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 | >Merging.Error.Sets</a>.<a.class |
| 6e880 | 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 4d 65 72 67 69 6e 67 2d 45 72 72 6f 72 2d 53 65 74 73 | ="hdr".href="#Merging-Error-Sets |
| 6e8a0 | 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 55 | ">..</a></h4>........<p>.......U |
| 6e8c0 | 73 65 20 74 68 65 20 3c 63 6f 64 65 3e 7c 7c 3c 2f 63 6f 64 65 3e 20 6f 70 65 72 61 74 6f 72 20 | se.the.<code>||</code>.operator. |
| 6e8e0 | 74 6f 20 6d 65 72 67 65 20 74 77 6f 20 65 72 72 6f 72 20 73 65 74 73 20 74 6f 67 65 74 68 65 72 | to.merge.two.error.sets.together |
| 6e900 | 2e 20 54 68 65 20 72 65 73 75 6c 74 69 6e 67 0a 20 20 20 20 20 20 65 72 72 6f 72 20 73 65 74 20 | ..The.resulting.......error.set. |
| 6e920 | 63 6f 6e 74 61 69 6e 73 20 74 68 65 20 65 72 72 6f 72 73 20 6f 66 20 62 6f 74 68 20 65 72 72 6f | contains.the.errors.of.both.erro |
| 6e940 | 72 20 73 65 74 73 2e 20 44 6f 63 20 63 6f 6d 6d 65 6e 74 73 20 66 72 6f 6d 20 74 68 65 20 6c 65 | r.sets..Doc.comments.from.the.le |
| 6e960 | 66 74 2d 68 61 6e 64 0a 20 20 20 20 20 20 73 69 64 65 20 6f 76 65 72 72 69 64 65 20 64 6f 63 20 | ft-hand.......side.override.doc. |
| 6e980 | 63 6f 6d 6d 65 6e 74 73 20 66 72 6f 6d 20 74 68 65 20 72 69 67 68 74 2d 68 61 6e 64 20 73 69 64 | comments.from.the.right-hand.sid |
| 6e9a0 | 65 2e 20 49 6e 20 74 68 69 73 20 65 78 61 6d 70 6c 65 2c 20 74 68 65 20 64 6f 63 0a 20 20 20 20 | e..In.this.example,.the.doc..... |
| 6e9c0 | 20 20 63 6f 6d 6d 65 6e 74 73 20 66 6f 72 20 3c 63 6f 64 65 3e 43 2e 50 61 74 68 4e 6f 74 46 6f | ..comments.for.<code>C.PathNotFo |
| 6e9e0 | 75 6e 64 3c 2f 63 6f 64 65 3e 20 69 73 20 3c 63 6f 64 65 3e 41 20 64 6f 63 20 63 6f 6d 6d 65 6e | und</code>.is.<code>A.doc.commen |
| 6ea00 | 74 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 | t</code>........</p>.......<p>.. |
| 6ea20 | 20 20 20 20 20 54 68 69 73 20 69 73 20 65 73 70 65 63 69 61 6c 6c 79 20 75 73 65 66 75 6c 20 66 | .....This.is.especially.useful.f |
| 6ea40 | 6f 72 20 66 75 6e 63 74 69 6f 6e 73 20 77 68 69 63 68 20 72 65 74 75 72 6e 20 64 69 66 66 65 72 | or.functions.which.return.differ |
| 6ea60 | 65 6e 74 20 65 72 72 6f 72 20 73 65 74 73 20 64 65 70 65 6e 64 69 6e 67 0a 20 20 20 20 20 20 6f | ent.error.sets.depending.......o |
| 6ea80 | 6e 20 3c 61 20 68 72 65 66 3d 22 23 63 6f 6d 70 74 69 6d 65 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f | n.<a.href="#comptime">comptime</ |
| 6eaa0 | 61 3e 20 62 72 61 6e 63 68 65 73 2e 20 46 6f 72 20 65 78 61 6d 70 6c 65 2c 20 74 68 65 20 5a 69 | a>.branches..For.example,.the.Zi |
| 6eac0 | 67 20 73 74 61 6e 64 61 72 64 20 6c 69 62 72 61 72 79 20 75 73 65 73 0a 20 20 20 20 20 20 3c 63 | g.standard.library.uses.......<c |
| 6eae0 | 6f 64 65 3e 4c 69 6e 75 78 46 69 6c 65 4f 70 65 6e 45 72 72 6f 72 20 7c 7c 20 57 69 6e 64 6f 77 | ode>LinuxFileOpenError.||.Window |
| 6eb00 | 73 46 69 6c 65 4f 70 65 6e 45 72 72 6f 72 3c 2f 63 6f 64 65 3e 20 66 6f 72 20 74 68 65 20 65 72 | sFileOpenError</code>.for.the.er |
| 6eb20 | 72 6f 72 20 73 65 74 20 6f 66 20 6f 70 65 6e 69 6e 67 0a 20 20 20 20 20 20 66 69 6c 65 73 2e 0a | ror.set.of.opening.......files.. |
| 6eb40 | 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 |
| 6eb60 | 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 |
| 6eb80 | 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 6d 65 72 67 69 6e 67 5f 65 72 72 6f 72 5f 73 65 74 73 2e | ="file">test_merging_error_sets. |
| 6eba0 | 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 |
| 6ebc0 | 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 |
| 6ebe0 | 61 6e 3e 20 41 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 | an>.A.=.<span.class="tok-kw">err |
| 6ec00 | 6f 72 3c 2f 73 70 61 6e 3e 7b 0a 20 20 20 20 4e 6f 74 44 69 72 2c 0a 0a 20 20 20 20 3c 73 70 61 | or</span>{.....NotDir,......<spa |
| 6ec20 | 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 41 20 64 6f 63 20 | n.class="tok-comment">///.A.doc. |
| 6ec40 | 63 6f 6d 6d 65 6e 74 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 50 61 74 68 4e 6f 74 46 6f 75 6e 64 2c | comment</span>.....PathNotFound, |
| 6ec60 | 0a 7d 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f | .};.<span.class="tok-kw">const</ |
| 6ec80 | 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 65 | span>.B.=.<span.class="tok-kw">e |
| 6eca0 | 72 72 6f 72 3c 2f 73 70 61 6e 3e 7b 0a 20 20 20 20 4f 75 74 4f 66 4d 65 6d 6f 72 79 2c 0a 0a 20 | rror</span>{.....OutOfMemory,... |
| 6ecc0 | 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">/// |
| 6ece0 | 20 42 20 64 6f 63 20 63 6f 6d 6d 65 6e 74 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 50 61 74 68 4e 6f | .B.doc.comment</span>.....PathNo |
| 6ed00 | 74 46 6f 75 6e 64 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | tFound,.};..<span.class="tok-kw" |
| 6ed20 | 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 43 20 3d 20 41 20 7c 7c 20 42 3b 0a 0a 3c 73 70 61 6e | >const</span>.C.=.A.||.B;..<span |
| 6ed40 | 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. |
| 6ed60 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 66 6f 6f 3c 2f 73 70 61 6e 3e 28 29 20 43 21 3c 73 | class="tok-fn">foo</span>().C!<s |
| 6ed80 | 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> |
| 6eda0 | 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 |
| 6edc0 | 72 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 | rn</span>.<span.class="tok-kw">e |
| 6ede0 | 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 4e 6f 74 44 69 72 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 | rror</span>.NotDir;.}..<span.cla |
| 6ee00 | 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 |
| 6ee20 | 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 6d 65 72 67 65 20 65 72 72 6f 72 20 | ass="tok-str">"merge.error. |
| 6ee40 | 73 65 74 73 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | sets"</span>.{.....<span.cl |
| 6ee60 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 66 6f 6f 28 29 29 20 7b | ass="tok-kw">if</span>.(foo()).{ |
| 6ee80 | 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 | .........<span.class="tok-builti |
| 6eea0 | 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 |
| 6eec0 | 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 |
| 6eee0 | 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 |
| 6ef00 | 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 7c 65 72 72 7c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ">else</span>.|err|.<span.class= |
| 6ef20 | 22 74 6f 6b 2d 6b 77 22 3e 73 77 69 74 63 68 3c 2f 73 70 61 6e 3e 20 28 65 72 72 29 20 7b 0a 20 | "tok-kw">switch</span>.(err).{.. |
| 6ef40 | 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f | .......<span.class="tok-kw">erro |
| 6ef60 | 72 3c 2f 73 70 61 6e 3e 2e 4f 75 74 4f 66 4d 65 6d 6f 72 79 20 3d 26 67 74 3b 20 3c 73 70 61 6e | r</span>.OutOfMemory.=>.<span |
| 6ef80 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 70 61 6e 69 63 3c 2f 73 70 61 | .class="tok-builtin">@panic</spa |
| 6efa0 | 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 75 | n>(<span.class="tok-str">"u |
| 6efc0 | 6e 65 78 70 65 63 74 65 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2c 0a 20 20 20 20 20 20 20 | nexpected"</span>),........ |
| 6efe0 | 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 |
| 6f000 | 6e 3e 2e 50 61 74 68 4e 6f 74 46 6f 75 6e 64 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 | n>.PathNotFound.=>.<span.clas |
| 6f020 | 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 70 61 6e 69 63 3c 2f 73 70 61 6e 3e 28 3c 73 | s="tok-builtin">@panic</span>(<s |
| 6f040 | 70 61 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 65 | pan.class="tok-str">"unexpe |
| 6f060 | 63 74 65 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2c 0a 20 20 20 20 20 20 20 20 3c 73 70 61 | cted"</span>),.........<spa |
| 6f080 | 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 4e 6f | n.class="tok-kw">error</span>.No |
| 6f0a0 | 74 44 69 72 20 3d 26 67 74 3b 20 7b 7d 2c 0a 20 20 20 20 7d 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 | tDir.=>.{},.....}.}</code></p |
| 6f0c0 | 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. |
| 6f0e0 | 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 |
| 6f100 | 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 |
| 6f120 | 65 73 74 5f 6d 65 72 67 69 6e 67 5f 65 72 72 6f 72 5f 73 65 74 73 2e 7a 69 67 3c 2f 6b 62 64 3e | est_merging_error_sets.zig</kbd> |
| 6f140 | 0a 31 2f 31 20 74 65 73 74 5f 6d 65 72 67 69 6e 67 5f 65 72 72 6f 72 5f 73 65 74 73 2e 74 65 73 | .1/1.test_merging_error_sets.tes |
| 6f160 | 74 2e 6d 65 72 67 65 20 65 72 72 6f 72 20 73 65 74 73 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 | t.merge.error.sets...OK.All.1.te |
| 6f180 | 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 |
| 6f1a0 | 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 49 6e 66 65 72 72 65 | e>...............<h4.id="Inferre |
| 6f1c0 | 64 2d 45 72 72 6f 72 2d 53 65 74 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 49 6e 66 65 | d-Error-Sets"><a.href="#toc-Infe |
| 6f1e0 | 72 72 65 64 2d 45 72 72 6f 72 2d 53 65 74 73 22 3e 49 6e 66 65 72 72 65 64 20 45 72 72 6f 72 20 | rred-Error-Sets">Inferred.Error. |
| 6f200 | 53 65 74 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 49 | Sets</a>.<a.class="hdr".href="#I |
| 6f220 | 6e 66 65 72 72 65 64 2d 45 72 72 6f 72 2d 53 65 74 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 34 3e 0a | nferred-Error-Sets">..</a></h4>. |
| 6f240 | 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 6d 61 6e 79 20 66 75 | .......<p>.......Because.many.fu |
| 6f260 | 6e 63 74 69 6f 6e 73 20 69 6e 20 5a 69 67 20 72 65 74 75 72 6e 20 61 20 70 6f 73 73 69 62 6c 65 | nctions.in.Zig.return.a.possible |
| 6f280 | 20 65 72 72 6f 72 2c 20 5a 69 67 20 73 75 70 70 6f 72 74 73 20 69 6e 66 65 72 72 69 6e 67 20 74 | .error,.Zig.supports.inferring.t |
| 6f2a0 | 68 65 20 65 72 72 6f 72 20 73 65 74 2e 0a 20 20 20 20 20 20 54 6f 20 69 6e 66 65 72 20 74 68 65 | he.error.set........To.infer.the |
| 6f2c0 | 20 65 72 72 6f 72 20 73 65 74 20 66 6f 72 20 61 20 66 75 6e 63 74 69 6f 6e 2c 20 70 72 65 70 65 | .error.set.for.a.function,.prepe |
| 6f2e0 | 6e 64 20 74 68 65 20 3c 63 6f 64 65 3e 21 3c 2f 63 6f 64 65 3e 20 6f 70 65 72 61 74 6f 72 20 74 | nd.the.<code>!</code>.operator.t |
| 6f300 | 6f 20 74 68 65 20 66 75 6e 63 74 69 6f 6e e2 80 99 73 20 72 65 74 75 72 6e 20 74 79 70 65 2c 20 | o.the.function...s.return.type,. |
| 6f320 | 6c 69 6b 65 20 3c 63 6f 64 65 3e 21 54 3c 2f 63 6f 64 65 3e 3a 0a 20 20 20 20 20 20 3c 2f 70 3e | like.<code>!T</code>:.......</p> |
| 6f340 | 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 |
| 6f360 | 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 |
| 6f380 | 73 74 5f 69 6e 66 65 72 72 65 64 5f 65 72 72 6f 72 5f 73 65 74 73 2e 7a 69 67 3c 2f 63 69 74 65 | st_inferred_error_sets.zig</cite |
| 6f3a0 | 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 |
| 6f3c0 | 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 57 69 74 68 20 61 6e 20 69 6e | lass="tok-comment">//.With.an.in |
| 6f3e0 | 66 65 72 72 65 64 20 65 72 72 6f 72 20 73 65 74 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c | ferred.error.set</span>.<span.cl |
| 6f400 | 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 |
| 6f420 | 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 |
| 6f440 | 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 61 64 64 5f 69 6e 66 65 72 72 65 64 3c 2f 73 70 61 6e 3e 28 | ss="tok-fn">add_inferred</span>( |
| 6f460 | 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 |
| 6f480 | 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 |
| 6f4a0 | 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 61 3a 20 54 2c 20 62 3a 20 54 29 20 21 54 20 7b 0a 20 20 20 | ype</span>,.a:.T,.b:.T).!T.{.... |
| 6f4c0 | 20 3c 73 70 61 6e 20 63 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 |
| 6f4e0 | 6e 3e 20 6f 76 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e | n>.ov.=.<span.class="tok-builtin |
| 6f500 | 22 3e 40 61 64 64 57 69 74 68 4f 76 65 72 66 6c 6f 77 3c 2f 73 70 61 6e 3e 28 61 2c 20 62 29 3b | ">@addWithOverflow</span>(a,.b); |
| 6f520 | 0a 20 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 |
| 6f540 | 61 6e 3e 20 28 6f 76 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 | an>.(ov[<span.class="tok-number" |
| 6f560 | 3e 31 3c 2f 73 70 61 6e 3e 5d 20 21 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | >1</span>].!=.<span.class="tok-n |
| 6f580 | 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | umber">0</span>).<span.class="to |
| 6f5a0 | 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= |
| 6f5c0 | 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 4f 76 65 72 66 6c 6f 77 3b 0a | "tok-kw">error</span>.Overflow;. |
| 6f5e0 | 20 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< |
| 6f600 | 2f 73 70 61 6e 3e 20 6f 76 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | /span>.ov[<span.class="tok-numbe |
| 6f620 | 72 22 3e 30 3c 2f 73 70 61 6e 3e 5d 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | r">0</span>];.}..<span.class="to |
| 6f640 | 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 57 69 74 68 20 61 6e 20 65 78 70 6c 69 63 69 74 20 65 | k-comment">//.With.an.explicit.e |
| 6f660 | 72 72 6f 72 20 73 65 74 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | rror.set</span>.<span.class="tok |
| 6f680 | 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 |
| 6f6a0 | 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- |
| 6f6c0 | 66 6e 22 3e 61 64 64 5f 65 78 70 6c 69 63 69 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c | fn">add_explicit</span>(<span.cl |
| 6f6e0 | 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:. |
| 6f700 | 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 |
| 6f720 | 6e 3e 2c 20 61 3a 20 54 2c 20 62 3a 20 54 29 20 45 72 72 6f 72 21 54 20 7b 0a 20 20 20 20 3c 73 | n>,.a:.T,.b:.T).Error!T.{.....<s |
| 6f740 | 70 61 6e 20 63 6c 61 73 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>. |
| 6f760 | 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 40 | ov.=.<span.class="tok-builtin">@ |
| 6f780 | 61 64 64 57 69 74 68 4f 76 65 72 66 6c 6f 77 3c 2f 73 70 61 6e 3e 28 61 2c 20 62 29 3b 0a 20 20 | addWithOverflow</span>(a,.b);... |
| 6f7a0 | 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> |
| 6f7c0 | 20 28 6f 76 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c | .(ov[<span.class="tok-number">1< |
| 6f7e0 | 2f 73 70 61 6e 3e 5d 20 21 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | /span>].!=.<span.class="tok-numb |
| 6f800 | 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | er">0</span>).<span.class="tok-k |
| 6f820 | 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 |
| 6f840 | 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 4f 76 65 72 66 6c 6f 77 3b 0a 20 20 20 | k-kw">error</span>.Overflow;.... |
| 6f860 | 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 |
| 6f880 | 61 6e 3e 20 6f 76 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e | an>.ov[<span.class="tok-number"> |
| 6f8a0 | 30 3c 2f 73 70 61 6e 3e 5d 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | 0</span>];.}..<span.class="tok-k |
| 6f8c0 | 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 45 72 72 6f 72 20 3d 20 3c 73 70 61 6e 20 63 6c | w">const</span>.Error.=.<span.cl |
| 6f8e0 | 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 |
| 6f900 | 76 65 72 66 6c 6f 77 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | verflow,.};..<span.class="tok-kw |
| 6f920 | 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 |
| 6f940 | 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 |
| 6f960 | 70 61 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 |
| 6f980 | 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 |
| 6f9a0 | 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- |
| 6f9c0 | 73 74 72 22 3e 26 71 75 6f 74 3b 69 6e 66 65 72 72 65 64 20 65 72 72 6f 72 20 73 65 74 26 71 75 | str">"inferred.error.set&qu |
| 6f9e0 | 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 |
| 6fa00 | 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 61 64 64 5f 69 6e 66 65 72 72 65 64 28 3c 73 | k-kw">if</span>.(add_inferred(<s |
| 6fa20 | 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>,. |
| 6fa40 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 35 35 3c 2f 73 70 | <span.class="tok-number">255</sp |
| 6fa60 | 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c | an>,.<span.class="tok-number">1< |
| 6fa80 | 2f 73 70 61 6e 3e 29 29 20 7c 5f 7c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | /span>)).|_|.<span.class="tok-kw |
| 6faa0 | 22 3e 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ">unreachable</span>.<span.class |
| 6fac0 | 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 |
| 6fae0 | 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>.( |
| 6fb00 | 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- |
| 6fb20 | 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 4f 76 65 72 66 6c 6f 77 20 3d 26 67 74 3b 20 | kw">error</span>.Overflow.=>. |
| 6fb40 | 7b 7d 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f | {},.<span.class="tok-comment">// |
| 6fb60 | 20 6f 6b 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 7d 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c | .ok</span>.....}.}</code></pre>< |
| 6fb80 | 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 |
| 6fba0 | 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> |
| 6fbc0 | 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_ |
| 6fbe0 | 69 6e 66 65 72 72 65 64 5f 65 72 72 6f 72 5f 73 65 74 73 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f | inferred_error_sets.zig</kbd>.1/ |
| 6fc00 | 31 20 74 65 73 74 5f 69 6e 66 65 72 72 65 64 5f 65 72 72 6f 72 5f 73 65 74 73 2e 74 65 73 74 2e | 1.test_inferred_error_sets.test. |
| 6fc20 | 69 6e 66 65 72 72 65 64 20 65 72 72 6f 72 20 73 65 74 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 | inferred.error.set...OK.All.1.te |
| 6fc40 | 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 |
| 6fc60 | 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 61 20 66 75 6e 63 74 | e>........<p>.......When.a.funct |
| 6fc80 | 69 6f 6e 20 68 61 73 20 61 6e 20 69 6e 66 65 72 72 65 64 20 65 72 72 6f 72 20 73 65 74 2c 20 74 | ion.has.an.inferred.error.set,.t |
| 6fca0 | 68 61 74 20 66 75 6e 63 74 69 6f 6e 20 62 65 63 6f 6d 65 73 20 67 65 6e 65 72 69 63 20 61 6e 64 | hat.function.becomes.generic.and |
| 6fcc0 | 20 74 68 75 73 20 69 74 20 62 65 63 6f 6d 65 73 0a 20 20 20 20 20 20 74 72 69 63 6b 69 65 72 20 | .thus.it.becomes.......trickier. |
| 6fce0 | 74 6f 20 64 6f 20 63 65 72 74 61 69 6e 20 74 68 69 6e 67 73 20 77 69 74 68 20 69 74 2c 20 73 75 | to.do.certain.things.with.it,.su |
| 6fd00 | 63 68 20 61 73 20 6f 62 74 61 69 6e 20 61 20 66 75 6e 63 74 69 6f 6e 20 70 6f 69 6e 74 65 72 2c | ch.as.obtain.a.function.pointer, |
| 6fd20 | 20 6f 72 20 68 61 76 65 20 61 6e 20 65 72 72 6f 72 0a 20 20 20 20 20 20 73 65 74 20 74 68 61 74 | .or.have.an.error.......set.that |
| 6fd40 | 20 69 73 20 63 6f 6e 73 69 73 74 65 6e 74 20 61 63 72 6f 73 73 20 64 69 66 66 65 72 65 6e 74 20 | .is.consistent.across.different. |
| 6fd60 | 62 75 69 6c 64 20 74 61 72 67 65 74 73 2e 20 41 64 64 69 74 69 6f 6e 61 6c 6c 79 2c 20 69 6e 66 | build.targets..Additionally,.inf |
| 6fd80 | 65 72 72 65 64 20 65 72 72 6f 72 20 73 65 74 73 0a 20 20 20 20 20 20 61 72 65 20 69 6e 63 6f 6d | erred.error.sets.......are.incom |
| 6fda0 | 70 61 74 69 62 6c 65 20 77 69 74 68 20 72 65 63 75 72 73 69 6f 6e 2e 0a 20 20 20 20 20 20 3c 2f | patible.with.recursion........</ |
| 6fdc0 | 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 6e 20 74 68 65 73 65 20 73 69 74 75 | p>.......<p>.......In.these.situ |
| 6fde0 | 61 74 69 6f 6e 73 2c 20 69 74 20 69 73 20 72 65 63 6f 6d 6d 65 6e 64 65 64 20 74 6f 20 75 73 65 | ations,.it.is.recommended.to.use |
| 6fe00 | 20 61 6e 20 65 78 70 6c 69 63 69 74 20 65 72 72 6f 72 20 73 65 74 2e 20 59 6f 75 20 63 61 6e 20 | .an.explicit.error.set..You.can. |
| 6fe20 | 67 65 6e 65 72 61 6c 6c 79 20 73 74 61 72 74 0a 20 20 20 20 20 20 77 69 74 68 20 61 6e 20 65 6d | generally.start.......with.an.em |
| 6fe40 | 70 74 79 20 65 72 72 6f 72 20 73 65 74 20 61 6e 64 20 6c 65 74 20 63 6f 6d 70 69 6c 65 20 65 72 | pty.error.set.and.let.compile.er |
| 6fe60 | 72 6f 72 73 20 67 75 69 64 65 20 79 6f 75 20 74 6f 77 61 72 64 20 63 6f 6d 70 6c 65 74 69 6e 67 | rors.guide.you.toward.completing |
| 6fe80 | 20 74 68 65 20 73 65 74 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 | .the.set........</p>.......<p>.. |
| 6fea0 | 20 20 20 20 20 54 68 65 73 65 20 6c 69 6d 69 74 61 74 69 6f 6e 73 20 6d 61 79 20 62 65 20 6f 76 | .....These.limitations.may.be.ov |
| 6fec0 | 65 72 63 6f 6d 65 20 69 6e 20 61 20 66 75 74 75 72 65 20 76 65 72 73 69 6f 6e 20 6f 66 20 5a 69 | ercome.in.a.future.version.of.Zi |
| 6fee0 | 67 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 0a 20 20 20 20 | g........</p>................... |
| 6ff00 | 20 20 3c 68 33 20 69 64 3d 22 45 72 72 6f 72 2d 52 65 74 75 72 6e 2d 54 72 61 63 65 73 22 3e 3c | ..<h3.id="Error-Return-Traces">< |
| 6ff20 | 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 45 72 72 6f 72 2d 52 65 74 75 72 6e 2d 54 72 61 63 65 73 | a.href="#toc-Error-Return-Traces |
| 6ff40 | 22 3e 45 72 72 6f 72 20 52 65 74 75 72 6e 20 54 72 61 63 65 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 | ">Error.Return.Traces</a>.<a.cla |
| 6ff60 | 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 45 72 72 6f 72 2d 52 65 74 75 72 6e 2d 54 72 61 | ss="hdr".href="#Error-Return-Tra |
| 6ff80 | 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 3e 0a 20 20 20 20 | ces">..</a></h3>........<p>..... |
| 6ffa0 | 20 20 45 72 72 6f 72 20 52 65 74 75 72 6e 20 54 72 61 63 65 73 20 73 68 6f 77 20 61 6c 6c 20 74 | ..Error.Return.Traces.show.all.t |
| 6ffc0 | 68 65 20 70 6f 69 6e 74 73 20 69 6e 20 74 68 65 20 63 6f 64 65 20 74 68 61 74 20 61 6e 20 65 72 | he.points.in.the.code.that.an.er |
| 6ffe0 | 72 6f 72 20 77 61 73 20 72 65 74 75 72 6e 65 64 20 74 6f 20 74 68 65 20 63 61 6c 6c 69 6e 67 20 | ror.was.returned.to.the.calling. |
| 70000 | 66 75 6e 63 74 69 6f 6e 2e 20 54 68 69 73 20 6d 61 6b 65 73 20 69 74 20 70 72 61 63 74 69 63 61 | function..This.makes.it.practica |
| 70020 | 6c 20 74 6f 20 75 73 65 20 3c 61 20 68 72 65 66 3d 22 23 74 72 79 22 3e 74 72 79 3c 2f 61 3e 20 | l.to.use.<a.href="#try">try</a>. |
| 70040 | 65 76 65 72 79 77 68 65 72 65 20 61 6e 64 20 74 68 65 6e 20 73 74 69 6c 6c 20 62 65 20 61 62 6c | everywhere.and.then.still.be.abl |
| 70060 | 65 20 74 6f 20 6b 6e 6f 77 20 77 68 61 74 20 68 61 70 70 65 6e 65 64 20 69 66 20 61 6e 20 65 72 | e.to.know.what.happened.if.an.er |
| 70080 | 72 6f 72 20 65 6e 64 73 20 75 70 20 62 75 62 62 6c 69 6e 67 20 61 6c 6c 20 74 68 65 20 77 61 79 | ror.ends.up.bubbling.all.the.way |
| 700a0 | 20 6f 75 74 20 6f 66 20 79 6f 75 72 20 61 70 70 6c 69 63 61 74 69 6f 6e 2e 0a 20 20 20 20 20 20 | .out.of.your.application........ |
| 700c0 | 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 |
| 700e0 | 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 |
| 70100 | 22 3e 65 72 72 6f 72 5f 72 65 74 75 72 6e 5f 74 72 61 63 65 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c | ">error_return_trace.zig</cite>< |
| 70120 | 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 |
| 70140 | 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 |
| 70160 | 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 |
| 70180 | 73 3d 22 74 6f 6b 2d 66 6e 22 3e 6d 61 69 6e 3c 2f 73 70 61 6e 3e 28 29 20 21 3c 73 70 61 6e 20 | s="tok-fn">main</span>().!<span. |
| 701a0 | 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>.{.. |
| 701c0 | 20 20 20 3c 73 70 61 6e 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 |
| 701e0 | 6e 3e 20 66 6f 6f 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e | n>.foo(<span.class="tok-number"> |
| 70200 | 31 32 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | 12</span>);.}..<span.class="tok- |
| 70220 | 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 |
| 70240 | 6e 22 3e 66 6f 6f 3c 2f 73 70 61 6e 3e 28 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | n">foo</span>(x:.<span.class="to |
| 70260 | 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 20 21 3c 73 70 61 6e 20 63 6c 61 73 73 | k-type">i32</span>).!<span.class |
| 70280 | 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 |
| 702a0 | 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 78 20 | pan.class="tok-kw">if</span>.(x. |
| 702c0 | 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 35 | >=.<span.class="tok-number">5 |
| 702e0 | 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 22 | </span>).{.........<span.class=" |
| 70300 | 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 62 61 72 28 29 3b 0a 20 20 20 20 7d 20 | tok-kw">try</span>.bar();.....}. |
| 70320 | 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> |
| 70340 | 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"> |
| 70360 | 74 72 79 3c 2f 73 70 61 6e 3e 20 62 61 6e 67 32 28 29 3b 0a 20 20 20 20 7d 0a 7d 0a 0a 3c 73 70 | try</span>.bang2();.....}.}..<sp |
| 70380 | 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 |
| 703a0 | 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 29 20 21 3c | n.class="tok-fn">bar</span>().!< |
| 703c0 | 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 |
| 703e0 | 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c | >.{.....<span.class="tok-kw">if< |
| 70400 | 2f 73 70 61 6e 3e 20 28 62 61 7a 28 29 29 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 | /span>.(baz()).{.........<span.c |
| 70420 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 71 75 75 78 28 29 3b | lass="tok-kw">try</span>.quux(); |
| 70440 | 0a 20 20 20 20 7d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 | .....}.<span.class="tok-kw">else |
| 70460 | 3c 2f 73 70 61 6e 3e 20 7c 65 72 72 7c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | </span>.|err|.<span.class="tok-k |
| 70480 | 77 22 3e 73 77 69 74 63 68 3c 2f 73 70 61 6e 3e 20 28 65 72 72 29 20 7b 0a 20 20 20 20 20 20 20 | w">switch</span>.(err).{........ |
| 704a0 | 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 |
| 704c0 | 6e 3e 2e 46 69 6c 65 4e 6f 74 46 6f 75 6e 64 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 | n>.FileNotFound.=>.<span.clas |
| 704e0 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 68 65 6c 6c 6f 28 29 2c 0a 20 | s="tok-kw">try</span>.hello(),.. |
| 70500 | 20 20 20 7d 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c | ...}.}..<span.class="tok-kw">fn< |
| 70520 | 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 62 61 7a 3c | /span>.<span.class="tok-fn">baz< |
| 70540 | 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" |
| 70560 | 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=" |
| 70580 | 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 62 61 6e 67 31 28 29 3b 0a 7d 0a 0a 3c | tok-kw">try</span>.bang1();.}..< |
| 705a0 | 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 |
| 705c0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 71 75 75 78 3c 2f 73 70 61 6e 3e 28 29 | pan.class="tok-fn">quux</span>() |
| 705e0 | 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 |
| 70600 | 70 61 6e 3e 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"> |
| 70620 | 74 72 79 3c 2f 73 70 61 6e 3e 20 62 61 6e 67 32 28 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 | try</span>.bang2();.}..<span.cla |
| 70640 | 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 |
| 70660 | 73 3d 22 74 6f 6b 2d 66 6e 22 3e 68 65 6c 6c 6f 3c 2f 73 70 61 6e 3e 28 29 20 21 3c 73 70 61 6e | s="tok-fn">hello</span>().!<span |
| 70680 | 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>.{. |
| 706a0 | 20 20 20 20 3c 73 70 61 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 |
| 706c0 | 61 6e 3e 20 62 61 6e 67 32 28 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | an>.bang2();.}..<span.class="tok |
| 706e0 | 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- |
| 70700 | 66 6e 22 3e 62 61 6e 67 31 3c 2f 73 70 61 6e 3e 28 29 20 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d | fn">bang1</span>().!<span.class= |
| 70720 | 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 |
| 70740 | 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>. |
| 70760 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e | <span.class="tok-kw">error</span |
| 70780 | 3e 2e 46 69 6c 65 4e 6f 74 46 6f 75 6e 64 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | >.FileNotFound;.}..<span.class=" |
| 707a0 | 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 |
| 707c0 | 6f 6b 2d 66 6e 22 3e 62 61 6e 67 32 3c 2f 73 70 61 6e 3e 28 29 20 21 3c 73 70 61 6e 20 63 6c 61 | ok-fn">bang2</span>().!<span.cla |
| 707e0 | 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>.{..... |
| 70800 | 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 |
| 70820 | 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 |
| 70840 | 70 61 6e 3e 2e 50 65 72 6d 69 73 73 69 6f 6e 44 65 6e 69 65 64 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c | pan>.PermissionDenied;.}</code>< |
| 70860 | 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 |
| 70880 | 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 |
| 708a0 | 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 |
| 708c0 | 64 2d 65 78 65 20 65 72 72 6f 72 5f 72 65 74 75 72 6e 5f 74 72 61 63 65 2e 7a 69 67 3c 2f 6b 62 | d-exe.error_return_trace.zig</kb |
| 708e0 | 64 3e 0a 24 20 3c 6b 62 64 3e 2e 2f 65 72 72 6f 72 5f 72 65 74 75 72 6e 5f 74 72 61 63 65 3c 2f | d>.$.<kbd>./error_return_trace</ |
| 70900 | 6b 62 64 3e 0a 65 72 72 6f 72 3a 20 50 65 72 6d 69 73 73 69 6f 6e 44 65 6e 69 65 64 0a 3c 73 70 | kbd>.error:.PermissionDenied.<sp |
| 70920 | 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 | an.class="sgr-1m">/home/andy/dev |
| 70940 | 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 72 6e 5f 74 72 | /zig/doc/langref/error_return_tr |
| 70960 | 61 63 65 2e 7a 69 67 3a 33 34 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ace.zig:34:5</span>:.<span.class |
| 70980 | 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 31 33 64 33 34 63 20 69 6e 20 62 61 6e 67 31 20 28 65 72 | ="sgr-2m">0x113d34c.in.bang1.(er |
| 709a0 | 72 6f 72 5f 72 65 74 75 72 6e 5f 74 72 61 63 65 2e 7a 69 67 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 | ror_return_trace.zig)</span>.... |
| 709c0 | 20 72 65 74 75 72 6e 20 65 72 72 6f 72 2e 46 69 6c 65 4e 6f 74 46 6f 75 6e 64 3b 0a 20 20 20 20 | .return.error.FileNotFound;..... |
| 709e0 | 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>.< |
| 70a00 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 | span.class="sgr-1m">/home/andy/d |
| 70a20 | 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 65 72 72 6f 72 5f 72 65 74 75 72 6e 5f | ev/zig/doc/langref/error_return_ |
| 70a40 | 74 72 61 63 65 2e 7a 69 67 3a 32 32 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 | trace.zig:22:5</span>:.<span.cla |
| 70a60 | 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 31 33 64 33 39 36 20 69 6e 20 62 61 7a 20 28 65 72 | ss="sgr-2m">0x113d396.in.baz.(er |
| 70a80 | 72 6f 72 5f 72 65 74 75 72 6e 5f 74 72 61 63 65 2e 7a 69 67 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 | ror_return_trace.zig)</span>.... |
| 70aa0 | 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 61 73 73 3d 22 73 | .try.bang1();.....<span.class="s |
| 70ac0 | 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 |
| 70ae0 | 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e | r-1m">/home/andy/dev/zig/doc/lan |
| 70b00 | 67 72 65 66 2f 65 72 72 6f 72 5f 72 65 74 75 72 6e 5f 74 72 61 63 65 2e 7a 69 67 3a 33 38 3a 35 | gref/error_return_trace.zig:38:5 |
| 70b20 | 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 |
| 70b40 | 31 31 33 64 33 63 63 20 69 6e 20 62 61 6e 67 32 20 28 65 72 72 6f 72 5f 72 65 74 75 72 6e 5f 74 | 113d3cc.in.bang2.(error_return_t |
| 70b60 | 72 61 63 65 2e 7a 69 67 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 72 65 74 75 72 6e 20 65 72 72 6f | race.zig)</span>.....return.erro |
| 70b80 | 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 63 6c | r.PermissionDenied;.....<span.cl |
| 70ba0 | 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 |
| 70bc0 | 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 | ss="sgr-1m">/home/andy/dev/zig/d |
| 70be0 | 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 |
| 70c00 | 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 72 2d | g:30:5</span>:.<span.class="sgr- |
| 70c20 | 32 6d 22 3e 30 78 31 31 33 64 34 37 36 20 69 6e 20 68 65 6c 6c 6f 20 28 65 72 72 6f 72 5f 72 65 | 2m">0x113d476.in.hello.(error_re |
| 70c40 | 74 75 72 6e 5f 74 72 61 63 65 2e 7a 69 67 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 74 72 79 20 62 | turn_trace.zig)</span>.....try.b |
| 70c60 | 61 6e 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 | ang2();.....<span.class="sgr-32m |
| 70c80 | 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"> |
| 70ca0 | 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 65 | /home/andy/dev/zig/doc/langref/e |
| 70cc0 | 72 72 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 | rror_return_trace.zig:17:31</spa |
| 70ce0 | 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 31 33 64 35 | n>:.<span.class="sgr-2m">0x113d5 |
| 70d00 | 34 65 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 2e 7a 69 | 4e.in.bar.(error_return_trace.zi |
| 70d20 | 67 29 3c 2f 73 70 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 | g)</span>.........error.FileNotF |
| 70d40 | 6f 75 6e 64 20 3d 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 | ound.=>.try.hello(),......... |
| 70d60 | 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 |
| 70d80 | 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 |
| 70da0 | 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 | ="sgr-1m">/home/andy/dev/zig/doc |
| 70dc0 | 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 67 3a | /langref/error_return_trace.zig: |
| 70de0 | 37 3a 39 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 | 7:9</span>:.<span.class="sgr-2m" |
| 70e00 | 3e 30 78 31 31 33 64 36 33 34 20 69 6e 20 66 6f 6f 20 28 65 72 72 6f 72 5f 72 65 74 75 72 6e 5f | >0x113d634.in.foo.(error_return_ |
| 70e20 | 74 72 61 63 65 2e 7a 69 67 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 74 72 79 20 62 61 | trace.zig)</span>.........try.ba |
| 70e40 | 72 28 29 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 | r();.........<span.class="sgr-32 |
| 70e60 | 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" |
| 70e80 | 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f | >/home/andy/dev/zig/doc/langref/ |
| 70ea0 | 65 72 72 6f 72 5f 72 65 74 75 72 6e 5f 74 72 61 63 65 2e 7a 69 67 3a 32 3a 35 3c 2f 73 70 61 6e | error_return_trace.zig:2:5</span |
| 70ec0 | 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 31 33 64 36 66 | >:.<span.class="sgr-2m">0x113d6f |
| 70ee0 | 62 20 69 6e 20 6d 61 69 6e 20 28 65 72 72 6f 72 5f 72 65 74 75 72 6e 5f 74 72 61 63 65 2e 7a 69 | b.in.main.(error_return_trace.zi |
| 70f00 | 67 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 74 72 79 20 66 6f 6f 28 31 32 29 3b 0a 20 20 20 20 3c | g)</span>.....try.foo(12);.....< |
| 70f20 | 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 2f | span.class="sgr-32m">^</span>.</ |
| 70f40 | 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>. |
| 70f60 | 20 20 20 20 20 20 4c 6f 6f 6b 20 63 6c 6f 73 65 6c 79 20 61 74 20 74 68 69 73 20 65 78 61 6d 70 | ......Look.closely.at.this.examp |
| 70f80 | 6c 65 2e 20 54 68 69 73 20 69 73 20 6e 6f 20 73 74 61 63 6b 20 74 72 61 63 65 2e 0a 20 20 20 20 | le..This.is.no.stack.trace...... |
| 70fa0 | 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 73 | ..</p>.......<p>.......You.can.s |
| 70fc0 | 65 65 20 74 68 61 74 20 74 68 65 20 66 69 6e 61 6c 20 65 72 72 6f 72 20 62 75 62 62 6c 65 64 20 | ee.that.the.final.error.bubbled. |
| 70fe0 | 75 70 20 77 61 73 20 3c 63 6f 64 65 3e 50 65 72 6d 69 73 73 69 6f 6e 44 65 6e 69 65 64 3c 2f 63 | up.was.<code>PermissionDenied</c |
| 71000 | 6f 64 65 3e 2c 0a 20 20 20 20 20 20 20 20 20 20 62 75 74 20 74 68 65 20 6f 72 69 67 69 6e 61 6c | ode>,...........but.the.original |
| 71020 | 20 65 72 72 6f 72 20 74 68 61 74 20 73 74 61 72 74 65 64 20 74 68 69 73 20 77 68 6f 6c 65 20 74 | .error.that.started.this.whole.t |
| 71040 | 68 69 6e 67 20 77 61 73 20 3c 63 6f 64 65 3e 46 69 6c 65 4e 6f 74 46 6f 75 6e 64 3c 2f 63 6f 64 | hing.was.<code>FileNotFound</cod |
| 71060 | 65 3e 2e 20 49 6e 20 74 68 65 20 3c 63 6f 64 65 3e 62 61 72 3c 2f 63 6f 64 65 3e 20 66 75 6e 63 | e>..In.the.<code>bar</code>.func |
| 71080 | 74 69 6f 6e 2c 20 74 68 65 20 63 6f 64 65 20 68 61 6e 64 6c 65 73 20 74 68 65 20 6f 72 69 67 69 | tion,.the.code.handles.the.origi |
| 710a0 | 6e 61 6c 20 65 72 72 6f 72 20 63 6f 64 65 2c 0a 20 20 20 20 20 20 61 6e 64 20 74 68 65 6e 20 72 | nal.error.code,.......and.then.r |
| 710c0 | 65 74 75 72 6e 73 20 61 6e 6f 74 68 65 72 20 6f 6e 65 2c 20 66 72 6f 6d 20 74 68 65 20 73 77 69 | eturns.another.one,.from.the.swi |
| 710e0 | 74 63 68 20 73 74 61 74 65 6d 65 6e 74 2e 20 45 72 72 6f 72 20 52 65 74 75 72 6e 20 54 72 61 63 | tch.statement..Error.Return.Trac |
| 71100 | 65 73 20 6d 61 6b 65 20 74 68 69 73 20 63 6c 65 61 72 2c 20 77 68 65 72 65 61 73 20 61 20 73 74 | es.make.this.clear,.whereas.a.st |
| 71120 | 61 63 6b 20 74 72 61 63 65 20 77 6f 75 6c 64 20 6c 6f 6f 6b 20 6c 69 6b 65 20 74 68 69 73 3a 0a | ack.trace.would.look.like.this:. |
| 71140 | 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 |
| 71160 | 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 |
| 71180 | 3d 22 66 69 6c 65 22 3e 73 74 61 63 6b 5f 74 72 61 63 65 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f | ="file">stack_trace.zig</cite></ |
| 711a0 | 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 |
| 711c0 | 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 |
| 711e0 | 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 |
| 71200 | 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 |
| 71220 | 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>.{.... |
| 71240 | 20 66 6f 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 | .foo(<span.class="tok-number">12 |
| 71260 | 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | </span>);.}..<span.class="tok-kw |
| 71280 | 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" |
| 712a0 | 3e 66 6f 6f 3c 2f 73 70 61 6e 3e 28 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | >foo</span>(x:.<span.class="tok- |
| 712c0 | 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 |
| 712e0 | 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 |
| 71300 | 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 78 20 26 67 74 | .class="tok-kw">if</span>.(x.> |
| 71320 | 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 35 3c 2f 73 | ;=.<span.class="tok-number">5</s |
| 71340 | 70 61 6e 3e 29 20 7b 0a 20 20 20 20 20 20 20 20 62 61 72 28 29 3b 0a 20 20 20 20 7d 20 3c 73 70 | pan>).{.........bar();.....}.<sp |
| 71360 | 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>.{. |
| 71380 | 20 20 20 20 20 20 20 20 62 61 6e 67 32 28 29 3b 0a 20 20 20 20 7d 0a 7d 0a 0a 3c 73 70 61 6e 20 | ........bang2();.....}.}..<span. |
| 713a0 | 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 |
| 713c0 | 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 29 20 3c 73 70 61 6e | lass="tok-fn">bar</span>().<span |
| 713e0 | 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>.{. |
| 71400 | 20 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 |
| 71420 | 6e 3e 20 28 62 61 7a 28 29 29 20 7b 0a 20 20 20 20 20 20 20 20 71 75 75 78 28 29 3b 0a 20 20 20 | n>.(baz()).{.........quux();.... |
| 71440 | 20 7d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 | .}.<span.class="tok-kw">else</sp |
| 71460 | 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 68 65 6c 6c 6f 28 29 3b 0a 20 20 20 20 7d 0a 7d 0a 0a | an>.{.........hello();.....}.}.. |
| 71480 | 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>.< |
| 714a0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 62 61 7a 3c 2f 73 70 61 6e 3e 28 29 | span.class="tok-fn">baz</span>() |
| 714c0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 | .<span.class="tok-type">bool</sp |
| 714e0 | 61 6e 3e 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 |
| 71500 | 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 62 61 6e 67 31 28 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 | eturn</span>.bang1();.}..<span.c |
| 71520 | 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 |
| 71540 | 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 71 75 75 78 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e | ass="tok-fn">quux</span>().<span |
| 71560 | 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>.{. |
| 71580 | 20 20 20 20 62 61 6e 67 32 28 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ....bang2();.}..<span.class="tok |
| 715a0 | 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- |
| 715c0 | 66 6e 22 3e 68 65 6c 6c 6f 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | fn">hello</span>().<span.class=" |
| 715e0 | 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 62 61 6e 67 | tok-type">void</span>.{.....bang |
| 71600 | 32 28 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c | 2();.}..<span.class="tok-kw">fn< |
| 71620 | 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 6e 67 | /span>.<span.class="tok-fn">bang |
| 71640 | 31 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 | 1</span>().<span.class="tok-type |
| 71660 | 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ">bool</span>.{.....<span.class= |
| 71680 | 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 |
| 716a0 | 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 7d 0a 0a 3c | ss="tok-null">false</span>;.}..< |
| 716c0 | 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 |
| 716e0 | 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 3e 28 | pan.class="tok-fn">bang2</span>( |
| 71700 | 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 |
| 71720 | 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c | pan>.{.....<span.class="tok-buil |
| 71740 | 74 69 6e 22 3e 40 70 61 6e 69 63 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | tin">@panic</span>(<span.class=" |
| 71760 | 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 50 65 72 6d 69 73 73 69 6f 6e 44 65 6e 69 65 64 26 | tok-str">"PermissionDenied& |
| 71780 | 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 | quot;</span>);.}</code></pre></f |
| 717a0 | 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= |
| 717c0 | 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 |
| 717e0 | 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 73 74 | re><samp>$.<kbd>zig.build-exe.st |
| 71800 | 61 63 6b 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 73 74 61 | ack_trace.zig</kbd>.$.<kbd>./sta |
| 71820 | 63 6b 5f 74 72 61 63 65 3c 2f 6b 62 64 3e 0a 74 68 72 65 61 64 20 31 30 39 33 39 36 36 20 70 61 | ck_trace</kbd>.thread.1093966.pa |
| 71840 | 6e 69 63 3a 20 50 65 72 6d 69 73 73 69 6f 6e 44 65 6e 69 65 64 0a 3c 73 70 61 6e 20 63 6c 61 73 | nic:.PermissionDenied.<span.clas |
| 71860 | 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f | s="sgr-1m">/home/andy/dev/zig/do |
| 71880 | 63 2f 6c 61 6e 67 72 65 66 2f 73 74 61 63 6b 5f 74 72 61 63 65 2e 7a 69 67 3a 33 38 3a 35 3c 2f | c/langref/stack_trace.zig:38:5</ |
| 718a0 | 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 31 | span>:.<span.class="sgr-2m">0x11 |
| 718c0 | 34 30 65 34 63 20 69 6e 20 62 61 6e 67 32 20 28 73 74 61 63 6b 5f 74 72 61 63 65 2e 7a 69 67 29 | 40e4c.in.bang2.(stack_trace.zig) |
| 718e0 | 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 40 70 61 6e 69 63 28 26 71 75 6f 74 3b 50 65 72 6d 69 73 73 | </span>.....@panic("Permiss |
| 71900 | 69 6f 6e 44 65 6e 69 65 64 26 71 75 6f 74 3b 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | ionDenied");.....<span.clas |
| 71920 | 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 |
| 71940 | 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 | ="sgr-1m">/home/andy/dev/zig/doc |
| 71960 | 2f 6c 61 6e 67 72 65 66 2f 73 74 61 63 6b 5f 74 72 61 63 65 2e 7a 69 67 3a 33 30 3a 31 30 3c 2f | /langref/stack_trace.zig:30:10</ |
| 71980 | 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 31 | span>:.<span.class="sgr-2m">0x11 |
| 719a0 | 34 31 34 38 63 20 69 6e 20 68 65 6c 6c 6f 20 28 73 74 61 63 6b 5f 74 72 61 63 65 2e 7a 69 67 29 | 4148c.in.hello.(stack_trace.zig) |
| 719c0 | 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 62 61 6e 67 32 28 29 3b 0a 20 20 20 20 20 20 20 20 20 3c 73 | </span>.....bang2();..........<s |
| 719e0 | 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 |
| 71a00 | 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 | an.class="sgr-1m">/home/andy/dev |
| 71a20 | 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 73 74 61 63 6b 5f 74 72 61 63 65 2e 7a 69 67 | /zig/doc/langref/stack_trace.zig |
| 71a40 | 3a 31 37 3a 31 34 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d | :17:14</span>:.<span.class="sgr- |
| 71a60 | 32 6d 22 3e 30 78 31 31 34 30 65 30 33 20 69 6e 20 62 61 72 20 28 73 74 61 63 6b 5f 74 72 61 63 | 2m">0x1140e03.in.bar.(stack_trac |
| 71a80 | 65 2e 7a 69 67 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 68 65 6c 6c 6f 28 29 3b 0a 20 | e.zig)</span>.........hello();.. |
| 71aa0 | 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 |
| 71ac0 | 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"> |
| 71ae0 | 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 73 | /home/andy/dev/zig/doc/langref/s |
| 71b00 | 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 3a 20 3c 73 70 61 | tack_trace.zig:7:12</span>:.<spa |
| 71b20 | 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 31 34 30 61 39 38 20 69 6e 20 66 6f | n.class="sgr-2m">0x1140a98.in.fo |
| 71b40 | 6f 20 28 73 74 61 63 6b 5f 74 72 61 63 65 2e 7a 69 67 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 | o.(stack_trace.zig)</span>...... |
| 71b60 | 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 73 73 | ...bar();............<span.class |
| 71b80 | 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= |
| 71ba0 | 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f | "sgr-1m">/home/andy/dev/zig/doc/ |
| 71bc0 | 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 70 61 | langref/stack_trace.zig:2:8</spa |
| 71be0 | 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 31 33 66 38 | n>:.<span.class="sgr-2m">0x113f8 |
| 71c00 | 35 31 20 69 6e 20 6d 61 69 6e 20 28 73 74 61 63 6b 5f 74 72 61 63 65 2e 7a 69 67 29 3c 2f 73 70 | 51.in.main.(stack_trace.zig)</sp |
| 71c20 | 61 6e 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 | an>.....foo(12);........<span.cl |
| 71c40 | 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 |
| 71c60 | 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c | ss="sgr-1m">/home/andy/dev/zig/l |
| 71c80 | 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 36 31 38 3a 32 32 3c 2f 73 70 61 6e 3e 3a 20 | ib/std/start.zig:618:22</span>:. |
| 71ca0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 31 33 65 61 39 64 20 69 | <span.class="sgr-2m">0x113ea9d.i |
| 71cc0 | 6e 20 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 20 28 73 74 64 2e 7a 69 67 29 | n.posixCallMainAndExit.(std.zig) |
| 71ce0 | 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 6f 6f 74 2e 6d 61 69 6e 28 29 3b | </span>.............root.main(); |
| 71d00 | 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 |
| 71d20 | 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 |
| 71d40 | 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 | ="sgr-1m">/home/andy/dev/zig/lib |
| 71d60 | 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 32 33 32 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 | /std/start.zig:232:5</span>:.<sp |
| 71d80 | 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 31 33 65 33 33 31 20 69 6e 20 5f | an.class="sgr-2m">0x113e331.in._ |
| 71da0 | 73 74 61 72 74 20 28 73 74 64 2e 7a 69 67 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 61 73 6d 20 76 | start.(std.zig)</span>.....asm.v |
| 71dc0 | 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 0a | olatile.(switch.(native_arch).{. |
| 71de0 | 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 |
| 71e00 | 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 3c | n>.<span.class="sgr-1m">???:?:?< |
| 71e20 | 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 30 | /span>:.<span.class="sgr-2m">0x0 |
| 71e40 | 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 65 | .in.???.(???)</span>.(process.te |
| 71e60 | 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 65 | rminated.by.signal).</samp></pre |
| 71e80 | 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 48 65 72 65 | ></figure>........<p>.......Here |
| 71ea0 | 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 20 65 78 70 6c 61 | ,.the.stack.trace.does.not.expla |
| 71ec0 | 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 6c 6f 77 20 69 6e | in.how.the.control.......flow.in |
| 71ee0 | 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 68 65 20 3c 63 6f | .<code>bar</code>.got.to.the.<co |
| 71f00 | 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 20 20 20 20 4f 6e | de>hello()</code>.call........On |
| 71f20 | 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 75 67 67 65 72 20 | e.would.have.to.open.a.debugger. |
| 71f40 | 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 61 70 70 6c 69 63 | or.further.instrument.the.applic |
| 71f60 | 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 6e 64 20 6f 75 74 | ation.......in.order.to.find.out |
| 71f80 | 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 6f 6e 20 74 68 65 | ..The.error.return.trace,.on.the |
| 71fa0 | 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 78 61 63 74 6c 79 | .other.hand,.......shows.exactly |
| 71fc0 | 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 0a 20 20 20 20 20 | .how.the.error.bubbled.up....... |
| 71fe0 | 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 64 65 62 75 67 | .</p>.......<p>.......This.debug |
| 72000 | 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 65 72 20 74 6f 20 | ging.feature.makes.it.easier.to. |
| 72020 | 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 61 74 0a 20 20 20 | iterate.quickly.on.code.that.... |
| 72040 | 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 72 6f 72 20 63 6f | ...robustly.handles.all.error.co |
| 72060 | 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 5a 69 67 20 64 65 | nditions..This.means.that.Zig.de |
| 72080 | 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 6c 6c 79 20 66 69 | velopers.......will.naturally.fi |
| 720a0 | 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 65 63 74 2c 20 72 | nd.themselves.writing.correct,.r |
| 720c0 | 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 74 6f 20 69 6e 63 | obust.code.in.order.......to.inc |
| 720e0 | 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 63 65 2e 0a 20 20 | rease.their.development.pace.... |
| 72100 | 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 72 72 6f 72 20 52 | ....</p>.......<p>.......Error.R |
| 72120 | 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 79 20 64 65 66 61 | eturn.Traces.are.enabled.by.defa |
| 72140 | 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 62 75 67 3c 2f 61 | ult.in.<a.href="#Debug">Debug</a |
| 72160 | 3e 20 62 75 69 6c 64 73 20 61 6e 64 20 64 69 73 61 62 6c 65 64 20 62 79 20 64 65 66 61 75 6c 74 | >.builds.and.disabled.by.default |
| 72180 | 20 69 6e 20 3c 61 20 68 72 65 66 3d 22 23 52 65 6c 65 61 73 65 46 61 73 74 22 3e 52 65 6c 65 61 | .in.<a.href="#ReleaseFast">Relea |
| 721a0 | 73 65 46 61 73 74 3c 2f 61 3e 2c 20 3c 61 20 68 72 65 66 3d 22 23 52 65 6c 65 61 73 65 53 61 66 | seFast</a>,.<a.href="#ReleaseSaf |
| 721c0 | 65 22 3e 52 65 6c 65 61 73 65 53 61 66 65 3c 2f 61 3e 20 61 6e 64 20 3c 61 20 68 72 65 66 3d 22 | e">ReleaseSafe</a>.and.<a.href=" |
| 721e0 | 23 52 65 6c 65 61 73 65 53 6d 61 6c 6c 22 3e 52 65 6c 65 61 73 65 53 6d 61 6c 6c 3c 2f 61 3e 20 | #ReleaseSmall">ReleaseSmall</a>. |
| 72200 | 62 75 69 6c 64 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 | builds........</p>.......<p>.... |
| 72220 | 20 20 20 54 68 65 72 65 20 61 72 65 20 61 20 66 65 77 20 77 61 79 73 20 74 6f 20 61 63 74 69 76 | ...There.are.a.few.ways.to.activ |
| 72240 | 61 74 65 20 74 68 69 73 20 65 72 72 6f 72 20 72 65 74 75 72 6e 20 74 72 61 63 69 6e 67 20 66 65 | ate.this.error.return.tracing.fe |
| 72260 | 61 74 75 72 65 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 | ature:.......</p>.......<ul>.... |
| 72280 | 20 20 20 20 20 3c 6c 69 3e 52 65 74 75 72 6e 20 61 6e 20 65 72 72 6f 72 20 66 72 6f 6d 20 6d 61 | .....<li>Return.an.error.from.ma |
| 722a0 | 69 6e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 41 6e 20 65 72 72 6f 72 20 6d 61 6b | in</li>.........<li>An.error.mak |
| 722c0 | 65 73 20 69 74 73 20 77 61 79 20 74 6f 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | es.its.way.to.<code><span.class= |
| 722e0 | 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 |
| 72300 | 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 |
| 72320 | 6f 64 65 3e 20 61 6e 64 20 79 6f 75 20 68 61 76 65 20 6e 6f 74 20 6f 76 65 72 72 69 64 64 65 6e | ode>.and.you.have.not.overridden |
| 72340 | 20 74 68 65 20 64 65 66 61 75 6c 74 20 70 61 6e 69 63 20 68 61 6e 64 6c 65 72 3c 2f 6c 69 3e 0a | .the.default.panic.handler</li>. |
| 72360 | 20 20 20 20 20 20 20 20 3c 6c 69 3e 55 73 65 20 3c 61 20 68 72 65 66 3d 22 23 65 72 72 6f 72 52 | ........<li>Use.<a.href="#errorR |
| 72380 | 65 74 75 72 6e 54 72 61 63 65 22 3e 65 72 72 6f 72 52 65 74 75 72 6e 54 72 61 63 65 3c 2f 61 3e | eturnTrace">errorReturnTrace</a> |
| 723a0 | 20 74 6f 20 61 63 63 65 73 73 20 74 68 65 20 63 75 72 72 65 6e 74 20 72 65 74 75 72 6e 20 74 72 | .to.access.the.current.return.tr |
| 723c0 | 61 63 65 2e 20 59 6f 75 20 63 61 6e 20 75 73 65 20 3c 63 6f 64 65 3e 73 74 64 2e 64 65 62 75 67 | ace..You.can.use.<code>std.debug |
| 723e0 | 2e 64 75 6d 70 53 74 61 63 6b 54 72 61 63 65 3c 2f 63 6f 64 65 3e 20 74 6f 20 70 72 69 6e 74 20 | .dumpStackTrace</code>.to.print. |
| 72400 | 69 74 2e 20 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 72 65 74 75 72 6e 73 20 63 6f 6d 70 74 69 | it..This.function.returns.compti |
| 72420 | 6d 65 2d 6b 6e 6f 77 6e 20 3c 61 20 68 72 65 66 3d 22 23 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 61 | me-known.<a.href="#null">null</a |
| 72440 | 3e 20 77 68 65 6e 20 62 75 69 6c 64 69 6e 67 20 77 69 74 68 6f 75 74 20 65 72 72 6f 72 20 72 65 | >.when.building.without.error.re |
| 72460 | 74 75 72 6e 20 74 72 61 63 69 6e 67 20 73 75 70 70 6f 72 74 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 | turn.tracing.support.</li>...... |
| 72480 | 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c 68 34 20 69 64 3d 22 49 6d 70 6c 65 6d 65 6e 74 61 74 | .</ul>.......<h4.id="Implementat |
| 724a0 | 69 6f 6e 2d 44 65 74 61 69 6c 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 49 6d 70 6c 65 | ion-Details"><a.href="#toc-Imple |
| 724c0 | 6d 65 6e 74 61 74 69 6f 6e 2d 44 65 74 61 69 6c 73 22 3e 49 6d 70 6c 65 6d 65 6e 74 61 74 69 6f | mentation-Details">Implementatio |
| 724e0 | 6e 20 44 65 74 61 69 6c 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 | n.Details</a>.<a.class="hdr".hre |
| 72500 | 66 3d 22 23 49 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 2d 44 65 74 61 69 6c 73 22 3e c2 a7 3c 2f | f="#Implementation-Details">..</ |
| 72520 | 61 3e 3c 2f 68 34 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 6f 20 61 6e 61 6c | a></h4>........<p>.......To.anal |
| 72540 | 79 7a 65 20 70 65 72 66 6f 72 6d 61 6e 63 65 20 63 6f 73 74 2c 20 74 68 65 72 65 20 61 72 65 20 | yze.performance.cost,.there.are. |
| 72560 | 74 77 6f 20 63 61 73 65 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e | two.cases:.......</p>.......<ul> |
| 72580 | 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 77 68 65 6e 20 6e 6f 20 65 72 72 6f 72 73 20 61 72 65 20 | .........<li>when.no.errors.are. |
| 725a0 | 72 65 74 75 72 6e 65 64 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 77 68 65 6e 20 72 | returned</li>.........<li>when.r |
| 725c0 | 65 74 75 72 6e 69 6e 67 20 65 72 72 6f 72 73 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e | eturning.errors</li>.......</ul> |
| 725e0 | 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 46 6f 72 20 74 68 65 20 63 61 73 65 20 77 68 | .......<p>.......For.the.case.wh |
| 72600 | 65 6e 20 6e 6f 20 65 72 72 6f 72 73 20 61 72 65 20 72 65 74 75 72 6e 65 64 2c 20 74 68 65 20 63 | en.no.errors.are.returned,.the.c |
| 72620 | 6f 73 74 20 69 73 20 61 20 73 69 6e 67 6c 65 20 6d 65 6d 6f 72 79 20 77 72 69 74 65 20 6f 70 65 | ost.is.a.single.memory.write.ope |
| 72640 | 72 61 74 69 6f 6e 2c 20 6f 6e 6c 79 20 69 6e 20 74 68 65 20 66 69 72 73 74 20 6e 6f 6e 2d 66 61 | ration,.only.in.the.first.non-fa |
| 72660 | 69 6c 61 62 6c 65 20 66 75 6e 63 74 69 6f 6e 20 69 6e 20 74 68 65 20 63 61 6c 6c 20 67 72 61 70 | ilable.function.in.the.call.grap |
| 72680 | 68 20 74 68 61 74 20 63 61 6c 6c 73 20 61 20 66 61 69 6c 61 62 6c 65 20 66 75 6e 63 74 69 6f 6e | h.that.calls.a.failable.function |
| 726a0 | 2c 20 69 2e 65 2e 20 77 68 65 6e 20 61 20 66 75 6e 63 74 69 6f 6e 20 72 65 74 75 72 6e 69 6e 67 | ,.i.e..when.a.function.returning |
| 726c0 | 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f | .<code><span.class="tok-type">vo |
| 726e0 | 69 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 63 61 6c 6c 73 20 61 20 66 75 6e 63 74 69 6f | id</span></code>.calls.a.functio |
| 72700 | 6e 20 72 65 74 75 72 6e 69 6e 67 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | n.returning.<code><span.class="t |
| 72720 | 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 | ok-kw">error</span></code>...... |
| 72740 | 20 20 54 68 69 73 20 69 73 20 74 6f 20 69 6e 69 74 69 61 6c 69 7a 65 20 74 68 69 73 20 73 74 72 | ..This.is.to.initialize.this.str |
| 72760 | 75 63 74 20 69 6e 20 74 68 65 20 73 74 61 63 6b 20 6d 65 6d 6f 72 79 3a 0a 20 20 20 20 20 20 3c | uct.in.the.stack.memory:.......< |
| 72780 | 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 |
| 727a0 | 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" |
| 727c0 | 3e 73 74 61 63 6b 5f 74 72 61 63 65 5f 73 74 72 75 63 74 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f | >stack_trace_struct.zig</cite></ |
| 727e0 | 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 |
| 72800 | 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 |
| 72820 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 53 74 61 63 6b 54 72 61 | s="tok-kw">const</span>.StackTra |
| 72840 | 63 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 74 72 75 63 74 | ce.=.<span.class="tok-kw">struct |
| 72860 | 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 69 6e 64 65 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 | </span>.{.....index:.<span.class |
| 72880 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 69 6e | ="tok-type">usize</span>,.....in |
| 728a0 | 73 74 72 75 63 74 69 6f 6e 5f 61 64 64 72 65 73 73 65 73 3a 20 5b 4e 5d 3c 73 70 61 6e 20 63 6c | struction_addresses:.[N]<span.cl |
| 728c0 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 2c 0a 7d 3b 3c | ass="tok-type">usize</span>,.};< |
| 728e0 | 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a | /code></pre></figure>.......<p>. |
| 72900 | 20 20 20 20 20 20 48 65 72 65 2c 20 4e 20 69 73 20 74 68 65 20 6d 61 78 69 6d 75 6d 20 66 75 6e | ......Here,.N.is.the.maximum.fun |
| 72920 | 63 74 69 6f 6e 20 63 61 6c 6c 20 64 65 70 74 68 20 61 73 20 64 65 74 65 72 6d 69 6e 65 64 20 62 | ction.call.depth.as.determined.b |
| 72940 | 79 20 63 61 6c 6c 20 67 72 61 70 68 20 61 6e 61 6c 79 73 69 73 2e 20 52 65 63 75 72 73 69 6f 6e | y.call.graph.analysis..Recursion |
| 72960 | 20 69 73 20 69 67 6e 6f 72 65 64 20 61 6e 64 20 63 6f 75 6e 74 73 20 66 6f 72 20 32 2e 0a 20 20 | .is.ignored.and.counts.for.2.... |
| 72980 | 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 41 20 70 6f 69 6e 74 | ....</p>.......<p>.......A.point |
| 729a0 | 65 72 20 74 6f 20 3c 63 6f 64 65 3e 53 74 61 63 6b 54 72 61 63 65 3c 2f 63 6f 64 65 3e 20 69 73 | er.to.<code>StackTrace</code>.is |
| 729c0 | 20 70 61 73 73 65 64 20 61 73 20 61 20 73 65 63 72 65 74 20 70 61 72 61 6d 65 74 65 72 20 74 6f | .passed.as.a.secret.parameter.to |
| 729e0 | 20 65 76 65 72 79 20 66 75 6e 63 74 69 6f 6e 20 74 68 61 74 20 63 61 6e 20 72 65 74 75 72 6e 20 | .every.function.that.can.return. |
| 72a00 | 61 6e 20 65 72 72 6f 72 2c 20 62 75 74 20 69 74 27 73 20 61 6c 77 61 79 73 20 74 68 65 20 66 69 | an.error,.but.it's.always.the.fi |
| 72a20 | 72 73 74 20 70 61 72 61 6d 65 74 65 72 2c 20 73 6f 20 69 74 20 63 61 6e 20 6c 69 6b 65 6c 79 20 | rst.parameter,.so.it.can.likely. |
| 72a40 | 73 69 74 20 69 6e 20 61 20 72 65 67 69 73 74 65 72 20 61 6e 64 20 73 74 61 79 20 74 68 65 72 65 | sit.in.a.register.and.stay.there |
| 72a60 | 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 61 | ........</p>.......<p>.......Tha |
| 72a80 | 74 27 73 20 69 74 20 66 6f 72 20 74 68 65 20 70 61 74 68 20 77 68 65 6e 20 6e 6f 20 65 72 72 6f | t's.it.for.the.path.when.no.erro |
| 72aa0 | 72 73 20 6f 63 63 75 72 2e 20 49 74 27 73 20 70 72 61 63 74 69 63 61 6c 6c 79 20 66 72 65 65 20 | rs.occur..It's.practically.free. |
| 72ac0 | 69 6e 20 74 65 72 6d 73 20 6f 66 20 70 65 72 66 6f 72 6d 61 6e 63 65 2e 0a 20 20 20 20 20 20 3c | in.terms.of.performance........< |
| 72ae0 | 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 57 68 65 6e 20 67 65 6e 65 72 61 74 | /p>.......<p>.......When.generat |
| 72b00 | 69 6e 67 20 74 68 65 20 63 6f 64 65 20 66 6f 72 20 61 20 66 75 6e 63 74 69 6f 6e 20 74 68 61 74 | ing.the.code.for.a.function.that |
| 72b20 | 20 72 65 74 75 72 6e 73 20 61 6e 20 65 72 72 6f 72 2c 20 6a 75 73 74 20 62 65 66 6f 72 65 20 74 | .returns.an.error,.just.before.t |
| 72b40 | 68 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 | he.<code><span.class="tok-kw">re |
| 72b60 | 74 75 72 6e 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 73 74 61 74 65 6d 65 6e 74 20 28 6f 6e | turn</span></code>.statement.(on |
| 72b80 | 6c 79 20 66 6f 72 20 74 68 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ly.for.the.<code><span.class="to |
| 72ba0 | 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 65 | k-kw">return</span></code>.state |
| 72bc0 | 6d 65 6e 74 73 20 74 68 61 74 20 72 65 74 75 72 6e 20 65 72 72 6f 72 73 29 2c 20 5a 69 67 20 67 | ments.that.return.errors),.Zig.g |
| 72be0 | 65 6e 65 72 61 74 65 73 20 61 20 63 61 6c 6c 20 74 6f 20 74 68 69 73 20 66 75 6e 63 74 69 6f 6e | enerates.a.call.to.this.function |
| 72c00 | 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 |
| 72c20 | 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 |
| 72c40 | 73 73 3d 22 66 69 6c 65 22 3e 7a 69 67 5f 72 65 74 75 72 6e 5f 65 72 72 6f 72 5f 66 6e 2e 7a 69 | ss="file">zig_return_error_fn.zi |
| 72c60 | 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> |
| 72c80 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 6d 61 72 | <span.class="tok-comment">//.mar |
| 72ca0 | 6b 65 64 20 61 73 20 26 71 75 6f 74 3b 6e 6f 2d 69 6e 6c 69 6e 65 26 71 75 6f 74 3b 20 69 6e 20 | ked.as."no-inline".in. |
| 72cc0 | 4c 4c 56 4d 20 49 52 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | LLVM.IR</span>.<span.class="tok- |
| 72ce0 | 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 |
| 72d00 | 6e 22 3e 5f 5f 7a 69 67 5f 72 65 74 75 72 6e 5f 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 28 73 74 61 | n">__zig_return_error</span>(sta |
| 72d20 | 63 6b 5f 74 72 61 63 65 3a 20 2a 53 74 61 63 6b 54 72 61 63 65 29 20 3c 73 70 61 6e 20 63 6c 61 | ck_trace:.*StackTrace).<span.cla |
| 72d40 | 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>.{..... |
| 72d60 | 73 74 61 63 6b 5f 74 72 61 63 65 2e 69 6e 73 74 72 75 63 74 69 6f 6e 5f 61 64 64 72 65 73 73 65 | stack_trace.instruction_addresse |
| 72d80 | 73 5b 73 74 61 63 6b 5f 74 72 61 63 65 2e 69 6e 64 65 78 5d 20 3d 20 3c 73 70 61 6e 20 63 6c 61 | s[stack_trace.index].=.<span.cla |
| 72da0 | 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 72 65 74 75 72 6e 41 64 64 72 65 73 73 3c | ss="tok-builtin">@returnAddress< |
| 72dc0 | 2f 73 70 61 6e 3e 28 29 3b 0a 20 20 20 20 73 74 61 63 6b 5f 74 72 61 63 65 2e 69 6e 64 65 78 20 | /span>();.....stack_trace.index. |
| 72de0 | 3d 20 28 73 74 61 63 6b 5f 74 72 61 63 65 2e 69 6e 64 65 78 20 2b 20 3c 73 70 61 6e 20 63 6c 61 | =.(stack_trace.index.+.<span.cla |
| 72e00 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 20 25 20 4e 3b 0a 7d | ss="tok-number">1</span>).%.N;.} |
| 72e20 | 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e | </code></pre></figure>.......<p> |
| 72e40 | 0a 20 20 20 20 20 20 54 68 65 20 63 6f 73 74 20 69 73 20 32 20 6d 61 74 68 20 6f 70 65 72 61 74 | .......The.cost.is.2.math.operat |
| 72e60 | 69 6f 6e 73 20 70 6c 75 73 20 73 6f 6d 65 20 6d 65 6d 6f 72 79 20 72 65 61 64 73 20 61 6e 64 20 | ions.plus.some.memory.reads.and. |
| 72e80 | 77 72 69 74 65 73 2e 20 54 68 65 20 6d 65 6d 6f 72 79 20 61 63 63 65 73 73 65 64 20 69 73 20 63 | writes..The.memory.accessed.is.c |
| 72ea0 | 6f 6e 73 74 72 61 69 6e 65 64 20 61 6e 64 20 73 68 6f 75 6c 64 20 72 65 6d 61 69 6e 20 63 61 63 | onstrained.and.should.remain.cac |
| 72ec0 | 68 65 64 20 66 6f 72 20 74 68 65 20 64 75 72 61 74 69 6f 6e 20 6f 66 20 74 68 65 20 65 72 72 6f | hed.for.the.duration.of.the.erro |
| 72ee0 | 72 20 72 65 74 75 72 6e 20 62 75 62 62 6c 69 6e 67 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 | r.return.bubbling........</p>... |
| 72f00 | 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 41 73 20 66 6f 72 20 63 6f 64 65 20 73 69 7a 65 20 63 | ....<p>.......As.for.code.size.c |
| 72f20 | 6f 73 74 2c 20 31 20 66 75 6e 63 74 69 6f 6e 20 63 61 6c 6c 20 62 65 66 6f 72 65 20 61 20 72 65 | ost,.1.function.call.before.a.re |
| 72f40 | 74 75 72 6e 20 73 74 61 74 65 6d 65 6e 74 20 69 73 20 6e 6f 20 62 69 67 20 64 65 61 6c 2e 20 45 | turn.statement.is.no.big.deal..E |
| 72f60 | 76 65 6e 20 73 6f 2c 0a 20 20 20 20 20 20 49 20 68 61 76 65 20 3c 61 20 68 72 65 66 3d 22 68 74 | ven.so,.......I.have.<a.href="ht |
| 72f80 | 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 7a 69 67 6c 61 6e 67 2f 7a 69 67 2f 69 73 73 | tps://github.com/ziglang/zig/iss |
| 72fa0 | 75 65 73 2f 36 39 30 22 3e 61 20 70 6c 61 6e 3c 2f 61 3e 20 74 6f 20 6d 61 6b 65 20 74 68 65 20 | ues/690">a.plan</a>.to.make.the. |
| 72fc0 | 63 61 6c 6c 20 74 6f 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 5f 5f 7a 69 67 5f 72 65 74 75 72 6e | call.to.......<code>__zig_return |
| 72fe0 | 5f 65 72 72 6f 72 3c 2f 63 6f 64 65 3e 20 61 20 74 61 69 6c 20 63 61 6c 6c 2c 20 77 68 69 63 68 | _error</code>.a.tail.call,.which |
| 73000 | 20 62 72 69 6e 67 73 20 74 68 65 20 63 6f 64 65 20 73 69 7a 65 20 63 6f 73 74 20 64 6f 77 6e 20 | .brings.the.code.size.cost.down. |
| 73020 | 74 6f 20 61 63 74 75 61 6c 6c 79 20 7a 65 72 6f 2e 20 57 68 61 74 20 69 73 20 61 20 72 65 74 75 | to.actually.zero..What.is.a.retu |
| 73040 | 72 6e 20 73 74 61 74 65 6d 65 6e 74 20 69 6e 20 63 6f 64 65 20 77 69 74 68 6f 75 74 20 65 72 72 | rn.statement.in.code.without.err |
| 73060 | 6f 72 20 72 65 74 75 72 6e 20 74 72 61 63 69 6e 67 20 63 61 6e 20 62 65 63 6f 6d 65 20 61 20 6a | or.return.tracing.can.become.a.j |
| 73080 | 75 6d 70 20 69 6e 73 74 72 75 63 74 69 6f 6e 20 69 6e 20 63 6f 64 65 20 77 69 74 68 20 65 72 72 | ump.instruction.in.code.with.err |
| 730a0 | 6f 72 20 72 65 74 75 72 6e 20 74 72 61 63 69 6e 67 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 | or.return.tracing........</p>... |
| 730c0 | 20 20 20 20 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d | .........................<h2.id= |
| 730e0 | 22 4f 70 74 69 6f 6e 61 6c 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 4f 70 74 69 6f 6e | "Optionals"><a.href="#toc-Option |
| 73100 | 61 6c 73 22 3e 4f 70 74 69 6f 6e 61 6c 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 | als">Optionals</a>.<a.class="hdr |
| 73120 | 22 20 68 72 65 66 3d 22 23 4f 70 74 69 6f 6e 61 6c 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a | ".href="#Optionals">..</a></h2>. |
| 73140 | 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 4f 6e 65 20 61 72 65 61 20 74 68 61 74 20 5a | .......<p>.......One.area.that.Z |
| 73160 | 69 67 20 70 72 6f 76 69 64 65 73 20 73 61 66 65 74 79 20 77 69 74 68 6f 75 74 20 63 6f 6d 70 72 | ig.provides.safety.without.compr |
| 73180 | 6f 6d 69 73 69 6e 67 20 65 66 66 69 63 69 65 6e 63 79 20 6f 72 0a 20 20 20 20 20 20 72 65 61 64 | omising.efficiency.or.......read |
| 731a0 | 61 62 69 6c 69 74 79 20 69 73 20 77 69 74 68 20 74 68 65 20 6f 70 74 69 6f 6e 61 6c 20 74 79 70 | ability.is.with.the.optional.typ |
| 731c0 | 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 |
| 731e0 | 65 20 71 75 65 73 74 69 6f 6e 20 6d 61 72 6b 20 73 79 6d 62 6f 6c 69 7a 65 73 20 74 68 65 20 6f | e.question.mark.symbolizes.the.o |
| 73200 | 70 74 69 6f 6e 61 6c 20 74 79 70 65 2e 20 59 6f 75 20 63 61 6e 20 63 6f 6e 76 65 72 74 20 61 20 | ptional.type..You.can.convert.a. |
| 73220 | 74 79 70 65 20 74 6f 20 61 6e 20 6f 70 74 69 6f 6e 61 6c 0a 20 20 20 20 20 20 74 79 70 65 20 62 | type.to.an.optional.......type.b |
| 73240 | 79 20 70 75 74 74 69 6e 67 20 61 20 71 75 65 73 74 69 6f 6e 20 6d 61 72 6b 20 69 6e 20 66 72 6f | y.putting.a.question.mark.in.fro |
| 73260 | 6e 74 20 6f 66 20 69 74 2c 20 6c 69 6b 65 20 74 68 69 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a | nt.of.it,.like.this:.......</p>. |
| 73280 | 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= |
| 732a0 | 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 6f 70 74 | "zig-cap"><cite.class="file">opt |
| 732c0 | 69 6f 6e 61 6c 5f 69 6e 74 65 67 65 72 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 | ional_integer.zig</cite></figcap |
| 732e0 | 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 |
| 73300 | 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 6e 6f 72 6d 61 6c 20 69 6e 74 65 67 65 72 3c 2f 73 70 61 | -comment">//.normal.integer</spa |
| 73320 | 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 | n>.<span.class="tok-kw">const</s |
| 73340 | 70 61 6e 3e 20 6e 6f 72 6d 61 6c 5f 69 6e 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | pan>.normal_int:.<span.class="to |
| 73360 | 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 |
| 73380 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 3b 0a 0a 3c 73 70 61 | ="tok-number">1234</span>;..<spa |
| 733a0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 6f 70 74 69 6f 6e 61 | n.class="tok-comment">//.optiona |
| 733c0 | 6c 20 69 6e 74 65 67 65 72 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | l.integer</span>.<span.class="to |
| 733e0 | 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6f 70 74 69 6f 6e 61 6c 5f 69 6e 74 3a | k-kw">const</span>.optional_int: |
| 73400 | 20 3f 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 | .?<span.class="tok-type">i32</sp |
| 73420 | 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 |
| 73440 | 36 37 38 3c 2f 73 70 61 6e 3e 3b 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 | 678</span>;</code></pre></figure |
| 73460 | 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 4e 6f 77 20 74 68 65 20 76 61 72 69 61 | >........<p>.......Now.the.varia |
| 73480 | 62 6c 65 20 3c 63 6f 64 65 3e 6f 70 74 69 6f 6e 61 6c 5f 69 6e 74 3c 2f 63 6f 64 65 3e 20 63 6f | ble.<code>optional_int</code>.co |
| 734a0 | 75 6c 64 20 62 65 20 61 6e 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | uld.be.an.<code><span.class="tok |
| 734c0 | 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 6f 72 20 3c 63 6f | -type">i32</span></code>,.or.<co |
| 734e0 | 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f | de><span.class="tok-null">null</ |
| 73500 | 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c | span></code>........</p>.......< |
| 73520 | 70 3e 0a 20 20 20 20 20 20 49 6e 73 74 65 61 64 20 6f 66 20 69 6e 74 65 67 65 72 73 2c 20 6c 65 | p>.......Instead.of.integers,.le |
| 73540 | 74 27 73 20 74 61 6c 6b 20 61 62 6f 75 74 20 70 6f 69 6e 74 65 72 73 2e 20 4e 75 6c 6c 20 72 65 | t's.talk.about.pointers..Null.re |
| 73560 | 66 65 72 65 6e 63 65 73 20 61 72 65 20 74 68 65 20 73 6f 75 72 63 65 20 6f 66 20 6d 61 6e 79 20 | ferences.are.the.source.of.many. |
| 73580 | 72 75 6e 74 69 6d 65 0a 20 20 20 20 20 20 65 78 63 65 70 74 69 6f 6e 73 2c 20 61 6e 64 20 65 76 | runtime.......exceptions,.and.ev |
| 735a0 | 65 6e 20 73 74 61 6e 64 20 61 63 63 75 73 65 64 20 6f 66 20 62 65 69 6e 67 0a 20 20 20 20 20 20 | en.stand.accused.of.being....... |
| 735c0 | 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 77 77 77 2e 6c 75 63 69 64 63 68 61 72 74 2e | <a.href="https://www.lucidchart. |
| 735e0 | 63 6f 6d 2f 74 65 63 68 62 6c 6f 67 2f 32 30 31 35 2f 30 38 2f 33 31 2f 74 68 65 2d 77 6f 72 73 | com/techblog/2015/08/31/the-wors |
| 73600 | 74 2d 6d 69 73 74 61 6b 65 2d 6f 66 2d 63 6f 6d 70 75 74 65 72 2d 73 63 69 65 6e 63 65 2f 22 3e | t-mistake-of-computer-science/"> |
| 73620 | 74 68 65 20 77 6f 72 73 74 20 6d 69 73 74 61 6b 65 20 6f 66 20 63 6f 6d 70 75 74 65 72 20 73 63 | the.worst.mistake.of.computer.sc |
| 73640 | 69 65 6e 63 65 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 5a | ience</a>........</p>.......<p>Z |
| 73660 | 69 67 20 64 6f 65 73 20 6e 6f 74 20 68 61 76 65 20 74 68 65 6d 2e 3c 2f 70 3e 0a 20 20 20 20 20 | ig.does.not.have.them.</p>...... |
| 73680 | 20 3c 70 3e 0a 20 20 20 20 20 20 49 6e 73 74 65 61 64 2c 20 79 6f 75 20 63 61 6e 20 75 73 65 20 | .<p>.......Instead,.you.can.use. |
| 736a0 | 61 6e 20 6f 70 74 69 6f 6e 61 6c 20 70 6f 69 6e 74 65 72 2e 20 54 68 69 73 20 73 65 63 72 65 74 | an.optional.pointer..This.secret |
| 736c0 | 6c 79 20 63 6f 6d 70 69 6c 65 73 20 64 6f 77 6e 20 74 6f 20 61 20 6e 6f 72 6d 61 6c 20 70 6f 69 | ly.compiles.down.to.a.normal.poi |
| 736e0 | 6e 74 65 72 2c 0a 20 20 20 20 20 20 73 69 6e 63 65 20 77 65 20 6b 6e 6f 77 20 77 65 20 63 61 6e | nter,.......since.we.know.we.can |
| 73700 | 20 75 73 65 20 30 20 61 73 20 74 68 65 20 6e 75 6c 6c 20 76 61 6c 75 65 20 66 6f 72 20 74 68 65 | .use.0.as.the.null.value.for.the |
| 73720 | 20 6f 70 74 69 6f 6e 61 6c 20 74 79 70 65 2e 20 42 75 74 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 | .optional.type..But.the.compiler |
| 73740 | 0a 20 20 20 20 20 20 63 61 6e 20 63 68 65 63 6b 20 79 6f 75 72 20 77 6f 72 6b 20 61 6e 64 20 6d | .......can.check.your.work.and.m |
| 73760 | 61 6b 65 20 73 75 72 65 20 79 6f 75 20 64 6f 6e 27 74 20 61 73 73 69 67 6e 20 6e 75 6c 6c 20 74 | ake.sure.you.don't.assign.null.t |
| 73780 | 6f 20 73 6f 6d 65 74 68 69 6e 67 20 74 68 61 74 20 63 61 6e 27 74 20 62 65 20 6e 75 6c 6c 2e 0a | o.something.that.can't.be.null.. |
| 737a0 | 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 79 70 69 63 | ......</p>.......<p>.......Typic |
| 737c0 | 61 6c 6c 79 20 74 68 65 20 64 6f 77 6e 73 69 64 65 20 6f 66 20 6e 6f 74 20 68 61 76 69 6e 67 20 | ally.the.downside.of.not.having. |
| 737e0 | 6e 75 6c 6c 20 69 73 20 74 68 61 74 20 69 74 20 6d 61 6b 65 73 20 74 68 65 20 63 6f 64 65 20 6d | null.is.that.it.makes.the.code.m |
| 73800 | 6f 72 65 20 76 65 72 62 6f 73 65 20 74 6f 0a 20 20 20 20 20 20 77 72 69 74 65 2e 20 42 75 74 2c | ore.verbose.to.......write..But, |
| 73820 | 20 6c 65 74 27 73 20 63 6f 6d 70 61 72 65 20 73 6f 6d 65 20 65 71 75 69 76 61 6c 65 6e 74 20 43 | .let's.compare.some.equivalent.C |
| 73840 | 20 63 6f 64 65 20 61 6e 64 20 5a 69 67 20 63 6f 64 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 | .code.and.Zig.code........</p>.. |
| 73860 | 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 61 73 6b 3a 20 63 61 6c 6c 20 6d 61 6c 6c 6f 63 | .....<p>.......Task:.call.malloc |
| 73880 | 2c 20 69 66 20 74 68 65 20 72 65 73 75 6c 74 20 69 73 20 6e 75 6c 6c 2c 20 72 65 74 75 72 6e 20 | ,.if.the.result.is.null,.return. |
| 738a0 | 6e 75 6c 6c 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 43 20 63 6f 64 65 | null........</p>.......<p>C.code |
| 738c0 | 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 |
| 738e0 | 6c 61 73 73 3d 22 63 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e | lass="c-cap"><cite.class="file"> |
| 73900 | 63 61 6c 6c 5f 6d 61 6c 6c 6f 63 5f 69 6e 5f 63 2e 63 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 | call_malloc_in_c.c</cite></figca |
| 73920 | 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 2f 2f 20 6d 61 6c 6c 6f 63 20 70 72 6f 74 6f | ption><pre><code>//.malloc.proto |
| 73940 | 74 79 70 65 20 69 6e 63 6c 75 64 65 64 20 66 6f 72 20 72 65 66 65 72 65 6e 63 65 0a 76 6f 69 64 | type.included.for.reference.void |
| 73960 | 20 2a 6d 61 6c 6c 6f 63 28 73 69 7a 65 5f 74 20 73 69 7a 65 29 3b 0a 0a 73 74 72 75 63 74 20 46 | .*malloc(size_t.size);..struct.F |
| 73980 | 6f 6f 20 2a 64 6f 5f 61 5f 74 68 69 6e 67 28 76 6f 69 64 29 20 7b 0a 20 20 20 20 63 68 61 72 20 | oo.*do_a_thing(void).{.....char. |
| 739a0 | 2a 70 74 72 20 3d 20 6d 61 6c 6c 6f 63 28 31 32 33 34 29 3b 0a 20 20 20 20 69 66 20 28 21 70 74 | *ptr.=.malloc(1234);.....if.(!pt |
| 739c0 | 72 29 20 72 65 74 75 72 6e 20 4e 55 4c 4c 3b 0a 20 20 20 20 2f 2f 20 2e 2e 2e 0a 7d 3c 2f 63 6f | r).return.NULL;.....//.....}</co |
| 739e0 | 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 5a 69 67 20 | de></pre></figure>.......<p>Zig. |
| 73a00 | 63 6f 64 65 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 | code</p>.......<figure><figcapti |
| 73a20 | 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=" |
| 73a40 | 66 69 6c 65 22 3e 63 61 6c 6c 5f 6d 61 6c 6c 6f 63 5f 66 72 6f 6d 5f 7a 69 67 2e 7a 69 67 3c 2f | file">call_malloc_from_zig.zig</ |
| 73a60 | 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 |
| 73a80 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 6d 61 6c 6c 6f 63 | an.class="tok-comment">//.malloc |
| 73aa0 | 20 70 72 6f 74 6f 74 79 70 65 20 69 6e 63 6c 75 64 65 64 20 66 6f 72 20 72 65 66 65 72 65 6e 63 | .prototype.included.for.referenc |
| 73ac0 | 65 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 78 | e</span>.<span.class="tok-kw">ex |
| 73ae0 | 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 22 | tern</span>.<span.class="tok-kw" |
| 73b00 | 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"> |
| 73b20 | 6d 61 6c 6c 6f 63 3c 2f 73 70 61 6e 3e 28 73 69 7a 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | malloc</span>(size:.<span.class= |
| 73b40 | 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 29 20 3f 5b 2a 5d 3c 73 70 | "tok-type">usize</span>).?[*]<sp |
| 73b60 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 3b 0a 0a | an.class="tok-type">u8</span>;.. |
| 73b80 | 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>.< |
| 73ba0 | 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 70 | span.class="tok-fn">doAThing</sp |
| 73bc0 | 61 6e 3e 28 29 20 3f 2a 46 6f 6f 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | an>().?*Foo.{.....<span.class="t |
| 73be0 | 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 70 74 72 20 3d 20 6d 61 6c 6c 6f 63 | ok-kw">const</span>.ptr.=.malloc |
| 73c00 | 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 34 3c 2f | (<span.class="tok-number">1234</ |
| 73c20 | 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 6f 72 65 6c | span>).<span.class="tok-kw">orel |
| 73c40 | 73 65 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 | se</span>.<span.class="tok-kw">r |
| 73c60 | 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | eturn</span>.<span.class="tok-nu |
| 73c80 | 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 5f 20 3d 20 70 74 72 3b 20 3c 73 | ll">null</span>;....._.=.ptr;.<s |
| 73ca0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 2e 2e 2e 3c 2f | pan.class="tok-comment">//....</ |
| 73cc0 | 73 70 61 6e 3e 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 20 20 | span>.}</code></pre></figure>... |
| 73ce0 | 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 20 20 48 65 72 65 2c 20 5a 69 67 20 69 73 20 61 74 20 | ....<p>.........Here,.Zig.is.at. |
| 73d00 | 6c 65 61 73 74 20 61 73 20 63 6f 6e 76 65 6e 69 65 6e 74 2c 20 69 66 20 6e 6f 74 20 6d 6f 72 65 | least.as.convenient,.if.not.more |
| 73d20 | 2c 20 74 68 61 6e 20 43 2e 20 41 6e 64 2c 20 74 68 65 20 74 79 70 65 20 6f 66 20 22 70 74 72 22 | ,.than.C..And,.the.type.of."ptr" |
| 73d40 | 0a 20 20 20 20 20 20 20 20 69 73 20 3c 63 6f 64 65 3e 5b 2a 5d 3c 73 70 61 6e 20 63 6c 61 73 73 | .........is.<code>[*]<span.class |
| 73d60 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 3c 65 6d | ="tok-type">u8</span></code>.<em |
| 73d80 | 3e 6e 6f 74 3c 2f 65 6d 3e 20 3c 63 6f 64 65 3e 3f 5b 2a 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d | >not</em>.<code>?[*]<span.class= |
| 73da0 | 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 20 54 68 65 | "tok-type">u8</span></code>..The |
| 73dc0 | 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 6f 72 65 6c | .<code><span.class="tok-kw">orel |
| 73de0 | 73 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6b 65 79 77 6f 72 64 0a 20 20 20 20 20 20 20 | se</span></code>.keyword........ |
| 73e00 | 20 20 20 20 20 20 20 20 20 20 20 20 20 75 6e 77 72 61 70 70 65 64 20 74 68 65 20 6f 70 74 69 6f | .............unwrapped.the.optio |
| 73e20 | 6e 61 6c 20 74 79 70 65 20 61 6e 64 20 74 68 65 72 65 66 6f 72 65 20 3c 63 6f 64 65 3e 70 74 72 | nal.type.and.therefore.<code>ptr |
| 73e40 | 3c 2f 63 6f 64 65 3e 20 69 73 20 67 75 61 72 61 6e 74 65 65 64 20 74 6f 20 62 65 20 6e 6f 6e 2d | </code>.is.guaranteed.to.be.non- |
| 73e60 | 6e 75 6c 6c 20 65 76 65 72 79 77 68 65 72 65 0a 20 20 20 20 20 20 20 20 69 74 20 69 73 20 75 73 | null.everywhere.........it.is.us |
| 73e80 | 65 64 20 69 6e 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 | ed.in.the.function........</p>.. |
| 73ea0 | 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 20 20 54 68 65 20 6f 74 68 65 72 20 66 6f 72 6d 20 | .....<p>.........The.other.form. |
| 73ec0 | 6f 66 20 63 68 65 63 6b 69 6e 67 20 61 67 61 69 6e 73 74 20 4e 55 4c 4c 20 79 6f 75 20 6d 69 67 | of.checking.against.NULL.you.mig |
| 73ee0 | 68 74 20 73 65 65 20 6c 6f 6f 6b 73 20 6c 69 6b 65 20 74 68 69 73 3a 0a 20 20 20 20 20 20 3c 2f | ht.see.looks.like.this:.......</ |
| 73f00 | 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 |
| 73f20 | 73 73 3d 22 63 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 63 68 | ss="c-cap"><cite.class="file">ch |
| 73f40 | 65 63 6b 69 6e 67 5f 6e 75 6c 6c 5f 69 6e 5f 63 2e 63 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 | ecking_null_in_c.c</cite></figca |
| 73f60 | 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 76 6f 69 64 20 64 6f 5f 61 5f 74 68 69 6e 67 | ption><pre><code>void.do_a_thing |
| 73f80 | 28 73 74 72 75 63 74 20 46 6f 6f 20 2a 66 6f 6f 29 20 7b 0a 20 20 20 20 2f 2f 20 64 6f 20 73 6f | (struct.Foo.*foo).{.....//.do.so |
| 73fa0 | 6d 65 20 73 74 75 66 66 0a 0a 20 20 20 20 69 66 20 28 66 6f 6f 29 20 7b 0a 20 20 20 20 20 20 20 | me.stuff......if.(foo).{........ |
| 73fc0 | 20 64 6f 5f 73 6f 6d 65 74 68 69 6e 67 5f 77 69 74 68 5f 66 6f 6f 28 66 6f 6f 29 3b 0a 20 20 20 | .do_something_with_foo(foo);.... |
| 73fe0 | 20 7d 0a 0a 20 20 20 20 2f 2f 20 64 6f 20 73 6f 6d 65 20 73 74 75 66 66 0a 7d 3c 2f 63 6f 64 65 | .}......//.do.some.stuff.}</code |
| 74000 | 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 20 | ></pre></figure>.......<p>...... |
| 74020 | 20 20 20 49 6e 20 5a 69 67 20 79 6f 75 20 63 61 6e 20 61 63 63 6f 6d 70 6c 69 73 68 20 74 68 65 | ...In.Zig.you.can.accomplish.the |
| 74040 | 20 73 61 6d 65 20 74 68 69 6e 67 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 | .same.thing:.......</p>.......<f |
| 74060 | 69 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 |
| 74080 | 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 63 68 65 63 6b 69 6e 67 5f 6e 75 | "><cite.class="file">checking_nu |
| 740a0 | 6c 6c 5f 69 6e 5f 7a 69 67 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e | ll_in_zig.zig</cite></figcaption |
| 740c0 | 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" |
| 740e0 | 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 3d | >const</span>.Foo.=.<span.class= |
| 74100 | 22 74 6f 6b 2d 6b 77 22 3e 73 74 72 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 7d 3b 0a 3c 73 70 61 6e | "tok-kw">struct</span>.{};.<span |
| 74120 | 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. |
| 74140 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 64 6f 53 6f 6d 65 74 68 69 6e 67 57 69 74 68 46 6f | class="tok-fn">doSomethingWithFo |
| 74160 | 6f 3c 2f 73 70 61 6e 3e 28 66 6f 6f 3a 20 2a 46 6f 6f 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | o</span>(foo:.*Foo).<span.class= |
| 74180 | 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 5f 20 3d | "tok-type">void</span>.{....._.= |
| 741a0 | 20 66 6f 6f 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e | .foo;.}..<span.class="tok-kw">fn |
| 741c0 | 3c 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 |
| 741e0 | 54 68 69 6e 67 3c 2f 73 70 61 6e 3e 28 6f 70 74 69 6f 6e 61 6c 5f 66 6f 6f 3a 20 3f 2a 46 6f 6f | Thing</span>(optional_foo:.?*Foo |
| 74200 | 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 |
| 74220 | 70 61 6e 3e 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 |
| 74240 | 65 6e 74 22 3e 2f 2f 20 64 6f 20 73 6f 6d 65 20 73 74 75 66 66 3c 2f 73 70 61 6e 3e 0a 0a 20 20 | ent">//.do.some.stuff</span>.... |
| 74260 | 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e | ..<span.class="tok-kw">if</span> |
| 74280 | 20 28 6f 70 74 69 6f 6e 61 6c 5f 66 6f 6f 29 20 7c 66 6f 6f 7c 20 7b 0a 20 20 20 20 20 20 20 20 | .(optional_foo).|foo|.{......... |
| 742a0 | 64 6f 53 6f 6d 65 74 68 69 6e 67 57 69 74 68 46 6f 6f 28 66 6f 6f 29 3b 0a 20 20 20 20 7d 0a 0a | doSomethingWithFoo(foo);.....}.. |
| 742c0 | 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">// |
| 742e0 | 20 64 6f 20 73 6f 6d 65 20 73 74 75 66 66 3c 2f 73 70 61 6e 3e 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f | .do.some.stuff</span>.}</code></ |
| 74300 | 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 4f | pre></figure>........<p>.......O |
| 74320 | 6e 63 65 20 61 67 61 69 6e 2c 20 74 68 65 20 6e 6f 74 61 62 6c 65 20 74 68 69 6e 67 20 68 65 72 | nce.again,.the.notable.thing.her |
| 74340 | 65 20 69 73 20 74 68 61 74 20 69 6e 73 69 64 65 20 74 68 65 20 69 66 20 62 6c 6f 63 6b 2c 0a 20 | e.is.that.inside.the.if.block,.. |
| 74360 | 20 20 20 20 20 3c 63 6f 64 65 3e 66 6f 6f 3c 2f 63 6f 64 65 3e 20 69 73 20 6e 6f 20 6c 6f 6e 67 | .....<code>foo</code>.is.no.long |
| 74380 | 65 72 20 61 6e 20 6f 70 74 69 6f 6e 61 6c 20 70 6f 69 6e 74 65 72 2c 20 69 74 20 69 73 20 61 20 | er.an.optional.pointer,.it.is.a. |
| 743a0 | 70 6f 69 6e 74 65 72 2c 20 77 68 69 63 68 0a 20 20 20 20 20 20 63 61 6e 6e 6f 74 20 62 65 20 6e | pointer,.which.......cannot.be.n |
| 743c0 | 75 6c 6c 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 | ull........</p>.......<p>....... |
| 743e0 | 4f 6e 65 20 62 65 6e 65 66 69 74 20 74 6f 20 74 68 69 73 20 69 73 20 74 68 61 74 20 66 75 6e 63 | One.benefit.to.this.is.that.func |
| 74400 | 74 69 6f 6e 73 20 77 68 69 63 68 20 74 61 6b 65 20 70 6f 69 6e 74 65 72 73 20 61 73 20 61 72 67 | tions.which.take.pointers.as.arg |
| 74420 | 75 6d 65 6e 74 73 20 63 61 6e 0a 20 20 20 20 20 20 62 65 20 61 6e 6e 6f 74 61 74 65 64 20 77 69 | uments.can.......be.annotated.wi |
| 74440 | 74 68 20 74 68 65 20 22 6e 6f 6e 6e 75 6c 6c 22 20 61 74 74 72 69 62 75 74 65 20 2d 20 3c 63 6f | th.the."nonnull".attribute.-.<co |
| 74460 | 64 65 3e 5f 5f 61 74 74 72 69 62 75 74 65 5f 5f 28 28 6e 6f 6e 6e 75 6c 6c 29 29 3c 2f 63 6f 64 | de>__attribute__((nonnull))</cod |
| 74480 | 65 3e 20 69 6e 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 67 63 63 | e>.in.......<a.href="https://gcc |
| 744a0 | 2e 67 6e 75 2e 6f 72 67 2f 6f 6e 6c 69 6e 65 64 6f 63 73 2f 67 63 63 2d 34 2e 30 2e 30 2f 67 63 | .gnu.org/onlinedocs/gcc-4.0.0/gc |
| 744c0 | 63 2f 46 75 6e 63 74 69 6f 6e 2d 41 74 74 72 69 62 75 74 65 73 2e 68 74 6d 6c 22 3e 47 43 43 3c | c/Function-Attributes.html">GCC< |
| 744e0 | 2f 61 3e 2e 0a 20 20 20 20 20 20 54 68 65 20 6f 70 74 69 6d 69 7a 65 72 20 63 61 6e 20 73 6f 6d | /a>........The.optimizer.can.som |
| 74500 | 65 74 69 6d 65 73 20 6d 61 6b 65 20 62 65 74 74 65 72 20 64 65 63 69 73 69 6f 6e 73 20 6b 6e 6f | etimes.make.better.decisions.kno |
| 74520 | 77 69 6e 67 20 74 68 61 74 20 70 6f 69 6e 74 65 72 20 61 72 67 75 6d 65 6e 74 73 0a 20 20 20 20 | wing.that.pointer.arguments..... |
| 74540 | 20 20 63 61 6e 6e 6f 74 20 62 65 20 6e 75 6c 6c 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 | ..cannot.be.null........</p>.... |
| 74560 | 20 20 20 3c 68 33 20 69 64 3d 22 4f 70 74 69 6f 6e 61 6c 2d 54 79 70 65 22 3e 3c 61 20 68 72 65 | ...<h3.id="Optional-Type"><a.hre |
| 74580 | 66 3d 22 23 74 6f 63 2d 4f 70 74 69 6f 6e 61 6c 2d 54 79 70 65 22 3e 4f 70 74 69 6f 6e 61 6c 20 | f="#toc-Optional-Type">Optional. |
| 745a0 | 54 79 70 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 4f | Type</a>.<a.class="hdr".href="#O |
| 745c0 | 70 74 69 6f 6e 61 6c 2d 54 79 70 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 | ptional-Type">..</a></h3>....... |
| 745e0 | 20 3c 70 3e 41 6e 20 6f 70 74 69 6f 6e 61 6c 20 69 73 20 63 72 65 61 74 65 64 20 62 79 20 70 75 | .<p>An.optional.is.created.by.pu |
| 74600 | 74 74 69 6e 67 20 3c 63 6f 64 65 3e 3f 3c 2f 63 6f 64 65 3e 20 69 6e 20 66 72 6f 6e 74 20 6f 66 | tting.<code>?</code>.in.front.of |
| 74620 | 20 61 20 74 79 70 65 2e 20 59 6f 75 20 63 61 6e 20 75 73 65 20 63 6f 6d 70 69 6c 65 2d 74 69 6d | .a.type..You.can.use.compile-tim |
| 74640 | 65 0a 20 20 20 20 20 20 72 65 66 6c 65 63 74 69 6f 6e 20 74 6f 20 61 63 63 65 73 73 20 74 68 65 | e.......reflection.to.access.the |
| 74660 | 20 63 68 69 6c 64 20 74 79 70 65 20 6f 66 20 61 6e 20 6f 70 74 69 6f 6e 61 6c 3a 3c 2f 70 3e 0a | .child.type.of.an.optional:</p>. |
| 74680 | 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= |
| 746a0 | 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 |
| 746c0 | 74 5f 6f 70 74 69 6f 6e 61 6c 5f 74 79 70 65 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 | t_optional_type.zig</cite></figc |
| 746e0 | 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 |
| 74700 | 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 3c 73 70 | ok-kw">const</span>.expect.=.<sp |
| 74720 | 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</ |
| 74740 | 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 |
| 74760 | 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 | t;std"</span>).testing.expe |
| 74780 | 63 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f | ct;..<span.class="tok-kw">test</ |
| 747a0 | 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 |
| 747c0 | 74 3b 6f 70 74 69 6f 6e 61 6c 20 74 79 70 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 | t;optional.type"</span>.{.. |
| 747e0 | 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">//. |
| 74800 | 44 65 63 6c 61 72 65 20 61 6e 20 6f 70 74 69 6f 6e 61 6c 20 61 6e 64 20 63 6f 65 72 63 65 20 66 | Declare.an.optional.and.coerce.f |
| 74820 | 72 6f 6d 20 6e 75 6c 6c 3a 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | rom.null:</span>.....<span.class |
| 74840 | 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 66 6f 6f 3a 20 3f 3c 73 70 61 6e | ="tok-kw">var</span>.foo:.?<span |
| 74860 | 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>.=.< |
| 74880 | 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 |
| 748a0 | 3e 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 | >;......<span.class="tok-comment |
| 748c0 | 22 3e 2f 2f 20 43 6f 65 72 63 65 20 66 72 6f 6d 20 63 68 69 6c 64 20 74 79 70 65 20 6f 66 20 61 | ">//.Coerce.from.child.type.of.a |
| 748e0 | 6e 20 6f 70 74 69 6f 6e 61 6c 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 66 6f 6f 20 3d 20 3c 73 70 61 | n.optional</span>.....foo.=.<spa |
| 74900 | 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> |
| 74920 | 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" |
| 74940 | 3e 2f 2f 20 55 73 65 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 72 65 66 6c 65 63 74 69 6f 6e 20 | >//.Use.compile-time.reflection. |
| 74960 | 74 6f 20 61 63 63 65 73 73 20 74 68 65 20 63 68 69 6c 64 20 74 79 70 65 20 6f 66 20 74 68 65 20 | to.access.the.child.type.of.the. |
| 74980 | 6f 70 74 69 6f 6e 61 6c 3a 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | optional:</span>.....<span.class |
| 749a0 | 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 |
| 749c0 | 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 |
| 749e0 | 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 |
| 74a00 | 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 |
| 74a20 | 6c 74 69 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 66 6f 6f 29 29 2e 6f 70 74 69 6f | ltin">@TypeOf</span>(foo)).optio |
| 74a40 | 6e 61 6c 2e 63 68 69 6c 64 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | nal.child.==.<span.class="tok-ty |
| 74a60 | 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c | pe">i32</span>);.}</code></pre>< |
| 74a80 | 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 |
| 74aa0 | 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> |
| 74ac0 | 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_ |
| 74ae0 | 6f 70 74 69 6f 6e 61 6c 5f 74 79 70 65 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 | optional_type.zig</kbd>.1/1.test |
| 74b00 | 5f 6f 70 74 69 6f 6e 61 6c 5f 74 79 70 65 2e 74 65 73 74 2e 6f 70 74 69 6f 6e 61 6c 20 74 79 70 | _optional_type.test.optional.typ |
| 74b20 | 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 |
| 74b40 | 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>............... |
| 74b60 | 3c 68 33 20 69 64 3d 22 6e 75 6c 6c 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 6e 75 6c 6c | <h3.id="null"><a.href="#toc-null |
| 74b80 | 22 3e 6e 75 6c 6c 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 | ">null</a>.<a.class="hdr".href=" |
| 74ba0 | 23 6e 75 6c 6c 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 | #null">..</a></h3>........<p>... |
| 74bc0 | 20 20 20 20 4a 75 73 74 20 6c 69 6b 65 20 3c 61 20 68 72 65 66 3d 22 23 75 6e 64 65 66 69 6e 65 | ....Just.like.<a.href="#undefine |
| 74be0 | 64 22 3e 75 6e 64 65 66 69 6e 65 64 3c 2f 61 3e 2c 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c | d">undefined</a>,.<code><span.cl |
| 74c00 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 | ass="tok-null">null</span></code |
| 74c20 | 3e 20 68 61 73 20 69 74 73 20 6f 77 6e 20 74 79 70 65 2c 20 61 6e 64 20 74 68 65 20 6f 6e 6c 79 | >.has.its.own.type,.and.the.only |
| 74c40 | 20 77 61 79 20 74 6f 20 75 73 65 20 69 74 20 69 73 20 74 6f 0a 20 20 20 20 20 20 63 61 73 74 20 | .way.to.use.it.is.to.......cast. |
| 74c60 | 69 74 20 74 6f 20 61 20 64 69 66 66 65 72 65 6e 74 20 74 79 70 65 3a 0a 20 20 20 20 20 20 3c 2f | it.to.a.different.type:.......</ |
| 74c80 | 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 |
| 74ca0 | 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"> |
| 74cc0 | 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 65 | null.zig</cite></figcaption><pre |
| 74ce0 | 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 |
| 74d00 | 74 3c 2f 73 70 61 6e 3e 20 6f 70 74 69 6f 6e 61 6c 5f 76 61 6c 75 65 3a 20 3f 3c 73 70 61 6e 20 | t</span>.optional_value:.?<span. |
| 74d20 | 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 |
| 74d40 | 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> |
| 74d60 | 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 0a | ;</code></pre></figure>......... |
| 74d80 | 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 4f 70 74 69 6f 6e 61 6c 2d 50 6f 69 6e 74 65 72 73 22 | ......<h3.id="Optional-Pointers" |
| 74da0 | 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 4f 70 74 69 6f 6e 61 6c 2d 50 6f 69 6e 74 65 72 73 | ><a.href="#toc-Optional-Pointers |
| 74dc0 | 22 3e 4f 70 74 69 6f 6e 61 6c 20 50 6f 69 6e 74 65 72 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 | ">Optional.Pointers</a>.<a.class |
| 74de0 | 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 4f 70 74 69 6f 6e 61 6c 2d 50 6f 69 6e 74 65 72 73 22 | ="hdr".href="#Optional-Pointers" |
| 74e00 | 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 6e 20 6f 70 74 69 6f 6e | >..</a></h3>........<p>An.option |
| 74e20 | 61 6c 20 70 6f 69 6e 74 65 72 20 69 73 20 67 75 61 72 61 6e 74 65 65 64 20 74 6f 20 62 65 20 74 | al.pointer.is.guaranteed.to.be.t |
| 74e40 | 68 65 20 73 61 6d 65 20 73 69 7a 65 20 61 73 20 61 20 70 6f 69 6e 74 65 72 2e 20 54 68 65 20 3c | he.same.size.as.a.pointer..The.< |
| 74e60 | 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c | code><span.class="tok-null">null |
| 74e80 | 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6f 66 0a 20 20 20 20 20 20 74 68 65 20 6f 70 74 69 | </span></code>.of.......the.opti |
| 74ea0 | 6f 6e 61 6c 20 69 73 20 67 75 61 72 61 6e 74 65 65 64 20 74 6f 20 62 65 20 61 64 64 72 65 73 73 | onal.is.guaranteed.to.be.address |
| 74ec0 | 20 30 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f | .0.</p>.......<figure><figcaptio |
| 74ee0 | 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 |
| 74f00 | 69 6c 65 22 3e 74 65 73 74 5f 6f 70 74 69 6f 6e 61 6c 5f 70 6f 69 6e 74 65 72 2e 7a 69 67 3c 2f | ile">test_optional_pointer.zig</ |
| 74f20 | 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 |
| 74f40 | 61 6e 20 63 6c 61 73 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 |
| 74f60 | 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 |
| 74f80 | 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 |
| 74fa0 | 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 |
| 74fc0 | 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 |
| 74fe0 | 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 |
| 75000 | 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 6f 70 74 69 6f 6e 61 6c 20 70 6f 69 6e 74 65 72 73 26 71 | k-str">"optional.pointers&q |
| 75020 | 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 |
| 75040 | 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 50 6f 69 6e 74 65 72 73 20 63 61 6e 6e 6f 74 20 62 | ok-comment">//.Pointers.cannot.b |
| 75060 | 65 20 6e 75 6c 6c 2e 20 49 66 20 79 6f 75 20 77 61 6e 74 20 61 20 6e 75 6c 6c 20 70 6f 69 6e 74 | e.null..If.you.want.a.null.point |
| 75080 | 65 72 2c 20 75 73 65 20 74 68 65 20 6f 70 74 69 6f 6e 61 6c 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 | er,.use.the.optional</span>..... |
| 750a0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 70 72 65 | <span.class="tok-comment">//.pre |
| 750c0 | 66 69 78 20 60 3f 60 20 74 6f 20 6d 61 6b 65 20 74 68 65 20 70 6f 69 6e 74 65 72 20 74 79 70 65 | fix.`?`.to.make.the.pointer.type |
| 750e0 | 20 6f 70 74 69 6f 6e 61 6c 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | .optional.</span>.....<span.clas |
| 75100 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 70 74 72 3a 20 3f 2a 3c 73 70 | s="tok-kw">var</span>.ptr:.?*<sp |
| 75120 | 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>.= |
| 75140 | 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 70 | .<span.class="tok-null">null</sp |
| 75160 | 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 |
| 75180 | 61 72 3c 2f 73 70 61 6e 3e 20 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | ar</span>.x:.<span.class="tok-ty |
| 751a0 | 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 |
| 751c0 | 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 70 74 72 20 3d 20 26 61 | k-number">1</span>;.....ptr.=.&a |
| 751e0 | 6d 70 3b 78 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | mp;x;......<span.class="tok-kw"> |
| 75200 | 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 70 74 72 2e 3f 2e 2a 20 3d 3d 20 3c 73 70 | try</span>.expect(ptr.?.*.==.<sp |
| 75220 | 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 3b | an.class="tok-number">1</span>); |
| 75240 | 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"> |
| 75260 | 2f 2f 20 4f 70 74 69 6f 6e 61 6c 20 70 6f 69 6e 74 65 72 73 20 61 72 65 20 74 68 65 20 73 61 6d | //.Optional.pointers.are.the.sam |
| 75280 | 65 20 73 69 7a 65 20 61 73 20 6e 6f 72 6d 61 6c 20 70 6f 69 6e 74 65 72 73 2c 20 62 65 63 61 75 | e.size.as.normal.pointers,.becau |
| 752a0 | 73 65 20 70 6f 69 6e 74 65 72 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | se.pointer</span>.....<span.clas |
| 752c0 | 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 76 61 6c 75 65 20 30 20 69 73 20 75 73 | s="tok-comment">//.value.0.is.us |
| 752e0 | 65 64 20 61 73 20 74 68 65 20 6e 75 6c 6c 20 76 61 6c 75 65 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 | ed.as.the.null.value.</span>.... |
| 75300 | 20 3c 73 70 61 6e 20 63 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> |
| 75320 | 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 |
| 75340 | 22 3e 40 73 69 7a 65 4f 66 3c 2f 73 70 61 6e 3e 28 3f 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ">@sizeOf</span>(?*<span.class=" |
| 75360 | 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 3c 73 70 61 6e 20 63 | tok-type">i32</span>).==.<span.c |
| 75380 | 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 69 7a 65 4f 66 3c 2f 73 70 61 6e | lass="tok-builtin">@sizeOf</span |
| 753a0 | 3e 28 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 | >(*<span.class="tok-type">i32</s |
| 753c0 | 70 61 6e 3e 29 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c | pan>));.}</code></pre></figure>< |
| 753e0 | 66 69 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- |
| 75400 | 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 |
| 75420 | 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 6f 70 74 69 6f 6e 61 6c 5f | p>$.<kbd>zig.test.test_optional_ |
| 75440 | 70 6f 69 6e 74 65 72 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 6f 70 74 69 6f | pointer.zig</kbd>.1/1.test_optio |
| 75460 | 6e 61 6c 5f 70 6f 69 6e 74 65 72 2e 74 65 73 74 2e 6f 70 74 69 6f 6e 61 6c 20 70 6f 69 6e 74 65 | nal_pointer.test.optional.pointe |
| 75480 | 72 73 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 73 61 | rs...OK.All.1.tests.passed..</sa |
| 754a0 | 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>.............. |
| 754c0 | 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 |
| 754e0 | 65 66 3d 22 23 77 68 69 6c 65 2d 77 69 74 68 2d 4f 70 74 69 6f 6e 61 6c 73 22 3e 77 68 69 6c 65 | ef="#while-with-Optionals">while |
| 75500 | 20 77 69 74 68 20 4f 70 74 69 6f 6e 61 6c 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 | .with.Optionals</a></li>.<li><a. |
| 75520 | 68 72 65 66 3d 22 23 69 66 2d 77 69 74 68 2d 4f 70 74 69 6f 6e 61 6c 73 22 3e 69 66 20 77 69 74 | href="#if-with-Optionals">if.wit |
| 75540 | 68 20 4f 70 74 69 6f 6e 61 6c 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 | h.Optionals</a></li>.</ul>...... |
| 75560 | 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 43 61 73 74 69 6e 67 22 3e 3c 61 20 68 72 65 | .........<h2.id="Casting"><a.hre |
| 75580 | 66 3d 22 23 74 6f 63 2d 43 61 73 74 69 6e 67 22 3e 43 61 73 74 69 6e 67 3c 2f 61 3e 20 3c 61 20 | f="#toc-Casting">Casting</a>.<a. |
| 755a0 | 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 43 61 73 74 69 6e 67 22 3e c2 a7 3c 2f | class="hdr".href="#Casting">..</ |
| 755c0 | 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 41 20 3c 73 74 72 6f | a></h2>........<p>.......A.<stro |
| 755e0 | 6e 67 3e 74 79 70 65 20 63 61 73 74 3c 2f 73 74 72 6f 6e 67 3e 20 63 6f 6e 76 65 72 74 73 20 61 | ng>type.cast</strong>.converts.a |
| 75600 | 20 76 61 6c 75 65 20 6f 66 20 6f 6e 65 20 74 79 70 65 20 74 6f 20 61 6e 6f 74 68 65 72 2e 0a 20 | .value.of.one.type.to.another... |
| 75620 | 20 20 20 20 20 5a 69 67 20 68 61 73 20 3c 61 20 68 72 65 66 3d 22 23 54 79 70 65 2d 43 6f 65 72 | .....Zig.has.<a.href="#Type-Coer |
| 75640 | 63 69 6f 6e 22 3e 54 79 70 65 20 43 6f 65 72 63 69 6f 6e 3c 2f 61 3e 20 66 6f 72 20 63 6f 6e 76 | cion">Type.Coercion</a>.for.conv |
| 75660 | 65 72 73 69 6f 6e 73 20 74 68 61 74 20 61 72 65 20 6b 6e 6f 77 6e 20 74 6f 20 62 65 20 63 6f 6d | ersions.that.are.known.to.be.com |
| 75680 | 70 6c 65 74 65 6c 79 20 73 61 66 65 20 61 6e 64 20 75 6e 61 6d 62 69 67 75 6f 75 73 2c 0a 20 20 | pletely.safe.and.unambiguous,... |
| 756a0 | 20 20 20 20 61 6e 64 20 3c 61 20 68 72 65 66 3d 22 23 45 78 70 6c 69 63 69 74 2d 43 61 73 74 73 | ....and.<a.href="#Explicit-Casts |
| 756c0 | 22 3e 45 78 70 6c 69 63 69 74 20 43 61 73 74 73 3c 2f 61 3e 20 66 6f 72 20 63 6f 6e 76 65 72 73 | ">Explicit.Casts</a>.for.convers |
| 756e0 | 69 6f 6e 73 20 74 68 61 74 20 6f 6e 65 20 77 6f 75 6c 64 20 6e 6f 74 20 77 61 6e 74 20 74 6f 20 | ions.that.one.would.not.want.to. |
| 75700 | 68 61 70 70 65 6e 20 6f 6e 20 61 63 63 69 64 65 6e 74 2e 0a 20 20 20 20 20 20 54 68 65 72 65 20 | happen.on.accident........There. |
| 75720 | 69 73 20 61 6c 73 6f 20 61 20 74 68 69 72 64 20 6b 69 6e 64 20 6f 66 20 74 79 70 65 20 63 6f 6e | is.also.a.third.kind.of.type.con |
| 75740 | 76 65 72 73 69 6f 6e 20 63 61 6c 6c 65 64 20 3c 61 20 68 72 65 66 3d 22 23 50 65 65 72 2d 54 79 | version.called.<a.href="#Peer-Ty |
| 75760 | 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 |
| 75780 | 69 6f 6e 3c 2f 61 3e 20 66 6f 72 0a 20 20 20 20 20 20 74 68 65 20 63 61 73 65 20 77 68 65 6e 20 | ion</a>.for.......the.case.when. |
| 757a0 | 61 20 72 65 73 75 6c 74 20 74 79 70 65 20 6d 75 73 74 20 62 65 20 64 65 63 69 64 65 64 20 67 69 | a.result.type.must.be.decided.gi |
| 757c0 | 76 65 6e 20 6d 75 6c 74 69 70 6c 65 20 6f 70 65 72 61 6e 64 20 74 79 70 65 73 2e 0a 20 20 20 20 | ven.multiple.operand.types...... |
| 757e0 | 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 54 79 70 65 2d 43 6f 65 72 63 69 | ..</p>.......<h3.id="Type-Coerci |
| 75800 | 6f 6e 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 22 | on"><a.href="#toc-Type-Coercion" |
| 75820 | 3e 54 79 70 65 20 43 6f 65 72 63 69 6f 6e 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 | >Type.Coercion</a>.<a.class="hdr |
| 75840 | 22 20 68 72 65 66 3d 22 23 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 22 3e c2 a7 3c 2f 61 3e 3c 2f | ".href="#Type-Coercion">..</a></ |
| 75860 | 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 79 70 65 20 63 6f 65 72 63 69 | h3>........<p>.......Type.coerci |
| 75880 | 6f 6e 20 6f 63 63 75 72 73 20 77 68 65 6e 20 6f 6e 65 20 74 79 70 65 20 69 73 20 65 78 70 65 63 | on.occurs.when.one.type.is.expec |
| 758a0 | 74 65 64 2c 20 62 75 74 20 64 69 66 66 65 72 65 6e 74 20 74 79 70 65 20 69 73 20 70 72 6f 76 69 | ted,.but.different.type.is.provi |
| 758c0 | 64 65 64 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 | ded:.......</p>.......<figure><f |
| 758e0 | 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. |
| 75900 | 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 74 79 70 65 5f 63 6f 65 72 63 69 6f 6e 2e | class="file">test_type_coercion. |
| 75920 | 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 |
| 75940 | 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 | e><span.class="tok-kw">test</spa |
| 75960 | 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 74 | n>.<span.class="tok-str">"t |
| 75980 | 79 70 65 20 63 6f 65 72 63 69 6f 6e 20 2d 20 76 61 72 69 61 62 6c 65 20 64 65 63 6c 61 72 61 74 | ype.coercion.-.variable.declarat |
| 759a0 | 69 6f 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | ion"</span>.{.....<span.cla |
| 759c0 | 73 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 |
| 759e0 | 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>.=.< |
| 75a00 | 73 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> |
| 75a20 | 3b 0a 20 20 20 20 3c 73 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 |
| 75a40 | 3c 2f 73 70 61 6e 3e 20 62 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | </span>.b:.<span.class="tok-type |
| 75a60 | 22 3e 75 31 36 3c 2f 73 70 61 6e 3e 20 3d 20 61 3b 0a 20 20 20 20 5f 20 3d 20 62 3b 0a 7d 0a 0a | ">u16</span>.=.a;....._.=.b;.}.. |
| 75a80 | 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> |
| 75aa0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 74 79 70 | .<span.class="tok-str">"typ |
| 75ac0 | 65 20 63 6f 65 72 63 69 6f 6e 20 2d 20 66 75 6e 63 74 69 6f 6e 20 63 61 6c 6c 26 71 75 6f 74 3b | e.coercion.-.function.call" |
| 75ae0 | 3c 2f 73 70 61 6e 3e 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 |
| 75b00 | 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=" |
| 75b20 | 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 |
| 75b40 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 66 6f 6f | s="tok-number">1</span>;.....foo |
| 75b60 | 28 61 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c | (a);.}..<span.class="tok-kw">fn< |
| 75b80 | 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 3c | /span>.<span.class="tok-fn">foo< |
| 75ba0 | 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 22 | /span>(b:.<span.class="tok-type" |
| 75bc0 | 3e 75 31 36 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | >u16</span>).<span.class="tok-ty |
| 75be0 | 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 5f 20 3d 20 62 3b 0a 7d 0a 0a | pe">void</span>.{....._.=.b;.}.. |
| 75c00 | 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> |
| 75c20 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 74 79 70 | .<span.class="tok-str">"typ |
| 75c40 | 65 20 63 6f 65 72 63 69 6f 6e 20 2d 20 40 61 73 20 62 75 69 6c 74 69 6e 26 71 75 6f 74 3b 3c 2f | e.coercion.-.@as.builtin"</ |
| 75c60 | 73 70 61 6e 3e 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" |
| 75c80 | 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | >const</span>.a:.<span.class="to |
| 75ca0 | 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= |
| 75cc0 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e | "tok-number">1</span>;.....<span |
| 75ce0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 62 20 3d | .class="tok-kw">const</span>.b.= |
| 75d00 | 20 3c 73 70 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</ |
| 75d20 | 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 31 36 | span>(<span.class="tok-type">u16 |
| 75d40 | 3c 2f 73 70 61 6e 3e 2c 20 61 29 3b 0a 20 20 20 20 5f 20 3d 20 62 3b 0a 7d 3c 2f 63 6f 64 65 3e | </span>,.a);....._.=.b;.}</code> |
| 75d60 | 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 |
| 75d80 | 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 |
| 75da0 | 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 |
| 75dc0 | 74 20 74 65 73 74 5f 74 79 70 65 5f 63 6f 65 72 63 69 6f 6e 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 | t.test_type_coercion.zig</kbd>.1 |
| 75de0 | 2f 33 20 74 65 73 74 5f 74 79 70 65 5f 63 6f 65 72 63 69 6f 6e 2e 74 65 73 74 2e 74 79 70 65 20 | /3.test_type_coercion.test.type. |
| 75e00 | 63 6f 65 72 63 69 6f 6e 20 2d 20 76 61 72 69 61 62 6c 65 20 64 65 63 6c 61 72 61 74 69 6f 6e 2e | coercion.-.variable.declaration. |
| 75e20 | 2e 2e 4f 4b 0a 32 2f 33 20 74 65 73 74 5f 74 79 70 65 5f 63 6f 65 72 63 69 6f 6e 2e 74 65 73 74 | ..OK.2/3.test_type_coercion.test |
| 75e40 | 2e 74 79 70 65 20 63 6f 65 72 63 69 6f 6e 20 2d 20 66 75 6e 63 74 69 6f 6e 20 63 61 6c 6c 2e 2e | .type.coercion.-.function.call.. |
| 75e60 | 2e 4f 4b 0a 33 2f 33 20 74 65 73 74 5f 74 79 70 65 5f 63 6f 65 72 63 69 6f 6e 2e 74 65 73 74 2e | .OK.3/3.test_type_coercion.test. |
| 75e80 | 74 79 70 65 20 63 6f 65 72 63 69 6f 6e 20 2d 20 40 61 73 20 62 75 69 6c 74 69 6e 2e 2e 2e 4f 4b | type.coercion.-.@as.builtin...OK |
| 75ea0 | 0a 41 6c 6c 20 33 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 | .All.3.tests.passed..</samp></pr |
| 75ec0 | 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 79 70 | e></figure>........<p>.......Typ |
| 75ee0 | 65 20 63 6f 65 72 63 69 6f 6e 73 20 61 72 65 20 6f 6e 6c 79 20 61 6c 6c 6f 77 65 64 20 77 68 65 | e.coercions.are.only.allowed.whe |
| 75f00 | 6e 20 69 74 20 69 73 20 63 6f 6d 70 6c 65 74 65 6c 79 20 75 6e 61 6d 62 69 67 75 6f 75 73 20 68 | n.it.is.completely.unambiguous.h |
| 75f20 | 6f 77 20 74 6f 20 67 65 74 20 66 72 6f 6d 20 6f 6e 65 20 74 79 70 65 20 74 6f 20 61 6e 6f 74 68 | ow.to.get.from.one.type.to.anoth |
| 75f40 | 65 72 2c 0a 20 20 20 20 20 20 61 6e 64 20 74 68 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e | er,.......and.the.transformation |
| 75f60 | 20 69 73 20 67 75 61 72 61 6e 74 65 65 64 20 74 6f 20 62 65 20 73 61 66 65 2e 20 54 68 65 72 65 | .is.guaranteed.to.be.safe..There |
| 75f80 | 20 69 73 20 6f 6e 65 20 65 78 63 65 70 74 69 6f 6e 2c 20 77 68 69 63 68 20 69 73 20 3c 61 20 68 | .is.one.exception,.which.is.<a.h |
| 75fa0 | 72 65 66 3d 22 23 43 2d 50 6f 69 6e 74 65 72 73 22 3e 43 20 50 6f 69 6e 74 65 72 73 3c 2f 61 3e | ref="#C-Pointers">C.Pointers</a> |
| 75fc0 | 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 68 34 20 69 64 3d 22 54 79 70 65 2d | ........</p>.......<h4.id="Type- |
| 75fe0 | 43 6f 65 72 63 69 6f 6e 2d 53 74 72 69 63 74 65 72 2d 51 75 61 6c 69 66 69 63 61 74 69 6f 6e 22 | Coercion-Stricter-Qualification" |
| 76000 | 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 2d 53 74 72 | ><a.href="#toc-Type-Coercion-Str |
| 76020 | 69 63 74 65 72 2d 51 75 61 6c 69 66 69 63 61 74 69 6f 6e 22 3e 54 79 70 65 20 43 6f 65 72 63 69 | icter-Qualification">Type.Coerci |
| 76040 | 6f 6e 3a 20 53 74 72 69 63 74 65 72 20 51 75 61 6c 69 66 69 63 61 74 69 6f 6e 3c 2f 61 3e 20 3c | on:.Stricter.Qualification</a>.< |
| 76060 | 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 54 79 70 65 2d 43 6f 65 72 63 69 | a.class="hdr".href="#Type-Coerci |
| 76080 | 6f 6e 2d 53 74 72 69 63 74 65 72 2d 51 75 61 6c 69 66 69 63 61 74 69 6f 6e 22 3e c2 a7 3c 2f 61 | on-Stricter-Qualification">..</a |
| 760a0 | 3e 3c 2f 68 34 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 56 61 6c 75 65 73 20 77 | ></h4>........<p>.......Values.w |
| 760c0 | 68 69 63 68 20 68 61 76 65 20 74 68 65 20 73 61 6d 65 20 72 65 70 72 65 73 65 6e 74 61 74 69 6f | hich.have.the.same.representatio |
| 760e0 | 6e 20 61 74 20 72 75 6e 74 69 6d 65 20 63 61 6e 20 62 65 20 63 61 73 74 20 74 6f 20 69 6e 63 72 | n.at.runtime.can.be.cast.to.incr |
| 76100 | 65 61 73 65 20 74 68 65 20 73 74 72 69 63 74 6e 65 73 73 0a 20 20 20 20 20 20 6f 66 20 74 68 65 | ease.the.strictness.......of.the |
| 76120 | 20 71 75 61 6c 69 66 69 65 72 73 2c 20 6e 6f 20 6d 61 74 74 65 72 20 68 6f 77 20 6e 65 73 74 65 | .qualifiers,.no.matter.how.neste |
| 76140 | 64 20 74 68 65 20 71 75 61 6c 69 66 69 65 72 73 20 61 72 65 3a 0a 20 20 20 20 20 20 3c 2f 70 3e | d.the.qualifiers.are:.......</p> |
| 76160 | 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> |
| 76180 | 3c 73 70 61 6e 20 63 6c 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 |
| 761a0 | 3e 3c 2f 63 6f 64 65 3e 20 2d 20 6e 6f 6e 2d 63 6f 6e 73 74 20 74 6f 20 63 6f 6e 73 74 20 69 73 | ></code>.-.non-const.to.const.is |
| 761c0 | 20 61 6c 6c 6f 77 65 64 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 | .allowed</li>...........<li><cod |
| 761e0 | 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 6f 6c 61 74 69 6c 65 3c | e><span.class="tok-kw">volatile< |
| 76200 | 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 2d 20 6e 6f 6e 2d 76 6f 6c 61 74 69 6c 65 20 74 6f 20 | /span></code>.-.non-volatile.to. |
| 76220 | 76 6f 6c 61 74 69 6c 65 20 69 73 20 61 6c 6c 6f 77 65 64 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 | volatile.is.allowed</li>........ |
| 76240 | 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | ...<li><code><span.class="tok-kw |
| 76260 | 22 3e 61 6c 69 67 6e 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 2d 20 62 69 67 67 65 72 20 74 | ">align</span></code>.-.bigger.t |
| 76280 | 6f 20 73 6d 61 6c 6c 65 72 20 61 6c 69 67 6e 6d 65 6e 74 20 69 73 20 61 6c 6c 6f 77 65 64 20 3c | o.smaller.alignment.is.allowed.< |
| 762a0 | 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 45 72 72 | /li>...........<li><a.href="#Err |
| 762c0 | 6f 72 2d 53 65 74 2d 54 79 70 65 22 3e 65 72 72 6f 72 20 73 65 74 73 3c 2f 61 3e 20 74 6f 20 73 | or-Set-Type">error.sets</a>.to.s |
| 762e0 | 75 70 65 72 73 65 74 73 20 69 73 20 61 6c 6c 6f 77 65 64 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c | upersets.is.allowed</li>.......< |
| 76300 | 2f 75 6c 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 73 65 20 63 61 73 74 73 | /ul>.......<p>.......These.casts |
| 76320 | 20 61 72 65 20 6e 6f 2d 6f 70 73 20 61 74 20 72 75 6e 74 69 6d 65 20 73 69 6e 63 65 20 74 68 65 | .are.no-ops.at.runtime.since.the |
| 76340 | 20 76 61 6c 75 65 20 72 65 70 72 65 73 65 6e 74 61 74 69 6f 6e 20 64 6f 65 73 20 6e 6f 74 20 63 | .value.representation.does.not.c |
| 76360 | 68 61 6e 67 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e | hange........</p>.......<figure> |
| 76380 | 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 |
| 763a0 | 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 6e 6f 5f 6f 70 5f 63 61 73 74 73 2e | e.class="file">test_no_op_casts. |
| 763c0 | 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 |
| 763e0 | 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 | e><span.class="tok-kw">test</spa |
| 76400 | 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 74 | n>.<span.class="tok-str">"t |
| 76420 | 79 70 65 20 63 6f 65 72 63 69 6f 6e 20 2d 20 63 6f 6e 73 74 20 71 75 61 6c 69 66 69 63 61 74 69 | ype.coercion.-.const.qualificati |
| 76440 | 6f 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | on"</span>.{.....<span.clas |
| 76460 | 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 |
| 76480 | 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 |
| 764a0 | 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>;. |
| 764c0 | 20 20 20 20 3c 73 70 61 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</ |
| 764e0 | 73 70 61 6e 3e 20 62 3a 20 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 | span>.b:.*<span.class="tok-type" |
| 76500 | 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 26 61 6d 70 3b 61 3b 0a 20 20 20 20 66 6f 6f 28 62 29 | >i32</span>.=.&a;.....foo(b) |
| 76520 | 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 |
| 76540 | 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 |
| 76560 | 61 6e 3e 28 5f 3a 20 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e | an>(_:.*<span.class="tok-kw">con |
| 76580 | 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" |
| 765a0 | 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | >i32</span>).<span.class="tok-ty |
| 765c0 | 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c | pe">void</span>.{}</code></pre>< |
| 765e0 | 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 |
| 76600 | 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> |
| 76620 | 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_ |
| 76640 | 6e 6f 5f 6f 70 5f 63 61 73 74 73 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 6e | no_op_casts.zig</kbd>.1/1.test_n |
| 76660 | 6f 5f 6f 70 5f 63 61 73 74 73 2e 74 65 73 74 2e 74 79 70 65 20 63 6f 65 72 63 69 6f 6e 20 2d 20 | o_op_casts.test.type.coercion.-. |
| 76680 | 63 6f 6e 73 74 20 71 75 61 6c 69 66 69 63 61 74 69 6f 6e 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 | const.qualification...OK.All.1.t |
| 766a0 | 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 |
| 766c0 | 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 6e 20 61 64 64 69 74 69 6f 6e | re>........<p>.......In.addition |
| 766e0 | 2c 20 70 6f 69 6e 74 65 72 73 20 63 6f 65 72 63 65 20 74 6f 20 63 6f 6e 73 74 20 6f 70 74 69 6f | ,.pointers.coerce.to.const.optio |
| 76700 | 6e 61 6c 20 70 6f 69 6e 74 65 72 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c | nal.pointers:.......</p>.......< |
| 76720 | 66 69 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 |
| 76740 | 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 70 6f 69 6e 74 | p"><cite.class="file">test_point |
| 76760 | 65 72 5f 63 6f 65 72 63 65 5f 63 6f 6e 73 74 5f 6f 70 74 69 6f 6e 61 6c 2e 7a 69 67 3c 2f 63 69 | er_coerce_const_optional.zig</ci |
| 76780 | 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 |
| 767a0 | 20 63 6c 61 73 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 |
| 767c0 | 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 |
| 767e0 | 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 |
| 76800 | 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 |
| 76820 | 20 63 6c 61 73 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 |
| 76840 | 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 20 | ect.=.std.testing.expect;.<span. |
| 76860 | 63 6c 61 73 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. |
| 76880 | 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 22 | =.std.mem;..<span.class="tok-kw" |
| 768a0 | 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 |
| 768c0 | 72 22 3e 26 71 75 6f 74 3b 63 61 73 74 20 2a 5b 31 5d 5b 2a 3a 30 5d 63 6f 6e 73 74 20 75 38 20 | r">"cast.*[1][*:0]const.u8. |
| 768e0 | 74 6f 20 5b 5d 63 6f 6e 73 74 20 3f 5b 2a 3a 30 5d 63 6f 6e 73 74 20 75 38 26 71 75 6f 74 3b 3c | to.[]const.?[*:0]const.u8"< |
| 76900 | 2f 73 70 61 6e 3e 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 |
| 76920 | 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 77 69 6e 64 6f 77 5f 6e 61 6d 65 20 3d 20 5b 3c 73 | ">const</span>.window_name.=.[<s |
| 76940 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 5d | pan.class="tok-number">1</span>] |
| 76960 | 5b 2a 3a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 | [*:<span.class="tok-number">0</s |
| 76980 | 70 61 6e 3e 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c | pan>]<span.class="tok-kw">const< |
| 769a0 | 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 | /span>.<span.class="tok-type">u8 |
| 769c0 | 3c 2f 73 70 61 6e 3e 7b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 | </span>{<span.class="tok-str">&q |
| 769e0 | 75 6f 74 3b 77 69 6e 64 6f 77 20 6e 61 6d 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 7d 3b 0a 20 | uot;window.name"</span>};.. |
| 76a00 | 20 20 20 3c 73 70 61 6e 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 |
| 76a20 | 70 61 6e 3e 20 78 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 | pan>.x:.[]<span.class="tok-kw">c |
| 76a40 | 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 3f 5b 2a 3a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | onst</span>.?[*:<span.class="tok |
| 76a60 | 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 74 | -number">0</span>]<span.class="t |
| 76a80 | 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= |
| 76aa0 | 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 20 3d 20 26 61 6d 70 3b 77 69 6e 64 | "tok-type">u8</span>.=.&wind |
| 76ac0 | 6f 77 5f 6e 61 6d 65 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | ow_name;.....<span.class="tok-kw |
| 76ae0 | 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 |
| 76b00 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 6d 65 | n.class="tok-type">u8</span>,.me |
| 76b20 | 6d 2e 73 70 61 6e 28 78 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | m.span(x[<span.class="tok-number |
| 76b40 | 22 3e 30 3c 2f 73 70 61 6e 3e 5d 2e 3f 29 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ">0</span>].?),.<span.class="tok |
| 76b60 | 2d 73 74 72 22 3e 26 71 75 6f 74 3b 77 69 6e 64 6f 77 20 6e 61 6d 65 26 71 75 6f 74 3b 3c 2f 73 | -str">"window.name"</s |
| 76b80 | 70 61 6e 3e 29 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c | pan>));.}</code></pre></figure>< |
| 76ba0 | 66 69 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- |
| 76bc0 | 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 |
| 76be0 | 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 70 6f 69 6e 74 65 72 5f 63 | p>$.<kbd>zig.test.test_pointer_c |
| 76c00 | 6f 65 72 63 65 5f 63 6f 6e 73 74 5f 6f 70 74 69 6f 6e 61 6c 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 | oerce_const_optional.zig</kbd>.1 |
| 76c20 | 2f 31 20 74 65 73 74 5f 70 6f 69 6e 74 65 72 5f 63 6f 65 72 63 65 5f 63 6f 6e 73 74 5f 6f 70 74 | /1.test_pointer_coerce_const_opt |
| 76c40 | 69 6f 6e 61 6c 2e 74 65 73 74 2e 63 61 73 74 20 2a 5b 31 5d 5b 2a 3a 30 5d 63 6f 6e 73 74 20 75 | ional.test.cast.*[1][*:0]const.u |
| 76c60 | 38 20 74 6f 20 5b 5d 63 6f 6e 73 74 20 3f 5b 2a 3a 30 5d 63 6f 6e 73 74 20 75 38 2e 2e 2e 4f 4b | 8.to.[]const.?[*:0]const.u8...OK |
| 76c80 | 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 |
| 76ca0 | 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 34 20 69 64 | e></figure>...............<h4.id |
| 76cc0 | 3d 22 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 2d 49 6e 74 65 67 65 72 2d 61 6e 64 2d 46 6c 6f 61 | ="Type-Coercion-Integer-and-Floa |
| 76ce0 | 74 2d 57 69 64 65 6e 69 6e 67 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 54 79 70 65 2d 43 | t-Widening"><a.href="#toc-Type-C |
| 76d00 | 6f 65 72 63 69 6f 6e 2d 49 6e 74 65 67 65 72 2d 61 6e 64 2d 46 6c 6f 61 74 2d 57 69 64 65 6e 69 | oercion-Integer-and-Float-Wideni |
| 76d20 | 6e 67 22 3e 54 79 70 65 20 43 6f 65 72 63 69 6f 6e 3a 20 49 6e 74 65 67 65 72 20 61 6e 64 20 46 | ng">Type.Coercion:.Integer.and.F |
| 76d40 | 6c 6f 61 74 20 57 69 64 65 6e 69 6e 67 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 | loat.Widening</a>.<a.class="hdr" |
| 76d60 | 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 6e | .href="#Type-Coercion-Integer-an |
| 76d80 | 64 2d 46 6c 6f 61 74 2d 57 69 64 65 6e 69 6e 67 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 34 3e 0a 0a 20 | d-Float-Widening">..</a></h4>... |
| 76da0 | 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 49 6e 74 65 67 65 72 | .....<p>.......<a.href="#Integer |
| 76dc0 | 73 22 3e 49 6e 74 65 67 65 72 73 3c 2f 61 3e 20 63 6f 65 72 63 65 20 74 6f 20 69 6e 74 65 67 65 | s">Integers</a>.coerce.to.intege |
| 76de0 | 72 20 74 79 70 65 73 20 77 68 69 63 68 20 63 61 6e 20 72 65 70 72 65 73 65 6e 74 20 65 76 65 72 | r.types.which.can.represent.ever |
| 76e00 | 79 20 76 61 6c 75 65 20 6f 66 20 74 68 65 20 6f 6c 64 20 74 79 70 65 2c 20 61 6e 64 20 6c 69 6b | y.value.of.the.old.type,.and.lik |
| 76e20 | 65 77 69 73 65 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 73 22 3e 46 6c | ewise.......<a.href="#Floats">Fl |
| 76e40 | 6f 61 74 73 3c 2f 61 3e 20 63 6f 65 72 63 65 20 74 6f 20 66 6c 6f 61 74 20 74 79 70 65 73 20 77 | oats</a>.coerce.to.float.types.w |
| 76e60 | 68 69 63 68 20 63 61 6e 20 72 65 70 72 65 73 65 6e 74 20 65 76 65 72 79 20 76 61 6c 75 65 20 6f | hich.can.represent.every.value.o |
| 76e80 | 66 20 74 68 65 20 6f 6c 64 20 74 79 70 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 | f.the.old.type........</p>...... |
| 76ea0 | 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- |
| 76ec0 | 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 74 | cap"><cite.class="file">test_int |
| 76ee0 | 65 67 65 72 5f 77 69 64 65 6e 69 6e 67 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 | eger_widening.zig</cite></figcap |
| 76f00 | 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 |
| 76f20 | 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 |
| 76f40 | 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> |
| 76f60 | 28 3c 73 70 61 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 |
| 76f80 | 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 |
| 76fa0 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 62 75 69 6c 74 69 6e 20 3d 20 3c 73 70 61 | -kw">const</span>.builtin.=.<spa |
| 76fc0 | 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 |
| 76fe0 | 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">" |
| 77000 | 3b 62 75 69 6c 74 69 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 3c 73 70 61 6e 20 63 6c | ;builtin"</span>);.<span.cl |
| 77020 | 61 73 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 |
| 77040 | 20 3d 20 73 74 64 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 3c 73 70 61 6e 20 63 6c 61 | .=.std.testing.expect;.<span.cla |
| 77060 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6d 65 6d 20 3d 20 73 | ss="tok-kw">const</span>.mem.=.s |
| 77080 | 74 64 2e 6d 65 6d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 | td.mem;..<span.class="tok-kw">te |
| 770a0 | 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"> |
| 770c0 | 26 71 75 6f 74 3b 69 6e 74 65 67 65 72 20 77 69 64 65 6e 69 6e 67 26 71 75 6f 74 3b 3c 2f 73 70 | "integer.widening"</sp |
| 770e0 | 61 6e 3e 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 |
| 77100 | 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | onst</span>.a:.<span.class="tok- |
| 77120 | 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 |
| 77140 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 35 30 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e | ok-number">250</span>;.....<span |
| 77160 | 20 63 6c 61 73 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:. |
| 77180 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 31 36 3c 2f 73 70 61 6e | <span.class="tok-type">u16</span |
| 771a0 | 3e 20 3d 20 61 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | >.=.a;.....<span.class="tok-kw"> |
| 771c0 | 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 63 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | const</span>.c:.<span.class="tok |
| 771e0 | 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 62 3b 0a 20 20 20 20 3c 73 70 61 6e | -type">u32</span>.=.b;.....<span |
| 77200 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 64 3a 20 | .class="tok-kw">const</span>.d:. |
| 77220 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 36 34 3c 2f 73 70 61 6e | <span.class="tok-type">u64</span |
| 77240 | 3e 20 3d 20 63 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | >.=.c;.....<span.class="tok-kw"> |
| 77260 | 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | const</span>.e:.<span.class="tok |
| 77280 | 2d 74 79 70 65 22 3e 75 36 34 3c 2f 73 70 61 6e 3e 20 3d 20 64 3b 0a 20 20 20 20 3c 73 70 61 6e | -type">u64</span>.=.d;.....<span |
| 772a0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 66 3a 20 | .class="tok-kw">const</span>.f:. |
| 772c0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 31 32 38 3c 2f 73 70 61 | <span.class="tok-type">u128</spa |
| 772e0 | 6e 3e 20 3d 20 65 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | n>.=.e;.....<span.class="tok-kw" |
| 77300 | 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 66 20 3d 3d 20 61 29 3b 0a 7d 0a 0a 3c | >try</span>.expect(f.==.a);.}..< |
| 77320 | 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>. |
| 77340 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 69 6d 70 6c | <span.class="tok-str">"impl |
| 77360 | 69 63 69 74 20 75 6e 73 69 67 6e 65 64 20 69 6e 74 65 67 65 72 20 74 6f 20 73 69 67 6e 65 64 20 | icit.unsigned.integer.to.signed. |
| 77380 | 69 6e 74 65 67 65 72 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e | integer"</span>.{.....<span |
| 773a0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 3a 20 | .class="tok-kw">const</span>.a:. |
| 773c0 | 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> |
| 773e0 | 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 35 30 3c | .=.<span.class="tok-number">250< |
| 77400 | 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" |
| 77420 | 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 62 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | >const</span>.b:.<span.class="to |
| 77440 | 6b 2d 74 79 70 65 22 3e 69 31 36 3c 2f 73 70 61 6e 3e 20 3d 20 61 3b 0a 20 20 20 20 3c 73 70 61 | k-type">i16</span>.=.a;.....<spa |
| 77460 | 6e 20 63 6c 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 |
| 77480 | 63 74 28 62 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 | ct(b.==.<span.class="tok-number" |
| 774a0 | 3e 32 35 30 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | >250</span>);.}..<span.class="to |
| 774c0 | 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 |
| 774e0 | 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 66 6c 6f 61 74 20 77 69 64 65 6e 69 6e 67 26 71 75 6f | ok-str">"float.widening&quo |
| 77500 | 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 |
| 77520 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 | -kw">const</span>.a:.<span.class |
| 77540 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 31 36 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 | ="tok-type">f16</span>.=.<span.c |
| 77560 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 2e 33 34 3c 2f 73 70 61 6e 3e 3b 0a | lass="tok-number">12.34</span>;. |
| 77580 | 20 20 20 20 3c 73 70 61 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</ |
| 775a0 | 73 70 61 6e 3e 20 62 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | span>.b:.<span.class="tok-type"> |
| 775c0 | 66 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 61 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | f32</span>.=.a;.....<span.class= |
| 775e0 | 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 63 3a 20 3c 73 70 61 6e 20 63 | "tok-kw">const</span>.c:.<span.c |
| 77600 | 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 36 34 3c 2f 73 70 61 6e 3e 20 3d 20 62 3b 0a | lass="tok-type">f64</span>.=.b;. |
| 77620 | 20 20 20 20 3c 73 70 61 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</ |
| 77640 | 73 70 61 6e 3e 20 64 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | span>.d:.<span.class="tok-type"> |
| 77660 | 66 31 32 38 3c 2f 73 70 61 6e 3e 20 3d 20 63 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | f128</span>.=.c;.....<span.class |
| 77680 | 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 64 20 3d 3d | ="tok-kw">try</span>.expect(d.== |
| 776a0 | 20 61 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 | .a);.}</code></pre></figure><fig |
| 776c0 | 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 |
| 776e0 | 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>$ |
| 77700 | 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 69 6e 74 65 67 65 72 5f 77 69 64 65 | .<kbd>zig.test.test_integer_wide |
| 77720 | 6e 69 6e 67 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 33 20 74 65 73 74 5f 69 6e 74 65 67 65 72 5f | ning.zig</kbd>.1/3.test_integer_ |
| 77740 | 77 69 64 65 6e 69 6e 67 2e 74 65 73 74 2e 69 6e 74 65 67 65 72 20 77 69 64 65 6e 69 6e 67 2e 2e | widening.test.integer.widening.. |
| 77760 | 2e 4f 4b 0a 32 2f 33 20 74 65 73 74 5f 69 6e 74 65 67 65 72 5f 77 69 64 65 6e 69 6e 67 2e 74 65 | .OK.2/3.test_integer_widening.te |
| 77780 | 73 74 2e 69 6d 70 6c 69 63 69 74 20 75 6e 73 69 67 6e 65 64 20 69 6e 74 65 67 65 72 20 74 6f 20 | st.implicit.unsigned.integer.to. |
| 777a0 | 73 69 67 6e 65 64 20 69 6e 74 65 67 65 72 2e 2e 2e 4f 4b 0a 33 2f 33 20 74 65 73 74 5f 69 6e 74 | signed.integer...OK.3/3.test_int |
| 777c0 | 65 67 65 72 5f 77 69 64 65 6e 69 6e 67 2e 74 65 73 74 2e 66 6c 6f 61 74 20 77 69 64 65 6e 69 6e | eger_widening.test.float.widenin |
| 777e0 | 67 2e 2e 2e 4f 4b 0a 41 6c 6c 20 33 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 73 61 6d | g...OK.All.3.tests.passed..</sam |
| 77800 | 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>............... |
| 77820 | 3c 68 34 20 69 64 3d 22 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 2d 46 6c 6f 61 74 2d 74 6f 2d 49 | <h4.id="Type-Coercion-Float-to-I |
| 77840 | 6e 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 2d | nt"><a.href="#toc-Type-Coercion- |
| 77860 | 46 6c 6f 61 74 2d 74 6f 2d 49 6e 74 22 3e 54 79 70 65 20 43 6f 65 72 63 69 6f 6e 3a 20 46 6c 6f | Float-to-Int">Type.Coercion:.Flo |
| 77880 | 61 74 20 74 6f 20 49 6e 74 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 | at.to.Int</a>.<a.class="hdr".hre |
| 778a0 | 66 3d 22 23 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 2d 46 6c 6f 61 74 2d 74 6f 2d 49 6e 74 22 3e | f="#Type-Coercion-Float-to-Int"> |
| 778c0 | c2 a7 3c 2f 61 3e 3c 2f 68 34 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 41 20 63 | ..</a></h4>........<p>.......A.c |
| 778e0 | 6f 6d 70 69 6c 65 72 20 65 72 72 6f 72 20 69 73 20 61 70 70 72 6f 70 72 69 61 74 65 20 62 65 63 | ompiler.error.is.appropriate.bec |
| 77900 | 61 75 73 65 20 74 68 69 73 20 61 6d 62 69 67 75 6f 75 73 20 65 78 70 72 65 73 73 69 6f 6e 20 6c | ause.this.ambiguous.expression.l |
| 77920 | 65 61 76 65 73 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 0a 20 20 20 20 20 20 74 77 6f 20 63 68 6f | eaves.the.compiler.......two.cho |
| 77940 | 69 63 65 73 20 61 62 6f 75 74 20 74 68 65 20 63 6f 65 72 63 69 6f 6e 2e 0a 20 20 20 20 20 20 3c | ices.about.the.coercion........< |
| 77960 | 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 43 61 73 74 20 | /p>.......<ul>.........<li>Cast. |
| 77980 | 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 | <code><span.class="tok-number">5 |
| 779a0 | 34 2e 30 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 74 6f 20 3c 63 6f 64 65 3e 3c 73 70 61 6e | 4.0</span></code>.to.<code><span |
| 779c0 | 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</ |
| 779e0 | 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 72 65 73 75 6c 74 69 6e 67 20 69 6e 20 3c 63 6f 64 65 3e | span></code>.resulting.in.<code> |
| 77a00 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 61 73 3c 2f 73 | <span.class="tok-builtin">@as</s |
| 77a20 | 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 63 6f 6d 70 | pan>(<span.class="tok-type">comp |
| 77a40 | 74 69 6d 65 5f 69 6e 74 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | time_int</span>,.<span.class="to |
| 77a60 | 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 3c 2f 73 70 61 6e 3e 29 3c 2f 63 6f 64 65 3e 2c 20 77 68 69 | k-number">10</span>)</code>,.whi |
| 77a80 | 63 68 20 69 73 20 63 61 73 74 65 64 20 74 6f 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 | ch.is.casted.to.<code><span.clas |
| 77aa0 | 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 |
| 77ac0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 2c 20 3c 73 | .class="tok-type">f32</span>,.<s |
| 77ae0 | 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> |
| 77b00 | 29 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 43 61 73 74 20 3c | )</code></li>.........<li>Cast.< |
| 77b20 | 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c | code><span.class="tok-number">5< |
| 77b40 | 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 74 6f 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 | /span></code>.to.<code><span.cla |
| 77b60 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 63 6f 6d 70 74 69 6d 65 5f 66 6c 6f 61 74 3c 2f 73 70 | ss="tok-type">comptime_float</sp |
| 77b80 | 61 6e 3e 3c 2f 63 6f 64 65 3e 20 72 65 73 75 6c 74 69 6e 67 20 69 6e 20 3c 63 6f 64 65 3e 3c 73 | an></code>.resulting.in.<code><s |
| 77ba0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 61 73 3c 2f 73 70 61 | pan.class="tok-builtin">@as</spa |
| 77bc0 | 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 63 6f 6d 70 74 69 | n>(<span.class="tok-type">compti |
| 77be0 | 6d 65 5f 66 6c 6f 61 74 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | me_float</span>,.<span.class="to |
| 77c00 | 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 2e 38 3c 2f 73 70 61 6e 3e 29 3c 2f 63 6f 64 65 3e 2c 20 77 | k-number">10.8</span>)</code>,.w |
| 77c20 | 68 69 63 68 20 69 73 20 63 61 73 74 65 64 20 74 6f 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c | hich.is.casted.to.<code><span.cl |
| 77c40 | 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 |
| 77c60 | 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 20 | an.class="tok-type">f32</span>,. |
| 77c80 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 2e 38 3c 2f 73 | <span.class="tok-number">10.8</s |
| 77ca0 | 70 61 6e 3e 29 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 | pan>)</code></li>.......</ul>... |
| 77cc0 | 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 |
| 77ce0 | 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_ |
| 77d00 | 61 6d 62 69 67 75 6f 75 73 5f 63 6f 65 72 63 69 6f 6e 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 | ambiguous_coercion.zig</cite></f |
| 77d20 | 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 |
| 77d40 | 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 43 6f 6d 70 69 6c 65 20 74 69 6d 65 20 63 | ="tok-comment">//.Compile.time.c |
| 77d60 | 6f 65 72 63 69 6f 6e 20 6f 66 20 66 6c 6f 61 74 20 74 6f 20 69 6e 74 3c 2f 73 70 61 6e 3e 0a 3c | oercion.of.float.to.int</span>.< |
| 77d80 | 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>. |
| 77da0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 69 6d 70 6c | <span.class="tok-str">"impl |
| 77dc0 | 69 63 69 74 20 63 61 73 74 20 74 6f 20 63 6f 6d 70 74 69 6d 65 5f 69 6e 74 26 71 75 6f 74 3b 3c | icit.cast.to.comptime_int"< |
| 77de0 | 2f 73 70 61 6e 3e 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 |
| 77e00 | 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 66 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ">const</span>.f:.<span.class="t |
| 77e20 | 6f 6b 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | ok-type">f32</span>.=.<span.clas |
| 77e40 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 34 2e 30 3c 2f 73 70 61 6e 3e 20 2f 20 3c 73 70 | s="tok-number">54.0</span>./.<sp |
| 77e60 | 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>;. |
| 77e80 | 20 20 20 20 5f 20 3d 20 66 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 | ...._.=.f;.}</code></pre></figur |
| 77ea0 | 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 |
| 77ec0 | 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>< |
| 77ee0 | 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 61 6d 62 69 67 75 | samp>$.<kbd>zig.test.test_ambigu |
| 77f00 | 6f 75 73 5f 63 6f 65 72 63 69 6f 6e 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 3c 73 70 61 6e 20 63 6c 61 | ous_coercion.zig</kbd>.<span.cla |
| 77f20 | 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 | ss="sgr-1m">/home/andy/dev/zig/d |
| 77f40 | 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 61 6d 62 69 67 75 6f 75 73 5f 63 6f 65 72 63 69 | oc/langref/test_ambiguous_coerci |
| 77f60 | 6f 6e 2e 7a 69 67 3a 33 3a 32 35 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | on.zig:3:25:.</span><span.class= |
| 77f80 | 22 73 67 72 2d 33 31 6d 22 3e 65 72 72 6f 72 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c | "sgr-31m">error:.</span><span.cl |
| 77fa0 | 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 61 6d 62 69 67 75 6f 75 73 20 63 6f 65 72 63 69 6f 6e 20 | ass="sgr-1m">ambiguous.coercion. |
| 77fc0 | 6f 66 20 64 69 76 69 73 69 6f 6e 20 6f 70 65 72 61 6e 64 73 20 27 63 6f 6d 70 74 69 6d 65 5f 66 | of.division.operands.'comptime_f |
| 77fe0 | 6c 6f 61 74 27 20 61 6e 64 20 27 63 6f 6d 70 74 69 6d 65 5f 69 6e 74 27 3b 20 6e 6f 6e 2d 7a 65 | loat'.and.'comptime_int';.non-ze |
| 78000 | 72 6f 20 72 65 6d 61 69 6e 64 65 72 20 27 34 27 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 63 6f 6e 73 | ro.remainder.'4'.</span>....cons |
| 78020 | 74 20 66 3a 20 66 33 32 20 3d 20 35 34 2e 30 20 2f 20 35 3b 0a 20 20 20 20 20 20 20 20 20 20 20 | t.f:.f32.=.54.0./.5;............ |
| 78040 | 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 7e 7e | ........<span.class="sgr-32m">~~ |
| 78060 | 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 69 | ~~~^~~.</span>.</samp></pre></fi |
| 78080 | 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 |
| 780a0 | 2d 43 6f 65 72 63 69 6f 6e 2d 53 6c 69 63 65 73 2d 41 72 72 61 79 73 2d 61 6e 64 2d 50 6f 69 6e | -Coercion-Slices-Arrays-and-Poin |
| 780c0 | 74 65 72 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 54 79 70 65 2d 43 6f 65 72 63 69 6f | ters"><a.href="#toc-Type-Coercio |
| 780e0 | 6e 2d 53 6c 69 63 65 73 2d 41 72 72 61 79 73 2d 61 6e 64 2d 50 6f 69 6e 74 65 72 73 22 3e 54 79 | n-Slices-Arrays-and-Pointers">Ty |
| 78100 | 70 65 20 43 6f 65 72 63 69 6f 6e 3a 20 53 6c 69 63 65 73 2c 20 41 72 72 61 79 73 20 61 6e 64 20 | pe.Coercion:.Slices,.Arrays.and. |
| 78120 | 50 6f 69 6e 74 65 72 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 | Pointers</a>.<a.class="hdr".href |
| 78140 | 3d 22 23 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 2d 53 6c 69 63 65 73 2d 41 72 72 61 79 73 2d 61 | ="#Type-Coercion-Slices-Arrays-a |
| 78160 | 6e 64 2d 50 6f 69 6e 74 65 72 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 34 3e 0a 0a 20 20 20 20 20 20 | nd-Pointers">..</a></h4>........ |
| 78180 | 3c 66 69 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 |
| 781a0 | 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 72 | ap"><cite.class="file">test_coer |
| 781c0 | 63 65 5f 73 6c 69 63 65 73 5f 61 72 72 61 79 73 5f 61 6e 64 5f 70 6f 69 6e 74 65 72 73 2e 7a 69 | ce_slices_arrays_and_pointers.zi |
| 781e0 | 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> |
| 78200 | 3c 73 70 61 6e 20 63 6c 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 |
| 78220 | 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 |
| 78240 | 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 |
| 78260 | 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>);. |
| 78280 | 3c 73 70 61 6e 20 63 6c 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 |
| 782a0 | 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;.. |
| 782c0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 59 6f 75 | <span.class="tok-comment">//.You |
| 782e0 | 20 63 61 6e 20 61 73 73 69 67 6e 20 63 6f 6e 73 74 61 6e 74 20 70 6f 69 6e 74 65 72 73 20 74 6f | .can.assign.constant.pointers.to |
| 78300 | 20 61 72 72 61 79 73 20 74 6f 20 61 20 73 6c 69 63 65 20 77 69 74 68 3c 2f 73 70 61 6e 3e 0a 3c | .arrays.to.a.slice.with</span>.< |
| 78320 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 63 6f 6e 73 | span.class="tok-comment">//.cons |
| 78340 | 74 20 6d 6f 64 69 66 69 65 72 20 6f 6e 20 74 68 65 20 65 6c 65 6d 65 6e 74 20 74 79 70 65 2e 20 | t.modifier.on.the.element.type.. |
| 78360 | 55 73 65 66 75 6c 20 69 6e 20 70 61 72 74 69 63 75 6c 61 72 20 66 6f 72 3c 2f 73 70 61 6e 3e 0a | Useful.in.particular.for</span>. |
| 78380 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 53 74 72 | <span.class="tok-comment">//.Str |
| 783a0 | 69 6e 67 20 6c 69 74 65 72 61 6c 73 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | ing.literals.</span>.<span.class |
| 783c0 | 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 |
| 783e0 | 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 2a 63 6f 6e 73 74 20 5b 4e 5d 54 20 74 6f | s="tok-str">"*const.[N]T.to |
| 78400 | 20 5b 5d 63 6f 6e 73 74 20 54 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 | .[]const.T"</span>.{.....<s |
| 78420 | 70 61 6e 20 63 6c 61 73 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>. |
| 78440 | 78 31 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 | x1:.[]<span.class="tok-kw">const |
| 78460 | 3c 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 |
| 78480 | 38 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 | 8</span>.=.<span.class="tok-str" |
| 784a0 | 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 3c | >"hello"</span>;.....< |
| 784c0 | 73 70 61 6e 20 63 6c 61 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> |
| 784e0 | 20 78 32 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 | .x2:.[]<span.class="tok-kw">cons |
| 78500 | 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"> |
| 78520 | 75 38 3c 2f 73 70 61 6e 3e 20 3d 20 26 61 6d 70 3b 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | u8</span>.=.&[<span.class="t |
| 78540 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ok-number">5</span>]<span.class= |
| 78560 | 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 |
| 78580 | 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 68 27 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c | s="tok-str">'h'</span>,.<span.cl |
| 785a0 | 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 65 27 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 | ass="tok-str">'e'</span>,.<span. |
| 785c0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 6c 27 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 | class="tok-str">'l'</span>,.<spa |
| 785e0 | 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 |
| 78600 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 31 31 3c 2f 73 70 61 6e | pan.class="tok-number">111</span |
| 78620 | 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 |
| 78640 | 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 |
| 78660 | 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 31 | n.class="tok-type">u8</span>,.x1 |
| 78680 | 2c 20 78 32 29 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | ,.x2));......<span.class="tok-kw |
| 786a0 | 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 79 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ">const</span>.y:.[]<span.class= |
| 786c0 | 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 | "tok-kw">const</span>.<span.clas |
| 786e0 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 26 61 6d 70 3b 5b | s="tok-type">f32</span>.=.&[ |
| 78700 | 3c 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 |
| 78720 | 3e 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 | >]<span.class="tok-type">f32</sp |
| 78740 | 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 2e | an>{.<span.class="tok-number">1. |
| 78760 | 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 |
| 78780 | 72 22 3e 33 2e 34 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | r">3.4</span>.};.....<span.class |
| 787a0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 79 5b 3c 73 | ="tok-kw">try</span>.expect(y[<s |
| 787c0 | 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>] |
| 787e0 | 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 2e 32 | .==.<span.class="tok-number">1.2 |
| 78800 | 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f | </span>);.}..<span.class="tok-co |
| 78820 | 6d 6d 65 6e 74 22 3e 2f 2f 20 4c 69 6b 65 77 69 73 65 2c 20 69 74 20 77 6f 72 6b 73 20 77 68 65 | mment">//.Likewise,.it.works.whe |
| 78840 | 6e 20 74 68 65 20 64 65 73 74 69 6e 61 74 69 6f 6e 20 74 79 70 65 20 69 73 20 61 6e 20 65 72 72 | n.the.destination.type.is.an.err |
| 78860 | 6f 72 20 75 6e 69 6f 6e 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | or.union.</span>.<span.class="to |
| 78880 | 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 |
| 788a0 | 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 2a 63 6f 6e 73 74 20 5b 4e 5d 54 20 74 6f 20 45 21 5b | ok-str">"*const.[N]T.to.E![ |
| 788c0 | 5d 63 6f 6e 73 74 20 54 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 | ]const.T"</span>.{.....<spa |
| 788e0 | 6e 20 63 6c 61 73 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 31 | n.class="tok-kw">const</span>.x1 |
| 78900 | 3a 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 |
| 78920 | 72 3c 2f 73 70 61 6e 3e 21 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | r</span>![]<span.class="tok-kw"> |
| 78940 | 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 |
| 78960 | 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 |
| 78980 | 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>;. |
| 789a0 | 20 20 20 20 3c 73 70 61 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</ |
| 789c0 | 73 70 61 6e 3e 20 78 32 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 | span>.x2:.<span.class="tok-type" |
| 789e0 | 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=" |
| 78a00 | 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 |
| 78a20 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 20 3d 20 26 61 6d 70 3b 5b 3c 73 | ="tok-type">u8</span>.=.&[<s |
| 78a40 | 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>] |
| 78a60 | 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> |
| 78a80 | 7b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 68 27 3c 2f 73 70 61 | {.<span.class="tok-str">'h'</spa |
| 78aa0 | 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 65 27 3c 2f 73 | n>,.<span.class="tok-str">'e'</s |
| 78ac0 | 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 6c 27 3c | pan>,.<span.class="tok-str">'l'< |
| 78ae0 | 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 6c | /span>,.<span.class="tok-str">'l |
| 78b00 | 27 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | '</span>,.<span.class="tok-numbe |
| 78b20 | 72 22 3e 31 31 31 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | r">111</span>.};.....<span.class |
| 78b40 | 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 73 74 64 2e | ="tok-kw">try</span>.expect(std. |
| 78b60 | 6d 65 6d 2e 65 71 6c 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 | mem.eql(<span.class="tok-type">u |
| 78b80 | 38 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 | 8</span>,.<span.class="tok-kw">t |
| 78ba0 | 72 79 3c 2f 73 70 61 6e 3e 20 78 31 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | ry</span>.x1,.<span.class="tok-k |
| 78bc0 | 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 78 32 29 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 | w">try</span>.x2));......<span.c |
| 78be0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 79 3a 20 3c 73 | lass="tok-kw">const</span>.y:.<s |
| 78c00 | 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 |
| 78c20 | 70 61 6e 3e 21 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 | pan>![]<span.class="tok-kw">cons |
| 78c40 | 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"> |
| 78c60 | 66 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 26 61 6d 70 3b 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | f32</span>.=.&[<span.class=" |
| 78c80 | 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 73 | tok-number">2</span>]<span.class |
| 78ca0 | 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 6c | ="tok-type">f32</span>{.<span.cl |
| 78cc0 | 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 70 | ass="tok-number">1.2</span>,.<sp |
| 78ce0 | 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 3e | an.class="tok-number">3.4</span> |
| 78d00 | 20 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 | .};.....<span.class="tok-kw">try |
| 78d20 | 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 6b | </span>.expect((<span.class="tok |
| 78d40 | 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 79 29 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | -kw">try</span>.y)[<span.class=" |
| 78d60 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 5d 20 3d 3d 20 3c 73 70 61 6e 20 63 | tok-number">0</span>].==.<span.c |
| 78d80 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 2e 32 3c 2f 73 70 61 6e 3e 29 3b 0a 7d | lass="tok-number">1.2</span>);.} |
| 78da0 | 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 4c | ..<span.class="tok-comment">//.L |
| 78dc0 | 69 6b 65 77 69 73 65 2c 20 69 74 20 77 6f 72 6b 73 20 77 68 65 6e 20 74 68 65 20 64 65 73 74 69 | ikewise,.it.works.when.the.desti |
| 78de0 | 6e 61 74 69 6f 6e 20 74 79 70 65 20 69 73 20 61 6e 20 6f 70 74 69 6f 6e 61 6c 2e 3c 2f 73 70 61 | nation.type.is.an.optional.</spa |
| 78e00 | 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 |
| 78e20 | 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">" |
| 78e40 | 2a 63 6f 6e 73 74 20 5b 4e 5d 54 20 74 6f 20 3f 5b 5d 63 6f 6e 73 74 20 54 26 71 75 6f 74 3b 3c | *const.[N]T.to.?[]const.T"< |
| 78e60 | 2f 73 70 61 6e 3e 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 |
| 78e80 | 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 78 31 3a 20 3f 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 | ">const</span>.x1:.?[]<span.clas |
| 78ea0 | 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 |
| 78ec0 | 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 |
| 78ee0 | 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 |
| 78f00 | 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 2d | t;</span>;.....<span.class="tok- |
| 78f20 | 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 78 32 3a 20 3f 5b 5d 3c 73 70 61 6e 20 63 6c | kw">const</span>.x2:.?[]<span.cl |
| 78f40 | 61 73 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. |
| 78f60 | 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 |
| 78f80 | 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 |
| 78fa0 | 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</ |
| 78fc0 | 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' |
| 78fe0 | 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">' |
| 79000 | 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" |
| 79020 | 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 |
| 79040 | 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- |
| 79060 | 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. |
| 79080 | 63 6c 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 |
| 790a0 | 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 |
| 790c0 | 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 78 31 2e 3f 2c 20 78 32 2e 3f 29 29 3b 0a 0a 20 20 | pe">u8</span>,.x1.?,.x2.?));.... |
| 790e0 | 20 20 3c 73 70 61 6e 20 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 |
| 79100 | 61 6e 3e 20 79 3a 20 3f 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 | an>.y:.?[]<span.class="tok-kw">c |
| 79120 | 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 |
| 79140 | 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 26 61 6d 70 3b 5b 3c 73 70 61 6e 20 63 6c 61 73 | e">f32</span>.=.&[<span.clas |
| 79160 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 5d 3c 73 70 61 6e 20 63 6c | s="tok-number">2</span>]<span.cl |
| 79180 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 7b 20 3c 73 70 61 6e | ass="tok-type">f32</span>{.<span |
| 791a0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 2e 32 3c 2f 73 70 61 6e 3e 2c 20 | .class="tok-number">1.2</span>,. |
| 791c0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 2e 34 3c 2f 73 70 | <span.class="tok-number">3.4</sp |
| 791e0 | 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"> |
| 79200 | 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 79 2e 3f 5b 3c 73 70 61 6e 20 63 6c 61 73 | try</span>.expect(y.?[<span.clas |
| 79220 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 5d 20 3d 3d 20 3c 73 70 61 | s="tok-number">0</span>].==.<spa |
| 79240 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 2e 32 3c 2f 73 70 61 6e 3e 29 | n.class="tok-number">1.2</span>) |
| 79260 | 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">/ |
| 79280 | 2f 20 49 6e 20 74 68 69 73 20 63 61 73 74 2c 20 74 68 65 20 61 72 72 61 79 20 6c 65 6e 67 74 68 | /.In.this.cast,.the.array.length |
| 792a0 | 20 62 65 63 6f 6d 65 73 20 74 68 65 20 73 6c 69 63 65 20 6c 65 6e 67 74 68 2e 3c 2f 73 70 61 6e | .becomes.the.slice.length.</span |
| 792c0 | 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 |
| 792e0 | 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">"* |
| 79300 | 5b 4e 5d 54 20 74 6f 20 5b 5d 54 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c | [N]T.to.[]T"</span>.{.....< |
| 79320 | 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 |
| 79340 | 75 66 3a 20 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c | uf:.[<span.class="tok-number">5< |
| 79360 | 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 |
| 79380 | 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e | </span>.=.<span.class="tok-str"> |
| 793a0 | 26 71 75 6f 74 3b 68 65 6c 6c 6f 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2e 2a 3b 0a 20 20 20 20 | "hello"</span>.*;..... |
| 793c0 | 3c 73 70 61 6e 20 63 6c 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 |
| 793e0 | 3e 20 78 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 | >.x:.[]<span.class="tok-type">u8 |
| 79400 | 3c 2f 73 70 61 6e 3e 20 3d 20 26 61 6d 70 3b 62 75 66 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | </span>.=.&buf;.....<span.cl |
| 79420 | 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 |
| 79440 | 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 |
| 79460 | 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 78 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ">u8</span>,.x,.<span.class="tok |
| 79480 | 2d 73 74 72 22 3e 26 71 75 6f 74 3b 68 65 6c 6c 6f 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 29 | -str">"hello"</span>)) |
| 794a0 | 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 | ;......<span.class="tok-kw">cons |
| 794c0 | 74 3c 2f 73 70 61 6e 3e 20 62 75 66 32 20 3d 20 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | t</span>.buf2.=.[<span.class="to |
| 794e0 | 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=" |
| 79500 | 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 |
| 79520 | 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 |
| 79540 | 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>.} |
| 79560 | 3b 0a 20 20 20 20 3c 73 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 |
| 79580 | 3c 2f 73 70 61 6e 3e 20 78 32 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | </span>.x2:.[]<span.class="tok-k |
| 795a0 | 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 |
| 795c0 | 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 26 61 6d 70 3b 62 75 66 32 3b 0a 20 | -type">f32</span>.=.&buf2;.. |
| 795e0 | 20 20 20 3c 73 70 61 6e 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 |
| 79600 | 6e 3e 20 65 78 70 65 63 74 28 73 74 64 2e 6d 65 6d 2e 65 71 6c 28 3c 73 70 61 6e 20 63 6c 61 73 | n>.expect(std.mem.eql(<span.clas |
| 79620 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 2c 20 78 32 2c 20 26 61 6d | s="tok-type">f32</span>,.x2,.&am |
| 79640 | 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 73 | p;[<span.class="tok-number">2</s |
| 79660 | 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 3c | pan>]<span.class="tok-type">f32< |
| 79680 | 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" |
| 796a0 | 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 75 | >1.2</span>,.<span.class="tok-nu |
| 796c0 | 6d 62 65 72 22 3e 33 2e 34 3c 2f 73 70 61 6e 3e 20 7d 29 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 | mber">3.4</span>.}));.}..<span.c |
| 796e0 | 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 53 69 6e 67 6c 65 2d 69 74 65 | lass="tok-comment">//.Single-ite |
| 79700 | 6d 20 70 6f 69 6e 74 65 72 73 20 74 6f 20 61 72 72 61 79 73 20 63 61 6e 20 62 65 20 63 6f 65 72 | m.pointers.to.arrays.can.be.coer |
| 79720 | 63 65 64 20 74 6f 20 6d 61 6e 79 2d 69 74 65 6d 20 70 6f 69 6e 74 65 72 73 2e 3c 2f 73 70 61 6e | ced.to.many-item.pointers.</span |
| 79740 | 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 |
| 79760 | 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">"* |
| 79780 | 5b 4e 5d 54 20 74 6f 20 5b 2a 5d 54 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 | [N]T.to.[*]T"</span>.{..... |
| 797a0 | 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>. |
| 797c0 | 62 75 66 3a 20 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 | buf:.[<span.class="tok-number">5 |
| 797e0 | 3c 2f 73 70 61 6e 3e 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 | </span>]<span.class="tok-type">u |
| 79800 | 38 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 | 8</span>.=.<span.class="tok-str" |
| 79820 | 3e 26 71 75 6f 74 3b 68 65 6c 6c 6f 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2e 2a 3b 0a 20 20 20 | >"hello"</span>.*;.... |
| 79840 | 20 3c 73 70 61 6e 20 63 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 |
| 79860 | 6e 3e 20 78 3a 20 5b 2a 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | n>.x:.[*]<span.class="tok-type"> |
| 79880 | 75 38 3c 2f 73 70 61 6e 3e 20 3d 20 26 61 6d 70 3b 62 75 66 3b 0a 20 20 20 20 3c 73 70 61 6e 20 | u8</span>.=.&buf;.....<span. |
| 798a0 | 63 6c 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 |
| 798c0 | 28 78 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 | (x[<span.class="tok-number">4</s |
| 798e0 | 70 61 6e 3e 5d 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 | pan>].==.<span.class="tok-str">' |
| 79900 | 6f 27 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | o'</span>);.....<span.class="tok |
| 79920 | 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 78 5b 35 5d 20 77 6f 75 6c 64 20 62 65 20 61 6e 20 75 6e | -comment">//.x[5].would.be.an.un |
| 79940 | 63 61 75 67 68 74 20 6f 75 74 20 6f 66 20 62 6f 75 6e 64 73 20 70 6f 69 6e 74 65 72 20 64 65 72 | caught.out.of.bounds.pointer.der |
| 79960 | 65 66 65 72 65 6e 63 65 21 3c 2f 73 70 61 6e 3e 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | eference!</span>.}..<span.class= |
| 79980 | 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 4c 69 6b 65 77 69 73 65 2c 20 69 74 20 77 6f | "tok-comment">//.Likewise,.it.wo |
| 799a0 | 72 6b 73 20 77 68 65 6e 20 74 68 65 20 64 65 73 74 69 6e 61 74 69 6f 6e 20 74 79 70 65 20 69 73 | rks.when.the.destination.type.is |
| 799c0 | 20 61 6e 20 6f 70 74 69 6f 6e 61 6c 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | .an.optional.</span>.<span.class |
| 799e0 | 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 |
| 79a00 | 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 2a 5b 4e 5d 54 20 74 6f 20 3f 5b 2a 5d 54 | s="tok-str">"*[N]T.to.?[*]T |
| 79a20 | 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= |
| 79a40 | 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 62 75 66 3a 20 5b 3c 73 70 61 6e 20 | "tok-kw">var</span>.buf:.[<span. |
| 79a60 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 5d 3c 73 70 61 | class="tok-number">5</span>]<spa |
| 79a80 | 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>.=.< |
| 79aa0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 68 65 6c 6c 6f | span.class="tok-str">"hello |
| 79ac0 | 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2e 2a 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | "</span>.*;.....<span.class |
| 79ae0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 78 3a 20 3f 5b 2a 5d 3c 73 | ="tok-kw">const</span>.x:.?[*]<s |
| 79b00 | 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>.= |
| 79b20 | 20 26 61 6d 70 3b 62 75 66 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | .&buf;.....<span.class="tok- |
| 79b40 | 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 78 2e 3f 5b 3c 73 70 61 6e 20 | kw">try</span>.expect(x.?[<span. |
| 79b60 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 5d 20 3d 3d 20 | class="tok-number">4</span>].==. |
| 79b80 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 6f 27 3c 2f 73 70 61 6e 3e | <span.class="tok-str">'o'</span> |
| 79ba0 | 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"> |
| 79bc0 | 2f 2f 20 53 69 6e 67 6c 65 2d 69 74 65 6d 20 70 6f 69 6e 74 65 72 73 20 63 61 6e 20 62 65 20 63 | //.Single-item.pointers.can.be.c |
| 79be0 | 61 73 74 20 74 6f 20 6c 65 6e 2d 31 20 73 69 6e 67 6c 65 2d 69 74 65 6d 20 61 72 72 61 79 73 2e | ast.to.len-1.single-item.arrays. |
| 79c00 | 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 | </span>.<span.class="tok-kw">tes |
| 79c20 | 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">& |
| 79c40 | 71 75 6f 74 3b 2a 54 20 74 6f 20 2a 5b 31 5d 54 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a | quot;*T.to.*[1]T"</span>.{. |
| 79c60 | 20 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 |
| 79c80 | 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 |
| 79ca0 | 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 |
| 79cc0 | 65 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | er">1234</span>;.....<span.class |
| 79ce0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 79 3a 20 2a 5b 3c 73 70 61 | ="tok-kw">const</span>.y:.*[<spa |
| 79d00 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 5d 3c 73 | n.class="tok-number">1</span>]<s |
| 79d20 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 | pan.class="tok-type">i32</span>. |
| 79d40 | 3d 20 26 61 6d 70 3b 78 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | =.&x;.....<span.class="tok-k |
| 79d60 | 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 7a 3a 20 5b 2a 5d 3c 73 70 61 6e 20 63 6c 61 73 | w">const</span>.z:.[*]<span.clas |
| 79d80 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 79 3b 0a 20 20 20 | s="tok-type">i32</span>.=.y;.... |
| 79da0 | 20 3c 73 70 61 6e 20 63 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> |
| 79dc0 | 20 65 78 70 65 63 74 28 7a 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | .expect(z[<span.class="tok-numbe |
| 79de0 | 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 |
| 79e00 | 2d 6e 75 6d 62 65 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 | -number">1234</span>);.}..<span. |
| 79e20 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 53 65 6e 74 69 6e 65 6c 2d | class="tok-comment">//.Sentinel- |
| 79e40 | 74 65 72 6d 69 6e 61 74 65 64 20 73 6c 69 63 65 73 20 63 61 6e 20 62 65 20 63 6f 65 72 63 65 64 | terminated.slices.can.be.coerced |
| 79e60 | 20 69 6e 74 6f 20 73 65 6e 74 69 6e 65 6c 2d 74 65 72 6d 69 6e 61 74 65 64 20 70 6f 69 6e 74 65 | .into.sentinel-terminated.pointe |
| 79e80 | 72 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 22 3e 74 | rs</span>.<span.class="tok-kw">t |
| 79ea0 | 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" |
| 79ec0 | 3e 26 71 75 6f 74 3b 5b 3a 78 5d 54 20 74 6f 20 5b 2a 3a 78 5d 54 26 71 75 6f 74 3b 3c 2f 73 70 | >"[:x]T.to.[*:x]T"</sp |
| 79ee0 | 61 6e 3e 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 |
| 79f00 | 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 62 75 66 3a 20 5b 3a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | onst</span>.buf:.[:<span.class=" |
| 79f20 | 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 73 | tok-number">0</span>]<span.class |
| 79f40 | 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 |
| 79f60 | 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 20 | ss="tok-type">u8</span>.=.<span. |
| 79f80 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 68 65 6c 6c 6f 26 71 75 6f 74 | class="tok-str">"hello" |
| 79fa0 | 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 2d 6b | ;</span>;.....<span.class="tok-k |
| 79fc0 | 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 62 75 66 32 3a 20 5b 2a 3a 3c 73 70 61 6e 20 63 | w">const</span>.buf2:.[*:<span.c |
| 79fe0 | 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 |
| 7a000 | 20 63 6c 61 73 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 |
| 7a020 | 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>.=. |
| 7a040 | 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 |
| 7a060 | 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 62 75 66 32 5b 3c 73 70 61 6e 20 63 6c 61 73 73 | y</span>.expect(buf2[<span.class |
| 7a080 | 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 61 6e | ="tok-number">4</span>].==.<span |
| 7a0a0 | 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 0a 7d 3c | .class="tok-str">'o'</span>);.}< |
| 7a0c0 | 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 |
| 7a0e0 | 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 |
| 7a100 | 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 |
| 7a120 | 69 67 20 74 65 73 74 20 74 65 73 74 5f 63 6f 65 72 63 65 5f 73 6c 69 63 65 73 5f 61 72 72 61 79 | ig.test.test_coerce_slices_array |
| 7a140 | 73 5f 61 6e 64 5f 70 6f 69 6e 74 65 72 73 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 38 20 74 65 73 | s_and_pointers.zig</kbd>.1/8.tes |
| 7a160 | 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 |
| 7a180 | 65 72 73 2e 74 65 73 74 2e 2a 63 6f 6e 73 74 20 5b 4e 5d 54 20 74 6f 20 5b 5d 63 6f 6e 73 74 20 | ers.test.*const.[N]T.to.[]const. |
| 7a1a0 | 54 2e 2e 2e 4f 4b 0a 32 2f 38 20 74 65 73 74 5f 63 6f 65 72 63 65 5f 73 6c 69 63 65 73 5f 61 72 | T...OK.2/8.test_coerce_slices_ar |
| 7a1c0 | 72 61 79 73 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 | rays_and_pointers.test.*const.[N |
| 7a1e0 | 5d 54 20 74 6f 20 45 21 5b 5d 63 6f 6e 73 74 20 54 2e 2e 2e 4f 4b 0a 33 2f 38 20 74 65 73 74 5f | ]T.to.E![]const.T...OK.3/8.test_ |
| 7a200 | 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 65 72 | coerce_slices_arrays_and_pointer |
| 7a220 | 73 2e 74 65 73 74 2e 2a 63 6f 6e 73 74 20 5b 4e 5d 54 20 74 6f 20 3f 5b 5d 63 6f 6e 73 74 20 54 | s.test.*const.[N]T.to.?[]const.T |
| 7a240 | 2e 2e 2e 4f 4b 0a 34 2f 38 20 74 65 73 74 5f 63 6f 65 72 63 65 5f 73 6c 69 63 65 73 5f 61 72 72 | ...OK.4/8.test_coerce_slices_arr |
| 7a260 | 61 79 73 5f 61 6e 64 5f 70 6f 69 6e 74 65 72 73 2e 74 65 73 74 2e 2a 5b 4e 5d 54 20 74 6f 20 5b | ays_and_pointers.test.*[N]T.to.[ |
| 7a280 | 5d 54 2e 2e 2e 4f 4b 0a 35 2f 38 20 74 65 73 74 5f 63 6f 65 72 63 65 5f 73 6c 69 63 65 73 5f 61 | ]T...OK.5/8.test_coerce_slices_a |
| 7a2a0 | 72 72 61 79 73 5f 61 6e 64 5f 70 6f 69 6e 74 65 72 73 2e 74 65 73 74 2e 2a 5b 4e 5d 54 20 74 6f | rrays_and_pointers.test.*[N]T.to |
| 7a2c0 | 20 5b 2a 5d 54 2e 2e 2e 4f 4b 0a 36 2f 38 20 74 65 73 74 5f 63 6f 65 72 63 65 5f 73 6c 69 63 65 | .[*]T...OK.6/8.test_coerce_slice |
| 7a2e0 | 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 2a 5b 4e 5d 54 | s_arrays_and_pointers.test.*[N]T |
| 7a300 | 20 74 6f 20 3f 5b 2a 5d 54 2e 2e 2e 4f 4b 0a 37 2f 38 20 74 65 73 74 5f 63 6f 65 72 63 65 5f 73 | .to.?[*]T...OK.7/8.test_coerce_s |
| 7a320 | 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 2a | lices_arrays_and_pointers.test.* |
| 7a340 | 54 20 74 6f 20 2a 5b 31 5d 54 2e 2e 2e 4f 4b 0a 38 2f 38 20 74 65 73 74 5f 63 6f 65 72 63 65 5f | T.to.*[1]T...OK.8/8.test_coerce_ |
| 7a360 | 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. |
| 7a380 | 5b 3a 78 5d 54 20 74 6f 20 5b 2a 3a 78 5d 54 2e 2e 2e 4f 4b 0a 41 6c 6c 20 38 20 74 65 73 74 73 | [:x]T.to.[*:x]T...OK.All.8.tests |
| 7a3a0 | 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>. |
| 7a3c0 | 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e | .......<p>See.also:</p><ul>.<li> |
| 7a3e0 | 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 72 73 | <a.href="#C-Pointers">C.Pointers |
| 7a400 | 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 |
| 7a420 | 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 6c 73 22 3e 3c | 4.id="Type-Coercion-Optionals">< |
| 7a440 | 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 4f 70 74 69 6f | a.href="#toc-Type-Coercion-Optio |
| 7a460 | 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 61 6c 73 3c 2f | nals">Type.Coercion:.Optionals</ |
| 7a480 | 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 |
| 7a4a0 | 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 34 3e 0a 0a 20 | ercion-Optionals">..</a></h4>... |
| 7a4c0 | 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 74 79 70 65 20 | .....<p>.......The.payload.type. |
| 7a4e0 | 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 69 6f 6e 61 6c | of.<a.href="#Optionals">Optional |
| 7a500 | 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 23 6e 75 6c 6c | s</a>,.as.well.as.<a.href="#null |
| 7a520 | 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 70 74 69 6f 6e | ">null</a>,.coerce.to.the.option |
| 7a540 | 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 66 69 67 75 72 | al.type........</p>.......<figur |
| 7a560 | 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 |
| 7a580 | 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 70 74 | ite.class="file">test_coerce_opt |
| 7a5a0 | 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 6f 6e 3e 3c 70 | ionals.zig</cite></figcaption><p |
| 7a5c0 | 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 |
| 7a5e0 | 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 |
| 7a600 | 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. |
| 7a620 | 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"< |
| 7a640 | 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 |
| 7a660 | 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. |
| 7a680 | 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 |
| 7a6a0 | 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"> |
| 7a6c0 | 26 71 75 6f 74 3b 63 6f 65 72 63 65 20 74 6f 20 6f 70 74 69 6f 6e 61 6c 73 26 71 75 6f 74 3b 3c | "coerce.to.optionals"< |
| 7a6e0 | 2f 73 70 61 6e 3e 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 |
| 7a700 | 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 78 3a 20 3f 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ">const</span>.x:.?<span.class=" |
| 7a720 | 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 | tok-type">i32</span>.=.<span.cla |
| 7a740 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 | ss="tok-number">1234</span>;.... |
| 7a760 | 20 3c 73 70 61 6e 20 63 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 |
| 7a780 | 6e 3e 20 79 3a 20 3f 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 | n>.y:.?<span.class="tok-type">i3 |
| 7a7a0 | 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c | 2</span>.=.<span.class="tok-null |
| 7a7c0 | 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ">null</span>;......<span.class= |
| 7a7e0 | 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 78 2e 3f 20 3d | "tok-kw">try</span>.expect(x.?.= |
| 7a800 | 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 34 3c | =.<span.class="tok-number">1234< |
| 7a820 | 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 |
| 7a840 | 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 79 20 3d 3d 20 3c 73 70 61 6e 20 63 | ">try</span>.expect(y.==.<span.c |
| 7a860 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c | lass="tok-null">null</span>);.}< |
| 7a880 | 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 |
| 7a8a0 | 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 |
| 7a8c0 | 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 |
| 7a8e0 | 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 6c 73 2e 7a 69 | ig.test.test_coerce_optionals.zi |
| 7a900 | 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 63 6f 65 72 63 65 5f 6f 70 74 69 6f 6e 61 6c | g</kbd>.1/1.test_coerce_optional |
| 7a920 | 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 2e 2e 4f 4b 0a | s.test.coerce.to.optionals...OK. |
| 7a940 | 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 |
| 7a960 | 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 61 6c 73 20 77 | ></figure>........<p>Optionals.w |
| 7a980 | 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 65 66 3d 22 23 | ork.nested.inside.the.<a.href="# |
| 7a9a0 | 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 79 | Error-Union-Type">Error.Union.Ty |
| 7a9c0 | 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 75 72 65 3e 3c | pe</a>,.too:</p>.......<figure>< |
| 7a9e0 | 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 |
| 7aa00 | 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 70 74 69 6f 6e | .class="file">test_coerce_option |
| 7aa20 | 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 2f 63 69 74 65 | al_wrapped_error_union.zig</cite |
| 7aa40 | 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 |
| 7aa60 | 6c 61 73 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.= |
| 7aa80 | 20 3c 73 70 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 |
| 7aaa0 | 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"> |
| 7aac0 | 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 |
| 7aae0 | 6c 61 73 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 |
| 7ab00 | 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 |
| 7ab20 | 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. |
| 7ab40 | 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 74 6f 20 | class="tok-str">"coerce.to. |
| 7ab60 | 6f 70 74 69 6f 6e 61 6c 73 20 77 72 61 70 70 65 64 20 69 6e 20 65 72 72 6f 72 20 75 6e 69 6f 6e | optionals.wrapped.in.error.union |
| 7ab80 | 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= |
| 7aba0 | 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 78 3a 20 3c 73 70 61 6e 20 63 | "tok-kw">const</span>.x:.<span.c |
| 7abc0 | 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>! |
| 7abe0 | 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 |
| 7ac00 | 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 |
| 7ac20 | 33 34 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | 34</span>;.....<span.class="tok- |
| 7ac40 | 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 6c 61 73 73 3d | kw">const</span>.y:.<span.class= |
| 7ac60 | 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 61 | "tok-type">anyerror</span>!?<spa |
| 7ac80 | 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>.=. |
| 7aca0 | 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 |
| 7acc0 | 6e 3e 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 | n>;......<span.class="tok-kw">tr |
| 7ace0 | 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 |
| 7ad00 | 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 70 61 6e 20 63 | k-kw">try</span>.x).?.==.<span.c |
| 7ad20 | 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>);. |
| 7ad40 | 20 20 20 20 3c 73 70 61 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 |
| 7ad60 | 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" |
| 7ad80 | 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 73 73 3d 22 74 | >try</span>.y).==.<span.class="t |
| 7ada0 | 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 6f 64 65 3e 3c | ok-null">null</span>);.}</code>< |
| 7adc0 | 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 |
| 7ade0 | 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 |
| 7ae00 | 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 |
| 7ae20 | 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 65 64 5f 65 72 | .test_coerce_optional_wrapped_er |
| 7ae40 | 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 63 6f 65 | ror_union.zig</kbd>.1/1.test_coe |
| 7ae60 | 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 75 6e 69 6f 6e | rce_optional_wrapped_error_union |
| 7ae80 | 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 72 61 70 70 65 | .test.coerce.to.optionals.wrappe |
| 7aea0 | 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 20 74 65 73 74 | d.in.error.union...OK.All.1.test |
| 7aec0 | 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> |
| 7aee0 | 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 34 20 69 64 3d 22 54 79 70 65 2d 43 6f 65 72 | ...............<h4.id="Type-Coer |
| 7af00 | 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 22 23 74 6f 63 | cion-Error-Unions"><a.href="#toc |
| 7af20 | 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 22 3e 54 79 70 | -Type-Coercion-Error-Unions">Typ |
| 7af40 | 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 3e 20 3c 61 20 | e.Coercion:.Error.Unions</a>.<a. |
| 7af60 | 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e | class="hdr".href="#Type-Coercion |
| 7af80 | 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 0a 20 20 20 20 | -Error-Unions">..</a></h4>...... |
| 7afa0 | 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 20 3c 61 20 68 | ..<p>The.payload.type.of.an.<a.h |
| 7afc0 | 72 65 66 3d 22 23 45 72 72 6f 72 2d 55 6e 69 6f 6e 2d 54 79 70 65 22 3e 45 72 72 6f 72 20 55 6e | ref="#Error-Union-Type">Error.Un |
| 7afe0 | 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 20 3c 61 20 68 | ion.Type</a>.as.well.as.the.<a.h |
| 7b000 | 72 65 66 3d 22 23 45 72 72 6f 72 2d 53 65 74 2d 54 79 70 65 22 3e 45 72 72 6f 72 20 53 65 74 20 | ref="#Error-Set-Type">Error.Set. |
| 7b020 | 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 65 20 65 72 72 | Type</a>.......coerce.to.the.err |
| 7b040 | 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 20 20 20 20 20 | or.union.type:.......</p>....... |
| 7b060 | 3c 66 69 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 |
| 7b080 | 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 72 | ap"><cite.class="file">test_coer |
| 7b0a0 | 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 3e 3c 2f 66 69 | ce_to_error_union.zig</cite></fi |
| 7b0c0 | 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= |
| 7b0e0 | 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 |
| 7b100 | 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 |
| 7b120 | 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">" |
| 7b140 | 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= |
| 7b160 | 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 |
| 7b180 | 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= |
| 7b1a0 | 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 |
| 7b1c0 | 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 6f 20 65 72 72 | ="tok-str">"coercion.to.err |
| 7b1e0 | 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 20 20 3c 73 70 | or.unions"</span>.{.....<sp |
| 7b200 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 78 | an.class="tok-kw">const</span>.x |
| 7b220 | 3a 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 |
| 7b240 | 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"> |
| 7b260 | 69 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | i32</span>.=.<span.class="tok-nu |
| 7b280 | 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 6e 20 63 6c 61 | mber">1234</span>;.....<span.cla |
| 7b2a0 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 79 3a 20 3c 73 70 61 | ss="tok-kw">const</span>.y:.<spa |
| 7b2c0 | 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 |
| 7b2e0 | 6e 3e 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 | n>!<span.class="tok-type">i32</s |
| 7b300 | 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f | pan>.=.<span.class="tok-kw">erro |
| 7b320 | 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 6e 20 63 6c 61 | r</span>.Failure;......<span.cla |
| 7b340 | 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((< |
| 7b360 | 73 70 61 6e 20 63 6c 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 |
| 7b380 | 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 | ).==.<span.class="tok-number">12 |
| 7b3a0 | 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 |
| 7b3c0 | 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 |
| 7b3e0 | 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 22 3e 65 72 72 | ctError(<span.class="tok-kw">err |
| 7b400 | 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 6f 64 65 3e 3c | or</span>.Failure,.y);.}</code>< |
| 7b420 | 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 |
| 7b440 | 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 |
| 7b460 | 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 |
| 7b480 | 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 2e 7a 69 67 3c | .test_coerce_to_error_union.zig< |
| 7b4a0 | 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 72 6f 72 5f 75 | /kbd>.1/1.test_coerce_to_error_u |
| 7b4c0 | 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 20 75 6e 69 6f | nion.test.coercion.to.error.unio |
| 7b4e0 | 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 0a 3c 2f 73 61 | ns...OK.All.1.tests.passed..</sa |
| 7b500 | 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>.............. |
| 7b520 | 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 69 6c 65 2d 54 | .<h4.id="Type-Coercion-Compile-T |
| 7b540 | 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 22 23 74 6f 63 | ime-Known-Numbers"><a.href="#toc |
| 7b560 | 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 2d 4b 6e 6f 77 | -Type-Coercion-Compile-Time-Know |
| 7b580 | 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 70 69 6c | n-Numbers">Type.Coercion:.Compil |
| 7b5a0 | 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 20 63 6c 61 73 | e-Time.Known.Numbers</a>.<a.clas |
| 7b5c0 | 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 43 6f 6d | s="hdr".href="#Type-Coercion-Com |
| 7b5e0 | 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 3c 2f 61 3e 3c | pile-Time-Known-Numbers">..</a>< |
| 7b600 | 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 72 20 69 73 20 | /h4>........<p>When.a.number.is. |
| 7b620 | 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> |
| 7b640 | 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 69 6e 20 74 68 | -known.to.be.representable.in.th |
| 7b660 | 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 74 20 6d 61 79 | e.destination.type,.......it.may |
| 7b680 | 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 20 20 20 3c 66 | .be.coerced:.......</p>.......<f |
| 7b6a0 | 69 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 |
| 7b6c0 | 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 65 | "><cite.class="file">test_coerce |
| 7b6e0 | 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 2f 66 69 67 63 | _large_to_small.zig</cite></figc |
| 7b700 | 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 |
| 7b720 | 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. |
| 7b740 | 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 |
| 7b760 | 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 |
| 7b780 | 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 |
| 7b7a0 | 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 |
| 7b7c0 | 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 |
| 7b7e0 | 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=" |
| 7b800 | 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 67 65 20 69 6e | tok-str">"coercing.large.in |
| 7b820 | 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 68 65 6e 20 76 | teger.type.to.smaller.one.when.v |
| 7b840 | 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 69 74 26 71 75 | alue.is.comptime-known.to.fit&qu |
| 7b860 | 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 |
| 7b880 | 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 |
| 7b8a0 | 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 20 | s="tok-type">u64</span>.=.<span. |
| 7b8c0 | 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 6e 3e 3b 0a 20 | class="tok-number">255</span>;.. |
| 7b8e0 | 20 20 20 3c 73 70 61 6e 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 |
| 7b900 | 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 75 | pan>.y:.<span.class="tok-type">u |
| 7b920 | 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 73 73 3d 22 74 | 8</span>.=.x;.....<span.class="t |
| 7b940 | 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 |
| 7b960 | 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 6e | pan.class="tok-number">255</span |
| 7b980 | 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 |
| 7b9a0 | 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" |
| 7b9c0 | 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>$. |
| 7b9e0 | 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 61 72 67 65 5f | <kbd>zig.test.test_coerce_large_ |
| 7ba00 | 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 5f 63 6f 65 72 | to_small.zig</kbd>.1/1.test_coer |
| 7ba20 | 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 63 69 6e 67 20 | ce_large_to_small.test.coercing. |
| 7ba40 | 6c 61 72 67 65 20 69 6e 74 65 67 65 72 20 74 79 70 65 20 74 6f 20 73 6d 61 6c 6c 65 72 20 6f 6e | large.integer.type.to.smaller.on |
| 7ba60 | 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 6f 77 6e 20 74 | e.when.value.is.comptime-known.t |
| 7ba80 | 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 65 64 2e 0a 3c | o.fit...OK.All.1.tests.passed..< |
| 7baa0 | 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>........... |
| 7bac0 | 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 6e 69 6f 6e 73 | ....<h4.id="Type-Coercion-Unions |
| 7bae0 | 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 79 70 65 2d 43 | -and-Enums"><a.href="#toc-Type-C |
| 7bb00 | 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 79 70 65 20 43 | oercion-Unions-and-Enums">Type.C |
| 7bb20 | 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 61 3e 20 3c 61 | oercion:.Unions.and.Enums</a>.<a |
| 7bb40 | 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 |
| 7bb60 | 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 2f 68 34 3e 0a | n-Unions-and-Enums">..</a></h4>. |
| 7bb80 | 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 20 62 65 20 63 | .......<p>Tagged.unions.can.be.c |
| 7bba0 | 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 63 61 6e 20 62 | oerced.to.enums,.and.enums.can.b |
| 7bbc0 | 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 20 20 20 20 20 | e.coerced.to.tagged.unions...... |
| 7bbe0 | 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 6d 70 74 69 6d | .when.they.are.<a.href="#comptim |
| 7bc00 | 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 20 61 20 66 69 | e">comptime</a>-known.to.be.a.fi |
| 7bc20 | 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 6e 6c 79 20 6f | eld.of.the.union.that.has.only.o |
| 7bc40 | 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 20 20 20 20 20 | ne.possible.value,.such.as...... |
| 7bc60 | 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 20 20 20 20 20 | .<a.href="#void">void</a>:...... |
| 7bc80 | 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. |
| 7bca0 | 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 |
| 7bcc0 | 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 2e 7a 69 67 3c | e">test_coerce_unions_enums.zig< |
| 7bce0 | 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 |
| 7bd00 | 70 61 6e 20 63 6c 61 73 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>. |
| 7bd20 | 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"> |
| 7bd40 | 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- |
| 7bd60 | 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 |
| 7bd80 | 70 61 6e 20 63 6c 61 73 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>. |
| 7bda0 | 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 |
| 7bdc0 | 70 61 6e 20 63 6c 61 73 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>. |
| 7bde0 | 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 75 6d 3c 2f 73 | E.=.<span.class="tok-kw">enum</s |
| 7be00 | 70 61 6e 3e 20 7b 0a 20 20 20 20 6f 6e 65 2c 0a 20 20 20 20 74 77 6f 2c 0a 20 20 20 20 74 68 72 | pan>.{.....one,.....two,.....thr |
| 7be20 | 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 22 3e 63 6f 6e | ee,.};..<span.class="tok-kw">con |
| 7be40 | 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 74 6f 6b 2d 6b | st</span>.U.=.<span.class="tok-k |
| 7be60 | 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 65 3a 20 3c 73 | w">union</span>(E).{.....one:.<s |
| 7be80 | 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>, |
| 7bea0 | 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 74 79 70 65 22 | .....two:.<span.class="tok-type" |
| 7bec0 | 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 0a 3c 73 70 61 | >f32</span>,.....three,.};..<spa |
| 7bee0 | 6e 20 63 6c 61 73 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 32 | n.class="tok-kw">const</span>.U2 |
| 7bf00 | 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 69 6f 6e 3c 2f 73 | .=.<span.class="tok-kw">union</s |
| 7bf20 | 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6e 75 6d 3c 2f | pan>(<span.class="tok-kw">enum</ |
| 7bf40 | 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 3d 22 74 6f 6b | span>).{.....a:.<span.class="tok |
| 7bf60 | 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 3c 73 70 61 6e | -type">void</span>,.....b:.<span |
| 7bf80 | 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 0a 20 | .class="tok-type">f32</span>,... |
| 7bfa0 | 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 |
| 7bfc0 | 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 2f 73 70 61 6e | >.<span.class="tok-fn">tag</span |
| 7bfe0 | 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 6b 2d 74 79 70 | >(self:.U2).<span.class="tok-typ |
| 7c000 | 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 73 70 61 6e 20 | e">usize</span>.{.........<span. |
| 7c020 | 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 73 65 | class="tok-kw">switch</span>.(se |
| 7c040 | 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 3c 73 70 61 6e | lf).{..............a.=>.<span |
| 7c060 | 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 |
| 7c080 | 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>, |
| 7c0a0 | 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 20 63 6c 61 73 | ..............b.=>.<span.clas |
| 7c0c0 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 | s="tok-kw">return</span>.<span.c |
| 7c0e0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 | lass="tok-number">2</span>,..... |
| 7c100 | 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 3d 22 74 6f 6b | ....}.....}.};..<span.class="tok |
| 7c120 | 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 |
| 7c140 | 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 65 6e 20 75 6e | k-str">"coercion.between.un |
| 7c160 | 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 20 7b 0a 20 20 | ions.and.enums"</span>.{... |
| 7c180 | 20 20 3c 73 70 61 6e 20 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 |
| 7c1a0 | 61 6e 3e 20 75 20 3d 20 55 7b 20 2e 74 77 6f 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | an>.u.=.U{..two.=.<span.class="t |
| 7c1c0 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 2e 33 34 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 20 20 20 20 3c | ok-number">12.34</span>.};.....< |
| 7c1e0 | 73 70 61 6e 20 63 6c 61 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> |
| 7c200 | 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 2d 63 6f 6d 6d | .e:.E.=.u;.<span.class="tok-comm |
| 7c220 | 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 6d 3c 2f 73 70 | ent">//.coerce.union.to.enum</sp |
| 7c240 | 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 |
| 7c260 | 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 0a 0a 20 20 20 | </span>.expect(e.==.E.two);..... |
| 7c280 | 20 3c 73 70 61 6e 20 63 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 |
| 7c2a0 | 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 61 6e 20 63 6c | n>.three.=.E.three;.....<span.cl |
| 7c2c0 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 75 5f 32 3a 20 55 | ass="tok-kw">const</span>.u_2:.U |
| 7c2e0 | 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 63 6f 6d 6d 65 | .=.three;.<span.class="tok-comme |
| 7c300 | 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 3c 2f 73 70 61 | nt">//.coerce.enum.to.union</spa |
| 7c320 | 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< |
| 7c340 | 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 65 29 3b 0a 0a | /span>.expect(u_2.==.E.three);.. |
| 7c360 | 20 20 20 20 3c 73 70 61 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</ |
| 7c380 | 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 6e 20 63 6c 61 | span>.u_3:.U.=..three;.<span.cla |
| 7c3a0 | 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 65 6e 75 6d 20 | ss="tok-comment">//.coerce.enum. |
| 7c3c0 | 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 20 3c 73 70 61 | literal.to.union</span>.....<spa |
| 7c3e0 | 6e 20 63 6c 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 |
| 7c400 | 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 70 61 6e 20 63 | ct(u_3.==.E.three);......<span.c |
| 7c420 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 75 5f 34 3a 20 | lass="tok-kw">const</span>.u_4:. |
| 7c440 | 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 6f 6d 6d 65 6e | U2.=..a;.<span.class="tok-commen |
| 7c460 | 74 22 3e 2f 2f 20 63 6f 65 72 63 65 20 65 6e 75 6d 20 6c 69 74 65 72 61 6c 20 74 6f 20 75 6e 69 | t">//.coerce.enum.literal.to.uni |
| 7c480 | 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 79 70 65 2e 3c | on.with.inferred.enum.tag.type.< |
| 7c4a0 | 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"> |
| 7c4c0 | 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 20 3d 3d 20 3c | try</span>.expect(u_4.tag().==.< |
| 7c4e0 | 73 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> |
| 7c500 | 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 |
| 7c520 | 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 69 73 20 69 6e | ">//.The.following.example.is.in |
| 7c540 | 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 73 73 3d 22 74 | valid.</span>.....<span.class="t |
| 7c560 | 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 69 6f 6e 20 66 | ok-comment">//.error:.coercion.f |
| 7c580 | 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 65 72 61 6c 29 | rom.enum.'@TypeOf(.enum_literal) |
| 7c5a0 | 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 6f 6e 73 5f 65 | '.to.union.'test_coerce_unions_e |
| 7c5c0 | 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 32 27 20 66 69 | num.U2'.must.initialize.'f32'.fi |
| 7c5e0 | 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 61 73 73 3d 22 | eld.'b'</span>.....<span.class=" |
| 7c600 | 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 3d 20 2e 62 3b | tok-comment">//var.u_5:.U2.=..b; |
| 7c620 | 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 |
| 7c640 | 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 29 20 3d 3d 20 | ment">//try.expect(u_5.tag().==. |
| 7c660 | 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 66 69 67 75 72 | 2);</span>.}</code></pre></figur |
| 7c680 | 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 |
| 7c6a0 | 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>< |
| 7c6c0 | 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 63 6f 65 72 63 65 | samp>$.<kbd>zig.test.test_coerce |
| 7c6e0 | 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 20 74 65 73 74 | _unions_enums.zig</kbd>.1/1.test |
| 7c700 | 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 6f 65 72 63 69 | _coerce_unions_enums.test.coerci |
| 7c720 | 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 2e 2e 2e 4f 4b | on.between.unions.and.enums...OK |
| 7c740 | 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 |
| 7c760 | 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:< |
| 7c780 | 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 22 3e 75 6e 69 | /p><ul>.<li><a.href="#union">uni |
| 7c7a0 | 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 6e 75 6d 22 3e | on</a></li>.<li><a.href="#enum"> |
| 7c7c0 | 65 6e 75 6d 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 | enum</a></li>.</ul>............. |
| 7c7e0 | 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 65 66 69 6e 65 | ..<h4.id="Type-Coercion-undefine |
| 7c800 | 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 69 6f 6e 2d 75 | d"><a.href="#toc-Type-Coercion-u |
| 7c820 | 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 64 65 66 69 6e | ndefined">Type.Coercion:.undefin |
| 7c840 | 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 22 23 54 79 70 | ed</a>.<a.class="hdr".href="#Typ |
| 7c860 | 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 3e 3c 2f 68 34 | e-Coercion-undefined">..</a></h4 |
| 7c880 | 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 69 6e 65 64 22 | >........<p><a.href="#undefined" |
| 7c8a0 | 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 65 64 20 74 6f | >undefined</a>.can.be.coerced.to |
| 7c8c0 | 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 20 20 3c 68 34 | .any.type.</p>...............<h4 |
| 7c8e0 | 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 6f 2d 41 72 72 | .id="Type-Coercion-Tuples-to-Arr |
| 7c900 | 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 72 63 69 6f 6e | ays"><a.href="#toc-Type-Coercion |
| 7c920 | 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 72 63 69 6f 6e | -Tuples-to-Arrays">Type.Coercion |
| 7c940 | 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 6c 61 73 73 3d | :.Tuples.to.Arrays</a>.<a.class= |
| 7c960 | 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 54 75 70 6c 65 | "hdr".href="#Type-Coercion-Tuple |
| 7c980 | 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 20 20 20 20 20 | s-to-Arrays">..</a></h4>........ |
| 7c9a0 | 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 3c 2f 61 3e 20 | <p><a.href="#Tuples">Tuples</a>. |
| 7c9c0 | 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 66 20 61 6c 6c | can.be.coerced.to.arrays,.if.all |
| 7c9e0 | 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 65 20 74 79 70 | .of.the.fields.have.the.same.typ |
| 7ca00 | 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 70 74 69 6f 6e | e.</p>.......<figure><figcaption |
| 7ca20 | 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 |
| 7ca40 | 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 79 73 2e 7a 69 | le">test_coerce_tuples_arrays.zi |
| 7ca60 | 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> |
| 7ca80 | 3c 73 70 61 6e 20 63 6c 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 |
| 7caa0 | 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 |
| 7cac0 | 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 |
| 7cae0 | 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>);. |
| 7cb00 | 3c 73 70 61 6e 20 63 6c 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 |
| 7cb20 | 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;.. |
| 7cb40 | 3c 73 70 61 6e 20 63 6c 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 |
| 7cb60 | 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 6b 77 22 3e 73 | >.Tuple.=.<span.class="tok-kw">s |
| 7cb80 | 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- |
| 7cba0 | 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | type">u8</span>,.<span.class="to |
| 7cbc0 | 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 63 6c 61 73 73 | k-type">u8</span>.};.<span.class |
| 7cbe0 | 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 |
| 7cc00 | 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 66 72 6f 6d 20 | s="tok-str">"coercion.from. |
| 7cc20 | 68 6f 6d 6f 67 65 6e 65 6f 75 73 20 74 75 70 6c 65 20 74 6f 20 61 72 72 61 79 26 71 75 6f 74 3b | homogeneous.tuple.to.array" |
| 7cc40 | 3c 2f 73 70 61 6e 3e 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 |
| 7cc60 | 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 20 3d 20 2e | w">const</span>.tuple:.Tuple.=.. |
| 7cc80 | 7b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 | {.<span.class="tok-number">5</sp |
| 7cca0 | 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< |
| 7ccc0 | 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 |
| 7cce0 | 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 72 72 61 79 3a 20 5b 3c 73 70 61 6e 20 63 6c | w">const</span>.array:.[<span.cl |
| 7cd00 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 5d 3c 73 70 61 6e 20 | ass="tok-number">2</span>]<span. |
| 7cd20 | 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 74 75 70 | class="tok-type">u8</span>.=.tup |
| 7cd40 | 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 2f 70 72 65 | le;....._.=.array;.}</code></pre |
| 7cd60 | 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 |
| 7cd80 | 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 |
| 7cda0 | 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 |
| 7cdc0 | 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 6b 62 64 3e | t_coerce_tuples_arrays.zig</kbd> |
| 7cde0 | 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 79 73 2e 74 | .1/1.test_coerce_tuples_arrays.t |
| 7ce00 | 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 65 6f 75 73 20 74 75 | est.coercion.from.homogeneous.tu |
| 7ce20 | 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 20 70 61 | ple.to.array...OK.All.1.tests.pa |
| 7ce40 | 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>.... |
| 7ce60 | 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 70 6c 69 | ...................<h3.id="Expli |
| 7ce80 | 63 69 74 2d 43 61 73 74 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 45 78 70 6c 69 63 69 | cit-Casts"><a.href="#toc-Explici |
| 7cea0 | 74 2d 43 61 73 74 73 22 3e 45 78 70 6c 69 63 69 74 20 43 61 73 74 73 3c 2f 61 3e 20 3c 61 20 63 | t-Casts">Explicit.Casts</a>.<a.c |
| 7cec0 | 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 45 78 70 6c 69 63 69 74 2d 43 61 73 74 73 | lass="hdr".href="#Explicit-Casts |
| 7cee0 | 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 45 | ">..</a></h3>........<p>.......E |
| 7cf00 | 78 70 6c 69 63 69 74 20 63 61 73 74 73 20 61 72 65 20 70 65 72 66 6f 72 6d 65 64 20 76 69 61 20 | xplicit.casts.are.performed.via. |
| 7cf20 | 3c 61 20 68 72 65 66 3d 22 23 42 75 69 6c 74 69 6e 2d 46 75 6e 63 74 69 6f 6e 73 22 3e 42 75 69 | <a.href="#Builtin-Functions">Bui |
| 7cf40 | 6c 74 69 6e 20 46 75 6e 63 74 69 6f 6e 73 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 53 6f 6d 65 20 65 | ltin.Functions</a>........Some.e |
| 7cf60 | 78 70 6c 69 63 69 74 20 63 61 73 74 73 20 61 72 65 20 73 61 66 65 3b 20 73 6f 6d 65 20 61 72 65 | xplicit.casts.are.safe;.some.are |
| 7cf80 | 20 6e 6f 74 2e 0a 20 20 20 20 20 20 53 6f 6d 65 20 65 78 70 6c 69 63 69 74 20 63 61 73 74 73 20 | .not........Some.explicit.casts. |
| 7cfa0 | 70 65 72 66 6f 72 6d 20 6c 61 6e 67 75 61 67 65 2d 6c 65 76 65 6c 20 61 73 73 65 72 74 69 6f 6e | perform.language-level.assertion |
| 7cfc0 | 73 3b 20 73 6f 6d 65 20 64 6f 20 6e 6f 74 2e 0a 20 20 20 20 20 20 53 6f 6d 65 20 65 78 70 6c 69 | s;.some.do.not........Some.expli |
| 7cfe0 | 63 69 74 20 63 61 73 74 73 20 61 72 65 20 6e 6f 2d 6f 70 73 20 61 74 20 72 75 6e 74 69 6d 65 3b | cit.casts.are.no-ops.at.runtime; |
| 7d000 | 20 73 6f 6d 65 20 61 72 65 20 6e 6f 74 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 | .some.are.not........</p>....... |
| 7d020 | 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 62 69 74 | <ul>...........<li><a.href="#bit |
| 7d040 | 43 61 73 74 22 3e 40 62 69 74 43 61 73 74 3c 2f 61 3e 20 2d 20 63 68 61 6e 67 65 20 74 79 70 65 | Cast">@bitCast</a>.-.change.type |
| 7d060 | 20 62 75 74 20 6d 61 69 6e 74 61 69 6e 20 62 69 74 20 72 65 70 72 65 73 65 6e 74 61 74 69 6f 6e | .but.maintain.bit.representation |
| 7d080 | 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 61 6c | </li>...........<li><a.href="#al |
| 7d0a0 | 69 67 6e 43 61 73 74 22 3e 40 61 6c 69 67 6e 43 61 73 74 3c 2f 61 3e 20 2d 20 6d 61 6b 65 20 61 | ignCast">@alignCast</a>.-.make.a |
| 7d0c0 | 20 70 6f 69 6e 74 65 72 20 68 61 76 65 20 6d 6f 72 65 20 61 6c 69 67 6e 6d 65 6e 74 3c 2f 6c 69 | .pointer.have.more.alignment</li |
| 7d0e0 | 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 6d 46 72 | >...........<li><a.href="#enumFr |
| 7d100 | 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 61 69 6e | omInt">@enumFromInt</a>.-.obtain |
| 7d120 | 20 61 6e 20 65 6e 75 6d 20 76 61 6c 75 65 20 62 61 73 65 64 20 6f 6e 20 69 74 73 20 69 6e 74 65 | .an.enum.value.based.on.its.inte |
| 7d140 | 67 65 72 20 74 61 67 20 76 61 6c 75 65 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 | ger.tag.value</li>...........<li |
| 7d160 | 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 6f 72 46 | ><a.href="#errorFromInt">@errorF |
| 7d180 | 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 63 6f 64 | romInt</a>.-.obtain.an.error.cod |
| 7d1a0 | 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 2f 6c 69 | e.based.on.its.integer.value</li |
| 7d1c0 | 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 6f 72 43 | >...........<li><a.href="#errorC |
| 7d1e0 | 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 20 74 6f | ast">@errorCast</a>.-.convert.to |
| 7d200 | 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 20 20 20 | .a.smaller.error.set</li>....... |
| 7d220 | 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 40 66 6c | ....<li><a.href="#floatCast">@fl |
| 7d240 | 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 72 20 66 | oatCast</a>.-.convert.a.larger.f |
| 7d260 | 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 20 20 20 | loat.to.a.smaller.float</li>.... |
| 7d280 | 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 6d 49 6e | .......<li><a.href="#floatFromIn |
| 7d2a0 | 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 74 20 61 | t">@floatFromInt</a>.-.convert.a |
| 7d2c0 | 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 69 3e 0a | n.integer.to.a.float.value</li>. |
| 7d2e0 | 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 73 74 22 | ..........<li><a.href="#intCast" |
| 7d300 | 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 65 6e 20 | >@intCast</a>.-.convert.between. |
| 7d320 | 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 3c 6c 69 | integer.types</li>...........<li |
| 7d340 | 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 72 6f 6d | ><a.href="#intFromBool">@intFrom |
| 7d360 | 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 61 6e 64 | Bool</a>.-.convert.true.to.1.and |
| 7d380 | 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 69 3e 3c | .false.to.0</li>...........<li>< |
| 7d3a0 | 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 6d 45 6e | a.href="#intFromEnum">@intFromEn |
| 7d3c0 | 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 61 67 20 | um</a>.-.obtain.the.integer.tag. |
| 7d3e0 | 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 69 6f 6e | value.of.an.enum.or.tagged.union |
| 7d400 | 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 69 6e | </li>...........<li><a.href="#in |
| 7d420 | 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 20 2d 20 | tFromError">@intFromError</a>.-. |
| 7d440 | 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 6e 20 65 | obtain.the.integer.value.of.an.e |
| 7d460 | 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 3c 61 20 | rror.code</li>...........<li><a. |
| 7d480 | 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 46 6c 6f | href="#intFromFloat">@intFromFlo |
| 7d4a0 | 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 61 72 74 | at</a>.-.obtain.the.integer.part |
| 7d4c0 | 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 20 20 20 | .of.a.float.value</li>.......... |
| 7d4e0 | 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 6e 74 46 | .<li><a.href="#intFromPtr">@intF |
| 7d500 | 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 73 73 20 | romPtr</a>.-.obtain.the.address. |
| 7d520 | 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 6c 69 3e | of.a.pointer</li>...........<li> |
| 7d540 | 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 6d 49 6e | <a.href="#ptrFromInt">@ptrFromIn |
| 7d560 | 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 20 61 20 | t</a>.-.convert.an.address.to.a. |
| 7d580 | 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 20 68 72 | pointer</li>...........<li><a.hr |
| 7d5a0 | 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 63 6f 6e | ef="#ptrCast">@ptrCast</a>.-.con |
| 7d5c0 | 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 69 3e 0a | vert.between.pointer.types</li>. |
| 7d5e0 | 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 61 74 65 | ..........<li><a.href="#truncate |
| 7d600 | 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 77 65 65 | ">@truncate</a>.-.convert.betwee |
| 7d620 | 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 20 62 69 | n.integer.types,.chopping.off.bi |
| 7d640 | 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 20 20 20 | ts</li>.......</ul>............. |
| 7d660 | 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 6e 22 3e | ..<h3.id="Peer-Type-Resolution"> |
| 7d680 | 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 75 74 69 | <a.href="#toc-Peer-Type-Resoluti |
| 7d6a0 | 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 3c 61 20 | on">Peer.Type.Resolution</a>.<a. |
| 7d6c0 | 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 52 65 73 | class="hdr".href="#Peer-Type-Res |
| 7d6e0 | 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 70 3e 50 | olution">..</a></h3>........<p>P |
| 7d700 | 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 20 74 68 | eer.Type.Resolution.occurs.in.th |
| 7d720 | 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 20 20 20 | ese.places:</p>.......<ul>...... |
| 7d740 | 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 63 68 3c | ...<li><a.href="#switch">switch< |
| 7d760 | 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 69 | /a>.expressions</li>.........<li |
| 7d780 | 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 69 6f 6e | ><a.href="#if">if</a>.expression |
| 7d7a0 | 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 77 68 69 | s</li>.........<li><a.href="#whi |
| 7d7c0 | 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 3e 0a 20 | le">while</a>.expressions</li>.. |
| 7d7e0 | 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 3c 2f 61 | .......<li><a.href="#for">for</a |
| 7d800 | 3e 20 65 78 70 72 65 73 73 69 6f 6e 73 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 4d | >.expressions</li>.........<li>M |
| 7d820 | 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 20 62 6c | ultiple.break.statements.in.a.bl |
| 7d840 | 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 68 72 65 | ock</li>.........<li>Some.<a.hre |
| 7d860 | 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 79 20 6f | f="#Table-of-Operators">binary.o |
| 7d880 | 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 3e 0a 20 | perations</a></li>.......</ul>.. |
| 7d8a0 | 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 79 70 65 | .....<p>.......This.kind.of.type |
| 7d8c0 | 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 61 74 20 | .resolution.chooses.a.type.that. |
| 7d8e0 | 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 6f 2e 20 | all.peer.types.can.coerce.into.. |
| 7d900 | 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 0a 20 20 | Here.are.......some.examples:... |
| 7d920 | 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 |
| 7d940 | 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=" |
| 7d960 | 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 6f 6e 2e | file">test_peer_type_resolution. |
| 7d980 | 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 |
| 7d9a0 | 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 |
| 7d9c0 | 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 |
| 7d9e0 | 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=" |
| 7da00 | 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>) |
| 7da20 | 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 |
| 7da40 | 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; |
| 7da60 | 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 |
| 7da80 | 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 3d 22 | n>.mem.=.std.mem;..<span.class=" |
| 7daa0 | 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= |
| 7dac0 | 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 69 6e 74 | "tok-str">"peer.resolve.int |
| 7dae0 | 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 3c 73 70 | .widening"</span>.{.....<sp |
| 7db00 | 61 6e 20 63 6c 61 73 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 |
| 7db20 | 3a 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 |
| 7db40 | 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 |
| 7db60 | 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 |
| 7db80 | 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 62 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ">const</span>.b:.<span.class="t |
| 7dba0 | 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 6c 61 73 | ok-type">i16</span>.=.<span.clas |
| 7dbc0 | 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 20 3c 73 | s="tok-number">34</span>;.....<s |
| 7dbe0 | 70 61 6e 20 63 6c 61 73 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>. |
| 7dc00 | 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 6f 6b 2d | c.=.a.+.b;.....<span.class="tok- |
| 7dc20 | 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 70 61 6e | kw">try</span>.expect(c.==.<span |
| 7dc40 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 36 3c 2f 73 70 61 6e 3e 29 3b 0a | .class="tok-number">46</span>);. |
| 7dc60 | 20 20 20 20 3c 73 70 61 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 |
| 7dc80 | 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 |
| 7dca0 | 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 61 6e 20 | tin">@TypeOf</span>(c).==.<span. |
| 7dcc0 | 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 0a 7d 0a | class="tok-type">i16</span>);.}. |
| 7dce0 | 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 |
| 7dd00 | 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 70 65 | >.<span.class="tok-str">"pe |
| 7dd20 | 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 74 20 73 | er.resolve.arrays.of.different.s |
| 7dd40 | 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 6e 3e 20 | ize.to.const.slice"</span>. |
| 7dd60 | 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</ |
| 7dd80 | 73 70 61 6e 3e 20 65 78 70 65 63 74 28 6d 65 6d 2e 65 71 6c 28 3c 73 70 61 6e 20 63 6c 61 73 73 | span>.expect(mem.eql(<span.class |
| 7dda0 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 62 6f 6f 6c 54 6f 53 74 72 | ="tok-type">u8</span>,.boolToStr |
| 7ddc0 | 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 |
| 7dde0 | 61 6e 3e 29 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f | an>),.<span.class="tok-str">&quo |
| 7de00 | 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 70 61 6e | t;true"</span>));.....<span |
| 7de20 | 20 63 6c 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 |
| 7de40 | 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" |
| 7de60 | 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 62 6f 6f 6c 54 6f 53 74 72 28 3c 73 70 61 6e 20 63 6c 61 73 | >u8</span>,.boolToStr(<span.clas |
| 7de80 | 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 73 70 61 | s="tok-null">false</span>),.<spa |
| 7dea0 | 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 26 71 75 | n.class="tok-str">"false&qu |
| 7dec0 | 6f 74 3b 3c 2f 73 70 61 6e 3e 29 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ot;</span>));.....<span.class="t |
| 7dee0 | 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 74 | ok-kw">try</span>.<span.class="t |
| 7df00 | 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 6d 65 | ok-kw">comptime</span>.expect(me |
| 7df20 | 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< |
| 7df40 | 2f 73 70 61 6e 3e 2c 20 62 6f 6f 6c 54 6f 53 74 72 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | /span>,.boolToStr(<span.class="t |
| 7df60 | 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 63 6c 61 | ok-null">true</span>),.<span.cla |
| 7df80 | 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 74 72 75 65 26 71 75 6f 74 3b 3c 2f 73 | ss="tok-str">"true"</s |
| 7dfa0 | 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 22 | pan>));.....<span.class="tok-kw" |
| 7dfc0 | 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" |
| 7dfe0 | 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 71 6c 28 | >comptime</span>.expect(mem.eql( |
| 7e000 | 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> |
| 7e020 | 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 6e 75 6c | ,.boolToStr(<span.class="tok-nul |
| 7e040 | 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 3d 22 74 | l">false</span>),.<span.class="t |
| 7e060 | 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 61 6e 3e | ok-str">"false"</span> |
| 7e080 | 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 3c 2f 73 | ));.}.<span.class="tok-kw">fn</s |
| 7e0a0 | 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 6c 54 6f | pan>.<span.class="tok-fn">boolTo |
| 7e0c0 | 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 6b 2d 74 | Str</span>(b:.<span.class="tok-t |
| 7e0e0 | 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 73 73 3d | ype">bool</span>).[]<span.class= |
| 7e100 | 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 | "tok-kw">const</span>.<span.clas |
| 7e120 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 | s="tok-type">u8</span>.{.....<sp |
| 7e140 | 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>. |
| 7e160 | 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>.( |
| 7e180 | 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 74 3b 74 | b).<span.class="tok-str">"t |
| 7e1a0 | 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 22 74 6f | rue"</span>.<span.class="to |
| 7e1c0 | 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 |
| 7e1e0 | 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 61 6e 3e | ok-str">"false"</span> |
| 7e200 | 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</ |
| 7e220 | 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 |
| 7e240 | 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 74 20 73 | t;peer.resolve.array.and.const.s |
| 7e260 | 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 20 63 6c | lice"</span>.{.....<span.cl |
| 7e280 | 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 65 65 72 | ass="tok-kw">try</span>.testPeer |
| 7e2a0 | 52 65 73 6f 6c 76 65 41 72 72 61 79 43 6f 6e 73 74 53 6c 69 63 65 28 3c 73 70 61 6e 20 63 6c 61 | ResolveArrayConstSlice(<span.cla |
| 7e2c0 | 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 20 20 20 | ss="tok-null">true</span>);..... |
| 7e2e0 | 3c 73 70 61 6e 20 63 6c 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>. |
| 7e300 | 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 |
| 7e320 | 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 74 53 6c | pan>.testPeerResolveArrayConstSl |
| 7e340 | 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 65 3c | ice(<span.class="tok-null">true< |
| 7e360 | 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | /span>);.}.<span.class="tok-kw"> |
| 7e380 | 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 74 | fn</span>.<span.class="tok-fn">t |
| 7e3a0 | 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 3c 2f 73 | estPeerResolveArrayConstSlice</s |
| 7e3c0 | 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 22 3e 62 | pan>(b:.<span.class="tok-type">b |
| 7e3e0 | 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 2d 74 79 | ool</span>).!<span.class="tok-ty |
| 7e400 | 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 |
| 7e420 | 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 31 20 3d | s="tok-kw">const</span>.value1.= |
| 7e440 | 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>. |
| 7e460 | 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 74 3b | (b).<span.class="tok-str">" |
| 7e480 | 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 3d 22 74 | aoeu"</span>.<span.class="t |
| 7e4a0 | 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ok-kw">else</span>.<span.class=" |
| 7e4c0 | 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 61 73 3c 2f 73 70 61 6e 3e 28 5b 5d 3c 73 70 61 6e 20 | tok-builtin">@as</span>([]<span. |
| 7e4e0 | 63 6c 61 73 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 |
| 7e500 | 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 |
| 7e520 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 7a 7a 26 71 75 6f | pan.class="tok-str">"zz&quo |
| 7e540 | 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 6b | t;</span>);.....<span.class="tok |
| 7e560 | 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 70 61 6e | -kw">const</span>.value2.=.<span |
| 7e580 | 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 3c 73 | .class="tok-kw">if</span>.(b).<s |
| 7e5a0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 61 73 3c 2f 73 70 61 | pan.class="tok-builtin">@as</spa |
| 7e5c0 | 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 73 74 3c | n>([]<span.class="tok-kw">const< |
| 7e5e0 | 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 | /span>.<span.class="tok-type">u8 |
| 7e600 | 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">& |
| 7e620 | 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 6c 61 73 | quot;zz"</span>).<span.clas |
| 7e640 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 | s="tok-kw">else</span>.<span.cla |
| 7e660 | 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 61 6f 65 75 26 71 75 6f 74 3b 3c 2f 73 | ss="tok-str">"aoeu"</s |
| 7e680 | 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 | pan>;.....<span.class="tok-kw">t |
| 7e6a0 | 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 |
| 7e6c0 | 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 6c 75 65 | lass="tok-type">u8</span>,.value |
| 7e6e0 | 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 74 3b 61 | 1,.<span.class="tok-str">"a |
| 7e700 | 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 20 63 6c | oeu"</span>));.....<span.cl |
| 7e720 | 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 6d | ass="tok-kw">try</span>.expect(m |
| 7e740 | 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 38 | em.eql(<span.class="tok-type">u8 |
| 7e760 | 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 22 74 6f | </span>,.value2,.<span.class="to |
| 7e780 | 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 29 3b 0a | k-str">"zz"</span>));. |
| 7e7a0 | 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 |
| 7e7c0 | 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">" |
| 7e7e0 | 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 54 26 71 | peer.type.resolution:.?T.and.T&q |
| 7e800 | 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 |
| 7e820 | 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 70 65 65 72 54 79 70 | ok-kw">try</span>.expect(peerTyp |
| 7e840 | 65 54 41 6e 64 4f 70 74 69 6f 6e 61 6c 54 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | eTAndOptionalT(<span.class="tok- |
| 7e860 | 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 73 3d 22 | null">true</span>,.<span.class=" |
| 7e880 | 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 3c 73 70 | tok-null">false</span>).?.==.<sp |
| 7e8a0 | 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>); |
| 7e8c0 | 0a 20 20 20 20 3c 73 70 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 |
| 7e8e0 | 70 61 6e 3e 20 65 78 70 65 63 74 28 70 65 65 72 54 79 70 65 54 41 6e 64 4f 70 74 69 6f 6e 61 6c | pan>.expect(peerTypeTAndOptional |
| 7e900 | 54 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f | T(<span.class="tok-null">false</ |
| 7e920 | 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 61 | span>,.<span.class="tok-null">fa |
| 7e940 | 6c 73 65 3c 2f 73 70 61 6e 3e 29 2e 3f 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | lse</span>).?.==.<span.class="to |
| 7e960 | 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 6e 20 63 | k-number">3</span>);.....<span.c |
| 7e980 | 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>.{. |
| 7e9a0 | 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 |
| 7e9c0 | 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 |
| 7e9e0 | 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 72 75 65 | nalT(<span.class="tok-null">true |
| 7ea00 | 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e | </span>,.<span.class="tok-null"> |
| 7ea20 | 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 29 2e 3f 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | false</span>).?.==.<span.class=" |
| 7ea40 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 20 20 20 20 3c | tok-number">0</span>);.........< |
| 7ea60 | 73 70 61 6e 20 63 6c 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 |
| 7ea80 | 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 73 70 61 | xpect(peerTypeTAndOptionalT(<spa |
| 7eaa0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 2c | n.class="tok-null">false</span>, |
| 7eac0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 | .<span.class="tok-null">false</s |
| 7eae0 | 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 75 6d 62 | pan>).?.==.<span.class="tok-numb |
| 7eb00 | 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 63 6c 61 | er">3</span>);.....}.}.<span.cla |
| 7eb20 | 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 |
| 7eb40 | 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 61 6c 54 | s="tok-fn">peerTypeTAndOptionalT |
| 7eb60 | 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 79 70 65 | </span>(c:.<span.class="tok-type |
| 7eb80 | 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 3d 22 74 | ">bool</span>,.b:.<span.class="t |
| 7eba0 | 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 63 6c 61 | ok-type">bool</span>).?<span.cla |
| 7ebc0 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 | ss="tok-type">usize</span>.{.... |
| 7ebe0 | 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>. |
| 7ec00 | 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 6b 2d 6b | (c).{.........<span.class="tok-k |
| 7ec20 | 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 |
| 7ec40 | 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 73 73 3d | k-kw">if</span>.(b).<span.class= |
| 7ec60 | 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 63 6c 61 | "tok-null">null</span>.<span.cla |
| 7ec80 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c | ss="tok-kw">else</span>.<span.cl |
| 7eca0 | 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 |
| 7ecc0 | 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> |
| 7ece0 | 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 |
| 7ed00 | 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 6f | an>);.....}......<span.class="to |
| 7ed20 | 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= |
| 7ed40 | 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 61 73 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 | "tok-builtin">@as</span>(<span.c |
| 7ed60 | 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 3c 73 | lass="tok-type">usize</span>,.<s |
| 7ed80 | 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>) |
| 7eda0 | 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</ |
| 7edc0 | 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 |
| 7ede0 | 74 3b 70 65 65 72 20 74 79 70 65 20 72 65 73 6f 6c 75 74 69 6f 6e 3a 20 2a 5b 30 5d 75 38 20 61 | t;peer.type.resolution:.*[0]u8.a |
| 7ee00 | 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 20 20 20 | nd.[]const.u8"</span>.{.... |
| 7ee20 | 20 3c 73 70 61 6e 20 63 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> |
| 7ee40 | 20 65 78 70 65 63 74 28 70 65 65 72 54 79 70 65 45 6d 70 74 79 41 72 72 61 79 41 6e 64 53 6c 69 | .expect(peerTypeEmptyArrayAndSli |
| 7ee60 | 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 65 3c 2f | ce(<span.class="tok-null">true</ |
| 7ee80 | 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 71 75 | span>,.<span.class="tok-str">&qu |
| 7eea0 | 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 70 61 6e | ot;hi"</span>).len.==.<span |
| 7eec0 | 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>);.. |
| 7eee0 | 20 20 20 3c 73 70 61 6e 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 |
| 7ef00 | 6e 3e 20 65 78 70 65 63 74 28 70 65 65 72 54 79 70 65 45 6d 70 74 79 41 72 72 61 79 41 6e 64 53 | n>.expect(peerTypeEmptyArrayAndS |
| 7ef20 | 6c 69 63 65 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 | lice(<span.class="tok-null">fals |
| 7ef40 | 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"> |
| 7ef60 | 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 |
| 7ef80 | 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>) |
| 7efa0 | 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 | ;.....<span.class="tok-kw">compt |
| 7efc0 | 69 6d 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ime</span>.{.........<span.class |
| 7efe0 | 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 |
| 7f000 | 54 79 70 65 45 6d 70 74 79 41 72 72 61 79 41 6e 64 53 6c 69 63 65 28 3c 73 70 61 6e 20 63 6c 61 | TypeEmptyArrayAndSlice(<span.cla |
| 7f020 | 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e | ss="tok-null">true</span>,.<span |
| 7f040 | 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"< |
| 7f060 | 2f 73 70 61 6e 3e 29 2e 6c 65 6e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | /span>).len.==.<span.class="tok- |
| 7f080 | 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e | number">0</span>);.........<span |
| 7f0a0 | 20 63 6c 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 |
| 7f0c0 | 74 28 70 65 65 72 54 79 70 65 45 6d 70 74 79 41 72 72 61 79 41 6e 64 53 6c 69 63 65 28 3c 73 70 | t(peerTypeEmptyArrayAndSlice(<sp |
| 7f0e0 | 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> |
| 7f100 | 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 68 69 | ,.<span.class="tok-str">"hi |
| 7f120 | 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 6c 65 6e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | "</span>).len.==.<span.clas |
| 7f140 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 7d 0a | s="tok-number">1</span>);.....}. |
| 7f160 | 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 3e | }.<span.class="tok-kw">fn</span> |
| 7f180 | 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 65 45 6d | .<span.class="tok-fn">peerTypeEm |
| 7f1a0 | 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 70 61 6e | ptyArrayAndSlice</span>(a:.<span |
| 7f1c0 | 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 |
| 7f1e0 | 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 63 6f 6e | lice:.[]<span.class="tok-kw">con |
| 7f200 | 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" |
| 7f220 | 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 6b 2d 6b | >u8</span>).[]<span.class="tok-k |
| 7f240 | 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 |
| 7f260 | 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 6c 61 | -type">u8</span>.{.....<span.cla |
| 7f280 | 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 20 20 20 | ss="tok-kw">if</span>.(a).{..... |
| 7f2a0 | 20 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< |
| 7f2c0 | 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 6f 6b 2d | /span>.&[_]<span.class="tok- |
| 7f2e0 | 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 20 3c 73 | type">u8</span>{};.....}......<s |
| 7f300 | 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> |
| 7f320 | 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 72 22 3e | .slice[<span.class="tok-number"> |
| 7f340 | 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 6d 62 65 | 0</span>..<span.class="tok-numbe |
| 7f360 | 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 74 6f 6b | r">1</span>];.}.<span.class="tok |
| 7f380 | 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 |
| 7f3a0 | 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 74 69 6f | k-str">"peer.type.resolutio |
| 7f3c0 | 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 79 65 72 | n:.*[0]u8,.[]const.u8,.and.anyer |
| 7f3e0 | 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 0a 20 20 | ror![]u8"</span>.{.....{... |
| 7f400 | 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f | ......<span.class="tok-kw">var</ |
| 7f420 | 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 2d 73 74 | span>.data.=.<span.class="tok-st |
| 7f440 | 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 20 20 20 | r">"hi"</span>.*;..... |
| 7f460 | 20 20 20 20 3c 73 70 61 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</ |
| 7f480 | 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 73 3d 22 | span>.slice.=.data[<span.class=" |
| 7f4a0 | 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 20 20 20 | tok-number">0</span>..];........ |
| 7f4c0 | 20 3c 73 70 61 6e 20 63 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> |
| 7f4e0 | 20 65 78 70 65 63 74 28 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 | .expect((<span.class="tok-kw">tr |
| 7f500 | 79 3c 2f 73 70 61 6e 3e 20 70 65 65 72 54 79 70 65 45 6d 70 74 79 41 72 72 61 79 41 6e 64 53 6c | y</span>.peerTypeEmptyArrayAndSl |
| 7f520 | 69 63 65 41 6e 64 45 72 72 6f 72 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c | iceAndError(<span.class="tok-nul |
| 7f540 | 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 3d 20 3c | l">true</span>,.slice)).len.==.< |
| 7f560 | 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> |
| 7f580 | 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"> |
| 7f5a0 | 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | try</span>.expect((<span.class=" |
| 7f5c0 | 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 70 74 79 | tok-kw">try</span>.peerTypeEmpty |
| 7f5e0 | 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 6c 61 73 | ArrayAndSliceAndError(<span.clas |
| 7f600 | 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 69 63 65 | s="tok-null">false</span>,.slice |
| 7f620 | 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 6d 62 65 | )).len.==.<span.class="tok-numbe |
| 7f640 | 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 20 63 6c | r">1</span>);.....}.....<span.cl |
| 7f660 | 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>.{.. |
| 7f680 | 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c | .......<span.class="tok-kw">var< |
| 7f6a0 | 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 2d 73 | /span>.data.=.<span.class="tok-s |
| 7f6c0 | 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 20 20 | tr">"hi"</span>.*;.... |
| 7f6e0 | 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< |
| 7f700 | 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 73 3d | /span>.slice.=.data[<span.class= |
| 7f720 | 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 20 20 | "tok-number">0</span>..];....... |
| 7f740 | 20 20 3c 73 70 61 6e 20 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 |
| 7f760 | 3e 20 65 78 70 65 63 74 28 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 | >.expect((<span.class="tok-kw">t |
| 7f780 | 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 64 53 | ry</span>.peerTypeEmptyArrayAndS |
| 7f7a0 | 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 6e 75 | liceAndError(<span.class="tok-nu |
| 7f7c0 | 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 3d 20 | ll">true</span>,.slice)).len.==. |
| 7f7e0 | 3c 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 |
| 7f800 | 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" |
| 7f820 | 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d | >try</span>.expect((<span.class= |
| 7f840 | 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 70 74 | "tok-kw">try</span>.peerTypeEmpt |
| 7f860 | 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 6c 61 | yArrayAndSliceAndError(<span.cla |
| 7f880 | 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 69 63 | ss="tok-null">false</span>,.slic |
| 7f8a0 | 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 6d 62 | e)).len.==.<span.class="tok-numb |
| 7f8c0 | 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 7d 0a 7d 0a 3c 73 70 61 6e 20 63 6c 61 | er">1</span>);.....}.}.<span.cla |
| 7f8e0 | 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 |
| 7f900 | 73 3d 22 74 6f 6b 2d 66 6e 22 3e 70 65 65 72 54 79 70 65 45 6d 70 74 79 41 72 72 61 79 41 6e 64 | s="tok-fn">peerTypeEmptyArrayAnd |
| 7f920 | 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 20 63 6c | SliceAndError</span>(a:.<span.cl |
| 7f940 | 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 6c 69 63 | ass="tok-type">bool</span>,.slic |
| 7f960 | 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 38 3c 2f | e:.[]<span.class="tok-type">u8</ |
| 7f980 | 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 61 6e | span>).<span.class="tok-type">an |
| 7f9a0 | 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 74 6f 6b | yerror</span>![]<span.class="tok |
| 7f9c0 | 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 6c 61 | -type">u8</span>.{.....<span.cla |
| 7f9e0 | 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 20 20 20 | ss="tok-kw">if</span>.(a).{..... |
| 7fa00 | 20 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< |
| 7fa20 | 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 6f 6b 2d | /span>.&[_]<span.class="tok- |
| 7fa40 | 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 20 3c 73 | type">u8</span>{};.....}......<s |
| 7fa60 | 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> |
| 7fa80 | 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 72 22 3e | .slice[<span.class="tok-number"> |
| 7faa0 | 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 6d 62 65 | 0</span>..<span.class="tok-numbe |
| 7fac0 | 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 22 74 6f | r">1</span>];.}..<span.class="to |
| 7fae0 | 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 |
| 7fb00 | 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 74 69 | ok-str">"peer.type.resoluti |
| 7fb20 | 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 70 61 6e | on:.*const.T.and.?*T"</span |
| 7fb40 | 3e 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 |
| 7fb60 | 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 6b 2d 6b | st</span>.a:.*<span.class="tok-k |
| 7fb80 | 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 |
| 7fba0 | 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | -type">usize</span>.=.<span.clas |
| 7fbc0 | 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 70 74 72 46 72 6f 6d 49 6e 74 3c 2f 73 70 61 | s="tok-builtin">@ptrFromInt</spa |
| 7fbe0 | 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 31 32 | n>(<span.class="tok-number">0x12 |
| 7fc00 | 33 34 35 36 37 38 30 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | 3456780</span>);.....<span.class |
| 7fc20 | 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 73 70 61 | ="tok-kw">const</span>.b:.?*<spa |
| 7fc40 | 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>. |
| 7fc60 | 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 72 | =.<span.class="tok-builtin">@ptr |
| 7fc80 | 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 2d | FromInt</span>(<span.class="tok- |
| 7fca0 | 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 20 20 20 | number">0x123456780</span>);.... |
| 7fcc0 | 20 3c 73 70 61 6e 20 63 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> |
| 7fce0 | 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 61 73 73 | .expect(a.==.b);.....<span.class |
| 7fd00 | 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 20 3d 3d | ="tok-kw">try</span>.expect(b.== |
| 7fd20 | 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 74 65 73 | .a);.}..<span.class="tok-kw">tes |
| 7fd40 | 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">& |
| 7fd60 | 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 72 6f 72 | quot;peer.type.resolution:.error |
| 7fd80 | 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 20 20 20 | .union.switch"</span>.{.... |
| 7fda0 | 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 |
| 7fdc0 | 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 72 65 20 | e.non-error.and.error.cases.are. |
| 7fde0 | 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 69 73 20 | only.peers.if.the.error.case.is. |
| 7fe00 | 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 61 6e 3e | just.a.switch.expression;</span> |
| 7fe20 | 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">/ |
| 7fe40 | 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 6c 73 65 | /.the.pattern.`if.(x).{...}.else |
| 7fe60 | 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 2e 2e 7d | .|err|.blk:.{.switch.(err).{...} |
| 7fe80 | 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 61 6e 3e | .}`.does.not.consider.the</span> |
| 7fea0 | 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">/ |
| 7fec0 | 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 20 62 65 | /.non-error.and.error.case.to.be |
| 7fee0 | 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 73 3d 22 | .peers.</span>.....<span.class=" |
| 7ff00 | 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 | tok-kw">var</span>.a:.<span.clas |
| 7ff20 | 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 2c 20 43 | s="tok-kw">error</span>{.A,.B,.C |
| 7ff40 | 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 3c 2f 73 | .}!<span.class="tok-type">u32</s |
| 7ff60 | 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"> |
| 7ff80 | 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 20 3c 73 | 0</span>;....._.=.&a;.....<s |
| 7ffa0 | 70 61 6e 20 63 6c 61 73 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>. |
| 7ffc0 | 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 73 70 61 | b.=.<span.class="tok-kw">if</spa |
| 7ffe0 | 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 63 6c 61 | n>.(a).|x|.........x.+.<span.cla |
| 80000 | 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 3c 73 70 | ss="tok-number">3</span>.....<sp |
| 80020 | 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 65 | an.class="tok-kw">else</span>.|e |
| 80040 | 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 63 68 3c | rr|.<span.class="tok-kw">switch< |
| 80060 | 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 63 6c 61 | /span>.(err).{.........<span.cla |
| 80080 | 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 67 74 3b | ss="tok-kw">error</span>.A.=> |
| 800a0 | 20 3c 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 |
| 800c0 | 6e 3e 2c 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | n>,.........<span.class="tok-kw" |
| 800e0 | 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 6c 61 73 | >error</span>.B.=>.<span.clas |
| 80100 | 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 20 20 20 | s="tok-number">1</span>,........ |
| 80120 | 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 |
| 80140 | 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 75 6c 6c | n>.C.=>.<span.class="tok-null |
| 80160 | 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 61 6e 20 | ">null</span>,.....};.....<span. |
| 80180 | 63 6c 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 |
| 801a0 | 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 |
| 801c0 | 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 22 74 6f | Of</span>(b).==.?<span.class="to |
| 801e0 | 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 61 6e 20 | k-type">u32</span>);......<span. |
| 80200 | 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 6e 2d 65 | class="tok-comment">//.The.non-e |
| 80220 | 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 20 70 65 | rror.and.error.cases.are.only.pe |
| 80240 | 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 20 61 20 | ers.if.the.error.case.is.just.a. |
| 80260 | 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 20 3c 73 | switch.expression;</span>.....<s |
| 80280 | 70 61 6e 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 70 | pan.class="tok-comment">//.the.p |
| 802a0 | 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 73 77 69 | attern.`x.catch.|err|.blk:.{.swi |
| 802c0 | 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 6f 6e 73 | tch.(err).{...}.}`.does.not.cons |
| 802e0 | 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 0a 20 20 | ider.the.unwrapped.`x`</span>... |
| 80300 | 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 61 | ..<span.class="tok-comment">//.a |
| 80320 | 6e 64 20 65 72 72 6f 72 20 63 61 73 65 20 74 6f 20 62 65 20 70 65 65 72 73 2e 3c 2f 73 70 61 6e | nd.error.case.to.be.peers.</span |
| 80340 | 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 74 | >.....<span.class="tok-kw">const |
| 80360 | 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 6b 2d 6b | </span>.c.=.a.<span.class="tok-k |
| 80380 | 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 6c 61 73 | w">catch</span>.|err|.<span.clas |
| 803a0 | 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 7b | s="tok-kw">switch</span>.(err).{ |
| 803c0 | 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 72 | .........<span.class="tok-kw">er |
| 803e0 | 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 73 3d 22 | ror</span>.A.=>.<span.class=" |
| 80400 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 3c 73 | tok-number">0</span>,.........<s |
| 80420 | 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>. |
| 80440 | 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 65 72 22 | B.=>.<span.class="tok-number" |
| 80460 | 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 73 3d 22 | >1</span>,.........<span.class=" |
| 80480 | 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 3c 73 70 | tok-kw">error</span>.C.=>.<sp |
| 804a0 | 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 2c | an.class="tok-null">null</span>, |
| 804c0 | 0a 20 20 20 20 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | .....};.....<span.class="tok-kw" |
| 804e0 | 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=" |
| 80500 | 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 63 29 20 3d | tok-builtin">@TypeOf</span>(c).= |
| 80520 | 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 3c 2f 73 | =.?<span.class="tok-type">u32</s |
| 80540 | 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 |
| 80560 | 69 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 |
| 80580 | 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 |
| 805a0 | 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 70 65 5f | >$.<kbd>zig.test.test_peer_type_ |
| 805c0 | 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 5f 70 65 | resolution.zig</kbd>.1/8.test_pe |
| 805e0 | 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 65 73 | er_type_resolution.test.peer.res |
| 80600 | 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 73 74 5f | olve.int.widening...OK.2/8.test_ |
| 80620 | 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 |
| 80640 | 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 7a 65 20 | esolve.arrays.of.different.size. |
| 80660 | 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 70 65 65 | to.const.slice...OK.3/8.test_pee |
| 80680 | 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 65 73 6f | r_type_resolution.test.peer.reso |
| 806a0 | 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 4b 0a 34 | lve.array.and.const.slice...OK.4 |
| 806c0 | 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 65 73 | /8.test_peer_type_resolution.tes |
| 806e0 | 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 64 20 54 | t.peer.type.resolution:.?T.and.T |
| 80700 | 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 6c 75 74 | ...OK.5/8.test_peer_type_resolut |
| 80720 | 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 3a 20 2a | ion.test.peer.type.resolution:.* |
| 80740 | 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 20 74 65 | [0]u8.and.[]const.u8...OK.6/8.te |
| 80760 | 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 |
| 80780 | 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 63 6f 6e | r.type.resolution:.*[0]u8,.[]con |
| 807a0 | 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 0a 37 2f | st.u8,.and.anyerror![]u8...OK.7/ |
| 807c0 | 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 65 73 74 | 8.test_peer_type_resolution.test |
| 807e0 | 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 20 54 20 | .peer.type.resolution:.*const.T. |
| 80800 | 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 70 65 5f | and.?*T...OK.8/8.test_peer_type_ |
| 80820 | 72 65 73 6f 6c 75 74 69 6f 6e 2e 74 65 73 74 2e 70 65 65 72 20 74 79 70 65 20 72 65 73 6f 6c 75 | resolution.test.peer.type.resolu |
| 80840 | 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 0a 41 6c | tion:.error.union.switch...OK.Al |
| 80860 | 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 65 3e 3c | l.8.tests.passed..</samp></pre>< |
| 80880 | 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 20 20 3c | /figure>.......................< |
| 808a0 | 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 66 3d 22 | h2.id="Zero-Bit-Types"><a.href=" |
| 808c0 | 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 20 54 79 | #toc-Zero-Bit-Types">Zero.Bit.Ty |
| 808e0 | 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 23 5a 65 | pes</a>.<a.class="hdr".href="#Ze |
| 80900 | 72 6f 2d 42 69 74 2d 54 79 70 65 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 | ro-Bit-Types">..</a></h2>....... |
| 80920 | 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 23 73 69 | .<p>For.some.types,.<a.href="#si |
| 80940 | 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 20 20 20 | zeOf">@sizeOf</a>.is.0:</p>..... |
| 80960 | 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 76 | ..<ul>...........<li><a.href="#v |
| 80980 | 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 3c 6c 69 | oid">void</a></li>...........<li |
| 809a0 | 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 67 65 72 | >The.<a.href="#Integers">Integer |
| 809c0 | 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 74 79 70 | s</a>.<code><span.class="tok-typ |
| 809e0 | 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 3e 3c 73 | e">u0</span></code>.and.<code><s |
| 80a00 | 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 3e 3c 2f | pan.class="tok-type">i0</span></ |
| 80a20 | 63 6f 64 65 3e 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 | code>.</li>...........<li><a.hre |
| 80a40 | 66 3d 22 23 41 72 72 61 79 73 22 3e 41 72 72 61 79 73 3c 2f 61 3e 20 61 6e 64 20 3c 61 20 68 72 | f="#Arrays">Arrays</a>.and.<a.hr |
| 80a60 | 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 68 20 6c | ef="#Vectors">Vectors</a>.with.l |
| 80a80 | 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 20 74 68 | en.0,.or.with.an.element.type.th |
| 80aa0 | 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 20 20 20 | at.is.a.zero.bit.type.</li>..... |
| 80ac0 | 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 65 6e 75 | ......<li>An.<a.href="#enum">enu |
| 80ae0 | 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 20 20 20 | m</a>.with.only.1.tag.</li>..... |
| 80b00 | 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 3e 73 74 | ......<li>A.<a.href="#struct">st |
| 80b20 | 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 67 20 7a | ruct</a>.with.all.fields.being.z |
| 80b40 | 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 20 3c 6c | ero.bit.types.</li>...........<l |
| 80b60 | 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 3e 20 77 | i>A.<a.href="#union">union</a>.w |
| 80b80 | 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 65 72 6f | ith.only.1.field.which.is.a.zero |
| 80ba0 | 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 20 20 20 | .bit.type.</li>.......</ul>..... |
| 80bc0 | 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 6e 6c 79 | ..<p>.......These.types.can.only |
| 80be0 | 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 2c 20 61 | .ever.have.one.possible.value,.a |
| 80c00 | 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 74 6f 20 | nd.thus.......require.0.bits.to. |
| 80c20 | 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 65 20 6f | represent..Code.that.makes.use.o |
| 80c40 | 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 63 6c 75 | f.these.types.is.......not.inclu |
| 80c60 | 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 64 65 3a | ded.in.the.final.generated.code: |
| 80c80 | 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 |
| 80ca0 | 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 |
| 80cc0 | 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 63 69 74 | s="file">zero_bit_types.zig</cit |
| 80ce0 | 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. |
| 80d00 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 78 70 6f 72 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 | class="tok-kw">export</span>.<sp |
| 80d20 | 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 |
| 80d40 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 65 6e 74 72 79 3c 2f 73 70 61 6e 3e 28 29 20 | n.class="tok-fn">entry</span>(). |
| 80d60 | 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 |
| 80d80 | 6e 3e 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 |
| 80da0 | 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 |
| 80dc0 | 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 6e 20 63 | e">void</span>.=.{};.....<span.c |
| 80de0 | 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 |
| 80e00 | 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 3d | n.class="tok-type">void</span>.= |
| 80e20 | 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 2f 63 6f | .{};.....x.=.y;.....y.=.x;.}</co |
| 80e40 | 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 57 68 65 | de></pre></figure>........<p>Whe |
| 80e60 | 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 65 2c 20 | n.this.turns.into.machine.code,. |
| 80e80 | 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 20 74 68 | there.is.no.code.generated.in.th |
| 80ea0 | 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 63 6f 64 | e.......body.of.<code>entry</cod |
| 80ec0 | 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 44 65 62 | e>,.even.in.<a.href="#Debug">Deb |
| 80ee0 | 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 78 38 36 | ug</a>.mode..For.example,.on.x86 |
| 80f00 | 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 30 30 30 | _64:</p>.......<pre><code>000000 |
| 80f20 | 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 30 3a 09 | 0000000010.<entry>:...10:. |
| 80f40 | 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 25 72 62 | 55....................push...%rb |
| 80f60 | 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 09 6d 6f | p...11:.48.89.e5..............mo |
| 80f80 | 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 20 20 20 | v....%rsp,%rbp...14:.5d......... |
| 80fa0 | 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 63 33 20 | ...........pop....%rbp...15:.c3. |
| 80fc0 | 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 6f 64 65 | ...................retq...</code |
| 80fe0 | 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 6c 79 20 | ></pre>.......<p>These.assembly. |
| 81000 | 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 63 6f 64 | instructions.do.not.have.any.cod |
| 81020 | 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 6c 75 65 | e.associated.with.the.void.value |
| 81040 | 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 68 65 20 | s.-.......they.only.perform.the. |
| 81060 | 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 69 6c 6f | function.call.prologue.and.epilo |
| 81080 | 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 3e 3c 61 | gue.</p>........<h3.id="void"><a |
| 810a0 | 20 68 72 65 66 3d 22 23 74 6f 63 2d 76 6f 69 64 22 3e 76 6f 69 64 3c 2f 61 3e 20 3c 61 20 63 6c | .href="#toc-void">void</a>.<a.cl |
| 810c0 | 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 76 6f 69 64 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 | ass="hdr".href="#void">..</a></h |
| 810e0 | 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 61 6e 20 | 3>........<p>.......<code><span. |
| 81100 | 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 |
| 81120 | 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 69 61 74 | de>.can.be.useful.for.instantiat |
| 81140 | 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 65 2c 20 | ing.generic.types..For.example,. |
| 81160 | 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 65 79 2c | given.a...........<code>Map(Key, |
| 81180 | 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 3c 63 6f | .Value)</code>,.one.can.pass.<co |
| 811a0 | 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 64 3c 2f | de><span.class="tok-type">void</ |
| 811c0 | 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 6c 75 65 | span></code>.for.the.<code>Value |
| 811e0 | 3c 2f 63 6f 64 65 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 74 79 | </code>.......................ty |
| 81200 | 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 74 3c 2f | pe.to.make.it.into.a.<code>Set</ |
| 81220 | 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 72 65 3e | code>:.......</p>.......<figure> |
| 81240 | 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 |
| 81260 | 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 61 73 68 | e.class="file">test_void_in_hash |
| 81280 | 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 72 65 3e | map.zig</cite></figcaption><pre> |
| 812a0 | 3c 63 6f 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 |
| 812c0 | 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 |
| 812e0 | 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 |
| 81300 | 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 |
| 81320 | 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 |
| 81340 | 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 |
| 81360 | 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< |
| 81380 | 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 |
| 813a0 | 6f 74 3b 74 75 72 6e 20 48 61 73 68 4d 61 70 20 69 6e 74 6f 20 61 20 73 65 74 20 77 69 74 68 20 | ot;turn.HashMap.into.a.set.with. |
| 813c0 | 76 6f 69 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | void"</span>.{.....<span.cl |
| 813e0 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 6d 61 70 20 3d 20 73 74 | ass="tok-kw">var</span>.map.=.st |
| 81400 | 64 2e 41 75 74 6f 48 61 73 68 4d 61 70 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | d.AutoHashMap(<span.class="tok-t |
| 81420 | 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ype">i32</span>,.<span.class="to |
| 81440 | 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 29 2e 69 6e 69 74 28 73 74 64 2e 74 65 | k-type">void</span>).init(std.te |
| 81460 | 73 74 69 6e 67 2e 61 6c 6c 6f 63 61 74 6f 72 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | sting.allocator);.....<span.clas |
| 81480 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 64 65 66 65 72 3c 2f 73 70 61 6e 3e 20 6d 61 70 2e 64 65 69 6e | s="tok-kw">defer</span>.map.dein |
| 814a0 | 69 74 28 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | it();......<span.class="tok-kw"> |
| 814c0 | 74 72 79 3c 2f 73 70 61 6e 3e 20 6d 61 70 2e 70 75 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | try</span>.map.put(<span.class=" |
| 814e0 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 2c 20 7b 7d 29 3b 0a 20 20 20 20 3c | tok-number">1</span>,.{});.....< |
| 81500 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 6d | span.class="tok-kw">try</span>.m |
| 81520 | 61 70 2e 70 75 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e | ap.put(<span.class="tok-number"> |
| 81540 | 32 3c 2f 73 70 61 6e 3e 2c 20 7b 7d 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | 2</span>,.{});......<span.class= |
| 81560 | 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 6d 61 70 2e 63 | "tok-kw">try</span>.expect(map.c |
| 81580 | 6f 6e 74 61 69 6e 73 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 | ontains(<span.class="tok-number" |
| 815a0 | 3e 32 3c 2f 73 70 61 6e 3e 29 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | >2</span>));.....<span.class="to |
| 815c0 | 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 21 6d 61 70 2e 63 6f 6e | k-kw">try</span>.expect(!map.con |
| 815e0 | 74 61 69 6e 73 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 | tains(<span.class="tok-number">3 |
| 81600 | 3c 2f 73 70 61 6e 3e 29 29 3b 0a 0a 20 20 20 20 5f 20 3d 20 6d 61 70 2e 72 65 6d 6f 76 65 28 3c | </span>));......_.=.map.remove(< |
| 81620 | 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> |
| 81640 | 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< |
| 81660 | 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 21 6d 61 70 2e 63 6f 6e 74 61 69 6e 73 28 3c 73 70 61 | /span>.expect(!map.contains(<spa |
| 81680 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 29 29 3b | n.class="tok-number">2</span>)); |
| 816a0 | 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> |
| 816c0 | 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 |
| 816e0 | 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 |
| 81700 | 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 61 70 2e | d>zig.test.test_void_in_hashmap. |
| 81720 | 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 73 68 6d | zig</kbd>.1/1.test_void_in_hashm |
| 81740 | 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 65 74 20 | ap.test.turn.HashMap.into.a.set. |
| 81760 | 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 73 73 65 | with.void...OK.All.1.tests.passe |
| 81780 | 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>....... |
| 817a0 | 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 6e 74 20 | .<p>Note.that.this.is.different. |
| 817c0 | 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 74 68 65 | from.using.a.dummy.value.for.the |
| 817e0 | 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 6e 67 20 | .hash.map.value........By.using. |
| 81800 | 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 |
| 81820 | 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 66 20 74 | d</span></code>.as.the.type.of.t |
| 81840 | 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 74 79 70 | he.value,.the.hash.map.entry.typ |
| 81860 | 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 20 20 20 | e.has.no.value.field,.and....... |
| 81880 | 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 73 73 20 | thus.the.hash.map.takes.up.less. |
| 818a0 | 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 74 68 61 | space..Further,.all.the.code.tha |
| 818c0 | 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 69 6e 67 | t.deals.with.storing.and.loading |
| 818e0 | 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 61 73 20 | .the.......value.is.deleted,.as. |
| 81900 | 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 3c 70 3e | seen.above........</p>.......<p> |
| 81920 | 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 |
| 81940 | 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 69 73 20 64 69 73 74 69 6e | pe">void</span></code>.is.distin |
| 81960 | 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 6b 2d 74 | ct.from.<code><span.class="tok-t |
| 81980 | 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 0a 20 20 | ype">anyopaque</span></code>.... |
| 819a0 | 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" |
| 819c0 | 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 77 6e 20 | >void</span></code>.has.a.known. |
| 819e0 | 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 70 61 6e | size.of.0.bytes,.and.<code><span |
| 81a00 | 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 73 70 61 | .class="tok-type">anyopaque</spa |
| 81a20 | 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 20 6e 6f | n></code>.has.an.unknown,.but.no |
| 81a40 | 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 20 20 3c | n-zero,.size........</p>.......< |
| 81a60 | 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 3c 63 6f | p>.......Expressions.of.type.<co |
| 81a80 | 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 64 3c 2f | de><span.class="tok-type">void</ |
| 81aa0 | 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 73 20 77 | span></code>.are.the.only.ones.w |
| 81ac0 | 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 72 20 65 | hose.value.can.be.ignored..For.e |
| 81ae0 | 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 3c 63 6f | xample,.ignoring.......a.non-<co |
| 81b00 | 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 64 3c 2f | de><span.class="tok-type">void</ |
| 81b20 | 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 63 6f 6d | span></code>.expression.is.a.com |
| 81b40 | 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 3c 66 69 | pile.error:.......</p>.......<fi |
| 81b60 | 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" |
| 81b80 | 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 65 73 73 | ><cite.class="file">test_express |
| 81ba0 | 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 70 74 69 | ion_ignored.zig</cite></figcapti |
| 81bc0 | 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 |
| 81be0 | 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- |
| 81c00 | 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 6e 20 76 | str">"ignoring.expression.v |
| 81c20 | 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 3b 0a 7d | alue"</span>.{.....foo();.} |
| 81c40 | 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> |
| 81c60 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 66 6f 6f 3c 2f 73 70 61 6e 3e | .<span.class="tok-fn">foo</span> |
| 81c80 | 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 | ().<span.class="tok-type">i32</s |
| 81ca0 | 70 61 6e 3e 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"> |
| 81cc0 | 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | return</span>.<span.class="tok-n |
| 81ce0 | 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 2f 70 72 | umber">1234</span>;.}</code></pr |
| 81d00 | 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 |
| 81d20 | 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 |
| 81d40 | 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 |
| 81d60 | 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 64 3e 0a | st_expression_ignored.zig</kbd>. |
| 81d80 | 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/ |
| 81da0 | 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 65 78 70 72 65 73 73 | dev/zig/doc/langref/test_express |
| 81dc0 | 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 61 6e 3e 3c 73 70 61 | ion_ignored.zig:2:8:.</span><spa |
| 81de0 | 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> |
| 81e00 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 76 61 6c 75 65 20 6f 66 20 74 79 | <span.class="sgr-1m">value.of.ty |
| 81e20 | 70 65 20 27 69 33 32 27 20 69 67 6e 6f 72 65 64 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 66 6f 6f 28 | pe.'i32'.ignored.</span>....foo( |
| 81e40 | 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 7e 7e 7e | );.....<span.class="sgr-32m">~~~ |
| 81e60 | 5e 7e 0a 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f | ^~.</span><span.class="sgr-1m">/ |
| 81e80 | 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 | home/andy/dev/zig/doc/langref/te |
| 81ea0 | 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 32 3a 38 3a 20 3c | st_expression_ignored.zig:2:8:.< |
| 81ec0 | 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 |
| 81ee0 | 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 6c | :.</span><span.class="sgr-1m">al |
| 81f00 | 6c 20 6e 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 | l.non-void.values.must.be.used.< |
| 81f20 | 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 | /span><span.class="sgr-1m">/home |
| 81f40 | 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 65 | /andy/dev/zig/doc/langref/test_e |
| 81f60 | 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 61 | xpression_ignored.zig:2:8:.</spa |
| 81f80 | 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:.</ |
| 81fa0 | 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 74 6f 20 64 69 73 | span><span.class="sgr-1m">to.dis |
| 81fc0 | 63 61 72 64 20 74 68 65 20 76 61 6c 75 65 2c 20 61 73 73 69 67 6e 20 69 74 20 74 6f 20 27 5f 27 | card.the.value,.assign.it.to.'_' |
| 81fe0 | 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>. |
| 82000 | 0a 20 20 20 20 20 20 3c 70 3e 48 6f 77 65 76 65 72 2c 20 69 66 20 74 68 65 20 65 78 70 72 65 73 | .......<p>However,.if.the.expres |
| 82020 | 73 69 6f 6e 20 68 61 73 20 74 79 70 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | sion.has.type.<code><span.class= |
| 82040 | 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 2c 20 74 | "tok-type">void</span></code>,.t |
| 82060 | 68 65 72 65 20 77 69 6c 6c 20 62 65 20 6e 6f 20 65 72 72 6f 72 2e 20 45 78 70 72 65 73 73 69 6f | here.will.be.no.error..Expressio |
| 82080 | 6e 20 72 65 73 75 6c 74 73 20 63 61 6e 20 62 65 20 65 78 70 6c 69 63 69 74 6c 79 20 69 67 6e 6f | n.results.can.be.explicitly.igno |
| 820a0 | 72 65 64 20 62 79 20 61 73 73 69 67 6e 69 6e 67 20 74 68 65 6d 20 74 6f 20 3c 63 6f 64 65 3e 5f | red.by.assigning.them.to.<code>_ |
| 820c0 | 3c 2f 63 6f 64 65 3e 2e 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 | </code>..</p>.......<figure><fig |
| 820e0 | 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 |
| 82100 | 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 76 6f 69 64 5f 69 67 6e 6f 72 65 64 2e 7a 69 67 | ass="file">test_void_ignored.zig |
| 82120 | 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>< |
| 82140 | 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>. |
| 82160 | 3c 73 70 61 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 69 64 | <span.class="tok-str">"void |
| 82180 | 20 69 73 20 69 67 6e 6f 72 65 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 72 | .is.ignored"</span>.{.....r |
| 821a0 | 65 74 75 72 6e 73 56 6f 69 64 28 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | eturnsVoid();.}..<span.class="to |
| 821c0 | 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 |
| 821e0 | 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 65 78 70 6c 69 63 69 74 6c 79 20 69 67 6e 6f 72 69 6e | ok-str">"explicitly.ignorin |
| 82200 | 67 20 65 78 70 72 65 73 73 69 6f 6e 20 76 61 6c 75 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 | g.expression.value"</span>. |
| 82220 | 7b 0a 20 20 20 20 5f 20 3d 20 66 6f 6f 28 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | {....._.=.foo();.}..<span.class= |
| 82240 | 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=" |
| 82260 | 74 6f 6b 2d 66 6e 22 3e 72 65 74 75 72 6e 73 56 6f 69 64 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 | tok-fn">returnsVoid</span>().<sp |
| 82280 | 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>. |
| 822a0 | 7b 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 | {}..<span.class="tok-kw">fn</spa |
| 822c0 | 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 |
| 822e0 | 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 3c | n>().<span.class="tok-type">i32< |
| 82300 | 2f 73 70 61 6e 3e 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 |
| 82320 | 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ">return</span>.<span.class="tok |
| 82340 | 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 2f | -number">1234</span>;.}</code></ |
| 82360 | 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 |
| 82380 | 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 |
| 823a0 | 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. |
| 823c0 | 74 65 73 74 5f 76 6f 69 64 5f 69 67 6e 6f 72 65 64 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 32 20 | test_void_ignored.zig</kbd>.1/2. |
| 823e0 | 74 65 73 74 5f 76 6f 69 64 5f 69 67 6e 6f 72 65 64 2e 74 65 73 74 2e 76 6f 69 64 20 69 73 20 69 | test_void_ignored.test.void.is.i |
| 82400 | 67 6e 6f 72 65 64 2e 2e 2e 4f 4b 0a 32 2f 32 20 74 65 73 74 5f 76 6f 69 64 5f 69 67 6e 6f 72 65 | gnored...OK.2/2.test_void_ignore |
| 82420 | 64 2e 74 65 73 74 2e 65 78 70 6c 69 63 69 74 6c 79 20 69 67 6e 6f 72 69 6e 67 20 65 78 70 72 65 | d.test.explicitly.ignoring.expre |
| 82440 | 73 73 69 6f 6e 20 76 61 6c 75 65 2e 2e 2e 4f 4b 0a 41 6c 6c 20 32 20 74 65 73 74 73 20 70 61 73 | ssion.value...OK.All.2.tests.pas |
| 82460 | 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>..... |
| 82480 | 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 52 65 73 75 6c 74 | ..................<h2.id="Result |
| 824a0 | 2d 4c 6f 63 61 74 69 6f 6e 2d 53 65 6d 61 6e 74 69 63 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 | -Location-Semantics"><a.href="#t |
| 824c0 | 6f 63 2d 52 65 73 75 6c 74 2d 4c 6f 63 61 74 69 6f 6e 2d 53 65 6d 61 6e 74 69 63 73 22 3e 52 65 | oc-Result-Location-Semantics">Re |
| 824e0 | 73 75 6c 74 20 4c 6f 63 61 74 69 6f 6e 20 53 65 6d 61 6e 74 69 63 73 3c 2f 61 3e 20 3c 61 20 63 | sult.Location.Semantics</a>.<a.c |
| 82500 | 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 |
| 82520 | 6e 2d 53 65 6d 61 6e 74 69 63 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 | n-Semantics">..</a></h2>........ |
| 82540 | 3c 70 3e 0a 20 20 20 20 20 20 44 75 72 69 6e 67 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 2c 20 65 76 | <p>.......During.compilation,.ev |
| 82560 | 65 72 79 20 5a 69 67 20 65 78 70 72 65 73 73 69 6f 6e 20 61 6e 64 20 73 75 62 2d 65 78 70 72 65 | ery.Zig.expression.and.sub-expre |
| 82580 | 73 73 69 6f 6e 20 69 73 20 61 73 73 69 67 6e 65 64 20 6f 70 74 69 6f 6e 61 6c 20 72 65 73 75 6c | ssion.is.assigned.optional.resul |
| 825a0 | 74 20 6c 6f 63 61 74 69 6f 6e 0a 20 20 20 20 20 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 2e 20 54 68 | t.location.......information..Th |
| 825c0 | 69 73 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 64 69 63 74 61 74 65 73 20 77 68 61 74 20 74 79 70 | is.information.dictates.what.typ |
| 825e0 | 65 20 74 68 65 20 65 78 70 72 65 73 73 69 6f 6e 20 73 68 6f 75 6c 64 20 68 61 76 65 20 28 69 74 | e.the.expression.should.have.(it |
| 82600 | 73 20 72 65 73 75 6c 74 20 74 79 70 65 29 2c 20 61 6e 64 0a 20 20 20 20 20 20 77 68 65 72 65 20 | s.result.type),.and.......where. |
| 82620 | 74 68 65 20 72 65 73 75 6c 74 69 6e 67 20 76 61 6c 75 65 20 73 68 6f 75 6c 64 20 62 65 20 70 6c | the.resulting.value.should.be.pl |
| 82640 | 61 63 65 64 20 69 6e 20 6d 65 6d 6f 72 79 20 28 69 74 73 20 72 65 73 75 6c 74 20 6c 6f 63 61 74 | aced.in.memory.(its.result.locat |
| 82660 | 69 6f 6e 29 2e 20 54 68 65 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 69 73 0a 20 20 20 20 20 20 6f | ion)..The.information.is.......o |
| 82680 | 70 74 69 6f 6e 61 6c 20 69 6e 20 74 68 65 20 73 65 6e 73 65 20 74 68 61 74 20 6e 6f 74 20 65 76 | ptional.in.the.sense.that.not.ev |
| 826a0 | 65 72 79 20 65 78 70 72 65 73 73 69 6f 6e 20 68 61 73 20 74 68 69 73 20 69 6e 66 6f 72 6d 61 74 | ery.expression.has.this.informat |
| 826c0 | 69 6f 6e 3a 20 61 73 73 69 67 6e 6d 65 6e 74 20 74 6f 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 5f | ion:.assignment.to.......<code>_ |
| 826e0 | 3c 2f 63 6f 64 65 3e 2c 20 66 6f 72 20 69 6e 73 74 61 6e 63 65 2c 20 64 6f 65 73 20 6e 6f 74 20 | </code>,.for.instance,.does.not. |
| 82700 | 70 72 6f 76 69 64 65 20 61 6e 79 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 61 62 6f 75 74 20 74 68 | provide.any.information.about.th |
| 82720 | 65 20 74 79 70 65 20 6f 66 20 61 6e 0a 20 20 20 20 20 20 65 78 70 72 65 73 73 69 6f 6e 2c 20 6e | e.type.of.an.......expression,.n |
| 82740 | 6f 72 20 64 6f 65 73 20 69 74 20 70 72 6f 76 69 64 65 20 61 20 63 6f 6e 63 72 65 74 65 20 6d 65 | or.does.it.provide.a.concrete.me |
| 82760 | 6d 6f 72 79 20 6c 6f 63 61 74 69 6f 6e 20 74 6f 20 70 6c 61 63 65 20 69 74 20 69 6e 2e 0a 20 20 | mory.location.to.place.it.in.... |
| 82780 | 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 41 73 20 61 20 6d 6f | ....</p>.......<p>.......As.a.mo |
| 827a0 | 74 69 76 61 74 69 6e 67 20 65 78 61 6d 70 6c 65 2c 20 63 6f 6e 73 69 64 65 72 20 74 68 65 20 73 | tivating.example,.consider.the.s |
| 827c0 | 74 61 74 65 6d 65 6e 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 | tatement.<code><span.class="tok- |
| 827e0 | 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= |
| 82800 | 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 |
| 82820 | 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 3b 3c 2f 63 6f 64 | ass="tok-number">42</span>;</cod |
| 82840 | 65 3e 2e 20 54 68 65 20 74 79 70 65 0a 20 20 20 20 20 20 61 6e 6e 6f 74 61 74 69 6f 6e 20 68 65 | e>..The.type.......annotation.he |
| 82860 | 72 65 20 70 72 6f 76 69 64 65 73 20 61 20 72 65 73 75 6c 74 20 74 79 70 65 20 6f 66 20 3c 63 6f | re.provides.a.result.type.of.<co |
| 82880 | 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 |
| 828a0 | 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 74 6f 20 74 68 65 20 69 6e 69 74 69 61 6c 69 7a 61 74 69 6f | pan></code>.to.the.initializatio |
| 828c0 | 6e 20 65 78 70 72 65 73 73 69 6f 6e 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 | n.expression.......<code><span.c |
| 828e0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 32 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 | lass="tok-number">42</span></cod |
| 82900 | 65 3e 2c 20 69 6e 73 74 72 75 63 74 69 6e 67 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 20 74 6f 20 | e>,.instructing.the.compiler.to. |
| 82920 | 63 6f 65 72 63 65 20 74 68 69 73 20 69 6e 74 65 67 65 72 20 28 69 6e 69 74 69 61 6c 6c 79 20 6f | coerce.this.integer.(initially.o |
| 82940 | 66 20 74 79 70 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 | f.type.......<code><span.class=" |
| 82960 | 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 |
| 82980 | 6f 64 65 3e 29 20 74 6f 20 74 68 69 73 20 74 79 70 65 2e 20 57 65 20 77 69 6c 6c 20 73 65 65 20 | ode>).to.this.type..We.will.see. |
| 829a0 | 6d 6f 72 65 20 65 78 61 6d 70 6c 65 73 20 73 68 6f 72 74 6c 79 2e 0a 20 20 20 20 20 20 3c 2f 70 | more.examples.shortly........</p |
| 829c0 | 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 6e 6f 74 20 61 6e | >.......<p>.......This.is.not.an |
| 829e0 | 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 20 64 65 74 61 69 6c 3a 20 74 68 65 20 6c 6f 67 69 | .implementation.detail:.the.logi |
| 82a00 | 63 20 6f 75 74 6c 69 6e 65 64 20 61 62 6f 76 65 20 69 73 20 63 6f 64 69 66 69 65 64 20 69 6e 74 | c.outlined.above.is.codified.int |
| 82a20 | 6f 20 74 68 65 20 5a 69 67 20 6c 61 6e 67 75 61 67 65 0a 20 20 20 20 20 20 73 70 65 63 69 66 69 | o.the.Zig.language.......specifi |
| 82a40 | 63 61 74 69 6f 6e 2c 20 61 6e 64 20 69 73 20 74 68 65 20 70 72 69 6d 61 72 79 20 6d 65 63 68 61 | cation,.and.is.the.primary.mecha |
| 82a60 | 6e 69 73 6d 20 6f 66 20 74 79 70 65 20 69 6e 66 65 72 65 6e 63 65 20 69 6e 20 74 68 65 20 6c 61 | nism.of.type.inference.in.the.la |
| 82a80 | 6e 67 75 61 67 65 2e 20 54 68 69 73 20 73 79 73 74 65 6d 20 69 73 0a 20 20 20 20 20 20 63 6f 6c | nguage..This.system.is.......col |
| 82aa0 | 6c 65 63 74 69 76 65 6c 79 20 72 65 66 65 72 72 65 64 20 74 6f 20 61 73 20 22 52 65 73 75 6c 74 | lectively.referred.to.as."Result |
| 82ac0 | 20 4c 6f 63 61 74 69 6f 6e 20 53 65 6d 61 6e 74 69 63 73 22 2e 0a 20 20 20 20 20 20 3c 2f 70 3e | .Location.Semantics"........</p> |
| 82ae0 | 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 52 65 73 75 6c 74 2d 54 79 70 65 73 22 3e 3c 61 20 | .......<h3.id="Result-Types"><a. |
| 82b00 | 68 72 65 66 3d 22 23 74 6f 63 2d 52 65 73 75 6c 74 2d 54 79 70 65 73 22 3e 52 65 73 75 6c 74 20 | href="#toc-Result-Types">Result. |
| 82b20 | 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 23 | Types</a>.<a.class="hdr".href="# |
| 82b40 | 52 65 73 75 6c 74 2d 54 79 70 65 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 | Result-Types">..</a></h3>....... |
| 82b60 | 20 3c 70 3e 0a 20 20 20 20 20 20 52 65 73 75 6c 74 20 74 79 70 65 73 20 61 72 65 20 70 72 6f 70 | .<p>.......Result.types.are.prop |
| 82b80 | 61 67 61 74 65 64 20 72 65 63 75 72 73 69 76 65 6c 79 20 74 68 72 6f 75 67 68 20 65 78 70 72 65 | agated.recursively.through.expre |
| 82ba0 | 73 73 69 6f 6e 73 20 77 68 65 72 65 20 70 6f 73 73 69 62 6c 65 2e 20 46 6f 72 20 69 6e 73 74 61 | ssions.where.possible..For.insta |
| 82bc0 | 6e 63 65 2c 20 69 66 20 74 68 65 0a 20 20 20 20 20 20 65 78 70 72 65 73 73 69 6f 6e 20 3c 63 6f | nce,.if.the.......expression.<co |
| 82be0 | 64 65 3e 26 61 6d 70 3b 65 3c 2f 63 6f 64 65 3e 20 68 61 73 20 72 65 73 75 6c 74 20 74 79 70 65 | de>&e</code>.has.result.type |
| 82c00 | 20 3c 63 6f 64 65 3e 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 | .<code>*<span.class="tok-type">u |
| 82c20 | 33 32 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 74 68 65 6e 0a 20 20 20 20 20 20 3c 63 6f | 32</span></code>,.then.......<co |
| 82c40 | 64 65 3e 65 3c 2f 63 6f 64 65 3e 20 69 73 20 67 69 76 65 6e 20 61 20 72 65 73 75 6c 74 20 74 79 | de>e</code>.is.given.a.result.ty |
| 82c60 | 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 70 | pe.of.<code><span.class="tok-typ |
| 82c80 | 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 61 6c 6c 6f 77 69 6e 67 20 74 | e">u32</span></code>,.allowing.t |
| 82ca0 | 68 65 0a 20 20 20 20 20 20 6c 61 6e 67 75 61 67 65 20 74 6f 20 70 65 72 66 6f 72 6d 20 74 68 69 | he.......language.to.perform.thi |
| 82cc0 | 73 20 63 6f 65 72 63 69 6f 6e 20 62 65 66 6f 72 65 20 74 61 6b 69 6e 67 20 61 20 72 65 66 65 72 | s.coercion.before.taking.a.refer |
| 82ce0 | 65 6e 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 | ence........</p>.......<p>...... |
| 82d00 | 20 54 68 65 20 72 65 73 75 6c 74 20 74 79 70 65 20 6d 65 63 68 61 6e 69 73 6d 20 69 73 20 75 74 | .The.result.type.mechanism.is.ut |
| 82d20 | 69 6c 69 7a 65 64 20 62 79 20 63 61 73 74 69 6e 67 20 62 75 69 6c 74 69 6e 73 20 73 75 63 68 20 | ilized.by.casting.builtins.such. |
| 82d40 | 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 2d 62 75 69 6c 74 69 | as.<code><span.class="tok-builti |
| 82d60 | 6e 22 3e 40 69 6e 74 43 61 73 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 | n">@intCast</span></code>....... |
| 82d80 | 20 52 61 74 68 65 72 20 74 68 61 6e 20 74 61 6b 69 6e 67 20 61 73 20 61 6e 20 61 72 67 75 6d 65 | .Rather.than.taking.as.an.argume |
| 82da0 | 6e 74 20 74 68 65 20 74 79 70 65 20 74 6f 20 63 61 73 74 20 74 6f 2c 20 74 68 65 73 65 20 62 75 | nt.the.type.to.cast.to,.these.bu |
| 82dc0 | 69 6c 74 69 6e 73 20 75 73 65 20 74 68 65 69 72 20 72 65 73 75 6c 74 20 74 79 70 65 20 74 6f 0a | iltins.use.their.result.type.to. |
| 82de0 | 20 20 20 20 20 20 64 65 74 65 72 6d 69 6e 65 20 74 68 69 73 20 69 6e 66 6f 72 6d 61 74 69 6f 6e | ......determine.this.information |
| 82e00 | 2e 20 54 68 65 20 72 65 73 75 6c 74 20 74 79 70 65 20 69 73 20 6f 66 74 65 6e 20 6b 6e 6f 77 6e | ..The.result.type.is.often.known |
| 82e20 | 20 66 72 6f 6d 20 63 6f 6e 74 65 78 74 3b 20 77 68 65 72 65 20 69 74 20 69 73 20 6e 6f 74 2c 20 | .from.context;.where.it.is.not,. |
| 82e40 | 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 |
| 82e60 | 2d 62 75 69 6c 74 69 6e 22 3e 40 61 73 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 62 75 69 6c | -builtin">@as</span></code>.buil |
| 82e80 | 74 69 6e 20 63 61 6e 20 62 65 20 75 73 65 64 20 74 6f 20 65 78 70 6c 69 63 69 74 6c 79 20 70 72 | tin.can.be.used.to.explicitly.pr |
| 82ea0 | 6f 76 69 64 65 20 61 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 | ovide.a.result.type........</p>. |
| 82ec0 | 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 57 65 20 63 61 6e 20 62 72 65 61 6b 20 64 6f 77 | ......<p>.......We.can.break.dow |
| 82ee0 | 6e 20 74 68 65 20 72 65 73 75 6c 74 20 74 79 70 65 73 20 66 6f 72 20 65 61 63 68 20 63 6f 6d 70 | n.the.result.types.for.each.comp |
| 82f00 | 6f 6e 65 6e 74 20 6f 66 20 61 20 73 69 6d 70 6c 65 20 65 78 70 72 65 73 73 69 6f 6e 20 61 73 20 | onent.of.a.simple.expression.as. |
| 82f20 | 66 6f 6c 6c 6f 77 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 | follows:.......</p>.......<figur |
| 82f40 | 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 |
| 82f60 | 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 72 65 73 75 6c 74 5f 74 79 70 65 5f 70 72 6f | ite.class="file">result_type_pro |
| 82f80 | 70 61 67 61 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 6e 3e | pagation.zig</cite></figcaption> |
| 82fa0 | 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"> |
| 82fc0 | 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 45 71 75 61 6c 20 3d 20 3c 73 70 61 6e | const</span>.expectEqual.=.<span |
| 82fe0 | 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 |
| 83000 | 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">" |
| 83020 | 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 |
| 83040 | 45 71 75 61 6c 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 | Equal;.<span.class="tok-kw">test |
| 83060 | 3c 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 |
| 83080 | 75 6f 74 3b 72 65 73 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 | uot;result.type.propagates.throu |
| 830a0 | 67 68 20 73 74 72 75 63 74 20 69 6e 69 74 69 61 6c 69 7a 65 72 26 71 75 6f 74 3b 3c 2f 73 70 61 | gh.struct.initializer"</spa |
| 830c0 | 6e 3e 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 |
| 830e0 | 6e 73 74 3c 2f 73 70 61 6e 3e 20 53 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | nst</span>.S.=.<span.class="tok- |
| 83100 | 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 6e 20 63 6c 61 | kw">struct</span>.{.x:.<span.cla |
| 83120 | 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 7d 3b 0a 20 20 20 20 | ss="tok-type">u32</span>.};..... |
| 83140 | 3c 73 70 61 6e 20 63 6c 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 |
| 83160 | 3e 20 76 61 6c 3a 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 | >.val:.<span.class="tok-type">u6 |
| 83180 | 34 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | 4</span>.=.<span.class="tok-numb |
| 831a0 | 65 72 22 3e 31 32 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 | er">123</span>;.....<span.class= |
| 831c0 | 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 3a 20 53 20 3d 20 2e 7b 20 | "tok-kw">const</span>.s:.S.=..{. |
| 831e0 | 2e 78 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 | .x.=.<span.class="tok-builtin">@ |
| 83200 | 69 6e 74 43 61 73 74 3c 2f 73 70 61 6e 3e 28 76 61 6c 29 20 7d 3b 0a 20 20 20 20 3c 73 70 61 6e | intCast</span>(val).};.....<span |
| 83220 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 2e 7b 20 2e 78 20 3d 20 | .class="tok-comment">//..{..x.=. |
| 83240 | 40 69 6e 74 43 61 73 74 28 76 61 6c 29 20 7d 20 20 20 68 61 73 20 72 65 73 75 6c 74 20 74 79 70 | @intCast(val).}...has.result.typ |
| 83260 | 65 20 60 53 60 20 64 75 65 20 74 6f 20 74 68 65 20 74 79 70 65 20 61 6e 6e 6f 74 61 74 69 6f 6e | e.`S`.due.to.the.type.annotation |
| 83280 | 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 |
| 832a0 | 6d 65 6e 74 22 3e 2f 2f 20 20 20 20 20 20 20 20 20 40 69 6e 74 43 61 73 74 28 76 61 6c 29 20 20 | ment">//.........@intCast(val).. |
| 832c0 | 20 20 20 68 61 73 20 72 65 73 75 6c 74 20 74 79 70 65 20 60 75 33 32 60 20 64 75 65 20 74 6f 20 | ...has.result.type.`u32`.due.to. |
| 832e0 | 74 68 65 20 74 79 70 65 20 6f 66 20 74 68 65 20 66 69 65 6c 64 20 60 53 2e 78 60 3c 2f 73 70 61 | the.type.of.the.field.`S.x`</spa |
| 83300 | 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" |
| 83320 | 3e 2f 2f 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 6c 20 20 20 20 20 20 68 61 | >//..................val......ha |
| 83340 | 73 20 6e 6f 20 72 65 73 75 6c 74 20 74 79 70 65 2c 20 61 73 20 69 74 20 69 73 20 70 65 72 6d 69 | s.no.result.type,.as.it.is.permi |
| 83360 | 74 74 65 64 20 74 6f 20 62 65 20 61 6e 79 20 69 6e 74 65 67 65 72 20 74 79 70 65 3c 2f 73 70 61 | tted.to.be.any.integer.type</spa |
| 83380 | 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< |
| 833a0 | 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 45 71 75 61 6c 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | /span>.expectEqual(<span.class=" |
| 833c0 | 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 |
| 833e0 | 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 |
| 83400 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 3c 2f 73 70 61 6e 3e 29 2c | .class="tok-number">123</span>), |
| 83420 | 20 73 2e 78 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 | .s.x);.}</code></pre></figure><f |
| 83440 | 69 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 |
| 83460 | 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 |
| 83480 | 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 72 65 73 75 6c 74 5f 74 79 70 65 5f 70 72 6f | >$.<kbd>zig.test.result_type_pro |
| 834a0 | 70 61 67 61 74 69 6f 6e 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 72 65 73 75 6c 74 5f 74 79 | pagation.zig</kbd>.1/1.result_ty |
| 834c0 | 70 65 5f 70 72 6f 70 61 67 61 74 69 6f 6e 2e 74 65 73 74 2e 72 65 73 75 6c 74 20 74 79 70 65 20 | pe_propagation.test.result.type. |
| 834e0 | 70 72 6f 70 61 67 61 74 65 73 20 74 68 72 6f 75 67 68 20 73 74 72 75 63 74 20 69 6e 69 74 69 61 | propagates.through.struct.initia |
| 83500 | 6c 69 7a 65 72 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 | lizer...OK.All.1.tests.passed..< |
| 83520 | 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> |
| 83540 | 0a 20 20 20 20 20 20 54 68 69 73 20 72 65 73 75 6c 74 20 74 79 70 65 20 69 6e 66 6f 72 6d 61 74 | .......This.result.type.informat |
| 83560 | 69 6f 6e 20 69 73 20 75 73 65 66 75 6c 20 66 6f 72 20 74 68 65 20 61 66 6f 72 65 6d 65 6e 74 69 | ion.is.useful.for.the.aforementi |
| 83580 | 6f 6e 65 64 20 63 61 73 74 20 62 75 69 6c 74 69 6e 73 2c 20 61 73 20 77 65 6c 6c 20 61 73 20 74 | oned.cast.builtins,.as.well.as.t |
| 835a0 | 6f 20 61 76 6f 69 64 0a 20 20 20 20 20 20 74 68 65 20 63 6f 6e 73 74 72 75 63 74 69 6f 6e 20 6f | o.avoid.......the.construction.o |
| 835c0 | 66 20 70 72 65 2d 63 6f 65 72 63 69 6f 6e 20 76 61 6c 75 65 73 2c 20 61 6e 64 20 74 6f 20 61 76 | f.pre-coercion.values,.and.to.av |
| 835e0 | 6f 69 64 20 74 68 65 20 6e 65 65 64 20 66 6f 72 20 65 78 70 6c 69 63 69 74 20 74 79 70 65 20 63 | oid.the.need.for.explicit.type.c |
| 83600 | 6f 65 72 63 69 6f 6e 73 20 69 6e 20 73 6f 6d 65 0a 20 20 20 20 20 20 63 61 73 65 73 2e 20 54 68 | oercions.in.some.......cases..Th |
| 83620 | 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 74 61 62 6c 65 20 64 65 74 61 69 6c 73 20 68 6f 77 20 73 6f | e.following.table.details.how.so |
| 83640 | 6d 65 20 63 6f 6d 6d 6f 6e 20 65 78 70 72 65 73 73 69 6f 6e 73 20 70 72 6f 70 61 67 61 74 65 20 | me.common.expressions.propagate. |
| 83660 | 72 65 73 75 6c 74 20 74 79 70 65 73 2c 20 77 68 65 72 65 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e | result.types,.where.......<code> |
| 83680 | 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. |
| 836a0 | 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 0a 20 20 20 20 20 | arbitrary.sub-expressions....... |
| 836c0 | 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 64 69 76 20 63 6c 61 73 73 3d 22 74 61 62 6c 65 2d 77 72 | .</p>.......<div.class="table-wr |
| 836e0 | 61 70 70 65 72 22 3e 0a 20 20 20 20 20 20 3c 74 61 62 6c 65 3e 0a 20 20 20 20 20 20 20 20 3c 74 | apper">.......<table>.........<t |
| 83700 | 68 65 61 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 20 | head>...........<tr>............ |
| 83720 | 20 3c 74 68 20 73 63 6f 70 65 3d 22 63 6f 6c 22 3e 45 78 70 72 65 73 73 69 6f 6e 3c 2f 74 68 3e | .<th.scope="col">Expression</th> |
| 83740 | 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 22 3e 50 61 72 | .............<th.scope="col">Par |
| 83760 | 65 6e 74 20 52 65 73 75 6c 74 20 54 79 70 65 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 20 | ent.Result.Type</th>............ |
| 83780 | 20 3c 74 68 20 73 63 6f 70 65 3d 22 63 6f 6c 22 3e 53 75 62 2d 65 78 70 72 65 73 73 69 6f 6e 20 | .<th.scope="col">Sub-expression. |
| 837a0 | 52 65 73 75 6c 74 20 54 79 70 65 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 72 3e | Result.Type</th>...........</tr> |
| 837c0 | 0a 20 20 20 20 20 20 20 20 3c 2f 74 68 65 61 64 3e 0a 20 20 20 20 20 20 20 20 3c 74 62 6f 64 79 | .........</thead>.........<tbody |
| 837e0 | 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 68 | >...........<tr>.............<th |
| 83800 | 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=" |
| 83820 | 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 76 61 6c 3a 20 54 20 3d 20 78 3c | tok-kw">const</span>.val:.T.=.x< |
| 83840 | 2f 63 6f 64 65 3e 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 2d 3c 2f 74 | /code></th>.............<td>-</t |
| 83860 | 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 3e 78 3c 2f 63 6f 64 65 | d>.............<td><code>x</code |
| 83880 | 3e 20 69 73 20 61 20 3c 63 6f 64 65 3e 54 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 | >.is.a.<code>T</code></td>...... |
| 838a0 | 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>....... |
| 838c0 | 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 |
| 838e0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 76 61 6c 3a | n.class="tok-kw">var</span>.val: |
| 83900 | 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 20 3c | .T.=.x</code></th>.............< |
| 83920 | 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> |
| 83940 | 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 |
| 83960 | 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> |
| 83980 | 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 |
| 839a0 | 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 20 20 20 20 | de>val.=.x</code></th>.......... |
| 839c0 | 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 64 3e 3c 63 | ...<td>-</td>.............<td><c |
| 839e0 | 6f 64 65 3e 78 3c 2f 63 6f 64 65 3e 20 69 73 20 61 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c | ode>x</code>.is.a.<code><span.cl |
| 83a00 | 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> |
| 83a20 | 28 76 61 6c 29 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 72 | (val)</code></td>...........</tr |
| 83a40 | 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 68 | >...........<tr>.............<th |
| 83a60 | 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=" |
| 83a80 | 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 61 73 3c 2f 73 70 61 6e 3e 28 54 2c 20 78 29 3c 2f 63 | tok-builtin">@as</span>(T,.x)</c |
| 83aa0 | 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> |
| 83ac0 | 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>. |
| 83ae0 | 69 73 20 61 20 3c 63 6f 64 65 3e 54 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 | is.a.<code>T</code></td>........ |
| 83b00 | 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>......... |
| 83b20 | 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 |
| 83b40 | 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 |
| 83b60 | 64 65 3e 2a 54 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 | de>*T</code></td>.............<t |
| 83b80 | 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 63 | d><code>x</code>.is.a.<code>T</c |
| 83ba0 | 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>....... |
| 83bc0 | 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=" |
| 83be0 | 72 6f 77 22 3e 3c 63 6f 64 65 3e 26 61 6d 70 3b 78 3c 2f 63 6f 64 65 3e 3c 2f 74 68 3e 0a 20 20 | row"><code>&x</code></th>... |
| 83c00 | 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 3e 5b 5d 54 3c 2f 63 6f 64 65 3e 3c 2f | ..........<td><code>[]T</code></ |
| 83c20 | 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 |
| 83c40 | 65 3e 20 69 73 20 73 6f 6d 65 20 61 72 72 61 79 20 6f 66 20 3c 63 6f 64 65 3e 54 3c 2f 63 6f 64 | e>.is.some.array.of.<code>T</cod |
| 83c60 | 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 20 | e></td>...........</tr>......... |
| 83c80 | 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 |
| 83ca0 | 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 20 20 20 20 20 20 | w"><code>f(x)</code></th>....... |
| 83cc0 | 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 64 | ......<td>-</td>.............<td |
| 83ce0 | 3e 3c 63 6f 64 65 3e 78 3c 2f 63 6f 64 65 3e 20 68 61 73 20 74 68 65 20 74 79 70 65 20 6f 66 20 | ><code>x</code>.has.the.type.of. |
| 83d00 | 74 68 65 20 66 69 72 73 74 20 70 61 72 61 6d 65 74 65 72 20 6f 66 20 3c 63 6f 64 65 3e 66 3c 2f | the.first.parameter.of.<code>f</ |
| 83d20 | 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>...... |
| 83d40 | 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= |
| 83d60 | 22 72 6f 77 22 3e 3c 63 6f 64 65 3e 2e 7b 78 7d 3c 2f 63 6f 64 65 3e 3c 2f 74 68 3e 0a 20 20 20 | "row"><code>.{x}</code></th>.... |
| 83d80 | 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 74 64 3e | .........<td><code>T</code></td> |
| 83da0 | 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>. |
| 83dc0 | 69 73 20 61 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c | is.a.<code><span.class="tok-buil |
| 83de0 | 74 69 6e 22 3e 40 46 69 65 6c 64 54 79 70 65 3c 2f 73 70 61 6e 3e 28 54 2c 20 3c 73 70 61 6e 20 | tin">@FieldType</span>(T,.<span. |
| 83e00 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 30 26 71 75 6f 74 3b 3c 2f 73 | class="tok-str">"0"</s |
| 83e20 | 70 61 6e 3e 29 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 72 | pan>)</code></td>...........</tr |
| 83e40 | 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 68 | >...........<tr>.............<th |
| 83e60 | 20 73 63 6f 70 65 3d 22 72 6f 77 22 3e 3c 63 6f 64 65 3e 2e 7b 20 2e 61 20 3d 20 78 20 7d 3c 2f | .scope="row"><code>.{..a.=.x.}</ |
| 83e80 | 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 |
| 83ea0 | 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 20 20 3c 74 64 3e 3c | >T</code></td>.............<td>< |
| 83ec0 | 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 3c 73 70 61 6e 20 63 | code>x</code>.is.a.<code><span.c |
| 83ee0 | 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 46 69 65 6c 64 54 79 70 65 3c 2f 73 | lass="tok-builtin">@FieldType</s |
| 83f00 | 70 61 6e 3e 28 54 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 | pan>(T,.<span.class="tok-str">&q |
| 83f20 | 75 6f 74 3b 61 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a | uot;a"</span>)</code></td>. |
| 83f40 | 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>.. |
| 83f60 | 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 |
| 83f80 | 3e 54 7b 78 7d 3c 2f 63 6f 64 65 3e 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 | >T{x}</code></th>.............<t |
| 83fa0 | 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 78 | d>-</td>.............<td><code>x |
| 83fc0 | 3c 2f 63 6f 64 65 3e 20 69 73 20 61 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | </code>.is.a.<code><span.class=" |
| 83fe0 | 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 46 69 65 6c 64 54 79 70 65 3c 2f 73 70 61 6e 3e 28 54 | tok-builtin">@FieldType</span>(T |
| 84000 | 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 30 26 | ,.<span.class="tok-str">"0& |
| 84020 | 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 | quot;</span>)</code></td>....... |
| 84040 | 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>........ |
| 84060 | 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 |
| 84080 | 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>.............< |
| 840a0 | 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> |
| 840c0 | 78 3c 2f 63 6f 64 65 3e 20 69 73 20 61 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | x</code>.is.a.<code><span.class= |
| 840e0 | 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 46 69 65 6c 64 54 79 70 65 3c 2f 73 70 61 6e 3e 28 | "tok-builtin">@FieldType</span>( |
| 84100 | 54 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 61 | T,.<span.class="tok-str">"a |
| 84120 | 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 | "</span>)</code></td>...... |
| 84140 | 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>....... |
| 84160 | 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 |
| 84180 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 70 65 3c 2f 73 70 61 | n.class="tok-builtin">@Type</spa |
| 841a0 | 6e 3e 28 78 29 3c 2f 63 6f 64 65 3e 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 | n>(x)</code></th>.............<t |
| 841c0 | 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 78 | d>-</td>.............<td><code>x |
| 841e0 | 3c 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 | </code>.is.a.<code>std.builtin.T |
| 84200 | 79 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 | ype</code></td>...........</tr>. |
| 84220 | 20 20 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 68 20 73 | ..........<tr>.............<th.s |
| 84240 | 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 |
| 84260 | 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 74 79 70 65 49 6e 66 6f 3c 2f 73 70 61 6e 3e 28 78 29 3c 2f | k-builtin">@typeInfo</span>(x)</ |
| 84280 | 63 6f 64 65 3e 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 2d 3c 2f 74 64 | code></th>.............<td>-</td |
| 842a0 | 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> |
| 842c0 | 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 74 79 70 | .is.a.<code><span.class="tok-typ |
| 842e0 | 65 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 | e">type</span></code></td>...... |
| 84300 | 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>....... |
| 84320 | 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 78 20 26 6c | ......<th.scope="row"><code>x.&l |
| 84340 | 74 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 | t;<.y</code></th>............ |
| 84360 | 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 |
| 84380 | 65 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 | e>y</code>.is.a.<code>std.math.L |
| 843a0 | 6f 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 | og2IntCeil(<span.class="tok-buil |
| 843c0 | 74 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 | tin">@TypeOf</span>(x))</code></ |
| 843e0 | 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 3c 2f 74 62 | td>...........</tr>.........</tb |
| 84400 | 6f 64 79 3e 0a 20 20 20 20 20 20 3c 2f 74 61 62 6c 65 3e 0a 20 20 20 20 20 20 3c 2f 64 69 76 3e | ody>.......</table>.......</div> |
| 84420 | 0a 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 | ..............<h3.id="Result-Loc |
| 84440 | 61 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 | ations"><a.href="#toc-Result-Loc |
| 84460 | 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 2f 61 3e 20 3c 61 20 | ations">Result.Locations</a>.<a. |
| 84480 | 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 52 65 73 75 6c 74 2d 4c 6f 63 61 74 69 | class="hdr".href="#Result-Locati |
| 844a0 | 6f 6e 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 | ons">..</a></h3>........<p>..... |
| 844c0 | 20 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 | ..In.addition.to.result.type.inf |
| 844e0 | 6f 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 | ormation,.every.expression.may.b |
| 84500 | 65 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 | e.optionally.assigned.a.result.. |
| 84520 | 20 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 | .....location:.a.pointer.to.whic |
| 84540 | 68 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 | h.the.value.must.be.directly.wri |
| 84560 | 74 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 | tten..This.system.can.be.used.to |
| 84580 | 20 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 | .prevent.......intermediate.copi |
| 845a0 | 65 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 | es.when.initializing.data.struct |
| 845c0 | 75 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 | ures,.which.can.be.important.for |
| 845e0 | 20 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 | .types.which.must.......have.a.f |
| 84600 | 69 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 | ixed.memory.address.("pinned".ty |
| 84620 | 70 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 | pes)........</p>.......<p>...... |
| 84640 | 20 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 | .When.compiling.the.simple.assig |
| 84660 | 6e 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 | nment.expression.<code>x.=.e</co |
| 84680 | 64 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 | de>,.many.languages.would....... |
| 846a0 | 63 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 | create.the.temporary.value.<code |
| 846c0 | 3e 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 | >e</code>.on.the.stack,.and.then |
| 846e0 | 20 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 | .assign.it.to.......<code>x</cod |
| 84700 | 65 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 | e>,.potentially.performing.a.typ |
| 84720 | 65 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 | e.coercion.in.the.process..Zig.a |
| 84740 | 70 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 | pproaches.this.......differently |
| 84760 | 2e 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 | ..The.expression.<code>e</code>. |
| 84780 | 69 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 | is.given.a.result.type.matching. |
| 847a0 | 74 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 | the.type.of.......<code>x</code> |
| 847c0 | 2c 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 | ,.and.a.result.location.of.<code |
| 847e0 | 3e 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 | >&x</code>..For.many.syntact |
| 84800 | 69 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 | ic.......forms.of.<code>e</code> |
| 84820 | 2c 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 | ,.this.has.no.practical.impact.. |
| 84840 | 48 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 | However,.it.can.have.important.. |
| 84860 | 20 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 | .....semantic.effects.when.worki |
| 84880 | 6e 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 | ng.with.more.complex.syntax.form |
| 848a0 | 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 46 6f | s........</p>.......<p>.......Fo |
| 848c0 | 72 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 | r.instance,.if.the.expression.<c |
| 848e0 | 6f 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 | ode>.{..a.=.x,..b.=.y.}</code>.h |
| 84900 | 61 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 | as.a.result.location.of.......<c |
| 84920 | 6f 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 | ode>ptr</code>,.then.<code>x</co |
| 84940 | 64 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 | de>.is.given.a.result.location.o |
| 84960 | 66 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 | f.......<code>&ptr.a</code>, |
| 84980 | 20 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 | .and.<code>y</code>.a.result.loc |
| 849a0 | 61 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 | ation.of.<code>&ptr.b</code> |
| 849c0 | 2e 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 | ........Without.this.system,.thi |
| 849e0 | 73 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 | s.expression.would.construct.a.t |
| 84a00 | 65 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 | emporary.struct.value.entirely.o |
| 84a20 | 6e 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 | n.the.stack,.and.......only.then |
| 84a40 | 20 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 | .copy.it.to.the.destination.addr |
| 84a60 | 65 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 | ess..In.essence,.Zig.desugars.th |
| 84a80 | 65 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 | e.assignment.......<code>foo.=.. |
| 84aa0 | 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 74 6f 20 74 68 65 | {..a.=.x,..b.=.y.}</code>.to.the |
| 84ac0 | 20 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 | .two.statements.<code>foo.a.=.x; |
| 84ae0 | 20 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 | .foo.b.=.y;</code>........</p>.. |
| 84b00 | 20 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 | .....<p>.......This.can.sometime |
| 84b20 | 73 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 | s.be.important.when.assigning.an |
| 84b40 | 20 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 | .aggregate.value.where.the.initi |
| 84b60 | 61 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 | alization.......expression.depen |
| 84b80 | 64 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 | ds.on.the.previous.value.of.the. |
| 84ba0 | 61 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 | aggregate..The.easiest.way.to.de |
| 84bc0 | 6d 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 | monstrate.this.is.by.......attem |
| 84be0 | 70 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 | pting.to.swap.fields.of.a.struct |
| 84c00 | 20 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 | .or.array.-.the.following.logic. |
| 84c20 | 6c 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 | looks.sound,.but.in.fact.is.not: |
| 84c40 | 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 |
| 84c60 | 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 |
| 84c80 | 73 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 | s="file">result_location_interfe |
| 84ca0 | 72 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 | ring_with_swap.zig</cite></figca |
| 84cc0 | 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 |
| 84ce0 | 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 |
| 84d00 | 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 |
| 84d20 | 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">" |
| 84d40 | 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 |
| 84d60 | 74 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 | t;.<span.class="tok-kw">test</sp |
| 84d80 | 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">" |
| 84da0 | 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 77 | attempt.to.swap.array.elements.w |
| 84dc0 | 69 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 | ith.array.initializer"</spa |
| 84de0 | 6e 3e 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 |
| 84e00 | 72 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 | r</span>.arr:.[<span.class="tok- |
| 84e20 | 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 74 6f | number">2</span>]<span.class="to |
| 84e40 | 6b 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 | k-type">u32</span>.=..{.<span.cl |
| 84e60 | 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 |
| 84e80 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 20 7d 3b 0a | .class="tok-number">2</span>.};. |
| 84ea0 | 20 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 | ....arr.=..{.arr[<span.class="to |
| 84ec0 | 6b 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 | k-number">1</span>],.arr[<span.c |
| 84ee0 | 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 7d 3b 0a 20 | lass="tok-number">0</span>].};.. |
| 84f00 | 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">//. |
| 84f20 | 54 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 | The.previous.line.is.equivalent. |
| 84f40 | 74 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 | to.the.following.two.lines:</spa |
| 84f60 | 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" |
| 84f80 | 3e 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 | >//...arr[0].=.arr[1];</span>... |
| 84fa0 | 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 20 | ..<span.class="tok-comment">//.. |
| 84fc0 | 20 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 | .arr[1].=.arr[0];</span>.....<sp |
| 84fe0 | 61 6e 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 | an.class="tok-comment">//.So.thi |
| 85000 | 73 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 | s.fails!</span>.....<span.class= |
| 85020 | 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 61 72 72 5b 3c | "tok-kw">try</span>.expect(arr[< |
| 85040 | 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> |
| 85060 | 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 32 3c | ].==.<span.class="tok-number">2< |
| 85080 | 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 |
| 850a0 | 74 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 | t">//.succeeds</span>.....<span. |
| 850c0 | 63 6c 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 |
| 850e0 | 28 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 | (arr[<span.class="tok-number">1< |
| 85100 | 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 |
| 85120 | 65 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 | er">1</span>);.<span.class="tok- |
| 85140 | 63 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 | comment">//.fails</span>.}</code |
| 85160 | 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 |
| 85180 | 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 |
| 851a0 | 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 |
| 851c0 | 73 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 | st.result_location_interfering_w |
| 851e0 | 69 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 | ith_swap.zig</kbd>.1/1.result_lo |
| 85200 | 63 61 74 69 6f 6e 5f 69 6e 74 65 72 66 65 72 69 6e 67 5f 77 69 74 68 5f 73 77 61 70 2e 74 65 73 | cation_interfering_with_swap.tes |
| 85220 | 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 6e 74 73 | t.attempt.to.swap.array.elements |
| 85240 | 20 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 | .with.array.initializer...FAIL.( |
| 85260 | 54 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 | TestUnexpectedResult).<span.clas |
| 85280 | 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 | s="sgr-1m">/home/andy/dev/zig/li |
| 852a0 | 62 2f 73 74 64 2f 74 65 73 74 69 6e 67 2e 7a 69 67 3a 36 30 37 3a 31 34 3c 2f 73 70 61 6e 3e 3a | b/std/testing.zig:607:14</span>: |
| 852c0 | 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 32 66 30 31 39 20 | .<span.class="sgr-2m">0x102f019. |
| 852e0 | 69 6e 20 65 78 70 65 63 74 20 28 73 74 64 2e 7a 69 67 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 69 | in.expect.(std.zig)</span>.....i |
| 85300 | 66 20 28 21 6f 6b 29 20 72 65 74 75 72 6e 20 65 72 72 6f 72 2e 54 65 73 74 55 6e 65 78 70 65 63 | f.(!ok).return.error.TestUnexpec |
| 85320 | 74 65 64 52 65 73 75 6c 74 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c | tedResult;..............<span.cl |
| 85340 | 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 |
| 85360 | 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 | ss="sgr-1m">/home/andy/dev/zig/d |
| 85380 | 6f 63 2f 6c 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 | oc/langref/result_location_inter |
| 853a0 | 66 65 72 69 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 | fering_with_swap.zig:10:5</span> |
| 853c0 | 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 32 66 31 34 34 | :.<span.class="sgr-2m">0x102f144 |
| 853e0 | 20 69 6e 20 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 | .in.test.attempt.to.swap.array.e |
| 85400 | 6c 65 6d 65 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 | lements.with.array.initializer.( |
| 85420 | 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 74 68 | result_location_interfering_with |
| 85440 | 5f 73 77 61 70 2e 7a 69 67 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 74 72 79 20 65 78 70 65 63 74 | _swap.zig)</span>.....try.expect |
| 85460 | 28 61 72 72 5b 31 5d 20 3d 3d 20 31 29 3b 20 2f 2f 20 66 61 69 6c 73 0a 20 20 20 20 3c 73 70 61 | (arr[1].==.1);.//.fails.....<spa |
| 85480 | 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 30 20 70 61 73 | n.class="sgr-32m">^</span>.0.pas |
| 854a0 | 73 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 | sed;.0.skipped;.1.failed..error: |
| 854c0 | 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 74 65 73 74 20 63 6f 6d 6d 61 6e 64 20 66 61 69 6c | .the.following.test.command.fail |
| 854e0 | 65 64 20 77 69 74 68 20 65 78 69 74 20 63 6f 64 65 20 31 3a 0a 2f 68 6f 6d 65 2f 61 6e 64 79 2f | ed.with.exit.code.1:./home/andy/ |
| 85500 | 64 65 76 2f 7a 69 67 2f 2e 7a 69 67 2d 63 61 63 68 65 2f 6f 2f 61 38 30 35 36 62 35 34 35 33 31 | dev/zig/.zig-cache/o/a8056b54531 |
| 85520 | 64 36 32 64 61 62 65 63 39 62 37 64 33 39 61 30 31 63 64 63 34 2f 74 65 73 74 20 2d 2d 73 65 65 | d62dabec9b7d39a01cdc4/test.--see |
| 85540 | 64 3d 30 78 32 32 34 35 32 64 61 34 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 | d=0x22452da4.</samp></pre></figu |
| 85560 | 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 6c 6c 6f 77 69 | re>........<p>.......The.followi |
| 85580 | 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 6f 6d 6d 6f 6e | ng.table.details.how.some.common |
| 855a0 | 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 6c 74 20 6c 6f | .expressions.propagate.result.lo |
| 855c0 | 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 78 3c 2f 63 6f | cations,.where.......<code>x</co |
| 855e0 | 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 61 72 62 69 74 | de>.and.<code>y</code>.are.arbit |
| 85600 | 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 74 68 61 74 0a | rary.sub-expressions..Note.that. |
| 85620 | 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 6f 74 20 70 72 | ......some.expressions.cannot.pr |
| 85640 | 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 61 74 69 6f 6e | ovide.meaningful.result.location |
| 85660 | 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 69 66 20 74 68 | s.to.sub-expressions,.even.if.th |
| 85680 | 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 72 65 73 75 6c | ey.......themselves.have.a.resul |
| 856a0 | 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 20 20 3c 64 69 | t.location........</p>.......<di |
| 856c0 | 76 20 63 6c 61 73 73 3d 22 74 61 62 6c 65 2d 77 72 61 70 70 65 72 22 3e 0a 20 20 20 20 20 20 3c | v.class="table-wrapper">.......< |
| 856e0 | 74 61 62 6c 65 3e 0a 20 20 20 20 20 20 20 20 3c 74 68 65 61 64 3e 0a 20 20 20 20 20 20 20 20 20 | table>.........<thead>.......... |
| 85700 | 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 |
| 85720 | 22 3e 45 78 70 72 65 73 73 69 6f 6e 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 | ">Expression</th>.............<t |
| 85740 | 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 6f 6e 3c 2f 74 | h.scope="col">Result.Location</t |
| 85760 | 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 6f 6c 22 3e 53 | h>.............<th.scope="col">S |
| 85780 | 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 6f 6e 73 3c 2f | ub-expression.Result.Locations</ |
| 857a0 | 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 68 | th>...........</tr>.........</th |
| 857c0 | 65 61 64 3e 0a 20 20 20 20 20 20 20 20 3c 74 62 6f 64 79 3e 0a 20 20 20 20 20 20 20 20 20 20 3c | ead>.........<tbody>...........< |
| 857e0 | 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"> |
| 85800 | 3c 63 6f 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 |
| 85820 | 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 0a 20 | </span>.val:.T.=.x</code></th>.. |
| 85840 | 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 2d 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 | ...........<td>-</td>........... |
| 85860 | 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 74 20 | ..<td><code>x</code>.has.result. |
| 85880 | 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 3c 2f | location.<code>&val</code></ |
| 858a0 | 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 |
| 858c0 | 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">< |
| 858e0 | 63 6f 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 |
| 85900 | 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>..... |
| 85920 | 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>.............< |
| 85940 | 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 74 20 6c 6f 63 | td><code>x</code>.has.result.loc |
| 85960 | 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 3c 2f 74 64 3e | ation.<code>&val</code></td> |
| 85980 | 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>. |
| 859a0 | 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 |
| 859c0 | 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 20 20 20 20 20 | e>val.=.x</code></th>........... |
| 859e0 | 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 64 3e 3c 63 6f | ..<td>-</td>.............<td><co |
| 85a00 | 64 65 3e 78 3c 2f 63 6f 64 65 3e 20 68 61 73 20 72 65 73 75 6c 74 20 6c 6f 63 61 74 69 6f 6e 20 | de>x</code>.has.result.location. |
| 85a20 | 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 20 20 20 20 20 | <code>&val</code></td>...... |
| 85a40 | 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>....... |
| 85a60 | 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 |
| 85a80 | 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> |
| 85aa0 | 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>.............< |
| 85ac0 | 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>........ |
| 85ae0 | 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 3e 78 3c 2f 63 6f 64 65 3e 20 68 61 73 20 6e 6f 20 72 | .....<td><code>x</code>.has.no.r |
| 85b00 | 65 73 75 6c 74 20 6c 6f 63 61 74 69 6f 6e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f | esult.location</td>...........</ |
| 85b20 | 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>.............< |
| 85b40 | 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 3c 2f 63 6f 64 | th.scope="row"><code>&x</cod |
| 85b60 | 65 3e 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 3e 70 74 | e></th>.............<td><code>pt |
| 85b80 | 72 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 | r</code></td>.............<td><c |
| 85ba0 | 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 63 61 74 | ode>x</code>.has.no.result.locat |
| 85bc0 | 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 20 20 20 | ion</td>...........</tr>........ |
| 85be0 | 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 |
| 85c00 | 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 20 20 20 20 20 | ow"><code>f(x)</code></th>...... |
| 85c20 | 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 3e | .......<td><code>ptr</code></td> |
| 85c40 | 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>. |
| 85c60 | 68 61 73 20 6e 6f 20 72 65 73 75 6c 74 20 6c 6f 63 61 74 69 6f 6e 3c 2f 74 64 3e 0a 20 20 20 20 | has.no.result.location</td>..... |
| 85c80 | 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 | ......</tr>...........<tr>...... |
| 85ca0 | 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 2e 7b 78 | .......<th.scope="row"><code>.{x |
| 85cc0 | 7d 3c 2f 63 6f 64 65 3e 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 | }</code></th>.............<td><c |
| 85ce0 | 6f 64 65 3e 70 74 72 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | ode>ptr</code></td>............. |
| 85d00 | 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 74 20 6c 6f | <td><code>x</code>.has.result.lo |
| 85d20 | 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 20 63 6c 61 73 | cation.<code>&ptr[<span.clas |
| 85d40 | 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 6f 64 65 3e 3c | s="tok-number">0</span>]</code>< |
| 85d60 | 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c | /td>...........</tr>...........< |
| 85d80 | 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"> |
| 85da0 | 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 20 20 | <code>.{..a.=.x.}</code></th>... |
| 85dc0 | 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 3e 70 74 72 3c 2f 63 6f 64 65 3e 3c 2f | ..........<td><code>ptr</code></ |
| 85de0 | 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 |
| 85e00 | 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 65 3e 26 61 6d | e>.has.result.location.<code>&am |
| 85e20 | 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 20 20 20 3c 2f | p;ptr.a</code></td>...........</ |
| 85e40 | 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>.............< |
| 85e60 | 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> |
| 85e80 | 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 3c | </th>.............<td><code>ptr< |
| 85ea0 | 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 64 | /code></td>.............<td><cod |
| 85ec0 | 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 6f | e>x</code>.has.no.result.locatio |
| 85ee0 | 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 74 20 70 72 6f | n.(typed.initializers.do.not.pro |
| 85f00 | 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 64 3e 0a 20 20 | pagate.result.locations)</td>... |
| 85f20 | 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 | ........</tr>...........<tr>.... |
| 85f40 | 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 54 | .........<th.scope="row"><code>T |
| 85f60 | 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 20 20 20 20 20 | {..a.=.x.}</code></th>.......... |
| 85f80 | 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 20 | ...<td><code>ptr</code></td>.... |
| 85fa0 | 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 20 | .........<td><code>x</code>.has. |
| 85fc0 | 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 6e 69 74 69 61 | no.result.location.(typed.initia |
| 85fe0 | 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 75 6c 74 20 6c | lizers.do.not.propagate.result.l |
| 86000 | 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 74 72 3e 0a 20 | ocations)</td>...........</tr>.. |
| 86020 | 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 |
| 86040 | 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 |
| 86060 | 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 70 65 3c 2f 73 70 61 6e 3e 28 78 29 3c 2f 63 6f 64 65 3e | -builtin">@Type</span>(x)</code> |
| 86080 | 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 3c | </th>.............<td><code>ptr< |
| 860a0 | 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 64 | /code></td>.............<td><cod |
| 860c0 | 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 6f | e>x</code>.has.no.result.locatio |
| 860e0 | 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 20 | n</td>...........</tr>.......... |
| 86100 | 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 |
| 86120 | 22 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e | "><code><span.class="tok-builtin |
| 86140 | 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 3e 3c 2f 74 68 | ">@typeInfo</span>(x)</code></th |
| 86160 | 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 |
| 86180 | 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< |
| 861a0 | 2f 63 6f 64 65 3e 20 68 61 73 20 6e 6f 20 72 65 73 75 6c 74 20 6c 6f 63 61 74 69 6f 6e 3c 2f 74 | /code>.has.no.result.location</t |
| 861c0 | 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 |
| 861e0 | 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 |
| 86200 | 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 3e 0a 20 20 20 | ode>x.<<.y</code></th>.... |
| 86220 | 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 3e 70 74 72 3c 2f 63 6f 64 65 3e 3c 2f 74 | .........<td><code>ptr</code></t |
| 86240 | 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 3e 78 3c 2f 63 6f 64 65 | d>.............<td><code>x</code |
| 86260 | 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 20 68 61 76 65 | >.and.<code>y</code>.do.not.have |
| 86280 | 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 20 20 20 20 20 | .result.locations</td>.......... |
| 862a0 | 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 62 6f 64 79 3e 0a 20 20 20 20 20 20 3c 2f | .</tr>.........</tbody>.......</ |
| 862c0 | 74 61 62 6c 65 3e 0a 20 20 20 20 20 20 3c 2f 64 69 76 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 | table>.......</div>............. |
| 862e0 | 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 63 6f 6d 70 74 69 6d 65 22 3e 3c 61 20 68 72 | .........<h2.id="comptime"><a.hr |
| 86300 | 65 66 3d 22 23 74 6f 63 2d 63 6f 6d 70 74 69 6d 65 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 61 3e 20 | ef="#toc-comptime">comptime</a>. |
| 86320 | 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 63 6f 6d 70 74 69 6d 65 22 3e | <a.class="hdr".href="#comptime"> |
| 86340 | c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 5a 69 67 | ..</a></h2>........<p>.......Zig |
| 86360 | 20 70 6c 61 63 65 73 20 69 6d 70 6f 72 74 61 6e 63 65 20 6f 6e 20 74 68 65 20 63 6f 6e 63 65 70 | .places.importance.on.the.concep |
| 86380 | 74 20 6f 66 20 77 68 65 74 68 65 72 20 61 6e 20 65 78 70 72 65 73 73 69 6f 6e 20 69 73 20 6b 6e | t.of.whether.an.expression.is.kn |
| 863a0 | 6f 77 6e 20 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 2e 0a 20 20 20 20 20 20 54 68 65 72 65 | own.at.compile-time........There |
| 863c0 | 20 61 72 65 20 61 20 66 65 77 20 64 69 66 66 65 72 65 6e 74 20 70 6c 61 63 65 73 20 74 68 69 73 | .are.a.few.different.places.this |
| 863e0 | 20 63 6f 6e 63 65 70 74 20 69 73 20 75 73 65 64 2c 20 61 6e 64 20 74 68 65 73 65 20 62 75 69 6c | .concept.is.used,.and.these.buil |
| 86400 | 64 69 6e 67 20 62 6c 6f 63 6b 73 20 61 72 65 20 75 73 65 64 0a 20 20 20 20 20 20 74 6f 20 6b 65 | ding.blocks.are.used.......to.ke |
| 86420 | 65 70 20 74 68 65 20 6c 61 6e 67 75 61 67 65 20 73 6d 61 6c 6c 2c 20 72 65 61 64 61 62 6c 65 2c | ep.the.language.small,.readable, |
| 86440 | 20 61 6e 64 20 70 6f 77 65 72 66 75 6c 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 | .and.powerful........</p>....... |
| 86460 | 3c 68 33 20 69 64 3d 22 49 6e 74 72 6f 64 75 63 69 6e 67 2d 74 68 65 2d 43 6f 6d 70 69 6c 65 2d | <h3.id="Introducing-the-Compile- |
| 86480 | 54 69 6d 65 2d 43 6f 6e 63 65 70 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 49 6e 74 72 | Time-Concept"><a.href="#toc-Intr |
| 864a0 | 6f 64 75 63 69 6e 67 2d 74 68 65 2d 43 6f 6d 70 69 6c 65 2d 54 69 6d 65 2d 43 6f 6e 63 65 70 74 | oducing-the-Compile-Time-Concept |
| 864c0 | 22 3e 49 6e 74 72 6f 64 75 63 69 6e 67 20 74 68 65 20 43 6f 6d 70 69 6c 65 2d 54 69 6d 65 20 43 | ">Introducing.the.Compile-Time.C |
| 864e0 | 6f 6e 63 65 70 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 | oncept</a>.<a.class="hdr".href=" |
| 86500 | 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 6d 65 2d 43 6f | #Introducing-the-Compile-Time-Co |
| 86520 | 6e 63 65 70 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 68 34 20 69 64 | ncept">..</a></h3>........<h4.id |
| 86540 | 3d 22 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 3c 61 20 68 72 | ="Compile-Time-Parameters"><a.hr |
| 86560 | 65 66 3d 22 23 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 | ef="#toc-Compile-Time-Parameters |
| 86580 | 22 3e 43 6f 6d 70 69 6c 65 2d 54 69 6d 65 20 50 61 72 61 6d 65 74 65 72 73 3c 2f 61 3e 20 3c 61 | ">Compile-Time.Parameters</a>.<a |
| 865a0 | 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 43 6f 6d 70 69 6c 65 2d 54 69 6d 65 | .class="hdr".href="#Compile-Time |
| 865c0 | 2d 50 61 72 61 6d 65 74 65 72 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 34 3e 0a 0a 20 20 20 20 20 20 | -Parameters">..</a></h4>........ |
| 865e0 | 3c 70 3e 0a 20 20 20 20 20 20 43 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 70 61 72 61 6d 65 74 65 72 | <p>.......Compile-time.parameter |
| 86600 | 73 20 69 73 20 68 6f 77 20 5a 69 67 20 69 6d 70 6c 65 6d 65 6e 74 73 20 67 65 6e 65 72 69 63 73 | s.is.how.Zig.implements.generics |
| 86620 | 2e 20 49 74 20 69 73 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 64 75 63 6b 20 74 79 70 69 6e 67 | ..It.is.compile-time.duck.typing |
| 86640 | 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 |
| 86660 | 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 |
| 86680 | 73 73 3d 22 66 69 6c 65 22 3e 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 5f 64 75 63 6b 5f 74 79 70 69 | ss="file">compile-time_duck_typi |
| 866a0 | 6e 67 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c | ng.zig</cite></figcaption><pre>< |
| 866c0 | 63 6f 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 |
| 866e0 | 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 78 3c 2f 73 70 | an>.<span.class="tok-fn">max</sp |
| 86700 | 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 |
| 86720 | 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 |
| 86740 | 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 54 20 7b 0a | e">type</span>,.a:.T,.b:.T).T.{. |
| 86760 | 20 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< |
| 86780 | 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f | /span>.<span.class="tok-kw">if</ |
| 867a0 | 73 70 61 6e 3e 20 28 61 20 26 67 74 3b 20 62 29 20 61 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | span>.(a.>.b).a.<span.class=" |
| 867c0 | 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 62 3b 0a 7d 0a 3c 73 70 61 6e 20 63 | tok-kw">else</span>.b;.}.<span.c |
| 867e0 | 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 |
| 86800 | 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 46 6c 6f 61 74 | ass="tok-fn">gimmeTheBiggerFloat |
| 86820 | 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 |
| 86840 | 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 2c 20 62 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ">f32</span>,.b:.<span.class="to |
| 86860 | 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 63 6c 61 73 73 3d | k-type">f32</span>).<span.class= |
| 86880 | 22 74 6f 6b 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 | "tok-type">f32</span>.{.....<spa |
| 868a0 | 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 6d | n.class="tok-kw">return</span>.m |
| 868c0 | 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 66 33 32 3c 2f 73 | ax(<span.class="tok-type">f32</s |
| 868e0 | 70 61 6e 3e 2c 20 61 2c 20 62 29 3b 0a 7d 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | pan>,.a,.b);.}.<span.class="tok- |
| 86900 | 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 |
| 86920 | 6e 22 3e 67 69 6d 6d 65 54 68 65 42 69 67 67 65 72 49 6e 74 65 67 65 72 3c 2f 73 70 61 6e 3e 28 | n">gimmeTheBiggerInteger</span>( |
| 86940 | 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 36 34 3c 2f 73 | a:.<span.class="tok-type">u64</s |
| 86960 | 70 61 6e 3e 2c 20 62 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | pan>,.b:.<span.class="tok-type"> |
| 86980 | 75 36 34 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | u64</span>).<span.class="tok-typ |
| 869a0 | 65 22 3e 75 36 34 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | e">u64</span>.{.....<span.class= |
| 869c0 | 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 6d 61 78 28 3c 73 70 61 6e | "tok-kw">return</span>.max(<span |
| 869e0 | 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 2c 20 61 2c | .class="tok-type">u64</span>,.a, |
| 86a00 | 20 62 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 | .b);.}</code></pre></figure>.... |
| 86a20 | 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 6e 20 5a 69 67 2c 20 74 79 70 65 73 20 61 72 65 20 | ....<p>.......In.Zig,.types.are. |
| 86a40 | 66 69 72 73 74 2d 63 6c 61 73 73 20 63 69 74 69 7a 65 6e 73 2e 20 54 68 65 79 20 63 61 6e 20 62 | first-class.citizens..They.can.b |
| 86a60 | 65 20 61 73 73 69 67 6e 65 64 20 74 6f 20 76 61 72 69 61 62 6c 65 73 2c 20 70 61 73 73 65 64 20 | e.assigned.to.variables,.passed. |
| 86a80 | 61 73 20 70 61 72 61 6d 65 74 65 72 73 20 74 6f 20 66 75 6e 63 74 69 6f 6e 73 2c 0a 20 20 20 20 | as.parameters.to.functions,..... |
| 86aa0 | 20 20 61 6e 64 20 72 65 74 75 72 6e 65 64 20 66 72 6f 6d 20 66 75 6e 63 74 69 6f 6e 73 2e 20 48 | ..and.returned.from.functions..H |
| 86ac0 | 6f 77 65 76 65 72 2c 20 74 68 65 79 20 63 61 6e 20 6f 6e 6c 79 20 62 65 20 75 73 65 64 20 69 6e | owever,.they.can.only.be.used.in |
| 86ae0 | 20 65 78 70 72 65 73 73 69 6f 6e 73 20 77 68 69 63 68 20 61 72 65 20 6b 6e 6f 77 6e 20 61 74 20 | .expressions.which.are.known.at. |
| 86b00 | 3c 65 6d 3e 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 3c 2f 65 6d 3e 2c 0a 20 20 20 20 20 20 77 68 69 | <em>compile-time</em>,.......whi |
| 86b20 | 63 68 20 69 73 20 77 68 79 20 74 68 65 20 70 61 72 61 6d 65 74 65 72 20 3c 63 6f 64 65 3e 54 3c | ch.is.why.the.parameter.<code>T< |
| 86b40 | 2f 63 6f 64 65 3e 20 69 6e 20 74 68 65 20 61 62 6f 76 65 20 73 6e 69 70 70 65 74 20 6d 75 73 74 | /code>.in.the.above.snippet.must |
| 86b60 | 20 62 65 20 6d 61 72 6b 65 64 20 77 69 74 68 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 | .be.marked.with.<code><span.clas |
| 86b80 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 | s="tok-kw">comptime</span></code |
| 86ba0 | 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 20 | >........</p>.......<p>.......A. |
| 86bc0 | 3c 63 6f 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 | <code><span.class="tok-kw">compt |
| 86be0 | 69 6d 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 70 61 72 61 6d 65 74 65 72 20 6d 65 61 6e | ime</span></code>.parameter.mean |
| 86c00 | 73 20 74 68 61 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 | s.that:.......</p>.......<ul>... |
| 86c20 | 20 20 20 20 20 20 3c 6c 69 3e 41 74 20 74 68 65 20 63 61 6c 6c 73 69 74 65 2c 20 74 68 65 20 76 | ......<li>At.the.callsite,.the.v |
| 86c40 | 61 6c 75 65 20 6d 75 73 74 20 62 65 20 6b 6e 6f 77 6e 20 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 | alue.must.be.known.at.compile-ti |
| 86c60 | 6d 65 2c 20 6f 72 20 69 74 20 69 73 20 61 20 63 6f 6d 70 69 6c 65 20 65 72 72 6f 72 2e 3c 2f 6c | me,.or.it.is.a.compile.error.</l |
| 86c80 | 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 49 6e 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 64 | i>.........<li>In.the.function.d |
| 86ca0 | 65 66 69 6e 69 74 69 6f 6e 2c 20 74 68 65 20 76 61 6c 75 65 20 69 73 20 6b 6e 6f 77 6e 20 61 74 | efinition,.the.value.is.known.at |
| 86cc0 | 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a | .compile-time.</li>.......</ul>. |
| 86ce0 | 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 2c 20 69 66 20 | ......<p>.......For.example,.if. |
| 86d00 | 77 65 20 77 65 72 65 20 74 6f 20 69 6e 74 72 6f 64 75 63 65 20 61 6e 6f 74 68 65 72 20 66 75 6e | we.were.to.introduce.another.fun |
| 86d20 | 63 74 69 6f 6e 20 74 6f 20 74 68 65 20 61 62 6f 76 65 20 73 6e 69 70 70 65 74 3a 0a 20 20 20 20 | ction.to.the.above.snippet:..... |
| 86d40 | 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 |
| 86d60 | 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 |
| 86d80 | 6c 65 22 3e 74 65 73 74 5f 75 6e 72 65 73 6f 6c 76 65 64 5f 63 6f 6d 70 74 69 6d 65 5f 76 61 6c | le">test_unresolved_comptime_val |
| 86da0 | 75 65 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c | ue.zig</cite></figcaption><pre>< |
| 86dc0 | 63 6f 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 |
| 86de0 | 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 78 3c 2f 73 70 | an>.<span.class="tok-fn">max</sp |
| 86e00 | 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 |
| 86e20 | 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 |
| 86e40 | 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 54 20 7b 0a | e">type</span>,.a:.T,.b:.T).T.{. |
| 86e60 | 20 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< |
| 86e80 | 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f | /span>.<span.class="tok-kw">if</ |
| 86ea0 | 73 70 61 6e 3e 20 28 61 20 26 67 74 3b 20 62 29 20 61 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | span>.(a.>.b).a.<span.class=" |
| 86ec0 | 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 62 3b 0a 7d 0a 3c 73 70 61 6e 20 63 | tok-kw">else</span>.b;.}.<span.c |
| 86ee0 | 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. |
| 86f00 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 74 72 79 20 74 6f 20 70 61 73 | class="tok-str">"try.to.pas |
| 86f20 | 73 20 61 20 72 75 6e 74 69 6d 65 20 74 79 70 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a | s.a.runtime.type"</span>.{. |
| 86f40 | 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 66 | ....foo(<span.class="tok-null">f |
| 86f60 | 61 6c 73 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 | alse</span>);.}.<span.class="tok |
| 86f80 | 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- |
| 86fa0 | 66 6e 22 3e 66 6f 6f 3c 2f 73 70 61 6e 3e 28 63 6f 6e 64 69 74 69 6f 6e 3a 20 3c 73 70 61 6e 20 | fn">foo</span>(condition:.<span. |
| 86fc0 | 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 |
| 86fe0 | 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> |
| 87000 | 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 |
| 87020 | 74 3c 2f 73 70 61 6e 3e 20 72 65 73 75 6c 74 20 3d 20 6d 61 78 28 3c 73 70 61 6e 20 63 6c 61 73 | t</span>.result.=.max(<span.clas |
| 87040 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 63 6f 6e 64 69 74 69 6f 6e 29 | s="tok-kw">if</span>.(condition) |
| 87060 | 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 |
| 87080 | 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 |
| 870a0 | 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 36 34 3c 2f | an>.<span.class="tok-type">u64</ |
| 870c0 | 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"> |
| 870e0 | 31 32 33 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 | 1234</span>,.<span.class="tok-nu |
| 87100 | 6d 62 65 72 22 3e 35 36 37 38 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 5f 20 3d 20 72 65 73 75 | mber">5678</span>);....._.=.resu |
| 87120 | 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 3c 66 69 67 75 | lt;.}</code></pre></figure><figu |
| 87140 | 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" |
| 87160 | 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>$. |
| 87180 | 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 75 6e 72 65 73 6f 6c 76 65 64 5f 63 6f | <kbd>zig.test.test_unresolved_co |
| 871a0 | 6d 70 74 69 6d 65 5f 76 61 6c 75 65 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 3c 73 70 61 6e 20 63 6c 61 | mptime_value.zig</kbd>.<span.cla |
| 871c0 | 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 | ss="sgr-1m">/home/andy/dev/zig/d |
| 871e0 | 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 75 6e 72 65 73 6f 6c 76 65 64 5f 63 6f 6d 70 74 | oc/langref/test_unresolved_compt |
| 87200 | 69 6d 65 5f 76 61 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 | ime_value.zig:8:28:.</span><span |
| 87220 | 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>< |
| 87240 | 73 70 61 6e 20 63 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 | span.class="sgr-1m">unable.to.re |
| 87260 | 73 6f 6c 76 65 20 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 | solve.comptime.value.</span>.... |
| 87280 | 63 6f 6e 73 74 20 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 | const.result.=.max(if.(condition |
| 872a0 | 29 20 66 33 32 20 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 | ).f32.else.u64,.1234,.5678);.... |
| 872c0 | 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 |
| 872e0 | 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 7e 7e 7e 7e 7e 7e 7e 7e 0a 3c 2f 73 70 61 6e 3e 3c | ass="sgr-32m">^~~~~~~~~.</span>< |
| 87300 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 | span.class="sgr-1m">/home/andy/d |
| 87320 | 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 75 6e 72 65 73 6f 6c 76 | ev/zig/doc/langref/test_unresolv |
| 87340 | 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 34 3a 20 3c 2f 73 70 | ed_comptime_value.zig:8:24:.</sp |
| 87360 | 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:.< |
| 87380 | 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 72 67 75 6d | /span><span.class="sgr-1m">argum |
| 873a0 | 65 6e 74 20 74 6f 20 63 6f 6d 70 74 69 6d 65 20 70 61 72 61 6d 65 74 65 72 20 6d 75 73 74 20 62 | ent.to.comptime.parameter.must.b |
| 873c0 | 65 20 63 6f 6d 70 74 69 6d 65 2d 6b 6e 6f 77 6e 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 63 6f 6e 73 | e.comptime-known.</span>....cons |
| 873e0 | 74 20 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 | t.result.=.max(if.(condition).f3 |
| 87400 | 32 20 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 | 2.else.u64,.1234,.5678);........ |
| 87420 | 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 |
| 87440 | 2d 33 32 6d 22 3e 5e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e | -32m">^~~~~~~~~~~~~~~~~~~~~~~~~~ |
| 87460 | 7e 0a 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 | ~.</span><span.class="sgr-1m">/h |
| 87480 | 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 | ome/andy/dev/zig/doc/langref/tes |
| 874a0 | 74 5f 75 6e 72 65 73 6f 6c 76 65 64 5f 63 6f 6d 70 74 69 6d 65 5f 76 61 6c 75 65 2e 7a 69 67 3a | t_unresolved_comptime_value.zig: |
| 874c0 | 31 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 | 1:8:.</span><span.class="sgr-36m |
| 874e0 | 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- |
| 87500 | 31 6d 22 3e 70 61 72 61 6d 65 74 65 72 20 64 65 63 6c 61 72 65 64 20 63 6f 6d 70 74 69 6d 65 20 | 1m">parameter.declared.comptime. |
| 87520 | 68 65 72 65 0a 3c 2f 73 70 61 6e 3e 66 6e 20 6d 61 78 28 63 6f 6d 70 74 69 6d 65 20 54 3a 20 74 | here.</span>fn.max(comptime.T:.t |
| 87540 | 79 70 65 2c 20 61 3a 20 54 2c 20 62 3a 20 54 29 20 54 20 7b 0a 20 20 20 20 20 20 20 3c 73 70 61 | ype,.a:.T,.b:.T).T.{........<spa |
| 87560 | 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 73 70 61 | n.class="sgr-32m">^~~~~~~~.</spa |
| 87580 | 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 72 65 66 65 72 65 6e 63 65 | n><span.class="sgr-2m">reference |
| 875a0 | 64 20 62 79 3a 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 | d.by:.....test.try.to.pass.a.run |
| 875c0 | 74 69 6d 65 20 74 79 70 65 3a 20 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f | time.type:./home/andy/dev/zig/do |
| 875e0 | 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 75 6e 72 65 73 6f 6c 76 65 64 5f 63 6f 6d 70 74 69 | c/langref/test_unresolved_compti |
| 87600 | 6d 65 5f 76 61 6c 75 65 2e 7a 69 67 3a 35 3a 38 0a 3c 2f 73 70 61 6e 3e 0a 3c 2f 73 61 6d 70 3e | me_value.zig:5:8.</span>.</samp> |
| 87620 | 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>...... |
| 87640 | 20 54 68 69 73 20 69 73 20 61 6e 20 65 72 72 6f 72 20 62 65 63 61 75 73 65 20 74 68 65 20 70 72 | .This.is.an.error.because.the.pr |
| 87660 | 6f 67 72 61 6d 6d 65 72 20 61 74 74 65 6d 70 74 65 64 20 74 6f 20 70 61 73 73 20 61 20 76 61 6c | ogrammer.attempted.to.pass.a.val |
| 87680 | 75 65 20 6f 6e 6c 79 20 6b 6e 6f 77 6e 20 61 74 20 72 75 6e 2d 74 69 6d 65 0a 20 20 20 20 20 20 | ue.only.known.at.run-time....... |
| 876a0 | 74 6f 20 61 20 66 75 6e 63 74 69 6f 6e 20 77 68 69 63 68 20 65 78 70 65 63 74 73 20 61 20 76 61 | to.a.function.which.expects.a.va |
| 876c0 | 6c 75 65 20 6b 6e 6f 77 6e 20 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 2e 0a 20 20 20 20 20 | lue.known.at.compile-time....... |
| 876e0 | 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 41 6e 6f 74 68 65 72 20 77 61 | .</p>.......<p>.......Another.wa |
| 87700 | 79 20 74 6f 20 67 65 74 20 61 6e 20 65 72 72 6f 72 20 69 73 20 69 66 20 77 65 20 70 61 73 73 20 | y.to.get.an.error.is.if.we.pass. |
| 87720 | 61 20 74 79 70 65 20 74 68 61 74 20 76 69 6f 6c 61 74 65 73 20 74 68 65 20 74 79 70 65 20 63 68 | a.type.that.violates.the.type.ch |
| 87740 | 65 63 6b 65 72 20 77 68 65 6e 20 74 68 65 0a 20 20 20 20 20 20 66 75 6e 63 74 69 6f 6e 20 69 73 | ecker.when.the.......function.is |
| 87760 | 20 61 6e 61 6c 79 7a 65 64 2e 20 54 68 69 73 20 69 73 20 77 68 61 74 20 69 74 20 6d 65 61 6e 73 | .analyzed..This.is.what.it.means |
| 87780 | 20 74 6f 20 68 61 76 65 20 3c 65 6d 3e 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 64 75 63 6b 20 74 | .to.have.<em>compile-time.duck.t |
| 877a0 | 79 70 69 6e 67 3c 2f 65 6d 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e | yping</em>........</p>.......<p> |
| 877c0 | 0a 20 20 20 20 20 20 46 6f 72 20 65 78 61 6d 70 6c 65 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 | .......For.example:.......</p>.. |
| 877e0 | 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=" |
| 87800 | 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 |
| 87820 | 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 3c 2f 63 | _comptime_mismatched_type.zig</c |
| 87840 | 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 |
| 87860 | 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 |
| 87880 | 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 70 61 6e | .class="tok-fn">max</span>(<span |
| 878a0 | 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>. |
| 878c0 | 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</ |
| 878e0 | 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 70 61 6e | span>,.a:.T,.b:.T).T.{.....<span |
| 87900 | 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 |
| 87920 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 61 20 | pan.class="tok-kw">if</span>.(a. |
| 87940 | 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 22 3e 65 | >.b).a.<span.class="tok-kw">e |
| 87960 | 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 74 6f 6b | lse</span>.b;.}.<span.class="tok |
| 87980 | 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 |
| 879a0 | 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 6f 6f 6c | k-str">"try.to.compare.bool |
| 879c0 | 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 3c 73 70 | s"</span>.{....._.=.max(<sp |
| 879e0 | 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 2c | an.class="tok-type">bool</span>, |
| 87a00 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 | .<span.class="tok-null">true</sp |
| 87a20 | 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 61 6c 73 | an>,.<span.class="tok-null">fals |
| 87a40 | 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 67 75 72 | e</span>);.}</code></pre></figur |
| 87a60 | 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 |
| 87a80 | 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>< |
| 87aa0 | 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 |
| 87ac0 | 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 3c 73 70 | me_mismatched_type.zig</kbd>.<sp |
| 87ae0 | 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 | an.class="sgr-1m">/home/andy/dev |
| 87b00 | 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 6d | /zig/doc/langref/test_comptime_m |
| 87b20 | 69 73 6d 61 74 63 68 65 64 5f 74 79 70 65 2e 7a 69 67 3a 32 3a 31 38 3a 20 3c 2f 73 70 61 6e 3e | ismatched_type.zig:2:18:.</span> |
| 87b40 | 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 |
| 87b60 | 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 6f 70 65 72 61 74 6f | pan><span.class="sgr-1m">operato |
| 87b80 | 72 20 26 67 74 3b 20 6e 6f 74 20 61 6c 6c 6f 77 65 64 20 66 6f 72 20 74 79 70 65 20 27 62 6f 6f | r.>.not.allowed.for.type.'boo |
| 87ba0 | 6c 27 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 72 65 74 75 72 6e 20 69 66 20 28 61 20 26 67 74 3b 20 | l'.</span>....return.if.(a.>. |
| 87bc0 | 62 29 20 61 20 65 6c 73 65 20 62 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 | b).a.else.b;................<spa |
| 87be0 | 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 7e 7e 5e 7e 7e 0a 3c 2f 73 70 61 6e 3e 3c | n.class="sgr-32m">~~^~~.</span>< |
| 87c00 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 72 65 66 65 72 65 6e 63 65 64 20 62 | span.class="sgr-2m">referenced.b |
| 87c20 | 79 3a 0a 20 20 20 20 74 65 73 74 2e 74 72 79 20 74 6f 20 63 6f 6d 70 61 72 65 20 62 6f 6f 6c 73 | y:.....test.try.to.compare.bools |
| 87c40 | 3a 20 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 | :./home/andy/dev/zig/doc/langref |
| 87c60 | 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 |
| 87c80 | 69 67 3a 35 3a 31 32 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 | ig:5:12.</span>.</samp></pre></f |
| 87ca0 | 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 4f 6e 20 74 68 65 20 66 | igure>........<p>.......On.the.f |
| 87cc0 | 6c 69 70 20 73 69 64 65 2c 20 69 6e 73 69 64 65 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 64 65 | lip.side,.inside.the.function.de |
| 87ce0 | 66 69 6e 69 74 69 6f 6e 20 77 69 74 68 20 74 68 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c | finition.with.the.<code><span.cl |
| 87d00 | 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 6f | ass="tok-kw">comptime</span></co |
| 87d20 | 64 65 3e 20 70 61 72 61 6d 65 74 65 72 2c 20 74 68 65 0a 20 20 20 20 20 20 76 61 6c 75 65 20 69 | de>.parameter,.the.......value.i |
| 87d40 | 73 20 6b 6e 6f 77 6e 20 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 2e 20 54 68 69 73 20 6d 65 | s.known.at.compile-time..This.me |
| 87d60 | 61 6e 73 20 74 68 61 74 20 77 65 20 61 63 74 75 61 6c 6c 79 20 63 6f 75 6c 64 20 6d 61 6b 65 20 | ans.that.we.actually.could.make. |
| 87d80 | 74 68 69 73 20 77 6f 72 6b 20 66 6f 72 20 74 68 65 20 62 6f 6f 6c 20 74 79 70 65 0a 20 20 20 20 | this.work.for.the.bool.type..... |
| 87da0 | 20 20 69 66 20 77 65 20 77 61 6e 74 65 64 20 74 6f 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 | ..if.we.wanted.to:.......</p>... |
| 87dc0 | 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 |
| 87de0 | 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_ |
| 87e00 | 63 6f 6d 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 63 69 74 65 | comptime_max_with_bool.zig</cite |
| 87e20 | 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 |
| 87e40 | 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 |
| 87e60 | 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 6d 61 78 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c | ass="tok-fn">max</span>(<span.cl |
| 87e80 | 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:. |
| 87ea0 | 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 |
| 87ec0 | 6e 3e 2c 20 61 3a 20 54 2c 20 62 3a 20 54 29 20 54 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | n>,.a:.T,.b:.T).T.{.....<span.cl |
| 87ee0 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 54 20 3d 3d 20 3c 73 70 | ass="tok-kw">if</span>.(T.==.<sp |
| 87f00 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 29 | an.class="tok-type">bool</span>) |
| 87f20 | 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"> |
| 87f40 | 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 61 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | return</span>.a.<span.class="tok |
| 87f60 | 2d 6b 77 22 3e 6f 72 3c 2f 73 70 61 6e 3e 20 62 3b 0a 20 20 20 20 7d 20 3c 73 70 61 6e 20 63 6c | -kw">or</span>.b;.....}.<span.cl |
| 87f80 | 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 63 | ass="tok-kw">else</span>.<span.c |
| 87fa0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 61 20 26 67 74 3b 20 | lass="tok-kw">if</span>.(a.>. |
| 87fc0 | 62 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 | b).{.........<span.class="tok-kw |
| 87fe0 | 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 61 3b 0a 20 20 20 20 7d 20 3c 73 70 61 6e 20 63 | ">return</span>.a;.....}.<span.c |
| 88000 | 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 20 | lass="tok-kw">else</span>.{..... |
| 88020 | 20 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< |
| 88040 | 2f 73 70 61 6e 3e 20 62 3b 0a 20 20 20 20 7d 0a 7d 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | /span>.b;.....}.}.<span.class="t |
| 88060 | 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=" |
| 88080 | 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 6f | tok-str">"try.to.compare.bo |
| 880a0 | 6f 6c 73 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | ols"</span>.{.....<span.cla |
| 880c0 | 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 70 61 6e 20 63 6c 61 | ss="tok-kw">try</span>.<span.cla |
| 880e0 | 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>( |
| 88100 | 3c 73 70 61 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& |
| 88120 | 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 28 6d 61 78 | quot;</span>).testing.expect(max |
| 88140 | 28 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 |
| 88160 | 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 61 6c 73 | an>,.<span.class="tok-null">fals |
| 88180 | 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" |
| 881a0 | 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 74 6f | >true</span>).==.<span.class="to |
| 881c0 | 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 3c 2f | k-null">true</span>);.}</code></ |
| 881e0 | 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 |
| 88200 | 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 |
| 88220 | 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. |
| 88240 | 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 7a 69 67 3c | test_comptime_max_with_bool.zig< |
| 88260 | 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 6d 61 78 5f 77 69 74 68 | /kbd>.1/1.test_comptime_max_with |
| 88280 | 5f 62 6f 6f 6c 2e 74 65 73 74 2e 74 72 79 20 74 6f 20 63 6f 6d 70 61 72 65 20 62 6f 6f 6c 73 2e | _bool.test.try.to.compare.bools. |
| 882a0 | 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> |
| 882c0 | 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>...... |
| 882e0 | 20 54 68 69 73 20 77 6f 72 6b 73 20 62 65 63 61 75 73 65 20 5a 69 67 20 69 6d 70 6c 69 63 69 74 | .This.works.because.Zig.implicit |
| 88300 | 6c 79 20 69 6e 6c 69 6e 65 73 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ly.inlines.<code><span.class="to |
| 88320 | 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 65 78 70 72 65 73 73 69 6f | k-kw">if</span></code>.expressio |
| 88340 | 6e 73 20 77 68 65 6e 20 74 68 65 20 63 6f 6e 64 69 74 69 6f 6e 0a 20 20 20 20 20 20 69 73 20 6b | ns.when.the.condition.......is.k |
| 88360 | 6e 6f 77 6e 20 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 2c 20 61 6e 64 20 74 68 65 20 63 6f | nown.at.compile-time,.and.the.co |
| 88380 | 6d 70 69 6c 65 72 20 67 75 61 72 61 6e 74 65 65 73 20 74 68 61 74 20 69 74 20 77 69 6c 6c 20 73 | mpiler.guarantees.that.it.will.s |
| 883a0 | 6b 69 70 20 61 6e 61 6c 79 73 69 73 20 6f 66 0a 20 20 20 20 20 20 74 68 65 20 62 72 61 6e 63 68 | kip.analysis.of.......the.branch |
| 883c0 | 20 6e 6f 74 20 74 61 6b 65 6e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e | .not.taken........</p>.......<p> |
| 883e0 | 0a 20 20 20 20 20 20 54 68 69 73 20 6d 65 61 6e 73 20 74 68 61 74 20 74 68 65 20 61 63 74 75 61 | .......This.means.that.the.actua |
| 88400 | 6c 20 66 75 6e 63 74 69 6f 6e 20 67 65 6e 65 72 61 74 65 64 20 66 6f 72 20 3c 63 6f 64 65 3e 6d | l.function.generated.for.<code>m |
| 88420 | 61 78 3c 2f 63 6f 64 65 3e 20 69 6e 20 74 68 69 73 20 73 69 74 75 61 74 69 6f 6e 20 6c 6f 6f 6b | ax</code>.in.this.situation.look |
| 88440 | 73 20 6c 69 6b 65 0a 20 20 20 20 20 20 74 68 69 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 | s.like.......this:.......</p>... |
| 88460 | 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 |
| 88480 | 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 63 6f 6d 70 69 | ig-cap"><cite.class="file">compi |
| 884a0 | 6c 65 72 5f 67 65 6e 65 72 61 74 65 64 5f 66 75 6e 63 74 69 6f 6e 2e 7a 69 67 3c 2f 63 69 74 65 | ler_generated_function.zig</cite |
| 884c0 | 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 |
| 884e0 | 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 |
| 88500 | 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 6d 61 78 3c 2f 73 70 61 6e 3e 28 61 3a 20 3c 73 70 61 6e | ass="tok-fn">max</span>(a:.<span |
| 88520 | 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 62 | .class="tok-type">bool</span>,.b |
| 88540 | 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 | :.<span.class="tok-type">bool</s |
| 88560 | 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 62 6f 6f | pan>).<span.class="tok-type">boo |
| 88580 | 6c 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 | l</span>.{.....{.........<span.c |
| 885a0 | 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 3c 73 | lass="tok-kw">return</span>.a.<s |
| 885c0 | 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 62 3b 0a | pan.class="tok-kw">or</span>.b;. |
| 885e0 | 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 0a 20 | ....}.}</code></pre></figure>... |
| 88600 | 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 41 6c 6c 20 74 68 65 20 63 6f 64 65 20 74 68 61 74 | .....<p>.......All.the.code.that |
| 88620 | 20 64 65 61 6c 74 20 77 69 74 68 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 6b 6e 6f 77 6e 20 76 | .dealt.with.compile-time.known.v |
| 88640 | 61 6c 75 65 73 20 69 73 20 65 6c 69 6d 69 6e 61 74 65 64 20 61 6e 64 20 77 65 20 61 72 65 20 6c | alues.is.eliminated.and.we.are.l |
| 88660 | 65 66 74 20 77 69 74 68 20 6f 6e 6c 79 0a 20 20 20 20 20 20 74 68 65 20 6e 65 63 65 73 73 61 72 | eft.with.only.......the.necessar |
| 88680 | 79 20 72 75 6e 2d 74 69 6d 65 20 63 6f 64 65 20 74 6f 20 61 63 63 6f 6d 70 6c 69 73 68 20 74 68 | y.run-time.code.to.accomplish.th |
| 886a0 | 65 20 74 61 73 6b 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 | e.task........</p>.......<p>.... |
| 886c0 | 20 20 20 54 68 69 73 20 77 6f 72 6b 73 20 74 68 65 20 73 61 6d 65 20 77 61 79 20 66 6f 72 20 3c | ...This.works.the.same.way.for.< |
| 886e0 | 63 6f 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 68 | code><span.class="tok-kw">switch |
| 88700 | 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 2d 20 74 68 65 | </span></code>.expressions.-.the |
| 88720 | 79 20 61 72 65 20 69 6d 70 6c 69 63 69 74 6c 79 20 69 6e 6c 69 6e 65 64 0a 20 20 20 20 20 20 77 | y.are.implicitly.inlined.......w |
| 88740 | 68 65 6e 20 74 68 65 20 74 61 72 67 65 74 20 65 78 70 72 65 73 73 69 6f 6e 20 69 73 20 63 6f 6d | hen.the.target.expression.is.com |
| 88760 | 70 69 6c 65 2d 74 69 6d 65 20 6b 6e 6f 77 6e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 | pile-time.known........</p>..... |
| 88780 | 20 20 0a 20 20 20 20 20 20 3c 68 34 20 69 64 3d 22 43 6f 6d 70 69 6c 65 2d 54 69 6d 65 2d 56 61 | .........<h4.id="Compile-Time-Va |
| 887a0 | 72 69 61 62 6c 65 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 43 6f 6d 70 69 6c 65 2d 54 | riables"><a.href="#toc-Compile-T |
| 887c0 | 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 65 20 56 61 72 69 | ime-Variables">Compile-Time.Vari |
| 887e0 | 61 62 6c 65 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 | ables</a>.<a.class="hdr".href="# |
| 88800 | 43 6f 6d 70 69 6c 65 2d 54 69 6d 65 2d 56 61 72 69 61 62 6c 65 73 22 3e c2 a7 3c 2f 61 3e 3c 2f | Compile-Time-Variables">..</a></ |
| 88820 | 68 34 3e 0a 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 74 68 65 | h4>........<p>.......In.Zig,.the |
| 88840 | 20 70 72 6f 67 72 61 6d 6d 65 72 20 63 61 6e 20 6c 61 62 65 6c 20 76 61 72 69 61 62 6c 65 73 20 | .programmer.can.label.variables. |
| 88860 | 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 2d 6b 77 22 3e 63 6f | as.<code><span.class="tok-kw">co |
| 88880 | 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 20 54 68 69 73 20 67 75 61 72 61 | mptime</span></code>..This.guara |
| 888a0 | 6e 74 65 65 73 20 74 6f 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 0a 20 20 20 20 20 20 74 68 61 74 | ntees.to.the.compiler.......that |
| 888c0 | 20 65 76 65 72 79 20 6c 6f 61 64 20 61 6e 64 20 73 74 6f 72 65 20 6f 66 20 74 68 65 20 76 61 72 | .every.load.and.store.of.the.var |
| 888e0 | 69 61 62 6c 65 20 69 73 20 70 65 72 66 6f 72 6d 65 64 20 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 | iable.is.performed.at.compile-ti |
| 88900 | 6d 65 2e 20 41 6e 79 20 76 69 6f 6c 61 74 69 6f 6e 20 6f 66 20 74 68 69 73 20 72 65 73 75 6c 74 | me..Any.violation.of.this.result |
| 88920 | 73 20 69 6e 20 61 0a 20 20 20 20 20 20 63 6f 6d 70 69 6c 65 20 65 72 72 6f 72 2e 0a 20 20 20 20 | s.in.a.......compile.error...... |
| 88940 | 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 63 6f 6d 62 | ..</p>.......<p>.......This.comb |
| 88960 | 69 6e 65 64 20 77 69 74 68 20 74 68 65 20 66 61 63 74 20 74 68 61 74 20 77 65 20 63 61 6e 20 3c | ined.with.the.fact.that.we.can.< |
| 88980 | 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 6e 6c 69 6e 65 | code><span.class="tok-kw">inline |
| 889a0 | 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6c 6f 6f 70 73 20 61 6c 6c 6f 77 73 20 75 73 20 74 | </span></code>.loops.allows.us.t |
| 889c0 | 6f 20 77 72 69 74 65 0a 20 20 20 20 20 20 61 20 66 75 6e 63 74 69 6f 6e 20 77 68 69 63 68 20 69 | o.write.......a.function.which.i |
| 889e0 | 73 20 70 61 72 74 69 61 6c 6c 79 20 65 76 61 6c 75 61 74 65 64 20 61 74 20 63 6f 6d 70 69 6c 65 | s.partially.evaluated.at.compile |
| 88a00 | 2d 74 69 6d 65 20 61 6e 64 20 70 61 72 74 69 61 6c 6c 79 20 61 74 20 72 75 6e 2d 74 69 6d 65 2e | -time.and.partially.at.run-time. |
| 88a20 | 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 20 | .......</p>.......<p>.......For. |
| 88a40 | 65 78 61 6d 70 6c 65 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 | example:.......</p>.......<figur |
| 88a60 | 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 |
| 88a80 | 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 65 | ite.class="file">test_comptime_e |
| 88aa0 | 76 61 6c 75 61 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 6e | valuation.zig</cite></figcaption |
| 88ac0 | 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" |
| 88ae0 | 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 |
| 88b00 | 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>( |
| 88b20 | 3c 73 70 61 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& |
| 88b40 | 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;..< |
| 88b60 | 73 70 61 6e 20 63 6c 61 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> |
| 88b80 | 20 43 6d 64 46 6e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 74 | .CmdFn.=.<span.class="tok-kw">st |
| 88ba0 | 72 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 6e 61 6d 65 3a 20 5b 5d 3c 73 70 61 6e 20 | ruct</span>.{.....name:.[]<span. |
| 88bc0 | 63 6c 61 73 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 |
| 88be0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 0a 20 20 | n.class="tok-type">u8</span>,... |
| 88c00 | 20 20 66 75 6e 63 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c | ..func:.<span.class="tok-kw">fn< |
| 88c20 | 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 74 79 70 65 22 3e 69 | /span>.(<span.class="tok-type">i |
| 88c40 | 33 32 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | 32</span>).<span.class="tok-type |
| 88c60 | 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ">i32</span>,.};..<span.class="t |
| 88c80 | 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 63 6d 64 5f 66 6e 73 20 3d 20 5b 5f | ok-kw">const</span>.cmd_fns.=.[_ |
| 88ca0 | 5d 43 6d 64 46 6e 7b 0a 20 20 20 20 43 6d 64 46 6e 7b 20 2e 6e 61 6d 65 20 3d 20 3c 73 70 61 6e | ]CmdFn{.....CmdFn{..name.=.<span |
| 88cc0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 6f 6e 65 26 71 75 6f 74 3b | .class="tok-str">"one" |
| 88ce0 | 3c 2f 73 70 61 6e 3e 2c 20 2e 66 75 6e 63 20 3d 20 6f 6e 65 20 7d 2c 0a 20 20 20 20 43 6d 64 46 | </span>,..func.=.one.},.....CmdF |
| 88d00 | 6e 7b 20 2e 6e 61 6d 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 | n{..name.=.<span.class="tok-str" |
| 88d20 | 3e 26 71 75 6f 74 3b 74 77 6f 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 66 75 6e 63 20 3d | >"two"</span>,..func.= |
| 88d40 | 20 74 77 6f 20 7d 2c 0a 20 20 20 20 43 6d 64 46 6e 7b 20 2e 6e 61 6d 65 20 3d 20 3c 73 70 61 6e | .two.},.....CmdFn{..name.=.<span |
| 88d60 | 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 72 65 65 26 71 75 6f | .class="tok-str">"three&quo |
| 88d80 | 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 66 75 6e 63 20 3d 20 74 68 72 65 65 20 7d 2c 0a 7d 3b 0a 3c | t;</span>,..func.=.three.},.};.< |
| 88da0 | 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 |
| 88dc0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 6f 6e 65 3c 2f 73 70 61 6e 3e 28 76 61 | pan.class="tok-fn">one</span>(va |
| 88de0 | 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 3c | lue:.<span.class="tok-type">i32< |
| 88e00 | 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 | /span>).<span.class="tok-type">i |
| 88e20 | 33 32 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | 32</span>.{.....<span.class="tok |
| 88e40 | 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 76 61 6c 75 65 20 2b 20 3c 73 70 61 6e | -kw">return</span>.value.+.<span |
| 88e60 | 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 0a | .class="tok-number">1</span>;.}. |
| 88e80 | 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>.< |
| 88ea0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 74 77 6f 3c 2f 73 70 61 6e 3e 28 76 | span.class="tok-fn">two</span>(v |
| 88ec0 | 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 |
| 88ee0 | 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"> |
| 88f00 | 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 |
| 88f20 | 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 76 61 6c 75 65 20 2b 20 3c 73 70 61 | k-kw">return</span>.value.+.<spa |
| 88f40 | 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 7d | n.class="tok-number">2</span>;.} |
| 88f60 | 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>. |
| 88f80 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 74 68 72 65 65 3c 2f 73 70 61 6e | <span.class="tok-fn">three</span |
| 88fa0 | 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 3e | >(value:.<span.class="tok-type"> |
| 88fc0 | 69 33 32 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | i32</span>).<span.class="tok-typ |
| 88fe0 | 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | e">i32</span>.{.....<span.class= |
| 89000 | 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 76 61 6c 75 65 20 2b 20 3c | "tok-kw">return</span>.value.+.< |
| 89020 | 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> |
| 89040 | 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 |
| 89060 | 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 |
| 89080 | 46 6e 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 | Fn</span>(<span.class="tok-kw">c |
| 890a0 | 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 70 72 65 66 69 78 5f 63 68 61 72 3a 20 3c 73 70 61 | omptime</span>.prefix_char:.<spa |
| 890c0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 73 74 | n.class="tok-type">u8</span>,.st |
| 890e0 | 61 72 74 5f 76 61 6c 75 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | art_value:.<span.class="tok-type |
| 89100 | 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | ">i32</span>).<span.class="tok-t |
| 89120 | 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | ype">i32</span>.{.....<span.clas |
| 89140 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 72 65 73 75 6c 74 3a 20 3c 73 | s="tok-kw">var</span>.result:.<s |
| 89160 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 | pan.class="tok-type">i32</span>. |
| 89180 | 3d 20 73 74 61 72 74 5f 76 61 6c 75 65 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | =.start_value;.....<span.class=" |
| 891a0 | 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c | tok-kw">comptime</span>.<span.cl |
| 891c0 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 69 20 3d 20 3c 73 70 61 | ass="tok-kw">var</span>.i.=.<spa |
| 891e0 | 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>;.. |
| 89200 | 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</ |
| 89220 | 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 77 68 69 6c 65 | span>.<span.class="tok-kw">while |
| 89240 | 3c 2f 73 70 61 6e 3e 20 28 69 20 26 6c 74 3b 20 63 6d 64 5f 66 6e 73 2e 6c 65 6e 29 20 3a 20 28 | </span>.(i.<.cmd_fns.len).:.( |
| 89260 | 69 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c | i.+=.<span.class="tok-number">1< |
| 89280 | 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | /span>).{.........<span.class="t |
| 892a0 | 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 63 6d 64 5f 66 6e 73 5b 69 5d 2e 6e 61 6d | ok-kw">if</span>.(cmd_fns[i].nam |
| 892c0 | 65 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 | e[<span.class="tok-number">0</sp |
| 892e0 | 61 6e 3e 5d 20 3d 3d 20 70 72 65 66 69 78 5f 63 68 61 72 29 20 7b 0a 20 20 20 20 20 20 20 20 20 | an>].==.prefix_char).{.......... |
| 89300 | 20 20 20 72 65 73 75 6c 74 20 3d 20 63 6d 64 5f 66 6e 73 5b 69 5d 2e 66 75 6e 63 28 72 65 73 75 | ...result.=.cmd_fns[i].func(resu |
| 89320 | 6c 74 29 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 7d 0a 20 20 20 20 3c 73 70 61 6e 20 63 | lt);.........}.....}.....<span.c |
| 89340 | 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 |
| 89360 | 6c 74 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 | lt;.}..<span.class="tok-kw">test |
| 89380 | 3c 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 |
| 893a0 | 75 6f 74 3b 70 65 72 66 6f 72 6d 20 66 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 | uot;perform.fn"</span>.{... |
| 893c0 | 20 20 3c 73 70 61 6e 20 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 |
| 893e0 | 3e 20 65 78 70 65 63 74 28 70 65 72 66 6f 72 6d 46 6e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | >.expect(performFn(<span.class=" |
| 89400 | 74 6f 6b 2d 73 74 72 22 3e 27 74 27 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 | tok-str">'t'</span>,.<span.class |
| 89420 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 3c 73 70 61 6e | ="tok-number">1</span>).==.<span |
| 89440 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 36 3c 2f 73 70 61 6e 3e 29 3b 0a 20 | .class="tok-number">6</span>);.. |
| 89460 | 20 20 20 3c 73 70 61 6e 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 |
| 89480 | 6e 3e 20 65 78 70 65 63 74 28 70 65 72 66 6f 72 6d 46 6e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d | n>.expect(performFn(<span.class= |
| 894a0 | 22 74 6f 6b 2d 73 74 72 22 3e 27 6f 27 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 | "tok-str">'o'</span>,.<span.clas |
| 894c0 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 3c 73 70 61 | s="tok-number">0</span>).==.<spa |
| 894e0 | 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>);. |
| 89500 | 20 20 20 20 3c 73 70 61 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 |
| 89520 | 61 6e 3e 20 65 78 70 65 63 74 28 70 65 72 66 6f 72 6d 46 6e 28 3c 73 70 61 6e 20 63 6c 61 73 73 | an>.expect(performFn(<span.class |
| 89540 | 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 77 27 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 | ="tok-str">'w'</span>,.<span.cla |
| 89560 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 39 39 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 3c 73 | ss="tok-number">99</span>).==.<s |
| 89580 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 39 39 3c 2f 73 70 61 6e 3e | pan.class="tok-number">99</span> |
| 895a0 | 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 |
| 895c0 | 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"> |
| 895e0 | 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>$.< |
| 89600 | 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 65 76 61 6c 75 | kbd>zig.test.test_comptime_evalu |
| 89620 | 61 74 69 6f 6e 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 63 6f 6d 70 74 69 6d | ation.zig</kbd>.1/1.test_comptim |
| 89640 | 65 5f 65 76 61 6c 75 61 74 69 6f 6e 2e 74 65 73 74 2e 70 65 72 66 6f 72 6d 20 66 6e 2e 2e 2e 4f | e_evaluation.test.perform.fn...O |
| 89660 | 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 |
| 89680 | 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 | re></figure>........<p>.......Th |
| 896a0 | 69 73 20 65 78 61 6d 70 6c 65 20 69 73 20 61 20 62 69 74 20 63 6f 6e 74 72 69 76 65 64 2c 20 62 | is.example.is.a.bit.contrived,.b |
| 896c0 | 65 63 61 75 73 65 20 74 68 65 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 65 76 61 6c 75 61 74 69 | ecause.the.compile-time.evaluati |
| 896e0 | 6f 6e 20 63 6f 6d 70 6f 6e 65 6e 74 20 69 73 20 75 6e 6e 65 63 65 73 73 61 72 79 3b 0a 20 20 20 | on.component.is.unnecessary;.... |
| 89700 | 20 20 20 74 68 69 73 20 63 6f 64 65 20 77 6f 75 6c 64 20 77 6f 72 6b 20 66 69 6e 65 20 69 66 20 | ...this.code.would.work.fine.if. |
| 89720 | 69 74 20 77 61 73 20 61 6c 6c 20 64 6f 6e 65 20 61 74 20 72 75 6e 2d 74 69 6d 65 2e 20 42 75 74 | it.was.all.done.at.run-time..But |
| 89740 | 20 69 74 20 64 6f 65 73 20 65 6e 64 20 75 70 20 67 65 6e 65 72 61 74 69 6e 67 0a 20 20 20 20 20 | .it.does.end.up.generating...... |
| 89760 | 20 64 69 66 66 65 72 65 6e 74 20 63 6f 64 65 2e 20 49 6e 20 74 68 69 73 20 65 78 61 6d 70 6c 65 | .different.code..In.this.example |
| 89780 | 2c 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 3c 63 6f 64 65 3e 70 65 72 66 6f 72 6d 46 6e 3c 2f | ,.the.function.<code>performFn</ |
| 897a0 | 63 6f 64 65 3e 20 69 73 20 67 65 6e 65 72 61 74 65 64 20 74 68 72 65 65 20 64 69 66 66 65 72 65 | code>.is.generated.three.differe |
| 897c0 | 6e 74 20 74 69 6d 65 73 2c 0a 20 20 20 20 20 20 20 20 20 20 66 6f 72 20 74 68 65 20 64 69 66 66 | nt.times,...........for.the.diff |
| 897e0 | 65 72 65 6e 74 20 76 61 6c 75 65 73 20 6f 66 20 3c 63 6f 64 65 3e 70 72 65 66 69 78 5f 63 68 61 | erent.values.of.<code>prefix_cha |
| 89800 | 72 3c 2f 63 6f 64 65 3e 20 70 72 6f 76 69 64 65 64 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 | r</code>.provided:.......</p>... |
| 89820 | 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 |
| 89840 | 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 65 72 66 6f | ig-cap"><cite.class="file">perfo |
| 89860 | 72 6d 46 6e 5f 31 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 | rmFn_1</cite></figcaption><pre>< |
| 89880 | 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">/ |
| 898a0 | 2f 20 46 72 6f 6d 20 74 68 65 20 6c 69 6e 65 3a 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c | /.From.the.line:</span>.<span.cl |
| 898c0 | 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 65 78 70 65 63 74 28 70 65 72 66 | ass="tok-comment">//.expect(perf |
| 898e0 | 6f 72 6d 46 6e 28 27 74 27 2c 20 31 29 20 3d 3d 20 36 29 3b 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 | ormFn('t',.1).==.6);</span>.<spa |
| 89900 | 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 |
| 89920 | 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> |
| 89940 | 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 |
| 89960 | 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 |
| 89980 | 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 |
| 899a0 | 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: |
| 899c0 | 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 |
| 899e0 | 6e 3e 20 3d 20 73 74 61 72 74 5f 76 61 6c 75 65 3b 0a 20 20 20 20 72 65 73 75 6c 74 20 3d 20 74 | n>.=.start_value;.....result.=.t |
| 89a00 | 77 6f 28 72 65 73 75 6c 74 29 3b 0a 20 20 20 20 72 65 73 75 6c 74 20 3d 20 74 68 72 65 65 28 72 | wo(result);.....result.=.three(r |
| 89a20 | 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 6b 77 22 | esult);.....<span.class="tok-kw" |
| 89a40 | 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 72 65 73 75 6c 74 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c | >return</span>.result;.}</code>< |
| 89a60 | 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 3c 66 69 | /pre></figure>.......<figure><fi |
| 89a80 | 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 |
| 89aa0 | 6c 61 73 73 3d 22 66 69 6c 65 22 3e 70 65 72 66 6f 72 6d 46 6e 5f 32 3c 2f 63 69 74 65 3e 3c 2f | lass="file">performFn_2</cite></ |
| 89ac0 | 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 |
| 89ae0 | 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 46 72 6f 6d 20 74 68 65 20 6c 69 6e 65 | s="tok-comment">//.From.the.line |
| 89b00 | 3a 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e | :</span>.<span.class="tok-commen |
| 89b20 | 74 22 3e 2f 2f 20 65 78 70 65 63 74 28 70 65 72 66 6f 72 6d 46 6e 28 27 6f 27 2c 20 30 29 20 3d | t">//.expect(performFn('o',.0).= |
| 89b40 | 3d 20 31 29 3b 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | =.1);</span>.<span.class="tok-kw |
| 89b60 | 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" |
| 89b80 | 3e 70 65 72 66 6f 72 6d 46 6e 3c 2f 73 70 61 6e 3e 28 73 74 61 72 74 5f 76 61 6c 75 65 3a 20 3c | >performFn</span>(start_value:.< |
| 89ba0 | 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> |
| 89bc0 | 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 | ).<span.class="tok-type">i32</sp |
| 89be0 | 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 | an>.{.....<span.class="tok-kw">v |
| 89c00 | 61 72 3c 2f 73 70 61 6e 3e 20 72 65 73 75 6c 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ar</span>.result:.<span.class="t |
| 89c20 | 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 73 74 61 72 74 5f 76 61 6c 75 | ok-type">i32</span>.=.start_valu |
| 89c40 | 65 3b 0a 20 20 20 20 72 65 73 75 6c 74 20 3d 20 6f 6e 65 28 72 65 73 75 6c 74 29 3b 0a 20 20 20 | e;.....result.=.one(result);.... |
| 89c60 | 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 |
| 89c80 | 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 69 67 75 | an>.result;.}</code></pre></figu |
| 89ca0 | 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 |
| 89cc0 | 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" |
| 89ce0 | 3e 70 65 72 66 6f 72 6d 46 6e 5f 33 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e | >performFn_3</cite></figcaption> |
| 89d00 | 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 |
| 89d20 | 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 0a 3c 73 | ent">//.From.the.line:</span>.<s |
| 89d40 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 65 78 70 65 63 | pan.class="tok-comment">//.expec |
| 89d60 | 74 28 70 65 72 66 6f 72 6d 46 6e 28 27 77 27 2c 20 39 39 29 20 3d 3d 20 39 39 29 3b 3c 2f 73 70 | t(performFn('w',.99).==.99);</sp |
| 89d80 | 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 61 | an>.<span.class="tok-kw">fn</spa |
| 89da0 | 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 46 | n>.<span.class="tok-fn">performF |
| 89dc0 | 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 73 | n</span>(start_value:.<span.clas |
| 89de0 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 | s="tok-type">i32</span>).<span.c |
| 89e00 | 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>.{.... |
| 89e20 | 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> |
| 89e40 | 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 3e | .result:.<span.class="tok-type"> |
| 89e60 | 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 5f 20 | i32</span>.=.start_value;....._. |
| 89e80 | 3d 20 26 61 6d 70 3b 72 65 73 75 6c 74 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | =.&result;.....<span.class=" |
| 89ea0 | 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 7d 3c | tok-kw">return</span>.result;.}< |
| 89ec0 | 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a | /code></pre></figure>.......<p>. |
| 89ee0 | 20 20 20 20 20 20 4e 6f 74 65 20 74 68 61 74 20 74 68 69 73 20 68 61 70 70 65 6e 73 20 65 76 65 | ......Note.that.this.happens.eve |
| 89f00 | 6e 20 69 6e 20 61 20 64 65 62 75 67 20 62 75 69 6c 64 2e 0a 20 20 20 20 20 20 54 68 69 73 20 69 | n.in.a.debug.build........This.i |
| 89f20 | 73 20 6e 6f 74 20 61 20 77 61 79 20 74 6f 20 77 72 69 74 65 20 6d 6f 72 65 20 6f 70 74 69 6d 69 | s.not.a.way.to.write.more.optimi |
| 89f40 | 7a 65 64 20 63 6f 64 65 2c 20 62 75 74 20 69 74 20 69 73 20 61 20 77 61 79 20 74 6f 20 6d 61 6b | zed.code,.but.it.is.a.way.to.mak |
| 89f60 | 65 20 73 75 72 65 20 74 68 61 74 20 77 68 61 74 20 3c 65 6d 3e 73 68 6f 75 6c 64 3c 2f 65 6d 3e | e.sure.that.what.<em>should</em> |
| 89f80 | 20 68 61 70 70 65 6e 0a 20 20 20 20 20 20 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 2c 20 3c | .happen.......at.compile-time,.< |
| 89fa0 | 65 6d 3e 64 6f 65 73 3c 2f 65 6d 3e 20 68 61 70 70 65 6e 20 61 74 20 63 6f 6d 70 69 6c 65 2d 74 | em>does</em>.happen.at.compile-t |
| 89fc0 | 69 6d 65 2e 20 54 68 69 73 20 63 61 74 63 68 65 73 20 6d 6f 72 65 20 65 72 72 6f 72 73 20 61 6e | ime..This.catches.more.errors.an |
| 89fe0 | 64 20 61 6c 6c 6f 77 73 20 65 78 70 72 65 73 73 69 76 65 6e 65 73 73 0a 20 20 20 20 20 20 74 68 | d.allows.expressiveness.......th |
| 8a000 | 61 74 20 69 6e 20 6f 74 68 65 72 20 6c 61 6e 67 75 61 67 65 73 20 72 65 71 75 69 72 65 73 20 75 | at.in.other.languages.requires.u |
| 8a020 | 73 69 6e 67 20 6d 61 63 72 6f 73 2c 20 67 65 6e 65 72 61 74 65 64 20 63 6f 64 65 2c 20 6f 72 20 | sing.macros,.generated.code,.or. |
| 8a040 | 61 20 70 72 65 70 72 6f 63 65 73 73 6f 72 20 74 6f 20 61 63 63 6f 6d 70 6c 69 73 68 2e 0a 20 20 | a.preprocessor.to.accomplish.... |
| 8a060 | 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 34 20 69 64 3d 22 43 6f | ....</p>..............<h4.id="Co |
| 8a080 | 6d 70 69 6c 65 2d 54 69 6d 65 2d 45 78 70 72 65 73 73 69 6f 6e 73 22 3e 3c 61 20 68 72 65 66 3d | mpile-Time-Expressions"><a.href= |
| 8a0a0 | 22 23 74 6f 63 2d 43 6f 6d 70 69 6c 65 2d 54 69 6d 65 2d 45 78 70 72 65 73 73 69 6f 6e 73 22 3e | "#toc-Compile-Time-Expressions"> |
| 8a0c0 | 43 6f 6d 70 69 6c 65 2d 54 69 6d 65 20 45 78 70 72 65 73 73 69 6f 6e 73 3c 2f 61 3e 20 3c 61 20 | Compile-Time.Expressions</a>.<a. |
| 8a0e0 | 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 43 6f 6d 70 69 6c 65 2d 54 69 6d 65 2d | class="hdr".href="#Compile-Time- |
| 8a100 | 45 78 70 72 65 73 73 69 6f 6e 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 34 3e 0a 0a 20 20 20 20 20 20 | Expressions">..</a></h4>........ |
| 8a120 | 3c 70 3e 0a 20 20 20 20 20 20 49 6e 20 5a 69 67 2c 20 69 74 20 6d 61 74 74 65 72 73 20 77 68 65 | <p>.......In.Zig,.it.matters.whe |
| 8a140 | 74 68 65 72 20 61 20 67 69 76 65 6e 20 65 78 70 72 65 73 73 69 6f 6e 20 69 73 20 6b 6e 6f 77 6e | ther.a.given.expression.is.known |
| 8a160 | 20 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 6f 72 20 72 75 6e 2d 74 69 6d 65 2e 20 41 20 | .at.compile-time.or.run-time..A. |
| 8a180 | 70 72 6f 67 72 61 6d 6d 65 72 20 63 61 6e 0a 20 20 20 20 20 20 75 73 65 20 61 20 3c 63 6f 64 65 | programmer.can.......use.a.<code |
| 8a1a0 | 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</ |
| 8a1c0 | 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 65 78 70 72 65 73 73 69 6f 6e 20 74 6f 20 67 75 61 72 61 | span></code>.expression.to.guara |
| 8a1e0 | 6e 74 65 65 20 74 68 61 74 20 74 68 65 20 65 78 70 72 65 73 73 69 6f 6e 20 77 69 6c 6c 20 62 65 | ntee.that.the.expression.will.be |
| 8a200 | 20 65 76 61 6c 75 61 74 65 64 20 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 2e 0a 20 20 20 20 | .evaluated.at.compile-time...... |
| 8a220 | 20 20 49 66 20 74 68 69 73 20 63 61 6e 6e 6f 74 20 62 65 20 61 63 63 6f 6d 70 6c 69 73 68 65 64 | ..If.this.cannot.be.accomplished |
| 8a240 | 2c 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 20 77 69 6c 6c 20 65 6d 69 74 20 61 6e 20 65 72 72 6f | ,.the.compiler.will.emit.an.erro |
| 8a260 | 72 2e 20 46 6f 72 20 65 78 61 6d 70 6c 65 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 | r..For.example:.......</p>...... |
| 8a280 | 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- |
| 8a2a0 | 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 |
| 8a2c0 | 70 74 69 6d 65 5f 63 61 6c 6c 5f 65 78 74 65 72 6e 5f 66 75 6e 63 74 69 6f 6e 2e 7a 69 67 3c 2f | ptime_call_extern_function.zig</ |
| 8a2e0 | 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 |
| 8a300 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 78 74 65 72 6e 3c 2f 73 70 61 6e 3e 20 | an.class="tok-kw">extern</span>. |
| 8a320 | 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>.< |
| 8a340 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 65 78 69 74 3c 2f 73 70 61 6e 3e 28 | span.class="tok-fn">exit</span>( |
| 8a360 | 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 6e 6f 72 65 74 75 72 | ).<span.class="tok-type">noretur |
| 8a380 | 6e 3c 2f 73 70 61 6e 3e 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | n</span>;..<span.class="tok-kw"> |
| 8a3a0 | 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 |
| 8a3c0 | 22 3e 26 71 75 6f 74 3b 66 6f 6f 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c | ">"foo"</span>.{.....< |
| 8a3e0 | 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 |
| 8a400 | 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 65 78 69 74 28 29 3b 0a 20 20 20 20 7d 0a 7d 3c 2f 63 | an>.{.........exit();.....}.}</c |
| 8a420 | 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 |
| 8a440 | 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</ |
| 8a460 | 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 |
| 8a480 | 20 74 65 73 74 20 74 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 63 61 6c 6c 5f 65 78 74 65 72 6e 5f | .test.test_comptime_call_extern_ |
| 8a4a0 | 66 75 6e 63 74 69 6f 6e 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | function.zig</kbd>.<span.class=" |
| 8a4c0 | 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c | sgr-1m">/home/andy/dev/zig/doc/l |
| 8a4e0 | 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 78 74 65 72 6e | angref/test_comptime_call_extern |
| 8a500 | 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 3c 73 70 61 6e | _function.zig:5:13:.</span><span |
| 8a520 | 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>< |
| 8a540 | 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 65 20 63 61 6c | span.class="sgr-1m">comptime.cal |
| 8a560 | 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 3e 20 20 20 20 | l.of.extern.function.</span>.... |
| 8a580 | 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 6c 61 73 73 3d | ....exit();.........<span.class= |
| 8a5a0 | 22 73 67 72 2d 33 32 6d 22 3e 7e 7e 7e 7e 5e 7e 0a 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c | "sgr-32m">~~~~^~.</span><span.cl |
| 8a5c0 | 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f | ass="sgr-1m">/home/andy/dev/zig/ |
| 8a5e0 | 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 |
| 8a600 | 78 74 65 72 6e 5f 66 75 6e 63 74 69 6f 6e 2e 7a 69 67 3a 34 3a 35 3a 20 3c 2f 73 70 61 6e 3e 3c | xtern_function.zig:4:5:.</span>< |
| 8a620 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 36 6d 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 | span.class="sgr-36m">note:.</spa |
| 8a640 | 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 27 63 6f 6d 70 74 69 6d 65 | n><span.class="sgr-1m">'comptime |
| 8a660 | 27 20 6b 65 79 77 6f 72 64 20 66 6f 72 63 65 73 20 63 6f 6d 70 74 69 6d 65 20 65 76 61 6c 75 61 | '.keyword.forces.comptime.evalua |
| 8a680 | 74 69 6f 6e 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 63 6f 6d 70 74 69 6d 65 20 7b 0a 20 20 20 20 3c | tion.</span>....comptime.{.....< |
| 8a6a0 | 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">^~~~~~~~.</ |
| 8a6c0 | 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>.... |
| 8a6e0 | 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 74 20 64 6f 65 73 6e 27 74 20 6d 61 6b 65 20 73 65 | ....<p>.......It.doesn't.make.se |
| 8a700 | 6e 73 65 20 74 68 61 74 20 61 20 70 72 6f 67 72 61 6d 20 63 6f 75 6c 64 20 63 61 6c 6c 20 3c 63 | nse.that.a.program.could.call.<c |
| 8a720 | 6f 64 65 3e 65 78 69 74 28 29 3c 2f 63 6f 64 65 3e 20 28 6f 72 20 61 6e 79 20 6f 74 68 65 72 20 | ode>exit()</code>.(or.any.other. |
| 8a740 | 65 78 74 65 72 6e 61 6c 20 66 75 6e 63 74 69 6f 6e 29 0a 20 20 20 20 20 20 20 20 20 20 61 74 20 | external.function)...........at. |
| 8a760 | 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 2c 20 73 6f 20 74 68 69 73 20 69 73 20 61 20 63 6f 6d 70 69 | compile-time,.so.this.is.a.compi |
| 8a780 | 6c 65 20 65 72 72 6f 72 2e 20 48 6f 77 65 76 65 72 2c 20 61 20 3c 63 6f 64 65 3e 3c 73 70 61 6e | le.error..However,.a.<code><span |
| 8a7a0 | 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>< |
| 8a7c0 | 2f 63 6f 64 65 3e 20 65 78 70 72 65 73 73 69 6f 6e 20 64 6f 65 73 20 6d 75 63 68 0a 20 20 20 20 | /code>.expression.does.much..... |
| 8a7e0 | 20 20 6d 6f 72 65 20 74 68 61 6e 20 73 6f 6d 65 74 69 6d 65 73 20 63 61 75 73 65 20 61 20 63 6f | ..more.than.sometimes.cause.a.co |
| 8a800 | 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 |
| 8a820 | 3e 0a 20 20 20 20 20 20 57 69 74 68 69 6e 20 61 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 | >.......Within.a.<code><span.cla |
| 8a840 | 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 6f 64 | ss="tok-kw">comptime</span></cod |
| 8a860 | 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>....... |
| 8a880 | 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 41 6c 6c 20 76 61 72 69 61 62 6c 65 73 | <ul>...........<li>All.variables |
| 8a8a0 | 20 61 72 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | .are.<code><span.class="tok-kw"> |
| 8a8c0 | 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 76 61 72 69 61 62 6c 65 73 | comptime</span></code>.variables |
| 8a8e0 | 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 41 6c 6c 20 3c 63 6f 64 65 3e 3c | .</li>...........<li>All.<code>< |
| 8a900 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 3c 2f 63 | span.class="tok-kw">if</span></c |
| 8a920 | 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" |
| 8a940 | 3e 77 68 69 6c 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 | >while</span></code>,.<code><spa |
| 8a960 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6f 72 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 | n.class="tok-kw">for</span></cod |
| 8a980 | 65 3e 2c 20 61 6e 64 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | e>,.and.<code><span.class="tok-k |
| 8a9a0 | 77 22 3e 73 77 69 74 63 68 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 0a 20 20 20 20 20 20 20 20 | w">switch</span></code>......... |
| 8a9c0 | 20 20 65 78 70 72 65 73 73 69 6f 6e 73 20 61 72 65 20 65 76 61 6c 75 61 74 65 64 20 61 74 20 63 | ..expressions.are.evaluated.at.c |
| 8a9e0 | 6f 6d 70 69 6c 65 2d 74 69 6d 65 2c 20 6f 72 20 65 6d 69 74 20 61 20 63 6f 6d 70 69 6c 65 20 65 | ompile-time,.or.emit.a.compile.e |
| 8aa00 | 72 72 6f 72 20 69 66 20 74 68 69 73 20 69 73 20 6e 6f 74 20 70 6f 73 73 69 62 6c 65 2e 3c 2f 6c | rror.if.this.is.not.possible.</l |
| 8aa20 | 69 3e 0a 20 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 | i>...........<li>All.<code><span |
| 8aa40 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 3c 2f 63 | .class="tok-kw">return</span></c |
| 8aa60 | 6f 64 65 3e 20 61 6e 64 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ode>.and.<code><span.class="tok- |
| 8aa80 | 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 65 78 70 72 65 73 73 69 6f 6e | kw">try</span></code>.expression |
| 8aaa0 | 73 20 61 72 65 20 69 6e 76 61 6c 69 64 20 28 75 6e 6c 65 73 73 20 74 68 65 20 66 75 6e 63 74 69 | s.are.invalid.(unless.the.functi |
| 8aac0 | 6f 6e 20 69 74 73 65 6c 66 20 69 73 20 63 61 6c 6c 65 64 20 61 74 20 63 6f 6d 70 69 6c 65 2d 74 | on.itself.is.called.at.compile-t |
| 8aae0 | 69 6d 65 29 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 41 6c 6c 20 63 6f 64 | ime).</li>...........<li>All.cod |
| 8ab00 | 65 20 77 69 74 68 20 72 75 6e 74 69 6d 65 20 73 69 64 65 20 65 66 66 65 63 74 73 20 6f 72 20 64 | e.with.runtime.side.effects.or.d |
| 8ab20 | 65 70 65 6e 64 69 6e 67 20 6f 6e 20 72 75 6e 74 69 6d 65 20 76 61 6c 75 65 73 20 65 6d 69 74 73 | epending.on.runtime.values.emits |
| 8ab40 | 20 61 20 63 6f 6d 70 69 6c 65 20 65 72 72 6f 72 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 | .a.compile.error.</li>.......... |
| 8ab60 | 20 3c 6c 69 3e 41 6c 6c 20 66 75 6e 63 74 69 6f 6e 20 63 61 6c 6c 73 20 63 61 75 73 65 20 74 68 | .<li>All.function.calls.cause.th |
| 8ab80 | 65 20 63 6f 6d 70 69 6c 65 72 20 74 6f 20 69 6e 74 65 72 70 72 65 74 20 74 68 65 20 66 75 6e 63 | e.compiler.to.interpret.the.func |
| 8aba0 | 74 69 6f 6e 20 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 2c 20 65 6d 69 74 74 69 6e 67 20 61 | tion.at.compile-time,.emitting.a |
| 8abc0 | 0a 20 20 20 20 20 20 20 20 20 20 63 6f 6d 70 69 6c 65 20 65 72 72 6f 72 20 69 66 20 74 68 65 20 | ...........compile.error.if.the. |
| 8abe0 | 66 75 6e 63 74 69 6f 6e 20 74 72 69 65 73 20 74 6f 20 64 6f 20 73 6f 6d 65 74 68 69 6e 67 20 74 | function.tries.to.do.something.t |
| 8ac00 | 68 61 74 20 68 61 73 20 67 6c 6f 62 61 6c 20 72 75 6e 74 69 6d 65 20 73 69 64 65 20 65 66 66 65 | hat.has.global.runtime.side.effe |
| 8ac20 | 63 74 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c 70 3e 0a | cts.</li>.......</ul>.......<p>. |
| 8ac40 | 20 20 20 20 20 20 54 68 69 73 20 6d 65 61 6e 73 20 74 68 61 74 20 61 20 70 72 6f 67 72 61 6d 6d | ......This.means.that.a.programm |
| 8ac60 | 65 72 20 63 61 6e 20 63 72 65 61 74 65 20 61 20 66 75 6e 63 74 69 6f 6e 20 77 68 69 63 68 20 69 | er.can.create.a.function.which.i |
| 8ac80 | 73 20 63 61 6c 6c 65 64 20 62 6f 74 68 20 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 61 6e | s.called.both.at.compile-time.an |
| 8aca0 | 64 20 72 75 6e 2d 74 69 6d 65 2c 20 77 69 74 68 0a 20 20 20 20 20 20 6e 6f 20 6d 6f 64 69 66 69 | d.run-time,.with.......no.modifi |
| 8acc0 | 63 61 74 69 6f 6e 20 74 6f 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 72 65 71 75 69 72 65 64 2e | cation.to.the.function.required. |
| 8ace0 | 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 4c 65 74 27 | .......</p>.......<p>.......Let' |
| 8ad00 | 73 20 6c 6f 6f 6b 20 61 74 20 61 6e 20 65 78 61 6d 70 6c 65 3a 0a 20 20 20 20 20 20 3c 2f 70 3e | s.look.at.an.example:.......</p> |
| 8ad20 | 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 |
| 8ad40 | 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 |
| 8ad60 | 73 74 5f 66 69 62 6f 6e 61 63 63 69 5f 72 65 63 75 72 73 69 6f 6e 2e 7a 69 67 3c 2f 63 69 74 65 | st_fibonacci_recursion.zig</cite |
| 8ad80 | 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 |
| 8ada0 | 6c 61 73 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 |
| 8adc0 | 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 |
| 8ade0 | 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 |
| 8ae00 | 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 |
| 8ae20 | 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" |
| 8ae40 | 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"> |
| 8ae60 | 66 69 62 6f 6e 61 63 63 69 3c 2f 73 70 61 6e 3e 28 69 6e 64 65 78 3a 20 3c 73 70 61 6e 20 63 6c | fibonacci</span>(index:.<span.cl |
| 8ae80 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e | ass="tok-type">u32</span>).<span |
| 8aea0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 20 7b 0a 20 | .class="tok-type">u32</span>.{.. |
| 8aec0 | 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 |
| 8aee0 | 3e 20 28 69 6e 64 65 78 20 26 6c 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | >.(index.<.<span.class="tok-n |
| 8af00 | 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 73 3d 22 74 6f | umber">2</span>).<span.class="to |
| 8af20 | 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 69 6e 64 65 78 3b 0a 20 20 20 20 3c | k-kw">return</span>.index;.....< |
| 8af40 | 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 |
| 8af60 | 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= |
| 8af80 | 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 |
| 8afa0 | 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 |
| 8afc0 | 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 |
| 8afe0 | 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=" |
| 8b000 | 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"</ |
| 8b020 | 73 70 61 6e 3e 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 |
| 8b040 | 6d 65 6e 74 22 3e 2f 2f 20 74 65 73 74 20 66 69 62 6f 6e 61 63 63 69 20 61 74 20 72 75 6e 2d 74 | ment">//.test.fibonacci.at.run-t |
| 8b060 | 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- |
| 8b080 | 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 66 69 62 6f 6e 61 63 63 69 28 | kw">try</span>.expect(fibonacci( |
| 8b0a0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 37 3c 2f 73 70 61 6e | <span.class="tok-number">7</span |
| 8b0c0 | 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 |
| 8b0e0 | 33 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 | 3</span>);......<span.class="tok |
| 8b100 | 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 74 65 73 74 20 66 69 62 6f 6e 61 63 63 69 20 61 74 20 63 | -comment">//.test.fibonacci.at.c |
| 8b120 | 6f 6d 70 69 6c 65 2d 74 69 6d 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | ompile-time</span>.....<span.cla |
| 8b140 | 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 70 61 6e 20 63 6c 61 | ss="tok-kw">try</span>.<span.cla |
| 8b160 | 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 65 78 70 65 | ss="tok-kw">comptime</span>.expe |
| 8b180 | 63 74 28 66 69 62 6f 6e 61 63 63 69 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | ct(fibonacci(<span.class="tok-nu |
| 8b1a0 | 6d 62 65 72 22 3e 37 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | mber">7</span>).==.<span.class=" |
| 8b1c0 | 74 6f 6b 2d 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 | tok-number">13</span>);.}</code> |
| 8b1e0 | 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 |
| 8b200 | 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 |
| 8b220 | 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 |
| 8b240 | 74 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 7a 69 67 3c 2f | t.test_fibonacci_recursion.zig</ |
| 8b260 | 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 66 69 62 6f 6e 61 63 63 69 5f 72 65 63 75 72 73 69 6f | kbd>.1/1.test_fibonacci_recursio |
| 8b280 | 6e 2e 74 65 73 74 2e 66 69 62 6f 6e 61 63 63 69 2e 2e 2e 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 | n.test.fibonacci...OK.All.1.test |
| 8b2a0 | 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> |
| 8b2c0 | 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 6d 61 67 69 6e 65 20 69 66 20 77 65 20 | ........<p>.......Imagine.if.we. |
| 8b2e0 | 68 61 64 20 66 6f 72 67 6f 74 74 65 6e 20 74 68 65 20 62 61 73 65 20 63 61 73 65 20 6f 66 20 74 | had.forgotten.the.base.case.of.t |
| 8b300 | 68 65 20 72 65 63 75 72 73 69 76 65 20 66 75 6e 63 74 69 6f 6e 20 61 6e 64 20 74 72 69 65 64 20 | he.recursive.function.and.tried. |
| 8b320 | 74 6f 20 72 75 6e 20 74 68 65 20 74 65 73 74 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 | to.run.the.tests:.......</p>.... |
| 8b340 | 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 |
| 8b360 | 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 66 | g-cap"><cite.class="file">test_f |
| 8b380 | 69 62 6f 6e 61 63 63 69 5f 63 6f 6d 70 74 69 6d 65 5f 6f 76 65 72 66 6c 6f 77 2e 7a 69 67 3c 2f | ibonacci_comptime_overflow.zig</ |
| 8b3a0 | 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 |
| 8b3c0 | 61 6e 20 63 6c 61 73 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 |
| 8b3e0 | 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 |
| 8b400 | 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 |
| 8b420 | 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 |
| 8b440 | 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 |
| 8b460 | 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- |
| 8b480 | 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 3c 73 70 61 | fn">fibonacci</span>(index:.<spa |
| 8b4a0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 29 20 3c | n.class="tok-type">u32</span>).< |
| 8b4c0 | 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> |
| 8b4e0 | 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" |
| 8b500 | 3e 2f 2f 69 66 20 28 69 6e 64 65 78 20 26 6c 74 3b 20 32 29 20 72 65 74 75 72 6e 20 69 6e 64 65 | >//if.(index.<.2).return.inde |
| 8b520 | 78 3b 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | x;</span>.....<span.class="tok-k |
| 8b540 | 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 66 69 62 6f 6e 61 63 63 69 28 69 6e 64 65 78 | w">return</span>.fibonacci(index |
| 8b560 | 20 2d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 | .-.<span.class="tok-number">1</s |
| 8b580 | 70 61 6e 3e 29 20 2b 20 66 69 62 6f 6e 61 63 63 69 28 69 6e 64 65 78 20 2d 20 3c 73 70 61 6e 20 | pan>).+.fibonacci(index.-.<span. |
| 8b5a0 | 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 0a | class="tok-number">2</span>);.}. |
| 8b5c0 | 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 |
| 8b5e0 | 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 69 | >.<span.class="tok-str">"fi |
| 8b600 | 62 6f 6e 61 63 63 69 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e | bonacci"</span>.{.....<span |
| 8b620 | 20 63 6c 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 70 61 6e | .class="tok-kw">try</span>.<span |
| 8b640 | 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>. |
| 8b660 | 65 78 70 65 63 74 28 66 69 62 6f 6e 61 63 63 69 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | expect(fibonacci(<span.class="to |
| 8b680 | 6b 2d 6e 75 6d 62 65 72 22 3e 37 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 | k-number">7</span>).==.<span.cla |
| 8b6a0 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 33 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 | ss="tok-number">13</span>);.}</c |
| 8b6c0 | 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 |
| 8b6e0 | 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</ |
| 8b700 | 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 |
| 8b720 | 20 74 65 73 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 6f 76 | .test.test_fibonacci_comptime_ov |
| 8b740 | 65 72 66 6c 6f 77 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 | erflow.zig</kbd>.<span.class="sg |
| 8b760 | 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e | r-1m">/home/andy/dev/zig/doc/lan |
| 8b780 | 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 6f 76 65 | gref/test_fibonacci_comptime_ove |
| 8b7a0 | 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 6e 20 63 6c 61 | rflow.zig:5:28:.</span><span.cla |
| 8b7c0 | 73 73 3d 22 73 67 72 2d 33 31 6d 22 3e 65 72 72 6f 72 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e | ss="sgr-31m">error:.</span><span |
| 8b7e0 | 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 20 69 6e 74 65 | .class="sgr-1m">overflow.of.inte |
| 8b800 | 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 2d 31 27 0a 3c | ger.type.'u32'.with.value.'-1'.< |
| 8b820 | 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 65 78 | /span>....return.fibonacci(index |
| 8b840 | 20 2d 20 31 29 20 2b 20 66 69 62 6f 6e 61 63 63 69 28 69 6e 64 65 78 20 2d 20 32 29 3b 0a 20 20 | .-.1).+.fibonacci(index.-.2);... |
| 8b860 | 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=" |
| 8b880 | 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 73 70 61 6e 20 | sgr-32m">~~~~~~^~~.</span><span. |
| 8b8a0 | 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 | class="sgr-1m">/home/andy/dev/zi |
| 8b8c0 | 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 66 69 62 6f 6e 61 63 63 69 5f 63 6f 6d | g/doc/langref/test_fibonacci_com |
| 8b8e0 | 70 74 69 6d 65 5f 6f 76 65 72 66 6c 6f 77 2e 7a 69 67 3a 35 3a 32 31 3a 20 3c 2f 73 70 61 6e 3e | ptime_overflow.zig:5:21:.</span> |
| 8b900 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 36 6d 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 | <span.class="sgr-36m">note:.</sp |
| 8b920 | 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 63 61 6c 6c 65 64 20 61 | an><span.class="sgr-1m">called.a |
| 8b940 | 74 20 63 6f 6d 70 74 69 6d 65 20 68 65 72 65 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 | t.comptime.here</span><span.clas |
| 8b960 | 73 3d 22 73 67 72 2d 32 6d 22 3e 20 28 37 20 74 69 6d 65 73 29 0a 3c 2f 73 70 61 6e 3e 20 20 20 | s="sgr-2m">.(7.times).</span>... |
| 8b980 | 20 72 65 74 75 72 6e 20 66 69 62 6f 6e 61 63 63 69 28 69 6e 64 65 78 20 2d 20 31 29 20 2b 20 66 | .return.fibonacci(index.-.1).+.f |
| 8b9a0 | 69 62 6f 6e 61 63 63 69 28 69 6e 64 65 78 20 2d 20 32 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 | ibonacci(index.-.2);............ |
| 8b9c0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 7e 7e 7e 7e 7e 7e 7e 7e 7e 5e | <span.class="sgr-32m">~~~~~~~~~^ |
| 8b9e0 | 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 | ~~~~~~~~~~.</span><span.class="s |
| 8ba00 | 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 | gr-1m">/home/andy/dev/zig/doc/la |
| 8ba20 | 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 65 5f 6f 76 | ngref/test_fibonacci_comptime_ov |
| 8ba40 | 65 72 66 6c 6f 77 2e 7a 69 67 3a 39 3a 33 34 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c | erflow.zig:9:34:.</span><span.cl |
| 8ba60 | 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 |
| 8ba80 | 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 63 61 6c 6c 65 64 20 61 74 20 63 6f 6d 70 74 69 | .class="sgr-1m">called.at.compti |
| 8baa0 | 6d 65 20 68 65 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 | me.here.</span>....try.comptime. |
| 8bac0 | 65 78 70 65 63 74 28 66 69 62 6f 6e 61 63 63 69 28 37 29 20 3d 3d 20 31 33 29 3b 0a 20 20 20 20 | expect(fibonacci(7).==.13);..... |
| 8bae0 | 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= |
| 8bb00 | 22 73 67 72 2d 33 32 6d 22 3e 7e 7e 7e 7e 7e 7e 7e 7e 7e 5e 7e 7e 0a 3c 2f 73 70 61 6e 3e 0a 3c | "sgr-32m">~~~~~~~~~^~~.</span>.< |
| 8bb20 | 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> |
| 8bb40 | 0a 20 20 20 20 20 20 54 68 65 20 63 6f 6d 70 69 6c 65 72 20 70 72 6f 64 75 63 65 73 20 61 6e 20 | .......The.compiler.produces.an. |
| 8bb60 | 65 72 72 6f 72 20 77 68 69 63 68 20 69 73 20 61 20 73 74 61 63 6b 20 74 72 61 63 65 20 66 72 6f | error.which.is.a.stack.trace.fro |
| 8bb80 | 6d 20 74 72 79 69 6e 67 20 74 6f 20 65 76 61 6c 75 61 74 65 20 74 68 65 0a 20 20 20 20 20 20 66 | m.trying.to.evaluate.the.......f |
| 8bba0 | 75 6e 63 74 69 6f 6e 20 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 2e 0a 20 20 20 20 20 20 3c | unction.at.compile-time........< |
| 8bbc0 | 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 4c 75 63 6b 69 6c 79 2c 20 77 65 20 | /p>.......<p>.......Luckily,.we. |
| 8bbe0 | 75 73 65 64 20 61 6e 20 75 6e 73 69 67 6e 65 64 20 69 6e 74 65 67 65 72 2c 20 61 6e 64 20 73 6f | used.an.unsigned.integer,.and.so |
| 8bc00 | 20 77 68 65 6e 20 77 65 20 74 72 69 65 64 20 74 6f 20 73 75 62 74 72 61 63 74 20 31 20 66 72 6f | .when.we.tried.to.subtract.1.fro |
| 8bc20 | 6d 20 30 2c 20 69 74 20 74 72 69 67 67 65 72 65 64 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d | m.0,.it.triggered.......<a.href= |
| 8bc40 | 22 23 49 6c 6c 65 67 61 6c 2d 42 65 68 61 76 69 6f 72 22 3e 49 6c 6c 65 67 61 6c 20 42 65 68 61 | "#Illegal-Behavior">Illegal.Beha |
| 8bc60 | 76 69 6f 72 3c 2f 61 3e 2c 20 77 68 69 63 68 20 69 73 20 61 6c 77 61 79 73 20 61 20 63 6f 6d 70 | vior</a>,.which.is.always.a.comp |
| 8bc80 | 69 6c 65 20 65 72 72 6f 72 20 69 66 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 20 6b 6e 6f 77 73 20 | ile.error.if.the.compiler.knows. |
| 8bca0 | 69 74 20 68 61 70 70 65 6e 65 64 2e 0a 20 20 20 20 20 20 42 75 74 20 77 68 61 74 20 77 6f 75 6c | it.happened........But.what.woul |
| 8bcc0 | 64 20 68 61 76 65 20 68 61 70 70 65 6e 65 64 20 69 66 20 77 65 20 75 73 65 64 20 61 20 73 69 67 | d.have.happened.if.we.used.a.sig |
| 8bce0 | 6e 65 64 20 69 6e 74 65 67 65 72 3f 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 | ned.integer?.......</p>.......<f |
| 8bd00 | 69 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 |
| 8bd20 | 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 66 69 62 6f 6e 61 63 63 69 5f 63 | "><cite.class="file">fibonacci_c |
| 8bd40 | 6f 6d 70 74 69 6d 65 5f 69 6e 66 69 6e 69 74 65 5f 72 65 63 75 72 73 69 6f 6e 2e 7a 69 67 3c 2f | omptime_infinite_recursion.zig</ |
| 8bd60 | 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 |
| 8bd80 | 61 6e 20 63 6c 61 73 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 |
| 8bda0 | 73 73 65 72 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e | ssert.=.<span.class="tok-builtin |
| 8bdc0 | 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 |
| 8bde0 | 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 |
| 8be00 | 65 62 75 67 2e 61 73 73 65 72 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | ebug.assert;..<span.class="tok-k |
| 8be20 | 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 |
| 8be40 | 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 3c 73 70 61 6e 20 | ">fibonacci</span>(index:.<span. |
| 8be60 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 | class="tok-type">i32</span>).<sp |
| 8be80 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 7b | an.class="tok-type">i32</span>.{ |
| 8bea0 | 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">/ |
| 8bec0 | 2f 69 66 20 28 69 6e 64 65 78 20 26 6c 74 3b 20 32 29 20 72 65 74 75 72 6e 20 69 6e 64 65 78 3b | /if.(index.<.2).return.index; |
| 8bee0 | 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" |
| 8bf00 | 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 66 69 62 6f 6e 61 63 63 69 28 69 6e 64 65 78 20 2d | >return</span>.fibonacci(index.- |
| 8bf20 | 20 3c 73 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 |
| 8bf40 | 6e 3e 29 20 2b 20 66 69 62 6f 6e 61 63 63 69 28 69 6e 64 65 78 20 2d 20 3c 73 70 61 6e 20 63 6c | n>).+.fibonacci(index.-.<span.cl |
| 8bf60 | 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 0a 0a 3c | ass="tok-number">2</span>);.}..< |
| 8bf80 | 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>. |
| 8bfa0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 66 69 62 6f | <span.class="tok-str">"fibo |
| 8bfc0 | 6e 61 63 63 69 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 | nacci"</span>.{.....<span.c |
| 8bfe0 | 6c 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 70 61 6e 20 63 | lass="tok-kw">try</span>.<span.c |
| 8c000 | 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 61 73 | lass="tok-kw">comptime</span>.as |
| 8c020 | 73 65 72 74 28 66 69 62 6f 6e 61 63 63 69 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | sert(fibonacci(<span.class="tok- |
| 8c040 | 6e 75 6d 62 65 72 22 3e 37 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | number">7</span>).==.<span.class |
| 8c060 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 33 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 | ="tok-number">13</span>);.}</cod |
| 8c080 | 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>.... |
| 8c0a0 | 20 20 20 54 68 65 20 63 6f 6d 70 69 6c 65 72 20 69 73 20 73 75 70 70 6f 73 65 64 20 74 6f 20 6e | ...The.compiler.is.supposed.to.n |
| 8c0c0 | 6f 74 69 63 65 20 74 68 61 74 20 65 76 61 6c 75 61 74 69 6e 67 20 74 68 69 73 20 66 75 6e 63 74 | otice.that.evaluating.this.funct |
| 8c0e0 | 69 6f 6e 20 61 74 0a 20 20 20 20 20 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 74 6f 6f 6b 20 6d | ion.at.......compile-time.took.m |
| 8c100 | 6f 72 65 20 74 68 61 6e 20 31 30 30 30 20 62 72 61 6e 63 68 65 73 2c 20 61 6e 64 20 74 68 75 73 | ore.than.1000.branches,.and.thus |
| 8c120 | 20 65 6d 69 74 73 20 61 6e 20 65 72 72 6f 72 20 61 6e 64 0a 20 20 20 20 20 20 67 69 76 65 73 20 | .emits.an.error.and.......gives. |
| 8c140 | 75 70 2e 20 49 66 20 74 68 65 20 70 72 6f 67 72 61 6d 6d 65 72 20 77 61 6e 74 73 20 74 6f 20 69 | up..If.the.programmer.wants.to.i |
| 8c160 | 6e 63 72 65 61 73 65 20 74 68 65 20 62 75 64 67 65 74 20 66 6f 72 20 63 6f 6d 70 69 6c 65 2d 74 | ncrease.the.budget.for.compile-t |
| 8c180 | 69 6d 65 0a 20 20 20 20 20 20 63 6f 6d 70 75 74 61 74 69 6f 6e 2c 20 74 68 65 79 20 63 61 6e 20 | ime.......computation,.they.can. |
| 8c1a0 | 75 73 65 20 61 20 62 75 69 6c 74 2d 69 6e 20 66 75 6e 63 74 69 6f 6e 20 63 61 6c 6c 65 64 0a 20 | use.a.built-in.function.called.. |
| 8c1c0 | 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 73 65 74 45 76 61 6c 42 72 61 6e 63 68 51 75 6f 74 | .....<a.href="#setEvalBranchQuot |
| 8c1e0 | 61 22 3e 40 73 65 74 45 76 61 6c 42 72 61 6e 63 68 51 75 6f 74 61 3c 2f 61 3e 20 74 6f 20 63 68 | a">@setEvalBranchQuota</a>.to.ch |
| 8c200 | 61 6e 67 65 20 74 68 65 20 64 65 66 61 75 6c 74 20 6e 75 6d 62 65 72 20 31 30 30 30 20 74 6f 0a | ange.the.default.number.1000.to. |
| 8c220 | 20 20 20 20 20 20 73 6f 6d 65 74 68 69 6e 67 20 65 6c 73 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e | ......something.else........</p> |
| 8c240 | 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 48 6f 77 65 76 65 72 2c 20 74 68 65 72 65 20 | .......<p>.......However,.there. |
| 8c260 | 69 73 20 61 20 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d | is.a.<a.href="https://github.com |
| 8c280 | 2f 7a 69 67 6c 61 6e 67 2f 7a 69 67 2f 69 73 73 75 65 73 2f 31 33 37 32 34 22 3e 64 65 73 69 67 | /ziglang/zig/issues/13724">desig |
| 8c2a0 | 6e 0a 20 20 20 20 20 20 66 6c 61 77 20 69 6e 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 3c 2f 61 3e | n.......flaw.in.the.compiler</a> |
| 8c2c0 | 20 63 61 75 73 69 6e 67 20 69 74 20 74 6f 20 73 74 61 63 6b 20 6f 76 65 72 66 6c 6f 77 20 69 6e | .causing.it.to.stack.overflow.in |
| 8c2e0 | 73 74 65 61 64 20 6f 66 20 68 61 76 69 6e 67 20 74 68 65 20 70 72 6f 70 65 72 0a 20 20 20 20 20 | stead.of.having.the.proper...... |
| 8c300 | 20 62 65 68 61 76 69 6f 72 20 68 65 72 65 2e 20 49 27 6d 20 74 65 72 72 69 62 6c 79 20 73 6f 72 | .behavior.here..I'm.terribly.sor |
| 8c320 | 72 79 20 61 62 6f 75 74 20 74 68 61 74 2e 20 49 20 68 6f 70 65 20 74 6f 20 67 65 74 20 74 68 69 | ry.about.that..I.hope.to.get.thi |
| 8c340 | 73 20 72 65 73 6f 6c 76 65 64 0a 20 20 20 20 20 20 62 65 66 6f 72 65 20 74 68 65 20 6e 65 78 74 | s.resolved.......before.the.next |
| 8c360 | 20 72 65 6c 65 61 73 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 | .release........</p>.......<p>.. |
| 8c380 | 20 20 20 20 20 57 68 61 74 20 69 66 20 77 65 20 66 69 78 20 74 68 65 20 62 61 73 65 20 63 61 73 | .....What.if.we.fix.the.base.cas |
| 8c3a0 | 65 2c 20 62 75 74 20 70 75 74 20 74 68 65 20 77 72 6f 6e 67 20 76 61 6c 75 65 20 69 6e 20 74 68 | e,.but.put.the.wrong.value.in.th |
| 8c3c0 | 65 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 65 78 70 65 63 74 3c 2f 63 6f 64 65 3e 20 6c 69 6e 65 | e.......<code>expect</code>.line |
| 8c3e0 | 3f 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 | ?.......</p>.......<figure><figc |
| 8c400 | 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 |
| 8c420 | 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 66 69 62 6f 6e 61 63 63 69 5f 63 6f 6d 70 74 69 6d | ss="file">test_fibonacci_comptim |
| 8c440 | 65 5f 75 6e 72 65 61 63 68 61 62 6c 65 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 | e_unreachable.zig</cite></figcap |
| 8c460 | 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 |
| 8c480 | 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 |
| 8c4a0 | 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 |
| 8c4c0 | 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">" |
| 8c4e0 | 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;. |
| 8c500 | 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>. |
| 8c520 | 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</ |
| 8c540 | 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 |
| 8c560 | 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 |
| 8c580 | 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 |
| 8c5a0 | 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 20 26 6c | ass="tok-kw">if</span>.(index.&l |
| 8c5c0 | 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 | t;.<span.class="tok-number">2</s |
| 8c5e0 | 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 74 75 72 | pan>).<span.class="tok-kw">retur |
| 8c600 | 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 73 73 3d | n</span>.index;.....<span.class= |
| 8c620 | 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 63 63 69 | "tok-kw">return</span>.fibonacci |
| 8c640 | 28 69 6e 64 65 78 20 2d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | (index.-.<span.class="tok-number |
| 8c660 | 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 20 2d 20 | ">1</span>).+.fibonacci(index.-. |
| 8c680 | 3c 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 |
| 8c6a0 | 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 | >);.}..<span.class="tok-kw">test |
| 8c6c0 | 3c 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 |
| 8c6e0 | 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 20 20 20 | uot;fibonacci"</span>.{.... |
| 8c700 | 20 3c 73 70 61 6e 20 63 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> |
| 8c720 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f | .<span.class="tok-kw">comptime</ |
| 8c740 | 73 70 61 6e 3e 20 61 73 73 65 72 74 28 66 69 62 6f 6e 61 63 63 69 28 3c 73 70 61 6e 20 63 6c 61 | span>.assert(fibonacci(<span.cla |
| 8c760 | 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 70 | ss="tok-number">7</span>).==.<sp |
| 8c780 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 39 39 39 39 39 3c 2f 73 70 61 | an.class="tok-number">99999</spa |
| 8c7a0 | 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 |
| 8c7c0 | 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 |
| 8c7e0 | 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>$ |
| 8c800 | 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 66 69 62 6f 6e 61 63 63 69 5f 63 6f | .<kbd>zig.test.test_fibonacci_co |
| 8c820 | 6d 70 74 69 6d 65 5f 75 6e 72 65 61 63 68 61 62 6c 65 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 3c 73 70 | mptime_unreachable.zig</kbd>.<sp |
| 8c840 | 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 | an.class="sgr-1m">/home/andy/dev |
| 8c860 | 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 64 65 62 75 67 2e 7a 69 67 3a 35 35 39 3a 31 34 3a 20 3c | /zig/lib/std/debug.zig:559:14:.< |
| 8c880 | 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 |
| 8c8a0 | 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 |
| 8c8c0 | 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>. |
| 8c8e0 | 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 |
| 8c900 | 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 |
| 8c920 | 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 |
| 8c940 | 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 | pan><span.class="sgr-1m">/home/a |
| 8c960 | 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 66 69 62 | ndy/dev/zig/doc/langref/test_fib |
| 8c980 | 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 2e 7a 69 67 3a | onacci_comptime_unreachable.zig: |
| 8c9a0 | 39 3a 32 34 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 36 | 9:24:.</span><span.class="sgr-36 |
| 8c9c0 | 6d 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 | m">note:.</span><span.class="sgr |
| 8c9e0 | 2d 31 6d 22 3e 63 61 6c 6c 65 64 20 61 74 20 63 6f 6d 70 74 69 6d 65 20 68 65 72 65 0a 3c 2f 73 | -1m">called.at.comptime.here.</s |
| 8ca00 | 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 74 28 66 69 62 6f | pan>....try.comptime.assert(fibo |
| 8ca20 | 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 20 20 20 20 20 20 | nacci(7).==.99999);............. |
| 8ca40 | 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">~~~~~ |
| 8ca60 | 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 2f 73 70 61 6e 3e | ~^~~~~~~~~~~~~~~~~~~~~~~.</span> |
| 8ca80 | 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 0a 20 20 20 20 20 20 | .</samp></pre></figure>......... |
| 8caa0 | 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 74 61 69 6e 65 72 | <p>.......At.<a.href="#Container |
| 8cac0 | 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 74 73 69 64 65 20 | s">container</a>.level.(outside. |
| 8cae0 | 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 65 73 73 69 6f 6e | of.any.function),.all.expression |
| 8cb00 | 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 64 65 3e 3c 73 70 | s.are.implicitly.......<code><sp |
| 8cb20 | 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 |
| 8cb40 | 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 20 6d 65 61 6e 73 | ></code>.expressions..This.means |
| 8cb60 | 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 20 74 6f 0a 20 20 | .that.we.can.use.functions.to... |
| 8cb80 | 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 74 69 63 20 64 61 | ....initialize.complex.static.da |
| 8cba0 | 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 3e 0a 20 20 20 20 | ta..For.example:.......</p>..... |
| 8cbc0 | 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 |
| 8cbe0 | 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 |
| 8cc00 | 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 |
| 8cc20 | 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 3c 70 72 65 3e 3c | ns.zig</cite></figcaption><pre>< |
| 8cc40 | 63 6f 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< |
| 8cc60 | 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 69 72 73 74 4e 50 | /span>.first_25_primes.=.firstNP |
| 8cc80 | 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 62 65 72 22 3e 32 | rimes(<span.class="tok-number">2 |
| 8cca0 | 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 6b 2d 6b 77 22 3e | 5</span>);.<span.class="tok-kw"> |
| 8ccc0 | 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 32 35 5f 70 72 69 | const</span>.sum_of_first_25_pri |
| 8cce0 | 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 69 6d 65 73 29 3b | mes.=.sum(&first_25_primes); |
| 8cd00 | 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> |
| 8cd20 | 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 74 4e 50 72 69 6d | .<span.class="tok-fn">firstNPrim |
| 8cd40 | 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 2d 6b 77 22 3e 63 | es</span>(<span.class="tok-kw">c |
| 8cd60 | 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 6e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | omptime</span>.n:.<span.class="t |
| 8cd80 | 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 3c 73 70 61 6e 20 | ok-type">usize</span>).[n]<span. |
| 8cda0 | 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>.{... |
| 8cdc0 | 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 |
| 8cde0 | 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 73 73 3d 22 74 6f | >.prime_list:.[n]<span.class="to |
| 8ce00 | 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 |
| 8ce20 | 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 75 6e 64 65 66 69 6e 65 64 3c 2f 73 70 61 6e 3e 3b 0a 20 20 | ="tok-null">undefined</span>;... |
| 8ce40 | 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 |
| 8ce60 | 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 22 74 6f 6b 2d 74 | >.next_index:.<span.class="tok-t |
| 8ce80 | 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= |
| 8cea0 | 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 |
| 8cec0 | 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_ |
| 8cee0 | 6e 75 6d 62 65 72 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 | number:.<span.class="tok-type">i |
| 8cf00 | 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 |
| 8cf20 | 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ber">2</span>;.....<span.class=" |
| 8cf40 | 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 5f 69 6e 64 65 78 | tok-kw">while</span>.(next_index |
| 8cf60 | 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 65 73 74 5f 6e 75 | .<.prime_list.len).:.(test_nu |
| 8cf80 | 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 75 6d 62 65 72 22 | mber.+=.<span.class="tok-number" |
| 8cfa0 | 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 61 73 73 | >1</span>).{.........<span.class |
| 8cfc0 | 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 70 72 69 6d 65 5f | ="tok-kw">var</span>.test_prime_ |
| 8cfe0 | 69 6e 64 65 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 | index:.<span.class="tok-type">us |
| 8d000 | 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 |
| 8d020 | 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 6e 20 63 6c | mber">0</span>;.........<span.cl |
| 8d040 | 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 5f 70 72 69 6d 65 | ass="tok-kw">var</span>.is_prime |
| 8d060 | 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 2f | .=.<span.class="tok-null">true</ |
| 8d080 | 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- |
| 8d0a0 | 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 6d 65 5f 69 6e 64 | kw">while</span>.(test_prime_ind |
| 8d0c0 | 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 74 5f 70 72 69 6d | ex.<.next_index).:.(test_prim |
| 8d0e0 | 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 6b 2d 6e 75 6d 62 | e_index.+=.<span.class="tok-numb |
| 8d100 | 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 20 20 3c 73 70 61 | er">1</span>).{.............<spa |
| 8d120 | 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 74 65 73 74 | n.class="tok-kw">if</span>.(test |
| 8d140 | 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 70 72 69 6d 65 5f | _number.%.prime_list[test_prime_ |
| 8d160 | 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 2d 6e 75 6d 62 65 | index].==.<span.class="tok-numbe |
| 8d180 | 72 22 3e 30 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 | r">0</span>).{.................i |
| 8d1a0 | 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 2d 6e 75 6c 6c 22 | s_prime.=.<span.class="tok-null" |
| 8d1c0 | 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 20 20 20 20 20 3c | >false</span>;.................< |
| 8d1e0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 62 72 65 61 6b 3c 2f 73 70 61 6e 3e | span.class="tok-kw">break</span> |
| 8d200 | 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 | ;.............}.........}....... |
| 8d220 | 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> |
| 8d240 | 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 70 72 69 6d 65 5f | .(is_prime).{.............prime_ |
| 8d260 | 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 6d 62 65 72 3b 0a | list[next_index].=.test_number;. |
| 8d280 | 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 3c 73 70 61 6e 20 | ............next_index.+=.<span. |
| 8d2a0 | 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>;.... |
| 8d2c0 | 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 |
| 8d2e0 | 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 6c 69 73 74 3b 0a | k-kw">return</span>.prime_list;. |
| 8d300 | 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e | }..<span.class="tok-kw">fn</span |
| 8d320 | 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 3c 2f 73 70 61 6e | >.<span.class="tok-fn">sum</span |
| 8d340 | 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 74 6f 6b 2d 6b 77 | >(numbers:.[]<span.class="tok-kw |
| 8d360 | 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- |
| 8d380 | 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 |
| 8d3a0 | 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. |
| 8d3c0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 72 65 73 75 6c 74 | class="tok-kw">var</span>.result |
| 8d3e0 | 3a 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 |
| 8d400 | 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 |
| 8d420 | 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 |
| 8d440 | 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 20 7b 0a 20 20 20 | ">for</span>.(numbers).|x|.{.... |
| 8d460 | 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 20 20 3c 73 70 61 | .....result.+=.x;.....}.....<spa |
| 8d480 | 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 72 | n.class="tok-kw">return</span>.r |
| 8d4a0 | 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 2d 6b 77 22 3e 74 | esult;.}..<span.class="tok-kw">t |
| 8d4c0 | 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" |
| 8d4e0 | 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 74 3b 3c 2f 73 70 | >"variable.values"</sp |
| 8d500 | 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 | an>.{.....<span.class="tok-kw">t |
| 8d520 | 72 79 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 | ry</span>.<span.class="tok-built |
| 8d540 | 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=" |
| 8d560 | 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>) |
| 8d580 | 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 73 74 5f 32 35 5f | .testing.expect(sum_of_first_25_ |
| 8d5a0 | 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 2d 6e 75 6d 62 65 | primes.==.<span.class="tok-numbe |
| 8d5c0 | 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 2f 70 72 65 3e 3c | r">1060</span>);.}</code></pre>< |
| 8d5e0 | 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 |
| 8d600 | 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> |
| 8d620 | 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_ |
| 8d640 | 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 72 65 73 73 | container-level_comptime_express |
| 8d660 | 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 6e 74 61 69 6e 65 | ions.zig</kbd>.1/1.test_containe |
| 8d680 | 72 2d 6c 65 76 65 6c 5f 63 6f 6d 70 74 69 6d 65 5f 65 78 70 72 65 73 73 69 6f 6e 73 2e 74 65 73 | r-level_comptime_expressions.tes |
| 8d6a0 | 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 20 31 20 74 65 73 | t.variable.values...OK.All.1.tes |
| 8d6c0 | 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 |
| 8d6e0 | 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 20 63 6f 6d 70 69 | >........<p>.......When.we.compi |
| 8d700 | 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 61 74 65 73 20 74 | le.this.program,.Zig.generates.t |
| 8d720 | 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 65 20 61 6e 73 77 | he.constants.......with.the.answ |
| 8d740 | 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 74 68 65 20 6c 69 | er.pre-computed..Here.are.the.li |
| 8d760 | 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 4d 20 49 52 3a 0a | nes.from.the.generated.LLVM.IR:. |
| 8d780 | 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 | ......</p>.......<pre><code.clas |
| 8d7a0 | 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 61 6d 65 64 5f 61 | s="llvm">@0.=.internal.unnamed_a |
| 8d7c0 | 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 33 32 20 32 2c 20 | ddr.constant.[25.x.i32].[i32.2,. |
| 8d7e0 | 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 31 2c 20 69 33 32 | i32.3,.i32.5,.i32.7,.i32.11,.i32 |
| 8d800 | 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 33 2c 20 69 33 32 | .13,.i32.17,.i32.19,.i32.23,.i32 |
| 8d820 | 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 31 2c 20 69 33 32 | .29,.i32.31,.i32.37,.i32.41,.i32 |
| 8d840 | 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 39 2c 20 69 33 32 | .43,.i32.47,.i32.53,.i32.59,.i32 |
| 8d860 | 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 33 2c 20 69 33 32 | .61,.i32.67,.i32.71,.i32.73,.i32 |
| 8d880 | 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 37 5d 0a 40 31 20 | .79,.i32.83,.i32.89,.i32.97].@1. |
| 8d8a0 | 3d 20 69 6e 74 65 72 6e 61 6c 20 75 6e 6e 61 6d 65 64 5f 61 64 64 72 20 63 6f 6e 73 74 61 6e 74 | =.internal.unnamed_addr.constant |
| 8d8c0 | 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 20 20 20 3c 70 3e | .i32.1060</code></pre>.......<p> |
| 8d8e0 | 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 74 20 68 61 76 65 | .......Note.that.we.did.not.have |
| 8d900 | 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 74 68 20 74 68 65 | .to.do.anything.special.with.the |
| 8d920 | 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 2e 20 46 6f 72 20 | .syntax.of.these.functions..For. |
| 8d940 | 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 6c 6c 20 74 68 65 | example,.......we.could.call.the |
| 8d960 | 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 20 61 73 20 69 73 | .<code>sum</code>.function.as.is |
| 8d980 | 20 77 69 74 68 20 61 20 73 6c 69 63 65 20 6f 66 20 6e 75 6d 62 65 72 73 20 77 68 6f 73 65 20 6c | .with.a.slice.of.numbers.whose.l |
| 8d9a0 | 65 6e 67 74 68 20 61 6e 64 20 76 61 6c 75 65 73 20 77 65 72 65 0a 20 20 20 20 20 20 6f 6e 6c 79 | ength.and.values.were.......only |
| 8d9c0 | 20 6b 6e 6f 77 6e 20 61 74 20 72 75 6e 2d 74 69 6d 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 | .known.at.run-time........</p>.. |
| 8d9e0 | 20 20 20 20 20 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 47 65 6e 65 72 | ...................<h3.id="Gener |
| 8da00 | 69 63 2d 44 61 74 61 2d 53 74 72 75 63 74 75 72 65 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f | ic-Data-Structures"><a.href="#to |
| 8da20 | 63 2d 47 65 6e 65 72 69 63 2d 44 61 74 61 2d 53 74 72 75 63 74 75 72 65 73 22 3e 47 65 6e 65 72 | c-Generic-Data-Structures">Gener |
| 8da40 | 69 63 20 44 61 74 61 20 53 74 72 75 63 74 75 72 65 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d | ic.Data.Structures</a>.<a.class= |
| 8da60 | 22 68 64 72 22 20 68 72 65 66 3d 22 23 47 65 6e 65 72 69 63 2d 44 61 74 61 2d 53 74 72 75 63 74 | "hdr".href="#Generic-Data-Struct |
| 8da80 | 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 20 20 20 | ures">..</a></h3>........<p>.... |
| 8daa0 | 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 69 6c 69 74 69 65 | ...Zig.uses.comptime.capabilitie |
| 8dac0 | 73 20 74 6f 20 69 6d 70 6c 65 6d 65 6e 74 20 67 65 6e 65 72 69 63 20 64 61 74 61 20 73 74 72 75 | s.to.implement.generic.data.stru |
| 8dae0 | 63 74 75 72 65 73 20 77 69 74 68 6f 75 74 20 69 6e 74 72 6f 64 75 63 69 6e 67 20 61 6e 79 0a 20 | ctures.without.introducing.any.. |
| 8db00 | 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 20 20 20 20 20 20 | .....special-case.syntax........ |
| 8db20 | 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 61 6e 20 65 78 61 | </p>.......<p>....Here.is.an.exa |
| 8db40 | 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 73 74 3c 2f 63 6f | mple.of.a.generic.<code>List</co |
| 8db60 | 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 3c 2f 70 3e 0a 20 | de>.data.structure........</p>.. |
| 8db80 | 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=" |
| 8dba0 | 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 67 65 6e 65 | zig-cap"><cite.class="file">gene |
| 8dbc0 | 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 74 65 3e 3c 2f 66 | ric_data_structure.zig</cite></f |
| 8dbe0 | 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 |
| 8dc00 | 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= |
| 8dc20 | 22 74 6f 6b 2d 66 6e 22 3e 4c 69 73 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 | "tok-fn">List</span>(<span.class |
| 8dc40 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 54 3a 20 3c 73 70 | ="tok-kw">comptime</span>.T:.<sp |
| 8dc60 | 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 29 | an.class="tok-type">type</span>) |
| 8dc80 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 | .<span.class="tok-type">type</sp |
| 8dca0 | 61 6e 3e 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 |
| 8dcc0 | 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 |
| 8dce0 | 22 3e 73 74 72 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 69 74 65 6d 73 3a | ">struct</span>.{.........items: |
| 8dd00 | 20 5b 5d 54 2c 0a 20 20 20 20 20 20 20 20 6c 65 6e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | .[]T,.........len:.<span.class=" |
| 8dd20 | 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 7d 3b 0a 7d | tok-type">usize</span>,.....};.} |
| 8dd40 | 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 |
| 8dd60 | 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 74 75 72 65 20 63 | he.generic.List.data.structure.c |
| 8dd80 | 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 69 6e 67 20 69 6e | an.be.instantiated.by.passing.in |
| 8dda0 | 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 73 3d 22 74 6f 6b | .a.type:</span>.<span.class="tok |
| 8ddc0 | 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 62 75 66 66 65 72 3a 20 5b 3c 73 70 61 6e 20 63 | -kw">var</span>.buffer:.[<span.c |
| 8dde0 | 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 73 70 61 | lass="tok-number">10</span>]<spa |
| 8de00 | 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>.=. |
| 8de20 | 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 |
| 8de40 | 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 76 61 | </span>;.<span.class="tok-kw">va |
| 8de60 | 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 20 63 6c 61 73 73 | r</span>.list.=.List(<span.class |
| 8de80 | 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 2e 69 74 | ="tok-type">i32</span>){......it |
| 8dea0 | 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 6e 20 3d 20 3c 73 | ems.=.&buffer,......len.=.<s |
| 8dec0 | 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>, |
| 8dee0 | 0a 7d 3b 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 | .};</code></pre></figure>....... |
| 8df00 | 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 20 61 20 66 75 6e | .<p>.......That's.it..It's.a.fun |
| 8df20 | 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 79 6d 6f 75 73 20 | ction.that.returns.an.anonymous. |
| 8df40 | 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 74 72 75 63 | <code><span.class="tok-kw">struc |
| 8df60 | 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 20 74 68 65 20 70 | t</span></code>........For.the.p |
| 8df80 | 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 61 6e 64 20 64 65 | urposes.of.error.messages.and.de |
| 8dfa0 | 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 6d 65 0a 20 20 20 | bugging,.Zig.infers.the.name.... |
| 8dfc0 | 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 73 74 72 22 3e 26 | ...<code><span.class="tok-str">& |
| 8dfe0 | 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 3e 3c 2f 63 6f 64 | quot;List(i32)"</span></cod |
| 8e000 | 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 61 6e 64 20 70 61 | e>.from.the.function.name.and.pa |
| 8e020 | 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 74 69 6e 67 0a 20 | rameters.invoked.when.creating.. |
| 8e040 | 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 0a 20 20 20 20 20 | .....the.anonymous.struct....... |
| 8e060 | 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 78 70 6c 69 63 69 | .</p>.......<p>.......To.explici |
| 8e080 | 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 20 61 73 73 69 67 | tly.give.a.type.a.name,.we.assig |
| 8e0a0 | 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 3c 2f 70 3e 0a 20 | n.it.to.a.constant........</p>.. |
| 8e0c0 | 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=" |
| 8e0e0 | 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 61 6e 6f 6e | zig-cap"><cite.class="file">anon |
| 8e100 | 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 65 3e 3c 2f 66 69 | ymous_struct_name.zig</cite></fi |
| 8e120 | 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= |
| 8e140 | 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 4e 6f 64 65 20 3d 20 3c 73 70 | "tok-kw">const</span>.Node.=.<sp |
| 8e160 | 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>. |
| 8e180 | 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 6d 65 3a 20 5b 5d | {.....next:.?*Node,.....name:.[] |
| 8e1a0 | 3c 73 70 61 6e 20 63 6c 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 |
| 8e1c0 | 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 | >.<span.class="tok-type">u8</spa |
| 8e1e0 | 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 76 61 72 | n>,.};..<span.class="tok-kw">var |
| 8e200 | 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 20 2e 6e 65 78 74 | </span>.node_a.=.Node{......next |
| 8e220 | 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</ |
| 8e240 | 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 6c 61 73 73 3d 22 | span>,......name.=.<span.class=" |
| 8e260 | 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 3b 3c 2f 73 70 61 | tok-str">"Node.A"</spa |
| 8e280 | 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 76 61 72 | n>,.};..<span.class="tok-kw">var |
| 8e2a0 | 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 20 2e 6e 65 78 74 | </span>.node_b.=.Node{......next |
| 8e2c0 | 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 3d 20 3c 73 70 61 | .=.&node_a,......name.=.<spa |
| 8e2e0 | 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 64 65 20 42 26 71 | n.class="tok-str">"Node.B&q |
| 8e300 | 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 65 3e 3c 2f 66 69 | uot;</span>,.};</code></pre></fi |
| 8e320 | 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 6e 20 74 68 69 73 20 65 | gure>........<p>.......In.this.e |
| 8e340 | 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 64 65 3e 20 73 74 | xample,.the.<code>Node</code>.st |
| 8e360 | 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 20 20 20 54 68 69 | ruct.refers.to.itself........Thi |
| 8e380 | 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 76 65 6c 20 64 65 | s.works.because.all.top.level.de |
| 8e3a0 | 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 65 6e 64 65 6e 74 | clarations.are.order-independent |
| 8e3c0 | 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 70 69 6c 65 72 20 | ........As.long.as.the.compiler. |
| 8e3e0 | 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 74 68 65 20 73 74 | can.determine.the.size.of.the.st |
| 8e400 | 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 74 6f 20 69 74 73 | ruct,.it.is.free.to.refer.to.its |
| 8e420 | 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 63 6f 64 65 3e 4e | elf........In.this.case,.<code>N |
| 8e440 | 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 66 20 61 73 20 61 | ode</code>.refers.to.itself.as.a |
| 8e460 | 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 20 20 77 65 6c 6c | .pointer,.which.has.a.......well |
| 8e480 | 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 69 6d 65 2c 20 73 | -defined.size.at.compile.time,.s |
| 8e4a0 | 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 3e 0a 20 20 20 20 | o.it.works.fine........</p>..... |
| 8e4c0 | 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 79 2d 70 72 69 6e | .........<h3.id="Case-Study-prin |
| 8e4e0 | 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 73 65 2d 53 74 75 | t-in-Zig"><a.href="#toc-Case-Stu |
| 8e500 | 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 |
| 8e520 | 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 72 22 20 68 72 65 | nt.in.Zig</a>.<a.class="hdr".hre |
| 8e540 | 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 67 22 3e c2 a7 3c | f="#Case-Study-print-in-Zig">..< |
| 8e560 | 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 50 75 74 74 69 6e | /a></h3>........<p>.......Puttin |
| 8e580 | 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 74 27 73 20 73 65 | g.all.of.this.together,.let's.se |
| 8e5a0 | 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 6f 72 6b 73 20 69 | e.how.<code>print</code>.works.i |
| 8e5c0 | 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 69 67 75 72 65 3e | n.Zig........</p>.......<figure> |
| 8e5e0 | 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 |
| 8e600 | 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 63 69 74 65 3e 3c | e.class="file">print.zig</cite>< |
| 8e620 | 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 |
| 8e640 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 70 72 69 6e 74 20 3d | ss="tok-kw">const</span>.print.= |
| 8e660 | 20 3c 73 70 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 |
| 8e680 | 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"> |
| 8e6a0 | 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 64 65 62 75 67 2e 70 72 | "std"</span>).debug.pr |
| 8e6c0 | 69 6e 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 | int;..<span.class="tok-kw">const |
| 8e6e0 | 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 61 73 73 3d 22 74 | </span>.a_number:.<span.class="t |
| 8e700 | 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 |
| 8e720 | 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 70 61 | s="tok-number">1234</span>;.<spa |
| 8e740 | 6e 20 63 6c 61 73 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 | n.class="tok-kw">const</span>.a_ |
| 8e760 | 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 73 74 72 22 3e 26 | string.=.<span.class="tok-str">& |
| 8e780 | 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 0a 3c 73 70 61 6e | quot;foobar"</span>;..<span |
| 8e7a0 | 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 |
| 8e7c0 | 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. |
| 8e7e0 | 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 |
| 8e800 | 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>. |
| 8e820 | 7b 0a 20 20 20 20 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 | {.....print(<span.class="tok-str |
| 8e840 | 22 3e 26 71 75 6f 74 3b 68 65 72 65 20 69 73 20 61 20 73 74 72 69 6e 67 3a 20 27 7b 73 7d 27 20 | ">"here.is.a.string:.'{s}'. |
| 8e860 | 68 65 72 65 20 69 73 20 61 20 6e 75 6d 62 65 72 3a 20 7b 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 | here.is.a.number:.{}\n"</sp |
| 8e880 | 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 20 7d 29 3b 0a 7d | an>,..{.a_string,.a_number.});.} |
| 8e8a0 | 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 |
| 8e8c0 | 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 |
| 8e8e0 | 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> |
| 8e900 | 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 62 64 3e 0a 24 20 | zig.build-exe.print.zig</kbd>.$. |
| 8e920 | 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 20 61 20 73 74 72 | <kbd>./print</kbd>.here.is.a.str |
| 8e940 | 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 20 | ing:.'foobar'.here.is.a.number:. |
| 8e960 | 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 0a 20 20 | 1234.</samp></pre></figure>..... |
| 8e980 | 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 6f 70 65 6e 20 74 | ....<p>.......Let's.crack.open.t |
| 8e9a0 | 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 61 6e 64 20 73 65 | he.implementation.of.this.and.se |
| 8e9c0 | 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 0a 0a 20 20 20 20 | e.how.it.works:.......</p>...... |
| 8e9e0 | 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 |
| 8ea00 | 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 6f 63 5f 70 72 69 | -cap"><cite.class="file">poc_pri |
| 8ea20 | 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 6f 6e 3e 3c 70 72 | nt_fn.zig</cite></figcaption><pr |
| 8ea40 | 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 |
| 8ea60 | 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 6c 61 73 73 3d 22 | st</span>.Writer.=.<span.class=" |
| 8ea80 | 74 6f 6b 2d 6b 77 22 3e 73 74 72 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 | tok-kw">struct</span>.{.....<spa |
| 8eaa0 | 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 43 61 6c 6c 73 20 | n.class="tok-comment">///.Calls. |
| 8eac0 | 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 20 62 75 66 66 65 | print.and.then.flushes.the.buffe |
| 8eae0 | 72 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | r.</span>.....<span.class="tok-k |
| 8eb00 | 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 |
| 8eb20 | 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 |
| 8eb40 | 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 3c 73 | ">print</span>(self:.*Writer,.<s |
| 8eb60 | 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 |
| 8eb80 | 6e 3e 20 66 6f 72 6d 61 74 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | n>.format:.[]<span.class="tok-kw |
| 8eba0 | 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- |
| 8ebc0 | 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 61 6e 20 63 6c 61 | type">u8</span>,.args:.<span.cla |
| 8ebe0 | 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 |
| 8ec00 | 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 |
| 8ec20 | 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 3c 2f | n>!<span.class="tok-type">void</ |
| 8ec40 | 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | span>.{.........<span.class="tok |
| 8ec60 | 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 3c 73 70 61 6e 20 | -kw">const</span>.State.=.<span. |
| 8ec80 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6e 75 6d 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 | class="tok-kw">enum</span>.{.... |
| 8eca0 | 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 20 20 6f 70 65 6e | .........start,.............open |
| 8ecc0 | 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 62 72 61 63 65 2c | _brace,.............close_brace, |
| 8ece0 | 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 20 63 6c 61 73 73 | .........};..........<span.class |
| 8ed00 | 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 20 | ="tok-kw">comptime</span>.<span. |
| 8ed20 | 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 5f | class="tok-kw">var</span>.start_ |
| 8ed40 | 69 6e 64 65 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 | index:.<span.class="tok-type">us |
| 8ed60 | 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 |
| 8ed80 | 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 6e 20 63 6c | mber">0</span>;.........<span.cl |
| 8eda0 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 3c 73 70 | ass="tok-kw">comptime</span>.<sp |
| 8edc0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 73 74 61 | an.class="tok-kw">var</span>.sta |
| 8ede0 | 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 3c 73 70 61 6e 20 | te.=.State.start;.........<span. |
| 8ee00 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 3c | class="tok-kw">comptime</span>.< |
| 8ee20 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 6e | span.class="tok-kw">var</span>.n |
| 8ee40 | 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 74 79 70 65 22 3e | ext_arg:.<span.class="tok-type"> |
| 8ee60 | 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | usize</span>.=.<span.class="tok- |
| 8ee80 | 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 20 3c 73 70 61 6e | number">0</span>;..........<span |
| 8eea0 | 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 |
| 8eec0 | 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 66 | pan.class="tok-kw">for</span>.(f |
| 8eee0 | 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 6d 62 65 72 22 3e | ormat,.<span.class="tok-number"> |
| 8ef00 | 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 20 20 20 20 20 20 | 0</span>..).|c,.i|.{............ |
| 8ef20 | 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 70 | .<span.class="tok-kw">switch</sp |
| 8ef40 | 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 20 20 20 20 53 74 | an>.(state).{.................St |
| 8ef60 | 61 74 65 2e 73 74 61 72 74 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ate.start.=>.<span.class="tok |
| 8ef80 | 2d 6b 77 22 3e 73 77 69 74 63 68 3c 2f 73 70 61 6e 3e 20 28 63 29 20 7b 0a 20 20 20 20 20 20 20 | -kw">switch</span>.(c).{........ |
| 8efa0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 | .............<span.class="tok-st |
| 8efc0 | 72 22 3e 27 7b 27 3c 2f 73 70 61 6e 3e 20 3d 26 67 74 3b 20 7b 0a 20 20 20 20 20 20 20 20 20 20 | r">'{'</span>.=>.{........... |
| 8efe0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | ..............<span.class="tok-k |
| 8f000 | 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 73 74 61 72 74 5f 69 6e 64 65 78 20 26 6c 74 3b 20 69 | w">if</span>.(start_index.<.i |
| 8f020 | 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e | ).<span.class="tok-kw">try</span |
| 8f040 | 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. |
| 8f060 | 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 20 20 20 20 73 74 | .i]);.........................st |
| 8f080 | 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 20 20 20 20 20 20 | ate.=.State.open_brace;......... |
| 8f0a0 | 20 20 20 20 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ............},.................. |
| 8f0c0 | 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 7d 27 3c 2f 73 70 | ...<span.class="tok-str">'}'</sp |
| 8f0e0 | 61 6e 3e 20 3d 26 67 74 3b 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | an>.=>.{..................... |
| 8f100 | 20 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 |
| 8f120 | 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 70 61 6e 20 63 6c | n>.(start_index.<.i).<span.cl |
| 8f140 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 73 65 6c 66 2e 77 72 69 | ass="tok-kw">try</span>.self.wri |
| 8f160 | 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 3b 0a 20 20 20 20 | te(format[start_index..i]);..... |
| 8f180 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 74 61 74 65 20 3d 20 53 74 61 74 | ....................state.=.Stat |
| 8f1a0 | 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 20 20 20 20 20 20 | e.close_brace;.................. |
| 8f1c0 | 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. |
| 8f1e0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 3d 26 67 74 3b | class="tok-kw">else</span>.=> |
| 8f200 | 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 20 20 20 20 20 20 | .{},.................},......... |
| 8f220 | 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 26 67 74 3b 20 3c | ........State.open_brace.=>.< |
| 8f240 | 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 |
| 8f260 | 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 20 20 3c 73 70 61 | >.(c).{.....................<spa |
| 8f280 | 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 6e 3e 20 3d 26 67 | n.class="tok-str">'{'</span>.=&g |
| 8f2a0 | 74 3b 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 74 61 | t;.{.........................sta |
| 8f2c0 | 74 65 20 3d 20 53 74 61 74 65 2e 73 74 61 72 74 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | te.=.State.start;............... |
| 8f2e0 | 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 0a 20 20 20 20 20 | ..........start_index.=.i;...... |
| 8f300 | 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 20 20 20 | ...............},............... |
| 8f320 | 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 7d 27 3c | ......<span.class="tok-str">'}'< |
| 8f340 | 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 20 20 20 | /span>.=>.{.................. |
| 8f360 | 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< |
| 8f380 | 2f 73 70 61 6e 3e 20 73 65 6c 66 2e 70 72 69 6e 74 56 61 6c 75 65 28 61 72 67 73 5b 6e 65 78 74 | /span>.self.printValue(args[next |
| 8f3a0 | 5f 61 72 67 5d 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | _arg]);......................... |
| 8f3c0 | 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 6f 6b 2d 6e 75 6d | next_arg.+=.<span.class="tok-num |
| 8f3e0 | 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>;.................. |
| 8f400 | 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 20 20 20 20 | .......state.=.State.start;..... |
| 8f420 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 74 61 72 74 5f 69 6e 64 65 78 20 | ....................start_index. |
| 8f440 | 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 62 65 72 22 3e 31 | =.i.+.<span.class="tok-number">1 |
| 8f460 | 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 2c 0a | </span>;.....................},. |
| 8f480 | 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= |
| 8f4a0 | 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 20 7b 0a 20 20 20 | "tok-str">'s'</span>.=>.{.... |
| 8f4c0 | 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 |
| 8f4e0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 74 69 6e 75 65 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 20 | ="tok-kw">continue</span>;...... |
| 8f500 | 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 20 20 20 | ...............},............... |
| 8f520 | 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c | ......<span.class="tok-kw">else< |
| 8f540 | 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 62 75 | /span>.=>.<span.class="tok-bu |
| 8f560 | 69 6c 74 69 6e 22 3e 40 63 6f 6d 70 69 6c 65 45 72 72 6f 72 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 | iltin">@compileError</span>(<spa |
| 8f580 | 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 6b 6e 6f 77 6e 20 | n.class="tok-str">"Unknown. |
| 8f5a0 | 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 73 70 61 6e 3e 20 | format.character:."</span>. |
| 8f5c0 | 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 72 22 3e 31 3c 2f | ++.[<span.class="tok-number">1</ |
| 8f5e0 | 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< |
| 8f600 | 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 20 20 7d 2c 0a 20 | /span>{c}),.................},.. |
| 8f620 | 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 5f 62 72 61 63 65 | ...............State.close_brace |
| 8f640 | 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 73 77 69 74 | .=>.<span.class="tok-kw">swit |
| 8f660 | 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 20 20 20 20 20 20 | ch</span>.(c).{................. |
| 8f680 | 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 7d 27 3c 2f 73 | ....<span.class="tok-str">'}'</s |
| 8f6a0 | 70 61 6e 3e 20 3d 26 67 74 3b 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | pan>.=>.{.................... |
| 8f6c0 | 20 20 20 20 20 73 74 61 74 65 20 3d 20 53 74 61 74 65 2e 73 74 61 72 74 3b 0a 20 20 20 20 20 20 | .....state.=.State.start;....... |
| 8f6e0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 74 61 72 74 5f 69 6e 64 65 78 20 3d 20 | ..................start_index.=. |
| 8f700 | 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 20 20 20 20 20 20 | i;.....................},....... |
| 8f720 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | ..............<span.class="tok-k |
| 8f740 | 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 |
| 8f760 | 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 70 | ="tok-builtin">@compileError</sp |
| 8f780 | 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">" |
| 8f7a0 | 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 66 6f 72 6d 61 74 | Single.'}'.encountered.in.format |
| 8f7c0 | 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 20 20 20 20 20 20 | .string"</span>),.......... |
| 8f7e0 | 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 20 20 20 20 20 20 | .......},.............}......... |
| 8f800 | 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 2d 6b 77 22 3e 63 | }.........<span.class="tok-kw">c |
| 8f820 | 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 20 20 20 3c 73 70 | omptime</span>.{.............<sp |
| 8f840 | 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 72 67 | an.class="tok-kw">if</span>.(arg |
| 8f860 | 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 20 20 20 20 20 20 | s.len.!=.next_arg).{............ |
| 8f880 | 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 | .....<span.class="tok-builtin">@ |
| 8f8a0 | 63 6f 6d 70 69 6c 65 45 72 72 6f 72 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d | compileError</span>(<span.class= |
| 8f8c0 | 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 55 6e 75 73 65 64 20 61 72 67 75 6d 65 6e 74 73 | "tok-str">"Unused.arguments |
| 8f8e0 | 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 20 20 7d 0a 20 20 | "</span>);.............}... |
| 8f900 | 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 |
| 8f920 | 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 74 61 72 74 29 20 | f</span>.(state.!=.State.start). |
| 8f940 | 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | {.................<span.class="t |
| 8f960 | 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 3e | ok-builtin">@compileError</span> |
| 8f980 | 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 49 6e 63 | (<span.class="tok-str">"Inc |
| 8f9a0 | 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 6f 74 3b 3c 2f 73 | omplete.format.string:."</s |
| 8f9c0 | 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 20 20 20 7d 0a 20 | pan>.++.format);.............}.. |
| 8f9e0 | 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 73 73 3d 22 74 6f | .......}.........<span.class="to |
| 8fa00 | 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 73 74 61 72 74 5f 69 6e 64 65 78 20 26 6c 74 | k-kw">if</span>.(start_index.< |
| 8fa20 | 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 20 20 3c 73 70 61 | ;.format.len).{.............<spa |
| 8fa40 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 73 65 6c 66 | n.class="tok-kw">try</span>.self |
| 8fa60 | 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 66 6f 72 6d 61 | .write(format[start_index..forma |
| 8fa80 | 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 20 3c 73 70 61 6e | t.len]);.........}.........<span |
| 8faa0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 73 65 6c 66 2e | .class="tok-kw">try</span>.self. |
| 8fac0 | 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 63 6c 61 73 73 3d | flush();.....}......<span.class= |
| 8fae0 | 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=" |
| 8fb00 | 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 20 2a 57 72 69 74 | tok-fn">write</span>(self:.*Writ |
| 8fb20 | 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 74 6f 6b 2d 6b 77 | er,.value:.[]<span.class="tok-kw |
| 8fb40 | 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- |
| 8fb60 | 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 |
| 8fb80 | 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 5f | ok-type">void</span>.{........._ |
| 8fba0 | 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 0a 20 20 20 20 | .=.self;........._.=.value;..... |
| 8fbc0 | 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 70 75 62 3c 2f | }.....<span.class="tok-kw">pub</ |
| 8fbe0 | 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 |
| 8fc00 | 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 56 | pan>.<span.class="tok-fn">printV |
| 8fc20 | 61 6c 75 65 3c 2f 73 70 61 6e 3e 28 73 65 6c 66 3a 20 2a 57 72 69 74 65 72 2c 20 76 61 6c 75 65 | alue</span>(self:.*Writer,.value |
| 8fc40 | 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</ |
| 8fc60 | 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 |
| 8fc80 | 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 5f 20 3d 20 73 65 6c 66 3b 0a 20 | oid</span>.{........._.=.self;.. |
| 8fca0 | 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 20 20 3c 73 70 61 | ......._.=.value;.....}.....<spa |
| 8fcc0 | 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 |
| 8fce0 | 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 6e 3e 28 73 65 6c | .class="tok-fn">flush</span>(sel |
| 8fd00 | 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 74 6f 6b 2d 74 79 | f:.*Writer).!<span.class="tok-ty |
| 8fd20 | 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 |
| 8fd40 | 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 2f 66 69 67 75 72 | lf;.....}.};</code></pre></figur |
| 8fd60 | 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 69 73 20 61 20 70 72 | e>........<p>.......This.is.a.pr |
| 8fd80 | 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 69 6f 6e 3b 20 74 | oof.of.concept.implementation;.t |
| 8fda0 | 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 73 74 61 6e 64 61 | he.actual.function.in.the.standa |
| 8fdc0 | 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 66 6f 72 6d 61 74 | rd.library.has.more.......format |
| 8fde0 | 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 2f 70 3e 0a 20 20 | ting.capabilities........</p>... |
| 8fe00 | 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 69 73 20 69 73 20 | ....<p>.......Note.that.this.is. |
| 8fe20 | 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 67 20 63 6f 6d 70 | not.hard-coded.into.the.Zig.comp |
| 8fe40 | 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 65 20 69 6e 20 74 | iler;.this.is.userland.code.in.t |
| 8fe60 | 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 20 3c 2f 70 3e 0a | he.standard.library........</p>. |
| 8fe80 | 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 66 75 6e 63 74 69 | ......<p>.......When.this.functi |
| 8fea0 | 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 61 6d 70 6c 65 20 | on.is.analyzed.from.our.example. |
| 8fec0 | 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 65 76 61 6c 75 61 | code.above,.Zig.partially.evalua |
| 8fee0 | 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 20 65 6d 69 74 73 | tes.the.function.......and.emits |
| 8ff00 | 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 6c 6f 6f 6b 73 20 | .a.function.that.actually.looks. |
| 8ff20 | 6c 69 6b 65 20 74 68 69 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 | like.this:.......</p>.......<fig |
| 8ff40 | 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"> |
| 8ff60 | 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 20 70 72 69 6e 74 | <cite.class="file">Emitted.print |
| 8ff80 | 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 6f 6e 3e 3c 70 72 | .Function</cite></figcaption><pr |
| 8ffa0 | 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 |
| 8ffc0 | 3c 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< |
| 8ffe0 | 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 |
| 90000 | 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 67 30 3a 20 5b 5d | t</span>(self:.*Writer,.arg0:.[] |
| 90020 | 3c 73 70 61 6e 20 63 6c 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 |
| 90040 | 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 | >.<span.class="tok-type">u8</spa |
| 90060 | 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 2d 74 79 70 65 22 | n>,.arg1:.<span.class="tok-type" |
| 90080 | 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 22 74 6f 6b 2d 74 | >i32</span>).!<span.class="tok-t |
| 900a0 | 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 |
| 900c0 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 73 65 6c 66 2e 77 72 69 74 | ss="tok-kw">try</span>.self.writ |
| 900e0 | 65 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 68 65 | e(<span.class="tok-str">"he |
| 90100 | 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 70 61 6e 3e 29 3b | re.is.a.string:.'"</span>); |
| 90120 | 0a 20 20 20 20 3c 73 70 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 |
| 90140 | 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 3b 0a 20 20 20 20 | pan>.self.printValue(arg0);..... |
| 90160 | 3c 73 70 61 6e 20 63 6c 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>. |
| 90180 | 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 6b 2d 73 74 72 22 | self.write(<span.class="tok-str" |
| 901a0 | 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 20 26 71 75 6f 74 | >"'.here.is.a.number:." |
| 901c0 | 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 6b 2d | ;</span>);.....<span.class="tok- |
| 901e0 | 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 61 6c 75 65 28 61 | kw">try</span>.self.printValue(a |
| 90200 | 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 2d 6b 77 22 3e 74 | rg1);.....<span.class="tok-kw">t |
| 90220 | 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 20 63 6c 61 73 73 | ry</span>.self.write(<span.class |
| 90240 | 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 2f 73 70 61 6e 3e | ="tok-str">"\n"</span> |
| 90260 | 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< |
| 90280 | 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 64 65 3e 3c 2f 70 | /span>.self.flush();.}</code></p |
| 902a0 | 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 3c 63 6f | re></figure>.......<p>.......<co |
| 902c0 | 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 66 75 6e 63 74 69 | de>printValue</code>.is.a.functi |
| 902e0 | 6f 6e 20 74 68 61 74 20 74 61 6b 65 73 20 61 20 70 61 72 61 6d 65 74 65 72 20 6f 66 20 61 6e 79 | on.that.takes.a.parameter.of.any |
| 90300 | 20 74 79 70 65 2c 20 61 6e 64 20 64 6f 65 73 20 64 69 66 66 65 72 65 6e 74 20 74 68 69 6e 67 73 | .type,.and.does.different.things |
| 90320 | 20 64 65 70 65 6e 64 69 6e 67 0a 20 20 20 20 20 20 6f 6e 20 74 68 65 20 74 79 70 65 3a 0a 20 20 | .depending.......on.the.type:... |
| 90340 | 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 |
| 90360 | 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=" |
| 90380 | 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 67 3c 2f 63 69 74 | file">poc_printValue_fn.zig</cit |
| 903a0 | 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. |
| 903c0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 57 72 69 74 | class="tok-kw">const</span>.Writ |
| 903e0 | 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 72 75 63 74 | er.=.<span.class="tok-kw">struct |
| 90400 | 3c 2f 73 70 61 6e 3e 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 |
| 90420 | 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 |
| 90440 | 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 |
| 90460 | 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 2a 57 72 69 74 65 | ">printValue</span>(self:.*Write |
| 90480 | 72 2c 20 76 61 6c 75 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 | r,.value:.<span.class="tok-kw">a |
| 904a0 | 6e 79 74 79 70 65 3c 2f 73 70 61 6e 3e 29 20 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | nytype</span>).!<span.class="tok |
| 904c0 | 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 3c 73 70 | -type">void</span>.{.........<sp |
| 904e0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 77 69 74 63 68 3c 2f 73 70 61 6e 3e 20 | an.class="tok-kw">switch</span>. |
| 90500 | 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 |
| 90520 | 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 |
| 90540 | 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 29 29 20 7b 0a | ltin">@TypeOf</span>(value))).{. |
| 90560 | 20 20 20 20 20 20 20 20 20 20 20 20 2e 69 6e 74 20 3d 26 67 74 3b 20 7b 0a 20 20 20 20 20 20 20 | .............int.=>.{........ |
| 90580 | 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 72 65 | .........<span.class="tok-kw">re |
| 905a0 | 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 76 61 6c 75 65 29 | turn</span>.self.writeInt(value) |
| 905c0 | 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 2e 66 6c | ;.............},..............fl |
| 905e0 | 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 20 20 3c 73 70 61 | oat.=>.{.................<spa |
| 90600 | 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 |
| 90620 | 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 20 20 20 20 20 20 | elf.writeFloat(value);.......... |
| 90640 | 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 2e 70 6f 69 6e 74 65 72 20 3d 26 67 74 3b | ...},..............pointer.=> |
| 90660 | 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 61 73 73 3d 22 | .{.................<span.class=" |
| 90680 | 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 73 65 6c 66 2e 77 72 69 74 65 | tok-kw">return</span>.self.write |
| 906a0 | 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 20 20 20 20 20 20 | (value);.............},......... |
| 906c0 | 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 | ....<span.class="tok-kw">else</s |
| 906e0 | 70 61 6e 3e 20 3d 26 67 74 3b 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 | pan>.=>.{.................<sp |
| 90700 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 6f 6d 70 69 6c 65 45 | an.class="tok-builtin">@compileE |
| 90720 | 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 74 72 | rror</span>(<span.class="tok-str |
| 90740 | 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 70 65 20 27 26 71 | ">"Unable.to.print.type.'&q |
| 90760 | 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 3d 22 74 6f 6b 2d | uot;</span>.++.<span.class="tok- |
| 90780 | 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 3c 73 70 61 6e 20 | builtin">@typeName</span>(<span. |
| 907a0 | 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 |
| 907c0 | 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 22 74 6f 6b 2d 73 | n>(value)).++.<span.class="tok-s |
| 907e0 | 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 0a 20 20 20 20 20 | tr">"'"</span>);...... |
| 90800 | 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 0a 20 20 20 20 3c | .......},.........}.....}......< |
| 90820 | 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 |
| 90840 | 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 73 70 61 6e 3e 28 | pan.class="tok-fn">write</span>( |
| 90860 | 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 70 61 6e 20 63 6c | self:.*Writer,.value:.[]<span.cl |
| 90880 | 61 73 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. |
| 908a0 | 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 |
| 908c0 | 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>. |
| 908e0 | 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 20 20 5f 20 3d 20 | {........._.=.self;........._.=. |
| 90900 | 76 61 6c 75 65 3b 0a 20 20 20 20 7d 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | value;.....}.....<span.class="to |
| 90920 | 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 |
| 90940 | 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 20 2a 57 72 69 74 | -fn">writeInt</span>(self:.*Writ |
| 90960 | 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 2d 6b 77 22 3e | er,.value:.<span.class="tok-kw"> |
| 90980 | 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 73 3d 22 74 6f | anytype</span>).!<span.class="to |
| 909a0 | 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 5f 20 | k-type">void</span>.{........._. |
| 909c0 | 3d 20 73 65 6c 66 3b 0a 20 20 20 20 20 20 20 20 5f 20 3d 20 76 61 6c 75 65 3b 0a 20 20 20 20 7d | =.self;........._.=.value;.....} |
| 909e0 | 0a 20 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 |
| 90a00 | 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 46 6c | an>.<span.class="tok-fn">writeFl |
| 90a20 | 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 76 61 6c 75 65 3a | oat</span>(self:.*Writer,.value: |
| 90a40 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 79 74 79 70 65 3c 2f 73 | .<span.class="tok-kw">anytype</s |
| 90a60 | 70 61 6e 3e 29 20 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f | pan>).!<span.class="tok-type">vo |
| 90a80 | 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 5f 20 3d 20 73 65 6c 66 3b 0a 20 20 | id</span>.{........._.=.self;... |
| 90aa0 | 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 2f 63 6f 64 65 3e | ......_.=.value;.....}.};</code> |
| 90ac0 | 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>...... |
| 90ae0 | 20 41 6e 64 20 6e 6f 77 2c 20 77 68 61 74 20 68 61 70 70 65 6e 73 20 69 66 20 77 65 20 67 69 76 | .And.now,.what.happens.if.we.giv |
| 90b00 | 65 20 74 6f 6f 20 6d 61 6e 79 20 61 72 67 75 6d 65 6e 74 73 20 74 6f 20 3c 63 6f 64 65 3e 70 72 | e.too.many.arguments.to.<code>pr |
| 90b20 | 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 20 20 20 3c 66 69 | int</code>?.......</p>.......<fi |
| 90b40 | 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" |
| 90b60 | 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 72 69 6e 74 5f 74 | ><cite.class="file">test_print_t |
| 90b80 | 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 69 67 63 61 70 74 | oo_many_args.zig</cite></figcapt |
| 90ba0 | 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- |
| 90bc0 | 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 |
| 90be0 | 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 |
| 90c00 | 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 |
| 90c20 | 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 64 65 62 75 67 2e 70 72 69 6e 74 3b 0a 0a 3c 73 | d"</span>).debug.print;..<s |
| 90c40 | 70 61 6e 20 63 6c 61 73 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>. |
| 90c60 | 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 2d 74 79 70 65 22 | a_number:.<span.class="tok-type" |
| 90c80 | 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 |
| 90ca0 | 75 6d 62 65 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | umber">1234</span>;.<span.class= |
| 90cc0 | 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 72 69 6e 67 20 3d | "tok-kw">const</span>.a_string.= |
| 90ce0 | 20 3c 73 70 61 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 | .<span.class="tok-str">"foo |
| 90d00 | 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 6c 61 73 73 3d 22 | bar"</span>;..<span.class=" |
| 90d20 | 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= |
| 90d40 | 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 6d 61 6e 79 20 61 | "tok-str">"print.too.many.a |
| 90d60 | 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 20 20 70 72 69 6e | rguments"</span>.{.....prin |
| 90d80 | 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 68 65 | t(<span.class="tok-str">"he |
| 90da0 | 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 20 69 73 20 61 20 | re.is.a.string:.'{s}'.here.is.a. |
| 90dc0 | 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 20 2e 7b 0a 20 20 | number:.{}\n"</span>,..{... |
| 90de0 | 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 6e 75 6d 62 65 72 | ......a_string,.........a_number |
| 90e00 | 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 3b 0a 7d 3c 2f 63 | ,.........a_number,.....});.}</c |
| 90e20 | 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 |
| 90e40 | 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</ |
| 90e60 | 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 |
| 90e80 | 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 61 72 67 73 2e 7a | .test.test_print_too_many_args.z |
| 90ea0 | 69 67 3c 2f 6b 62 64 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 | ig</kbd>.<span.class="sgr-1m">/h |
| 90ec0 | 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 49 6f 2f 57 72 69 74 | ome/andy/dev/zig/lib/std/Io/Writ |
| 90ee0 | 65 72 2e 7a 69 67 3a 37 31 37 3a 31 38 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 | er.zig:717:18:.</span><span.clas |
| 90f00 | 73 3d 22 73 67 72 2d 33 31 6d 22 3e 65 72 72 6f 72 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 | s="sgr-31m">error:.</span><span. |
| 90f20 | 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 75 6e 75 73 65 64 20 61 72 67 75 6d 65 6e 74 20 69 | class="sgr-1m">unused.argument.i |
| 90f40 | 6e 20 27 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 20 | n.'here.is.a.string:.'{s}'.here. |
| 90f60 | 69 73 20 61 20 6e 75 6d 62 65 72 3a 20 7b 7d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | is.a.number:.{}................. |
| 90f80 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ................................ |
| 90fa0 | 20 20 20 20 20 20 20 20 27 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 20 20 20 20 20 20 20 20 31 20 3d | ........'.</span>............1.= |
| 90fc0 | 26 67 74 3b 20 40 63 6f 6d 70 69 6c 65 45 72 72 6f 72 28 26 71 75 6f 74 3b 75 6e 75 73 65 64 20 | >.@compileError("unused. |
| 90fe0 | 61 72 67 75 6d 65 6e 74 20 69 6e 20 27 26 71 75 6f 74 3b 20 2b 2b 20 66 6d 74 20 2b 2b 20 26 71 | argument.in.'".++.fmt.++.&q |
| 91000 | 75 6f 74 3b 27 26 71 75 6f 74 3b 29 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c | uot;'"),..................< |
| 91020 | 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">^~~~~~~~~~~ |
| 91040 | 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 7e 7e | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
| 91060 | 7e 7e 7e 7e 7e 7e 7e 7e 0a 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 | ~~~~~~~~.</span><span.class="sgr |
| 91080 | 2d 32 6d 22 3e 72 65 66 65 72 65 6e 63 65 64 20 62 79 3a 0a 20 20 20 20 70 72 69 6e 74 5f 5f 61 | -2m">referenced.by:.....print__a |
| 910a0 | 6e 6f 6e 5f 34 35 34 3a 20 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f | non_454:./home/andy/dev/zig/lib/ |
| 910c0 | 73 74 64 2f 64 65 62 75 67 2e 7a 69 67 3a 32 33 31 3a 32 33 0a 20 20 20 20 74 65 73 74 2e 70 72 | std/debug.zig:231:23.....test.pr |
| 910e0 | 69 6e 74 20 74 6f 6f 20 6d 61 6e 79 20 61 72 67 75 6d 65 6e 74 73 3a 20 2f 68 6f 6d 65 2f 61 6e | int.too.many.arguments:./home/an |
| 91100 | 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 70 72 69 6e | dy/dev/zig/doc/langref/test_prin |
| 91120 | 74 5f 74 6f 6f 5f 6d 61 6e 79 5f 61 72 67 73 2e 7a 69 67 3a 37 3a 31 30 0a 3c 2f 73 70 61 6e 3e | t_too_many_args.zig:7:10.</span> |
| 91140 | 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>........< |
| 91160 | 70 3e 0a 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 | p>.......Zig.gives.programmers.t |
| 91180 | 68 65 20 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 | he.tools.needed.to.protect.thems |
| 911a0 | 65 6c 76 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 | elves.against.their.own.mistakes |
| 911c0 | 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 67 | ........</p>.......<p>.......Zig |
| 911e0 | 20 64 6f 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 | .doesn't.care.whether.the.format |
| 91200 | 20 61 72 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 | .argument.is.a.string.literal,.. |
| 91220 | 20 20 20 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 | .....only.that.it.is.a.compile-t |
| 91240 | 69 6d 65 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 | ime.known.value.that.can.be.coer |
| 91260 | 63 65 64 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 | ced.to.a.<code>[]<span.class="to |
| 91280 | 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=" |
| 912a0 | 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3a 0a 20 20 20 20 | tok-type">u8</span></code>:..... |
| 912c0 | 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 |
| 912e0 | 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 |
| 91300 | 6c 65 22 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 | le">print_comptime-known_format. |
| 91320 | 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 |
| 91340 | 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 |
| 91360 | 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 |
| 91380 | 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 |
| 913a0 | 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 |
| 913c0 | 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 |
| 913e0 | 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 5f 6e 75 6d 62 65 72 3a 20 3c 73 70 | k-kw">const</span>.a_number:.<sp |
| 91400 | 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>.= |
| 91420 | 20 3c 73 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</ |
| 91440 | 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 | span>;.<span.class="tok-kw">cons |
| 91460 | 74 3c 2f 73 70 61 6e 3e 20 61 5f 73 74 72 69 6e 67 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | t</span>.a_string.=.<span.class= |
| 91480 | 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 66 6f 6f 62 61 72 26 71 75 6f 74 3b 3c 2f 73 70 | "tok-str">"foobar"</sp |
| 914a0 | 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c | an>;.<span.class="tok-kw">const< |
| 914c0 | 2f 73 70 61 6e 3e 20 66 6d 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 | /span>.fmt.=.<span.class="tok-st |
| 914e0 | 72 22 3e 26 71 75 6f 74 3b 68 65 72 65 20 69 73 20 61 20 73 74 72 69 6e 67 3a 20 27 7b 73 7d 27 | r">"here.is.a.string:.'{s}' |
| 91500 | 20 68 65 72 65 20 69 73 20 61 20 6e 75 6d 62 65 72 3a 20 7b 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 | .here.is.a.number:.{}\n"</s |
| 91520 | 70 61 6e 3e 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c | pan>;..<span.class="tok-kw">pub< |
| 91540 | 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</ |
| 91560 | 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< |
| 91580 | 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | /span>().<span.class="tok-type"> |
| 915a0 | 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 70 72 69 6e 74 28 66 6d 74 2c 20 2e 7b 20 | void</span>.{.....print(fmt,..{. |
| 915c0 | 61 5f 73 74 72 69 6e 67 2c 20 61 5f 6e 75 6d 62 65 72 20 7d 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c | a_string,.a_number.});.}</code>< |
| 915e0 | 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 |
| 91600 | 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 |
| 91620 | 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 |
| 91640 | 64 2d 65 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 | d-exe.print_comptime-known_forma |
| 91660 | 74 2e 7a 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 | t.zig</kbd>.$.<kbd>./print_compt |
| 91680 | 69 6d 65 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 | ime-known_format</kbd>.here.is.a |
| 916a0 | 20 73 74 72 69 6e 67 3a 20 27 66 6f 6f 62 61 72 27 20 68 65 72 65 20 69 73 20 61 20 6e 75 6d 62 | .string:.'foobar'.here.is.a.numb |
| 916c0 | 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 3e 0a | er:.1234.</samp></pre></figure>. |
| 916e0 | 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 77 6f 72 6b 73 20 66 69 6e 65 | .......<p>.......This.works.fine |
| 91700 | 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 67 | ........</p>.......<p>.......Zig |
| 91720 | 20 64 6f 65 73 20 6e 6f 74 20 73 70 65 63 69 61 6c 20 63 61 73 65 20 73 74 72 69 6e 67 20 66 6f | .does.not.special.case.string.fo |
| 91740 | 72 6d 61 74 74 69 6e 67 20 69 6e 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 20 61 6e 64 20 69 6e 73 | rmatting.in.the.compiler.and.ins |
| 91760 | 74 65 61 64 20 65 78 70 6f 73 65 73 20 65 6e 6f 75 67 68 20 70 6f 77 65 72 20 74 6f 20 61 63 63 | tead.exposes.enough.power.to.acc |
| 91780 | 6f 6d 70 6c 69 73 68 20 74 68 69 73 0a 20 20 20 20 20 20 74 61 73 6b 20 69 6e 20 75 73 65 72 6c | omplish.this.......task.in.userl |
| 917a0 | 61 6e 64 2e 20 49 74 20 64 6f 65 73 20 73 6f 20 77 69 74 68 6f 75 74 20 69 6e 74 72 6f 64 75 63 | and..It.does.so.without.introduc |
| 917c0 | 69 6e 67 20 61 6e 6f 74 68 65 72 20 6c 61 6e 67 75 61 67 65 20 6f 6e 20 74 6f 70 20 6f 66 20 5a | ing.another.language.on.top.of.Z |
| 917e0 | 69 67 2c 20 73 75 63 68 20 61 73 0a 20 20 20 20 20 20 61 20 6d 61 63 72 6f 20 6c 61 6e 67 75 61 | ig,.such.as.......a.macro.langua |
| 91800 | 67 65 20 6f 72 20 61 20 70 72 65 70 72 6f 63 65 73 73 6f 72 20 6c 61 6e 67 75 61 67 65 2e 20 49 | ge.or.a.preprocessor.language..I |
| 91820 | 74 27 73 20 5a 69 67 20 61 6c 6c 20 74 68 65 20 77 61 79 20 64 6f 77 6e 2e 0a 20 20 20 20 20 20 | t's.Zig.all.the.way.down........ |
| 91840 | 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 2f | </p>..............<p>See.also:</ |
| 91860 | 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 69 6e 6c 69 6e 65 2d 77 68 69 6c | p><ul>.<li><a.href="#inline-whil |
| 91880 | 65 22 3e 69 6e 6c 69 6e 65 20 77 68 69 6c 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 | e">inline.while</a></li>.<li><a. |
| 918a0 | 68 72 65 66 3d 22 23 69 6e 6c 69 6e 65 2d 66 6f 72 22 3e 69 6e 6c 69 6e 65 20 66 6f 72 3c 2f 61 | href="#inline-for">inline.for</a |
| 918c0 | 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 | ></li>.</ul>...............<h2.i |
| 918e0 | 64 3d 22 41 73 73 65 6d 62 6c 79 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 41 73 73 65 6d | d="Assembly"><a.href="#toc-Assem |
| 91900 | 62 6c 79 22 3e 41 73 73 65 6d 62 6c 79 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 | bly">Assembly</a>.<a.class="hdr" |
| 91920 | 20 68 72 65 66 3d 22 23 41 73 73 65 6d 62 6c 79 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 | .href="#Assembly">..</a></h2>... |
| 91940 | 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 46 6f 72 20 73 6f 6d 65 20 75 73 65 20 63 61 73 65 | .....<p>.......For.some.use.case |
| 91960 | 73 2c 20 69 74 20 6d 61 79 20 62 65 20 6e 65 63 65 73 73 61 72 79 20 74 6f 20 64 69 72 65 63 74 | s,.it.may.be.necessary.to.direct |
| 91980 | 6c 79 20 63 6f 6e 74 72 6f 6c 20 74 68 65 20 6d 61 63 68 69 6e 65 20 63 6f 64 65 20 67 65 6e 65 | ly.control.the.machine.code.gene |
| 919a0 | 72 61 74 65 64 0a 20 20 20 20 20 20 62 79 20 5a 69 67 20 70 72 6f 67 72 61 6d 73 2c 20 72 61 74 | rated.......by.Zig.programs,.rat |
| 919c0 | 68 65 72 20 74 68 61 6e 20 72 65 6c 79 69 6e 67 20 6f 6e 20 5a 69 67 27 73 20 63 6f 64 65 20 67 | her.than.relying.on.Zig's.code.g |
| 919e0 | 65 6e 65 72 61 74 69 6f 6e 2e 20 46 6f 72 20 74 68 65 73 65 20 63 61 73 65 73 2c 20 6f 6e 65 0a | eneration..For.these.cases,.one. |
| 91a00 | 20 20 20 20 20 20 63 61 6e 20 75 73 65 20 69 6e 6c 69 6e 65 20 61 73 73 65 6d 62 6c 79 2e 20 48 | ......can.use.inline.assembly..H |
| 91a20 | 65 72 65 20 69 73 20 61 6e 20 65 78 61 6d 70 6c 65 20 6f 66 20 69 6d 70 6c 65 6d 65 6e 74 69 6e | ere.is.an.example.of.implementin |
| 91a40 | 67 20 48 65 6c 6c 6f 2c 20 57 6f 72 6c 64 20 6f 6e 20 78 38 36 5f 36 34 20 4c 69 6e 75 78 0a 20 | g.Hello,.World.on.x86_64.Linux.. |
| 91a60 | 20 20 20 20 20 75 73 69 6e 67 20 69 6e 6c 69 6e 65 20 61 73 73 65 6d 62 6c 79 3a 0a 20 20 20 20 | .....using.inline.assembly:..... |
| 91a80 | 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 |
| 91aa0 | 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 |
| 91ac0 | 6c 65 22 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 | le">inline_assembly.zig</cite></ |
| 91ae0 | 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 |
| 91b00 | 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 |
| 91b20 | 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 |
| 91b40 | 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 |
| 91b60 | 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 20 7b | ass="tok-type">noreturn</span>.{ |
| 91b80 | 0a 20 20 20 20 3c 73 70 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< |
| 91ba0 | 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 6f 6b 2d 73 74 | /span>.msg.=.<span.class="tok-st |
| 91bc0 | 72 22 3e 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 | r">"hello.world\n"</sp |
| 91be0 | 61 6e 3e 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 | an>;....._.=.syscall3(SYS_write, |
| 91c00 | 20 53 54 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 | .STDOUT_FILENO,.<span.class="tok |
| 91c20 | 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 6d 73 67 | -builtin">@intFromPtr</span>(msg |
| 91c40 | 29 2c 20 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 | ),.msg.len);....._.=.syscall1(SY |
| 91c60 | 53 5f 65 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 | S_exit,.<span.class="tok-number" |
| 91c80 | 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 6b | >0</span>);.....<span.class="tok |
| 91ca0 | 2d 6b 77 22 3e 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 3b 0a 7d 0a 0a 3c 73 70 61 | -kw">unreachable</span>;.}..<spa |
| 91cc0 | 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 |
| 91ce0 | 6e 20 63 6c 61 73 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 | n.class="tok-kw">const</span>.SY |
| 91d00 | 53 5f 77 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 | S_write.=.<span.class="tok-numbe |
| 91d20 | 72 22 3e 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 | r">1</span>;.<span.class="tok-kw |
| 91d40 | 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 |
| 91d60 | 22 3e 63 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 | ">const</span>.SYS_exit.=.<span. |
| 91d80 | 63 6c 61 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 | class="tok-number">60</span>;..< |
| 91da0 | 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>.< |
| 91dc0 | 73 70 61 6e 20 63 6c 61 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> |
| 91de0 | 20 53 54 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 | .STDOUT_FILENO.=.<span.class="to |
| 91e00 | 6b 2d 6e 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 | k-number">1</span>;..<span.class |
| 91e20 | 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 |
| 91e40 | 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= |
| 91e60 | 22 74 6f 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 | "tok-fn">syscall1</span>(number: |
| 91e80 | 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 |
| 91ea0 | 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 2d 74 79 70 | pan>,.arg1:.<span.class="tok-typ |
| 91ec0 | 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | e">usize</span>).<span.class="to |
| 91ee0 | 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e | k-type">usize</span>.{.....<span |
| 91f00 | 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 |
| 91f20 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 73 6d 3c 2f 73 70 61 6e 3e 20 3c 73 | pan.class="tok-kw">asm</span>.<s |
| 91f40 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 6f 6c 61 74 69 6c 65 3c 2f 73 70 61 | pan.class="tok-kw">volatile</spa |
| 91f60 | 6e 3e 20 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b | n>.(<span.class="tok-str">" |
| 91f80 | 73 79 73 63 61 6c 6c 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 3a 20 5b | syscall"</span>.........:.[ |
| 91fa0 | 72 65 74 5d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 | ret].<span.class="tok-str">" |
| 91fc0 | 3b 3d 7b 72 61 78 7d 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 28 2d 26 67 74 3b 20 3c 73 70 61 | ;={rax}"</span>.(->.<spa |
| 91fe0 | 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 29 | n.class="tok-type">usize</span>) |
| 92000 | 2c 0a 20 20 20 20 20 20 20 20 3a 20 5b 6e 75 6d 62 65 72 5d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ,.........:.[number].<span.class |
| 92020 | 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 7b 72 61 78 7d 26 71 75 6f 74 3b 3c 2f 73 70 | ="tok-str">"{rax}"</sp |
| 92040 | 61 6e 3e 20 28 6e 75 6d 62 65 72 29 2c 0a 20 20 20 20 20 20 20 20 20 20 5b 61 72 67 31 5d 20 3c | an>.(number),...........[arg1].< |
| 92060 | 73 70 61 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 | span.class="tok-str">"{rdi} |
| 92080 | 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 28 61 72 67 31 29 2c 0a 20 20 20 20 20 20 20 20 3a 20 | "</span>.(arg1),.........:. |
| 920a0 | 2e 7b 20 2e 72 63 78 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 | .{..rcx.=.<span.class="tok-null" |
| 920c0 | 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 2c 20 2e 72 31 31 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | >true</span>,..r11.=.<span.class |
| 920e0 | 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 20 7d 29 3b 0a 7d 0a 0a 3c | ="tok-null">true</span>.});.}..< |
| 92100 | 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>.< |
| 92120 | 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 |
| 92140 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 73 79 73 63 61 6c 6c 33 3c 2f 73 70 61 | pan.class="tok-fn">syscall3</spa |
| 92160 | 6e 3e 28 6e 75 6d 62 65 72 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | n>(number:.<span.class="tok-type |
| 92180 | 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 2c 20 61 72 67 31 3a 20 3c 73 70 61 6e 20 63 6c 61 73 | ">usize</span>,.arg1:.<span.clas |
| 921a0 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 2c 20 61 72 67 32 3a | s="tok-type">usize</span>,.arg2: |
| 921c0 | 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 |
| 921e0 | 70 61 6e 3e 2c 20 61 72 67 33 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | pan>,.arg3:.<span.class="tok-typ |
| 92200 | 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | e">usize</span>).<span.class="to |
| 92220 | 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e | k-type">usize</span>.{.....<span |
| 92240 | 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 |
| 92260 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 73 6d 3c 2f 73 70 61 6e 3e 20 3c 73 | pan.class="tok-kw">asm</span>.<s |
| 92280 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 6f 6c 61 74 69 6c 65 3c 2f 73 70 61 | pan.class="tok-kw">volatile</spa |
| 922a0 | 6e 3e 20 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b | n>.(<span.class="tok-str">" |
| 922c0 | 73 79 73 63 61 6c 6c 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 3a 20 5b | syscall"</span>.........:.[ |
| 922e0 | 72 65 74 5d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 | ret].<span.class="tok-str">" |
| 92300 | 3b 3d 7b 72 61 78 7d 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 28 2d 26 67 74 3b 20 3c 73 70 61 | ;={rax}"</span>.(->.<spa |
| 92320 | 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 29 | n.class="tok-type">usize</span>) |
| 92340 | 2c 0a 20 20 20 20 20 20 20 20 3a 20 5b 6e 75 6d 62 65 72 5d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ,.........:.[number].<span.class |
| 92360 | 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 7b 72 61 78 7d 26 71 75 6f 74 3b 3c 2f 73 70 | ="tok-str">"{rax}"</sp |
| 92380 | 61 6e 3e 20 28 6e 75 6d 62 65 72 29 2c 0a 20 20 20 20 20 20 20 20 20 20 5b 61 72 67 31 5d 20 3c | an>.(number),...........[arg1].< |
| 923a0 | 73 70 61 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 | span.class="tok-str">"{rdi} |
| 923c0 | 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 28 61 72 67 31 29 2c 0a 20 20 20 20 20 20 20 20 20 20 | "</span>.(arg1),........... |
| 923e0 | 5b 61 72 67 32 5d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 | [arg2].<span.class="tok-str">&qu |
| 92400 | 6f 74 3b 7b 72 73 69 7d 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 28 61 72 67 32 29 2c 0a 20 20 | ot;{rsi}"</span>.(arg2),... |
| 92420 | 20 20 20 20 20 20 20 20 5b 61 72 67 33 5d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ........[arg3].<span.class="tok- |
| 92440 | 73 74 72 22 3e 26 71 75 6f 74 3b 7b 72 64 78 7d 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 28 61 | str">"{rdx}"</span>.(a |
| 92460 | 72 67 33 29 2c 0a 20 20 20 20 20 20 20 20 3a 20 2e 7b 20 2e 72 63 78 20 3d 20 3c 73 70 61 6e 20 | rg3),.........:..{..rcx.=.<span. |
| 92480 | 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 2e 72 | class="tok-null">true</span>,..r |
| 924a0 | 31 31 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 | 11.=.<span.class="tok-null">true |
| 924c0 | 3c 2f 73 70 61 6e 3e 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 | </span>.});.}</code></pre></figu |
| 924e0 | 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 |
| 92500 | 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> |
| 92520 | 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 69 6e 6c 69 6e | <samp>$.<kbd>zig.build-exe.inlin |
| 92540 | 65 5f 61 73 73 65 6d 62 6c 79 2e 7a 69 67 20 2d 74 61 72 67 65 74 20 78 38 36 5f 36 34 2d 6c 69 | e_assembly.zig.-target.x86_64-li |
| 92560 | 6e 75 78 3c 2f 6b 62 64 3e 0a 24 20 3c 6b 62 64 3e 2e 2f 69 6e 6c 69 6e 65 5f 61 73 73 65 6d 62 | nux</kbd>.$.<kbd>./inline_assemb |
| 92580 | 6c 79 3c 2f 6b 62 64 3e 0a 68 65 6c 6c 6f 20 77 6f 72 6c 64 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 | ly</kbd>.hello.world.</samp></pr |
| 925a0 | 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 44 69 73 | e></figure>........<p>.......Dis |
| 925c0 | 73 65 63 74 69 6e 67 20 74 68 65 20 73 79 6e 74 61 78 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 | secting.the.syntax:.......</p>.. |
| 925e0 | 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=" |
| 92600 | 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 41 73 73 65 | zig-cap"><cite.class="file">Asse |
| 92620 | 6d 62 6c 79 20 53 79 6e 74 61 78 20 45 78 70 6c 61 69 6e 65 64 2e 7a 69 67 3c 2f 63 69 74 65 3e | mbly.Syntax.Explained.zig</cite> |
| 92640 | 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 |
| 92660 | 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 |
| 92680 | 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 |
| 926a0 | 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 73 79 73 63 61 6c 6c 31 3c 2f 73 70 61 6e 3e 28 6e 75 6d 62 | ss="tok-fn">syscall1</span>(numb |
| 926c0 | 65 72 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 | er:.<span.class="tok-type">usize |
| 926e0 | 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 2d | </span>,.arg1:.<span.class="tok- |
| 92700 | 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= |
| 92720 | 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 |
| 92740 | 70 61 6e 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 6c 69 6e | pan.class="tok-comment">//.Inlin |
| 92760 | 65 20 61 73 73 65 6d 62 6c 79 20 69 73 20 61 6e 20 65 78 70 72 65 73 73 69 6f 6e 20 77 68 69 63 | e.assembly.is.an.expression.whic |
| 92780 | 68 20 72 65 74 75 72 6e 73 20 61 20 76 61 6c 75 65 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 | h.returns.a.value.</span>.....<s |
| 927a0 | 70 61 6e 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 60 | pan.class="tok-comment">//.the.` |
| 927c0 | 61 73 6d 60 20 6b 65 79 77 6f 72 64 20 62 65 67 69 6e 73 20 74 68 65 20 65 78 70 72 65 73 73 69 | asm`.keyword.begins.the.expressi |
| 927e0 | 6f 6e 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | on.</span>.....<span.class="tok- |
| 92800 | 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 |
| 92820 | 6f 6b 2d 6b 77 22 3e 61 73 6d 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | ok-kw">asm</span>.....<span.clas |
| 92840 | 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 60 76 6f 6c 61 74 69 6c 65 60 20 69 73 | s="tok-comment">//.`volatile`.is |
| 92860 | 20 61 6e 20 6f 70 74 69 6f 6e 61 6c 20 6d 6f 64 69 66 69 65 72 20 74 68 61 74 20 74 65 6c 6c 73 | .an.optional.modifier.that.tells |
| 92880 | 20 5a 69 67 20 74 68 69 73 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | .Zig.this</span>.....<span.class |
| 928a0 | 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 69 6e 6c 69 6e 65 20 61 73 73 65 6d 62 6c | ="tok-comment">//.inline.assembl |
| 928c0 | 79 20 65 78 70 72 65 73 73 69 6f 6e 20 68 61 73 20 73 69 64 65 2d 65 66 66 65 63 74 73 2e 20 57 | y.expression.has.side-effects..W |
| 928e0 | 69 74 68 6f 75 74 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ithout</span>.....<span.class="t |
| 92900 | 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 60 76 6f 6c 61 74 69 6c 65 60 2c 20 5a 69 67 20 69 | ok-comment">//.`volatile`,.Zig.i |
| 92920 | 73 20 61 6c 6c 6f 77 65 64 20 74 6f 20 64 65 6c 65 74 65 20 74 68 65 20 69 6e 6c 69 6e 65 20 61 | s.allowed.to.delete.the.inline.a |
| 92940 | 73 73 65 6d 62 6c 79 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ssembly</span>.....<span.class=" |
| 92960 | 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 63 6f 64 65 20 69 66 20 74 68 65 20 72 65 73 75 | tok-comment">//.code.if.the.resu |
| 92980 | 6c 74 20 69 73 20 75 6e 75 73 65 64 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 | lt.is.unused.</span>.....<span.c |
| 929a0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 6f 6c 61 74 69 6c 65 3c 2f 73 70 61 6e 3e 20 28 0a | lass="tok-kw">volatile</span>.(. |
| 929c0 | 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">// |
| 929e0 | 20 4e 65 78 74 20 69 73 20 61 20 63 6f 6d 70 74 69 6d 65 20 73 74 72 69 6e 67 20 77 68 69 63 68 | .Next.is.a.comptime.string.which |
| 92a00 | 20 69 73 20 74 68 65 20 61 73 73 65 6d 62 6c 79 20 63 6f 64 65 2e 3c 2f 73 70 61 6e 3e 0a 20 20 | .is.the.assembly.code.</span>... |
| 92a20 | 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 |
| 92a40 | 6e 73 69 64 65 20 74 68 69 73 20 73 74 72 69 6e 67 20 6f 6e 65 20 6d 61 79 20 75 73 65 20 60 25 | nside.this.string.one.may.use.`% |
| 92a60 | 5b 72 65 74 5d 60 2c 20 60 25 5b 6e 75 6d 62 65 72 5d 60 2c 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 | [ret]`,.`%[number]`,</span>..... |
| 92a80 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 6f 72 20 | <span.class="tok-comment">//.or. |
| 92aa0 | 60 25 5b 61 72 67 31 5d 60 20 77 68 65 72 65 20 61 20 72 65 67 69 73 74 65 72 20 69 73 20 65 78 | `%[arg1]`.where.a.register.is.ex |
| 92ac0 | 70 65 63 74 65 64 2c 20 74 6f 20 73 70 65 63 69 66 79 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 | pected,.to.specify</span>.....<s |
| 92ae0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 74 68 65 20 72 | pan.class="tok-comment">//.the.r |
| 92b00 | 65 67 69 73 74 65 72 20 74 68 61 74 20 5a 69 67 20 75 73 65 73 20 66 6f 72 20 74 68 65 20 61 72 | egister.that.Zig.uses.for.the.ar |
| 92b20 | 67 75 6d 65 6e 74 20 6f 72 20 72 65 74 75 72 6e 20 76 61 6c 75 65 2c 3c 2f 73 70 61 6e 3e 0a 20 | gument.or.return.value,</span>.. |
| 92b40 | 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">//. |
| 92b60 | 69 66 20 74 68 65 20 72 65 67 69 73 74 65 72 20 63 6f 6e 73 74 72 61 69 6e 74 20 73 74 72 69 6e | if.the.register.constraint.strin |
| 92b80 | 67 73 20 61 72 65 20 75 73 65 64 2e 20 48 6f 77 65 76 65 72 20 69 6e 3c 2f 73 70 61 6e 3e 0a 20 | gs.are.used..However.in</span>.. |
| 92ba0 | 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">//. |
| 92bc0 | 74 68 65 20 62 65 6c 6f 77 20 63 6f 64 65 2c 20 74 68 69 73 20 69 73 20 6e 6f 74 20 75 73 65 64 | the.below.code,.this.is.not.used |
| 92be0 | 2e 20 41 20 6c 69 74 65 72 61 6c 20 60 25 60 20 63 61 6e 20 62 65 3c 2f 73 70 61 6e 3e 0a 20 20 | ..A.literal.`%`.can.be</span>... |
| 92c00 | 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 6f | ..<span.class="tok-comment">//.o |
| 92c20 | 62 74 61 69 6e 65 64 20 62 79 20 65 73 63 61 70 69 6e 67 20 69 74 20 77 69 74 68 20 61 20 64 6f | btained.by.escaping.it.with.a.do |
| 92c40 | 75 62 6c 65 20 70 65 72 63 65 6e 74 3a 20 60 25 25 60 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c | uble.percent:.`%%`.</span>.....< |
| 92c60 | 73 70 61 6e 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 66 74 65 | span.class="tok-comment">//.Ofte |
| 92c80 | 6e 20 6d 75 6c 74 69 6c 69 6e 65 20 73 74 72 69 6e 67 20 73 79 6e 74 61 78 20 63 6f 6d 65 73 20 | n.multiline.string.syntax.comes. |
| 92ca0 | 69 6e 20 68 61 6e 64 79 20 68 65 72 65 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 3c 73 | in.handy.here.</span>.........<s |
| 92cc0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 5c 5c 73 79 73 63 61 6c 6c 3c 2f 73 | pan.class="tok-str">\\syscall</s |
| 92ce0 | 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f | pan>.........<span.class="tok-co |
| 92d00 | 6d 6d 65 6e 74 22 3e 2f 2f 20 4e 65 78 74 20 69 73 20 74 68 65 20 6f 75 74 70 75 74 2e 20 49 74 | mment">//.Next.is.the.output..It |
| 92d20 | 20 69 73 20 70 6f 73 73 69 62 6c 65 20 69 6e 20 74 68 65 20 66 75 74 75 72 65 20 5a 69 67 20 77 | .is.possible.in.the.future.Zig.w |
| 92d40 | 69 6c 6c 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ill</span>.........<span.class=" |
| 92d60 | 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 73 75 70 70 6f 72 74 20 6d 75 6c 74 69 70 6c 65 | tok-comment">//.support.multiple |
| 92d80 | 20 6f 75 74 70 75 74 73 2c 20 64 65 70 65 6e 64 69 6e 67 20 6f 6e 20 68 6f 77 3c 2f 73 70 61 6e | .outputs,.depending.on.how</span |
| 92da0 | 3e 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 | >.........<span.class="tok-comme |
| 92dc0 | 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 61 6e | nt">//.https://github.com/ziglan |
| 92de0 | 67 2f 7a 69 67 2f 69 73 73 75 65 73 2f 32 31 35 20 69 73 20 72 65 73 6f 6c 76 65 64 2e 3c 2f 73 | g/zig/issues/215.is.resolved.</s |
| 92e00 | 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f | pan>.........<span.class="tok-co |
| 92e20 | 6d 6d 65 6e 74 22 3e 2f 2f 20 49 74 20 69 73 20 61 6c 6c 6f 77 65 64 20 66 6f 72 20 74 68 65 72 | mment">//.It.is.allowed.for.ther |
| 92e40 | 65 20 74 6f 20 62 65 20 6e 6f 20 6f 75 74 70 75 74 73 2c 20 69 6e 20 77 68 69 63 68 20 63 61 73 | e.to.be.no.outputs,.in.which.cas |
| 92e60 | 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 73 3d 22 74 6f | e</span>.........<span.class="to |
| 92e80 | 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 74 68 69 73 20 63 6f 6c 6f 6e 20 77 6f 75 6c 64 20 62 | k-comment">//.this.colon.would.b |
| 92ea0 | 65 20 64 69 72 65 63 74 6c 79 20 66 6f 6c 6c 6f 77 65 64 20 62 79 20 74 68 65 20 63 6f 6c 6f 6e | e.directly.followed.by.the.colon |
| 92ec0 | 20 66 6f 72 20 74 68 65 20 69 6e 70 75 74 73 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 | .for.the.inputs.</span>......... |
| 92ee0 | 3a 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 | :.........<span.class="tok-comme |
| 92f00 | 6e 74 22 3e 2f 2f 20 54 68 69 73 20 73 70 65 63 69 66 69 65 73 20 74 68 65 20 6e 61 6d 65 20 74 | nt">//.This.specifies.the.name.t |
| 92f20 | 6f 20 62 65 20 75 73 65 64 20 69 6e 20 60 25 5b 72 65 74 5d 60 20 73 79 6e 74 61 78 20 69 6e 3c | o.be.used.in.`%[ret]`.syntax.in< |
| 92f40 | 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- |
| 92f60 | 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 74 68 65 20 61 62 6f 76 65 20 61 73 73 65 6d 62 6c 79 20 73 | comment">//.the.above.assembly.s |
| 92f80 | 74 72 69 6e 67 2e 20 54 68 69 73 20 65 78 61 6d 70 6c 65 20 64 6f 65 73 20 6e 6f 74 20 75 73 65 | tring..This.example.does.not.use |
| 92fa0 | 20 69 74 2c 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | .it,</span>.........<span.class= |
| 92fc0 | 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 62 75 74 20 74 68 65 20 73 79 6e 74 61 78 20 | "tok-comment">//.but.the.syntax. |
| 92fe0 | 69 73 20 6d 61 6e 64 61 74 6f 72 79 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 20 5b | is.mandatory.</span>...........[ |
| 93000 | 72 65 74 5d 0a 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ret]...........<span.class="tok- |
| 93020 | 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 4e 65 78 74 20 69 73 20 74 68 65 20 6f 75 74 70 75 74 20 63 | comment">//.Next.is.the.output.c |
| 93040 | 6f 6e 73 74 72 61 69 6e 74 20 73 74 72 69 6e 67 2e 20 54 68 69 73 20 66 65 61 74 75 72 65 20 69 | onstraint.string..This.feature.i |
| 93060 | 73 20 73 74 69 6c 6c 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 | s.still</span>...........<span.c |
| 93080 | 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 63 6f 6e 73 69 64 65 72 65 64 | lass="tok-comment">//.considered |
| 930a0 | 20 75 6e 73 74 61 62 6c 65 20 69 6e 20 5a 69 67 2c 20 61 6e 64 20 73 6f 20 4c 4c 56 4d 2f 47 43 | .unstable.in.Zig,.and.so.LLVM/GC |
| 930c0 | 43 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 | C.documentation</span>.......... |
| 930e0 | 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 75 | .<span.class="tok-comment">//.mu |
| 93100 | 73 74 20 62 65 20 75 73 65 64 20 74 6f 20 75 6e 64 65 72 73 74 61 6e 64 20 74 68 65 20 73 65 6d | st.be.used.to.understand.the.sem |
| 93120 | 61 6e 74 69 63 73 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 | antics.</span>...........<span.c |
| 93140 | 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 3a 2f 2f 72 65 6c | lass="tok-comment">//.http://rel |
| 93160 | 65 61 73 65 73 2e 6c 6c 76 6d 2e 6f 72 67 2f 31 30 2e 30 2e 30 2f 64 6f 63 73 2f 4c 61 6e 67 52 | eases.llvm.org/10.0.0/docs/LangR |
| 93180 | 65 66 2e 68 74 6d 6c 23 69 6e 6c 69 6e 65 2d 61 73 6d 2d 63 6f 6e 73 74 72 61 69 6e 74 2d 73 74 | ef.html#inline-asm-constraint-st |
| 931a0 | 72 69 6e 67 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | ring</span>...........<span.clas |
| 931c0 | 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 68 74 74 70 73 3a 2f 2f 67 63 63 2e 67 | s="tok-comment">//.https://gcc.g |
| 931e0 | 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 41 | nu.org/onlinedocs/gcc/Extended-A |
| 93200 | 73 6d 2e 68 74 6d 6c 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 | sm.html</span>...........<span.c |
| 93220 | 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 49 6e 20 74 68 69 73 20 65 78 | lass="tok-comment">//.In.this.ex |
| 93240 | 61 6d 70 6c 65 2c 20 74 68 65 20 63 6f 6e 73 74 72 61 69 6e 74 20 73 74 72 69 6e 67 20 6d 65 61 | ample,.the.constraint.string.mea |
| 93260 | 6e 73 20 26 71 75 6f 74 3b 74 68 65 20 72 65 73 75 6c 74 20 76 61 6c 75 65 20 6f 66 3c 2f 73 70 | ns."the.result.value.of</sp |
| 93280 | 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 63 | an>...........<span.class="tok-c |
| 932a0 | 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 74 68 69 73 20 69 6e 6c 69 6e 65 20 61 73 73 65 6d 62 6c 79 20 | omment">//.this.inline.assembly. |
| 932c0 | 69 6e 73 74 72 75 63 74 69 6f 6e 20 69 73 20 77 68 61 74 65 76 65 72 20 69 73 20 69 6e 20 24 72 | instruction.is.whatever.is.in.$r |
| 932e0 | 61 78 26 71 75 6f 74 3b 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e | ax".</span>...........<span |
| 93300 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 3d 7b 72 61 78 7d 26 71 75 | .class="tok-str">"={rax}&qu |
| 93320 | 6f 74 3b 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ot;</span>...........<span.class |
| 93340 | 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 65 69 74 68 65 72 | ="tok-comment">//.Next.is.either |
| 93360 | 20 61 20 76 61 6c 75 65 20 62 69 6e 64 69 6e 67 2c 20 6f 72 20 60 2d 26 67 74 3b 60 20 61 6e 64 | .a.value.binding,.or.`->`.and |
| 93380 | 20 74 68 65 6e 20 61 20 74 79 70 65 2e 20 54 68 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 | .then.a.type..The</span>........ |
| 933a0 | 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">//. |
| 933c0 | 74 79 70 65 20 69 73 20 74 68 65 20 72 65 73 75 6c 74 20 74 79 70 65 20 6f 66 20 74 68 65 20 69 | type.is.the.result.type.of.the.i |
| 933e0 | 6e 6c 69 6e 65 20 61 73 73 65 6d 62 6c 79 20 65 78 70 72 65 73 73 69 6f 6e 2e 3c 2f 73 70 61 6e | nline.assembly.expression.</span |
| 93400 | 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 |
| 93420 | 6d 65 6e 74 22 3e 2f 2f 20 49 66 20 69 74 20 69 73 20 61 20 76 61 6c 75 65 20 62 69 6e 64 69 6e | ment">//.If.it.is.a.value.bindin |
| 93440 | 67 2c 20 74 68 65 6e 20 60 25 5b 72 65 74 5d 60 20 73 79 6e 74 61 78 20 77 6f 75 6c 64 20 62 65 | g,.then.`%[ret]`.syntax.would.be |
| 93460 | 20 75 73 65 64 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | .used</span>...........<span.cla |
| 93480 | 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 74 6f 20 72 65 66 65 72 20 74 6f 20 | ss="tok-comment">//.to.refer.to. |
| 934a0 | 74 68 65 20 72 65 67 69 73 74 65 72 20 62 6f 75 6e 64 20 74 6f 20 74 68 65 20 76 61 6c 75 65 2e | the.register.bound.to.the.value. |
| 934c0 | 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 20 28 2d 26 67 74 3b 20 3c 73 70 61 6e 20 63 | </span>...........(->.<span.c |
| 934e0 | 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>),.. |
| 93500 | 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 |
| 93520 | 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 69 6e 70 75 74 73 | t">//.Next.is.the.list.of.inputs |
| 93540 | 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | .</span>...........<span.class=" |
| 93560 | 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 65 20 63 6f 6e 73 74 72 61 69 6e 74 20 66 | tok-comment">//.The.constraint.f |
| 93580 | 6f 72 20 74 68 65 73 65 20 69 6e 70 75 74 73 20 6d 65 61 6e 73 2c 20 26 71 75 6f 74 3b 77 68 65 | or.these.inputs.means,."whe |
| 935a0 | 6e 20 74 68 65 20 61 73 73 65 6d 62 6c 79 20 63 6f 64 65 20 69 73 3c 2f 73 70 61 6e 3e 0a 20 20 | n.the.assembly.code.is</span>... |
| 935c0 | 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 |
| 935e0 | 22 3e 2f 2f 20 65 78 65 63 75 74 65 64 2c 20 24 72 61 78 20 73 68 61 6c 6c 20 68 61 76 65 20 74 | ">//.executed,.$rax.shall.have.t |
| 93600 | 68 65 20 76 61 6c 75 65 20 6f 66 20 60 6e 75 6d 62 65 72 60 20 61 6e 64 20 24 72 64 69 20 73 68 | he.value.of.`number`.and.$rdi.sh |
| 93620 | 61 6c 6c 20 68 61 76 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 | all.have</span>...........<span. |
| 93640 | 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 76 61 6c 75 65 | class="tok-comment">//.the.value |
| 93660 | 20 6f 66 20 60 61 72 67 31 60 26 71 75 6f 74 3b 2e 20 41 6e 79 20 6e 75 6d 62 65 72 20 6f 66 20 | .of.`arg1`"..Any.number.of. |
| 93680 | 69 6e 70 75 74 20 70 61 72 61 6d 65 74 65 72 73 20 69 73 20 61 6c 6c 6f 77 65 64 2c 3c 2f 73 70 | input.parameters.is.allowed,</sp |
| 936a0 | 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 63 | an>...........<span.class="tok-c |
| 936c0 | 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 69 6e 63 6c 75 64 69 6e 67 20 6e 6f 6e 65 2e 3c 2f 73 70 61 6e | omment">//.including.none.</span |
| 936e0 | 3e 0a 20 20 20 20 20 20 20 20 3a 20 5b 6e 75 6d 62 65 72 5d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | >.........:.[number].<span.class |
| 93700 | 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 7b 72 61 78 7d 26 71 75 6f 74 3b 3c 2f 73 70 | ="tok-str">"{rax}"</sp |
| 93720 | 61 6e 3e 20 28 6e 75 6d 62 65 72 29 2c 0a 20 20 20 20 20 20 20 20 20 20 5b 61 72 67 31 5d 20 3c | an>.(number),...........[arg1].< |
| 93740 | 73 70 61 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 | span.class="tok-str">"{rdi} |
| 93760 | 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 28 61 72 67 31 29 2c 0a 20 20 20 20 20 20 20 20 20 20 | "</span>.(arg1),........... |
| 93780 | 3c 73 70 61 6e 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 | <span.class="tok-comment">//.Nex |
| 937a0 | 74 20 69 73 20 74 68 65 20 6c 69 73 74 20 6f 66 20 63 6c 6f 62 62 65 72 73 2e 20 54 68 65 73 65 | t.is.the.list.of.clobbers..These |
| 937c0 | 20 64 65 63 6c 61 72 65 20 61 20 73 65 74 20 6f 66 20 72 65 67 69 73 74 65 72 73 20 77 68 6f 73 | .declare.a.set.of.registers.whos |
| 937e0 | 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | e</span>...........<span.class=" |
| 93800 | 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 76 61 6c 75 65 73 20 77 69 6c 6c 20 6e 6f 74 20 | tok-comment">//.values.will.not. |
| 93820 | 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 |
| 93840 | 20 74 68 69 73 20 61 73 73 65 6d 62 6c 79 20 63 6f 64 65 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 | .this.assembly.code.</span>..... |
| 93860 | 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"> |
| 93880 | 2f 2f 20 54 68 65 73 65 20 64 6f 20 6e 6f 74 20 69 6e 63 6c 75 64 65 20 6f 75 74 70 75 74 20 6f | //.These.do.not.include.output.o |
| 938a0 | 72 20 69 6e 70 75 74 20 72 65 67 69 73 74 65 72 73 2e 20 54 68 65 20 73 70 65 63 69 61 6c 20 63 | r.input.registers..The.special.c |
| 938c0 | 6c 6f 62 62 65 72 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c | lobber</span>...........<span.cl |
| 938e0 | 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 76 61 6c 75 65 20 6f 66 20 26 71 | ass="tok-comment">//.value.of.&q |
| 93900 | 75 6f 74 3b 6d 65 6d 6f 72 79 26 71 75 6f 74 3b 20 6d 65 61 6e 73 20 74 68 61 74 20 74 68 65 20 | uot;memory".means.that.the. |
| 93920 | 61 73 73 65 6d 62 6c 79 20 77 72 69 74 65 73 20 74 6f 20 61 72 62 69 74 72 61 72 79 20 75 6e 64 | assembly.writes.to.arbitrary.und |
| 93940 | 65 63 6c 61 72 65 64 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 | eclared</span>...........<span.c |
| 93960 | 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 6d 65 6d 6f 72 79 20 6c 6f 63 | lass="tok-comment">//.memory.loc |
| 93980 | 61 74 69 6f 6e 73 20 2d 20 6e 6f 74 20 6f 6e 6c 79 20 74 68 65 20 6d 65 6d 6f 72 79 20 70 6f 69 | ations.-.not.only.the.memory.poi |
| 939a0 | 6e 74 65 64 20 74 6f 20 62 79 20 61 20 64 65 63 6c 61 72 65 64 20 69 6e 64 69 72 65 63 74 3c 2f | nted.to.by.a.declared.indirect</ |
| 939c0 | 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 6b | span>...........<span.class="tok |
| 939e0 | 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 6f 75 74 70 75 74 2e 20 49 6e 20 74 68 69 73 20 65 78 61 | -comment">//.output..In.this.exa |
| 93a00 | 6d 70 6c 65 20 77 65 20 6c 69 73 74 20 24 72 63 78 20 61 6e 64 20 24 72 31 31 20 62 65 63 61 75 | mple.we.list.$rcx.and.$r11.becau |
| 93a20 | 73 65 20 69 74 20 69 73 20 6b 6e 6f 77 6e 20 74 68 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 | se.it.is.known.the</span>....... |
| 93a40 | 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">// |
| 93a60 | 20 6b 65 72 6e 65 6c 20 73 79 73 63 61 6c 6c 20 64 6f 65 73 20 6e 6f 74 20 70 72 65 73 65 72 76 | .kernel.syscall.does.not.preserv |
| 93a80 | 65 20 74 68 65 73 65 20 72 65 67 69 73 74 65 72 73 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 | e.these.registers.</span>....... |
| 93aa0 | 20 20 3a 20 2e 7b 20 2e 72 63 78 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | ..:..{..rcx.=.<span.class="tok-n |
| 93ac0 | 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 2c 20 2e 72 31 31 20 3d 20 3c 73 70 61 6e 20 63 | ull">true</span>,..r11.=.<span.c |
| 93ae0 | 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 20 7d 29 3b 0a | lass="tok-null">true</span>.});. |
| 93b00 | 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>........< |
| 93b20 | 70 3e 0a 20 20 20 20 20 20 46 6f 72 20 78 38 36 20 61 6e 64 20 78 38 36 5f 36 34 20 74 61 72 67 | p>.......For.x86.and.x86_64.targ |
| 93b40 | 65 74 73 2c 20 74 68 65 20 73 79 6e 74 61 78 20 69 73 20 41 54 26 61 6d 70 3b 54 20 73 79 6e 74 | ets,.the.syntax.is.AT&T.synt |
| 93b60 | 61 78 2c 20 72 61 74 68 65 72 20 74 68 61 6e 20 74 68 65 20 6d 6f 72 65 0a 20 20 20 20 20 20 70 | ax,.rather.than.the.more.......p |
| 93b80 | 6f 70 75 6c 61 72 20 49 6e 74 65 6c 20 73 79 6e 74 61 78 2e 20 54 68 69 73 20 69 73 20 64 75 65 | opular.Intel.syntax..This.is.due |
| 93ba0 | 20 74 6f 20 74 65 63 68 6e 69 63 61 6c 20 63 6f 6e 73 74 72 61 69 6e 74 73 3b 20 61 73 73 65 6d | .to.technical.constraints;.assem |
| 93bc0 | 62 6c 79 20 70 61 72 73 69 6e 67 20 69 73 0a 20 20 20 20 20 20 70 72 6f 76 69 64 65 64 20 62 79 | bly.parsing.is.......provided.by |
| 93be0 | 20 4c 4c 56 4d 20 61 6e 64 20 69 74 73 20 73 75 70 70 6f 72 74 20 66 6f 72 20 49 6e 74 65 6c 20 | .LLVM.and.its.support.for.Intel. |
| 93c00 | 73 79 6e 74 61 78 20 69 73 20 62 75 67 67 79 20 61 6e 64 20 6e 6f 74 20 77 65 6c 6c 20 74 65 73 | syntax.is.buggy.and.not.well.tes |
| 93c20 | 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 20 20 | ted........</p>.......<p>....... |
| 93c40 | 53 6f 6d 65 20 64 61 79 20 5a 69 67 20 6d 61 79 20 68 61 76 65 20 69 74 73 20 6f 77 6e 20 61 73 | Some.day.Zig.may.have.its.own.as |
| 93c60 | 73 65 6d 62 6c 65 72 2e 20 54 68 69 73 20 77 6f 75 6c 64 20 61 6c 6c 6f 77 20 69 74 20 74 6f 20 | sembler..This.would.allow.it.to. |
| 93c80 | 69 6e 74 65 67 72 61 74 65 20 6d 6f 72 65 20 73 65 61 6d 6c 65 73 73 6c 79 0a 20 20 20 20 20 20 | integrate.more.seamlessly....... |
| 93ca0 | 69 6e 74 6f 20 74 68 65 20 6c 61 6e 67 75 61 67 65 2c 20 61 73 20 77 65 6c 6c 20 61 73 20 62 65 | into.the.language,.as.well.as.be |
| 93cc0 | 20 63 6f 6d 70 61 74 69 62 6c 65 20 77 69 74 68 20 74 68 65 20 70 6f 70 75 6c 61 72 20 4e 41 53 | .compatible.with.the.popular.NAS |
| 93ce0 | 4d 20 73 79 6e 74 61 78 2e 20 54 68 69 73 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 0a 20 20 20 | M.syntax..This.documentation.... |
| 93d00 | 20 20 20 73 65 63 74 69 6f 6e 20 77 69 6c 6c 20 62 65 20 75 70 64 61 74 65 64 20 62 65 66 6f 72 | ...section.will.be.updated.befor |
| 93d20 | 65 20 31 2e 30 2e 30 20 69 73 20 72 65 6c 65 61 73 65 64 2c 20 77 69 74 68 20 61 20 63 6f 6e 63 | e.1.0.0.is.released,.with.a.conc |
| 93d40 | 6c 75 73 69 76 65 20 73 74 61 74 65 6d 65 6e 74 20 61 62 6f 75 74 20 74 68 65 20 73 74 61 74 75 | lusive.statement.about.the.statu |
| 93d60 | 73 0a 20 20 20 20 20 20 6f 66 20 41 54 26 61 6d 70 3b 54 20 76 73 20 49 6e 74 65 6c 2f 4e 41 53 | s.......of.AT&T.vs.Intel/NAS |
| 93d80 | 4d 20 73 79 6e 74 61 78 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 68 33 20 69 | M.syntax........</p>.......<h3.i |
| 93da0 | 64 3d 22 4f 75 74 70 75 74 2d 43 6f 6e 73 74 72 61 69 6e 74 73 22 3e 3c 61 20 68 72 65 66 3d 22 | d="Output-Constraints"><a.href=" |
| 93dc0 | 23 74 6f 63 2d 4f 75 74 70 75 74 2d 43 6f 6e 73 74 72 61 69 6e 74 73 22 3e 4f 75 74 70 75 74 20 | #toc-Output-Constraints">Output. |
| 93de0 | 43 6f 6e 73 74 72 61 69 6e 74 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 | Constraints</a>.<a.class="hdr".h |
| 93e00 | 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 c2 a7 3c 2f 61 3e | ref="#Output-Constraints">..</a> |
| 93e20 | 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 4f 75 74 70 75 74 20 63 6f | </h3>........<p>.......Output.co |
| 93e40 | 6e 73 74 72 61 69 6e 74 73 20 61 72 65 20 73 74 69 6c 6c 20 63 6f 6e 73 69 64 65 72 65 64 20 74 | nstraints.are.still.considered.t |
| 93e60 | 6f 20 62 65 20 75 6e 73 74 61 62 6c 65 20 69 6e 20 5a 69 67 2c 20 61 6e 64 0a 20 20 20 20 20 20 | o.be.unstable.in.Zig,.and....... |
| 93e80 | 73 6f 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 68 74 74 70 3a 2f 2f 72 65 6c 65 61 73 65 | so.......<a.href="http://release |
| 93ea0 | 73 2e 6c 6c 76 6d 2e 6f 72 67 2f 31 30 2e 30 2e 30 2f 64 6f 63 73 2f 4c 61 6e 67 52 65 66 2e 68 | s.llvm.org/10.0.0/docs/LangRef.h |
| 93ec0 | 74 6d 6c 23 69 6e 6c 69 6e 65 2d 61 73 6d 2d 63 6f 6e 73 74 72 61 69 6e 74 2d 73 74 72 69 6e 67 | tml#inline-asm-constraint-string |
| 93ee0 | 22 3e 4c 4c 56 4d 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 3c 2f 61 3e 0a 20 20 20 20 20 20 61 | ">LLVM.documentation</a>.......a |
| 93f00 | 6e 64 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 67 63 63 2e 67 6e | nd.......<a.href="https://gcc.gn |
| 93f20 | 75 2e 6f 72 67 2f 6f 6e 6c 69 6e 65 64 6f 63 73 2f 67 63 63 2f 45 78 74 65 6e 64 65 64 2d 41 73 | u.org/onlinedocs/gcc/Extended-As |
| 93f40 | 6d 2e 68 74 6d 6c 22 3e 47 43 43 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 3c 2f 61 3e 0a 20 20 | m.html">GCC.documentation</a>... |
| 93f60 | 20 20 20 20 6d 75 73 74 20 62 65 20 75 73 65 64 20 74 6f 20 75 6e 64 65 72 73 74 61 6e 64 20 74 | ....must.be.used.to.understand.t |
| 93f80 | 68 65 20 73 65 6d 61 6e 74 69 63 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c | he.semantics........</p>.......< |
| 93fa0 | 70 3e 0a 20 20 20 20 20 20 4e 6f 74 65 20 74 68 61 74 20 73 6f 6d 65 20 62 72 65 61 6b 69 6e 67 | p>.......Note.that.some.breaking |
| 93fc0 | 20 63 68 61 6e 67 65 73 20 74 6f 20 6f 75 74 70 75 74 20 63 6f 6e 73 74 72 61 69 6e 74 73 20 61 | .changes.to.output.constraints.a |
| 93fe0 | 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 68 | re.planned.with.......<a.href="h |
| 94000 | 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 |
| 94020 | 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 20 | sues/215">issue.#215</a>........ |
| 94040 | 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 49 6e 70 75 74 | </p>...............<h3.id="Input |
| 94060 | 2d 43 6f 6e 73 74 72 61 69 6e 74 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 49 6e 70 75 | -Constraints"><a.href="#toc-Inpu |
| 94080 | 74 2d 43 6f 6e 73 74 72 61 69 6e 74 73 22 3e 49 6e 70 75 74 20 43 6f 6e 73 74 72 61 69 6e 74 73 | t-Constraints">Input.Constraints |
| 940a0 | 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 70 75 74 | </a>.<a.class="hdr".href="#Input |
| 940c0 | 2d 43 6f 6e 73 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 | -Constraints">..</a></h3>....... |
| 940e0 | 20 3c 70 3e 0a 20 20 20 20 20 20 49 6e 70 75 74 20 63 6f 6e 73 74 72 61 69 6e 74 73 20 61 72 65 | .<p>.......Input.constraints.are |
| 94100 | 20 73 74 69 6c 6c 20 63 6f 6e 73 69 64 65 72 65 64 20 74 6f 20 62 65 20 75 6e 73 74 61 62 6c 65 | .still.considered.to.be.unstable |
| 94120 | 20 69 6e 20 5a 69 67 2c 20 61 6e 64 0a 20 20 20 20 20 20 73 6f 0a 20 20 20 20 20 20 3c 61 20 68 | .in.Zig,.and.......so.......<a.h |
| 94140 | 72 65 66 3d 22 68 74 74 70 3a 2f 2f 72 65 6c 65 61 73 65 73 2e 6c 6c 76 6d 2e 6f 72 67 2f 31 30 | ref="http://releases.llvm.org/10 |
| 94160 | 2e 30 2e 30 2f 64 6f 63 73 2f 4c 61 6e 67 52 65 66 2e 68 74 6d 6c 23 69 6e 6c 69 6e 65 2d 61 73 | .0.0/docs/LangRef.html#inline-as |
| 94180 | 6d 2d 63 6f 6e 73 74 72 61 69 6e 74 2d 73 74 72 69 6e 67 22 3e 4c 4c 56 4d 20 64 6f 63 75 6d 65 | m-constraint-string">LLVM.docume |
| 941a0 | 6e 74 61 74 69 6f 6e 3c 2f 61 3e 0a 20 20 20 20 20 20 61 6e 64 0a 20 20 20 20 20 20 3c 61 20 68 | ntation</a>.......and.......<a.h |
| 941c0 | 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 67 63 63 2e 67 6e 75 2e 6f 72 67 2f 6f 6e 6c 69 6e 65 64 | ref="https://gcc.gnu.org/onlined |
| 941e0 | 6f 63 73 2f 67 63 63 2f 45 78 74 65 6e 64 65 64 2d 41 73 6d 2e 68 74 6d 6c 22 3e 47 43 43 20 64 | ocs/gcc/Extended-Asm.html">GCC.d |
| 94200 | 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 3c 2f 61 3e 0a 20 20 20 20 20 20 6d 75 73 74 20 62 65 20 75 | ocumentation</a>.......must.be.u |
| 94220 | 73 65 64 20 74 6f 20 75 6e 64 65 72 73 74 61 6e 64 20 74 68 65 20 73 65 6d 61 6e 74 69 63 73 2e | sed.to.understand.the.semantics. |
| 94240 | 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 65 | .......</p>.......<p>.......Note |
| 94260 | 20 74 68 61 74 20 73 6f 6d 65 20 62 72 65 61 6b 69 6e 67 20 63 68 61 6e 67 65 73 20 74 6f 20 69 | .that.some.breaking.changes.to.i |
| 94280 | 6e 70 75 74 20 63 6f 6e 73 74 72 61 69 6e 74 73 20 61 72 65 20 70 6c 61 6e 6e 65 64 20 77 69 74 | nput.constraints.are.planned.wit |
| 942a0 | 68 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e | h.......<a.href="https://github. |
| 942c0 | 63 6f 6d 2f 7a 69 67 6c 61 6e 67 2f 7a 69 67 2f 69 73 73 75 65 73 2f 32 31 35 22 3e 69 73 73 75 | com/ziglang/zig/issues/215">issu |
| 942e0 | 65 20 23 32 31 35 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 | e.#215</a>........</p>.......... |
| 94300 | 20 20 20 20 20 3c 68 33 20 69 64 3d 22 43 6c 6f 62 62 65 72 73 22 3e 3c 61 20 68 72 65 66 3d 22 | .....<h3.id="Clobbers"><a.href=" |
| 94320 | 23 74 6f 63 2d 43 6c 6f 62 62 65 72 73 22 3e 43 6c 6f 62 62 65 72 73 3c 2f 61 3e 20 3c 61 20 63 | #toc-Clobbers">Clobbers</a>.<a.c |
| 94340 | 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 43 6c 6f 62 62 65 72 73 22 3e c2 a7 3c 2f | lass="hdr".href="#Clobbers">..</ |
| 94360 | 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 43 6c 6f 62 62 65 72 | a></h3>........<p>.......Clobber |
| 94380 | 73 20 61 72 65 20 74 68 65 20 73 65 74 20 6f 66 20 72 65 67 69 73 74 65 72 73 20 77 68 6f 73 65 | s.are.the.set.of.registers.whose |
| 943a0 | 20 76 61 6c 75 65 73 20 77 69 6c 6c 20 6e 6f 74 20 62 65 20 70 72 65 73 65 72 76 65 64 20 62 79 | .values.will.not.be.preserved.by |
| 943c0 | 20 74 68 65 20 65 78 65 63 75 74 69 6f 6e 20 6f 66 0a 20 20 20 20 20 20 74 68 65 20 61 73 73 65 | .the.execution.of.......the.asse |
| 943e0 | 6d 62 6c 79 20 63 6f 64 65 2e 20 54 68 65 73 65 20 64 6f 20 6e 6f 74 20 69 6e 63 6c 75 64 65 20 | mbly.code..These.do.not.include. |
| 94400 | 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 73 | output.or.input.registers..The.s |
| 94420 | 70 65 63 69 61 6c 20 63 6c 6f 62 62 65 72 0a 20 20 20 20 20 20 76 61 6c 75 65 20 6f 66 20 3c 63 | pecial.clobber.......value.of.<c |
| 94440 | 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 75 6f 74 3b | ode><span.class="tok-str">" |
| 94460 | 6d 65 6d 6f 72 79 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6d 65 61 6e 73 | memory"</span></code>.means |
| 94480 | 20 74 68 61 74 20 74 68 65 20 61 73 73 65 6d 62 6c 79 20 63 61 75 73 65 73 20 77 72 69 74 65 73 | .that.the.assembly.causes.writes |
| 944a0 | 20 74 6f 0a 20 20 20 20 20 20 61 72 62 69 74 72 61 72 79 20 75 6e 64 65 63 6c 61 72 65 64 20 6d | .to.......arbitrary.undeclared.m |
| 944c0 | 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 |
| 944e0 | 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 0a 20 | emory.pointed.to.by.a.declared.. |
| 94500 | 20 20 20 20 20 69 6e 64 69 72 65 63 74 20 6f 75 74 70 75 74 2e 0a 20 20 20 20 20 20 3c 2f 70 3e | .....indirect.output........</p> |
| 94520 | 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 46 61 69 6c 75 72 65 20 74 6f 20 64 65 63 6c | .......<p>.......Failure.to.decl |
| 94540 | 61 72 65 20 74 68 65 20 66 75 6c 6c 20 73 65 74 20 6f 66 20 63 6c 6f 62 62 65 72 73 20 66 6f 72 | are.the.full.set.of.clobbers.for |
| 94560 | 20 61 20 67 69 76 65 6e 20 69 6e 6c 69 6e 65 20 61 73 73 65 6d 62 6c 79 0a 20 20 20 20 20 20 65 | .a.given.inline.assembly.......e |
| 94580 | 78 70 72 65 73 73 69 6f 6e 20 69 73 20 75 6e 63 68 65 63 6b 65 64 20 3c 61 20 68 72 65 66 3d 22 | xpression.is.unchecked.<a.href=" |
| 945a0 | 23 49 6c 6c 65 67 61 6c 2d 42 65 68 61 76 69 6f 72 22 3e 49 6c 6c 65 67 61 6c 20 42 65 68 61 76 | #Illegal-Behavior">Illegal.Behav |
| 945c0 | 69 6f 72 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 | ior</a>........</p>............. |
| 945e0 | 20 20 3c 68 33 20 69 64 3d 22 47 6c 6f 62 61 6c 2d 41 73 73 65 6d 62 6c 79 22 3e 3c 61 20 68 72 | ..<h3.id="Global-Assembly"><a.hr |
| 94600 | 65 66 3d 22 23 74 6f 63 2d 47 6c 6f 62 61 6c 2d 41 73 73 65 6d 62 6c 79 22 3e 47 6c 6f 62 61 6c | ef="#toc-Global-Assembly">Global |
| 94620 | 20 41 73 73 65 6d 62 6c 79 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 | .Assembly</a>.<a.class="hdr".hre |
| 94640 | 66 3d 22 23 47 6c 6f 62 61 6c 2d 41 73 73 65 6d 62 6c 79 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e | f="#Global-Assembly">..</a></h3> |
| 94660 | 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 57 68 65 6e 20 61 6e 20 61 73 73 65 6d 62 | ........<p>.......When.an.assemb |
| 94680 | 6c 79 20 65 78 70 72 65 73 73 69 6f 6e 20 6f 63 63 75 72 73 20 69 6e 20 61 20 3c 61 20 68 72 65 | ly.expression.occurs.in.a.<a.hre |
| 946a0 | 66 3d 22 23 43 6f 6e 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 | f="#Containers">container</a>.le |
| 946c0 | 76 65 6c 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 | vel.<a.href="#comptime">comptime |
| 946e0 | 3c 2f 61 3e 20 62 6c 6f 63 6b 2c 20 74 68 69 73 20 69 73 0a 20 20 20 20 20 20 3c 73 74 72 6f 6e | </a>.block,.this.is.......<stron |
| 94700 | 67 3e 67 6c 6f 62 61 6c 20 61 73 73 65 6d 62 6c 79 3c 2f 73 74 72 6f 6e 67 3e 2e 0a 20 20 20 20 | g>global.assembly</strong>...... |
| 94720 | 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 6b 69 6e 64 | ..</p>.......<p>.......This.kind |
| 94740 | 20 6f 66 20 61 73 73 65 6d 62 6c 79 20 68 61 73 20 64 69 66 66 65 72 65 6e 74 20 72 75 6c 65 73 | .of.assembly.has.different.rules |
| 94760 | 20 74 68 61 6e 20 69 6e 6c 69 6e 65 20 61 73 73 65 6d 62 6c 79 2e 20 46 69 72 73 74 2c 20 3c 63 | .than.inline.assembly..First,.<c |
| 94780 | 6f 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 |
| 947a0 | 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 0a 20 20 20 20 20 20 69 73 20 6e 6f 74 20 76 61 6c | e</span></code>.......is.not.val |
| 947c0 | 69 64 20 62 65 63 61 75 73 65 20 61 6c 6c 20 67 6c 6f 62 61 6c 20 61 73 73 65 6d 62 6c 79 20 69 | id.because.all.global.assembly.i |
| 947e0 | 73 20 75 6e 63 6f 6e 64 69 74 69 6f 6e 61 6c 6c 79 20 69 6e 63 6c 75 64 65 64 2e 0a 20 20 20 20 | s.unconditionally.included...... |
| 94800 | 20 20 53 65 63 6f 6e 64 2c 20 74 68 65 72 65 20 61 72 65 20 6e 6f 20 69 6e 70 75 74 73 2c 20 6f | ..Second,.there.are.no.inputs,.o |
| 94820 | 75 74 70 75 74 73 2c 20 6f 72 20 63 6c 6f 62 62 65 72 73 2e 20 41 6c 6c 20 67 6c 6f 62 61 6c 20 | utputs,.or.clobbers..All.global. |
| 94840 | 61 73 73 65 6d 62 6c 79 20 69 73 20 63 6f 6e 63 61 74 65 6e 61 74 65 64 0a 20 20 20 20 20 20 76 | assembly.is.concatenated.......v |
| 94860 | 65 72 62 61 74 69 6d 20 69 6e 74 6f 20 6f 6e 65 20 6c 6f 6e 67 20 73 74 72 69 6e 67 20 61 6e 64 | erbatim.into.one.long.string.and |
| 94880 | 20 61 73 73 65 6d 62 6c 65 64 20 74 6f 67 65 74 68 65 72 2e 20 54 68 65 72 65 20 61 72 65 20 6e | .assembled.together..There.are.n |
| 948a0 | 6f 20 74 65 6d 70 6c 61 74 65 20 73 75 62 73 74 69 74 75 74 69 6f 6e 20 72 75 6c 65 73 20 72 65 | o.template.substitution.rules.re |
| 948c0 | 67 61 72 64 69 6e 67 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 25 3c 2f 63 6f 64 65 3e 20 61 73 20 | garding.......<code>%</code>.as. |
| 948e0 | 74 68 65 72 65 20 61 72 65 20 69 6e 20 69 6e 6c 69 6e 65 20 61 73 73 65 6d 62 6c 79 20 65 78 70 | there.are.in.inline.assembly.exp |
| 94900 | 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 69 67 75 | ressions........</p>.......<figu |
| 94920 | 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">< |
| 94940 | 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 67 6c 6f 62 61 6c 5f 61 73 | cite.class="file">test_global_as |
| 94960 | 73 65 6d 62 6c 79 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 | sembly.zig</cite></figcaption><p |
| 94980 | 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 |
| 949a0 | 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 |
| 949c0 | 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. |
| 949e0 | 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"< |
| 94a00 | 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 |
| 94a20 | 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. |
| 94a40 | 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 6f | expect;..<span.class="tok-kw">co |
| 94a60 | 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= |
| 94a80 | 22 74 6f 6b 2d 6b 77 22 3e 61 73 6d 3c 2f 73 70 61 6e 3e 20 28 0a 20 20 20 20 20 20 20 20 3c 73 | "tok-kw">asm</span>.(.........<s |
| 94aa0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 5c 5c 2e 67 6c 6f 62 61 6c 20 6d 79 | pan.class="tok-str">\\.global.my |
| 94ac0 | 5f 66 75 6e 63 3b 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 | _func;</span>.........<span.clas |
| 94ae0 | 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 5c 5c 2e 74 79 70 65 20 6d 79 5f 66 75 6e 63 2c 20 40 66 75 | s="tok-str">\\.type.my_func,.@fu |
| 94b00 | 6e 63 74 69 6f 6e 3b 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 | nction;</span>.........<span.cla |
| 94b20 | 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 5c 5c 6d 79 5f 66 75 6e 63 3a 3c 2f 73 70 61 6e 3e 0a 20 | ss="tok-str">\\my_func:</span>.. |
| 94b40 | 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 20 | .......<span.class="tok-str">\\. |
| 94b60 | 20 6c 65 61 20 28 25 72 64 69 2c 25 72 73 69 2c 31 29 2c 25 65 61 78 3c 2f 73 70 61 6e 3e 0a 20 | .lea.(%rdi,%rsi,1),%eax</span>.. |
| 94b80 | 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 20 | .......<span.class="tok-str">\\. |
| 94ba0 | 20 72 65 74 71 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 | .retq</span>.....);.}..<span.cla |
| 94bc0 | 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. |
| 94be0 | 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 |
| 94c00 | 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 6d 79 5f 66 75 6e 63 3c 2f 73 70 61 6e 3e 28 61 3a 20 | lass="tok-fn">my_func</span>(a:. |
| 94c20 | 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 |
| 94c40 | 3e 2c 20 62 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 | >,.b:.<span.class="tok-type">i32 |
| 94c60 | 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"> |
| 94c80 | 69 33 32 3c 2f 73 70 61 6e 3e 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | i32</span>;..<span.class="tok-kw |
| 94ca0 | 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 |
| 94cc0 | 74 72 22 3e 26 71 75 6f 74 3b 67 6c 6f 62 61 6c 20 61 73 73 65 6d 62 6c 79 26 71 75 6f 74 3b 3c | tr">"global.assembly"< |
| 94ce0 | 2f 73 70 61 6e 3e 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 |
| 94d00 | 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 6d 79 5f 66 75 6e 63 28 3c 73 70 61 | ">try</span>.expect(my_func(<spa |
| 94d20 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 3c 2f 73 70 61 6e 3e 2c 20 | n.class="tok-number">12</span>,. |
| 94d40 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 34 3c 2f 73 70 61 | <span.class="tok-number">34</spa |
| 94d60 | 6e 3e 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e | n>).==.<span.class="tok-number"> |
| 94d80 | 34 36 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 | 46</span>);.}</code></pre></figu |
| 94da0 | 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 |
| 94dc0 | 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> |
| 94de0 | 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 67 6c 6f 62 61 | <samp>$.<kbd>zig.test.test_globa |
| 94e00 | 6c 5f 61 73 73 65 6d 62 6c 79 2e 7a 69 67 20 2d 74 61 72 67 65 74 20 78 38 36 5f 36 34 2d 6c 69 | l_assembly.zig.-target.x86_64-li |
| 94e20 | 6e 75 78 20 2d 66 6c 6c 76 6d 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 67 6c 6f 62 61 6c | nux.-fllvm</kbd>.1/1.test_global |
| 94e40 | 5f 61 73 73 65 6d 62 6c 79 2e 74 65 73 74 2e 67 6c 6f 62 61 6c 20 61 73 73 65 6d 62 6c 79 2e 2e | _assembly.test.global.assembly.. |
| 94e60 | 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>< |
| 94e80 | 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>.................. |
| 94ea0 | 20 20 20 20 20 3c 68 32 20 69 64 3d 22 41 74 6f 6d 69 63 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 | .....<h2.id="Atomics"><a.href="# |
| 94ec0 | 74 6f 63 2d 41 74 6f 6d 69 63 73 22 3e 41 74 6f 6d 69 63 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 | toc-Atomics">Atomics</a>.<a.clas |
| 94ee0 | 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 41 74 6f 6d 69 63 73 22 3e c2 a7 3c 2f 61 3e 3c 2f | s="hdr".href="#Atomics">..</a></ |
| 94f00 | 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 54 4f 44 4f 3a 20 40 61 74 6f 6d 69 63 20 72 6d 77 3c | h2>........<p>TODO:.@atomic.rmw< |
| 94f20 | 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 54 4f 44 4f 3a 20 62 75 69 6c 74 69 6e 20 61 74 6f 6d 69 | /p>.......<p>TODO:.builtin.atomi |
| 94f40 | 63 20 6d 65 6d 6f 72 79 20 6f 72 64 65 72 69 6e 67 20 65 6e 75 6d 3c 2f 70 3e 0a 0a 20 20 20 20 | c.memory.ordering.enum</p>...... |
| 94f60 | 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 |
| 94f80 | 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 3c 2f 61 3e | ef="#atomicLoad">@atomicLoad</a> |
| 94fa0 | 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 53 74 6f 72 65 22 | </li>.<li><a.href="#atomicStore" |
| 94fc0 | 3e 40 61 74 6f 6d 69 63 53 74 6f 72 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 | >@atomicStore</a></li>.<li><a.hr |
| 94fe0 | 65 66 3d 22 23 61 74 6f 6d 69 63 52 6d 77 22 3e 40 61 74 6f 6d 69 63 52 6d 77 3c 2f 61 3e 3c 2f | ef="#atomicRmw">@atomicRmw</a></ |
| 95000 | 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 63 6d 70 78 63 68 67 57 65 61 6b 22 3e 40 | li>.<li><a.href="#cmpxchgWeak">@ |
| 95020 | 63 6d 70 78 63 68 67 57 65 61 6b 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 | cmpxchgWeak</a></li>.<li><a.href |
| 95040 | 3d 22 23 63 6d 70 78 63 68 67 53 74 72 6f 6e 67 22 3e 40 63 6d 70 78 63 68 67 53 74 72 6f 6e 67 | ="#cmpxchgStrong">@cmpxchgStrong |
| 95060 | 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 20 | </a></li>.</ul>................. |
| 95080 | 3c 68 32 20 69 64 3d 22 41 73 79 6e 63 2d 46 75 6e 63 74 69 6f 6e 73 22 3e 3c 61 20 68 72 65 66 | <h2.id="Async-Functions"><a.href |
| 950a0 | 3d 22 23 74 6f 63 2d 41 73 79 6e 63 2d 46 75 6e 63 74 69 6f 6e 73 22 3e 41 73 79 6e 63 20 46 75 | ="#toc-Async-Functions">Async.Fu |
| 950c0 | 6e 63 74 69 6f 6e 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d | nctions</a>.<a.class="hdr".href= |
| 950e0 | 22 23 41 73 79 6e 63 2d 46 75 6e 63 74 69 6f 6e 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a | "#Async-Functions">..</a></h2>.. |
| 95100 | 20 20 20 20 20 20 3c 70 3e 41 73 79 6e 63 20 66 75 6e 63 74 69 6f 6e 73 20 72 65 67 72 65 73 73 | ......<p>Async.functions.regress |
| 95120 | 65 64 20 77 69 74 68 20 74 68 65 20 72 65 6c 65 61 73 65 20 6f 66 20 30 2e 31 31 2e 30 2e 20 54 | ed.with.the.release.of.0.11.0..T |
| 95140 | 68 65 20 63 75 72 72 65 6e 74 20 70 6c 61 6e 20 69 73 20 74 6f 0a 20 20 20 20 20 20 72 65 69 6e | he.current.plan.is.to.......rein |
| 95160 | 74 72 6f 64 75 63 65 20 74 68 65 6d 20 61 73 20 61 20 6c 6f 77 65 72 20 6c 65 76 65 6c 20 70 72 | troduce.them.as.a.lower.level.pr |
| 95180 | 69 6d 69 74 69 76 65 20 74 68 61 74 20 70 6f 77 65 72 73 20 49 2f 4f 20 69 6d 70 6c 65 6d 65 6e | imitive.that.powers.I/O.implemen |
| 951a0 | 74 61 74 69 6f 6e 73 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 54 72 61 63 6b 69 6e 67 20 69 | tations.</p>.......<p>Tracking.i |
| 951c0 | 73 73 75 65 3a 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 | ssue:.<a.href="https://github.co |
| 951e0 | 6d 2f 7a 69 67 6c 61 6e 67 2f 7a 69 67 2f 69 73 73 75 65 73 2f 32 33 34 34 36 22 3e 50 72 6f 70 | m/ziglang/zig/issues/23446">Prop |
| 95200 | 6f 73 61 6c 3a 20 73 74 61 63 6b 6c 65 73 73 20 63 6f 72 6f 75 74 69 6e 65 73 20 61 73 20 6c 6f | osal:.stackless.coroutines.as.lo |
| 95220 | 77 2d 6c 65 76 65 6c 20 70 72 69 6d 69 74 69 76 65 73 3c 2f 61 3e 3c 2f 70 3e 0a 20 20 20 20 20 | w-level.primitives</a></p>...... |
| 95240 | 20 0a 0a 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 | .........<h2.id="Builtin-Functio |
| 95260 | 6e 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 42 75 69 6c 74 69 6e 2d 46 75 6e 63 74 69 | ns"><a.href="#toc-Builtin-Functi |
| 95280 | 6f 6e 73 22 3e 42 75 69 6c 74 69 6e 20 46 75 6e 63 74 69 6f 6e 73 3c 2f 61 3e 20 3c 61 20 63 6c | ons">Builtin.Functions</a>.<a.cl |
| 952a0 | 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 46 75 6e 63 74 69 6f | ass="hdr".href="#Builtin-Functio |
| 952c0 | 6e 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 | ns">..</a></h2>........<p>...... |
| 952e0 | 20 42 75 69 6c 74 69 6e 20 66 75 6e 63 74 69 6f 6e 73 20 61 72 65 20 70 72 6f 76 69 64 65 64 20 | .Builtin.functions.are.provided. |
| 95300 | 62 79 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 20 61 6e 64 20 61 72 65 20 70 72 65 66 69 78 65 64 | by.the.compiler.and.are.prefixed |
| 95320 | 20 77 69 74 68 20 3c 63 6f 64 65 3e 40 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 54 68 65 20 | .with.<code>@</code>........The. |
| 95340 | 3c 63 6f 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 | <code><span.class="tok-kw">compt |
| 95360 | 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 20 6f 6e 20 61 20 70 | ime</span></code>.keyword.on.a.p |
| 95380 | 61 72 61 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 | arameter.means.that.the.paramete |
| 953a0 | 72 20 6d 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 | r.must.be.known.......at.compile |
| 953c0 | 20 74 69 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 | .time........</p>.......<h3.id=" |
| 953e0 | 61 64 64 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 | addrSpaceCast"><a.href="#toc-add |
| 95400 | 72 53 70 61 63 65 43 61 73 74 22 3e 40 61 64 64 72 53 70 61 63 65 43 61 73 74 3c 2f 61 3e 20 3c | rSpaceCast">@addrSpaceCast</a>.< |
| 95420 | 61 20 63 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 | a.class="hdr".href="#addrSpaceCa |
| 95440 | 73 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 | st">..</a></h3>........<pre><cod |
| 95460 | 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 64 | e><span.class="tok-builtin">@add |
| 95480 | 72 53 70 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 | rSpaceCast</span>(ptr:.<span.cla |
| 954a0 | 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 |
| 954c0 | 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>< |
| 954e0 | 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 |
| 95500 | 76 65 72 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 | verts.a.pointer.from.one.address |
| 95520 | 20 73 70 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 | .space.to.another..The.new.addre |
| 95540 | 73 73 20 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 | ss.space.is.inferred....based.on |
| 95560 | 20 74 68 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 | .the.result.type..Depending.on.t |
| 95580 | 68 65 20 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 | he.current.target.and.address.sp |
| 955a0 | 61 63 65 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 | aces,.this.cast....may.be.a.no-o |
| 955c0 | 70 2c 20 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 | p,.a.complex.operation,.or.illeg |
| 955e0 | 61 6c 2e 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 | al..If.the.cast.is.legal,.then.t |
| 95600 | 68 65 20 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 | he.resulting....pointer.points.t |
| 95620 | 6f 20 74 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 | o.the.same.memory.location.as.th |
| 95640 | 65 20 70 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 | e.pointer.operand..It.is.always. |
| 95660 | 76 61 6c 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 | valid.to....cast.a.pointer.betwe |
| 95680 | 65 6e 20 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 | en.the.same.address.spaces...... |
| 956a0 | 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 61 64 64 57 | ..</p>..............<h3.id="addW |
| 956c0 | 69 74 68 4f 76 65 72 66 6c 6f 77 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 61 64 64 57 69 | ithOverflow"><a.href="#toc-addWi |
| 956e0 | 74 68 4f 76 65 72 66 6c 6f 77 22 3e 40 61 64 64 57 69 74 68 4f 76 65 72 66 6c 6f 77 3c 2f 61 3e | thOverflow">@addWithOverflow</a> |
| 95700 | 20 3c 61 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 | .<a.class="hdr".href="#addWithOv |
| 95720 | 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 20 3c 70 72 65 3e | erflow">..</a></h3>........<pre> |
| 95740 | 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"> |
| 95760 | 40 61 64 64 57 69 74 68 4f 76 65 72 66 6c 6f 77 3c 2f 73 70 61 6e 3e 28 61 3a 20 3c 73 70 61 6e | @addWithOverflow</span>(a:.<span |
| 95780 | 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>,. |
| 957a0 | 62 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 | b:.<span.class="tok-kw">anytype< |
| 957c0 | 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 73 74 72 | /span>).<span.class="tok-kw">str |
| 957e0 | 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 62 75 | uct</span>.{.<span.class="tok-bu |
| 95800 | 69 6c 74 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 | iltin">@TypeOf</span>(a,.b),.<sp |
| 95820 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 31 3c 2f 73 70 61 6e 3e 20 7d 3c | an.class="tok-type">u1</span>.}< |
| 95840 | 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 50 65 72 | /code></pre>.......<p>.......Per |
| 95860 | 66 6f 72 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 | forms.<code>a.+.b</code>.and.ret |
| 95880 | 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 6c 74 20 61 6e 64 | urns.a.tuple.with.the.result.and |
| 958a0 | 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 20 20 20 20 20 20 | .a.possible.overflow.bit........ |
| 958c0 | 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 6c 69 67 6e 43 | </p>..............<h3.id="alignC |
| 958e0 | 61 73 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 61 6c 69 67 6e 43 61 73 74 22 3e 40 61 | ast"><a.href="#toc-alignCast">@a |
| 95900 | 6c 69 67 6e 43 61 73 74 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 | lignCast</a>.<a.class="hdr".href |
| 95920 | 3d 22 23 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 | ="#alignCast">..</a></h3>....... |
| 95940 | 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 |
| 95960 | 6c 74 69 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 | ltin">@alignCast</span>(ptr:.<sp |
| 95980 | 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> |
| 959a0 | 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</ |
| 959c0 | 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>.... |
| 959e0 | 20 20 20 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 | ...<code>ptr</code>.can.be.<code |
| 95a00 | 3e 2a 54 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 | >*T</code>,.<code>?*T</code>,.or |
| 95a20 | 20 3c 63 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 | .<code>[]T</code>.....Changes.th |
| 95a40 | 65 20 61 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 | e.alignment.of.a.pointer..The.al |
| 95a60 | 69 67 6e 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 | ignment.to.use.is.inferred.based |
| 95a80 | 20 6f 6e 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 | .on.the.result.type........</p>. |
| 95aa0 | 20 20 20 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 | ......<p>A.<a.href="#Incorrect-P |
| 95ac0 | 6f 69 6e 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 | ointer-Alignment">pointer.alignm |
| 95ae0 | 65 6e 74 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 | ent.safety.check</a>.is.added... |
| 95b00 | 20 20 20 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 | ....to.the.generated.code.to.mak |
| 95b20 | 65 20 73 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 | e.sure.the.pointer.is.aligned.as |
| 95b40 | 20 70 72 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 | .promised.</p>...............<h3 |
| 95b60 | 20 69 64 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 | .id="alignOf"><a.href="#toc-alig |
| 95b80 | 6e 4f 66 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 | nOf">@alignOf</a>.<a.class="hdr" |
| 95ba0 | 20 68 72 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 | .href="#alignOf">..</a></h3>.... |
| 95bc0 | 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- |
| 95be0 | 62 75 69 6c 74 69 6e 22 3e 40 61 6c 69 67 6e 4f 66 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 | builtin">@alignOf</span>(<span.c |
| 95c00 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 54 3a | lass="tok-kw">comptime</span>.T: |
| 95c20 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 | .<span.class="tok-type">type</sp |
| 95c40 | 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 70 | an>).<span.class="tok-type">comp |
| 95c60 | 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 20 | time_int</span></code></pre>.... |
| 95c80 | 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 72 65 74 75 72 | ...<p>.......This.function.retur |
| 95ca0 | 6e 73 20 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 | ns.the.number.of.bytes.that.this |
| 95cc0 | 20 74 79 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 | .type.should.be.aligned.to...... |
| 95ce0 | 20 66 6f 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 | .for.the.current.target.to.match |
| 95d00 | 20 74 68 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 | .the.C.ABI..When.the.child.type. |
| 95d20 | 6f 66 20 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 | of.a.pointer.has.......this.alig |
| 95d40 | 6e 6d 65 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 | nment,.the.alignment.can.be.omit |
| 95d60 | 74 65 64 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 | ted.from.the.type........</p>... |
| 95d80 | 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- |
| 95da0 | 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 20 | kw">const</span>.assert.=.<span. |
| 95dc0 | 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 |
| 95de0 | 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 |
| 95e00 | 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 3c | td"</span>).debug.assert;.< |
| 95e20 | 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 |
| 95e40 | 61 6e 3e 20 7b 0a 20 20 20 20 61 73 73 65 72 74 28 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | an>.{.....assert(*<span.class="t |
| 95e60 | 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 20 3d 3d 20 2a 3c 73 70 61 6e 20 63 6c | ok-type">u32</span>.==.*<span.cl |
| 95e80 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6c 69 67 6e 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 | ass="tok-kw">align</span>(<span. |
| 95ea0 | 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 66 3c 2f 73 70 | class="tok-builtin">@alignOf</sp |
| 95ec0 | 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f | an>(<span.class="tok-type">u32</ |
| 95ee0 | 73 70 61 6e 3e 29 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 | span>)).<span.class="tok-type">u |
| 95f00 | 33 32 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 | 32</span>);.}</code></pre>...... |
| 95f20 | 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 74 61 72 67 65 | .<p>.......The.result.is.a.targe |
| 95f40 | 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 |
| 95f60 | 2e 20 49 74 20 69 73 20 67 75 61 72 61 6e 74 65 65 64 20 74 6f 20 62 65 0a 20 20 20 20 20 20 6c | ..It.is.guaranteed.to.be.......l |
| 95f80 | 65 73 73 20 74 68 61 6e 20 6f 72 20 65 71 75 61 6c 20 74 6f 20 3c 61 20 68 72 65 66 3d 22 23 73 | ess.than.or.equal.to.<a.href="#s |
| 95fa0 | 69 7a 65 4f 66 22 3e 40 73 69 7a 65 4f 66 28 54 29 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 | izeOf">@sizeOf(T)</a>........</p |
| 95fc0 | 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 |
| 95fe0 | 3e 3c 61 20 68 72 65 66 3d 22 23 41 6c 69 67 6e 6d 65 6e 74 22 3e 41 6c 69 67 6e 6d 65 6e 74 3c | ><a.href="#Alignment">Alignment< |
| 96000 | 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 |
| 96020 | 33 20 69 64 3d 22 61 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 61 73 22 3e 40 61 73 3c | 3.id="as"><a.href="#toc-as">@as< |
| 96040 | 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 73 22 3e c2 a7 | /a>.<a.class="hdr".href="#as">.. |
| 96060 | 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 |
| 96080 | 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> |
| 960a0 | 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f | (<span.class="tok-kw">comptime</ |
| 960c0 | 73 70 61 6e 3e 20 54 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | span>.T:.<span.class="tok-type"> |
| 960e0 | 74 79 70 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 | type</span>,.expression).T</code |
| 96100 | 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 6d 73 | ></pre>.......<p>.......Performs |
| 96120 | 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 54 79 70 65 20 43 | .<a.href="#Type-Coercion">Type.C |
| 96140 | 6f 65 72 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 | oercion</a>..This.cast.is.allowe |
| 96160 | 64 20 77 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 | d.when.the.conversion.is.unambig |
| 96180 | 75 6f 75 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 | uous.and.safe,.......and.is.the. |
| 961a0 | 70 72 65 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 | preferred.way.to.convert.between |
| 961c0 | 20 74 79 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 | .types,.whenever.possible....... |
| 961e0 | 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 61 74 6f 6d | .</p>...............<h3.id="atom |
| 96200 | 69 63 4c 6f 61 64 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 61 74 6f 6d 69 63 4c 6f 61 64 | icLoad"><a.href="#toc-atomicLoad |
| 96220 | 22 3e 40 61 74 6f 6d 69 63 4c 6f 61 64 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 | ">@atomicLoad</a>.<a.class="hdr" |
| 96240 | 20 68 72 65 66 3d 22 23 61 74 6f 6d 69 63 4c 6f 61 64 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a | .href="#atomicLoad">..</a></h3>. |
| 96260 | 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 |
| 96280 | 6f 6b 2d 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 | ok-builtin">@atomicLoad</span>(< |
| 962a0 | 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 |
| 962c0 | 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 |
| 962e0 | 70 65 3c 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 | pe</span>,.ptr:.*<span.class="to |
| 96300 | 6b 2d 6b 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 | k-kw">const</span>.T,.<span.clas |
| 96320 | 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 64 65 72 | s="tok-kw">comptime</span>.order |
| 96340 | 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 72 65 3e | ing:.AtomicOrder).T</code></pre> |
| 96360 | 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 62 75 69 6c 74 69 6e 20 66 75 | .......<p>.......This.builtin.fu |
| 96380 | 6e 63 74 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 | nction.atomically.dereferences.a |
| 963a0 | 20 70 6f 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 | .pointer.to.a.<code>T</code>.and |
| 963c0 | 20 72 65 74 75 72 6e 73 20 74 68 65 20 76 61 6c 75 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 | .returns.the.value........</p>.. |
| 963e0 | 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 54 3c 2f 63 6f 64 65 3e 20 6d 75 | .....<p>.......<code>T</code>.mu |
| 96400 | 73 74 20 62 65 20 61 20 70 6f 69 6e 74 65 72 2c 20 61 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 | st.be.a.pointer,.a.<code><span.c |
| 96420 | 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 | lass="tok-type">bool</span></cod |
| 96440 | 65 3e 2c 20 61 20 66 6c 6f 61 74 2c 0a 20 20 20 20 20 20 61 6e 20 69 6e 74 65 67 65 72 2c 20 61 | e>,.a.float,.......an.integer,.a |
| 96460 | 6e 20 65 6e 75 6d 2c 20 6f 72 20 61 20 70 61 63 6b 65 64 20 73 74 72 75 63 74 2e 0a 20 20 20 20 | n.enum,.or.a.packed.struct...... |
| 96480 | 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 3c 63 6f 64 65 3e 41 74 6f 6d 69 63 4f 72 64 65 | ..</p>.......<p><code>AtomicOrde |
| 964a0 | 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 64 65 | r</code>.can.be.found.with.<code |
| 964c0 | 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 |
| 964e0 | 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"> |
| 96500 | 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 6e 2e | "std"</span>).builtin. |
| 96520 | 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 3c 70 | AtomicOrder</code>.</p>.......<p |
| 96540 | 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=" |
| 96560 | 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 3c 2f | #atomicStore">@atomicStore</a></ |
| 96580 | 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 61 74 6f 6d 69 63 52 6d 77 22 3e 40 61 74 | li>.<li><a.href="#atomicRmw">@at |
| 965a0 | 6f 6d 69 63 52 6d 77 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 63 | omicRmw</a></li>.<li><a.href="#c |
| 965c0 | 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 |
| 965e0 | 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">@ |
| 96600 | 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 20 20 | cmpxchgStrong</a></li>.</ul>.... |
| 96620 | 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 61 74 6f 6d 69 63 52 6d 77 22 3e 3c | ............<h3.id="atomicRmw">< |
| 96640 | 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 61 74 6f 6d 69 63 52 6d 77 22 3e 40 61 74 6f 6d 69 63 52 | a.href="#toc-atomicRmw">@atomicR |
| 96660 | 6d 77 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 61 74 6f | mw</a>.<a.class="hdr".href="#ato |
| 96680 | 6d 69 63 52 6d 77 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e | micRmw">..</a></h3>........<pre> |
| 966a0 | 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"> |
| 966c0 | 40 61 74 6f 6d 69 63 52 6d 77 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | @atomicRmw</span>(<span.class="t |
| 966e0 | 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 54 3a 20 3c 73 70 61 6e 20 | ok-kw">comptime</span>.T:.<span. |
| 96700 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 70 74 | class="tok-type">type</span>,.pt |
| 96720 | 72 3a 20 2a 54 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 | r:.*T,.<span.class="tok-kw">comp |
| 96740 | 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 6f 70 3a 20 41 74 6f 6d 69 63 52 6d 77 4f 70 2c 20 6f 70 65 | time</span>.op:.AtomicRmwOp,.ope |
| 96760 | 72 61 6e 64 3a 20 54 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f | rand:.T,.<span.class="tok-kw">co |
| 96780 | 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 72 | mptime</span>.ordering:.AtomicOr |
| 967a0 | 64 65 72 29 20 54 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 | der).T</code></pre>.......<p>... |
| 967c0 | 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 66 65 | ....This.builtin.function.derefe |
| 967e0 | 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 2f 63 | rences.a.pointer.to.a.<code>T</c |
| 96800 | 6f 64 65 3e 20 61 6e 64 20 61 74 6f 6d 69 63 61 6c 6c 79 0a 20 20 20 20 20 20 6d 6f 64 69 66 69 | ode>.and.atomically.......modifi |
| 96820 | 65 73 20 74 68 65 20 76 61 6c 75 65 20 61 6e 64 20 72 65 74 75 72 6e 73 20 74 68 65 20 70 72 65 | es.the.value.and.returns.the.pre |
| 96840 | 76 69 6f 75 73 20 76 61 6c 75 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 | vious.value........</p>.......<p |
| 96860 | 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 61 | >.......<code>T</code>.must.be.a |
| 96880 | 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 74 | .pointer,.a.<code><span.class="t |
| 968a0 | 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 66 | ok-type">bool</span></code>,.a.f |
| 968c0 | 6c 6f 61 74 2c 0a 20 20 20 20 20 20 61 6e 20 69 6e 74 65 67 65 72 2c 20 61 6e 20 65 6e 75 6d 2c | loat,.......an.integer,.an.enum, |
| 968e0 | 20 6f 72 20 61 20 70 61 63 6b 65 64 20 73 74 72 75 63 74 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a | .or.a.packed.struct........</p>. |
| 96900 | 20 20 20 20 20 20 3c 70 3e 3c 63 6f 64 65 3e 41 74 6f 6d 69 63 4f 72 64 65 72 3c 2f 63 6f 64 65 | ......<p><code>AtomicOrder</code |
| 96920 | 3e 20 63 61 6e 20 62 65 20 66 6f 75 6e 64 20 77 69 74 68 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 | >.can.be.found.with.<code><span. |
| 96940 | 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 |
| 96960 | 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 |
| 96980 | 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 62 75 69 6c 74 69 6e 2e 41 74 6f 6d 69 63 4f | td"</span>).builtin.AtomicO |
| 969a0 | 72 64 65 72 3c 2f 63 6f 64 65 3e 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 3c 63 6f 64 65 3e | rder</code>.</p>.......<p><code> |
| 969c0 | 41 74 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 | AtomicRmwOp</code>.can.be.found. |
| 969e0 | 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 6c | with.<code><span.class="tok-buil |
| 96a00 | 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= |
| 96a20 | 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> |
| 96a40 | 29 2e 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 | ).builtin.AtomicRmwOp</code>.</p |
| 96a60 | 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 |
| 96a80 | 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 53 | ><a.href="#atomicStore">@atomicS |
| 96aa0 | 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 6d | tore</a></li>.<li><a.href="#atom |
| 96ac0 | 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 69 | icLoad">@atomicLoad</a></li>.<li |
| 96ae0 | 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 63 68 67 | ><a.href="#cmpxchgWeak">@cmpxchg |
| 96b00 | 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 6d 70 78 | Weak</a></li>.<li><a.href="#cmpx |
| 96b20 | 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 3c 2f 6c | chgStrong">@cmpxchgStrong</a></l |
| 96b40 | 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=" |
| 96b60 | 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 6f 6d 69 | atomicStore"><a.href="#toc-atomi |
| 96b80 | 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 6c 61 73 | cStore">@atomicStore</a>.<a.clas |
| 96ba0 | 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 a7 3c 2f | s="hdr".href="#atomicStore">..</ |
| 96bc0 | 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. |
| 96be0 | 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 6f 72 65 | class="tok-builtin">@atomicStore |
| 96c00 | 3c 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 |
| 96c20 | 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 |
| 96c40 | 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 76 61 6c | -type">type</span>,.ptr:.*T,.val |
| 96c60 | 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 6f 6d 70 | ue:.T,.<span.class="tok-kw">comp |
| 96c80 | 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 72 64 65 | time</span>.ordering:.AtomicOrde |
| 96ca0 | 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 64 3c 2f | r).<span.class="tok-type">void</ |
| 96cc0 | 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>.... |
| 96ce0 | 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 66 65 72 | ...This.builtin.function.derefer |
| 96d00 | 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 2f 63 6f | ences.a.pointer.to.a.<code>T</co |
| 96d20 | 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 20 67 69 | de>.and.atomically.stores.the.gi |
| 96d40 | 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 70 3e 0a | ven.value........</p>.......<p>. |
| 96d60 | 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 61 20 70 | ......<code>T</code>.must.be.a.p |
| 96d80 | 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 74 6f 6b | ointer,.a.<code><span.class="tok |
| 96da0 | 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 66 6c 6f | -type">bool</span></code>,.a.flo |
| 96dc0 | 61 74 2c 0a 20 20 20 20 20 20 61 6e 20 69 6e 74 65 67 65 72 2c 20 61 6e 20 65 6e 75 6d 2c 20 6f | at,.......an.integer,.an.enum,.o |
| 96de0 | 72 20 61 20 70 61 63 6b 65 64 20 73 74 72 75 63 74 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 | r.a.packed.struct........</p>... |
| 96e00 | 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>. |
| 96e20 | 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 |
| 96e40 | 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> |
| 96e60 | 28 3c 73 70 61 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 |
| 96e80 | 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 |
| 96ea0 | 65 72 3c 2f 63 6f 64 65 3e 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f | er</code>.</p>.......<p>See.also |
| 96ec0 | 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 61 74 6f 6d 69 63 4c 6f | :</p><ul>.<li><a.href="#atomicLo |
| 96ee0 | 61 64 22 3e 40 61 74 6f 6d 69 63 4c 6f 61 64 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 | ad">@atomicLoad</a></li>.<li><a. |
| 96f00 | 68 72 65 66 3d 22 23 61 74 6f 6d 69 63 52 6d 77 22 3e 40 61 74 6f 6d 69 63 52 6d 77 3c 2f 61 3e | href="#atomicRmw">@atomicRmw</a> |
| 96f20 | 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 63 6d 70 78 63 68 67 57 65 61 6b 22 | </li>.<li><a.href="#cmpxchgWeak" |
| 96f40 | 3e 40 63 6d 70 78 63 68 67 57 65 61 6b 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 | >@cmpxchgWeak</a></li>.<li><a.hr |
| 96f60 | 65 66 3d 22 23 63 6d 70 78 63 68 67 53 74 72 6f 6e 67 22 3e 40 63 6d 70 78 63 68 67 53 74 72 6f | ef="#cmpxchgStrong">@cmpxchgStro |
| 96f80 | 6e 67 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 | ng</a></li>.</ul>............... |
| 96fa0 | 20 3c 68 33 20 69 64 3d 22 62 69 74 43 61 73 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d | .<h3.id="bitCast"><a.href="#toc- |
| 96fc0 | 62 69 74 43 61 73 74 22 3e 40 62 69 74 43 61 73 74 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 | bitCast">@bitCast</a>.<a.class=" |
| 96fe0 | 68 64 72 22 20 68 72 65 66 3d 22 23 62 69 74 43 61 73 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e | hdr".href="#bitCast">..</a></h3> |
| 97000 | 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=" |
| 97020 | 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 62 69 74 43 61 73 74 3c 2f 73 70 61 6e 3e 28 76 61 6c | tok-builtin">@bitCast</span>(val |
| 97040 | 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 |
| 97060 | 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e | </span>).<span.class="tok-kw">an |
| 97080 | 79 74 79 70 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 | ytype</span></code></pre>....... |
| 970a0 | 3c 70 3e 0a 20 20 20 20 20 20 43 6f 6e 76 65 72 74 73 20 61 20 76 61 6c 75 65 20 6f 66 20 6f 6e | <p>.......Converts.a.value.of.on |
| 970c0 | 65 20 74 79 70 65 20 74 6f 20 61 6e 6f 74 68 65 72 20 74 79 70 65 2e 20 54 68 65 20 72 65 74 75 | e.type.to.another.type..The.retu |
| 970e0 | 72 6e 20 74 79 70 65 20 69 73 20 74 68 65 0a 09 09 09 69 6e 66 65 72 72 65 64 20 72 65 73 75 6c | rn.type.is.the....inferred.resul |
| 97100 | 74 20 74 79 70 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 | t.type........</p>.......<p>.... |
| 97120 | 20 20 20 41 73 73 65 72 74 73 20 74 68 61 74 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 | ...Asserts.that.<code><span.clas |
| 97140 | 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 69 7a 65 4f 66 3c 2f 73 70 61 6e 3e 28 3c | s="tok-builtin">@sizeOf</span>(< |
| 97160 | 73 70 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 |
| 97180 | 3c 2f 73 70 61 6e 3e 28 76 61 6c 75 65 29 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | </span>(value)).==.<span.class=" |
| 971a0 | 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 69 7a 65 4f 66 3c 2f 73 70 61 6e 3e 28 44 65 73 74 | tok-builtin">@sizeOf</span>(Dest |
| 971c0 | 54 79 70 65 29 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c | Type)</code>........</p>.......< |
| 971e0 | 70 3e 0a 20 20 20 20 20 20 41 73 73 65 72 74 73 20 74 68 61 74 20 3c 63 6f 64 65 3e 3c 73 70 61 | p>.......Asserts.that.<code><spa |
| 97200 | 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< |
| 97220 | 2f 73 70 61 6e 3e 28 44 65 73 74 54 79 70 65 29 20 21 3d 20 2e 70 6f 69 6e 74 65 72 3c 2f 63 6f | /span>(DestType).!=..pointer</co |
| 97240 | 64 65 3e 2e 20 55 73 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | de>..Use.<code><span.class="tok- |
| 97260 | 62 75 69 6c 74 69 6e 22 3e 40 70 74 72 43 61 73 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 | builtin">@ptrCast</span></code>. |
| 97280 | 6f 72 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 | or.<code><span.class="tok-builti |
| 972a0 | 6e 22 3e 40 70 74 72 46 72 6f 6d 49 6e 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 69 66 20 | n">@ptrFromInt</span></code>.if. |
| 972c0 | 79 6f 75 20 6e 65 65 64 20 74 68 69 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 | you.need.this........</p>....... |
| 972e0 | 3c 70 3e 0a 20 20 20 20 20 20 43 61 6e 20 62 65 20 75 73 65 64 20 66 6f 72 20 74 68 65 73 65 20 | <p>.......Can.be.used.for.these. |
| 97300 | 74 68 69 6e 67 73 20 66 6f 72 20 65 78 61 6d 70 6c 65 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 | things.for.example:.......</p>.. |
| 97320 | 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 43 6f 6e 76 65 72 74 20 | .....<ul>...........<li>Convert. |
| 97340 | 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 33 32 | <code><span.class="tok-type">f32 |
| 97360 | 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 74 6f 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c | </span></code>.to.<code><span.cl |
| 97380 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e | ass="tok-type">u32</span></code> |
| 973a0 | 20 62 69 74 73 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 43 6f 6e 76 65 72 74 | .bits</li>...........<li>Convert |
| 973c0 | 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 | .<code><span.class="tok-type">i3 |
| 973e0 | 32 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 74 6f 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 | 2</span></code>.to.<code><span.c |
| 97400 | 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 | lass="tok-type">u32</span></code |
| 97420 | 3e 20 70 72 65 73 65 72 76 69 6e 67 20 74 77 6f 73 20 63 6f 6d 70 6c 65 6d 65 6e 74 3c 2f 6c 69 | >.preserving.twos.complement</li |
| 97440 | 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 57 6f | >.......</ul>.......<p>.......Wo |
| 97460 | 72 6b 73 20 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 69 66 20 3c 63 6f 64 65 3e 76 61 6c | rks.at.compile-time.if.<code>val |
| 97480 | 75 65 3c 2f 63 6f 64 65 3e 20 69 73 20 6b 6e 6f 77 6e 20 61 74 20 63 6f 6d 70 69 6c 65 20 74 69 | ue</code>.is.known.at.compile.ti |
| 974a0 | 6d 65 2e 20 49 74 27 73 20 61 20 63 6f 6d 70 69 6c 65 20 65 72 72 6f 72 20 74 6f 20 62 69 74 63 | me..It's.a.compile.error.to.bitc |
| 974c0 | 61 73 74 20 61 20 76 61 6c 75 65 20 6f 66 20 75 6e 64 65 66 69 6e 65 64 20 6c 61 79 6f 75 74 3b | ast.a.value.of.undefined.layout; |
| 974e0 | 20 74 68 69 73 20 6d 65 61 6e 73 20 74 68 61 74 2c 20 62 65 73 69 64 65 73 20 74 68 65 20 72 65 | .this.means.that,.besides.the.re |
| 97500 | 73 74 72 69 63 74 69 6f 6e 20 66 72 6f 6d 20 74 79 70 65 73 20 77 68 69 63 68 20 70 6f 73 73 65 | striction.from.types.which.posse |
| 97520 | 73 73 20 64 65 64 69 63 61 74 65 64 20 63 61 73 74 69 6e 67 20 62 75 69 6c 74 69 6e 73 20 28 65 | ss.dedicated.casting.builtins.(e |
| 97540 | 6e 75 6d 73 2c 20 70 6f 69 6e 74 65 72 73 2c 20 65 72 72 6f 72 20 73 65 74 73 29 2c 20 62 61 72 | nums,.pointers,.error.sets),.bar |
| 97560 | 65 20 73 74 72 75 63 74 73 2c 20 65 72 72 6f 72 20 75 6e 69 6f 6e 73 2c 20 73 6c 69 63 65 73 2c | e.structs,.error.unions,.slices, |
| 97580 | 20 6f 70 74 69 6f 6e 61 6c 73 2c 20 61 6e 64 20 61 6e 79 20 6f 74 68 65 72 20 74 79 70 65 20 77 | .optionals,.and.any.other.type.w |
| 975a0 | 69 74 68 6f 75 74 20 61 20 77 65 6c 6c 2d 64 65 66 69 6e 65 64 20 6d 65 6d 6f 72 79 20 6c 61 79 | ithout.a.well-defined.memory.lay |
| 975c0 | 6f 75 74 2c 20 61 6c 73 6f 20 63 61 6e 6e 6f 74 20 62 65 20 75 73 65 64 20 69 6e 20 74 68 69 73 | out,.also.cannot.be.used.in.this |
| 975e0 | 20 6f 70 65 72 61 74 69 6f 6e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 | .operation........</p>.......... |
| 97600 | 20 20 20 20 20 3c 68 33 20 69 64 3d 22 62 69 74 4f 66 66 73 65 74 4f 66 22 3e 3c 61 20 68 72 65 | .....<h3.id="bitOffsetOf"><a.hre |
| 97620 | 66 3d 22 23 74 6f 63 2d 62 69 74 4f 66 66 73 65 74 4f 66 22 3e 40 62 69 74 4f 66 66 73 65 74 4f | f="#toc-bitOffsetOf">@bitOffsetO |
| 97640 | 66 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 62 69 74 4f | f</a>.<a.class="hdr".href="#bitO |
| 97660 | 66 66 73 65 74 4f 66 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 | ffsetOf">..</a></h3>........<pre |
| 97680 | 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" |
| 976a0 | 3e 40 62 69 74 4f 66 66 73 65 74 4f 66 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 | >@bitOffsetOf</span>(<span.class |
| 976c0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 54 3a 20 3c 73 70 | ="tok-kw">comptime</span>.T:.<sp |
| 976e0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 2c | an.class="tok-type">type</span>, |
| 97700 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f | .<span.class="tok-kw">comptime</ |
| 97720 | 73 70 61 6e 3e 20 66 69 65 6c 64 5f 6e 61 6d 65 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d | span>.field_name:.[]<span.class= |
| 97740 | 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 | "tok-kw">const</span>.<span.clas |
| 97760 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c | s="tok-type">u8</span>).<span.cl |
| 97780 | 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 |
| 977a0 | 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>....... |
| 977c0 | 52 65 74 75 72 6e 73 20 74 68 65 20 62 69 74 20 6f 66 66 73 65 74 20 6f 66 20 61 20 66 69 65 6c | Returns.the.bit.offset.of.a.fiel |
| 977e0 | 64 20 72 65 6c 61 74 69 76 65 20 74 6f 20 69 74 73 20 63 6f 6e 74 61 69 6e 69 6e 67 20 73 74 72 | d.relative.to.its.containing.str |
| 97800 | 75 63 74 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 | uct........</p>.......<p>....... |
| 97820 | 46 6f 72 20 6e 6f 6e 20 3c 61 20 68 72 65 66 3d 22 23 70 61 63 6b 65 64 2d 73 74 72 75 63 74 22 | For.non.<a.href="#packed-struct" |
| 97840 | 3e 70 61 63 6b 65 64 20 73 74 72 75 63 74 73 3c 2f 61 3e 2c 20 74 68 69 73 20 77 69 6c 6c 20 61 | >packed.structs</a>,.this.will.a |
| 97860 | 6c 77 61 79 73 20 62 65 20 64 69 76 69 73 69 62 6c 65 20 62 79 20 3c 63 6f 64 65 3e 3c 73 70 61 | lways.be.divisible.by.<code><spa |
| 97880 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 38 3c 2f 73 70 61 6e 3e 3c 2f 63 | n.class="tok-number">8</span></c |
| 978a0 | 6f 64 65 3e 2e 0a 20 20 20 20 20 20 46 6f 72 20 70 61 63 6b 65 64 20 73 74 72 75 63 74 73 2c 20 | ode>........For.packed.structs,. |
| 978c0 | 6e 6f 6e 2d 62 79 74 65 2d 61 6c 69 67 6e 65 64 20 66 69 65 6c 64 73 20 77 69 6c 6c 20 73 68 61 | non-byte-aligned.fields.will.sha |
| 978e0 | 72 65 20 61 20 62 79 74 65 20 6f 66 66 73 65 74 2c 20 62 75 74 20 74 68 65 79 20 77 69 6c 6c 20 | re.a.byte.offset,.but.they.will. |
| 97900 | 68 61 76 65 20 64 69 66 66 65 72 65 6e 74 0a 20 20 20 20 20 20 62 69 74 20 6f 66 66 73 65 74 73 | have.different.......bit.offsets |
| 97920 | 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:< |
| 97940 | 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 6f 66 66 73 65 74 4f 66 22 3e | /p><ul>.<li><a.href="#offsetOf"> |
| 97960 | 40 6f 66 66 73 65 74 4f 66 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 | @offsetOf</a></li>.</ul>........ |
| 97980 | 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 62 69 74 53 69 7a 65 4f 66 22 3e 3c 61 20 68 72 | ........<h3.id="bitSizeOf"><a.hr |
| 979a0 | 65 66 3d 22 23 74 6f 63 2d 62 69 74 53 69 7a 65 4f 66 22 3e 40 62 69 74 53 69 7a 65 4f 66 3c 2f | ef="#toc-bitSizeOf">@bitSizeOf</ |
| 979c0 | 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 62 69 74 53 69 7a 65 | a>.<a.class="hdr".href="#bitSize |
| 979e0 | 4f 66 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 | Of">..</a></h3>........<pre><cod |
| 97a00 | 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 62 69 74 | e><span.class="tok-builtin">@bit |
| 97a20 | 53 69 7a 65 4f 66 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | SizeOf</span>(<span.class="tok-k |
| 97a40 | 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 |
| 97a60 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 | s="tok-type">type</span>).<span. |
| 97a80 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 63 6f 6d 70 74 69 6d 65 5f 69 6e 74 3c 2f 73 | class="tok-type">comptime_int</s |
| 97aa0 | 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 | pan></code></pre>.......<p>..... |
| 97ac0 | 20 20 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 72 65 74 75 72 6e 73 20 74 68 65 20 6e 75 6d 62 | ..This.function.returns.the.numb |
| 97ae0 | 65 72 20 6f 66 20 62 69 74 73 20 69 74 20 74 61 6b 65 73 20 74 6f 20 73 74 6f 72 65 20 3c 63 6f | er.of.bits.it.takes.to.store.<co |
| 97b00 | 64 65 3e 54 3c 2f 63 6f 64 65 3e 20 69 6e 20 6d 65 6d 6f 72 79 20 69 66 20 74 68 65 20 74 79 70 | de>T</code>.in.memory.if.the.typ |
| 97b20 | 65 0a 20 20 20 20 20 20 77 65 72 65 20 61 20 66 69 65 6c 64 20 69 6e 20 61 20 70 61 63 6b 65 64 | e.......were.a.field.in.a.packed |
| 97b40 | 20 73 74 72 75 63 74 2f 75 6e 69 6f 6e 2e 0a 20 20 20 20 20 20 54 68 65 20 72 65 73 75 6c 74 20 | .struct/union........The.result. |
| 97b60 | 69 73 20 61 20 74 61 72 67 65 74 2d 73 70 65 63 69 66 69 63 20 63 6f 6d 70 69 6c 65 20 74 69 6d | is.a.target-specific.compile.tim |
| 97b80 | 65 20 63 6f 6e 73 74 61 6e 74 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e | e.constant........</p>.......<p> |
| 97ba0 | 0a 20 20 20 20 20 20 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 6d 65 61 73 75 72 65 73 20 74 68 | .......This.function.measures.th |
| 97bc0 | 65 20 73 69 7a 65 20 61 74 20 72 75 6e 74 69 6d 65 2e 20 46 6f 72 20 74 79 70 65 73 20 74 68 61 | e.size.at.runtime..For.types.tha |
| 97be0 | 74 20 61 72 65 20 64 69 73 61 6c 6c 6f 77 65 64 20 61 74 20 72 75 6e 74 69 6d 65 2c 20 73 75 63 | t.are.disallowed.at.runtime,.suc |
| 97c00 | 68 20 61 73 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | h.as.......<code><span.class="to |
| 97c20 | 6b 2d 74 79 70 65 22 3e 63 6f 6d 70 74 69 6d 65 5f 69 6e 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 | k-type">comptime_int</span></cod |
| 97c40 | 65 3e 20 61 6e 64 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | e>.and.<code><span.class="tok-ty |
| 97c60 | 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 74 68 65 20 72 65 73 75 | pe">type</span></code>,.the.resu |
| 97c80 | 6c 74 20 69 73 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | lt.is.<code><span.class="tok-num |
| 97ca0 | 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e | ber">0</span></code>........</p> |
| 97cc0 | 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e | .......<p>See.also:</p><ul>.<li> |
| 97ce0 | 3c 61 20 68 72 65 66 3d 22 23 73 69 7a 65 4f 66 22 3e 40 73 69 7a 65 4f 66 3c 2f 61 3e 3c 2f 6c | <a.href="#sizeOf">@sizeOf</a></l |
| 97d00 | 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 74 79 70 65 49 6e 66 6f 22 3e 40 74 79 70 65 | i>.<li><a.href="#typeInfo">@type |
| 97d20 | 49 6e 66 6f 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 | Info</a></li>.</ul>............. |
| 97d40 | 20 20 20 3c 68 33 20 69 64 3d 22 62 72 61 6e 63 68 48 69 6e 74 22 3e 3c 61 20 68 72 65 66 3d 22 | ...<h3.id="branchHint"><a.href=" |
| 97d60 | 23 74 6f 63 2d 62 72 61 6e 63 68 48 69 6e 74 22 3e 40 62 72 61 6e 63 68 48 69 6e 74 3c 2f 61 3e | #toc-branchHint">@branchHint</a> |
| 97d80 | 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 62 72 61 6e 63 68 48 69 6e | .<a.class="hdr".href="#branchHin |
| 97da0 | 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 | t">..</a></h3>........<pre><code |
| 97dc0 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 62 72 61 6e | ><span.class="tok-builtin">@bran |
| 97de0 | 63 68 48 69 6e 74 3c 2f 73 70 61 6e 3e 28 68 69 6e 74 3a 20 42 72 61 6e 63 68 48 69 6e 74 29 20 | chHint</span>(hint:.BranchHint). |
| 97e00 | 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 |
| 97e20 | 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 48 69 6e 74 73 20 74 | n></code></pre>.......<p>Hints.t |
| 97e40 | 6f 20 74 68 65 20 6f 70 74 69 6d 69 7a 65 72 20 68 6f 77 20 6c 69 6b 65 6c 79 20 61 20 67 69 76 | o.the.optimizer.how.likely.a.giv |
| 97e60 | 65 6e 20 62 72 61 6e 63 68 20 6f 66 20 63 6f 6e 74 72 6f 6c 20 66 6c 6f 77 20 69 73 20 74 6f 20 | en.branch.of.control.flow.is.to. |
| 97e80 | 62 65 20 72 65 61 63 68 65 64 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 3c 63 6f 64 65 3e 42 | be.reached.</p>.......<p><code>B |
| 97ea0 | 72 61 6e 63 68 48 69 6e 74 3c 2f 63 6f 64 65 3e 20 63 61 6e 20 62 65 20 66 6f 75 6e 64 20 77 69 | ranchHint</code>.can.be.found.wi |
| 97ec0 | 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 |
| 97ee0 | 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 |
| 97f00 | 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>). |
| 97f20 | 62 75 69 6c 74 69 6e 2e 42 72 61 6e 63 68 48 69 6e 74 3c 2f 63 6f 64 65 3e 2e 3c 2f 70 3e 0a 20 | builtin.BranchHint</code>.</p>.. |
| 97f40 | 20 20 20 20 20 3c 70 3e 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 69 73 20 6f 6e 6c 79 20 76 61 | .....<p>This.function.is.only.va |
| 97f60 | 6c 69 64 20 61 73 20 74 68 65 20 66 69 72 73 74 20 73 74 61 74 65 6d 65 6e 74 20 69 6e 20 61 20 | lid.as.the.first.statement.in.a. |
| 97f80 | 63 6f 6e 74 72 6f 6c 20 66 6c 6f 77 20 62 72 61 6e 63 68 2c 20 6f 72 20 74 68 65 20 66 69 72 73 | control.flow.branch,.or.the.firs |
| 97fa0 | 74 20 73 74 61 74 65 6d 65 6e 74 20 69 6e 20 61 20 66 75 6e 63 74 69 6f 6e 2e 3c 2f 70 3e 0a 20 | t.statement.in.a.function.</p>.. |
| 97fc0 | 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 62 72 65 61 6b 70 6f 69 6e 74 22 | .............<h3.id="breakpoint" |
| 97fe0 | 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 62 72 65 61 6b 70 6f 69 6e 74 22 3e 40 62 72 65 61 | ><a.href="#toc-breakpoint">@brea |
| 98000 | 6b 70 6f 69 6e 74 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 | kpoint</a>.<a.class="hdr".href=" |
| 98020 | 23 62 72 65 61 6b 70 6f 69 6e 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 | #breakpoint">..</a></h3>........ |
| 98040 | 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 |
| 98060 | 74 69 6e 22 3e 40 62 72 65 61 6b 70 6f 69 6e 74 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 | tin">@breakpoint</span>().<span. |
| 98080 | 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 |
| 980a0 | 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 |
| 980c0 | 75 6e 63 74 69 6f 6e 20 69 6e 73 65 72 74 73 20 61 20 70 6c 61 74 66 6f 72 6d 2d 73 70 65 63 69 | unction.inserts.a.platform-speci |
| 980e0 | 66 69 63 20 64 65 62 75 67 20 74 72 61 70 20 69 6e 73 74 72 75 63 74 69 6f 6e 20 77 68 69 63 68 | fic.debug.trap.instruction.which |
| 98100 | 20 63 61 75 73 65 73 0a 20 20 20 20 20 20 64 65 62 75 67 67 65 72 73 20 74 6f 20 62 72 65 61 6b | .causes.......debuggers.to.break |
| 98120 | 20 74 68 65 72 65 2e 0a 20 20 20 20 20 20 55 6e 6c 69 6b 65 20 66 6f 72 20 3c 63 6f 64 65 3e 3c | .there........Unlike.for.<code>< |
| 98140 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 74 72 61 70 3c 2f | span.class="tok-builtin">@trap</ |
| 98160 | 73 70 61 6e 3e 28 29 3c 2f 63 6f 64 65 3e 2c 20 65 78 65 63 75 74 69 6f 6e 20 6d 61 79 20 63 6f | span>()</code>,.execution.may.co |
| 98180 | 6e 74 69 6e 75 65 20 61 66 74 65 72 20 74 68 69 73 20 70 6f 69 6e 74 20 69 66 20 74 68 65 20 70 | ntinue.after.this.point.if.the.p |
| 981a0 | 72 6f 67 72 61 6d 20 69 73 20 72 65 73 75 6d 65 64 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 | rogram.is.resumed........</p>... |
| 981c0 | 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 69 73 20 6f | ....<p>.......This.function.is.o |
| 981e0 | 6e 6c 79 20 76 61 6c 69 64 20 77 69 74 68 69 6e 20 66 75 6e 63 74 69 6f 6e 20 73 63 6f 70 65 2e | nly.valid.within.function.scope. |
| 98200 | 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:</ |
| 98220 | 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 74 72 61 70 22 3e 40 74 72 61 70 | p><ul>.<li><a.href="#trap">@trap |
| 98240 | 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>................< |
| 98260 | 68 33 20 69 64 3d 22 6d 75 6c 41 64 64 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 6d 75 6c | h3.id="mulAdd"><a.href="#toc-mul |
| 98280 | 41 64 64 22 3e 40 6d 75 6c 41 64 64 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 | Add">@mulAdd</a>.<a.class="hdr". |
| 982a0 | 68 72 65 66 3d 22 23 6d 75 6c 41 64 64 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 | href="#mulAdd">..</a></h3>...... |
| 982c0 | 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 |
| 982e0 | 69 6c 74 69 6e 22 3e 40 6d 75 6c 41 64 64 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 | iltin">@mulAdd</span>(<span.clas |
| 98300 | 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 |
| 98320 | 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> |
| 98340 | 2c 20 61 3a 20 54 2c 20 62 3a 20 54 2c 20 63 3a 20 54 29 20 54 3c 2f 63 6f 64 65 3e 3c 2f 70 72 | ,.a:.T,.b:.T,.c:.T).T</code></pr |
| 98360 | 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 46 75 73 65 64 20 6d 75 6c 74 69 70 6c | e>.......<p>.......Fused.multipl |
| 98380 | 79 2d 61 64 64 2c 20 73 69 6d 69 6c 61 72 20 74 6f 20 3c 63 6f 64 65 3e 28 61 20 2a 20 62 29 20 | y-add,.similar.to.<code>(a.*.b). |
| 983a0 | 2b 20 63 3c 2f 63 6f 64 65 3e 2c 20 65 78 63 65 70 74 0a 20 20 20 20 20 20 6f 6e 6c 79 20 72 6f | +.c</code>,.except.......only.ro |
| 983c0 | 75 6e 64 73 20 6f 6e 63 65 2c 20 61 6e 64 20 69 73 20 74 68 75 73 20 6d 6f 72 65 20 61 63 63 75 | unds.once,.and.is.thus.more.accu |
| 983e0 | 72 61 74 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 | rate........</p>.......<p>...... |
| 98400 | 20 53 75 70 70 6f 72 74 73 20 3c 61 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 73 22 3e 46 6c 6f 61 | .Supports.<a.href="#Floats">Floa |
| 98420 | 74 73 3c 2f 61 3e 20 61 6e 64 20 3c 61 20 68 72 65 66 3d 22 23 56 65 63 74 6f 72 73 22 3e 56 65 | ts</a>.and.<a.href="#Vectors">Ve |
| 98440 | 63 74 6f 72 73 3c 2f 61 3e 20 6f 66 20 66 6c 6f 61 74 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a | ctors</a>.of.floats........</p>. |
| 98460 | 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 62 79 74 65 53 77 61 70 22 3e | ..............<h3.id="byteSwap"> |
| 98480 | 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 62 79 74 65 53 77 61 70 22 3e 40 62 79 74 65 53 77 61 | <a.href="#toc-byteSwap">@byteSwa |
| 984a0 | 70 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 62 79 74 65 | p</a>.<a.class="hdr".href="#byte |
| 984c0 | 53 77 61 70 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 | Swap">..</a></h3>........<pre><c |
| 984e0 | 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 62 | ode><span.class="tok-builtin">@b |
| 98500 | 79 74 65 53 77 61 70 3c 2f 73 70 61 6e 3e 28 6f 70 65 72 61 6e 64 3a 20 3c 73 70 61 6e 20 63 6c | yteSwap</span>(operand:.<span.cl |
| 98520 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 79 74 79 70 65 3c 2f 73 70 61 6e 3e 29 20 54 3c 2f | ass="tok-kw">anytype</span>).T</ |
| 98540 | 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e | code></pre>.......<p><code><span |
| 98560 | 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 |
| 98580 | 61 6e 3e 28 6f 70 65 72 61 6e 64 29 3c 2f 63 6f 64 65 3e 20 6d 75 73 74 20 62 65 20 61 6e 20 69 | an>(operand)</code>.must.be.an.i |
| 985a0 | 6e 74 65 67 65 72 20 74 79 70 65 20 6f 72 20 61 6e 20 69 6e 74 65 67 65 72 20 76 65 63 74 6f 72 | nteger.type.or.an.integer.vector |
| 985c0 | 20 74 79 70 65 20 77 69 74 68 20 62 69 74 20 63 6f 75 6e 74 20 65 76 65 6e 6c 79 20 64 69 76 69 | .type.with.bit.count.evenly.divi |
| 985e0 | 73 69 62 6c 65 20 62 79 20 38 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 3c 63 6f 64 65 3e 6f | sible.by.8.</p>.......<p><code>o |
| 98600 | 70 65 72 61 6e 64 3c 2f 63 6f 64 65 3e 20 6d 61 79 20 62 65 20 61 6e 20 3c 61 20 68 72 65 66 3d | perand</code>.may.be.an.<a.href= |
| 98620 | 22 23 49 6e 74 65 67 65 72 73 22 3e 69 6e 74 65 67 65 72 3c 2f 61 3e 20 6f 72 20 3c 61 20 68 72 | "#Integers">integer</a>.or.<a.hr |
| 98640 | 65 66 3d 22 23 56 65 63 74 6f 72 73 22 3e 76 65 63 74 6f 72 3c 2f 61 3e 2e 3c 2f 70 3e 0a 20 20 | ef="#Vectors">vector</a>.</p>... |
| 98660 | 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 53 77 61 70 73 20 74 68 65 20 62 79 74 65 20 6f 72 64 | ....<p>.......Swaps.the.byte.ord |
| 98680 | 65 72 20 6f 66 20 74 68 65 20 69 6e 74 65 67 65 72 2e 20 54 68 69 73 20 63 6f 6e 76 65 72 74 73 | er.of.the.integer..This.converts |
| 986a0 | 20 61 20 62 69 67 20 65 6e 64 69 61 6e 20 69 6e 74 65 67 65 72 20 74 6f 20 61 20 6c 69 74 74 6c | .a.big.endian.integer.to.a.littl |
| 986c0 | 65 20 65 6e 64 69 61 6e 20 69 6e 74 65 67 65 72 2c 0a 20 20 20 20 20 20 61 6e 64 20 63 6f 6e 76 | e.endian.integer,.......and.conv |
| 986e0 | 65 72 74 73 20 61 20 6c 69 74 74 6c 65 20 65 6e 64 69 61 6e 20 69 6e 74 65 67 65 72 20 74 6f 20 | erts.a.little.endian.integer.to. |
| 98700 | 61 20 62 69 67 20 65 6e 64 69 61 6e 20 69 6e 74 65 67 65 72 2e 0a 20 20 20 20 20 20 3c 2f 70 3e | a.big.endian.integer........</p> |
| 98720 | 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 4e 6f 74 65 20 74 68 61 74 20 66 6f 72 20 74 | .......<p>.......Note.that.for.t |
| 98740 | 68 65 20 70 75 72 70 6f 73 65 73 20 6f 66 20 6d 65 6d 6f 72 79 20 6c 61 79 6f 75 74 20 77 69 74 | he.purposes.of.memory.layout.wit |
| 98760 | 68 20 72 65 73 70 65 63 74 20 74 6f 20 65 6e 64 69 61 6e 6e 65 73 73 2c 20 74 68 65 20 69 6e 74 | h.respect.to.endianness,.the.int |
| 98780 | 65 67 65 72 20 74 79 70 65 20 73 68 6f 75 6c 64 20 62 65 0a 20 20 20 20 20 20 72 65 6c 61 74 65 | eger.type.should.be.......relate |
| 987a0 | 64 20 74 6f 20 74 68 65 20 6e 75 6d 62 65 72 20 6f 66 20 62 79 74 65 73 20 72 65 70 6f 72 74 65 | d.to.the.number.of.bytes.reporte |
| 987c0 | 64 20 62 79 20 3c 61 20 68 72 65 66 3d 22 23 73 69 7a 65 4f 66 22 3e 40 73 69 7a 65 4f 66 3c 2f | d.by.<a.href="#sizeOf">@sizeOf</ |
| 987e0 | 61 3e 20 62 79 74 65 73 2e 20 54 68 69 73 20 69 73 20 64 65 6d 6f 6e 73 74 72 61 74 65 64 20 77 | a>.bytes..This.is.demonstrated.w |
| 98800 | 69 74 68 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ith.......<code><span.class="tok |
| 98820 | 2d 74 79 70 65 22 3e 75 32 34 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 20 3c 63 6f 64 65 3e | -type">u24</span></code>..<code> |
| 98840 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 69 7a 65 4f | <span.class="tok-builtin">@sizeO |
| 98860 | 66 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | f</span>(<span.class="tok-type"> |
| 98880 | 75 32 34 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | u24</span>).==.<span.class="tok- |
| 988a0 | 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 77 68 69 63 68 20 6d | number">4</span></code>,.which.m |
| 988c0 | 65 61 6e 73 20 74 68 61 74 20 61 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c | eans.that.a.......<code><span.cl |
| 988e0 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 32 34 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e | ass="tok-type">u24</span></code> |
| 98900 | 20 73 74 6f 72 65 64 20 69 6e 20 6d 65 6d 6f 72 79 20 74 61 6b 65 73 20 34 20 62 79 74 65 73 2c | .stored.in.memory.takes.4.bytes, |
| 98920 | 20 61 6e 64 20 74 68 6f 73 65 20 34 20 62 79 74 65 73 20 61 72 65 20 77 68 61 74 20 61 72 65 20 | .and.those.4.bytes.are.what.are. |
| 98940 | 73 77 61 70 70 65 64 20 6f 6e 0a 20 20 20 20 20 20 61 20 6c 69 74 74 6c 65 20 76 73 20 62 69 67 | swapped.on.......a.little.vs.big |
| 98960 | 20 65 6e 64 69 61 6e 20 73 79 73 74 65 6d 2e 20 4f 6e 20 74 68 65 20 6f 74 68 65 72 20 68 61 6e | .endian.system..On.the.other.han |
| 98980 | 64 2c 20 69 66 20 3c 63 6f 64 65 3e 54 3c 2f 63 6f 64 65 3e 20 69 73 20 73 70 65 63 69 66 69 65 | d,.if.<code>T</code>.is.specifie |
| 989a0 | 64 20 74 6f 0a 20 20 20 20 20 20 62 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | d.to.......be.<code><span.class= |
| 989c0 | 22 74 6f 6b 2d 74 79 70 65 22 3e 75 32 34 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 74 68 | "tok-type">u24</span></code>,.th |
| 989e0 | 65 6e 20 6f 6e 6c 79 20 33 20 62 79 74 65 73 20 61 72 65 20 72 65 76 65 72 73 65 64 2e 0a 20 20 | en.only.3.bytes.are.reversed.... |
| 98a00 | 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 62 | ....</p>...............<h3.id="b |
| 98a20 | 69 74 52 65 76 65 72 73 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 62 69 74 52 65 76 65 | itReverse"><a.href="#toc-bitReve |
| 98a40 | 72 73 65 22 3e 40 62 69 74 52 65 76 65 72 73 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 | rse">@bitReverse</a>.<a.class="h |
| 98a60 | 64 72 22 20 68 72 65 66 3d 22 23 62 69 74 52 65 76 65 72 73 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 | dr".href="#bitReverse">..</a></h |
| 98a80 | 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 |
| 98aa0 | 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 62 69 74 52 65 76 65 72 73 65 3c 2f 73 70 61 6e | ="tok-builtin">@bitReverse</span |
| 98ac0 | 3e 28 69 6e 74 65 67 65 72 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | >(integer:.<span.class="tok-kw"> |
| 98ae0 | 61 6e 79 74 79 70 65 3c 2f 73 70 61 6e 3e 29 20 54 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 | anytype</span>).T</code></pre>.. |
| 98b00 | 20 20 20 20 20 3c 70 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 | .....<p><code><span.class="tok-b |
| 98b20 | 75 69 6c 74 69 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 | uiltin">@TypeOf</span>(<span.cla |
| 98b40 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 79 74 79 70 65 3c 2f 73 70 61 6e 3e 29 3c 2f 63 6f 64 | ss="tok-kw">anytype</span>)</cod |
| 98b60 | 65 3e 20 61 63 63 65 70 74 73 20 61 6e 79 20 69 6e 74 65 67 65 72 20 74 79 70 65 20 6f 72 20 69 | e>.accepts.any.integer.type.or.i |
| 98b80 | 6e 74 65 67 65 72 20 76 65 63 74 6f 72 20 74 79 70 65 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 | nteger.vector.type.</p>.......<p |
| 98ba0 | 3e 0a 20 20 20 20 20 20 52 65 76 65 72 73 65 73 20 74 68 65 20 62 69 74 70 61 74 74 65 72 6e 20 | >.......Reverses.the.bitpattern. |
| 98bc0 | 6f 66 20 61 6e 20 69 6e 74 65 67 65 72 20 76 61 6c 75 65 2c 20 69 6e 63 6c 75 64 69 6e 67 20 74 | of.an.integer.value,.including.t |
| 98be0 | 68 65 20 73 69 67 6e 20 62 69 74 20 69 66 20 61 70 70 6c 69 63 61 62 6c 65 2e 0a 20 20 20 20 20 | he.sign.bit.if.applicable....... |
| 98c00 | 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 46 6f 72 20 65 78 61 6d 70 6c | .</p>.......<p>.......For.exampl |
| 98c20 | 65 20 30 62 31 30 31 31 30 31 31 30 20 28 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | e.0b10110110.(<code><span.class= |
| 98c40 | 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 | "tok-type">u8</span>.=.<span.cla |
| 98c60 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 38 32 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 | ss="tok-number">182</span></code |
| 98c80 | 3e 2c 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | >,.<code><span.class="tok-type"> |
| 98ca0 | 69 38 3c 2f 73 70 61 6e 3e 20 3d 20 2d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | i8</span>.=.-<span.class="tok-nu |
| 98cc0 | 6d 62 65 72 22 3e 37 34 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 29 0a 20 20 20 20 20 20 62 65 | mber">74</span></code>).......be |
| 98ce0 | 63 6f 6d 65 73 20 30 62 30 31 31 30 31 31 30 31 20 28 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c | comes.0b01101101.(<code><span.cl |
| 98d00 | 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 |
| 98d20 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 39 3c 2f 73 70 61 6e 3e 3c 2f | .class="tok-number">109</span></ |
| 98d40 | 63 6f 64 65 3e 2c 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | code>,.<code><span.class="tok-ty |
| 98d60 | 70 65 22 3e 69 38 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | pe">i8</span>.=.<span.class="tok |
| 98d80 | 2d 6e 75 6d 62 65 72 22 3e 31 30 39 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 29 2e 0a 20 20 20 | -number">109</span></code>)..... |
| 98da0 | 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 6f 66 | ...</p>...............<h3.id="of |
| 98dc0 | 66 73 65 74 4f 66 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 6f 66 66 73 65 74 4f 66 22 3e | fsetOf"><a.href="#toc-offsetOf"> |
| 98de0 | 40 6f 66 66 73 65 74 4f 66 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 | @offsetOf</a>.<a.class="hdr".hre |
| 98e00 | 66 3d 22 23 6f 66 66 73 65 74 4f 66 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 | f="#offsetOf">..</a></h3>....... |
| 98e20 | 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 |
| 98e40 | 6c 74 69 6e 22 3e 40 6f 66 66 73 65 74 4f 66 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 | ltin">@offsetOf</span>(<span.cla |
| 98e60 | 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:.< |
| 98e80 | 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 |
| 98ea0 | 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 |
| 98ec0 | 3c 2f 73 70 61 6e 3e 20 66 69 65 6c 64 5f 6e 61 6d 65 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 | </span>.field_name:.[]<span.clas |
| 98ee0 | 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 |
| 98f00 | 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. |
| 98f20 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 63 6f 6d 70 74 69 6d 65 5f 69 6e 74 3c 2f 73 | class="tok-type">comptime_int</s |
| 98f40 | 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 | pan></code></pre>.......<p>..... |
| 98f60 | 20 20 52 65 74 75 72 6e 73 20 74 68 65 20 62 79 74 65 20 6f 66 66 73 65 74 20 6f 66 20 61 20 66 | ..Returns.the.byte.offset.of.a.f |
| 98f80 | 69 65 6c 64 20 72 65 6c 61 74 69 76 65 20 74 6f 20 69 74 73 20 63 6f 6e 74 61 69 6e 69 6e 67 20 | ield.relative.to.its.containing. |
| 98fa0 | 73 74 72 75 63 74 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 | struct........</p>.......<p>See. |
| 98fc0 | 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 62 69 74 4f | also:</p><ul>.<li><a.href="#bitO |
| 98fe0 | 66 66 73 65 74 4f 66 22 3e 40 62 69 74 4f 66 66 73 65 74 4f 66 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c | ffsetOf">@bitOffsetOf</a></li>.< |
| 99000 | 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 63 61 6c 6c | /ul>................<h3.id="call |
| 99020 | 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 63 61 6c 6c 22 3e 40 63 61 6c 6c 3c 2f 61 3e 20 | "><a.href="#toc-call">@call</a>. |
| 99040 | 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 63 61 6c 6c 22 3e c2 a7 3c 2f | <a.class="hdr".href="#call">..</ |
| 99060 | 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. |
| 99080 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 61 6c 6c 3c 2f 73 70 61 6e 3e | class="tok-builtin">@call</span> |
| 990a0 | 28 6d 6f 64 69 66 69 65 72 3a 20 73 74 64 2e 62 75 69 6c 74 69 6e 2e 43 61 6c 6c 4d 6f 64 69 66 | (modifier:.std.builtin.CallModif |
| 990c0 | 69 65 72 2c 20 66 75 6e 63 74 69 6f 6e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ier,.function:.<span.class="tok- |
| 990e0 | 6b 77 22 3e 61 6e 79 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 61 72 67 73 3a 20 3c 73 70 61 6e 20 | kw">anytype</span>,.args:.<span. |
| 99100 | 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>).< |
| 99120 | 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 |
| 99140 | 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>....... |
| 99160 | 43 61 6c 6c 73 20 61 20 66 75 6e 63 74 69 6f 6e 2c 20 69 6e 20 74 68 65 20 73 61 6d 65 20 77 61 | Calls.a.function,.in.the.same.wa |
| 99180 | 79 20 74 68 61 74 20 69 6e 76 6f 6b 69 6e 67 20 61 6e 20 65 78 70 72 65 73 73 69 6f 6e 20 77 69 | y.that.invoking.an.expression.wi |
| 991a0 | 74 68 20 70 61 72 65 6e 74 68 65 73 65 73 20 64 6f 65 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a | th.parentheses.does:.......</p>. |
| 991c0 | 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= |
| 991e0 | 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 |
| 99200 | 74 5f 63 61 6c 6c 5f 62 75 69 6c 74 69 6e 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 | t_call_builtin.zig</cite></figca |
| 99220 | 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 |
| 99240 | 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 |
| 99260 | 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 |
| 99280 | 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">" |
| 992a0 | 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 |
| 992c0 | 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 |
| 992e0 | 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">" |
| 99300 | 3b 6e 6f 69 6e 6c 69 6e 65 20 66 75 6e 63 74 69 6f 6e 20 63 61 6c 6c 26 71 75 6f 74 3b 3c 2f 73 | ;noinline.function.call"</s |
| 99320 | 70 61 6e 3e 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"> |
| 99340 | 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 |
| 99360 | 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 61 6c 6c 3c 2f 73 70 61 6e 3e 28 2e 61 75 74 6f 2c 20 | ok-builtin">@call</span>(.auto,. |
| 99380 | 61 64 64 2c 20 2e 7b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 | add,..{.<span.class="tok-number" |
| 993a0 | 3e 33 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | >3</span>,.<span.class="tok-numb |
| 993c0 | 65 72 22 3e 39 3c 2f 73 70 61 6e 3e 20 7d 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | er">9</span>.}).==.<span.class=" |
| 993e0 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e | tok-number">12</span>);.}..<span |
| 99400 | 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. |
| 99420 | 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 |
| 99440 | 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>,. |
| 99460 | 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 |
| 99480 | 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 |
| 994a0 | 3c 2f 73 70 61 6e 3e 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 |
| 994c0 | 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 61 20 2b 20 62 3b 0a 7d 3c 2f 63 6f 64 65 3e | w">return</span>.a.+.b;.}</code> |
| 994e0 | 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 |
| 99500 | 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 |
| 99520 | 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 |
| 99540 | 74 20 74 65 73 74 5f 63 61 6c 6c 5f 62 75 69 6c 74 69 6e 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f | t.test_call_builtin.zig</kbd>.1/ |
| 99560 | 31 20 74 65 73 74 5f 63 61 6c 6c 5f 62 75 69 6c 74 69 6e 2e 74 65 73 74 2e 6e 6f 69 6e 6c 69 6e | 1.test_call_builtin.test.noinlin |
| 99580 | 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 |
| 995a0 | 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>. |
| 995c0 | 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 | .......<p>.......<code><span.cla |
| 995e0 | 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 61 6c 6c 3c 2f 73 70 61 6e 3e 3c 2f 63 | ss="tok-builtin">@call</span></c |
| 99600 | 6f 64 65 3e 20 61 6c 6c 6f 77 73 20 6d 6f 72 65 20 66 6c 65 78 69 62 69 6c 69 74 79 20 74 68 61 | ode>.allows.more.flexibility.tha |
| 99620 | 6e 20 6e 6f 72 6d 61 6c 20 66 75 6e 63 74 69 6f 6e 20 63 61 6c 6c 20 73 79 6e 74 61 78 20 64 6f | n.normal.function.call.syntax.do |
| 99640 | 65 73 2e 20 54 68 65 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 43 61 6c 6c 4d 6f 64 69 66 69 65 72 | es..The.......<code>CallModifier |
| 99660 | 3c 2f 63 6f 64 65 3e 20 65 6e 75 6d 20 69 73 20 72 65 70 72 6f 64 75 63 65 64 20 68 65 72 65 3a | </code>.enum.is.reproduced.here: |
| 99680 | 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 |
| 996a0 | 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 |
| 996c0 | 73 3d 22 66 69 6c 65 22 3e 62 75 69 6c 74 69 6e 2e 43 61 6c 6c 4d 6f 64 69 66 69 65 72 20 73 74 | s="file">builtin.CallModifier.st |
| 996e0 | 72 75 63 74 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 | ruct.zig</cite></figcaption><pre |
| 99700 | 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c | ><code><span.class="tok-kw">pub< |
| 99720 | 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 |
| 99740 | 74 3c 2f 73 70 61 6e 3e 20 43 61 6c 6c 4d 6f 64 69 66 69 65 72 20 3d 20 3c 73 70 61 6e 20 63 6c | t</span>.CallModifier.=.<span.cl |
| 99760 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6e 75 6d 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c | ass="tok-kw">enum</span>.{.....< |
| 99780 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 45 71 75 | span.class="tok-comment">///.Equ |
| 997a0 | 69 76 61 6c 65 6e 74 20 74 6f 20 66 75 6e 63 74 69 6f 6e 20 63 61 6c 6c 20 73 79 6e 74 61 78 2e | ivalent.to.function.call.syntax. |
| 997c0 | 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 61 75 74 6f 2c 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | </span>.....auto,......<span.cla |
| 997e0 | 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 45 71 75 69 76 61 6c 65 6e 74 20 | ss="tok-comment">///.Equivalent. |
| 99800 | 74 6f 20 61 73 79 6e 63 20 6b 65 79 77 6f 72 64 20 75 73 65 64 20 77 69 74 68 20 66 75 6e 63 74 | to.async.keyword.used.with.funct |
| 99820 | 69 6f 6e 20 63 61 6c 6c 20 73 79 6e 74 61 78 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 61 73 79 6e | ion.call.syntax.</span>.....asyn |
| 99840 | 63 5f 6b 77 2c 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d | c_kw,......<span.class="tok-comm |
| 99860 | 65 6e 74 22 3e 2f 2f 2f 20 50 72 65 76 65 6e 74 73 20 74 61 69 6c 20 63 61 6c 6c 20 6f 70 74 69 | ent">///.Prevents.tail.call.opti |
| 99880 | 6d 69 7a 61 74 69 6f 6e 2e 20 54 68 69 73 20 67 75 61 72 61 6e 74 65 65 73 20 74 68 61 74 20 74 | mization..This.guarantees.that.t |
| 998a0 | 68 65 20 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | he.return</span>.....<span.class |
| 998c0 | 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 61 64 64 72 65 73 73 20 77 69 6c 6c 20 | ="tok-comment">///.address.will. |
| 998e0 | 70 6f 69 6e 74 20 74 6f 20 74 68 65 20 63 61 6c 6c 73 69 74 65 2c 20 61 73 20 6f 70 70 6f 73 65 | point.to.the.callsite,.as.oppose |
| 99900 | 64 20 74 6f 20 74 68 65 20 63 61 6c 6c 73 69 74 65 27 73 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c | d.to.the.callsite's</span>.....< |
| 99920 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 63 61 6c | span.class="tok-comment">///.cal |
| 99940 | 6c 73 69 74 65 2e 20 49 66 20 74 68 65 20 63 61 6c 6c 20 69 73 20 6f 74 68 65 72 77 69 73 65 20 | lsite..If.the.call.is.otherwise. |
| 99960 | 72 65 71 75 69 72 65 64 20 74 6f 20 62 65 20 74 61 69 6c 2d 63 61 6c 6c 65 64 3c 2f 73 70 61 6e | required.to.be.tail-called</span |
| 99980 | 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"> |
| 999a0 | 2f 2f 2f 20 6f 72 20 69 6e 6c 69 6e 65 64 2c 20 61 20 63 6f 6d 70 69 6c 65 20 65 72 72 6f 72 20 | ///.or.inlined,.a.compile.error. |
| 999c0 | 69 73 20 65 6d 69 74 74 65 64 20 69 6e 73 74 65 61 64 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 6e | is.emitted.instead.</span>.....n |
| 999e0 | 65 76 65 72 5f 74 61 69 6c 2c 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ever_tail,......<span.class="tok |
| 99a00 | 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 47 75 61 72 61 6e 74 65 65 73 20 74 68 61 74 20 74 68 | -comment">///.Guarantees.that.th |
| 99a20 | 65 20 63 61 6c 6c 20 77 69 6c 6c 20 6e 6f 74 20 62 65 20 69 6e 6c 69 6e 65 64 2e 20 49 66 20 74 | e.call.will.not.be.inlined..If.t |
| 99a40 | 68 65 20 63 61 6c 6c 20 69 73 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | he.call.is</span>.....<span.clas |
| 99a60 | 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 6f 74 68 65 72 77 69 73 65 20 72 65 | s="tok-comment">///.otherwise.re |
| 99a80 | 71 75 69 72 65 64 20 74 6f 20 62 65 20 69 6e 6c 69 6e 65 64 2c 20 61 20 63 6f 6d 70 69 6c 65 20 | quired.to.be.inlined,.a.compile. |
| 99aa0 | 65 72 72 6f 72 20 69 73 20 65 6d 69 74 74 65 64 20 69 6e 73 74 65 61 64 2e 3c 2f 73 70 61 6e 3e | error.is.emitted.instead.</span> |
| 99ac0 | 0a 20 20 20 20 6e 65 76 65 72 5f 69 6e 6c 69 6e 65 2c 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | .....never_inline,......<span.cl |
| 99ae0 | 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 41 73 73 65 72 74 73 20 74 68 | ass="tok-comment">///.Asserts.th |
| 99b00 | 61 74 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 63 61 6c 6c 20 77 69 6c 6c 20 6e 6f 74 20 73 75 | at.the.function.call.will.not.su |
| 99b20 | 73 70 65 6e 64 2e 20 54 68 69 73 20 61 6c 6c 6f 77 73 20 61 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 | spend..This.allows.a</span>..... |
| 99b40 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 6e 6f | <span.class="tok-comment">///.no |
| 99b60 | 6e 2d 61 73 79 6e 63 20 66 75 6e 63 74 69 6f 6e 20 74 6f 20 63 61 6c 6c 20 61 6e 20 61 73 79 6e | n-async.function.to.call.an.asyn |
| 99b80 | 63 20 66 75 6e 63 74 69 6f 6e 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 6e 6f 5f 61 73 79 6e 63 2c | c.function.</span>.....no_async, |
| 99ba0 | 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"> |
| 99bc0 | 2f 2f 2f 20 47 75 61 72 61 6e 74 65 65 73 20 74 68 61 74 20 74 68 65 20 63 61 6c 6c 20 77 69 6c | ///.Guarantees.that.the.call.wil |
| 99be0 | 6c 20 62 65 20 67 65 6e 65 72 61 74 65 64 20 77 69 74 68 20 74 61 69 6c 20 63 61 6c 6c 20 6f 70 | l.be.generated.with.tail.call.op |
| 99c00 | 74 69 6d 69 7a 61 74 69 6f 6e 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | timization.</span>.....<span.cla |
| 99c20 | 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 49 66 20 74 68 69 73 20 69 73 20 | ss="tok-comment">///.If.this.is. |
| 99c40 | 6e 6f 74 20 70 6f 73 73 69 62 6c 65 2c 20 61 20 63 6f 6d 70 69 6c 65 20 65 72 72 6f 72 20 69 73 | not.possible,.a.compile.error.is |
| 99c60 | 20 65 6d 69 74 74 65 64 20 69 6e 73 74 65 61 64 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 61 6c 77 | .emitted.instead.</span>.....alw |
| 99c80 | 61 79 73 5f 74 61 69 6c 2c 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ays_tail,......<span.class="tok- |
| 99ca0 | 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 47 75 61 72 61 6e 74 65 65 73 20 74 68 61 74 20 74 68 65 | comment">///.Guarantees.that.the |
| 99cc0 | 20 63 61 6c 6c 20 77 69 6c 6c 20 62 65 20 69 6e 6c 69 6e 65 64 20 61 74 20 74 68 65 20 63 61 6c | .call.will.be.inlined.at.the.cal |
| 99ce0 | 6c 73 69 74 65 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | lsite.</span>.....<span.class="t |
| 99d00 | 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 49 66 20 74 68 69 73 20 69 73 20 6e 6f 74 20 70 | ok-comment">///.If.this.is.not.p |
| 99d20 | 6f 73 73 69 62 6c 65 2c 20 61 20 63 6f 6d 70 69 6c 65 20 65 72 72 6f 72 20 69 73 20 65 6d 69 74 | ossible,.a.compile.error.is.emit |
| 99d40 | 74 65 64 20 69 6e 73 74 65 61 64 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 61 6c 77 61 79 73 5f 69 | ted.instead.</span>.....always_i |
| 99d60 | 6e 6c 69 6e 65 2c 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d | nline,......<span.class="tok-com |
| 99d80 | 6d 65 6e 74 22 3e 2f 2f 2f 20 45 76 61 6c 75 61 74 65 73 20 74 68 65 20 63 61 6c 6c 20 61 74 20 | ment">///.Evaluates.the.call.at. |
| 99da0 | 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 2e 20 49 66 20 74 68 65 20 63 61 6c 6c 20 63 61 6e 6e 6f 74 | compile-time..If.the.call.cannot |
| 99dc0 | 20 62 65 20 63 6f 6d 70 6c 65 74 65 64 20 61 74 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 | .be.completed.at</span>.....<spa |
| 99de0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 63 6f 6d 70 69 6c | n.class="tok-comment">///.compil |
| 99e00 | 65 2d 74 69 6d 65 2c 20 61 20 63 6f 6d 70 69 6c 65 20 65 72 72 6f 72 20 69 73 20 65 6d 69 74 74 | e-time,.a.compile.error.is.emitt |
| 99e20 | 65 64 20 69 6e 73 74 65 61 64 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 63 6f 6d 70 69 6c 65 5f 74 | ed.instead.</span>.....compile_t |
| 99e40 | 69 6d 65 2c 0a 7d 3b 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 | ime,.};</code></pre></figure>... |
| 99e60 | 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 63 44 65 66 69 6e 65 22 3e 3c 61 | .............<h3.id="cDefine"><a |
| 99e80 | 20 68 72 65 66 3d 22 23 74 6f 63 2d 63 44 65 66 69 6e 65 22 3e 40 63 44 65 66 69 6e 65 3c 2f 61 | .href="#toc-cDefine">@cDefine</a |
| 99ea0 | 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 63 44 65 66 69 6e 65 22 | >.<a.class="hdr".href="#cDefine" |
| 99ec0 | 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>< |
| 99ee0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 44 65 66 69 6e | span.class="tok-builtin">@cDefin |
| 99f00 | 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 |
| 99f20 | 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 6e 61 6d 65 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 | mptime</span>.name:.[]<span.clas |
| 99f40 | 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 |
| 99f60 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 76 61 6c 75 65 29 | ass="tok-type">u8</span>,.value) |
| 99f80 | 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 |
| 99fa0 | 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>...... |
| 99fc0 | 20 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 63 61 6e 20 6f 6e 6c 79 20 6f 63 63 75 72 20 69 6e | .This.function.can.only.occur.in |
| 99fe0 | 73 69 64 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c | side.<code><span.class="tok-buil |
| 9a000 | 74 69 6e 22 3e 40 63 49 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 | tin">@cImport</span></code>..... |
| 9a020 | 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 61 70 70 | ...</p>.......<p>.......This.app |
| 9a040 | 65 6e 64 73 20 3c 63 6f 64 65 3e 23 64 65 66 69 6e 65 20 24 6e 61 6d 65 20 24 76 61 6c 75 65 3c | ends.<code>#define.$name.$value< |
| 9a060 | 2f 63 6f 64 65 3e 20 74 6f 20 74 68 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | /code>.to.the.<code><span.class= |
| 9a080 | 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 |
| 9a0a0 | 6f 64 65 3e 0a 20 20 20 20 20 20 74 65 6d 70 6f 72 61 72 79 20 62 75 66 66 65 72 2e 0a 20 20 20 | ode>.......temporary.buffer..... |
| 9a0c0 | 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 6f 20 64 65 66 69 6e | ...</p>.......<p>.......To.defin |
| 9a0e0 | 65 20 77 69 74 68 6f 75 74 20 61 20 76 61 6c 75 65 2c 20 6c 69 6b 65 20 74 68 69 73 3a 0a 20 20 | e.without.a.value,.like.this:... |
| 9a100 | 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d | ....</p>.......<pre><code.class= |
| 9a120 | 22 63 22 3e 23 64 65 66 69 6e 65 20 5f 47 4e 55 5f 53 4f 55 52 43 45 3c 2f 63 6f 64 65 3e 3c 2f | "c">#define._GNU_SOURCE</code></ |
| 9a140 | 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 55 73 65 20 74 68 65 20 76 6f 69 | pre>.......<p>.......Use.the.voi |
| 9a160 | 64 20 76 61 6c 75 65 2c 20 6c 69 6b 65 20 74 68 69 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 | d.value,.like.this:.......</p>.. |
| 9a180 | 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 |
| 9a1a0 | 2d 62 75 69 6c 74 69 6e 22 3e 40 63 44 65 66 69 6e 65 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 | -builtin">@cDefine</span>(<span. |
| 9a1c0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 5f 47 4e 55 5f 53 4f 55 52 43 | class="tok-str">"_GNU_SOURC |
| 9a1e0 | 45 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 7b 7d 29 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e | E"</span>,.{})</code></pre> |
| 9a200 | 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e | .......<p>See.also:</p><ul>.<li> |
| 9a220 | 3c 61 20 68 72 65 66 3d 22 23 49 6d 70 6f 72 74 2d 66 72 6f 6d 2d 43 2d 48 65 61 64 65 72 2d 46 | <a.href="#Import-from-C-Header-F |
| 9a240 | 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</ |
| 9a260 | 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 63 49 6e 63 6c 75 64 65 22 3e | a></li>.<li><a.href="#cInclude"> |
| 9a280 | 40 63 49 6e 63 6c 75 64 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 | @cInclude</a></li>.<li><a.href=" |
| 9a2a0 | 23 63 49 6d 70 6f 72 74 22 3e 40 63 49 6d 70 6f 72 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e | #cImport">@cImport</a></li>.<li> |
| 9a2c0 | 3c 61 20 68 72 65 66 3d 22 23 63 55 6e 64 65 66 22 3e 40 63 55 6e 64 65 66 3c 2f 61 3e 3c 2f 6c | <a.href="#cUndef">@cUndef</a></l |
| 9a2e0 | 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 76 6f 69 64 22 3e 76 6f 69 64 3c 2f 61 3e 3c | i>.<li><a.href="#void">void</a>< |
| 9a300 | 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= |
| 9a320 | 22 63 49 6d 70 6f 72 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 63 49 6d 70 6f 72 74 22 | "cImport"><a.href="#toc-cImport" |
| 9a340 | 3e 40 63 49 6d 70 6f 72 74 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 | >@cImport</a>.<a.class="hdr".hre |
| 9a360 | 66 3d 22 23 63 49 6d 70 6f 72 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 | f="#cImport">..</a></h3>........ |
| 9a380 | 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 |
| 9a3a0 | 74 69 6e 22 3e 40 63 49 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 65 78 70 72 65 73 73 69 6f 6e 29 | tin">@cImport</span>(expression) |
| 9a3c0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 | .<span.class="tok-type">type</sp |
| 9a3e0 | 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>...... |
| 9a400 | 20 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 70 61 72 73 65 73 20 43 20 63 6f 64 65 20 61 6e 64 | .This.function.parses.C.code.and |
| 9a420 | 20 69 6d 70 6f 72 74 73 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 73 2c 20 74 79 70 65 73 2c 20 76 | .imports.the.functions,.types,.v |
| 9a440 | 61 72 69 61 62 6c 65 73 2c 0a 20 20 20 20 20 20 61 6e 64 20 63 6f 6d 70 61 74 69 62 6c 65 20 6d | ariables,.......and.compatible.m |
| 9a460 | 61 63 72 6f 20 64 65 66 69 6e 69 74 69 6f 6e 73 20 69 6e 74 6f 20 61 20 6e 65 77 20 65 6d 70 74 | acro.definitions.into.a.new.empt |
| 9a480 | 79 20 73 74 72 75 63 74 20 74 79 70 65 2c 20 61 6e 64 20 74 68 65 6e 0a 20 20 20 20 20 20 72 65 | y.struct.type,.and.then.......re |
| 9a4a0 | 74 75 72 6e 73 20 74 68 61 74 20 74 79 70 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 | turns.that.type........</p>..... |
| 9a4c0 | 20 20 3c 70 3e 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 65 78 70 72 65 73 73 69 6f 6e 3c 2f 63 6f | ..<p>.......<code>expression</co |
| 9a4e0 | 64 65 3e 20 69 73 20 69 6e 74 65 72 70 72 65 74 65 64 20 61 74 20 63 6f 6d 70 69 6c 65 20 74 69 | de>.is.interpreted.at.compile.ti |
| 9a500 | 6d 65 2e 20 54 68 65 20 62 75 69 6c 74 69 6e 20 66 75 6e 63 74 69 6f 6e 73 0a 20 20 20 20 20 20 | me..The.builtin.functions....... |
| 9a520 | 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 | ....<code><span.class="tok-built |
| 9a540 | 69 6e 22 3e 40 63 49 6e 63 6c 75 64 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 3c 63 6f | in">@cInclude</span></code>,.<co |
| 9a560 | 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 44 | de><span.class="tok-builtin">@cD |
| 9a580 | 65 66 69 6e 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 61 6e 64 20 3c 63 6f 64 65 3e 3c | efine</span></code>,.and.<code>< |
| 9a5a0 | 73 70 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 |
| 9a5c0 | 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 77 6f 72 6b 0a 20 20 20 20 20 20 77 69 74 68 69 6e | </span></code>.work.......within |
| 9a5e0 | 20 74 68 69 73 20 65 78 70 72 65 73 73 69 6f 6e 2c 20 61 70 70 65 6e 64 69 6e 67 20 74 6f 20 61 | .this.expression,.appending.to.a |
| 9a600 | 20 74 65 6d 70 6f 72 61 72 79 20 62 75 66 66 65 72 20 77 68 69 63 68 20 69 73 20 74 68 65 6e 20 | .temporary.buffer.which.is.then. |
| 9a620 | 70 61 72 73 65 64 20 61 73 20 43 20 63 6f 64 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 | parsed.as.C.code........</p>.... |
| 9a640 | 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 55 73 75 61 6c 6c 79 20 79 6f 75 20 73 68 6f 75 6c 64 20 | ...<p>.......Usually.you.should. |
| 9a660 | 6f 6e 6c 79 20 68 61 76 65 20 6f 6e 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | only.have.one.<code><span.class= |
| 9a680 | 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 |
| 9a6a0 | 6f 64 65 3e 20 69 6e 20 79 6f 75 72 20 65 6e 74 69 72 65 20 61 70 70 6c 69 63 61 74 69 6f 6e 2c | ode>.in.your.entire.application, |
| 9a6c0 | 20 62 65 63 61 75 73 65 20 69 74 20 73 61 76 65 73 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 0a 20 | .because.it.saves.the.compiler.. |
| 9a6e0 | 20 20 20 20 20 66 72 6f 6d 20 69 6e 76 6f 6b 69 6e 67 20 63 6c 61 6e 67 20 6d 75 6c 74 69 70 6c | .....from.invoking.clang.multipl |
| 9a700 | 65 20 74 69 6d 65 73 2c 20 61 6e 64 20 70 72 65 76 65 6e 74 73 20 69 6e 6c 69 6e 65 20 66 75 6e | e.times,.and.prevents.inline.fun |
| 9a720 | 63 74 69 6f 6e 73 20 66 72 6f 6d 20 62 65 69 6e 67 20 64 75 70 6c 69 63 61 74 65 64 2e 0a 20 20 | ctions.from.being.duplicated.... |
| 9a740 | 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 52 65 61 73 6f 6e 73 | ....</p>.......<p>.......Reasons |
| 9a760 | 20 66 6f 72 20 68 61 76 69 6e 67 20 6d 75 6c 74 69 70 6c 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e | .for.having.multiple.<code><span |
| 9a780 | 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 |
| 9a7a0 | 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 65 78 70 72 65 73 73 69 6f 6e 73 20 77 6f 75 6c 64 20 62 65 | pan></code>.expressions.would.be |
| 9a7c0 | 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 | :.......</p>.......<ul>......... |
| 9a7e0 | 20 20 3c 6c 69 3e 54 6f 20 61 76 6f 69 64 20 61 20 73 79 6d 62 6f 6c 20 63 6f 6c 6c 69 73 69 6f | ..<li>To.avoid.a.symbol.collisio |
| 9a800 | 6e 2c 20 66 6f 72 20 65 78 61 6d 70 6c 65 20 69 66 20 66 6f 6f 2e 68 20 61 6e 64 20 62 61 72 2e | n,.for.example.if.foo.h.and.bar. |
| 9a820 | 68 20 62 6f 74 68 20 3c 63 6f 64 65 3e 23 64 65 66 69 6e 65 20 43 4f 4e 4e 45 43 54 49 4f 4e 5f | h.both.<code>#define.CONNECTION_ |
| 9a840 | 43 4f 55 4e 54 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 54 6f | COUNT</code></li>.........<li>To |
| 9a860 | 20 61 6e 61 6c 79 7a 65 20 74 68 65 20 43 20 63 6f 64 65 20 77 69 74 68 20 64 69 66 66 65 72 65 | .analyze.the.C.code.with.differe |
| 9a880 | 6e 74 20 70 72 65 70 72 6f 63 65 73 73 6f 72 20 64 65 66 69 6e 65 73 3c 2f 6c 69 3e 0a 20 20 20 | nt.preprocessor.defines</li>.... |
| 9a8a0 | 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c | ...</ul>.......<p>See.also:</p>< |
| 9a8c0 | 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 49 6d 70 6f 72 74 2d 66 72 6f 6d 2d 43 2d | ul>.<li><a.href="#Import-from-C- |
| 9a8e0 | 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 |
| 9a900 | 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 |
| 9a920 | 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>< |
| 9a940 | 61 20 68 72 65 66 3d 22 23 63 44 65 66 69 6e 65 22 3e 40 63 44 65 66 69 6e 65 3c 2f 61 3e 3c 2f | a.href="#cDefine">@cDefine</a></ |
| 9a960 | 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 63 55 6e 64 65 66 22 3e 40 63 55 6e 64 65 | li>.<li><a.href="#cUndef">@cUnde |
| 9a980 | 66 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c | f</a></li>.</ul>...............< |
| 9a9a0 | 68 33 20 69 64 3d 22 63 49 6e 63 6c 75 64 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 63 | h3.id="cInclude"><a.href="#toc-c |
| 9a9c0 | 49 6e 63 6c 75 64 65 22 3e 40 63 49 6e 63 6c 75 64 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d | Include">@cInclude</a>.<a.class= |
| 9a9e0 | 22 68 64 72 22 20 68 72 65 66 3d 22 23 63 49 6e 63 6c 75 64 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 | "hdr".href="#cInclude">..</a></h |
| 9aa00 | 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 |
| 9aa20 | 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 49 6e 63 6c 75 64 65 3c 2f 73 70 61 6e 3e 28 | ="tok-builtin">@cInclude</span>( |
| 9aa40 | 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 |
| 9aa60 | 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 |
| 9aa80 | 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- |
| 9aaa0 | 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 |
| 9aac0 | 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e | k-type">void</span></code></pre> |
| 9aae0 | 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 63 | .......<p>.......This.function.c |
| 9ab00 | 61 6e 20 6f 6e 6c 79 20 6f 63 63 75 72 20 69 6e 73 69 64 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e | an.only.occur.inside.<code><span |
| 9ab20 | 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 |
| 9ab40 | 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 | pan></code>........</p>.......<p |
| 9ab60 | 3e 0a 20 20 20 20 20 20 54 68 69 73 20 61 70 70 65 6e 64 73 20 3c 63 6f 64 65 3e 23 69 6e 63 6c | >.......This.appends.<code>#incl |
| 9ab80 | 75 64 65 20 26 6c 74 3b 24 70 61 74 68 26 67 74 3b 5c 6e 3c 2f 63 6f 64 65 3e 20 74 6f 20 74 68 | ude.<$path>\n</code>.to.th |
| 9aba0 | 65 20 3c 63 6f 64 65 3e 63 5f 69 6d 70 6f 72 74 3c 2f 63 6f 64 65 3e 0a 20 20 20 20 20 20 74 65 | e.<code>c_import</code>.......te |
| 9abc0 | 6d 70 6f 72 61 72 79 20 62 75 66 66 65 72 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 | mporary.buffer........</p>...... |
| 9abe0 | 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 |
| 9ac00 | 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 |
| 9ac20 | 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 |
| 9ac40 | 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 63 49 6d 70 6f 72 74 22 3e 40 63 49 6d 70 6f 72 | >.<li><a.href="#cImport">@cImpor |
| 9ac60 | 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 63 44 65 66 69 6e 65 | t</a></li>.<li><a.href="#cDefine |
| 9ac80 | 22 3e 40 63 44 65 66 69 6e 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d | ">@cDefine</a></li>.<li><a.href= |
| 9aca0 | 22 23 63 55 6e 64 65 66 22 3e 40 63 55 6e 64 65 66 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e | "#cUndef">@cUndef</a></li>.</ul> |
| 9acc0 | 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 63 6c 7a 22 3e 3c 61 20 | ................<h3.id="clz"><a. |
| 9ace0 | 68 72 65 66 3d 22 23 74 6f 63 2d 63 6c 7a 22 3e 40 63 6c 7a 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 | href="#toc-clz">@clz</a>.<a.clas |
| 9ad00 | 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 63 6c 7a 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a | s="hdr".href="#clz">..</a></h3>. |
| 9ad20 | 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 |
| 9ad40 | 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 6c 7a 3c 2f 73 70 61 6e 3e 28 6f 70 65 72 61 6e 64 3a | ok-builtin">@clz</span>(operand: |
| 9ad60 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 79 74 79 70 65 3c 2f 73 | .<span.class="tok-kw">anytype</s |
| 9ad80 | 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 79 74 79 | pan>).<span.class="tok-kw">anyty |
| 9ada0 | 70 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e | pe</span></code></pre>.......<p> |
| 9adc0 | 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"> |
| 9ade0 | 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 6f 70 65 72 61 6e 64 29 3c 2f 63 6f 64 65 3e 20 6d | @TypeOf</span>(operand)</code>.m |
| 9ae00 | 75 73 74 20 62 65 20 61 6e 20 69 6e 74 65 67 65 72 20 74 79 70 65 20 6f 72 20 61 6e 20 69 6e 74 | ust.be.an.integer.type.or.an.int |
| 9ae20 | 65 67 65 72 20 76 65 63 74 6f 72 20 74 79 70 65 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 3c | eger.vector.type.</p>.......<p>< |
| 9ae40 | 63 6f 64 65 3e 6f 70 65 72 61 6e 64 3c 2f 63 6f 64 65 3e 20 6d 61 79 20 62 65 20 61 6e 20 3c 61 | code>operand</code>.may.be.an.<a |
| 9ae60 | 20 68 72 65 66 3d 22 23 49 6e 74 65 67 65 72 73 22 3e 69 6e 74 65 67 65 72 3c 2f 61 3e 20 6f 72 | .href="#Integers">integer</a>.or |
| 9ae80 | 20 3c 61 20 68 72 65 66 3d 22 23 56 65 63 74 6f 72 73 22 3e 76 65 63 74 6f 72 3c 2f 61 3e 2e 3c | .<a.href="#Vectors">vector</a>.< |
| 9aea0 | 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 43 6f 75 6e 74 73 20 74 68 65 20 6e | /p>.......<p>.......Counts.the.n |
| 9aec0 | 75 6d 62 65 72 20 6f 66 20 6d 6f 73 74 2d 73 69 67 6e 69 66 69 63 61 6e 74 20 28 6c 65 61 64 69 | umber.of.most-significant.(leadi |
| 9aee0 | 6e 67 20 69 6e 20 61 20 62 69 67 2d 65 6e 64 69 61 6e 20 73 65 6e 73 65 29 20 7a 65 72 6f 65 73 | ng.in.a.big-endian.sense).zeroes |
| 9af00 | 20 69 6e 20 61 6e 20 69 6e 74 65 67 65 72 20 2d 20 22 63 6f 75 6e 74 20 6c 65 61 64 69 6e 67 20 | .in.an.integer.-."count.leading. |
| 9af20 | 7a 65 72 6f 65 73 22 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 | zeroes"........</p>.......<p>... |
| 9af40 | 20 20 20 20 54 68 65 20 72 65 74 75 72 6e 20 74 79 70 65 20 69 73 20 61 6e 20 75 6e 73 69 67 6e | ....The.return.type.is.an.unsign |
| 9af60 | 65 64 20 69 6e 74 65 67 65 72 20 6f 72 20 76 65 63 74 6f 72 20 6f 66 20 75 6e 73 69 67 6e 65 64 | ed.integer.or.vector.of.unsigned |
| 9af80 | 20 69 6e 74 65 67 65 72 73 20 77 69 74 68 20 74 68 65 20 6d 69 6e 69 6d 75 6d 20 6e 75 6d 62 65 | .integers.with.the.minimum.numbe |
| 9afa0 | 72 0a 20 20 20 20 20 20 6f 66 20 62 69 74 73 20 74 68 61 74 20 63 61 6e 20 72 65 70 72 65 73 65 | r.......of.bits.that.can.represe |
| 9afc0 | 6e 74 20 74 68 65 20 62 69 74 20 63 6f 75 6e 74 20 6f 66 20 74 68 65 20 69 6e 74 65 67 65 72 20 | nt.the.bit.count.of.the.integer. |
| 9afe0 | 74 79 70 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 | type........</p>.......<p>...... |
| 9b000 | 20 49 66 20 3c 63 6f 64 65 3e 6f 70 65 72 61 6e 64 3c 2f 63 6f 64 65 3e 20 69 73 20 7a 65 72 6f | .If.<code>operand</code>.is.zero |
| 9b020 | 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 |
| 9b040 | 22 3e 40 63 6c 7a 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 72 65 74 75 72 6e 73 20 74 68 65 | ">@clz</span></code>.returns.the |
| 9b060 | 20 62 69 74 20 77 69 64 74 68 0a 20 20 20 20 20 20 6f 66 20 69 6e 74 65 67 65 72 20 74 79 70 65 | .bit.width.......of.integer.type |
| 9b080 | 20 3c 63 6f 64 65 3e 54 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 | .<code>T</code>........</p>..... |
| 9b0a0 | 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 |
| 9b0c0 | 65 66 3d 22 23 63 74 7a 22 3e 40 63 74 7a 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 | ef="#ctz">@ctz</a></li>.<li><a.h |
| 9b0e0 | 72 65 66 3d 22 23 70 6f 70 43 6f 75 6e 74 22 3e 40 70 6f 70 43 6f 75 6e 74 3c 2f 61 3e 3c 2f 6c | ref="#popCount">@popCount</a></l |
| 9b100 | 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=" |
| 9b120 | 63 6d 70 78 63 68 67 53 74 72 6f 6e 67 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 63 6d 70 | cmpxchgStrong"><a.href="#toc-cmp |
| 9b140 | 78 63 68 67 53 74 72 6f 6e 67 22 3e 40 63 6d 70 78 63 68 67 53 74 72 6f 6e 67 3c 2f 61 3e 20 3c | xchgStrong">@cmpxchgStrong</a>.< |
| 9b160 | 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 63 6d 70 78 63 68 67 53 74 72 6f | a.class="hdr".href="#cmpxchgStro |
| 9b180 | 6e 67 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 | ng">..</a></h3>........<pre><cod |
| 9b1a0 | 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 6d 70 | e><span.class="tok-builtin">@cmp |
| 9b1c0 | 78 63 68 67 53 74 72 6f 6e 67 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | xchgStrong</span>(<span.class="t |
| 9b1e0 | 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 54 3a 20 3c 73 70 61 6e 20 | ok-kw">comptime</span>.T:.<span. |
| 9b200 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 70 74 | class="tok-type">type</span>,.pt |
| 9b220 | 72 3a 20 2a 54 2c 20 65 78 70 65 63 74 65 64 5f 76 61 6c 75 65 3a 20 54 2c 20 6e 65 77 5f 76 61 | r:.*T,.expected_value:.T,.new_va |
| 9b240 | 6c 75 65 3a 20 54 2c 20 73 75 63 63 65 73 73 5f 6f 72 64 65 72 3a 20 41 74 6f 6d 69 63 4f 72 64 | lue:.T,.success_order:.AtomicOrd |
| 9b260 | 65 72 2c 20 66 61 69 6c 5f 6f 72 64 65 72 3a 20 41 74 6f 6d 69 63 4f 72 64 65 72 29 20 3f 54 3c | er,.fail_order:.AtomicOrder).?T< |
| 9b280 | 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 | /code></pre>.......<p>.......Thi |
| 9b2a0 | 73 20 66 75 6e 63 74 69 6f 6e 20 70 65 72 66 6f 72 6d 73 20 61 20 73 74 72 6f 6e 67 20 61 74 6f | s.function.performs.a.strong.ato |
| 9b2c0 | 6d 69 63 20 63 6f 6d 70 61 72 65 2d 61 6e 64 2d 65 78 63 68 61 6e 67 65 20 6f 70 65 72 61 74 69 | mic.compare-and-exchange.operati |
| 9b2e0 | 6f 6e 2c 20 72 65 74 75 72 6e 69 6e 67 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | on,.returning.<code><span.class= |
| 9b300 | 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 0a 20 20 | "tok-null">null</span></code>... |
| 9b320 | 20 20 20 20 69 66 20 74 68 65 20 63 75 72 72 65 6e 74 20 76 61 6c 75 65 20 69 73 20 74 68 65 20 | ....if.the.current.value.is.the. |
| 9b340 | 67 69 76 65 6e 20 65 78 70 65 63 74 65 64 20 76 61 6c 75 65 2e 20 49 74 27 73 20 74 68 65 20 65 | given.expected.value..It's.the.e |
| 9b360 | 71 75 69 76 61 6c 65 6e 74 20 6f 66 20 74 68 69 73 20 63 6f 64 65 2c 0a 20 20 20 20 20 20 65 78 | quivalent.of.this.code,.......ex |
| 9b380 | 63 65 70 74 20 61 74 6f 6d 69 63 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 | cept.atomic:.......</p>.......<f |
| 9b3a0 | 69 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 |
| 9b3c0 | 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 6e 6f 74 5f 61 74 6f 6d 69 63 5f | "><cite.class="file">not_atomic_ |
| 9b3e0 | 63 6d 70 78 63 68 67 53 74 72 6f 6e 67 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 | cmpxchgStrong.zig</cite></figcap |
| 9b400 | 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 |
| 9b420 | 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- |
| 9b440 | 66 6e 22 3e 63 6d 70 78 63 68 67 53 74 72 6f 6e 67 42 75 74 4e 6f 74 41 74 6f 6d 69 63 3c 2f 73 | fn">cmpxchgStrongButNotAtomic</s |
| 9b460 | 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 |
| 9b480 | 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 |
| 9b4a0 | 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 70 74 72 3a 20 2a 54 2c 20 65 78 70 65 63 74 | pe">type</span>,.ptr:.*T,.expect |
| 9b4c0 | 65 64 5f 76 61 6c 75 65 3a 20 54 2c 20 6e 65 77 5f 76 61 6c 75 65 3a 20 54 29 20 3f 54 20 7b 0a | ed_value:.T,.new_value:.T).?T.{. |
| 9b4e0 | 20 20 20 20 3c 73 70 61 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</ |
| 9b500 | 73 70 61 6e 3e 20 6f 6c 64 5f 76 61 6c 75 65 20 3d 20 70 74 72 2e 2a 3b 0a 20 20 20 20 3c 73 70 | span>.old_value.=.ptr.*;.....<sp |
| 9b520 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 6f 6c 64 | an.class="tok-kw">if</span>.(old |
| 9b540 | 5f 76 61 6c 75 65 20 3d 3d 20 65 78 70 65 63 74 65 64 5f 76 61 6c 75 65 29 20 7b 0a 20 20 20 20 | _value.==.expected_value).{..... |
| 9b560 | 20 20 20 20 70 74 72 2e 2a 20 3d 20 6e 65 77 5f 76 61 6c 75 65 3b 0a 20 20 20 20 20 20 20 20 3c | ....ptr.*.=.new_value;.........< |
| 9b580 | 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 |
| 9b5a0 | 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 | >.<span.class="tok-null">null</s |
| 9b5c0 | 70 61 6e 3e 3b 0a 20 20 20 20 7d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | pan>;.....}.<span.class="tok-kw" |
| 9b5e0 | 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | >else</span>.{.........<span.cla |
| 9b600 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 6f 6c 64 5f 76 61 | ss="tok-kw">return</span>.old_va |
| 9b620 | 6c 75 65 3b 0a 20 20 20 20 7d 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 | lue;.....}.}</code></pre></figur |
| 9b640 | 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 66 20 79 6f 75 20 61 72 65 20 75 | e>........<p>.......If.you.are.u |
| 9b660 | 73 69 6e 67 20 63 6d 70 78 63 68 67 20 69 6e 20 61 20 72 65 74 72 79 20 6c 6f 6f 70 2c 20 3c 61 | sing.cmpxchg.in.a.retry.loop,.<a |
| 9b680 | 20 68 72 65 66 3d 22 23 63 6d 70 78 63 68 67 57 65 61 6b 22 3e 40 63 6d 70 78 63 68 67 57 65 61 | .href="#cmpxchgWeak">@cmpxchgWea |
| 9b6a0 | 6b 3c 2f 61 3e 20 69 73 20 74 68 65 20 62 65 74 74 65 72 20 63 68 6f 69 63 65 2c 20 62 65 63 61 | k</a>.is.the.better.choice,.beca |
| 9b6c0 | 75 73 65 20 69 74 20 63 61 6e 20 62 65 20 69 6d 70 6c 65 6d 65 6e 74 65 64 0a 20 20 20 20 20 20 | use.it.can.be.implemented....... |
| 9b6e0 | 6d 6f 72 65 20 65 66 66 69 63 69 65 6e 74 6c 79 20 69 6e 20 6d 61 63 68 69 6e 65 20 69 6e 73 74 | more.efficiently.in.machine.inst |
| 9b700 | 72 75 63 74 69 6f 6e 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 | ructions........</p>.......<p>.. |
| 9b720 | 20 20 20 20 20 3c 63 6f 64 65 3e 54 3c 2f 63 6f 64 65 3e 20 6d 75 73 74 20 62 65 20 61 20 70 6f | .....<code>T</code>.must.be.a.po |
| 9b740 | 69 6e 74 65 72 2c 20 61 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | inter,.a.<code><span.class="tok- |
| 9b760 | 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 0a 20 20 20 20 20 20 | type">bool</span></code>,....... |
| 9b780 | 61 6e 20 69 6e 74 65 67 65 72 2c 20 61 6e 20 65 6e 75 6d 2c 20 6f 72 20 61 20 70 61 63 6b 65 64 | an.integer,.an.enum,.or.a.packed |
| 9b7a0 | 20 73 74 72 75 63 74 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 3c 63 6f | .struct........</p>.......<p><co |
| 9b7c0 | 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 74 79 | de><span.class="tok-builtin">@ty |
| 9b7e0 | 70 65 49 6e 66 6f 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 | peInfo</span>(<span.class="tok-b |
| 9b800 | 75 69 6c 74 69 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 70 74 72 29 29 2e 70 6f 69 | uiltin">@TypeOf</span>(ptr)).poi |
| 9b820 | 6e 74 65 72 2e 61 6c 69 67 6e 6d 65 6e 74 3c 2f 63 6f 64 65 3e 20 6d 75 73 74 20 62 65 20 3c 63 | nter.alignment</code>.must.be.<c |
| 9b840 | 6f 64 65 3e 26 67 74 3b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 | ode>>=.<span.class="tok-built |
| 9b860 | 69 6e 22 3e 40 73 69 7a 65 4f 66 3c 2f 73 70 61 6e 3e 28 54 29 2e 3c 2f 63 6f 64 65 3e 3c 2f 70 | in">@sizeOf</span>(T).</code></p |
| 9b880 | 3e 0a 20 20 20 20 20 20 3c 70 3e 3c 63 6f 64 65 3e 41 74 6f 6d 69 63 4f 72 64 65 72 3c 2f 63 6f | >.......<p><code>AtomicOrder</co |
| 9b8a0 | 64 65 3e 20 63 61 6e 20 62 65 20 66 6f 75 6e 64 20 77 69 74 68 20 3c 63 6f 64 65 3e 3c 73 70 61 | de>.can.be.found.with.<code><spa |
| 9b8c0 | 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 |
| 9b8e0 | 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">" |
| 9b900 | 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 62 75 69 6c 74 69 6e 2e 41 74 6f 6d 69 | ;std"</span>).builtin.Atomi |
| 9b920 | 63 4f 72 64 65 72 3c 2f 63 6f 64 65 3e 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 | cOrder</code>.</p>.......<p>See. |
| 9b940 | 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 61 74 6f 6d | also:</p><ul>.<li><a.href="#atom |
| 9b960 | 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>.< |
| 9b980 | 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 |
| 9b9a0 | 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 |
| 9b9c0 | 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 3c | icRmw">@atomicRmw</a></li>.<li>< |
| 9b9e0 | 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 65 | a.href="#cmpxchgWeak">@cmpxchgWe |
| 9ba00 | 61 6b 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 | ak</a></li>.</ul>............... |
| 9ba20 | 20 3c 68 33 20 69 64 3d 22 63 6d 70 78 63 68 67 57 65 61 6b 22 3e 3c 61 20 68 72 65 66 3d 22 23 | .<h3.id="cmpxchgWeak"><a.href="# |
| 9ba40 | 74 6f 63 2d 63 6d 70 78 63 68 67 57 65 61 6b 22 3e 40 63 6d 70 78 63 68 67 57 65 61 6b 3c 2f 61 | toc-cmpxchgWeak">@cmpxchgWeak</a |
| 9ba60 | 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 6d 70 78 63 68 67 57 | >.<a.class="hdr".href="#cmpxchgW |
| 9ba80 | 65 61 6b 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 | eak">..</a></h3>........<pre><co |
| 9baa0 | 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 6d | de><span.class="tok-builtin">@cm |
| 9bac0 | 70 78 63 68 67 57 65 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 | pxchgWeak</span>(<span.class="to |
| 9bae0 | 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 |
| 9bb00 | 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 70 74 72 | lass="tok-type">type</span>,.ptr |
| 9bb20 | 3a 20 2a 54 2c 20 65 78 70 65 63 74 65 64 5f 76 61 6c 75 65 3a 20 54 2c 20 6e 65 77 5f 76 61 6c | :.*T,.expected_value:.T,.new_val |
| 9bb40 | 75 65 3a 20 54 2c 20 73 75 63 63 65 73 73 5f 6f 72 64 65 72 3a 20 41 74 6f 6d 69 63 4f 72 64 65 | ue:.T,.success_order:.AtomicOrde |
| 9bb60 | 72 2c 20 66 61 69 6c 5f 6f 72 64 65 72 3a 20 41 74 6f 6d 69 63 4f 72 64 65 72 29 20 3f 54 3c 2f | r,.fail_order:.AtomicOrder).?T</ |
| 9bb80 | 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 | code></pre>.......<p>.......This |
| 9bba0 | 20 66 75 6e 63 74 69 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 | .function.performs.a.weak.atomic |
| 9bbc0 | 20 63 6f 6d 70 61 72 65 2d 61 6e 64 2d 65 78 63 68 61 6e 67 65 20 6f 70 65 72 61 74 69 6f 6e 2c | .compare-and-exchange.operation, |
| 9bbe0 | 20 72 65 74 75 72 6e 69 6e 67 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | .returning.<code><span.class="to |
| 9bc00 | 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 0a 20 20 20 20 20 | k-null">null</span></code>...... |
| 9bc20 | 20 69 66 20 74 68 65 20 63 75 72 72 65 6e 74 20 76 61 6c 75 65 20 69 73 20 74 68 65 20 67 69 76 | .if.the.current.value.is.the.giv |
| 9bc40 | 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 |
| 9bc60 | 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 |
| 9bc80 | 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 |
| 9bca0 | 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">< |
| 9bcc0 | 63 69 74 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 | cite.class="file">cmpxchgWeakBut |
| 9bce0 | 4e 6f 74 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 | NotAtomic</cite></figcaption><pr |
| 9bd00 | 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< |
| 9bd20 | 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 6d 70 78 | /span>.<span.class="tok-fn">cmpx |
| 9bd40 | 63 68 67 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 | chgWeakButNotAtomic</span>(<span |
| 9bd60 | 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>. |
| 9bd80 | 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</ |
| 9bda0 | 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 76 61 6c 75 65 3a 20 | span>,.ptr:.*T,.expected_value:. |
| 9bdc0 | 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 20 3c 73 70 61 6e 20 | T,.new_value:.T).?T.{.....<span. |
| 9bde0 | 63 6c 61 73 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 | class="tok-kw">const</span>.old_ |
| 9be00 | 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 63 6c 61 73 73 3d 22 | value.=.ptr.*;.....<span.class=" |
| 9be20 | 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 6c 75 65 20 3d 3d 20 | tok-kw">if</span>.(old_value.==. |
| 9be40 | 65 78 70 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 | expected_value.<span.class="tok- |
| 9be60 | 6b 77 22 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 | kw">and</span>.usuallyTrueButSom |
| 9be80 | 65 74 69 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 | etimesFalse()).{.........ptr.*.= |
| 9bea0 | 20 6e 65 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 | .new_value;.........<span.class= |
| 9bec0 | 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 |
| 9bee0 | 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 7d | ss="tok-null">null</span>;.....} |
| 9bf00 | 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 |
| 9bf20 | 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 22 | >.{.........<span.class="tok-kw" |
| 9bf40 | 3e 72 65 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 | >return</span>.old_value;.....}. |
| 9bf60 | 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 |
| 9bf80 | 3e 0a 20 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 | >.......If.you.are.using.cmpxchg |
| 9bfa0 | 20 69 6e 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 | .in.a.retry.loop,.the.sporadic.f |
| 9bfc0 | 61 69 6c 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 | ailure.will.be.no.problem,.and.< |
| 9bfe0 | 63 6f 64 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 | code>cmpxchgWeak</code>.......is |
| 9c000 | 20 74 68 65 20 62 65 74 74 65 72 20 63 68 6f 69 63 65 2c 20 62 65 63 61 75 73 65 20 69 74 20 63 | .the.better.choice,.because.it.c |
| 9c020 | 61 6e 20 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 | an.be.implemented.more.efficient |
| 9c040 | 6c 79 20 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 | ly.in.machine.instructions...... |
| 9c060 | 20 20 48 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 | ..However.if.you.need.a.stronger |
| 9c080 | 20 67 75 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 | .guarantee,.use.<a.href="#cmpxch |
| 9c0a0 | 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 2e 0a 20 20 20 | gStrong">@cmpxchgStrong</a>..... |
| 9c0c0 | 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< |
| 9c0e0 | 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 |
| 9c100 | 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 |
| 9c120 | 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 0a 20 20 20 20 20 20 61 6e 20 69 6e 74 65 67 65 72 2c 20 61 | pan></code>,.......an.integer,.a |
| 9c140 | 6e 20 65 6e 75 6d 2c 20 6f 72 20 61 20 70 61 63 6b 65 64 20 73 74 72 75 63 74 2e 0a 20 20 20 20 | n.enum,.or.a.packed.struct...... |
| 9c160 | 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 73 | ..</p>.......<p><code><span.clas |
| 9c180 | 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> |
| 9c1a0 | 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 |
| 9c1c0 | 4f 66 3c 2f 73 70 61 6e 3e 28 70 74 72 29 29 2e 70 6f 69 6e 74 65 72 2e 61 6c 69 67 6e 6d 65 6e | Of</span>(ptr)).pointer.alignmen |
| 9c1e0 | 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 70 | t</code>.must.be.<code>>=.<sp |
| 9c200 | 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</ |
| 9c220 | 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 63 | span>(T).</code></p>.......<p><c |
| 9c240 | 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 6f | ode>AtomicOrder</code>.can.be.fo |
| 9c260 | 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 2d | und.with.<code><span.class="tok- |
| 9c280 | 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 |
| 9c2a0 | 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 |
| 9c2c0 | 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 3e | pan>).builtin.AtomicOrder</code> |
| 9c2e0 | 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 3e | .</p>.......<p>See.also:</p><ul> |
| 9c300 | 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 6f | .<li><a.href="#atomicStore">@ato |
| 9c320 | 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 23 | micStore</a></li>.<li><a.href="# |
| 9c340 | 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 3e | atomicLoad">@atomicLoad</a></li> |
| 9c360 | 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 69 | .<li><a.href="#atomicRmw">@atomi |
| 9c380 | 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 63 6d 70 78 | cRmw</a></li>.<li><a.href="#cmpx |
| 9c3a0 | 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 3c 2f 6c | chgStrong">@cmpxchgStrong</a></l |
| 9c3c0 | 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=" |
| 9c3e0 | 63 6f 6d 70 69 6c 65 45 72 72 6f 72 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 63 6f 6d 70 | compileError"><a.href="#toc-comp |
| 9c400 | 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 61 3e 20 3c 61 20 63 | ileError">@compileError</a>.<a.c |
| 9c420 | 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 63 6f 6d 70 69 6c 65 45 72 72 6f 72 22 3e | lass="hdr".href="#compileError"> |
| 9c440 | 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 |
| 9c460 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 6f 6d 70 69 6c 65 | pan.class="tok-builtin">@compile |
| 9c480 | 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 6b 77 | Error</span>(<span.class="tok-kw |
| 9c4a0 | 22 3e 63 6f 6d 70 74 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 | ">comptime</span>.msg:.[]<span.c |
| 9c4c0 | 6c 61 73 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 |
| 9c4e0 | 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 |
| 9c500 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 6e 6f 72 65 74 75 72 6e 3c 2f 73 70 | an.class="tok-type">noreturn</sp |
| 9c520 | 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>...... |
| 9c540 | 20 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 2c 20 77 68 65 6e 20 73 65 6d 61 6e 74 69 63 61 6c 6c | .This.function,.when.semanticall |
| 9c560 | 79 20 61 6e 61 6c 79 7a 65 64 2c 20 63 61 75 73 65 73 20 61 20 63 6f 6d 70 69 6c 65 20 65 72 72 | y.analyzed,.causes.a.compile.err |
| 9c580 | 6f 72 20 77 69 74 68 20 74 68 65 0a 20 20 20 20 20 20 6d 65 73 73 61 67 65 20 3c 63 6f 64 65 3e | or.with.the.......message.<code> |
| 9c5a0 | 6d 73 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 | msg</code>........</p>.......<p> |
| 9c5c0 | 0a 20 20 20 20 20 20 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 | .......There.are.several.ways.th |
| 9c5e0 | 61 74 20 63 6f 64 65 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 | at.code.avoids.being.semanticall |
| 9c600 | 79 20 63 68 65 63 6b 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 | y.checked,.such.as.......using.< |
| 9c620 | 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 | code><span.class="tok-kw">if</sp |
| 9c640 | 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= |
| 9c660 | 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 77 69 | "tok-kw">switch</span></code>.wi |
| 9c680 | 74 68 20 63 6f 6d 70 69 6c 65 20 74 69 6d 65 20 63 6f 6e 73 74 61 6e 74 73 2c 0a 20 20 20 20 20 | th.compile.time.constants,...... |
| 9c6a0 | 20 20 20 20 20 20 20 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 | .........and.<code><span.class=" |
| 9c6c0 | 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 66 | tok-kw">comptime</span></code>.f |
| 9c6e0 | 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 0a 0a 20 20 20 | unctions........</p>............ |
| 9c700 | 20 20 20 3c 68 33 20 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 | ...<h3.id="compileLog"><a.href=" |
| 9c720 | 23 74 6f 63 2d 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 | #toc-compileLog">@compileLog</a> |
| 9c740 | 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 63 6f 6d 70 69 6c 65 4c 6f | .<a.class="hdr".href="#compileLo |
| 9c760 | 67 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 | g">..</a></h3>........<pre><code |
| 9c780 | 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 |
| 9c7a0 | 69 6c 65 4c 6f 67 3c 2f 73 70 61 6e 3e 28 2e 2e 2e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ileLog</span>(...).<span.class=" |
| 9c7c0 | 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 |
| 9c7e0 | 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 66 75 6e 63 74 69 6f 6e | e>.......<p>.......This.function |
| 9c800 | 20 70 72 69 6e 74 73 20 74 68 65 20 61 72 67 75 6d 65 6e 74 73 20 70 61 73 73 65 64 20 74 6f 20 | .prints.the.arguments.passed.to. |
| 9c820 | 69 74 20 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 | it.at.compile-time........</p>.. |
| 9c840 | 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 6f 20 70 72 65 76 65 6e 74 20 61 63 63 69 64 65 | .....<p>.......To.prevent.accide |
| 9c860 | 6e 74 61 6c 6c 79 20 6c 65 61 76 69 6e 67 20 63 6f 6d 70 69 6c 65 20 6c 6f 67 20 73 74 61 74 65 | ntally.leaving.compile.log.state |
| 9c880 | 6d 65 6e 74 73 20 69 6e 20 61 20 63 6f 64 65 62 61 73 65 2c 0a 20 20 20 20 20 20 61 20 63 6f 6d | ments.in.a.codebase,.......a.com |
| 9c8a0 | 70 69 6c 61 74 69 6f 6e 20 65 72 72 6f 72 20 69 73 20 61 64 64 65 64 20 74 6f 20 74 68 65 20 62 | pilation.error.is.added.to.the.b |
| 9c8c0 | 75 69 6c 64 2c 20 70 6f 69 6e 74 69 6e 67 20 74 6f 20 74 68 65 20 63 6f 6d 70 69 6c 65 0a 20 20 | uild,.pointing.to.the.compile... |
| 9c8e0 | 20 20 20 20 6c 6f 67 20 73 74 61 74 65 6d 65 6e 74 2e 20 54 68 69 73 20 65 72 72 6f 72 20 70 72 | ....log.statement..This.error.pr |
| 9c900 | 65 76 65 6e 74 73 20 63 6f 64 65 20 66 72 6f 6d 20 62 65 69 6e 67 20 67 65 6e 65 72 61 74 65 64 | events.code.from.being.generated |
| 9c920 | 2c 20 62 75 74 0a 20 20 20 20 20 20 64 6f 65 73 20 6e 6f 74 20 6f 74 68 65 72 77 69 73 65 20 69 | ,.but.......does.not.otherwise.i |
| 9c940 | 6e 74 65 72 66 65 72 65 20 77 69 74 68 20 61 6e 61 6c 79 73 69 73 2e 0a 20 20 20 20 20 20 3c 2f | nterfere.with.analysis........</ |
| 9c960 | 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 66 75 6e 63 74 69 6f 6e | p>.......<p>.......This.function |
| 9c980 | 20 63 61 6e 20 62 65 20 75 73 65 64 20 74 6f 20 64 6f 20 22 70 72 69 6e 74 66 20 64 65 62 75 67 | .can.be.used.to.do."printf.debug |
| 9c9a0 | 67 69 6e 67 22 20 6f 6e 0a 20 20 20 20 20 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 65 78 65 63 | ging".on.......compile-time.exec |
| 9c9c0 | 75 74 69 6e 67 20 63 6f 64 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 | uting.code........</p>.......<fi |
| 9c9e0 | 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" |
| 9ca00 | 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 69 6c 65 | ><cite.class="file">test_compile |
| 9ca20 | 4c 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 | Log_builtin.zig</cite></figcapti |
| 9ca40 | 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 |
| 9ca60 | 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 70 72 69 6e 74 20 3d 20 3c 73 70 61 6e 20 63 6c | w">const</span>.print.=.<span.cl |
| 9ca80 | 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> |
| 9caa0 | 28 3c 73 70 61 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 |
| 9cac0 | 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 64 65 62 75 67 2e 70 72 69 6e 74 3b 0a 0a 3c 73 70 | "</span>).debug.print;..<sp |
| 9cae0 | 61 6e 20 63 6c 61 73 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 |
| 9cb00 | 75 6d 31 20 3d 20 62 6c 6b 3a 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | um1.=.blk:.{.....<span.class="to |
| 9cb20 | 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 76 61 6c 31 3a 20 3c 73 70 61 6e 20 63 6c 61 | k-kw">var</span>.val1:.<span.cla |
| 9cb40 | 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 |
| 9cb60 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 39 39 3c 2f 73 70 61 6e 3e 3b 0a 20 | .class="tok-number">99</span>;.. |
| 9cb80 | 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 |
| 9cba0 | 6d 70 69 6c 65 4c 6f 67 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | mpileLog</span>(<span.class="tok |
| 9cbc0 | 2d 73 74 72 22 3e 26 71 75 6f 74 3b 63 6f 6d 70 74 69 6d 65 20 76 61 6c 31 20 3d 20 26 71 75 6f | -str">"comptime.val1.=.&quo |
| 9cbe0 | 74 3b 3c 2f 73 70 61 6e 3e 2c 20 76 61 6c 31 29 3b 0a 20 20 20 20 76 61 6c 31 20 3d 20 76 61 6c | t;</span>,.val1);.....val1.=.val |
| 9cc00 | 31 20 2b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f | 1.+.<span.class="tok-number">1</ |
| 9cc20 | 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"> |
| 9cc40 | 62 72 65 61 6b 3c 2f 73 70 61 6e 3e 20 3a 62 6c 6b 20 76 61 6c 31 3b 0a 7d 3b 0a 0a 3c 73 70 61 | break</span>.:blk.val1;.};..<spa |
| 9cc60 | 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 |
| 9cc80 | 61 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 | an.class="tok-str">"main&qu |
| 9cca0 | 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 |
| 9ccc0 | 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 6f 6d 70 69 6c 65 4c 6f 67 3c 2f 73 70 61 6e 3e 28 3c 73 | k-builtin">@compileLog</span>(<s |
| 9cce0 | 70 61 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 |
| 9cd00 | 6d 65 20 69 6e 20 6d 61 69 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 20 20 20 20 70 | me.in.main"</span>);......p |
| 9cd20 | 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">" |
| 9cd40 | 3b 52 75 6e 74 69 6d 65 20 69 6e 20 6d 61 69 6e 2c 20 6e 75 6d 31 20 3d 20 7b 7d 2e 5c 6e 26 71 | ;Runtime.in.main,.num1.=.{}.\n&q |
| 9cd60 | 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 6e 75 6d 31 7d 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c | uot;</span>,..{num1});.}</code>< |
| 9cd80 | 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 |
| 9cda0 | 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 |
| 9cdc0 | 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 |
| 9cde0 | 20 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 | .test_compileLog_builtin.zig</kb |
| 9ce00 | 64 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e | d>.<span.class="sgr-1m">/home/an |
| 9ce20 | 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 63 6f 6d 70 | dy/dev/zig/doc/langref/test_comp |
| 9ce40 | 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 3e 3c | ileLog_builtin.zig:5:5:.</span>< |
| 9ce60 | 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 |
| 9ce80 | 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 66 6f 75 6e 64 20 63 6f | an><span.class="sgr-1m">found.co |
| 9cea0 | 6d 70 69 6c 65 20 6c 6f 67 20 73 74 61 74 65 6d 65 6e 74 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 40 | mpile.log.statement.</span>....@ |
| 9cec0 | 63 6f 6d 70 69 6c 65 4c 6f 67 28 26 71 75 6f 74 3b 63 6f 6d 70 74 69 6d 65 20 76 61 6c 31 20 3d | compileLog("comptime.val1.= |
| 9cee0 | 20 26 71 75 6f 74 3b 2c 20 76 61 6c 31 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | .",.val1);.....<span.class= |
| 9cf00 | 22 73 67 72 2d 33 32 6d 22 3e 5e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e | "sgr-32m">^~~~~~~~~~~~~~~~~~~~~~ |
| 9cf20 | 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 | ~~~~~~~~~~~~~~~.</span><span.cla |
| 9cf40 | 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 | ss="sgr-1m">/home/andy/dev/zig/d |
| 9cf60 | 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 63 6f 6d 70 69 6c 65 4c 6f 67 5f 62 75 69 6c 74 | oc/langref/test_compileLog_built |
| 9cf80 | 69 6e 2e 7a 69 67 3a 31 31 3a 35 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | in.zig:11:5:.</span><span.class= |
| 9cfa0 | 22 73 67 72 2d 33 36 6d 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 | "sgr-36m">note:.</span><span.cla |
| 9cfc0 | 73 73 3d 22 73 67 72 2d 31 6d 22 3e 61 6c 73 6f 20 68 65 72 65 0a 3c 2f 73 70 61 6e 3e 20 20 20 | ss="sgr-1m">also.here.</span>... |
| 9cfe0 | 20 40 63 6f 6d 70 69 6c 65 4c 6f 67 28 26 71 75 6f 74 3b 63 6f 6d 70 74 69 6d 65 20 69 6e 20 6d | .@compileLog("comptime.in.m |
| 9d000 | 61 69 6e 26 71 75 6f 74 3b 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 | ain");.....<span.class="sgr |
| 9d020 | 2d 33 32 6d 22 3e 5e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e | -32m">^~~~~~~~~~~~~~~~~~~~~~~~~~ |
| 9d040 | 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 32 6d | ~~~~~.</span><span.class="sgr-2m |
| 9d060 | 22 3e 72 65 66 65 72 65 6e 63 65 64 20 62 79 3a 0a 20 20 20 20 74 65 73 74 2e 6d 61 69 6e 3a 20 | ">referenced.by:.....test.main:. |
| 9d080 | 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 | /home/andy/dev/zig/doc/langref/t |
| 9d0a0 | 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 33 3a 34 36 | est_compileLog_builtin.zig:13:46 |
| 9d0c0 | 0a 3c 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 | .</span>.Compile.Log.Output:.@as |
| 9d0e0 | 28 2a 63 6f 6e 73 74 20 5b 31 36 3a 30 5d 75 38 2c 20 26 71 75 6f 74 3b 63 6f 6d 70 74 69 6d 65 | (*const.[16:0]u8,."comptime |
| 9d100 | 20 76 61 6c 31 20 3d 20 26 71 75 6f 74 3b 29 2c 20 40 61 73 28 69 33 32 2c 20 39 39 29 0a 40 61 | .val1.=."),.@as(i32,.99).@a |
| 9d120 | 73 28 2a 63 6f 6e 73 74 20 5b 31 36 3a 30 5d 75 38 2c 20 26 71 75 6f 74 3b 63 6f 6d 70 74 69 6d | s(*const.[16:0]u8,."comptim |
| 9d140 | 65 20 69 6e 20 6d 61 69 6e 26 71 75 6f 74 3b 29 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f | e.in.main").</samp></pre></ |
| 9d160 | 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 63 | figure>................<h3.id="c |
| 9d180 | 6f 6e 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 | onstCast"><a.href="#toc-constCas |
| 9d1a0 | 74 22 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 | t">@constCast</a>.<a.class="hdr" |
| 9d1c0 | 20 68 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 | .href="#constCast">..</a></h3>.. |
| 9d1e0 | 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 |
| 9d200 | 6b 2d 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 | k-builtin">@constCast</span>(val |
| 9d220 | 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 |
| 9d240 | 3c 2f 73 70 61 6e 3e 29 20 44 65 73 74 54 79 70 65 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 | </span>).DestType</code></pre>.. |
| 9d260 | 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 73 70 61 | .....<p>.......Remove.<code><spa |
| 9d280 | 6e 20 63 6c 61 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 |
| 9d2a0 | 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 74 65 72 2e 0a 20 | ode>.qualifier.from.a.pointer... |
| 9d2c0 | 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 3d 22 | .....</p>...............<h3.id=" |
| 9d2e0 | 63 74 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 | ctz"><a.href="#toc-ctz">@ctz</a> |
| 9d300 | 20 3c 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 | .<a.class="hdr".href="#ctz">..</ |
| 9d320 | 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. |
| 9d340 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 74 7a 3c 2f 73 70 61 6e 3e 28 | class="tok-builtin">@ctz</span>( |
| 9d360 | 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 6e | operand:.<span.class="tok-kw">an |
| 9d380 | 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 6b | ytype</span>).<span.class="tok-k |
| 9d3a0 | 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 20 | w">anytype</span></code></pre>.. |
| 9d3c0 | 20 20 20 20 20 3c 70 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 | .....<p><code><span.class="tok-b |
| 9d3e0 | 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 3c | uiltin">@TypeOf</span>(operand)< |
| 9d400 | 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 6f | /code>.must.be.an.integer.type.o |
| 9d420 | 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 20 | r.an.integer.vector.type.</p>... |
| 9d440 | 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 20 | ....<p><code>operand</code>.may. |
| 9d460 | 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 65 | be.an.<a.href="#Integers">intege |
| 9d480 | 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 74 | r</a>.or.<a.href="#Vectors">vect |
| 9d4a0 | 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 6e | or</a>.</p>.......<p>.......Coun |
| 9d4c0 | 74 73 20 74 68 65 20 6e 75 6d 62 65 72 20 6f 66 20 6c 65 61 73 74 2d 73 69 67 6e 69 66 69 63 61 | ts.the.number.of.least-significa |
| 9d4e0 | 6e 74 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 | nt.(trailing.in.a.big-endian.sen |
| 9d500 | 73 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 | se).zeroes.in.an.integer.-."coun |
| 9d520 | 74 20 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 | t.trailing.zeroes"........</p>.. |
| 9d540 | 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 20 72 65 74 75 72 6e 20 74 79 70 65 20 69 | .....<p>.......The.return.type.i |
| 9d560 | 73 20 61 6e 20 75 6e 73 69 67 6e 65 64 20 69 6e 74 65 67 65 72 20 6f 72 20 76 65 63 74 6f 72 20 | s.an.unsigned.integer.or.vector. |
| 9d580 | 6f 66 20 75 6e 73 69 67 6e 65 64 20 69 6e 74 65 67 65 72 73 20 77 69 74 68 20 74 68 65 20 6d 69 | of.unsigned.integers.with.the.mi |
| 9d5a0 | 6e 69 6d 75 6d 20 6e 75 6d 62 65 72 0a 20 20 20 20 20 20 6f 66 20 62 69 74 73 20 74 68 61 74 20 | nimum.number.......of.bits.that. |
| 9d5c0 | 63 61 6e 20 72 65 70 72 65 73 65 6e 74 20 74 68 65 20 62 69 74 20 63 6f 75 6e 74 20 6f 66 20 74 | can.represent.the.bit.count.of.t |
| 9d5e0 | 68 65 20 69 6e 74 65 67 65 72 20 74 79 70 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 | he.integer.type........</p>..... |
| 9d600 | 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 6f | ..<p>.......If.<code>operand</co |
| 9d620 | 64 65 3e 20 69 73 20 7a 65 72 6f 2c 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | de>.is.zero,.<code><span.class=" |
| 9d640 | 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 74 7a 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 | tok-builtin">@ctz</span></code>. |
| 9d660 | 72 65 74 75 72 6e 73 0a 20 20 20 20 20 20 74 68 65 20 62 69 74 20 77 69 64 74 68 20 6f 66 20 69 | returns.......the.bit.width.of.i |
| 9d680 | 6e 74 65 67 65 72 20 74 79 70 65 20 3c 63 6f 64 65 3e 54 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 | nteger.type.<code>T</code>...... |
| 9d6a0 | 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 |
| 9d6c0 | 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 3e 3c 2f 6c | >.<li><a.href="#clz">@clz</a></l |
| 9d6e0 | 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 70 6f 70 43 6f 75 6e 74 22 3e 40 70 6f 70 43 | i>.<li><a.href="#popCount">@popC |
| 9d700 | 6f 75 6e 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 | ount</a></li>.</ul>............. |
| 9d720 | 20 20 20 3c 68 33 20 69 64 3d 22 63 55 6e 64 65 66 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 | ...<h3.id="cUndef"><a.href="#toc |
| 9d740 | 2d 63 55 6e 64 65 66 22 3e 40 63 55 6e 64 65 66 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 | -cUndef">@cUndef</a>.<a.class="h |
| 9d760 | 64 72 22 20 68 72 65 66 3d 22 23 63 55 6e 64 65 66 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a | dr".href="#cUndef">..</a></h3>.. |
| 9d780 | 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 |
| 9d7a0 | 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 73 70 61 6e 20 | k-builtin">@cUndef</span>(<span. |
| 9d7c0 | 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 6e | class="tok-kw">comptime</span>.n |
| 9d7e0 | 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 73 | ame:.[]<span.class="tok-kw">cons |
| 9d800 | 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"> |
| 9d820 | 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 |
| 9d840 | 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 | ">void</span></code></pre>...... |
| 9d860 | 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 63 61 6e 20 6f 6e 6c | .<p>.......This.function.can.onl |
| 9d880 | 79 20 6f 63 63 75 72 20 69 6e 73 69 64 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | y.occur.inside.<code><span.class |
| 9d8a0 | 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></ |
| 9d8c0 | 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 | code>........</p>.......<p>..... |
| 9d8e0 | 20 20 54 68 69 73 20 61 70 70 65 6e 64 73 20 3c 63 6f 64 65 3e 23 75 6e 64 65 66 20 24 6e 61 6d | ..This.appends.<code>#undef.$nam |
| 9d900 | 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 61 6e 20 63 6c 61 73 | e</code>.to.the.<code><span.clas |
| 9d920 | 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 49 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 3c | s="tok-builtin">@cImport</span>< |
| 9d940 | 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 66 66 65 72 2e 0a 20 | /code>.......temporary.buffer... |
| 9d960 | 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> |
| 9d980 | 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 |
| 9d9a0 | 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 |
| 9d9c0 | 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 |
| 9d9e0 | 49 6d 70 6f 72 74 22 3e 40 63 49 6d 70 6f 72 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 | Import">@cImport</a></li>.<li><a |
| 9da00 | 20 68 72 65 66 3d 22 23 63 44 65 66 69 6e 65 22 3e 40 63 44 65 66 69 6e 65 3c 2f 61 3e 3c 2f 6c | .href="#cDefine">@cDefine</a></l |
| 9da20 | 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 63 49 6e 63 6c 75 64 65 22 3e 40 63 49 6e 63 | i>.<li><a.href="#cInclude">@cInc |
| 9da40 | 6c 75 64 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 | lude</a></li>.</ul>............. |
| 9da60 | 20 20 20 3c 68 33 20 69 64 3d 22 63 56 61 41 72 67 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 | ...<h3.id="cVaArg"><a.href="#toc |
| 9da80 | 2d 63 56 61 41 72 67 22 3e 40 63 56 61 41 72 67 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 | -cVaArg">@cVaArg</a>.<a.class="h |
| 9daa0 | 64 72 22 20 68 72 65 66 3d 22 23 63 56 61 41 72 67 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a | dr".href="#cVaArg">..</a></h3>.. |
| 9dac0 | 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 |
| 9dae0 | 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 6f 70 65 72 61 6e | k-builtin">@cVaArg</span>(operan |
| 9db00 | 64 3a 20 2a 73 74 64 2e 62 75 69 6c 74 69 6e 2e 56 61 4c 69 73 74 2c 20 3c 73 70 61 6e 20 63 6c | d:.*std.builtin.VaList,.<span.cl |
| 9db20 | 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:. |
| 9db40 | 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 |
| 9db60 | 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 3e 0a 20 20 20 | n>).T</code></pre>.......<p>.... |
| 9db80 | 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 3c 63 6f 64 65 3e | ...Implements.the.C.macro.<code> |
| 9dba0 | 76 61 5f 61 72 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 | va_arg</code>........</p>....... |
| 9dbc0 | 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 |
| 9dbe0 | 3d 22 23 63 56 61 43 6f 70 79 22 3e 40 63 56 61 43 6f 70 79 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c | ="#cVaCopy">@cVaCopy</a></li>.<l |
| 9dc00 | 69 3e 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 3c | i><a.href="#cVaEnd">@cVaEnd</a>< |
| 9dc20 | 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 74 22 3e 40 63 56 | /li>.<li><a.href="#cVaStart">@cV |
| 9dc40 | 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 20 20 20 0a 20 20 | aStart</a></li>.</ul>........... |
| 9dc60 | 20 20 20 20 3c 68 33 20 69 64 3d 22 63 56 61 43 6f 70 79 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 | ....<h3.id="cVaCopy"><a.href="#t |
| 9dc80 | 6f 63 2d 63 56 61 43 6f 70 79 22 3e 40 63 56 61 43 6f 70 79 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 | oc-cVaCopy">@cVaCopy</a>.<a.clas |
| 9dca0 | 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 63 56 61 43 6f 70 79 22 3e c2 a7 3c 2f 61 3e 3c 2f | s="hdr".href="#cVaCopy">..</a></ |
| 9dcc0 | 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 |
| 9dce0 | 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 56 61 43 6f 70 79 3c 2f 73 70 61 6e 3e 28 | s="tok-builtin">@cVaCopy</span>( |
| 9dd00 | 73 72 63 3a 20 2a 73 74 64 2e 62 75 69 6c 74 69 6e 2e 56 61 4c 69 73 74 29 20 73 74 64 2e 62 75 | src:.*std.builtin.VaList).std.bu |
| 9dd20 | 69 6c 74 69 6e 2e 56 61 4c 69 73 74 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 | iltin.VaList</code></pre>....... |
| 9dd40 | 3c 70 3e 0a 20 20 20 20 20 20 49 6d 70 6c 65 6d 65 6e 74 73 20 74 68 65 20 43 20 6d 61 63 72 6f | <p>.......Implements.the.C.macro |
| 9dd60 | 20 3c 63 6f 64 65 3e 76 61 5f 63 6f 70 79 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 | .<code>va_copy</code>........</p |
| 9dd80 | 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 |
| 9dda0 | 3e 3c 61 20 68 72 65 66 3d 22 23 63 56 61 41 72 67 22 3e 40 63 56 61 41 72 67 3c 2f 61 3e 3c 2f | ><a.href="#cVaArg">@cVaArg</a></ |
| 9ddc0 | 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 56 61 45 6e | li>.<li><a.href="#cVaEnd">@cVaEn |
| 9dde0 | 64 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 63 56 61 53 74 61 72 | d</a></li>.<li><a.href="#cVaStar |
| 9de00 | 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>..... |
| 9de20 | 20 20 20 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 63 56 61 45 6e 64 22 3e 3c 61 20 68 72 65 | ..........<h3.id="cVaEnd"><a.hre |
| 9de40 | 66 3d 22 23 74 6f 63 2d 63 56 61 45 6e 64 22 3e 40 63 56 61 45 6e 64 3c 2f 61 3e 20 3c 61 20 63 | f="#toc-cVaEnd">@cVaEnd</a>.<a.c |
| 9de60 | 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 63 56 61 45 6e 64 22 3e c2 a7 3c 2f 61 3e | lass="hdr".href="#cVaEnd">..</a> |
| 9de80 | 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 |
| 9dea0 | 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 56 61 45 6e 64 3c 2f 73 70 61 6e 3e | ass="tok-builtin">@cVaEnd</span> |
| 9dec0 | 28 73 72 63 3a 20 2a 73 74 64 2e 62 75 69 6c 74 69 6e 2e 56 61 4c 69 73 74 29 20 3c 73 70 61 6e | (src:.*std.builtin.VaList).<span |
| 9dee0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 3c 2f 63 | .class="tok-type">void</span></c |
| 9df00 | 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 6c 65 | ode></pre>.......<p>.......Imple |
| 9df20 | 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 65 6e 64 3c 2f | ments.the.C.macro.<code>va_end</ |
| 9df40 | 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 |
| 9df60 | 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 63 56 61 41 72 | lso:</p><ul>.<li><a.href="#cVaAr |
| 9df80 | 67 22 3e 40 63 56 61 41 72 67 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d | g">@cVaArg</a></li>.<li><a.href= |
| 9dfa0 | 22 23 63 56 61 43 6f 70 79 22 3e 40 63 56 61 43 6f 70 79 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 | "#cVaCopy">@cVaCopy</a></li>.<li |
| 9dfc0 | 3e 3c 61 20 68 72 65 66 3d 22 23 63 56 61 53 74 61 72 74 22 3e 40 63 56 61 53 74 61 72 74 3c 2f | ><a.href="#cVaStart">@cVaStart</ |
| 9dfe0 | 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 33 20 | a></li>.</ul>...............<h3. |
| 9e000 | 69 64 3d 22 63 56 61 53 74 61 72 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 63 56 61 53 | id="cVaStart"><a.href="#toc-cVaS |
| 9e020 | 74 61 72 74 22 3e 40 63 56 61 53 74 61 72 74 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 | tart">@cVaStart</a>.<a.class="hd |
| 9e040 | 72 22 20 68 72 65 66 3d 22 23 63 56 61 53 74 61 72 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a | r".href="#cVaStart">..</a></h3>. |
| 9e060 | 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 |
| 9e080 | 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 3e 28 29 20 73 | ok-builtin">@cVaStart</span>().s |
| 9e0a0 | 74 64 2e 62 75 69 6c 74 69 6e 2e 56 61 4c 69 73 74 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 | td.builtin.VaList</code></pre>.. |
| 9e0c0 | 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 43 20 | .....<p>.......Implements.the.C. |
| 9e0e0 | 6d 61 63 72 6f 20 3c 63 6f 64 65 3e 76 61 5f 73 74 61 72 74 3c 2f 63 6f 64 65 3e 2e 20 4f 6e 6c | macro.<code>va_start</code>..Onl |
| 9e100 | 79 20 76 61 6c 69 64 20 69 6e 73 69 64 65 20 61 20 76 61 72 69 61 64 69 63 20 66 75 6e 63 74 69 | y.valid.inside.a.variadic.functi |
| 9e120 | 6f 6e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f | on........</p>.......<p>See.also |
| 9e140 | 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 3e | :</p><ul>.<li><a.href="#cVaArg"> |
| 9e160 | 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 63 | @cVaArg</a></li>.<li><a.href="#c |
| 9e180 | 56 61 43 6f 70 79 22 3e 40 63 56 61 43 6f 70 79 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 | VaCopy">@cVaCopy</a></li>.<li><a |
| 9e1a0 | 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 3c 2f 6c 69 3e | .href="#cVaEnd">@cVaEnd</a></li> |
| 9e1c0 | 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 64 69 | .</ul>................<h3.id="di |
| 9e1e0 | 76 45 78 61 63 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 64 69 76 45 78 61 63 74 22 3e | vExact"><a.href="#toc-divExact"> |
| 9e200 | 40 64 69 76 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 | @divExact</a>.<a.class="hdr".hre |
| 9e220 | 66 3d 22 23 64 69 76 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 | f="#divExact">..</a></h3>....... |
| 9e240 | 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 |
| 9e260 | 6c 74 69 6e 22 3e 40 64 69 76 45 78 61 63 74 3c 2f 73 70 61 6e 3e 28 6e 75 6d 65 72 61 74 6f 72 | ltin">@divExact</span>(numerator |
| 9e280 | 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 |
| 9e2a0 | 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 45 78 61 63 74 20 64 69 76 69 73 69 | re>.......<p>.......Exact.divisi |
| 9e2c0 | 6f 6e 2e 20 43 61 6c 6c 65 72 20 67 75 61 72 61 6e 74 65 65 73 20 3c 63 6f 64 65 3e 64 65 6e 6f | on..Caller.guarantees.<code>deno |
| 9e2e0 | 6d 69 6e 61 74 6f 72 20 21 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | minator.!=.<span.class="tok-numb |
| 9e300 | 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 61 6e 64 0a 20 20 20 20 20 20 20 20 | er">0</span></code>.and......... |
| 9e320 | 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 |
| 9e340 | 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 2c 20 64 65 | ">@divTrunc</span>(numerator,.de |
| 9e360 | 6e 6f 6d 69 6e 61 74 6f 72 29 20 2a 20 64 65 6e 6f 6d 69 6e 61 74 6f 72 20 3d 3d 20 6e 75 6d 65 | nominator).*.denominator.==.nume |
| 9e380 | 72 61 74 6f 72 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c | rator</code>........</p>.......< |
| 9e3a0 | 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 |
| 9e3c0 | 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 70 61 | ass="tok-builtin">@divExact</spa |
| 9e3e0 | 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 3c 2f 73 | n>(<span.class="tok-number">6</s |
| 9e400 | 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 |
| 9e420 | 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 |
| 9e440 | 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>....... |
| 9e460 | 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 |
| 9e480 | 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 20 2a | uiltin">@divExact</span>(a,.b).* |
| 9e4a0 | 20 62 20 3d 3d 20 61 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a | .b.==.a</code></li>.......</ul>. |
| 9e4c0 | 20 20 20 20 20 20 3c 70 3e 46 6f 72 20 61 20 66 75 6e 63 74 69 6f 6e 20 74 68 61 74 20 72 65 74 | ......<p>For.a.function.that.ret |
| 9e4e0 | 75 72 6e 73 20 61 20 70 6f 73 73 69 62 6c 65 20 65 72 72 6f 72 20 63 6f 64 65 2c 20 75 73 65 20 | urns.a.possible.error.code,.use. |
| 9e500 | 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"> |
| 9e520 | 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- |
| 9e540 | 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 6d 61 74 | str">"std"</span>).mat |
| 9e560 | 68 2e 64 69 76 45 78 61 63 74 3c 2f 63 6f 64 65 3e 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e | h.divExact</code>.</p>.......<p> |
| 9e580 | 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="# |
| 9e5a0 | 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 3c 6c 69 | divTrunc">@divTrunc</a></li>.<li |
| 9e5c0 | 3e 3c 61 20 68 72 65 66 3d 22 23 64 69 76 46 6c 6f 6f 72 22 3e 40 64 69 76 46 6c 6f 6f 72 3c 2f | ><a.href="#divFloor">@divFloor</ |
| 9e5e0 | 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 33 20 | a></li>.</ul>...............<h3. |
| 9e600 | 69 64 3d 22 64 69 76 46 6c 6f 6f 72 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 64 69 76 46 | id="divFloor"><a.href="#toc-divF |
| 9e620 | 6c 6f 6f 72 22 3e 40 64 69 76 46 6c 6f 6f 72 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 | loor">@divFloor</a>.<a.class="hd |
| 9e640 | 72 22 20 68 72 65 66 3d 22 23 64 69 76 46 6c 6f 6f 72 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a | r".href="#divFloor">..</a></h3>. |
| 9e660 | 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 |
| 9e680 | 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 28 6e 75 6d | ok-builtin">@divFloor</span>(num |
| 9e6a0 | 65 72 61 74 6f 72 3a 20 54 2c 20 64 65 6e 6f 6d 69 6e 61 74 6f 72 3a 20 54 29 20 54 3c 2f 63 6f | erator:.T,.denominator:.T).T</co |
| 9e6c0 | 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 6c 6f 6f 72 65 | de></pre>.......<p>.......Floore |
| 9e6e0 | 64 20 64 69 76 69 73 69 6f 6e 2e 20 52 6f 75 6e 64 73 20 74 6f 77 61 72 64 20 6e 65 67 61 74 69 | d.division..Rounds.toward.negati |
| 9e700 | 76 65 20 69 6e 66 69 6e 69 74 79 2e 20 46 6f 72 20 75 6e 73 69 67 6e 65 64 20 69 6e 74 65 67 65 | ve.infinity..For.unsigned.intege |
| 9e720 | 72 73 20 69 74 20 69 73 0a 20 20 20 20 20 20 74 68 65 20 73 61 6d 65 20 61 73 20 3c 63 6f 64 65 | rs.it.is.......the.same.as.<code |
| 9e740 | 3e 6e 75 6d 65 72 61 74 6f 72 20 2f 20 64 65 6e 6f 6d 69 6e 61 74 6f 72 3c 2f 63 6f 64 65 3e 2e | >numerator./.denominator</code>. |
| 9e760 | 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 6e | .Caller.guarantees.<code>denomin |
| 9e780 | 61 74 6f 72 20 21 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 | ator.!=.<span.class="tok-number" |
| 9e7a0 | 3e 30 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 61 6e 64 0a 20 20 20 20 20 20 20 20 20 20 20 | >0</span></code>.and............ |
| 9e7c0 | 20 20 20 3c 63 6f 64 65 3e 21 28 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 |
| 9e7e0 | 74 69 6e 22 3e 40 74 79 70 65 49 6e 66 6f 3c 2f 73 70 61 6e 3e 28 54 29 20 3d 3d 20 2e 69 6e 74 | tin">@typeInfo</span>(T).==..int |
| 9e800 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 64 3c 2f 73 70 61 6e 3e | .<span.class="tok-kw">and</span> |
| 9e820 | 20 54 2e 69 73 5f 73 69 67 6e 65 64 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | .T.is_signed.<span.class="tok-kw |
| 9e840 | 22 3e 61 6e 64 3c 2f 73 70 61 6e 3e 20 6e 75 6d 65 72 61 74 6f 72 20 3d 3d 20 73 74 64 2e 6d 61 | ">and</span>.numerator.==.std.ma |
| 9e860 | 74 68 2e 6d 69 6e 49 6e 74 28 54 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | th.minInt(T).<span.class="tok-kw |
| 9e880 | 22 3e 61 6e 64 3c 2f 73 70 61 6e 3e 20 64 65 6e 6f 6d 69 6e 61 74 6f 72 20 3d 3d 20 2d 3c 73 70 | ">and</span>.denominator.==.-<sp |
| 9e8a0 | 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 3c | an.class="tok-number">1</span>)< |
| 9e8c0 | 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 | /code>........</p>.......<ul>... |
| 9e8e0 | 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 |
| 9e900 | 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 28 2d 3c 73 | ok-builtin">@divFloor</span>(-<s |
| 9e920 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 2c | pan.class="tok-number">5</span>, |
| 9e940 | 20 3c 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 |
| 9e960 | 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 62 65 72 22 | n>).==.-<span.class="tok-number" |
| 9e980 | 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 20 20 20 20 | >2</span></code></li>........... |
| 9e9a0 | 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 62 75 69 6c | <li><code>(<span.class="tok-buil |
| 9e9c0 | 74 69 6e 22 3e 40 64 69 76 46 6c 6f 6f 72 3c 2f 73 70 61 6e 3e 28 61 2c 20 62 29 20 2a 20 62 29 | tin">@divFloor</span>(a,.b).*.b) |
| 9e9e0 | 20 2b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 6d 6f | .+.<span.class="tok-builtin">@mo |
| 9ea00 | 64 3c 2f 73 70 61 6e 3e 28 61 2c 20 62 29 20 3d 3d 20 61 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a | d</span>(a,.b).==.a</code></li>. |
| 9ea20 | 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 63 74 | ......</ul>.......<p>For.a.funct |
| 9ea40 | 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 72 6f | ion.that.returns.a.possible.erro |
| 9ea60 | 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 22 74 | r.code,.use.<code><span.class="t |
| 9ea80 | 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 |
| 9eaa0 | 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" |
| 9eac0 | 3c 2f 73 70 61 6e 3e 29 2e 6d 61 74 68 2e 64 69 76 46 6c 6f 6f 72 3c 2f 63 6f 64 65 3e 2e 3c 2f | </span>).math.divFloor</code>.</ |
| 9eae0 | 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 |
| 9eb00 | 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 63 3c | i><a.href="#divTrunc">@divTrunc< |
| 9eb20 | 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 45 78 61 63 74 22 | /a></li>.<li><a.href="#divExact" |
| 9eb40 | 3e 40 64 69 76 45 78 61 63 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 | >@divExact</a></li>.</ul>....... |
| 9eb60 | 20 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 64 69 76 54 72 75 6e 63 22 3e 3c 61 20 68 72 65 | ........<h3.id="divTrunc"><a.hre |
| 9eb80 | 66 3d 22 23 74 6f 63 2d 64 69 76 54 72 75 6e 63 22 3e 40 64 69 76 54 72 75 6e 63 3c 2f 61 3e 20 | f="#toc-divTrunc">@divTrunc</a>. |
| 9eba0 | 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 54 72 75 6e 63 22 3e | <a.class="hdr".href="#divTrunc"> |
| 9ebc0 | 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 |
| 9ebe0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 64 69 76 54 72 75 6e | pan.class="tok-builtin">@divTrun |
| 9ec00 | 63 3c 2f 73 70 61 6e 3e 28 6e 75 6d 65 72 61 74 6f 72 3a 20 54 2c 20 64 65 6e 6f 6d 69 6e 61 74 | c</span>(numerator:.T,.denominat |
| 9ec20 | 6f 72 3a 20 54 29 20 54 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a | or:.T).T</code></pre>.......<p>. |
| 9ec40 | 20 20 20 20 20 20 54 72 75 6e 63 61 74 65 64 20 64 69 76 69 73 69 6f 6e 2e 20 52 6f 75 6e 64 73 | ......Truncated.division..Rounds |
| 9ec60 | 20 74 6f 77 61 72 64 20 7a 65 72 6f 2e 20 46 6f 72 20 75 6e 73 69 67 6e 65 64 20 69 6e 74 65 67 | .toward.zero..For.unsigned.integ |
| 9ec80 | 65 72 73 20 69 74 20 69 73 0a 20 20 20 20 20 20 74 68 65 20 73 61 6d 65 20 61 73 20 3c 63 6f 64 | ers.it.is.......the.same.as.<cod |
| 9eca0 | 65 3e 6e 75 6d 65 72 61 74 6f 72 20 2f 20 64 65 6e 6f 6d 69 6e 61 74 6f 72 3c 2f 63 6f 64 65 3e | e>numerator./.denominator</code> |
| 9ecc0 | 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 |
| 9ece0 | 6e 61 74 6f 72 20 21 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | nator.!=.<span.class="tok-number |
| 9ed00 | 22 3e 30 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 61 6e 64 0a 20 20 20 20 20 20 20 20 20 20 | ">0</span></code>.and........... |
| 9ed20 | 20 20 20 20 3c 63 6f 64 65 3e 21 28 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 |
| 9ed40 | 6c 74 69 6e 22 3e 40 74 79 70 65 49 6e 66 6f 3c 2f 73 70 61 6e 3e 28 54 29 20 3d 3d 20 2e 69 6e | ltin">@typeInfo</span>(T).==..in |
| 9ed60 | 74 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 64 3c 2f 73 70 61 6e | t.<span.class="tok-kw">and</span |
| 9ed80 | 3e 20 54 2e 69 73 5f 73 69 67 6e 65 64 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | >.T.is_signed.<span.class="tok-k |
| 9eda0 | 77 22 3e 61 6e 64 3c 2f 73 70 61 6e 3e 20 6e 75 6d 65 72 61 74 6f 72 20 3d 3d 20 73 74 64 2e 6d | w">and</span>.numerator.==.std.m |
| 9edc0 | 61 74 68 2e 6d 69 6e 49 6e 74 28 54 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | ath.minInt(T).<span.class="tok-k |
| 9ede0 | 77 22 3e 61 6e 64 3c 2f 73 70 61 6e 3e 20 64 65 6e 6f 6d 69 6e 61 74 6f 72 20 3d 3d 20 2d 3c 73 | w">and</span>.denominator.==.-<s |
| 9ee00 | 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>) |
| 9ee20 | 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 | </code>........</p>.......<ul>.. |
| 9ee40 | 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=" |
| 9ee60 | 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 28 2d 3c | tok-builtin">@divTrunc</span>(-< |
| 9ee80 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e | span.class="tok-number">5</span> |
| 9eea0 | 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 |
| 9eec0 | 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 62 65 72 | an>).==.-<span.class="tok-number |
| 9eee0 | 22 3e 31 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 | ">1</span></code></li>.......... |
| 9ef00 | 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 62 75 69 | .<li><code>(<span.class="tok-bui |
| 9ef20 | 6c 74 69 6e 22 3e 40 64 69 76 54 72 75 6e 63 3c 2f 73 70 61 6e 3e 28 61 2c 20 62 29 20 2a 20 62 | ltin">@divTrunc</span>(a,.b).*.b |
| 9ef40 | 29 20 2b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 72 | ).+.<span.class="tok-builtin">@r |
| 9ef60 | 65 6d 3c 2f 73 70 61 6e 3e 28 61 2c 20 62 29 20 3d 3d 20 61 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e | em</span>(a,.b).==.a</code></li> |
| 9ef80 | 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 63 | .......</ul>.......<p>For.a.func |
| 9efa0 | 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 72 | tion.that.returns.a.possible.err |
| 9efc0 | 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 22 | or.code,.use.<code><span.class=" |
| 9efe0 | 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 |
| 9f000 | 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" |
| 9f020 | 3b 3c 2f 73 70 61 6e 3e 29 2e 6d 61 74 68 2e 64 69 76 54 72 75 6e 63 3c 2f 63 6f 64 65 3e 2e 3c | ;</span>).math.divTrunc</code>.< |
| 9f040 | 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>.< |
| 9f060 | 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 64 69 76 46 6c 6f 6f 72 22 3e 40 64 69 76 46 6c 6f 6f 72 | li><a.href="#divFloor">@divFloor |
| 9f080 | 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 45 78 61 63 74 | </a></li>.<li><a.href="#divExact |
| 9f0a0 | 22 3e 40 64 69 76 45 78 61 63 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 | ">@divExact</a></li>.</ul>...... |
| 9f0c0 | 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 65 6d 62 65 64 46 69 6c 65 22 3e 3c 61 20 | ..........<h3.id="embedFile"><a. |
| 9f0e0 | 68 72 65 66 3d 22 23 74 6f 63 2d 65 6d 62 65 64 46 69 6c 65 22 3e 40 65 6d 62 65 64 46 69 6c 65 | href="#toc-embedFile">@embedFile |
| 9f100 | 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 6d 62 65 64 | </a>.<a.class="hdr".href="#embed |
| 9f120 | 46 69 6c 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 | File">..</a></h3>........<pre><c |
| 9f140 | 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 |
| 9f160 | 6d 62 65 64 46 69 6c 65 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | mbedFile</span>(<span.class="tok |
| 9f180 | 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 70 61 74 68 3a 20 5b 5d 3c 73 70 | -kw">comptime</span>.path:.[]<sp |
| 9f1a0 | 61 6e 20 63 6c 61 73 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>.< |
| 9f1c0 | 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>) |
| 9f1e0 | 20 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 | .*<span.class="tok-kw">const</sp |
| 9f200 | 61 6e 3e 20 5b 4e 3a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e | an>.[N:<span.class="tok-number"> |
| 9f220 | 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"> |
| 9f240 | 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> |
| 9f260 | 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 61 20 63 | .......This.function.returns.a.c |
| 9f280 | 6f 6d 70 69 6c 65 20 74 69 6d 65 20 63 6f 6e 73 74 61 6e 74 20 70 6f 69 6e 74 65 72 20 74 6f 20 | ompile.time.constant.pointer.to. |
| 9f2a0 | 6e 75 6c 6c 2d 74 65 72 6d 69 6e 61 74 65 64 2c 0a 20 20 20 20 20 20 66 69 78 65 64 2d 73 69 7a | null-terminated,.......fixed-siz |
| 9f2c0 | 65 20 61 72 72 61 79 20 77 69 74 68 20 6c 65 6e 67 74 68 20 65 71 75 61 6c 20 74 6f 20 74 68 65 | e.array.with.length.equal.to.the |
| 9f2e0 | 20 62 79 74 65 20 63 6f 75 6e 74 20 6f 66 20 74 68 65 20 66 69 6c 65 20 67 69 76 65 6e 20 62 79 | .byte.count.of.the.file.given.by |
| 9f300 | 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 70 61 74 68 3c 2f 63 6f 64 65 3e 2e 20 54 68 65 20 63 6f | .......<code>path</code>..The.co |
| 9f320 | 6e 74 65 6e 74 73 20 6f 66 20 74 68 65 20 61 72 72 61 79 20 61 72 65 20 74 68 65 20 63 6f 6e 74 | ntents.of.the.array.are.the.cont |
| 9f340 | 65 6e 74 73 20 6f 66 20 74 68 65 20 66 69 6c 65 2e 0a 20 20 20 20 20 20 54 68 69 73 20 69 73 20 | ents.of.the.file........This.is. |
| 9f360 | 65 71 75 69 76 61 6c 65 6e 74 20 74 6f 20 61 20 3c 61 20 68 72 65 66 3d 22 23 53 74 72 69 6e 67 | equivalent.to.a.<a.href="#String |
| 9f380 | 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 |
| 9f3a0 | 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 0a 20 20 | -Literals">string.literal</a>... |
| 9f3c0 | 20 20 20 20 77 69 74 68 20 74 68 65 20 66 69 6c 65 20 63 6f 6e 74 65 6e 74 73 2e 0a 20 20 20 20 | ....with.the.file.contents...... |
| 9f3e0 | 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 70 61 74 | ..</p>.......<p>.......<code>pat |
| 9f400 | 68 3c 2f 63 6f 64 65 3e 20 69 73 20 61 62 73 6f 6c 75 74 65 20 6f 72 20 72 65 6c 61 74 69 76 65 | h</code>.is.absolute.or.relative |
| 9f420 | 20 74 6f 20 74 68 65 20 63 75 72 72 65 6e 74 20 66 69 6c 65 2c 20 6a 75 73 74 20 6c 69 6b 65 20 | .to.the.current.file,.just.like. |
| 9f440 | 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"> |
| 9f460 | 40 69 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 | @import</span></code>........</p |
| 9f480 | 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 |
| 9f4a0 | 3e 3c 61 20 68 72 65 66 3d 22 23 69 6d 70 6f 72 74 22 3e 40 69 6d 70 6f 72 74 3c 2f 61 3e 3c 2f | ><a.href="#import">@import</a></ |
| 9f4c0 | 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= |
| 9f4e0 | 22 65 6e 75 6d 46 72 6f 6d 49 6e 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 65 6e 75 6d | "enumFromInt"><a.href="#toc-enum |
| 9f500 | 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 3c 61 20 63 6c 61 | FromInt">@enumFromInt</a>.<a.cla |
| 9f520 | 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 65 6e 75 6d 46 72 6f 6d 49 6e 74 22 3e c2 a7 3c | ss="hdr".href="#enumFromInt">..< |
| 9f540 | 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 |
| 9f560 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 65 6e 75 6d 46 72 6f 6d 49 6e | .class="tok-builtin">@enumFromIn |
| 9f580 | 74 3c 2f 73 70 61 6e 3e 28 69 6e 74 65 67 65 72 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | t</span>(integer:.<span.class="t |
| 9f5a0 | 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 |
| 9f5c0 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 79 74 79 70 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 | ss="tok-kw">anytype</span></code |
| 9f5e0 | 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 73 | ></pre>.......<p>.......Converts |
| 9f600 | 20 61 6e 20 69 6e 74 65 67 65 72 20 69 6e 74 6f 20 61 6e 20 3c 61 20 68 72 65 66 3d 22 23 65 6e | .an.integer.into.an.<a.href="#en |
| 9f620 | 75 6d 22 3e 65 6e 75 6d 3c 2f 61 3e 20 76 61 6c 75 65 2e 20 54 68 65 20 72 65 74 75 72 6e 20 74 | um">enum</a>.value..The.return.t |
| 9f640 | 79 70 65 20 69 73 20 74 68 65 20 69 6e 66 65 72 72 65 64 20 72 65 73 75 6c 74 20 74 79 70 65 2e | ype.is.the.inferred.result.type. |
| 9f660 | 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 74 74 65 | .......</p>.......<p>.......Atte |
| 9f680 | 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 67 65 72 20 77 69 74 | mpting.to.convert.an.integer.wit |
| 9f6a0 | 68 20 6e 6f 20 63 6f 72 72 65 73 70 6f 6e 64 69 6e 67 20 76 61 6c 75 65 20 69 6e 20 74 68 65 20 | h.no.corresponding.value.in.the. |
| 9f6c0 | 65 6e 75 6d 20 69 6e 76 6f 6b 65 73 0a 20 20 20 20 20 20 73 61 66 65 74 79 2d 63 68 65 63 6b 65 | enum.invokes.......safety-checke |
| 9f6e0 | 64 20 3c 61 20 68 72 65 66 3d 22 23 49 6c 6c 65 67 61 6c 2d 42 65 68 61 76 69 6f 72 22 3e 49 6c | d.<a.href="#Illegal-Behavior">Il |
| 9f700 | 6c 65 67 61 6c 20 42 65 68 61 76 69 6f 72 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 4e 6f 74 65 20 74 | legal.Behavior</a>........Note.t |
| 9f720 | 68 61 74 20 61 20 3c 61 20 68 72 65 66 3d 22 23 4e 6f 6e 2d 65 78 68 61 75 73 74 69 76 65 2d 65 | hat.a.<a.href="#Non-exhaustive-e |
| 9f740 | 6e 75 6d 22 3e 6e 6f 6e 2d 65 78 68 61 75 73 74 69 76 65 20 65 6e 75 6d 3c 2f 61 3e 20 68 61 73 | num">non-exhaustive.enum</a>.has |
| 9f760 | 20 63 6f 72 72 65 73 70 6f 6e 64 69 6e 67 20 76 61 6c 75 65 73 20 66 6f 72 20 61 6c 6c 0a 20 20 | .corresponding.values.for.all... |
| 9f780 | 20 20 20 20 69 6e 74 65 67 65 72 73 20 69 6e 20 74 68 65 20 65 6e 75 6d 27 73 20 69 6e 74 65 67 | ....integers.in.the.enum's.integ |
| 9f7a0 | 65 72 20 74 61 67 20 74 79 70 65 3a 20 74 68 65 20 3c 63 6f 64 65 3e 5f 3c 2f 63 6f 64 65 3e 20 | er.tag.type:.the.<code>_</code>. |
| 9f7c0 | 76 61 6c 75 65 20 72 65 70 72 65 73 65 6e 74 73 20 61 6c 6c 0a 20 20 20 20 20 20 74 68 65 20 72 | value.represents.all.......the.r |
| 9f7e0 | 65 6d 61 69 6e 69 6e 67 20 75 6e 6e 61 6d 65 64 20 69 6e 74 65 67 65 72 73 20 69 6e 20 74 68 65 | emaining.unnamed.integers.in.the |
| 9f800 | 20 65 6e 75 6d 27 73 20 74 61 67 20 74 79 70 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 | .enum's.tag.type........</p>.... |
| 9f820 | 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 |
| 9f840 | 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 6d 3c | ref="#intFromEnum">@intFromEnum< |
| 9f860 | 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 |
| 9f880 | 33 20 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 | 3.id="errorFromInt"><a.href="#to |
| 9f8a0 | 63 2d 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 | c-errorFromInt">@errorFromInt</a |
| 9f8c0 | 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 72 72 6f 72 46 72 6f | >.<a.class="hdr".href="#errorFro |
| 9f8e0 | 6d 49 6e 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 | mInt">..</a></h3>........<pre><c |
| 9f900 | 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 |
| 9f920 | 72 72 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 | rrorFromInt</span>(value:.std.me |
| 9f940 | 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 3d 22 74 | ta.Int(.unsigned,.<span.class="t |
| 9f960 | 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 28 3c 73 | ok-builtin">@bitSizeOf</span>(<s |
| 9f980 | 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 |
| 9f9a0 | 70 61 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 | pan>))).<span.class="tok-type">a |
| 9f9c0 | 6e 79 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 | nyerror</span></code></pre>..... |
| 9f9e0 | 20 20 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 | ..<p>.......Converts.from.the.in |
| 9fa00 | 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 6f 72 | teger.representation.of.an.error |
| 9fa20 | 20 69 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 | .into.<a.href="#The-Global-Error |
| 9fa40 | 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 20 74 | -Set">The.Global.Error.Set</a>.t |
| 9fa60 | 79 70 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 | ype........</p>.......<p>....... |
| 9fa80 | 49 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 | It.is.generally.recommended.to.a |
| 9faa0 | 76 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 | void.this.......cast,.as.the.int |
| 9fac0 | 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 6f 72 20 | eger.representation.of.an.error. |
| 9fae0 | 69 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 | is.not.stable.across.source.code |
| 9fb00 | 20 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 0a 20 | .changes........</p>.......<p>.. |
| 9fb20 | 20 20 20 20 20 41 74 74 65 6d 70 74 69 6e 67 20 74 6f 20 63 6f 6e 76 65 72 74 20 61 6e 20 69 6e | .....Attempting.to.convert.an.in |
| 9fb40 | 74 65 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 | teger.that.does.not.correspond.t |
| 9fb60 | 6f 20 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 | o.any.error.results.in.......saf |
| 9fb80 | 65 74 79 2d 63 68 65 63 6b 65 64 20 3c 61 20 68 72 65 66 3d 22 23 49 6c 6c 65 67 61 6c 2d 42 65 | ety-checked.<a.href="#Illegal-Be |
| 9fba0 | 68 61 76 69 6f 72 22 3e 49 6c 6c 65 67 61 6c 20 42 65 68 61 76 69 6f 72 3c 2f 61 3e 2e 0a 20 20 | havior">Illegal.Behavior</a>.... |
| 9fbc0 | 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>< |
| 9fbe0 | 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 6f 72 22 3e | ul>.<li><a.href="#intFromError"> |
| 9fc00 | 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 0a 0a 20 20 | @intFromError</a></li>.</ul>.... |
| 9fc20 | 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 65 22 3e 3c | ............<h3.id="errorName">< |
| 9fc40 | 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 6f 72 4e 61 | a.href="#toc-errorName">@errorNa |
| 9fc60 | 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 23 65 72 72 | me</a>.<a.class="hdr".href="#err |
| 9fc80 | 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 70 72 65 3e | orName">..</a></h3>........<pre> |
| 9fca0 | 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"> |
| 9fcc0 | 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 20 63 6c 61 | @errorName</span>(err:.<span.cla |
| 9fce0 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 61 6e 79 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 29 20 5b | ss="tok-type">anyerror</span>).[ |
| 9fd00 | 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 70 61 | :<span.class="tok-number">0</spa |
| 9fd20 | 6e 3e 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 | n>]<span.class="tok-kw">const</s |
| 9fd40 | 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f | pan>.<span.class="tok-type">u8</ |
| 9fd60 | 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>.... |
| 9fd80 | 20 20 20 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 72 65 74 75 72 6e 73 20 74 68 65 20 73 74 72 | ...This.function.returns.the.str |
| 9fda0 | 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 6f 72 2e 20 | ing.representation.of.an.error.. |
| 9fdc0 | 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 20 20 20 20 | The.string.representation....... |
| 9fde0 | 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 22 3e 65 72 | of.<code><span.class="tok-kw">er |
| 9fe00 | 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 73 20 3c 63 | ror</span>.OutOfMem</code>.is.<c |
| 9fe20 | 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 75 6f 74 3b | ode><span.class="tok-str">" |
| 9fe40 | 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 2e 0a 20 20 | OutOfMem"</span></code>.... |
| 9fe60 | 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 66 20 74 68 65 72 | ....</p>.......<p>.......If.ther |
| 9fe80 | 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 6e 20 63 6c | e.are.no.calls.to.<code><span.cl |
| 9fea0 | 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 65 72 72 6f 72 4e 61 6d 65 3c 2f 73 70 | ass="tok-builtin">@errorName</sp |
| 9fec0 | 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 69 63 61 74 | an></code>.in.an.entire.applicat |
| 9fee0 | 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 20 61 20 63 | ion,.......or.all.calls.have.a.c |
| 9ff00 | 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 3c 63 6f 64 | ompile-time.known.value.for.<cod |
| 9ff20 | 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 65 72 72 6f | e>err</code>,.then.no.......erro |
| 9ff40 | 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 65 64 2e 0a | r.name.table.will.be.generated.. |
| 9ff60 | 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 3d | ......</p>...............<h3.id= |
| 9ff80 | 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 23 74 6f 63 | "errorReturnTrace"><a.href="#toc |
| 9ffa0 | 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 75 72 6e 54 | -errorReturnTrace">@errorReturnT |
| 9ffc0 | 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 3d 22 23 65 | race</a>.<a.class="hdr".href="#e |
| 9ffe0 | 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 0a 0a 20 20 | rrorReturnTrace">..</a></h3>.... |
| a0000 | 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- |
| a0020 | 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 73 70 61 6e | builtin">@errorReturnTrace</span |
| a0040 | 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 64 65 3e 3c | >().?*builtin.StackTrace</code>< |
| a0060 | 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 20 62 69 6e | /pre>.......<p>.......If.the.bin |
| a0080 | 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 72 6e 20 74 | ary.is.built.with.error.return.t |
| a00a0 | 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 20 69 6e 76 | racing,.and.this.function.is.inv |
| a00c0 | 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 74 20 63 61 | oked.in.a.......function.that.ca |
| a00e0 | 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 20 6f 72 20 | lls.a.function.with.an.error.or. |
| a0100 | 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 75 72 6e 73 | error.union.return.type,.returns |
| a0120 | 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 20 4f 74 68 | .a.......stack.trace.object..Oth |
| a0140 | 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 6c 22 3e 6e | erwise.returns.<a.href="#null">n |
| a0160 | 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 20 20 20 20 | ull</a>........</p>............. |
| a0180 | 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 3d 22 23 74 | ..<h3.id="errorCast"><a.href="#t |
| a01a0 | 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 20 3c 61 20 | oc-errorCast">@errorCast</a>.<a. |
| a01c0 | 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 22 3e c2 a7 | class="hdr".href="#errorCast">.. |
| a01e0 | 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 |
| a0200 | 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 43 61 73 74 | n.class="tok-builtin">@errorCast |
| a0220 | 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- |
| a0240 | 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= |
| a0260 | 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></ |
| a0280 | 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 43 6f 6e 76 65 72 74 73 20 61 6e | pre>.......<p>.......Converts.an |
| a02a0 | 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 6c 75 65 20 | .error.set.or.error.union.value. |
| a02c0 | 66 72 6f 6d 20 6f 6e 65 20 65 72 72 6f 72 20 73 65 74 20 74 6f 20 61 6e 6f 74 68 65 72 20 65 72 | from.one.error.set.to.another.er |
| a02e0 | 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 74 68 65 0a | ror.set..The.return.type.is.the. |
| a0300 | 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 65 6d 70 74 | ...inferred.result.type..Attempt |
| a0320 | 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 68 20 69 73 | ing.to.convert.an.error.which.is |
| a0340 | 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 72 0a 09 09 | .not.in.the.destination.error... |
| a0360 | 09 73 65 74 20 72 65 73 75 6c 74 73 20 69 6e 20 73 61 66 65 74 79 2d 63 68 65 63 6b 65 64 20 3c | .set.results.in.safety-checked.< |
| a0380 | 61 20 68 72 65 66 3d 22 23 49 6c 6c 65 67 61 6c 2d 42 65 68 61 76 69 6f 72 22 3e 49 6c 6c 65 67 | a.href="#Illegal-Behavior">Illeg |
| a03a0 | 61 6c 20 42 65 68 61 76 69 6f 72 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 | al.Behavior</a>........</p>..... |
| a03c0 | 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 65 78 70 6f 72 74 22 3e 3c 61 20 68 72 65 | ..........<h3.id="export"><a.hre |
| a03e0 | 66 3d 22 23 74 6f 63 2d 65 78 70 6f 72 74 22 3e 40 65 78 70 6f 72 74 3c 2f 61 3e 20 3c 61 20 63 | f="#toc-export">@export</a>.<a.c |
| a0400 | 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 65 78 70 6f 72 74 22 3e c2 a7 3c 2f 61 3e | lass="hdr".href="#export">..</a> |
| a0420 | 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 |
| a0440 | 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 61 6e 3e | ass="tok-builtin">@export</span> |
| a0460 | 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f | (<span.class="tok-kw">comptime</ |
| a0480 | 73 70 61 6e 3e 20 70 74 72 3a 20 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | span>.ptr:.*<span.class="tok-kw" |
| a04a0 | 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 |
| a04c0 | 79 70 65 22 3e 61 6e 79 6f 70 61 71 75 65 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 | ype">anyopaque</span>,.<span.cla |
| a04e0 | 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 69 | ss="tok-kw">comptime</span>.opti |
| a0500 | 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 20 | ons:.std.builtin.ExportOptions). |
| a0520 | 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 |
| a0540 | 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 43 72 65 61 74 65 73 | n></code></pre>.......<p>Creates |
| a0560 | 20 61 20 73 79 6d 62 6f 6c 20 69 6e 20 74 68 65 20 6f 75 74 70 75 74 20 6f 62 6a 65 63 74 20 66 | .a.symbol.in.the.output.object.f |
| a0580 | 69 6c 65 20 77 68 69 63 68 20 72 65 66 65 72 73 20 74 6f 20 74 68 65 20 74 61 72 67 65 74 20 6f | ile.which.refers.to.the.target.o |
| a05a0 | 66 20 3c 63 6f 64 65 3e 70 74 72 3c 2f 63 6f 64 65 3e 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 | f.<code>ptr</code>.</p>.......<p |
| a05c0 | 3e 3c 63 6f 64 65 3e 70 74 72 3c 2f 63 6f 64 65 3e 20 6d 75 73 74 20 70 6f 69 6e 74 20 74 6f 20 | ><code>ptr</code>.must.point.to. |
| a05e0 | 61 20 67 6c 6f 62 61 6c 20 76 61 72 69 61 62 6c 65 20 6f 72 20 61 20 63 6f 6d 70 74 69 6d 65 2d | a.global.variable.or.a.comptime- |
| a0600 | 6b 6e 6f 77 6e 20 63 6f 6e 73 74 61 6e 74 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 | known.constant.</p>.......<p>... |
| a0620 | 20 20 20 20 54 68 69 73 20 62 75 69 6c 74 69 6e 20 63 61 6e 20 62 65 20 63 61 6c 6c 65 64 20 66 | ....This.builtin.can.be.called.f |
| a0640 | 72 6f 6d 20 61 20 3c 61 20 68 72 65 66 3d 22 23 63 6f 6d 70 74 69 6d 65 22 3e 63 6f 6d 70 74 69 | rom.a.<a.href="#comptime">compti |
| a0660 | 6d 65 3c 2f 61 3e 20 62 6c 6f 63 6b 20 74 6f 20 63 6f 6e 64 69 74 69 6f 6e 61 6c 6c 79 20 65 78 | me</a>.block.to.conditionally.ex |
| a0680 | 70 6f 72 74 20 73 79 6d 62 6f 6c 73 2e 0a 20 20 20 20 20 20 57 68 65 6e 20 3c 63 6f 64 65 3e 70 | port.symbols........When.<code>p |
| a06a0 | 74 72 3c 2f 63 6f 64 65 3e 20 70 6f 69 6e 74 73 20 74 6f 20 61 20 66 75 6e 63 74 69 6f 6e 20 77 | tr</code>.points.to.a.function.w |
| a06c0 | 69 74 68 20 74 68 65 20 43 20 63 61 6c 6c 69 6e 67 20 63 6f 6e 76 65 6e 74 69 6f 6e 20 61 6e 64 | ith.the.C.calling.convention.and |
| a06e0 | 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 6f 70 74 69 6f 6e 73 2e 6c 69 6e 6b 61 67 65 3c 2f 63 6f | .......<code>options.linkage</co |
| a0700 | 64 65 3e 20 69 73 20 3c 63 6f 64 65 3e 2e 73 74 72 6f 6e 67 3c 2f 63 6f 64 65 3e 2c 20 74 68 69 | de>.is.<code>.strong</code>,.thi |
| a0720 | 73 20 69 73 20 65 71 75 69 76 61 6c 65 6e 74 20 74 6f 0a 20 20 20 20 20 20 74 68 65 20 3c 63 6f | s.is.equivalent.to.......the.<co |
| a0740 | 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 78 70 6f 72 74 3c 2f | de><span.class="tok-kw">export</ |
| a0760 | 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6b 65 79 77 6f 72 64 20 75 73 65 64 20 6f 6e 20 61 20 66 | span></code>.keyword.used.on.a.f |
| a0780 | 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 75 72 | unction:.......</p>.......<figur |
| a07a0 | 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 |
| a07c0 | 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 65 78 70 6f 72 74 5f 62 75 69 6c 74 69 6e 2e | ite.class="file">export_builtin. |
| a07e0 | 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 |
| a0800 | 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c | e><span.class="tok-kw">comptime< |
| a0820 | 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 | /span>.{.....<span.class="tok-bu |
| a0840 | 69 6c 74 69 6e 22 3e 40 65 78 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 26 61 6d 70 3b 69 6e 74 65 72 | iltin">@export</span>(&inter |
| a0860 | 6e 61 6c 4e 61 6d 65 2c 20 2e 7b 20 2e 6e 61 6d 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | nalName,..{..name.=.<span.class= |
| a0880 | 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 61 6e 3e | "tok-str">"foo"</span> |
| a08a0 | 2c 20 2e 6c 69 6e 6b 61 67 65 20 3d 20 2e 73 74 72 6f 6e 67 20 7d 29 3b 0a 7d 0a 0a 3c 73 70 61 | ,..linkage.=..strong.});.}..<spa |
| a08c0 | 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 |
| a08e0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 69 6e 74 65 72 6e 61 6c 4e 61 6d 65 3c 2f 73 70 | .class="tok-fn">internalName</sp |
| a0900 | 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 61 6c 6c 63 | an>().<span.class="tok-kw">callc |
| a0920 | 6f 6e 76 3c 2f 73 70 61 6e 3e 28 2e 63 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | onv</span>(.c).<span.class="tok- |
| a0940 | 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 65 3e 3c 2f 70 72 65 | type">void</span>.{}</code></pre |
| a0960 | 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 |
| a0980 | 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 |
| a09a0 | 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 |
| a09c0 | 6a 20 65 78 70 6f 72 74 5f 62 75 69 6c 74 69 6e 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 3c 2f 73 61 6d | j.export_builtin.zig</kbd>.</sam |
| a09e0 | 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 69 73 | p></pre></figure>........<p>This |
| a0a00 | 20 69 73 20 65 71 75 69 76 61 6c 65 6e 74 20 74 6f 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 | .is.equivalent.to:</p>.......<fi |
| a0a20 | 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" |
| a0a40 | 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 74 5f 62 75 69 6c 74 | ><cite.class="file">export_built |
| a0a60 | 69 6e 5f 65 71 75 69 76 61 6c 65 6e 74 5f 63 6f 64 65 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 | in_equivalent_code.zig</cite></f |
| a0a80 | 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 |
| a0aa0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 65 78 70 6f 72 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c | ="tok-kw">export</span>.<span.cl |
| a0ac0 | 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 |
| a0ae0 | 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 |
| a0b00 | 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 3c 2f | lass="tok-type">void</span>.{}</ |
| a0b20 | 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 |
| a0b40 | 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< |
| a0b60 | 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 |
| a0b80 | 67 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 5f 65 71 75 69 76 | g.build-obj.export_builtin_equiv |
| a0ba0 | 61 6c 65 6e 74 5f 63 6f 64 65 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 | alent_code.zig</kbd>.</samp></pr |
| a0bc0 | 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 61 74 20 | e></figure>........<p>Note.that. |
| a0be0 | 65 76 65 6e 20 77 68 65 6e 20 75 73 69 6e 67 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 | even.when.using.<code><span.clas |
| a0c00 | 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 2c | s="tok-kw">export</span></code>, |
| a0c20 | 20 74 68 65 20 3c 63 6f 64 65 3e 40 26 71 75 6f 74 3b 66 6f 6f 26 71 75 6f 74 3b 3c 2f 63 6f 64 | .the.<code>@"foo"</cod |
| a0c40 | 65 3e 20 73 79 6e 74 61 78 20 66 6f 72 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 49 64 | e>.syntax.for.......<a.href="#Id |
| a0c60 | 65 6e 74 69 66 69 65 72 73 22 3e 69 64 65 6e 74 69 66 69 65 72 73 3c 2f 61 3e 20 63 61 6e 20 62 | entifiers">identifiers</a>.can.b |
| a0c80 | 65 20 75 73 65 64 20 74 6f 20 63 68 6f 6f 73 65 20 61 6e 79 20 73 74 72 69 6e 67 20 66 6f 72 20 | e.used.to.choose.any.string.for. |
| a0ca0 | 74 68 65 20 73 79 6d 62 6f 6c 20 6e 61 6d 65 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 | the.symbol.name:</p>.......<figu |
| a0cc0 | 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">< |
| a0ce0 | 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 65 78 70 6f 72 74 5f 61 6e 79 5f 73 79 6d | cite.class="file">export_any_sym |
| a0d00 | 62 6f 6c 5f 6e 61 6d 65 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e | bol_name.zig</cite></figcaption> |
| a0d20 | 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"> |
| a0d40 | 65 78 70 6f 72 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | export</span>.<span.class="tok-k |
| a0d60 | 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 |
| a0d80 | 22 3e 40 26 71 75 6f 74 3b 41 20 66 75 6e 63 74 69 6f 6e 20 6e 61 6d 65 20 74 68 61 74 20 69 73 | ">@"A.function.name.that.is |
| a0da0 | 20 61 20 63 6f 6d 70 6c 65 74 65 20 73 65 6e 74 65 6e 63 65 2e 26 71 75 6f 74 3b 3c 2f 73 70 61 | .a.complete.sentence."</spa |
| a0dc0 | 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 |
| a0de0 | 3c 2f 73 70 61 6e 3e 20 7b 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e | </span>.{}</code></pre></figure> |
| a0e00 | 3c 66 69 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 |
| a0e20 | 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 |
| a0e40 | 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 62 75 69 6c 64 2d 6f 62 6a 20 65 78 70 6f 72 74 5f 61 | mp>$.<kbd>zig.build-obj.export_a |
| a0e60 | 6e 79 5f 73 79 6d 62 6f 6c 5f 6e 61 6d 65 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 3c 2f 73 61 6d 70 3e | ny_symbol_name.zig</kbd>.</samp> |
| a0e80 | 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>...... |
| a0ea0 | 20 57 68 65 6e 20 6c 6f 6f 6b 69 6e 67 20 61 74 20 74 68 65 20 72 65 73 75 6c 74 69 6e 67 20 6f | .When.looking.at.the.resulting.o |
| a0ec0 | 62 6a 65 63 74 2c 20 79 6f 75 20 63 61 6e 20 73 65 65 20 74 68 65 20 73 79 6d 62 6f 6c 20 69 73 | bject,.you.can.see.the.symbol.is |
| a0ee0 | 20 75 73 65 64 20 76 65 72 62 61 74 69 6d 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 | .used.verbatim:.......</p>...... |
| a0f00 | 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 30 30 30 30 30 30 30 30 30 30 30 30 30 31 66 30 20 54 20 41 | .<pre><code>00000000000001f0.T.A |
| a0f20 | 20 66 75 6e 63 74 69 6f 6e 20 6e 61 6d 65 20 74 68 61 74 20 69 73 20 61 20 63 6f 6d 70 6c 65 74 | .function.name.that.is.a.complet |
| a0f40 | 65 20 73 65 6e 74 65 6e 63 65 2e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c | e.sentence.</code></pre>.......< |
| a0f60 | 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d | p>See.also:</p><ul>.<li><a.href= |
| a0f80 | 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 45 78 70 6f 72 74 69 | "#Exporting-a-C-Library">Exporti |
| a0fa0 | 6e 67 20 61 20 43 20 4c 69 62 72 61 72 79 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 | ng.a.C.Library</a></li>.</ul>... |
| a0fc0 | 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 65 78 74 65 72 6e 22 3e 3c 61 20 | .............<h3.id="extern"><a. |
| a0fe0 | 68 72 65 66 3d 22 23 74 6f 63 2d 65 78 74 65 72 6e 22 3e 40 65 78 74 65 72 6e 3c 2f 61 3e 20 3c | href="#toc-extern">@extern</a>.< |
| a1000 | 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 65 78 74 65 72 6e 22 3e c2 a7 3c | a.class="hdr".href="#extern">..< |
| a1020 | 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 |
| a1040 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 65 78 74 65 72 6e 3c 2f 73 70 | .class="tok-builtin">@extern</sp |
| a1060 | 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 22 3e 74 79 | an>(T:.<span.class="tok-type">ty |
| a1080 | 70 65 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | pe</span>,.<span.class="tok-kw"> |
| a10a0 | 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 6f 70 74 69 6f 6e 73 3a 20 73 74 64 2e 62 75 69 | comptime</span>.options:.std.bui |
| a10c0 | 6c 74 69 6e 2e 45 78 74 65 72 6e 4f 70 74 69 6f 6e 73 29 20 54 3c 2f 63 6f 64 65 3e 3c 2f 70 72 | ltin.ExternOptions).T</code></pr |
| a10e0 | 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 43 72 65 61 74 65 73 20 61 20 72 65 66 | e>.......<p>.......Creates.a.ref |
| a1100 | 65 72 65 6e 63 65 20 74 6f 20 61 6e 20 65 78 74 65 72 6e 61 6c 20 73 79 6d 62 6f 6c 20 69 6e 20 | erence.to.an.external.symbol.in. |
| a1120 | 74 68 65 20 6f 75 74 70 75 74 20 6f 62 6a 65 63 74 20 66 69 6c 65 2e 0a 20 20 20 20 20 20 54 20 | the.output.object.file........T. |
| a1140 | 6d 75 73 74 20 62 65 20 61 20 70 6f 69 6e 74 65 72 20 74 79 70 65 2e 0a 20 20 20 20 20 20 3c 2f | must.be.a.pointer.type........</ |
| a1160 | 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 |
| a1180 | 69 3e 3c 61 20 68 72 65 66 3d 22 23 65 78 70 6f 72 74 22 3e 40 65 78 70 6f 72 74 3c 2f 61 3e 3c | i><a.href="#export">@export</a>< |
| a11a0 | 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 |
| a11c0 | 3d 22 66 69 65 6c 64 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 66 69 65 6c 64 22 3e 40 66 | ="field"><a.href="#toc-field">@f |
| a11e0 | 69 65 6c 64 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 66 | ield</a>.<a.class="hdr".href="#f |
| a1200 | 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 3c 70 72 65 3e 3c 63 | ield">..</a></h3>........<pre><c |
| a1220 | 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 66 | ode><span.class="tok-builtin">@f |
| a1240 | 69 65 6c 64 3c 2f 73 70 61 6e 3e 28 6c 68 73 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ield</span>(lhs:.<span.class="to |
| a1260 | 6b 2d 6b 77 22 3e 61 6e 79 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 | k-kw">anytype</span>,.<span.clas |
| a1280 | 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 64 | s="tok-kw">comptime</span>.field |
| a12a0 | 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 6f | _name:.[]<span.class="tok-kw">co |
| a12c0 | 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 |
| a12e0 | 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 20 28 66 69 65 6c 64 29 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 | ">u8</span>).(field)</code></pre |
| a1300 | 3e 0a 20 20 20 20 20 20 3c 70 3e 50 65 72 66 6f 72 6d 73 20 66 69 65 6c 64 20 61 63 63 65 73 73 | >.......<p>Performs.field.access |
| a1320 | 20 62 79 20 61 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 73 74 72 69 6e 67 2e 20 57 6f 72 6b 73 | .by.a.compile-time.string..Works |
| a1340 | 20 6f 6e 20 62 6f 74 68 20 66 69 65 6c 64 73 20 61 6e 64 20 64 65 63 6c 61 72 61 74 69 6f 6e 73 | .on.both.fields.and.declarations |
| a1360 | 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 |
| a1380 | 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 |
| a13a0 | 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 66 69 65 6c 64 5f 62 75 69 6c 74 69 6e 2e 7a 69 67 | ss="file">test_field_builtin.zig |
| a13c0 | 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>< |
| a13e0 | 73 70 61 6e 20 63 6c 61 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> |
| a1400 | 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" |
| a1420 | 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 |
| a1440 | 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>);.. |
| a1460 | 3c 73 70 61 6e 20 63 6c 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 |
| a1480 | 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 77 22 3e 73 | >.Point.=.<span.class="tok-kw">s |
| a14a0 | 74 72 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 | truct</span>.{.....x:.<span.clas |
| a14c0 | 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 20 20 20 20 79 3a 20 | s="tok-type">u32</span>,.....y:. |
| a14e0 | 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 |
| a1500 | 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 70 75 62 | >,......<span.class="tok-kw">pub |
| a1520 | 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 | </span>.<span.class="tok-kw">var |
| a1540 | 3c 2f 73 70 61 6e 3e 20 7a 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | </span>.z:.<span.class="tok-type |
| a1560 | 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- |
| a1580 | 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 | number">1</span>;.};..<span.clas |
| a15a0 | 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 |
| a15c0 | 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 66 69 65 6c 64 20 61 63 63 65 73 73 20 | ss="tok-str">"field.access. |
| a15e0 | 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 73 70 | by.string"</span>.{.....<sp |
| a1600 | 61 6e 20 63 6c 61 73 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 |
| a1620 | 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 20 20 20 20 | xpect.=.std.testing.expect;..... |
| a1640 | 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>. |
| a1660 | 70 20 3d 20 50 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 | p.=.Point{..x.=.<span.class="tok |
| a1680 | 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 2c 20 2e 79 20 3d 20 3c 73 70 61 6e 20 63 6c | -number">0</span>,..y.=.<span.cl |
| a16a0 | 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 20 20 | ass="tok-number">0</span>.};.... |
| a16c0 | 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 66 69 65 | ..<span.class="tok-builtin">@fie |
| a16e0 | 6c 64 3c 2f 73 70 61 6e 3e 28 70 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 | ld</span>(p,.<span.class="tok-st |
| a1700 | 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 3d 20 3c 73 70 61 6e | r">"x"</span>).=.<span |
| a1720 | 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 20 | .class="tok-number">4</span>;... |
| a1740 | 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 66 69 65 | ..<span.class="tok-builtin">@fie |
| a1760 | 6c 64 3c 2f 73 70 61 6e 3e 28 70 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 | ld</span>(p,.<span.class="tok-st |
| a1780 | 72 22 3e 26 71 75 6f 74 3b 79 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 20 3d 20 3c 73 70 61 6e | r">"y"</span>).=.<span |
| a17a0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 66 69 65 6c 64 3c 2f 73 70 61 | .class="tok-builtin">@field</spa |
| a17c0 | 6e 3e 28 70 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f | n>(p,.<span.class="tok-str">&quo |
| a17e0 | 74 3b 78 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 20 2b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | t;x"</span>).+.<span.class= |
| a1800 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 0a 20 20 20 20 3c 73 70 61 | "tok-number">1</span>;......<spa |
| a1820 | 6e 20 63 6c 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 |
| a1840 | 63 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 66 69 | ct(<span.class="tok-builtin">@fi |
| a1860 | 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 6f 6b 2d 73 | eld</span>(p,.<span.class="tok-s |
| a1880 | 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 3d 3d 20 3c 73 70 | tr">"x"</span>).==.<sp |
| a18a0 | 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>); |
| a18c0 | 0a 20 20 20 20 3c 73 70 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 |
| a18e0 | 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 |
| a1900 | 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 6c 61 | ltin">@field</span>(p,.<span.cla |
| a1920 | 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 61 6e | ss="tok-str">"y"</span |
| a1940 | 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 35 | >).==.<span.class="tok-number">5 |
| a1960 | 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | </span>);.}..<span.class="tok-kw |
| a1980 | 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 |
| a19a0 | 74 72 22 3e 26 71 75 6f 74 3b 64 65 63 6c 20 61 63 63 65 73 73 20 62 79 20 73 74 72 69 6e 67 26 | tr">"decl.access.by.string& |
| a19c0 | 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=" |
| a19e0 | 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 |
| a1a00 | 64 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | d.testing.expect;......<span.cla |
| a1a20 | 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 |
| a1a40 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 66 69 65 6c 64 3c 2f | pan.class="tok-builtin">@field</ |
| a1a60 | 73 70 61 6e 3e 28 50 6f 69 6e 74 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 | span>(Point,.<span.class="tok-st |
| a1a80 | 72 22 3e 26 71 75 6f 74 3b 7a 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 3c 73 70 61 | r">"z"</span>).==.<spa |
| a1aa0 | 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>);. |
| a1ac0 | 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">@ |
| a1ae0 | 66 69 65 6c 64 3c 2f 73 70 61 6e 3e 28 50 6f 69 6e 74 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | field</span>(Point,.<span.class= |
| a1b00 | 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 7a 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 20 | "tok-str">"z"</span>). |
| a1b20 | 3d 20 3c 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 |
| a1b40 | 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 |
| a1b60 | 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 |
| a1b80 | 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 3c | -builtin">@field</span>(Point,.< |
| a1ba0 | 73 70 61 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 6f | span.class="tok-str">"z&quo |
| a1bc0 | 74 3b 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | t;</span>).==.<span.class="tok-n |
| a1be0 | 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e | umber">2</span>);.}</code></pre> |
| a1c00 | 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 |
| a1c20 | 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 |
| a1c40 | 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 |
| a1c60 | 5f 66 69 65 6c 64 5f 62 75 69 6c 74 69 6e 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 32 20 74 65 73 | _field_builtin.zig</kbd>.1/2.tes |
| a1c80 | 74 5f 66 69 65 6c 64 5f 62 75 69 6c 74 69 6e 2e 74 65 73 74 2e 66 69 65 6c 64 20 61 63 63 65 73 | t_field_builtin.test.field.acces |
| a1ca0 | 73 20 62 79 20 73 74 72 69 6e 67 2e 2e 2e 4f 4b 0a 32 2f 32 20 74 65 73 74 5f 66 69 65 6c 64 5f | s.by.string...OK.2/2.test_field_ |
| a1cc0 | 62 75 69 6c 74 69 6e 2e 74 65 73 74 2e 64 65 63 6c 20 61 63 63 65 73 73 20 62 79 20 73 74 72 69 | builtin.test.decl.access.by.stri |
| a1ce0 | 6e 67 2e 2e 2e 4f 4b 0a 41 6c 6c 20 32 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 73 61 | ng...OK.All.2.tests.passed..</sa |
| a1d00 | 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 | mp></pre></figure>.............. |
| a1d20 | 20 20 20 3c 68 33 20 69 64 3d 22 66 69 65 6c 64 50 61 72 65 6e 74 50 74 72 22 3e 3c 61 20 68 72 | ...<h3.id="fieldParentPtr"><a.hr |
| a1d40 | 65 66 3d 22 23 74 6f 63 2d 66 69 65 6c 64 50 61 72 65 6e 74 50 74 72 22 3e 40 66 69 65 6c 64 50 | ef="#toc-fieldParentPtr">@fieldP |
| a1d60 | 61 72 65 6e 74 50 74 72 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 | arentPtr</a>.<a.class="hdr".href |
| a1d80 | 3d 22 23 66 69 65 6c 64 50 61 72 65 6e 74 50 74 72 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a | ="#fieldParentPtr">..</a></h3>.. |
| a1da0 | 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 |
| a1dc0 | 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 73 70 61 6e | k-builtin">@fieldParentPtr</span |
| a1de0 | 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< |
| a1e00 | 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 |
| a1e20 | 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 |
| a1e40 | 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 66 69 65 6c 64 5f 70 | ss="tok-type">u8</span>,.field_p |
| a1e60 | 74 72 3a 20 2a 54 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 | tr:.*T).<span.class="tok-kw">any |
| a1e80 | 74 79 70 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c | type</span></code></pre>.......< |
| a1ea0 | 70 3e 0a 20 20 20 20 20 20 47 69 76 65 6e 20 61 20 70 6f 69 6e 74 65 72 20 74 6f 20 61 20 73 74 | p>.......Given.a.pointer.to.a.st |
| a1ec0 | 72 75 63 74 20 66 69 65 6c 64 2c 20 72 65 74 75 72 6e 73 20 61 20 70 6f 69 6e 74 65 72 20 74 6f | ruct.field,.returns.a.pointer.to |
| a1ee0 | 20 74 68 65 20 73 74 72 75 63 74 20 63 6f 6e 74 61 69 6e 69 6e 67 20 74 68 61 74 20 66 69 65 6c | .the.struct.containing.that.fiel |
| a1f00 | 64 2e 0a 20 20 20 20 20 20 54 68 65 20 72 65 74 75 72 6e 20 74 79 70 65 20 28 61 6e 64 20 73 74 | d........The.return.type.(and.st |
| a1f20 | 72 75 63 74 20 69 6e 20 71 75 65 73 74 69 6f 6e 29 20 69 73 20 74 68 65 20 69 6e 66 65 72 72 65 | ruct.in.question).is.the.inferre |
| a1f40 | 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>....... |
| a1f60 | 3c 70 3e 0a 20 20 20 20 20 20 49 66 20 3c 63 6f 64 65 3e 66 69 65 6c 64 5f 70 74 72 3c 2f 63 6f | <p>.......If.<code>field_ptr</co |
| a1f80 | 64 65 3e 20 64 6f 65 73 20 6e 6f 74 20 70 6f 69 6e 74 20 74 6f 20 74 68 65 20 3c 63 6f 64 65 3e | de>.does.not.point.to.the.<code> |
| a1fa0 | 66 69 65 6c 64 5f 6e 61 6d 65 3c 2f 63 6f 64 65 3e 20 66 69 65 6c 64 20 6f 66 20 61 6e 20 69 6e | field_name</code>.field.of.an.in |
| a1fc0 | 73 74 61 6e 63 65 20 6f 66 0a 20 20 20 20 20 20 74 68 65 20 72 65 73 75 6c 74 20 74 79 70 65 2c | stance.of.......the.result.type, |
| a1fe0 | 20 61 6e 64 20 74 68 65 20 72 65 73 75 6c 74 20 74 79 70 65 20 68 61 73 20 69 6c 6c 2d 64 65 66 | .and.the.result.type.has.ill-def |
| a2000 | 69 6e 65 64 20 6c 61 79 6f 75 74 2c 20 69 6e 76 6f 6b 65 73 20 75 6e 63 68 65 63 6b 65 64 20 3c | ined.layout,.invokes.unchecked.< |
| a2020 | 61 20 68 72 65 66 3d 22 23 49 6c 6c 65 67 61 6c 2d 42 65 68 61 76 69 6f 72 22 3e 49 6c 6c 65 67 | a.href="#Illegal-Behavior">Illeg |
| a2040 | 61 6c 20 42 65 68 61 76 69 6f 72 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 | al.Behavior</a>........</p>..... |
| a2060 | 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 46 69 65 6c 64 54 79 70 65 22 3e 3c 61 20 | ..........<h3.id="FieldType"><a. |
| a2080 | 68 72 65 66 3d 22 23 74 6f 63 2d 46 69 65 6c 64 54 79 70 65 22 3e 40 46 69 65 6c 64 54 79 70 65 | href="#toc-FieldType">@FieldType |
| a20a0 | 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 69 65 6c 64 | </a>.<a.class="hdr".href="#Field |
| a20c0 | 54 79 70 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 | Type">..</a></h3>........<pre><c |
| a20e0 | 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 46 | ode><span.class="tok-builtin">@F |
| a2100 | 69 65 6c 64 54 79 70 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 | ieldType</span>(<span.class="tok |
| a2120 | 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 54 79 70 65 3a 20 3c 73 70 61 6e | -kw">comptime</span>.Type:.<span |
| a2140 | 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 3c | .class="tok-type">type</span>,.< |
| a2160 | 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 |
| a2180 | 61 6e 3e 20 66 69 65 6c 64 5f 6e 61 6d 65 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | an>.field_name:.[]<span.class="t |
| a21a0 | 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= |
| a21c0 | 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 |
| a21e0 | 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 3c | s="tok-type">type</span></code>< |
| a2200 | 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 47 69 76 65 6e 20 61 20 74 79 | /pre>.......<p>.......Given.a.ty |
| a2220 | 70 65 20 61 6e 64 20 74 68 65 20 6e 61 6d 65 20 6f 66 20 6f 6e 65 20 6f 66 20 69 74 73 20 66 69 | pe.and.the.name.of.one.of.its.fi |
| a2240 | 65 6c 64 73 2c 20 72 65 74 75 72 6e 73 20 74 68 65 20 74 79 70 65 20 6f 66 20 74 68 61 74 20 66 | elds,.returns.the.type.of.that.f |
| a2260 | 69 65 6c 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 | ield........</p>...............< |
| a2280 | 68 33 20 69 64 3d 22 66 6c 6f 61 74 43 61 73 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d | h3.id="floatCast"><a.href="#toc- |
| a22a0 | 66 6c 6f 61 74 43 61 73 74 22 3e 40 66 6c 6f 61 74 43 61 73 74 3c 2f 61 3e 20 3c 61 20 63 6c 61 | floatCast">@floatCast</a>.<a.cla |
| a22c0 | 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 66 6c 6f 61 74 43 61 73 74 22 3e c2 a7 3c 2f 61 | ss="hdr".href="#floatCast">..</a |
| a22e0 | 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 |
| a2300 | 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 66 6c 6f 61 74 43 61 73 74 3c 2f 73 | lass="tok-builtin">@floatCast</s |
| a2320 | 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" |
| a2340 | 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 |
| a2360 | 6b 2d 6b 77 22 3e 61 6e 79 74 79 70 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 | k-kw">anytype</span></code></pre |
| a2380 | 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 20 66 72 6f 6d 20 6f | >.......<p>.......Convert.from.o |
| a23a0 | 6e 65 20 66 6c 6f 61 74 20 74 79 70 65 20 74 6f 20 61 6e 6f 74 68 65 72 2e 20 54 68 69 73 20 63 | ne.float.type.to.another..This.c |
| a23c0 | 61 73 74 20 69 73 20 73 61 66 65 2c 20 62 75 74 20 6d 61 79 20 63 61 75 73 65 20 74 68 65 0a 20 | ast.is.safe,.but.may.cause.the.. |
| a23e0 | 20 20 20 20 20 6e 75 6d 65 72 69 63 20 76 61 6c 75 65 20 74 6f 20 6c 6f 73 65 20 70 72 65 63 69 | .....numeric.value.to.lose.preci |
| a2400 | 73 69 6f 6e 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 | sion..The.return.type.is.the.inf |
| a2420 | 65 72 72 65 64 20 72 65 73 75 6c 74 20 74 79 70 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 | erred.result.type........</p>... |
| a2440 | 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 46 72 6f 6d 49 6e 74 | ............<h3.id="floatFromInt |
| a2460 | 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 66 6c 6f 61 74 46 72 6f 6d 49 6e 74 22 3e 40 66 | "><a.href="#toc-floatFromInt">@f |
| a2480 | 6c 6f 61 74 46 72 6f 6d 49 6e 74 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 | loatFromInt</a>.<a.class="hdr".h |
| a24a0 | 72 65 66 3d 22 23 66 6c 6f 61 74 46 72 6f 6d 49 6e 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a | ref="#floatFromInt">..</a></h3>. |
| a24c0 | 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 |
| a24e0 | 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 66 6c 6f 61 74 46 72 6f 6d 49 6e 74 3c 2f 73 70 61 6e 3e | ok-builtin">@floatFromInt</span> |
| a2500 | 28 69 6e 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 79 74 79 | (int:.<span.class="tok-kw">anyty |
| a2520 | 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"> |
| a2540 | 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>..... |
| a2560 | 20 20 3c 70 3e 0a 20 20 20 20 20 20 43 6f 6e 76 65 72 74 73 20 61 6e 20 69 6e 74 65 67 65 72 20 | ..<p>.......Converts.an.integer. |
| a2580 | 74 6f 20 74 68 65 20 63 6c 6f 73 65 73 74 20 66 6c 6f 61 74 69 6e 67 20 70 6f 69 6e 74 20 72 65 | to.the.closest.floating.point.re |
| a25a0 | 70 72 65 73 65 6e 74 61 74 69 6f 6e 2e 20 54 68 65 20 72 65 74 75 72 6e 20 74 79 70 65 20 69 73 | presentation..The.return.type.is |
| a25c0 | 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 |
| a25e0 | 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 |
| a2600 | 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 46 6c 6f 61 | ref="#intFromFloat">@intFromFloa |
| a2620 | 74 3c 2f 61 3e 2e 20 54 68 69 73 20 6f 70 65 72 61 74 69 6f 6e 20 69 73 20 6c 65 67 61 6c 0a 20 | t</a>..This.operation.is.legal.. |
| a2640 | 20 20 20 20 20 66 6f 72 20 61 6c 6c 20 76 61 6c 75 65 73 20 6f 66 20 61 6c 6c 20 69 6e 74 65 67 | .....for.all.values.of.all.integ |
| a2660 | 65 72 20 74 79 70 65 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 | er.types........</p>............ |
| a2680 | 20 20 20 3c 68 33 20 69 64 3d 22 66 72 61 6d 65 41 64 64 72 65 73 73 22 3e 3c 61 20 68 72 65 66 | ...<h3.id="frameAddress"><a.href |
| a26a0 | 3d 22 23 74 6f 63 2d 66 72 61 6d 65 41 64 64 72 65 73 73 22 3e 40 66 72 61 6d 65 41 64 64 72 65 | ="#toc-frameAddress">@frameAddre |
| a26c0 | 73 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 66 72 61 | ss</a>.<a.class="hdr".href="#fra |
| a26e0 | 6d 65 41 64 64 72 65 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 | meAddress">..</a></h3>........<p |
| a2700 | 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 |
| a2720 | 6e 22 3e 40 66 72 61 6d 65 41 64 64 72 65 73 73 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 | n">@frameAddress</span>().<span. |
| a2740 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 3c 2f 63 | class="tok-type">usize</span></c |
| a2760 | 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 | ode></pre>.......<p>.......This. |
| a2780 | 66 75 6e 63 74 69 6f 6e 20 72 65 74 75 72 6e 73 20 74 68 65 20 62 61 73 65 20 70 6f 69 6e 74 65 | function.returns.the.base.pointe |
| a27a0 | 72 20 6f 66 20 74 68 65 20 63 75 72 72 65 6e 74 20 73 74 61 63 6b 20 66 72 61 6d 65 2e 0a 20 20 | r.of.the.current.stack.frame.... |
| a27c0 | 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 69 6d 70 | ....</p>.......<p>.......The.imp |
| a27e0 | 6c 69 63 61 74 69 6f 6e 73 20 6f 66 20 74 68 69 73 20 61 72 65 20 74 61 72 67 65 74 2d 73 70 65 | lications.of.this.are.target-spe |
| a2800 | 63 69 66 69 63 20 61 6e 64 20 6e 6f 74 20 63 6f 6e 73 69 73 74 65 6e 74 20 61 63 72 6f 73 73 20 | cific.and.not.consistent.across. |
| a2820 | 61 6c 6c 0a 20 20 20 20 20 20 70 6c 61 74 66 6f 72 6d 73 2e 20 54 68 65 20 66 72 61 6d 65 20 61 | all.......platforms..The.frame.a |
| a2840 | 64 64 72 65 73 73 20 6d 61 79 20 6e 6f 74 20 62 65 20 61 76 61 69 6c 61 62 6c 65 20 69 6e 20 72 | ddress.may.not.be.available.in.r |
| a2860 | 65 6c 65 61 73 65 20 6d 6f 64 65 20 64 75 65 20 74 6f 0a 20 20 20 20 20 20 61 67 67 72 65 73 73 | elease.mode.due.to.......aggress |
| a2880 | 69 76 65 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 | ive.optimizations........</p>... |
| a28a0 | 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 69 73 20 6f | ....<p>.......This.function.is.o |
| a28c0 | 6e 6c 79 20 76 61 6c 69 64 20 77 69 74 68 69 6e 20 66 75 6e 63 74 69 6f 6e 20 73 63 6f 70 65 2e | nly.valid.within.function.scope. |
| a28e0 | 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 |
| a2900 | 3d 22 68 61 73 44 65 63 6c 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 68 61 73 44 65 63 6c | ="hasDecl"><a.href="#toc-hasDecl |
| a2920 | 22 3e 40 68 61 73 44 65 63 6c 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 | ">@hasDecl</a>.<a.class="hdr".hr |
| a2940 | 65 66 3d 22 23 68 61 73 44 65 63 6c 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 | ef="#hasDecl">..</a></h3>....... |
| a2960 | 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 |
| a2980 | 6c 74 69 6e 22 3e 40 68 61 73 44 65 63 6c 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 | ltin">@hasDecl</span>(<span.clas |
| a29a0 | 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 |
| a29c0 | 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 |
| a29e0 | 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 |
| a2a00 | 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 |
| a2a20 | 73 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 |
| a2a40 | 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 |
| a2a60 | 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 |
| a2a80 | 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 52 65 74 75 72 | ode></pre>.......<p>.......Retur |
| a2aa0 | 6e 73 20 77 68 65 74 68 65 72 20 6f 72 20 6e 6f 74 20 61 20 3c 61 20 68 72 65 66 3d 22 23 43 6f | ns.whether.or.not.a.<a.href="#Co |
| a2ac0 | 6e 74 61 69 6e 65 72 73 22 3e 63 6f 6e 74 61 69 6e 65 72 3c 2f 61 3e 20 68 61 73 20 61 20 64 65 | ntainers">container</a>.has.a.de |
| a2ae0 | 63 6c 61 72 61 74 69 6f 6e 0a 20 20 20 20 20 20 6d 61 74 63 68 69 6e 67 20 3c 63 6f 64 65 3e 6e | claration.......matching.<code>n |
| a2b00 | 61 6d 65 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 | ame</code>........</p>.......<fi |
| a2b20 | 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" |
| a2b40 | 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 68 61 73 44 65 63 6c | ><cite.class="file">test_hasDecl |
| a2b60 | 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> |
| a2b80 | 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"> |
| a2ba0 | 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=" |
| a2bc0 | 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 |
| a2be0 | 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" |
| a2c00 | 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"> |
| a2c20 | 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 |
| a2c40 | 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"> |
| a2c60 | 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=" |
| a2c80 | 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 6e 6f 70 65 | tok-kw">struct</span>.{.....nope |
| a2ca0 | 3a 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 |
| a2cc0 | 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 3e 70 | an>,......<span.class="tok-kw">p |
| a2ce0 | 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 76 | ub</span>.<span.class="tok-kw">v |
| a2d00 | 61 72 3c 2f 73 70 61 6e 3e 20 62 6c 61 68 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ar</span>.blah.=.<span.class="to |
| a2d20 | 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 78 78 78 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 3b 0a 20 | k-str">"xxx"</span>;.. |
| a2d40 | 20 20 20 3c 73 70 61 6e 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 |
| a2d60 | 70 61 6e 3e 20 68 69 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | pan>.hi.=.<span.class="tok-numbe |
| a2d80 | 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | r">1</span>;.};..<span.class="to |
| a2da0 | 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 |
| a2dc0 | 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 40 68 61 73 44 65 63 6c 26 71 75 6f 74 3b 3c 2f 73 70 | ok-str">"@hasDecl"</sp |
| a2de0 | 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 | an>.{.....<span.class="tok-kw">t |
| a2e00 | 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 |
| a2e20 | 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 6f 6f 2c 20 | k-builtin">@hasDecl</span>(Foo,. |
| a2e40 | 3c 73 70 61 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 6c 61 68 | <span.class="tok-str">"blah |
| a2e60 | 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 61 73 | "</span>));......<span.clas |
| a2e80 | 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 45 76 65 6e 20 74 68 6f 75 67 68 20 60 | s="tok-comment">//.Even.though.` |
| a2ea0 | 68 69 60 20 69 73 20 70 72 69 76 61 74 65 2c 20 40 68 61 73 44 65 63 6c 20 72 65 74 75 72 6e 73 | hi`.is.private,.@hasDecl.returns |
| a2ec0 | 20 74 72 75 65 20 62 65 63 61 75 73 65 20 74 68 69 73 20 74 65 73 74 20 69 73 3c 2f 73 70 61 6e | .true.because.this.test.is</span |
| a2ee0 | 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"> |
| a2f00 | 2f 2f 20 69 6e 20 74 68 65 20 73 61 6d 65 20 66 69 6c 65 20 73 63 6f 70 65 20 61 73 20 46 6f 6f | //.in.the.same.file.scope.as.Foo |
| a2f20 | 2e 20 49 74 20 77 6f 75 6c 64 20 72 65 74 75 72 6e 20 66 61 6c 73 65 20 69 66 20 46 6f 6f 20 77 | ..It.would.return.false.if.Foo.w |
| a2f40 | 61 73 20 64 65 63 6c 61 72 65 64 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | as.declared</span>.....<span.cla |
| a2f60 | 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 69 6e 20 61 20 64 69 66 66 65 72 65 | ss="tok-comment">//.in.a.differe |
| a2f80 | 6e 74 20 66 69 6c 65 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | nt.file.</span>.....<span.class= |
| a2fa0 | 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 3c 73 70 61 6e | "tok-kw">try</span>.expect(<span |
| a2fc0 | 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 2f 73 | .class="tok-builtin">@hasDecl</s |
| a2fe0 | 70 61 6e 3e 28 46 6f 6f 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e | pan>(Foo,.<span.class="tok-str"> |
| a3000 | 26 71 75 6f 74 3b 68 69 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 29 3b 0a 0a 20 20 20 20 3c 73 | "hi"</span>));......<s |
| a3020 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 40 68 61 73 44 | pan.class="tok-comment">//.@hasD |
| a3040 | 65 63 6c 20 69 73 20 66 6f 72 20 64 65 63 6c 61 72 61 74 69 6f 6e 73 3b 20 6e 6f 74 20 66 69 65 | ecl.is.for.declarations;.not.fie |
| a3060 | 6c 64 73 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | lds.</span>.....<span.class="tok |
| a3080 | 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 21 3c 73 70 61 6e 20 63 6c | -kw">try</span>.expect(!<span.cl |
| a30a0 | 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 68 61 73 44 65 63 6c 3c 2f 73 70 61 6e | ass="tok-builtin">@hasDecl</span |
| a30c0 | 3e 28 46 6f 6f 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 | >(Foo,.<span.class="tok-str">&qu |
| a30e0 | 6f 74 3b 6e 6f 70 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 29 3b 0a 20 20 20 20 3c 73 70 61 | ot;nope"</span>));.....<spa |
| a3100 | 6e 20 63 6c 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 |
| a3120 | 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 6e 22 3e 40 68 | ct(!<span.class="tok-builtin">@h |
| a3140 | 61 73 44 65 63 6c 3c 2f 73 70 61 6e 3e 28 46 6f 6f 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | asDecl</span>(Foo,.<span.class=" |
| a3160 | 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 6e 6f 70 65 31 32 33 34 26 71 75 6f 74 3b 3c 2f 73 | tok-str">"nope1234"</s |
| a3180 | 70 61 6e 3e 29 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c | pan>));.}</code></pre></figure>< |
| a31a0 | 66 69 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- |
| a31c0 | 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 |
| a31e0 | 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 68 61 73 44 65 63 6c 5f 62 | p>$.<kbd>zig.test.test_hasDecl_b |
| a3200 | 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 68 61 73 44 65 63 | uiltin.zig</kbd>.1/1.test_hasDec |
| a3220 | 6c 5f 62 75 69 6c 74 69 6e 2e 74 65 73 74 2e 40 68 61 73 44 65 63 6c 2e 2e 2e 4f 4b 0a 41 6c 6c | l_builtin.test.@hasDecl...OK.All |
| a3240 | 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></ |
| a3260 | 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>< |
| a3280 | 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 68 61 73 46 69 65 6c 64 22 3e 40 68 61 73 | ul>.<li><a.href="#hasField">@has |
| a32a0 | 46 69 65 6c 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 | Field</a></li>.</ul>............ |
| a32c0 | 20 20 20 20 3c 68 33 20 69 64 3d 22 68 61 73 46 69 65 6c 64 22 3e 3c 61 20 68 72 65 66 3d 22 23 | ....<h3.id="hasField"><a.href="# |
| a32e0 | 74 6f 63 2d 68 61 73 46 69 65 6c 64 22 3e 40 68 61 73 46 69 65 6c 64 3c 2f 61 3e 20 3c 61 20 63 | toc-hasField">@hasField</a>.<a.c |
| a3300 | 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 68 61 73 46 69 65 6c 64 22 3e c2 a7 3c 2f | lass="hdr".href="#hasField">..</ |
| a3320 | 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. |
| a3340 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 68 61 73 46 69 65 6c 64 3c 2f 73 | class="tok-builtin">@hasField</s |
| a3360 | 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 |
| a3380 | 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 73 73 | me</span>.Container:.<span.class |
| a33a0 | 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 20 63 | ="tok-type">type</span>,.<span.c |
| a33c0 | 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 6e 61 | lass="tok-kw">comptime</span>.na |
| a33e0 | 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 |
| a3400 | 3c 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 |
| a3420 | 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" |
| a3440 | 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 20 20 | >bool</span></code></pre>....... |
| a3460 | 3c 70 3e 52 65 74 75 72 6e 73 20 77 68 65 74 68 65 72 20 74 68 65 20 66 69 65 6c 64 20 6e 61 6d | <p>Returns.whether.the.field.nam |
| a3480 | 65 20 6f 66 20 61 20 73 74 72 75 63 74 2c 20 75 6e 69 6f 6e 2c 20 6f 72 20 65 6e 75 6d 20 65 78 | e.of.a.struct,.union,.or.enum.ex |
| a34a0 | 69 73 74 73 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 20 72 65 | ists.</p>.......<p>.......The.re |
| a34c0 | 73 75 6c 74 20 69 73 20 61 20 63 6f 6d 70 69 6c 65 20 74 69 6d 65 20 63 6f 6e 73 74 61 6e 74 2e | sult.is.a.compile.time.constant. |
| a34e0 | 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 64 | .......</p>.......<p>.......It.d |
| a3500 | 6f 65 73 20 6e 6f 74 20 69 6e 63 6c 75 64 65 20 66 75 6e 63 74 69 6f 6e 73 2c 20 76 61 72 69 61 | oes.not.include.functions,.varia |
| a3520 | 62 6c 65 73 2c 20 6f 72 20 63 6f 6e 73 74 61 6e 74 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 | bles,.or.constants........</p>.. |
| a3540 | 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 |
| a3560 | 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 3c 2f 6c | .href="#hasDecl">@hasDecl</a></l |
| a3580 | 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=" |
| a35a0 | 69 6d 70 6f 72 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 69 6d 70 6f 72 74 22 3e 40 69 | import"><a.href="#toc-import">@i |
| a35c0 | 6d 70 6f 72 74 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 | mport</a>.<a.class="hdr".href="# |
| a35e0 | 69 6d 70 6f 72 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e | import">..</a></h3>........<pre> |
| a3600 | 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"> |
| a3620 | 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- |
| a3640 | 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 74 61 72 67 65 74 3a 20 5b 5d 3c 73 | kw">comptime</span>.target:.[]<s |
| a3660 | 70 61 6e 20 63 6c 61 73 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>. |
| a3680 | 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> |
| a36a0 | 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</ |
| a36c0 | 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 49 6d 70 6f | span></code></pre>.......<p>Impo |
| a36e0 | 72 74 73 20 74 68 65 20 66 69 6c 65 20 61 74 20 3c 63 6f 64 65 3e 74 61 72 67 65 74 3c 2f 63 6f | rts.the.file.at.<code>target</co |
| a3700 | 64 65 3e 2c 20 61 64 64 69 6e 67 20 69 74 20 74 6f 20 74 68 65 20 63 6f 6d 70 69 6c 61 74 69 6f | de>,.adding.it.to.the.compilatio |
| a3720 | 6e 20 69 66 20 69 74 20 69 73 20 6e 6f 74 20 61 6c 72 65 61 64 79 0a 20 20 20 20 20 20 61 64 64 | n.if.it.is.not.already.......add |
| a3740 | 65 64 2e 20 3c 63 6f 64 65 3e 74 61 72 67 65 74 3c 2f 63 6f 64 65 3e 20 69 73 20 65 69 74 68 65 | ed..<code>target</code>.is.eithe |
| a3760 | 72 20 61 20 72 65 6c 61 74 69 76 65 20 70 61 74 68 20 74 6f 20 61 6e 6f 74 68 65 72 20 66 69 6c | r.a.relative.path.to.another.fil |
| a3780 | 65 20 66 72 6f 6d 20 74 68 65 20 66 69 6c 65 20 63 6f 6e 74 61 69 6e 69 6e 67 0a 20 20 20 20 20 | e.from.the.file.containing...... |
| a37a0 | 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 62 75 69 6c | .the.<code><span.class="tok-buil |
| a37c0 | 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 63 61 6c 6c 2c | tin">@import</span></code>.call, |
| a37e0 | 20 6f 72 20 69 74 20 69 73 20 74 68 65 20 6e 61 6d 65 20 6f 66 20 61 20 3c 61 20 68 72 65 66 3d | .or.it.is.the.name.of.a.<a.href= |
| a3800 | 22 23 43 6f 6d 70 69 6c 61 74 69 6f 6e 2d 4d 6f 64 65 6c 22 3e 6d 6f 64 75 6c 65 3c 2f 61 3e 2c | "#Compilation-Model">module</a>, |
| a3820 | 20 77 69 74 68 0a 20 20 20 20 20 20 74 68 65 20 69 6d 70 6f 72 74 20 72 65 66 65 72 72 69 6e 67 | .with.......the.import.referring |
| a3840 | 20 74 6f 20 74 68 65 20 72 6f 6f 74 20 73 6f 75 72 63 65 20 66 69 6c 65 20 6f 66 20 74 68 61 74 | .to.the.root.source.file.of.that |
| a3860 | 20 6d 6f 64 75 6c 65 2e 20 45 69 74 68 65 72 20 77 61 79 2c 20 74 68 65 20 66 69 6c 65 20 70 61 | .module..Either.way,.the.file.pa |
| a3880 | 74 68 20 6d 75 73 74 20 65 6e 64 20 69 6e 0a 20 20 20 20 20 20 65 69 74 68 65 72 20 3c 63 6f 64 | th.must.end.in.......either.<cod |
| a38a0 | 65 3e 2e 7a 69 67 3c 2f 63 6f 64 65 3e 20 28 66 6f 72 20 61 20 5a 69 67 20 73 6f 75 72 63 65 20 | e>.zig</code>.(for.a.Zig.source. |
| a38c0 | 66 69 6c 65 29 20 6f 72 20 3c 63 6f 64 65 3e 2e 7a 6f 6e 3c 2f 63 6f 64 65 3e 20 28 66 6f 72 20 | file).or.<code>.zon</code>.(for. |
| a38e0 | 61 20 5a 4f 4e 20 64 61 74 61 20 66 69 6c 65 29 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 49 | a.ZON.data.file).</p>.......<p>I |
| a3900 | 66 20 3c 63 6f 64 65 3e 74 61 72 67 65 74 3c 2f 63 6f 64 65 3e 20 72 65 66 65 72 73 20 74 6f 20 | f.<code>target</code>.refers.to. |
| a3920 | 61 20 5a 69 67 20 73 6f 75 72 63 65 20 66 69 6c 65 2c 20 74 68 65 6e 20 3c 63 6f 64 65 3e 3c 73 | a.Zig.source.file,.then.<code><s |
| a3940 | 70 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< |
| a3960 | 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 61 74 | /span></code>.returns.......that |
| a3980 | 20 66 69 6c 65 27 73 20 3c 61 20 68 72 65 66 3d 22 23 53 6f 75 72 63 65 2d 46 69 6c 65 2d 53 74 | .file's.<a.href="#Source-File-St |
| a39a0 | 72 75 63 74 73 22 3e 63 6f 72 72 65 73 70 6f 6e 64 69 6e 67 20 73 74 72 75 63 74 20 74 79 70 65 | ructs">corresponding.struct.type |
| a39c0 | 3c 2f 61 3e 2c 20 65 73 73 65 6e 74 69 61 6c 6c 79 20 61 73 20 69 66 20 74 68 65 20 62 75 69 6c | </a>,.essentially.as.if.the.buil |
| a39e0 | 74 69 6e 20 63 61 6c 6c 20 77 61 73 0a 20 20 20 20 20 20 72 65 70 6c 61 63 65 64 20 62 79 20 3c | tin.call.was.......replaced.by.< |
| a3a00 | 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 74 72 75 63 74 | code><span.class="tok-kw">struct |
| a3a20 | 3c 2f 73 70 61 6e 3e 20 7b 20 46 49 4c 45 5f 43 4f 4e 54 45 4e 54 53 20 7d 3c 2f 63 6f 64 65 3e | </span>.{.FILE_CONTENTS.}</code> |
| a3a40 | 2e 20 54 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 | ..The.return.type.is.<code><span |
| a3a60 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 3c 2f 63 | .class="tok-type">type</span></c |
| a3a80 | 6f 64 65 3e 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 49 66 20 3c 63 6f 64 65 3e 74 61 72 67 | ode>.</p>.......<p>If.<code>targ |
| a3aa0 | 65 74 3c 2f 63 6f 64 65 3e 20 72 65 66 65 72 73 20 74 6f 20 61 20 5a 4f 4e 20 66 69 6c 65 2c 20 | et</code>.refers.to.a.ZON.file,. |
| a3ac0 | 74 68 65 6e 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c | then.<code><span.class="tok-buil |
| a3ae0 | 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 72 65 74 75 72 | tin">@import</span></code>.retur |
| a3b00 | 6e 73 20 74 68 65 20 76 61 6c 75 65 0a 20 20 20 20 20 20 6f 66 20 74 68 65 20 6c 69 74 65 72 61 | ns.the.value.......of.the.litera |
| a3b20 | 6c 20 69 6e 20 74 68 65 20 66 69 6c 65 2e 20 49 66 20 74 68 65 72 65 20 69 73 20 61 6e 20 69 6e | l.in.the.file..If.there.is.an.in |
| a3b40 | 66 65 72 72 65 64 20 3c 61 20 68 72 65 66 3d 22 23 52 65 73 75 6c 74 2d 54 79 70 65 73 22 3e 72 | ferred.<a.href="#Result-Types">r |
| a3b60 | 65 73 75 6c 74 20 74 79 70 65 3c 2f 61 3e 2c 20 74 68 65 6e 20 74 68 65 20 72 65 74 75 72 6e 20 | esult.type</a>,.then.the.return. |
| a3b80 | 74 79 70 65 0a 20 20 20 20 20 20 69 73 20 74 68 61 74 20 74 79 70 65 2c 20 61 6e 64 20 74 68 65 | type.......is.that.type,.and.the |
| a3ba0 | 20 5a 4f 4e 20 6c 69 74 65 72 61 6c 20 69 73 20 69 6e 74 65 72 70 72 65 74 65 64 20 61 73 20 74 | .ZON.literal.is.interpreted.as.t |
| a3bc0 | 68 61 74 20 74 79 70 65 20 28 3c 61 20 68 72 65 66 3d 22 23 52 65 73 75 6c 74 2d 54 79 70 65 73 | hat.type.(<a.href="#Result-Types |
| a3be0 | 22 3e 52 65 73 75 6c 74 20 54 79 70 65 73 3c 2f 61 3e 20 61 72 65 20 70 72 6f 70 61 67 61 74 65 | ">Result.Types</a>.are.propagate |
| a3c00 | 64 20 74 68 72 6f 75 67 68 0a 20 20 20 20 20 20 74 68 65 20 5a 4f 4e 20 65 78 70 72 65 73 73 69 | d.through.......the.ZON.expressi |
| a3c20 | 6f 6e 29 2e 20 4f 74 68 65 72 77 69 73 65 2c 20 74 68 65 20 72 65 74 75 72 6e 20 74 79 70 65 20 | on)..Otherwise,.the.return.type. |
| a3c40 | 69 73 20 74 68 65 20 74 79 70 65 20 6f 66 20 74 68 65 20 65 71 75 69 76 61 6c 65 6e 74 20 5a 69 | is.the.type.of.the.equivalent.Zi |
| a3c60 | 67 20 65 78 70 72 65 73 73 69 6f 6e 2c 20 65 73 73 65 6e 74 69 61 6c 6c 79 20 61 73 0a 20 20 20 | g.expression,.essentially.as.... |
| a3c80 | 20 20 20 69 66 20 74 68 65 20 62 75 69 6c 74 69 6e 20 63 61 6c 6c 20 77 61 73 20 72 65 70 6c 61 | ...if.the.builtin.call.was.repla |
| a3ca0 | 63 65 64 20 62 79 20 74 68 65 20 5a 4f 4e 20 66 69 6c 65 20 63 6f 6e 74 65 6e 74 73 2e 3c 2f 70 | ced.by.the.ZON.file.contents.</p |
| a3cc0 | 3e 0a 20 20 20 20 20 20 3c 70 3e 54 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 6d 6f 64 75 6c 65 73 | >.......<p>The.following.modules |
| a3ce0 | 20 61 72 65 20 61 6c 77 61 79 73 20 61 76 61 69 6c 61 62 6c 65 20 66 6f 72 20 69 6d 70 6f 72 74 | .are.always.available.for.import |
| a3d00 | 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c | :</p>.......<ul>...........<li>< |
| a3d20 | 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">@ |
| a3d40 | 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 |
| a3d60 | 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3c 2f 63 6f 64 | tr">"std"</span>)</cod |
| a3d80 | 65 3e 20 2d 20 5a 69 67 20 53 74 61 6e 64 61 72 64 20 4c 69 62 72 61 72 79 3c 2f 6c 69 3e 0a 20 | e>.-.Zig.Standard.Library</li>.. |
| a3da0 | 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=" |
| a3dc0 | 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 |
| a3de0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 62 75 69 6c 74 69 6e 26 | n.class="tok-str">"builtin& |
| a3e00 | 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3c 2f 63 6f 64 65 3e 20 2d 20 54 61 72 67 65 74 2d 73 70 | quot;</span>)</code>.-.Target-sp |
| a3e20 | 65 63 69 66 69 63 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 2e 20 54 68 65 20 63 6f 6d 6d 61 6e 64 20 | ecific.information..The.command. |
| a3e40 | 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 77 2d 62 75 69 6c 74 | <code>zig.build-exe.--show-built |
| a3e60 | 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 72 63 65 20 74 6f 20 | in</code>.outputs.the.source.to. |
| a3e80 | 73 74 64 6f 75 74 20 66 6f 72 20 72 65 66 65 72 65 6e 63 65 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 | stdout.for.reference.</li>...... |
| a3ea0 | 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- |
| a3ec0 | 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 |
| a3ee0 | 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 72 6f 6f 74 26 71 75 6f 74 3b 3c 2f | ass="tok-str">"root"</ |
| a3f00 | 73 70 61 6e 3e 29 3c 2f 63 6f 64 65 3e 20 2d 20 41 6c 69 61 73 20 66 6f 72 20 74 68 65 20 72 6f | span>)</code>.-.Alias.for.the.ro |
| a3f20 | 6f 74 20 6d 6f 64 75 6c 65 2e 20 49 6e 20 74 79 70 69 63 61 6c 20 70 72 6f 6a 65 63 74 20 73 74 | ot.module..In.typical.project.st |
| a3f40 | 72 75 63 74 75 72 65 73 2c 20 74 68 69 73 20 6d 65 61 6e 73 20 69 74 20 72 65 66 65 72 73 20 62 | ructures,.this.means.it.refers.b |
| a3f60 | 61 63 6b 20 74 6f 20 3c 63 6f 64 65 3e 73 72 63 2f 6d 61 69 6e 2e 7a 69 67 3c 2f 63 6f 64 65 3e | ack.to.<code>src/main.zig</code> |
| a3f80 | 2e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 | ............</li>.......</ul>... |
| a3fa0 | 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. |
| a3fc0 | 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 |
| a3fe0 | 65 20 56 61 72 69 61 62 6c 65 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 | e.Variables</a></li>.<li><a.href |
| a4000 | 3d 22 23 65 6d 62 65 64 46 69 6c 65 22 3e 40 65 6d 62 65 64 46 69 6c 65 3c 2f 61 3e 3c 2f 6c 69 | ="#embedFile">@embedFile</a></li |
| a4020 | 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 |
| a4040 | 6e 43 6f 6d 70 74 69 6d 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 69 6e 43 6f 6d 70 74 | nComptime"><a.href="#toc-inCompt |
| a4060 | 69 6d 65 22 3e 40 69 6e 43 6f 6d 70 74 69 6d 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 | ime">@inComptime</a>.<a.class="h |
| a4080 | 64 72 22 20 68 72 65 66 3d 22 23 69 6e 43 6f 6d 70 74 69 6d 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 | dr".href="#inComptime">..</a></h |
| a40a0 | 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 |
| a40c0 | 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6e 43 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e | ="tok-builtin">@inComptime</span |
| a40e0 | 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 62 6f 6f 6c 3c | >().<span.class="tok-type">bool< |
| a4100 | 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 | /span></code></pre>.......<p>... |
| a4120 | 20 20 20 20 52 65 74 75 72 6e 73 20 77 68 65 74 68 65 72 20 74 68 65 20 62 75 69 6c 74 69 6e 20 | ....Returns.whether.the.builtin. |
| a4140 | 77 61 73 20 72 75 6e 20 69 6e 20 61 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | was.run.in.a.<code><span.class=" |
| a4160 | 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 63 | tok-kw">comptime</span></code>.c |
| a4180 | 6f 6e 74 65 78 74 2e 20 54 68 65 20 72 65 73 75 6c 74 20 69 73 20 61 20 63 6f 6d 70 69 6c 65 2d | ontext..The.result.is.a.compile- |
| a41a0 | 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 20 20 20 | time.constant........</p>....... |
| a41c0 | 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 63 61 6e 20 62 65 20 75 73 65 64 20 74 6f 20 70 72 | <p>.......This.can.be.used.to.pr |
| a41e0 | 6f 76 69 64 65 20 61 6c 74 65 72 6e 61 74 69 76 65 2c 20 63 6f 6d 70 74 69 6d 65 2d 66 72 69 65 | ovide.alternative,.comptime-frie |
| a4200 | 6e 64 6c 79 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 73 20 6f 66 20 66 75 6e 63 74 69 6f 6e | ndly.implementations.of.function |
| a4220 | 73 2e 20 49 74 20 73 68 6f 75 6c 64 20 6e 6f 74 20 62 65 20 75 73 65 64 2c 20 66 6f 72 20 69 6e | s..It.should.not.be.used,.for.in |
| a4240 | 73 74 61 6e 63 65 2c 20 74 6f 20 65 78 63 6c 75 64 65 20 63 65 72 74 61 69 6e 20 66 75 6e 63 74 | stance,.to.exclude.certain.funct |
| a4260 | 69 6f 6e 73 20 66 72 6f 6d 20 62 65 69 6e 67 20 65 76 61 6c 75 61 74 65 64 20 61 74 20 63 6f 6d | ions.from.being.evaluated.at.com |
| a4280 | 70 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 53 65 65 20 61 | ptime........</p>.......<p>See.a |
| a42a0 | 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 6f 6d 70 74 | lso:</p><ul>.<li><a.href="#compt |
| a42c0 | 69 6d 65 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 | ime">comptime</a></li>.</ul>.... |
| a42e0 | 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 69 6e 74 43 61 73 74 22 3e 3c 61 20 | ............<h3.id="intCast"><a. |
| a4300 | 68 72 65 66 3d 22 23 74 6f 63 2d 69 6e 74 43 61 73 74 22 3e 40 69 6e 74 43 61 73 74 3c 2f 61 3e | href="#toc-intCast">@intCast</a> |
| a4320 | 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 43 61 73 74 22 3e | .<a.class="hdr".href="#intCast"> |
| a4340 | 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 |
| a4360 | 70 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 |
| a4380 | 3c 2f 73 70 61 6e 3e 28 69 6e 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | </span>(int:.<span.class="tok-kw |
| a43a0 | 22 3e 61 6e 79 74 79 70 65 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ">anytype</span>).<span.class="t |
| a43c0 | 6f 6b 2d 6b 77 22 3e 61 6e 79 74 79 70 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 | ok-kw">anytype</span></code></pr |
| a43e0 | 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 69 | e>.......<p>.......Converts.an.i |
| a4400 | 6e 74 65 67 65 72 20 74 6f 20 61 6e 6f 74 68 65 72 20 69 6e 74 65 67 65 72 20 77 68 69 6c 65 20 | nteger.to.another.integer.while. |
| a4420 | 6b 65 65 70 69 6e 67 20 74 68 65 20 73 61 6d 65 20 6e 75 6d 65 72 69 63 61 6c 20 76 61 6c 75 65 | keeping.the.same.numerical.value |
| a4440 | 2e 0a 09 09 09 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 | .....The.return.type.is.the.infe |
| a4460 | 72 72 65 64 20 72 65 73 75 6c 74 20 74 79 70 65 2e 0a 20 20 20 20 20 20 41 74 74 65 6d 70 74 69 | rred.result.type........Attempti |
| a4480 | 6e 67 20 74 6f 20 63 6f 6e 76 65 72 74 20 61 20 6e 75 6d 62 65 72 20 77 68 69 63 68 20 69 73 20 | ng.to.convert.a.number.which.is. |
| a44a0 | 6f 75 74 20 6f 66 20 72 61 6e 67 65 20 6f 66 20 74 68 65 20 64 65 73 74 69 6e 61 74 69 6f 6e 20 | out.of.range.of.the.destination. |
| a44c0 | 74 79 70 65 20 72 65 73 75 6c 74 73 20 69 6e 0a 20 20 20 20 20 20 73 61 66 65 74 79 2d 63 68 65 | type.results.in.......safety-che |
| a44e0 | 63 6b 65 64 20 3c 61 20 68 72 65 66 3d 22 23 49 6c 6c 65 67 61 6c 2d 42 65 68 61 76 69 6f 72 22 | cked.<a.href="#Illegal-Behavior" |
| a4500 | 3e 49 6c 6c 65 67 61 6c 20 42 65 68 61 76 69 6f 72 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 | >Illegal.Behavior</a>........</p |
| a4520 | 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 |
| a4540 | 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 |
| a4560 | 65 73 74 5f 69 6e 74 43 61 73 74 5f 62 75 69 6c 74 69 6e 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f | est_intCast_builtin.zig</cite></ |
| a4580 | 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 |
| a45a0 | 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 |
| a45c0 | 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 69 6e 74 65 67 65 72 20 63 61 73 74 20 | ss="tok-str">"integer.cast. |
| a45e0 | 70 61 6e 69 63 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 | panic"</span>.{.....<span.c |
| a4600 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 61 3a 20 3c 73 70 61 | lass="tok-kw">var</span>.a:.<spa |
| a4620 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 31 36 3c 2f 73 70 61 6e 3e 20 3d 20 | n.class="tok-type">u16</span>.=. |
| a4640 | 3c 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 62 63 64 3c | <span.class="tok-number">0xabcd< |
| a4660 | 2f 73 70 61 6e 3e 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 | /span>;.<span.class="tok-comment |
| a4680 | 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 20 5f 20 | ">//.runtime-known</span>....._. |
| a46a0 | 3d 20 26 61 6d 70 3b 61 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | =.&a;.....<span.class="tok-k |
| a46c0 | 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 22 | w">const</span>.b:.<span.class=" |
| a46e0 | 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 |
| a4700 | 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>( |
| a4720 | 61 29 3b 0a 20 20 20 20 5f 20 3d 20 62 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 | a);....._.=.b;.}</code></pre></f |
| a4740 | 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= |
| a4760 | 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 |
| a4780 | 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 |
| a47a0 | 74 43 61 73 74 5f 62 75 69 6c 74 69 6e 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 | tCast_builtin.zig</kbd>.1/1.test |
| a47c0 | 5f 69 6e 74 43 61 73 74 5f 62 75 69 6c 74 69 6e 2e 74 65 73 74 2e 69 6e 74 65 67 65 72 20 63 61 | _intCast_builtin.test.integer.ca |
| a47e0 | 73 74 20 70 61 6e 69 63 2e 2e 2e 74 68 72 65 61 64 20 31 30 39 37 39 35 30 20 70 61 6e 69 63 3a | st.panic...thread.1097950.panic: |
| a4800 | 20 69 6e 74 65 67 65 72 20 64 6f 65 73 20 6e 6f 74 20 66 69 74 20 69 6e 20 64 65 73 74 69 6e 61 | .integer.does.not.fit.in.destina |
| a4820 | 74 69 6f 6e 20 74 79 70 65 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f | tion.type.<span.class="sgr-1m">/ |
| a4840 | 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 | home/andy/dev/zig/doc/langref/te |
| a4860 | 73 74 5f 69 6e 74 43 61 73 74 5f 62 75 69 6c 74 69 6e 2e 7a 69 67 3a 34 3a 31 39 3c 2f 73 70 61 | st_intCast_builtin.zig:4:19</spa |
| a4880 | 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 32 63 30 | n>:.<span.class="sgr-2m">0x102c0 |
| a48a0 | 32 30 20 69 6e 20 74 65 73 74 2e 69 6e 74 65 67 65 72 20 63 61 73 74 20 70 61 6e 69 63 20 28 74 | 20.in.test.integer.cast.panic.(t |
| a48c0 | 65 73 74 5f 69 6e 74 43 61 73 74 5f 62 75 69 6c 74 69 6e 2e 7a 69 67 29 3c 2f 73 70 61 6e 3e 0a | est_intCast_builtin.zig)</span>. |
| a48e0 | 20 20 20 20 63 6f 6e 73 74 20 62 3a 20 75 38 20 3d 20 40 69 6e 74 43 61 73 74 28 61 29 3b 0a 20 | ....const.b:.u8.=.@intCast(a);.. |
| a4900 | 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 |
| a4920 | 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 |
| a4940 | 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 63 6f 6d 70 | -1m">/home/andy/dev/zig/lib/comp |
| a4960 | 69 6c 65 72 2f 74 65 73 74 5f 72 75 6e 6e 65 72 2e 7a 69 67 3a 32 31 38 3a 32 35 3c 2f 73 70 61 | iler/test_runner.zig:218:25</spa |
| a4980 | 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 31 35 63 62 | n>:.<span.class="sgr-2m">0x115cb |
| a49a0 | 33 30 20 69 6e 20 6d 61 69 6e 54 65 72 6d 69 6e 61 6c 20 28 74 65 73 74 5f 72 75 6e 6e 65 72 2e | 30.in.mainTerminal.(test_runner. |
| a49c0 | 7a 69 67 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 | zig)</span>.........if.(test_fn. |
| a49e0 | 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()).|_|.{................... |
| a4a00 | 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 |
| a4a20 | 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/ |
| a4a40 | 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 63 6f 6d 70 69 6c 65 72 2f 74 65 73 74 5f 72 | andy/dev/zig/lib/compiler/test_r |
| a4a60 | 75 6e 6e 65 72 2e 7a 69 67 3a 36 36 3a 32 38 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c | unner.zig:66:28</span>:.<span.cl |
| a4a80 | 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 31 35 35 64 35 31 20 69 6e 20 6d 61 69 6e 20 28 | ass="sgr-2m">0x1155d51.in.main.( |
| a4aa0 | 74 65 73 74 5f 72 75 6e 6e 65 72 2e 7a 69 67 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 | test_runner.zig)</span>......... |
| a4ac0 | 72 65 74 75 72 6e 20 6d 61 69 6e 54 65 72 6d 69 6e 61 6c 28 29 3b 0a 20 20 20 20 20 20 20 20 20 | return.mainTerminal();.......... |
| a4ae0 | 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 |
| a4b00 | 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 |
| a4b20 | 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 | r-1m">/home/andy/dev/zig/lib/std |
| a4b40 | 2f 73 74 61 72 74 2e 7a 69 67 3a 36 31 38 3a 32 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 | /start.zig:618:22</span>:.<span. |
| a4b60 | 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 31 34 66 61 65 64 20 69 6e 20 70 6f 73 69 | class="sgr-2m">0x114faed.in.posi |
| a4b80 | 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 20 28 73 74 64 2e 7a 69 67 29 3c 2f 73 70 61 6e | xCallMainAndExit.(std.zig)</span |
| a4ba0 | 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 6f 6f 74 2e 6d 61 69 6e 28 29 3b 0a 20 20 20 20 20 | >.............root.main();...... |
| a4bc0 | 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 |
| a4be0 | 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- |
| a4c00 | 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 | 1m">/home/andy/dev/zig/lib/std/s |
| a4c20 | 74 61 72 74 2e 7a 69 67 3a 32 33 32 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 | tart.zig:232:5</span>:.<span.cla |
| a4c40 | 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 31 34 66 33 38 31 20 69 6e 20 5f 73 74 61 72 74 20 | ss="sgr-2m">0x114f381.in._start. |
| a4c60 | 28 73 74 64 2e 7a 69 67 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 61 73 6d 20 76 6f 6c 61 74 69 6c | (std.zig)</span>.....asm.volatil |
| a4c80 | 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 |
| a4ca0 | 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 |
| a4cc0 | 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> |
| a4ce0 | 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.?? |
| a4d00 | 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 6c 6c 6f 77 | ?.(???)</span>.error:.the.follow |
| a4d20 | 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 6f 6d 65 2f | ing.test.command.crashed:./home/ |
| a4d40 | 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 2e 7a 69 67 2d 63 61 63 68 65 2f 6f 2f 66 38 66 35 64 32 | andy/dev/zig/.zig-cache/o/f8f5d2 |
| a4d60 | 33 63 31 61 64 65 65 61 37 36 37 30 30 65 33 35 38 38 36 63 31 65 34 62 63 66 2f 74 65 73 74 20 | 3c1adeea76700e35886c1e4bcf/test. |
| a4d80 | 2d 2d 73 65 65 64 3d 30 78 38 37 38 36 62 32 33 31 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c | --seed=0x8786b231.</samp></pre>< |
| a4da0 | 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 74 72 75 | /figure>........<p>.......To.tru |
| a4dc0 | 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 20 61 20 | ncate.the.significant.bits.of.a. |
| a4de0 | 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 73 74 69 | number.out.of.range.of.the.desti |
| a4e00 | 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 75 6e 63 | nation.type,.use.<a.href="#trunc |
| a4e20 | 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 3e 0a 20 | ate">@truncate</a>........</p>.. |
| a4e40 | 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 64 65 3e | .....<p>.......If.<code>T</code> |
| a4e60 | 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 70 65 22 | .is.<code><span.class="tok-type" |
| a4e80 | 3e 63 6f 6d 70 74 69 6d 65 5f 69 6e 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 0a 20 20 20 | >comptime_int</span></code>,.... |
| a4ea0 | 20 20 20 74 68 65 6e 20 74 68 69 73 20 69 73 20 73 65 6d 61 6e 74 69 63 61 6c 6c 79 20 65 71 75 | ...then.this.is.semantically.equ |
| a4ec0 | 69 76 61 6c 65 6e 74 20 74 6f 20 3c 61 20 68 72 65 66 3d 22 23 54 79 70 65 2d 43 6f 65 72 63 69 | ivalent.to.<a.href="#Type-Coerci |
| a4ee0 | 6f 6e 22 3e 54 79 70 65 20 43 6f 65 72 63 69 6f 6e 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 | on">Type.Coercion</a>........</p |
| a4f00 | 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 6f 6d 42 | >...............<h3.id="intFromB |
| a4f20 | 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 6c 22 3e | ool"><a.href="#toc-intFromBool"> |
| a4f40 | 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 72 22 20 | @intFromBool</a>.<a.class="hdr". |
| a4f60 | 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 33 3e 0a | href="#intFromBool">..</a></h3>. |
| a4f80 | 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 |
| a4fa0 | 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 6e 3e 28 | ok-builtin">@intFromBool</span>( |
| a4fc0 | 76 61 6c 75 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f | value:.<span.class="tok-type">bo |
| a4fe0 | 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 |
| a5000 | 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 20 20 3c | ">u1</span></code></pre>.......< |
| a5020 | 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 20 63 6c | p>.......Converts.<code><span.cl |
| a5040 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 | ass="tok-null">true</span></code |
| a5060 | 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 75 69 6c | >.to.<code><span.class="tok-buil |
| a5080 | 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 |
| a50a0 | 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 3d 22 74 | -type">u1</span>,.<span.class="t |
| a50c0 | 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 6e 64 20 | ok-number">1</span>)</code>.and. |
| a50e0 | 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c | <code><span.class="tok-null">fal |
| a5100 | 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 20 20 20 | se</span></code>.to............. |
| a5120 | 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 |
| a5140 | 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 |
| a5160 | 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 3d 22 | k-type">u1</span>,.<span.class=" |
| a5180 | 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 0a 20 20 | tok-number">0</span>)</code>.... |
| a51a0 | 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 69 | ....</p>...............<h3.id="i |
| a51c0 | 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 46 72 6f | ntFromEnum"><a.href="#toc-intFro |
| a51e0 | 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 61 73 73 | mEnum">@intFromEnum</a>.<a.class |
| a5200 | 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 3c 2f 61 | ="hdr".href="#intFromEnum">..</a |
| a5220 | 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 |
| a5240 | 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< |
| a5260 | 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 3c 73 70 | /span>(enum_or_tagged_union:.<sp |
| a5280 | 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> |
| a52a0 | 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</ |
| a52c0 | 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>.... |
| a52e0 | 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 6c 75 65 | ...Converts.an.enumeration.value |
| a5300 | 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 68 65 6e | .into.its.integer.tag.type..When |
| a5320 | 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 20 20 20 | .a.tagged.union.is.passed,...... |
| a5340 | 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 20 65 6e | .the.tag.value.is.used.as.the.en |
| a5360 | 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 20 20 20 | umeration.value........</p>..... |
| a5380 | 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 6f 6e 65 | ..<p>.......If.there.is.only.one |
| a53a0 | 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 75 6c 74 | .possible.enum.value,.the.result |
| a53c0 | 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 74 79 70 | .is.a.<code><span.class="tok-typ |
| a53e0 | 65 22 3e 63 6f 6d 70 74 69 6d 65 5f 69 6e 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 0a 20 20 | e">comptime_int</span></code>... |
| a5400 | 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 6d 65 22 | ....known.at.<a.href="#comptime" |
| a5420 | 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 20 20 20 | >comptime</a>........</p>....... |
| a5440 | 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 |
| a5460 | 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 2f 61 3e | ="#enumFromInt">@enumFromInt</a> |
| a5480 | 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 |
| a54a0 | 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 63 2d 69 | d="intFromError"><a.href="#toc-i |
| a54c0 | 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 20 3c | ntFromError">@intFromError</a>.< |
| a54e0 | 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 72 72 6f | a.class="hdr".href="#intFromErro |
| a5500 | 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 6f 64 65 | r">..</a></h3>........<pre><code |
| a5520 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6e 74 46 | ><span.class="tok-builtin">@intF |
| a5540 | 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 61 73 73 | romError</span>(err:.<span.class |
| a5560 | 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 2e 6d 65 | ="tok-kw">anytype</span>).std.me |
| a5580 | 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 3d 22 74 | ta.Int(.unsigned,.<span.class="t |
| a55a0 | 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 28 3c 73 | ok-builtin">@bitSizeOf</span>(<s |
| a55c0 | 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 |
| a55e0 | 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 0a 20 20 | pan>))</code></pre>.......<p>... |
| a5600 | 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 70 65 73 | ....Supports.the.following.types |
| a5620 | 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 | :.......</p>.......<ul>......... |
| a5640 | 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 72 6f 72 | ..<li><a.href="#The-Global-Error |
| a5660 | 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 3c 2f | -Set">The.Global.Error.Set</a></ |
| a5680 | 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 |
| a56a0 | 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></ |
| a56c0 | 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 |
| a56e0 | 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</ |
| a5700 | 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 | a></li>.......</ul>.......<p>... |
| a5720 | 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 69 6e 74 | ....Converts.an.error.to.the.int |
| a5740 | 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 6f 72 2e | eger.representation.of.an.error. |
| a5760 | 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 69 | .......</p>.......<p>.......It.i |
| a5780 | 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 69 64 | s.generally.recommended.to.avoid |
| a57a0 | 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 65 72 | .this.......cast,.as.the.integer |
| a57c0 | 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 20 6e | .representation.of.an.error.is.n |
| a57e0 | 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 68 61 | ot.stable.across.source.code.cha |
| a5800 | 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 20 61 6c | nges........</p>.......<p>See.al |
| a5820 | 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 6f 72 46 | so:</p><ul>.<li><a.href="#errorF |
| a5840 | 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 3e 0a 3c | romInt">@errorFromInt</a></li>.< |
| a5860 | 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 6e 74 46 | /ul>................<h3.id="intF |
| a5880 | 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 6f 6d 46 | romFloat"><a.href="#toc-intFromF |
| a58a0 | 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 61 73 73 | loat">@intFromFloat</a>.<a.class |
| a58c0 | 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 a7 3c 2f | ="hdr".href="#intFromFloat">..</ |
| a58e0 | 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. |
| a5900 | 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 |
| a5920 | 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 74 6f 6b | t</span>(float:.<span.class="tok |
| a5940 | 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 |
| a5960 | 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 79 74 79 70 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c | ="tok-kw">anytype</span></code>< |
| a5980 | 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 74 | /pre>.......<p>.......Converts.t |
| a59a0 | 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 20 70 6f | he.integer.part.of.a.floating.po |
| a59c0 | 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 73 75 6c | int.number.to.the.inferred.resul |
| a59e0 | 74 20 74 79 70 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 | t.type........</p>.......<p>.... |
| a5a00 | 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 20 66 6c | ...If.the.integer.part.of.the.fl |
| a5a20 | 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 74 20 69 | oating.point.number.cannot.fit.i |
| a5a40 | 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 74 | n.the.destination.type,.......it |
| a5a60 | 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 65 66 3d | .invokes.safety-checked.<a.href= |
| a5a80 | 22 23 49 6c 6c 65 67 61 6c 2d 42 65 68 61 76 69 6f 72 22 3e 49 6c 6c 65 67 61 6c 20 42 65 68 61 | "#Illegal-Behavior">Illegal.Beha |
| a5aa0 | 76 69 6f 72 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 | vior</a>........</p>.......<p>Se |
| a5ac0 | 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 66 6c | e.also:</p><ul>.<li><a.href="#fl |
| a5ae0 | 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 3c 2f 6c | oatFromInt">@floatFromInt</a></l |
| a5b00 | 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=" |
| a5b20 | 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 2d 69 6e 74 46 72 6f | intFromPtr"><a.href="#toc-intFro |
| a5b40 | 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 63 6c 61 73 73 3d 22 | mPtr">@intFromPtr</a>.<a.class=" |
| a5b60 | 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 a7 3c 2f 61 3e 3c 2f | hdr".href="#intFromPtr">..</a></ |
| a5b80 | 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 |
| a5ba0 | 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 70 61 | s="tok-builtin">@intFromPtr</spa |
| a5bc0 | 6e 3e 28 76 61 6c 75 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 | n>(value:.<span.class="tok-kw">a |
| a5be0 | 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- |
| a5c00 | 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a | type">usize</span></code></pre>. |
| a5c20 | 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 43 6f 6e 76 65 72 74 73 20 3c 63 6f 64 65 3e 76 | ......<p>.......Converts.<code>v |
| a5c40 | 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 70 61 6e 20 63 6c 61 | alue</code>.to.a.<code><span.cla |
| a5c60 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 | ss="tok-type">usize</span></code |
| a5c80 | 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 20 74 68 65 20 70 6f | >.which.is.the.address.of.the.po |
| a5ca0 | 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 2f 63 6f 64 65 3e 20 | inter........<code>value</code>. |
| a5cc0 | 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 20 3c 63 6f 64 65 3e | can.be.<code>*T</code>.or.<code> |
| a5ce0 | 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 20 20 20 20 3c 70 3e | ?*T</code>........</p>.......<p> |
| a5d00 | 54 6f 20 63 6f 6e 76 65 72 74 20 74 68 65 20 6f 74 68 65 72 20 77 61 79 2c 20 75 73 65 20 3c 61 | To.convert.the.other.way,.use.<a |
| a5d20 | 20 68 72 65 66 3d 22 23 70 74 72 46 72 6f 6d 49 6e 74 22 3e 40 70 74 72 46 72 6f 6d 49 6e 74 3c | .href="#ptrFromInt">@ptrFromInt< |
| a5d40 | 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 20 69 64 3d 22 6d 61 | /a></p>...............<h3.id="ma |
| a5d60 | 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 78 3c 2f 61 3e 20 3c | x"><a.href="#toc-max">@max</a>.< |
| a5d80 | 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 3e c2 a7 3c 2f 61 3e | a.class="hdr".href="#max">..</a> |
| a5da0 | 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 |
| a5dc0 | 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 70 61 6e 3e 28 2e 2e | ass="tok-builtin">@max</span>(.. |
| a5de0 | 2e 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</code></pre>.......<p>..... |
| a5e00 | 20 20 54 61 6b 65 73 20 74 77 6f 20 6f 72 20 6d 6f 72 65 20 61 72 67 75 6d 65 6e 74 73 20 61 6e | ..Takes.two.or.more.arguments.an |
| a5e20 | 64 20 72 65 74 75 72 6e 73 20 74 68 65 20 62 69 67 67 65 73 74 20 76 61 6c 75 65 20 69 6e 63 6c | d.returns.the.biggest.value.incl |
| a5e40 | 75 64 65 64 20 28 74 68 65 20 6d 61 78 69 6d 75 6d 29 2e 20 54 68 69 73 20 62 75 69 6c 74 69 6e | uded.(the.maximum)..This.builtin |
| a5e60 | 20 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 | .accepts.integers,.floats,.and.v |
| a5e80 | 65 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 | ectors.of.either..In.the.latter. |
| a5ea0 | 63 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 | case,.the.operation.is.performed |
| a5ec0 | 20 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 | .element.wise........</p>....... |
| a5ee0 | 3c 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 | <p>.......NaNs.are.handled.as.fo |
| a5f00 | 6c 6c 6f 77 73 3a 20 72 65 74 75 72 6e 20 74 68 65 20 62 69 67 67 65 73 74 20 6e 6f 6e 2d 4e 61 | llows:.return.the.biggest.non-Na |
| a5f20 | 4e 20 76 61 6c 75 65 20 69 6e 63 6c 75 64 65 64 2e 20 49 66 20 61 6c 6c 20 6f 70 65 72 61 6e 64 | N.value.included..If.all.operand |
| a5f40 | 73 20 61 72 65 20 4e 61 4e 2c 20 72 65 74 75 72 6e 20 4e 61 4e 2e 0a 20 20 20 20 20 20 3c 2f 70 | s.are.NaN,.return.NaN........</p |
| a5f60 | 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 |
| a5f80 | 3e 3c 61 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 3c 6c | ><a.href="#min">@min</a></li>.<l |
| a5fa0 | 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 3c 2f 61 3e | i><a.href="#Vectors">Vectors</a> |
| a5fc0 | 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 |
| a5fe0 | 64 3d 22 6d 65 6d 63 70 79 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 6d 65 6d 63 70 79 22 | d="memcpy"><a.href="#toc-memcpy" |
| a6000 | 3e 40 6d 65 6d 63 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 | >@memcpy</a>.<a.class="hdr".href |
| a6020 | 3d 22 23 6d 65 6d 63 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 | ="#memcpy">..</a></h3>........<p |
| a6040 | 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 |
| a6060 | 6e 22 3e 40 6d 65 6d 63 70 79 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | n">@memcpy</span>(<span.class="t |
| a6080 | 6f 6b 2d 6b 77 22 3e 6e 6f 61 6c 69 61 73 3c 2f 73 70 61 6e 3e 20 64 65 73 74 2c 20 3c 73 70 61 | ok-kw">noalias</span>.dest,.<spa |
| a60a0 | 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 70 61 6e 3e 20 | n.class="tok-kw">noalias</span>. |
| a60c0 | 73 6f 75 72 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 76 | source).<span.class="tok-type">v |
| a60e0 | 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 70 | oid</span></code></pre>.......<p |
| a6100 | 3e 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 63 6f 70 69 65 73 20 62 79 74 65 73 20 66 72 6f 6d | >This.function.copies.bytes.from |
| a6120 | 20 6f 6e 65 20 72 65 67 69 6f 6e 20 6f 66 20 6d 65 6d 6f 72 79 20 74 6f 20 61 6e 6f 74 68 65 72 | .one.region.of.memory.to.another |
| a6140 | 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 3c 63 6f 64 65 3e 64 65 73 74 3c 2f 63 6f 64 65 3e | .</p>.......<p><code>dest</code> |
| a6160 | 20 6d 75 73 74 20 62 65 20 61 20 6d 75 74 61 62 6c 65 20 73 6c 69 63 65 2c 20 61 20 6d 75 74 61 | .must.be.a.mutable.slice,.a.muta |
| a6180 | 62 6c 65 20 70 6f 69 6e 74 65 72 20 74 6f 20 61 6e 20 61 72 72 61 79 2c 20 6f 72 0a 20 20 20 20 | ble.pointer.to.an.array,.or..... |
| a61a0 | 20 20 20 20 61 20 6d 75 74 61 62 6c 65 20 6d 61 6e 79 2d 69 74 65 6d 20 3c 61 20 68 72 65 66 3d | ....a.mutable.many-item.<a.href= |
| a61c0 | 22 23 50 6f 69 6e 74 65 72 73 22 3e 70 6f 69 6e 74 65 72 3c 2f 61 3e 2e 20 49 74 20 6d 61 79 20 | "#Pointers">pointer</a>..It.may. |
| a61e0 | 68 61 76 65 20 61 6e 79 0a 20 20 20 20 20 20 20 20 61 6c 69 67 6e 6d 65 6e 74 2c 20 61 6e 64 20 | have.any.........alignment,.and. |
| a6200 | 69 74 20 6d 61 79 20 68 61 76 65 20 61 6e 79 20 65 6c 65 6d 65 6e 74 20 74 79 70 65 2e 3c 2f 70 | it.may.have.any.element.type.</p |
| a6220 | 3e 0a 20 20 20 20 20 20 3c 70 3e 3c 63 6f 64 65 3e 73 6f 75 72 63 65 3c 2f 63 6f 64 65 3e 20 6d | >.......<p><code>source</code>.m |
| a6240 | 75 73 74 20 62 65 20 61 20 73 6c 69 63 65 2c 20 61 20 70 6f 69 6e 74 65 72 20 74 6f 0a 20 20 20 | ust.be.a.slice,.a.pointer.to.... |
| a6260 | 20 20 20 20 20 61 6e 20 61 72 72 61 79 2c 20 6f 72 20 61 20 6d 61 6e 79 2d 69 74 65 6d 20 3c 61 | .....an.array,.or.a.many-item.<a |
| a6280 | 20 68 72 65 66 3d 22 23 50 6f 69 6e 74 65 72 73 22 3e 70 6f 69 6e 74 65 72 3c 2f 61 3e 2e 20 49 | .href="#Pointers">pointer</a>..I |
| a62a0 | 74 20 6d 61 79 0a 20 20 20 20 20 20 20 20 68 61 76 65 20 61 6e 79 20 61 6c 69 67 6e 6d 65 6e 74 | t.may.........have.any.alignment |
| a62c0 | 2c 20 61 6e 64 20 69 74 20 6d 61 79 20 68 61 76 65 20 61 6e 79 20 65 6c 65 6d 65 6e 74 20 74 79 | ,.and.it.may.have.any.element.ty |
| a62e0 | 70 65 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 54 68 65 20 3c 63 6f 64 65 3e 73 6f 75 72 63 | pe.</p>.......<p>The.<code>sourc |
| a6300 | 65 3c 2f 63 6f 64 65 3e 20 65 6c 65 6d 65 6e 74 20 74 79 70 65 20 6d 75 73 74 20 68 61 76 65 20 | e</code>.element.type.must.have. |
| a6320 | 74 68 65 20 73 61 6d 65 20 69 6e 2d 6d 65 6d 6f 72 79 0a 20 20 20 20 20 20 20 20 72 65 70 72 65 | the.same.in-memory.........repre |
| a6340 | 73 65 6e 74 61 74 69 6f 6e 20 61 73 20 74 68 65 20 3c 63 6f 64 65 3e 64 65 73 74 3c 2f 63 6f 64 | sentation.as.the.<code>dest</cod |
| a6360 | 65 3e 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 53 69 | e>.element.type.</p>.......<p>Si |
| a6380 | 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 61 3e 20 | milar.to.<a.href="#for">for</a>. |
| a63a0 | 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 73 6f 75 | loops,.at.least.one.of.<code>sou |
| a63c0 | 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 64 65 73 | rce</code>.and.........<code>des |
| a63e0 | 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 68 2c 20 | t</code>.must.provide.a.length,. |
| a6400 | 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 65 64 2c | and.if.two.lengths.are.provided, |
| a6420 | 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 2f 70 3e | .........they.must.be.equal.</p> |
| a6440 | 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 6d 6f 72 | .......<p>Finally,.the.two.memor |
| a6460 | 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 70 3e 0a | y.regions.must.not.overlap.</p>. |
| a6480 | 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 3e 3c 61 | ..............<h3.id="memset"><a |
| a64a0 | 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 61 3e 20 | .href="#toc-memset">@memset</a>. |
| a64c0 | 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 3e c2 a7 | <a.class="hdr".href="#memset">.. |
| a64e0 | 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 |
| a6500 | 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 3c 2f 73 | n.class="tok-builtin">@memset</s |
| a6520 | 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 22 74 6f | pan>(dest,.elem).<span.class="to |
| a6540 | 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e | k-type">void</span></code></pre> |
| a6560 | 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 61 6c 6c | .......<p>This.function.sets.all |
| a6580 | 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 69 6f 6e | .the.elements.of.a.memory.region |
| a65a0 | 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 20 20 20 | .to.<code>elem</code>.</p>...... |
| a65c0 | 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 20 61 20 | .<p><code>dest</code>.must.be.a. |
| a65e0 | 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 69 6e 74 | mutable.slice.or.a.mutable.point |
| a6600 | 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 68 61 76 | er.to.an.array........It.may.hav |
| a6620 | 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 |
| a6640 | 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> |
| a6660 | 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 74 6f 20 | <code>elem</code>.is.coerced.to. |
| a6680 | 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 74 3c 2f | the.element.type.of.<code>dest</ |
| a66a0 | 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 65 6c 79 | code>.</p>.......<p>For.securely |
| a66c0 | 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 74 73 20 | .zeroing.out.sensitive.contents. |
| a66e0 | 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 20 20 20 | from.memory,.you.should.use..... |
| a6700 | 20 20 3c 63 6f 64 65 3e 73 74 64 2e 63 72 79 70 74 6f 2e 73 65 63 75 72 65 5a 65 72 6f 3c 2f 63 | ..<code>std.crypto.secureZero</c |
| a6720 | 6f 64 65 3e 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 6d | ode></p>...............<h3.id="m |
| a6740 | 65 6d 6d 6f 76 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 6d 65 6d 6d 6f 76 65 22 3e 40 | emmove"><a.href="#toc-memmove">@ |
| a6760 | 6d 65 6d 6d 6f 76 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 | memmove</a>.<a.class="hdr".href= |
| a6780 | 22 23 6d 65 6d 6d 6f 76 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 | "#memmove">..</a></h3>........<p |
| a67a0 | 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 |
| a67c0 | 6e 22 3e 40 6d 65 6d 6d 6f 76 65 3c 2f 73 70 61 6e 3e 28 64 65 73 74 2c 20 73 6f 75 72 63 65 29 | n">@memmove</span>(dest,.source) |
| a67e0 | 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 |
| a6800 | 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 54 68 69 73 20 66 | an></code></pre>.......<p>This.f |
| a6820 | 75 6e 63 74 69 6f 6e 20 63 6f 70 69 65 73 20 62 79 74 65 73 20 66 72 6f 6d 20 6f 6e 65 20 72 65 | unction.copies.bytes.from.one.re |
| a6840 | 67 69 6f 6e 20 6f 66 20 6d 65 6d 6f 72 79 20 74 6f 20 61 6e 6f 74 68 65 72 2c 20 62 75 74 20 75 | gion.of.memory.to.another,.but.u |
| a6860 | 6e 6c 69 6b 65 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 6d 65 6d 63 70 79 22 3e 40 6d | nlike.......<a.href="#memcpy">@m |
| a6880 | 65 6d 63 70 79 3c 2f 61 3e 20 74 68 65 20 72 65 67 69 6f 6e 73 20 6d 61 79 20 6f 76 65 72 6c 61 | emcpy</a>.the.regions.may.overla |
| a68a0 | 70 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 3c 63 6f 64 65 3e 64 65 73 74 3c 2f 63 6f 64 65 | p.</p>.......<p><code>dest</code |
| a68c0 | 3e 20 6d 75 73 74 20 62 65 20 61 20 6d 75 74 61 62 6c 65 20 73 6c 69 63 65 2c 20 61 20 6d 75 74 | >.must.be.a.mutable.slice,.a.mut |
| a68e0 | 61 62 6c 65 20 70 6f 69 6e 74 65 72 20 74 6f 20 61 6e 20 61 72 72 61 79 2c 20 6f 72 0a 20 20 20 | able.pointer.to.an.array,.or.... |
| a6900 | 20 20 20 20 20 61 20 6d 75 74 61 62 6c 65 20 6d 61 6e 79 2d 69 74 65 6d 20 3c 61 20 68 72 65 66 | .....a.mutable.many-item.<a.href |
| a6920 | 3d 22 23 50 6f 69 6e 74 65 72 73 22 3e 70 6f 69 6e 74 65 72 3c 2f 61 3e 2e 20 49 74 20 6d 61 79 | ="#Pointers">pointer</a>..It.may |
| a6940 | 20 68 61 76 65 20 61 6e 79 0a 20 20 20 20 20 20 20 20 61 6c 69 67 6e 6d 65 6e 74 2c 20 61 6e 64 | .have.any.........alignment,.and |
| a6960 | 20 69 74 20 6d 61 79 20 68 61 76 65 20 61 6e 79 20 65 6c 65 6d 65 6e 74 20 74 79 70 65 2e 3c 2f | .it.may.have.any.element.type.</ |
| a6980 | 70 3e 0a 20 20 20 20 20 20 3c 70 3e 3c 63 6f 64 65 3e 73 6f 75 72 63 65 3c 2f 63 6f 64 65 3e 20 | p>.......<p><code>source</code>. |
| a69a0 | 6d 75 73 74 20 62 65 20 61 20 73 6c 69 63 65 2c 20 61 20 70 6f 69 6e 74 65 72 20 74 6f 0a 20 20 | must.be.a.slice,.a.pointer.to... |
| a69c0 | 20 20 20 20 20 20 61 6e 20 61 72 72 61 79 2c 20 6f 72 20 61 20 6d 61 6e 79 2d 69 74 65 6d 20 3c | ......an.array,.or.a.many-item.< |
| a69e0 | 61 20 68 72 65 66 3d 22 23 50 6f 69 6e 74 65 72 73 22 3e 70 6f 69 6e 74 65 72 3c 2f 61 3e 2e 20 | a.href="#Pointers">pointer</a>.. |
| a6a00 | 49 74 20 6d 61 79 0a 20 20 20 20 20 20 20 20 68 61 76 65 20 61 6e 79 20 61 6c 69 67 6e 6d 65 6e | It.may.........have.any.alignmen |
| a6a20 | 74 2c 20 61 6e 64 20 69 74 20 6d 61 79 20 68 61 76 65 20 61 6e 79 20 65 6c 65 6d 65 6e 74 20 74 | t,.and.it.may.have.any.element.t |
| a6a40 | 79 70 65 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 54 68 65 20 3c 63 6f 64 65 3e 73 6f 75 72 | ype.</p>.......<p>The.<code>sour |
| a6a60 | 63 65 3c 2f 63 6f 64 65 3e 20 65 6c 65 6d 65 6e 74 20 74 79 70 65 20 6d 75 73 74 20 68 61 76 65 | ce</code>.element.type.must.have |
| a6a80 | 20 74 68 65 20 73 61 6d 65 20 69 6e 2d 6d 65 6d 6f 72 79 0a 20 20 20 20 20 20 20 20 72 65 70 72 | .the.same.in-memory.........repr |
| a6aa0 | 65 73 65 6e 74 61 74 69 6f 6e 20 61 73 20 74 68 65 20 3c 63 6f 64 65 3e 64 65 73 74 3c 2f 63 6f | esentation.as.the.<code>dest</co |
| a6ac0 | 64 65 3e 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 53 | de>.element.type.</p>.......<p>S |
| a6ae0 | 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 61 3e | imilar.to.<a.href="#for">for</a> |
| a6b00 | 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 73 6f | .loops,.at.least.one.of.<code>so |
| a6b20 | 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 64 65 | urce</code>.and.........<code>de |
| a6b40 | 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 68 2c | st</code>.must.provide.a.length, |
| a6b60 | 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 65 64 | .and.if.two.lengths.are.provided |
| a6b80 | 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 2f 70 | ,.........they.must.be.equal.</p |
| a6ba0 | 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 69 6e 22 3e 3c 61 20 | >...............<h3.id="min"><a. |
| a6bc0 | 68 72 65 66 3d 22 23 74 6f 63 2d 6d 69 6e 22 3e 40 6d 69 6e 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 | href="#toc-min">@min</a>.<a.clas |
| a6be0 | 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 6d 69 6e 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a | s="hdr".href="#min">..</a></h3>. |
| a6c00 | 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 |
| a6c20 | 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 6d 69 6e 3c 2f 73 70 61 6e 3e 28 2e 2e 2e 29 20 54 3c 2f | ok-builtin">@min</span>(...).T</ |
| a6c40 | 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 61 6b 65 | code></pre>.......<p>.......Take |
| a6c60 | 73 20 74 77 6f 20 6f 72 20 6d 6f 72 65 20 61 72 67 75 6d 65 6e 74 73 20 61 6e 64 20 72 65 74 75 | s.two.or.more.arguments.and.retu |
| a6c80 | 72 6e 73 20 74 68 65 20 73 6d 61 6c 6c 65 73 74 20 76 61 6c 75 65 20 69 6e 63 6c 75 64 65 64 20 | rns.the.smallest.value.included. |
| a6ca0 | 28 74 68 65 20 6d 69 6e 69 6d 75 6d 29 2e 20 54 68 69 73 20 62 75 69 6c 74 69 6e 20 61 63 63 65 | (the.minimum)..This.builtin.acce |
| a6cc0 | 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 72 | pts.integers,.floats,.and.vector |
| a6ce0 | 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 2c | s.of.either..In.the.latter.case, |
| a6d00 | 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 6d | .the.operation.is.performed.elem |
| a6d20 | 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 20 | ent.wise........</p>.......<p>.. |
| a6d40 | 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 73 | .....NaNs.are.handled.as.follows |
| a6d60 | 3a 20 72 65 74 75 72 6e 20 74 68 65 20 73 6d 61 6c 6c 65 73 74 20 6e 6f 6e 2d 4e 61 4e 20 76 61 | :.return.the.smallest.non-NaN.va |
| a6d80 | 6c 75 65 20 69 6e 63 6c 75 64 65 64 2e 20 49 66 20 61 6c 6c 20 6f 70 65 72 61 6e 64 73 20 61 72 | lue.included..If.all.operands.ar |
| a6da0 | 65 20 4e 61 4e 2c 20 72 65 74 75 72 6e 20 4e 61 4e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 | e.NaN,.return.NaN........</p>... |
| a6dc0 | 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. |
| a6de0 | 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 3c 6c 69 3e 3c 61 | href="#max">@max</a></li>.<li><a |
| a6e00 | 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 3c 2f 6c 69 | .href="#Vectors">Vectors</a></li |
| a6e20 | 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 77 | >.</ul>................<h3.id="w |
| a6e40 | 61 73 6d 4d 65 6d 6f 72 79 53 69 7a 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 77 61 73 | asmMemorySize"><a.href="#toc-was |
| a6e60 | 6d 4d 65 6d 6f 72 79 53 69 7a 65 22 3e 40 77 61 73 6d 4d 65 6d 6f 72 79 53 69 7a 65 3c 2f 61 3e | mMemorySize">@wasmMemorySize</a> |
| a6e80 | 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 77 61 73 6d 4d 65 6d 6f 72 | .<a.class="hdr".href="#wasmMemor |
| a6ea0 | 79 53 69 7a 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c | ySize">..</a></h3>........<pre>< |
| a6ec0 | 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">@ |
| a6ee0 | 77 61 73 6d 4d 65 6d 6f 72 79 53 69 7a 65 3c 2f 73 70 61 6e 3e 28 69 6e 64 65 78 3a 20 3c 73 70 | wasmMemorySize</span>(index:.<sp |
| a6f00 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 29 20 | an.class="tok-type">u32</span>). |
| a6f20 | 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 |
| a6f40 | 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>...... |
| a6f60 | 20 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 72 65 74 75 72 6e 73 20 74 68 65 20 73 69 7a 65 20 | .This.function.returns.the.size. |
| a6f80 | 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 79 | of.the.Wasm.memory.identified.by |
| a6fa0 | 20 3c 63 6f 64 65 3e 69 6e 64 65 78 3c 2f 63 6f 64 65 3e 20 61 73 0a 20 20 20 20 20 20 61 6e 20 | .<code>index</code>.as.......an. |
| a6fc0 | 75 6e 73 69 67 6e 65 64 20 76 61 6c 75 65 20 69 6e 20 75 6e 69 74 73 20 6f 66 20 57 61 73 6d 20 | unsigned.value.in.units.of.Wasm. |
| a6fe0 | 70 61 67 65 73 2e 20 4e 6f 74 65 20 74 68 61 74 20 65 61 63 68 20 57 61 73 6d 20 70 61 67 65 20 | pages..Note.that.each.Wasm.page. |
| a7000 | 69 73 20 36 34 4b 42 20 69 6e 20 73 69 7a 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 | is.64KB.in.size........</p>..... |
| a7020 | 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 69 73 20 61 20 6c | ..<p>.......This.function.is.a.l |
| a7040 | 6f 77 20 6c 65 76 65 6c 20 69 6e 74 72 69 6e 73 69 63 20 77 69 74 68 20 6e 6f 20 73 61 66 65 74 | ow.level.intrinsic.with.no.safet |
| a7060 | 79 20 6d 65 63 68 61 6e 69 73 6d 73 20 75 73 75 61 6c 6c 79 20 75 73 65 66 75 6c 20 66 6f 72 20 | y.mechanisms.usually.useful.for. |
| a7080 | 61 6c 6c 6f 63 61 74 6f 72 0a 20 20 20 20 20 20 64 65 73 69 67 6e 65 72 73 20 74 61 72 67 65 74 | allocator.......designers.target |
| a70a0 | 69 6e 67 20 57 61 73 6d 2e 20 53 6f 20 75 6e 6c 65 73 73 20 79 6f 75 20 61 72 65 20 77 72 69 74 | ing.Wasm..So.unless.you.are.writ |
| a70c0 | 69 6e 67 20 61 20 6e 65 77 20 61 6c 6c 6f 63 61 74 6f 72 20 66 72 6f 6d 20 73 63 72 61 74 63 68 | ing.a.new.allocator.from.scratch |
| a70e0 | 2c 20 79 6f 75 20 73 68 6f 75 6c 64 20 75 73 65 0a 20 20 20 20 20 20 73 6f 6d 65 74 68 69 6e 67 | ,.you.should.use.......something |
| a7100 | 20 6c 69 6b 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 | .like.<code><span.class="tok-bui |
| a7120 | 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 |
| a7140 | 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 |
| a7160 | 3e 29 2e 68 65 61 70 2e 57 61 73 6d 50 61 67 65 41 6c 6c 6f 63 61 74 6f 72 3c 2f 63 6f 64 65 3e | >).heap.WasmPageAllocator</code> |
| a7180 | 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:< |
| a71a0 | 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 77 61 73 6d 4d 65 6d 6f 72 79 | /p><ul>.<li><a.href="#wasmMemory |
| a71c0 | 47 72 6f 77 22 3e 40 77 61 73 6d 4d 65 6d 6f 72 79 47 72 6f 77 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c | Grow">@wasmMemoryGrow</a></li>.< |
| a71e0 | 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 77 61 73 6d | /ul>................<h3.id="wasm |
| a7200 | 4d 65 6d 6f 72 79 47 72 6f 77 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 77 61 73 6d 4d 65 | MemoryGrow"><a.href="#toc-wasmMe |
| a7220 | 6d 6f 72 79 47 72 6f 77 22 3e 40 77 61 73 6d 4d 65 6d 6f 72 79 47 72 6f 77 3c 2f 61 3e 20 3c 61 | moryGrow">@wasmMemoryGrow</a>.<a |
| a7240 | 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 77 61 73 6d 4d 65 6d 6f 72 79 47 72 | .class="hdr".href="#wasmMemoryGr |
| a7260 | 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 64 | ow">..</a></h3>........<pre><cod |
| a7280 | 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 61 73 | e><span.class="tok-builtin">@was |
| a72a0 | 6d 4d 65 6d 6f 72 79 47 72 6f 77 3c 2f 73 70 61 6e 3e 28 69 6e 64 65 78 3a 20 3c 73 70 61 6e 20 | mMemoryGrow</span>(index:.<span. |
| a72c0 | 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 64 65 6c | class="tok-type">u32</span>,.del |
| a72e0 | 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 73 69 7a 65 | ta:.<span.class="tok-type">usize |
| a7300 | 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"> |
| a7320 | 69 73 69 7a 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 | isize</span></code></pre>....... |
| a7340 | 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 69 6e 63 72 65 61 73 65 | <p>.......This.function.increase |
| a7360 | 73 20 74 68 65 20 73 69 7a 65 20 6f 66 20 74 68 65 20 57 61 73 6d 20 6d 65 6d 6f 72 79 20 69 64 | s.the.size.of.the.Wasm.memory.id |
| a7380 | 65 6e 74 69 66 69 65 64 20 62 79 20 3c 63 6f 64 65 3e 69 6e 64 65 78 3c 2f 63 6f 64 65 3e 20 62 | entified.by.<code>index</code>.b |
| a73a0 | 79 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 64 65 6c 74 61 3c 2f 63 6f 64 65 3e 20 69 6e 20 75 6e | y.......<code>delta</code>.in.un |
| a73c0 | 69 74 73 20 6f 66 20 75 6e 73 69 67 6e 65 64 20 6e 75 6d 62 65 72 20 6f 66 20 57 61 73 6d 20 70 | its.of.unsigned.number.of.Wasm.p |
| a73e0 | 61 67 65 73 2e 20 4e 6f 74 65 20 74 68 61 74 20 65 61 63 68 20 57 61 73 6d 20 70 61 67 65 0a 20 | ages..Note.that.each.Wasm.page.. |
| a7400 | 20 20 20 20 20 69 73 20 36 34 4b 42 20 69 6e 20 73 69 7a 65 2e 20 4f 6e 20 73 75 63 63 65 73 73 | .....is.64KB.in.size..On.success |
| a7420 | 2c 20 72 65 74 75 72 6e 73 20 70 72 65 76 69 6f 75 73 20 6d 65 6d 6f 72 79 20 73 69 7a 65 3b 20 | ,.returns.previous.memory.size;. |
| a7440 | 6f 6e 20 66 61 69 6c 75 72 65 2c 20 69 66 20 74 68 65 20 61 6c 6c 6f 63 61 74 69 6f 6e 20 66 61 | on.failure,.if.the.allocation.fa |
| a7460 | 69 6c 73 2c 0a 20 20 20 20 20 20 72 65 74 75 72 6e 73 20 2d 31 2e 0a 20 20 20 20 20 20 3c 2f 70 | ils,.......returns.-1........</p |
| a7480 | 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. |
| a74a0 | 69 73 20 61 20 6c 6f 77 20 6c 65 76 65 6c 20 69 6e 74 72 69 6e 73 69 63 20 77 69 74 68 20 6e 6f | is.a.low.level.intrinsic.with.no |
| a74c0 | 20 73 61 66 65 74 79 20 6d 65 63 68 61 6e 69 73 6d 73 20 75 73 75 61 6c 6c 79 20 75 73 65 66 75 | .safety.mechanisms.usually.usefu |
| a74e0 | 6c 20 66 6f 72 20 61 6c 6c 6f 63 61 74 6f 72 0a 20 20 20 20 20 20 64 65 73 69 67 6e 65 72 73 20 | l.for.allocator.......designers. |
| a7500 | 74 61 72 67 65 74 69 6e 67 20 57 61 73 6d 2e 20 53 6f 20 75 6e 6c 65 73 73 20 79 6f 75 20 61 72 | targeting.Wasm..So.unless.you.ar |
| a7520 | 65 20 77 72 69 74 69 6e 67 20 61 20 6e 65 77 20 61 6c 6c 6f 63 61 74 6f 72 20 66 72 6f 6d 20 73 | e.writing.a.new.allocator.from.s |
| a7540 | 63 72 61 74 63 68 2c 20 79 6f 75 20 73 68 6f 75 6c 64 20 75 73 65 0a 20 20 20 20 20 20 73 6f 6d | cratch,.you.should.use.......som |
| a7560 | 65 74 68 69 6e 67 20 6c 69 6b 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ething.like.<code><span.class="t |
| a7580 | 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 |
| a75a0 | 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" |
| a75c0 | 3c 2f 73 70 61 6e 3e 29 2e 68 65 61 70 2e 57 61 73 6d 50 61 67 65 41 6c 6c 6f 63 61 74 6f 72 3c | </span>).heap.WasmPageAllocator< |
| a75e0 | 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 | /code>........</p>.......<figure |
| a7600 | 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 |
| a7620 | 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 77 61 73 6d 4d 65 6d 6f 72 79 47 | te.class="file">test_wasmMemoryG |
| a7640 | 72 6f 77 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 | row_builtin.zig</cite></figcapti |
| a7660 | 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 |
| a7680 | 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 |
| a76a0 | 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>(< |
| a76c0 | 73 70 61 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 |
| a76e0 | 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 |
| a7700 | 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6e 61 74 69 76 65 5f 61 72 63 68 20 3d 20 3c 73 | w">const</span>.native_arch.=.<s |
| a7720 | 70 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< |
| a7740 | 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 |
| a7760 | 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 74 61 72 67 65 74 2e | ot;builtin"</span>).target. |
| a7780 | 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 22 3e 63 | cpu.arch;.<span.class="tok-kw">c |
| a77a0 | 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 |
| a77c0 | 2e 65 78 70 65 63 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 | .expect;..<span.class="tok-kw">t |
| a77e0 | 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" |
| a7800 | 3e 26 71 75 6f 74 3b 40 77 61 73 6d 4d 65 6d 6f 72 79 47 72 6f 77 26 71 75 6f 74 3b 3c 2f 73 70 | >"@wasmMemoryGrow"</sp |
| a7820 | 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 | an>.{.....<span.class="tok-kw">i |
| a7840 | 66 3c 2f 73 70 61 6e 3e 20 28 6e 61 74 69 76 65 5f 61 72 63 68 20 21 3d 20 2e 77 61 73 6d 33 32 | f</span>.(native_arch.!=..wasm32 |
| a7860 | 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 | ).<span.class="tok-kw">return</s |
| a7880 | 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c | pan>.<span.class="tok-kw">error< |
| a78a0 | 2f 73 70 61 6e 3e 2e 53 6b 69 70 5a 69 67 54 65 73 74 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 | /span>.SkipZigTest;......<span.c |
| a78c0 | 6c 61 73 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 65 76 20 | lass="tok-kw">const</span>.prev. |
| a78e0 | 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 77 61 73 | =.<span.class="tok-builtin">@was |
| a7900 | 6d 4d 65 6d 6f 72 79 53 69 7a 65 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | mMemorySize</span>(<span.class=" |
| a7920 | 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 61 6e | tok-number">0</span>);.....<span |
| a7940 | 20 63 6c 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 |
| a7960 | 74 28 70 72 65 76 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 | t(prev.==.<span.class="tok-built |
| a7980 | 69 6e 22 3e 40 77 61 73 6d 4d 65 6d 6f 72 79 47 72 6f 77 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e | in">@wasmMemoryGrow</span>(<span |
| a79a0 | 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 73 | .class="tok-number">0</span>,.<s |
| a79c0 | 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>) |
| a79e0 | 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< |
| a7a00 | 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 70 72 65 76 20 2b 20 3c 73 70 61 6e 20 63 6c 61 73 73 | /span>.expect(prev.+.<span.class |
| a7a20 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 20 3d 3d 20 3c 73 70 61 6e 20 | ="tok-number">1</span>.==.<span. |
| a7a40 | 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 53 | class="tok-builtin">@wasmMemoryS |
| a7a60 | 69 7a 65 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | ize</span>(<span.class="tok-numb |
| a7a80 | 65 72 22 3e 30 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 | er">0</span>));.}</code></pre></ |
| a7aa0 | 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 |
| a7ac0 | 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>< |
| a7ae0 | 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 |
| a7b00 | 61 73 6d 4d 65 6d 6f 72 79 47 72 6f 77 5f 62 75 69 6c 74 69 6e 2e 7a 69 67 3c 2f 6b 62 64 3e 0a | asmMemoryGrow_builtin.zig</kbd>. |
| a7b20 | 31 2f 31 20 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 6e 2e | 1/1.test_wasmMemoryGrow_builtin. |
| a7b40 | 74 65 73 74 2e 40 77 61 73 6d 4d 65 6d 6f 72 79 47 72 6f 77 2e 2e 2e 53 4b 49 50 0a 30 20 70 61 | test.@wasmMemoryGrow...SKIP.0.pa |
| a7b60 | 73 73 65 64 3b 20 31 20 73 6b 69 70 70 65 64 3b 20 30 20 66 61 69 6c 65 64 2e 0a 3c 2f 73 61 6d | ssed;.1.skipped;.0.failed..</sam |
| a7b80 | 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. |
| a7ba0 | 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 77 61 73 6d | also:</p><ul>.<li><a.href="#wasm |
| a7bc0 | 4d 65 6d 6f 72 79 53 69 7a 65 22 3e 40 77 61 73 6d 4d 65 6d 6f 72 79 53 69 7a 65 3c 2f 61 3e 3c | MemorySize">@wasmMemorySize</a>< |
| a7be0 | 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 |
| a7c00 | 3d 22 6d 6f 64 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 6d 6f 64 22 3e 40 6d 6f 64 3c 2f | ="mod"><a.href="#toc-mod">@mod</ |
| a7c20 | 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 6f 64 22 3e c2 a7 | a>.<a.class="hdr".href="#mod">.. |
| a7c40 | 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 |
| a7c60 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 6d 6f 64 3c 2f 73 70 61 6e | n.class="tok-builtin">@mod</span |
| a7c80 | 3e 28 6e 75 6d 65 72 61 74 6f 72 3a 20 54 2c 20 64 65 6e 6f 6d 69 6e 61 74 6f 72 3a 20 54 29 20 | >(numerator:.T,.denominator:.T). |
| a7ca0 | 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 4d | T</code></pre>.......<p>.......M |
| a7cc0 | 6f 64 75 6c 75 73 20 64 69 76 69 73 69 6f 6e 2e 20 46 6f 72 20 75 6e 73 69 67 6e 65 64 20 69 6e | odulus.division..For.unsigned.in |
| a7ce0 | 74 65 67 65 72 73 20 74 68 69 73 20 69 73 20 74 68 65 20 73 61 6d 65 20 61 73 0a 20 20 20 20 20 | tegers.this.is.the.same.as...... |
| a7d00 | 20 3c 63 6f 64 65 3e 6e 75 6d 65 72 61 74 6f 72 20 25 20 64 65 6e 6f 6d 69 6e 61 74 6f 72 3c 2f | .<code>numerator.%.denominator</ |
| a7d20 | 63 6f 64 65 3e 2e 20 43 61 6c 6c 65 72 20 67 75 61 72 61 6e 74 65 65 73 20 3c 63 6f 64 65 3e 64 | code>..Caller.guarantees.<code>d |
| a7d40 | 65 6e 6f 6d 69 6e 61 74 6f 72 20 21 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | enominator.!=.<span.class="tok-n |
| a7d60 | 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 6f 74 68 65 72 77 69 73 | umber">0</span></code>,.otherwis |
| a7d80 | 65 20 74 68 65 0a 20 20 20 20 20 20 6f 70 65 72 61 74 69 6f 6e 20 77 69 6c 6c 20 72 65 73 75 6c | e.the.......operation.will.resul |
| a7da0 | 74 20 69 6e 20 61 20 3c 61 20 68 72 65 66 3d 22 23 52 65 6d 61 69 6e 64 65 72 2d 44 69 76 69 73 | t.in.a.<a.href="#Remainder-Divis |
| a7dc0 | 69 6f 6e 2d 62 79 2d 5a 65 72 6f 22 3e 52 65 6d 61 69 6e 64 65 72 20 44 69 76 69 73 69 6f 6e 20 | ion-by-Zero">Remainder.Division. |
| a7de0 | 62 79 20 5a 65 72 6f 3c 2f 61 3e 20 77 68 65 6e 20 72 75 6e 74 69 6d 65 20 73 61 66 65 74 79 20 | by.Zero</a>.when.runtime.safety. |
| a7e00 | 63 68 65 63 6b 73 20 61 72 65 20 65 6e 61 62 6c 65 64 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 | checks.are.enabled........</p>.. |
| a7e20 | 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 3e 3c 73 | .....<ul>...........<li><code><s |
| a7e40 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 6d 6f 64 3c 2f 73 70 | pan.class="tok-builtin">@mod</sp |
| a7e60 | 61 6e 3e 28 2d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c | an>(-<span.class="tok-number">5< |
| a7e80 | 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" |
| a7ea0 | 3e 33 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | >3</span>).==.<span.class="tok-n |
| a7ec0 | 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 | umber">1</span></code></li>..... |
| a7ee0 | 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ......<li><code>(<span.class="to |
| a7f00 | 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 28 61 2c 20 62 | k-builtin">@divFloor</span>(a,.b |
| a7f20 | 29 20 2a 20 62 29 20 2b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 | ).*.b).+.<span.class="tok-builti |
| a7f40 | 6e 22 3e 40 6d 6f 64 3c 2f 73 70 61 6e 3e 28 61 2c 20 62 29 20 3d 3d 20 61 3c 2f 63 6f 64 65 3e | n">@mod</span>(a,.b).==.a</code> |
| a7f60 | 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c 70 3e 46 6f 72 20 61 | </li>.......</ul>.......<p>For.a |
| a7f80 | 20 66 75 6e 63 74 69 6f 6e 20 74 68 61 74 20 72 65 74 75 72 6e 73 20 61 6e 20 65 72 72 6f 72 20 | .function.that.returns.an.error. |
| a7fa0 | 63 6f 64 65 2c 20 73 65 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | code,.see.<code><span.class="tok |
| a7fc0 | 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 |
| a7fe0 | 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"</ |
| a8000 | 73 70 61 6e 3e 29 2e 6d 61 74 68 2e 6d 6f 64 3c 2f 63 6f 64 65 3e 2e 3c 2f 70 3e 0a 20 20 20 20 | span>).math.mod</code>.</p>..... |
| a8020 | 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 |
| a8040 | 65 66 3d 22 23 72 65 6d 22 3e 40 72 65 6d 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 | ef="#rem">@rem</a></li>.</ul>... |
| a8060 | 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 6d 75 6c 57 69 74 68 4f 76 65 72 | .............<h3.id="mulWithOver |
| a8080 | 66 6c 6f 77 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 6d 75 6c 57 69 74 68 4f 76 65 72 66 | flow"><a.href="#toc-mulWithOverf |
| a80a0 | 6c 6f 77 22 3e 40 6d 75 6c 57 69 74 68 4f 76 65 72 66 6c 6f 77 3c 2f 61 3e 20 3c 61 20 63 6c 61 | low">@mulWithOverflow</a>.<a.cla |
| a80c0 | 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 6d 75 6c 57 69 74 68 4f 76 65 72 66 6c 6f 77 22 | ss="hdr".href="#mulWithOverflow" |
| a80e0 | 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>< |
| a8100 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 6d 75 6c 57 69 74 | span.class="tok-builtin">@mulWit |
| a8120 | 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 61 73 73 3d | hOverflow</span>(a:.<span.class= |
| a8140 | 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 3c 73 70 61 | "tok-kw">anytype</span>,.b:.<spa |
| a8160 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 79 74 79 70 65 3c 2f 73 70 61 6e 3e 29 | n.class="tok-kw">anytype</span>) |
| a8180 | 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 |
| a81a0 | 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 69 6e 22 3e | an>.{.<span.class="tok-builtin"> |
| a81c0 | 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 63 6c 61 73 | @TypeOf</span>(a,.b),.<span.clas |
| a81e0 | 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 64 65 3e 3c | s="tok-type">u1</span>.}</code>< |
| a8200 | 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 50 65 72 66 6f 72 6d 73 20 3c | /pre>.......<p>.......Performs.< |
| a8220 | 63 6f 64 65 3e 61 20 2a 20 62 3c 2f 63 6f 64 65 3e 20 61 6e 64 20 72 65 74 75 72 6e 73 20 61 20 | code>a.*.b</code>.and.returns.a. |
| a8240 | 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 70 6f 73 73 | tuple.with.the.result.and.a.poss |
| a8260 | 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 3e 0a 20 20 | ible.overflow.bit........</p>... |
| a8280 | 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 70 61 6e 69 63 22 3e 3c 61 20 68 72 | ............<h3.id="panic"><a.hr |
| a82a0 | 65 66 3d 22 23 74 6f 63 2d 70 61 6e 69 63 22 3e 40 70 61 6e 69 63 3c 2f 61 3e 20 3c 61 20 63 6c | ef="#toc-panic">@panic</a>.<a.cl |
| a82c0 | 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 70 61 6e 69 63 22 3e c2 a7 3c 2f 61 3e 3c 2f | ass="hdr".href="#panic">..</a></ |
| a82e0 | 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 |
| a8300 | 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 70 61 6e 69 63 3c 2f 73 70 61 6e 3e 28 6d 65 | s="tok-builtin">@panic</span>(me |
| a8320 | 73 73 61 67 65 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f | ssage:.[]<span.class="tok-kw">co |
| a8340 | 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 |
| a8360 | 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | ">u8</span>).<span.class="tok-ty |
| a8380 | 70 65 22 3e 6e 6f 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e | pe">noreturn</span></code></pre> |
| a83a0 | 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 6e 76 6f 6b 65 73 20 74 68 65 20 70 61 6e | .......<p>.......Invokes.the.pan |
| a83c0 | 69 63 20 68 61 6e 64 6c 65 72 20 66 75 6e 63 74 69 6f 6e 2e 20 42 79 20 64 65 66 61 75 6c 74 20 | ic.handler.function..By.default. |
| a83e0 | 74 68 65 20 70 61 6e 69 63 20 68 61 6e 64 6c 65 72 20 66 75 6e 63 74 69 6f 6e 0a 20 20 20 20 20 | the.panic.handler.function...... |
| a8400 | 20 63 61 6c 6c 73 20 74 68 65 20 70 75 62 6c 69 63 20 3c 63 6f 64 65 3e 70 61 6e 69 63 3c 2f 63 | .calls.the.public.<code>panic</c |
| a8420 | 6f 64 65 3e 20 66 75 6e 63 74 69 6f 6e 20 65 78 70 6f 73 65 64 20 69 6e 20 74 68 65 20 72 6f 6f | ode>.function.exposed.in.the.roo |
| a8440 | 74 20 73 6f 75 72 63 65 20 66 69 6c 65 2c 20 6f 72 0a 20 20 20 20 20 20 69 66 20 74 68 65 72 65 | t.source.file,.or.......if.there |
| a8460 | 20 69 73 20 6e 6f 74 20 6f 6e 65 20 73 70 65 63 69 66 69 65 64 2c 20 74 68 65 20 3c 63 6f 64 65 | .is.not.one.specified,.the.<code |
| a8480 | 3e 73 74 64 2e 62 75 69 6c 74 69 6e 2e 64 65 66 61 75 6c 74 5f 70 61 6e 69 63 3c 2f 63 6f 64 65 | >std.builtin.default_panic</code |
| a84a0 | 3e 0a 20 20 20 20 20 20 66 75 6e 63 74 69 6f 6e 20 66 72 6f 6d 20 3c 63 6f 64 65 3e 73 74 64 2f | >.......function.from.<code>std/ |
| a84c0 | 62 75 69 6c 74 69 6e 2e 7a 69 67 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 | builtin.zig</code>........</p>.. |
| a84e0 | 20 20 20 20 20 3c 70 3e 47 65 6e 65 72 61 6c 6c 79 20 69 74 20 69 73 20 62 65 74 74 65 72 20 74 | .....<p>Generally.it.is.better.t |
| a8500 | 6f 20 75 73 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 | o.use.<code><span.class="tok-bui |
| a8520 | 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 |
| a8540 | 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 |
| a8560 | 3e 29 2e 64 65 62 75 67 2e 70 61 6e 69 63 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 20 20 20 | >).debug.panic</code>........... |
| a8580 | 20 48 6f 77 65 76 65 72 2c 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | .However,.<code><span.class="tok |
| a85a0 | 2d 62 75 69 6c 74 69 6e 22 3e 40 70 61 6e 69 63 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 63 | -builtin">@panic</span></code>.c |
| a85c0 | 61 6e 20 62 65 20 75 73 65 66 75 6c 20 66 6f 72 20 32 20 73 63 65 6e 61 72 69 6f 73 3a 0a 20 20 | an.be.useful.for.2.scenarios:... |
| a85e0 | 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e | ....</p>.......<ul>.........<li> |
| a8600 | 46 72 6f 6d 20 6c 69 62 72 61 72 79 20 63 6f 64 65 2c 20 63 61 6c 6c 69 6e 67 20 74 68 65 20 70 | From.library.code,.calling.the.p |
| a8620 | 72 6f 67 72 61 6d 6d 65 72 27 73 20 70 61 6e 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 66 20 74 68 | rogrammer's.panic.function.if.th |
| a8640 | 65 79 20 65 78 70 6f 73 65 64 20 6f 6e 65 20 69 6e 20 74 68 65 20 72 6f 6f 74 20 73 6f 75 72 63 | ey.exposed.one.in.the.root.sourc |
| a8660 | 65 20 66 69 6c 65 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 57 68 65 6e 20 6d 69 | e.file.</li>.........<li>When.mi |
| a8680 | 78 69 6e 67 20 43 20 61 6e 64 20 5a 69 67 20 63 6f 64 65 2c 20 63 61 6c 6c 69 6e 67 20 74 68 65 | xing.C.and.Zig.code,.calling.the |
| a86a0 | 20 63 61 6e 6f 6e 69 63 61 6c 20 70 61 6e 69 63 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 20 | .canonical.panic.implementation. |
| a86c0 | 61 63 72 6f 73 73 20 6d 75 6c 74 69 70 6c 65 20 2e 6f 20 66 69 6c 65 73 2e 3c 2f 6c 69 3e 0a 20 | across.multiple..o.files.</li>.. |
| a86e0 | 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 | .....</ul>.......<p>See.also:</p |
| a8700 | 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 50 61 6e 69 63 2d 48 61 6e 64 6c 65 | ><ul>.<li><a.href="#Panic-Handle |
| a8720 | 72 22 3e 50 61 6e 69 63 20 48 61 6e 64 6c 65 72 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a | r">Panic.Handler</a></li>.</ul>. |
| a8740 | 0a 20 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 | ...............<h3.id="popCount" |
| a8760 | 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 70 6f 70 43 6f 75 6e 74 22 3e 40 70 6f 70 43 6f 75 | ><a.href="#toc-popCount">@popCou |
| a8780 | 6e 74 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 70 6f 70 | nt</a>.<a.class="hdr".href="#pop |
| a87a0 | 43 6f 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 | Count">..</a></h3>........<pre>< |
| a87c0 | 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">@ |
| a87e0 | 70 6f 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 | popCount</span>(operand:.<span.c |
| a8800 | 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 |
| a8820 | 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 |
| a8840 | 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 3c 63 6f 64 65 3e 3c 73 | ></code></pre>.......<p><code><s |
| a8860 | 70 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< |
| a8880 | 2f 73 70 61 6e 3e 28 6f 70 65 72 61 6e 64 29 3c 2f 63 6f 64 65 3e 20 6d 75 73 74 20 62 65 20 61 | /span>(operand)</code>.must.be.a |
| a88a0 | 6e 20 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 | n.integer.type.</p>.......<p><co |
| a88c0 | 64 65 3e 6f 70 65 72 61 6e 64 3c 2f 63 6f 64 65 3e 20 6d 61 79 20 62 65 20 61 6e 20 3c 61 20 68 | de>operand</code>.may.be.an.<a.h |
| a88e0 | 72 65 66 3d 22 23 49 6e 74 65 67 65 72 73 22 3e 69 6e 74 65 67 65 72 3c 2f 61 3e 20 6f 72 20 3c | ref="#Integers">integer</a>.or.< |
| a8900 | 61 20 68 72 65 66 3d 22 23 56 65 63 74 6f 72 73 22 3e 76 65 63 74 6f 72 3c 2f 61 3e 2e 3c 2f 70 | a.href="#Vectors">vector</a>.</p |
| a8920 | 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 43 6f 75 6e 74 73 20 74 68 65 20 6e 75 6d | >.......<p>.......Counts.the.num |
| a8940 | 62 65 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 | ber.of.bits.set.in.an.integer.-. |
| a8960 | 22 70 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 | "population.count"........</p>.. |
| a8980 | 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 20 72 65 74 75 72 6e 20 74 79 70 65 20 69 | .....<p>.......The.return.type.i |
| a89a0 | 73 20 61 6e 20 75 6e 73 69 67 6e 65 64 20 69 6e 74 65 67 65 72 20 6f 72 20 76 65 63 74 6f 72 20 | s.an.unsigned.integer.or.vector. |
| a89c0 | 6f 66 20 75 6e 73 69 67 6e 65 64 20 69 6e 74 65 67 65 72 73 20 77 69 74 68 20 74 68 65 20 6d 69 | of.unsigned.integers.with.the.mi |
| a89e0 | 6e 69 6d 75 6d 20 6e 75 6d 62 65 72 0a 20 20 20 20 20 20 6f 66 20 62 69 74 73 20 74 68 61 74 20 | nimum.number.......of.bits.that. |
| a8a00 | 63 61 6e 20 72 65 70 72 65 73 65 6e 74 20 74 68 65 20 62 69 74 20 63 6f 75 6e 74 20 6f 66 20 74 | can.represent.the.bit.count.of.t |
| a8a20 | 68 65 20 69 6e 74 65 67 65 72 20 74 79 70 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 | he.integer.type........</p>..... |
| a8a40 | 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 |
| a8a60 | 65 66 3d 22 23 63 74 7a 22 3e 40 63 74 7a 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 | ef="#ctz">@ctz</a></li>.<li><a.h |
| a8a80 | 72 65 66 3d 22 23 63 6c 7a 22 3e 40 63 6c 7a 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a | ref="#clz">@clz</a></li>.</ul>.. |
| a8aa0 | 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 70 72 65 66 65 74 63 68 22 3e | ..............<h3.id="prefetch"> |
| a8ac0 | 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 70 72 65 66 65 74 63 68 22 3e 40 70 72 65 66 65 74 63 | <a.href="#toc-prefetch">@prefetc |
| a8ae0 | 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 70 72 65 66 | h</a>.<a.class="hdr".href="#pref |
| a8b00 | 65 74 63 68 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 | etch">..</a></h3>........<pre><c |
| a8b20 | 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 70 | ode><span.class="tok-builtin">@p |
| a8b40 | 72 65 66 65 74 63 68 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 | refetch</span>(ptr:.<span.class= |
| a8b60 | 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 3c 73 70 61 6e 20 63 | "tok-kw">anytype</span>,.<span.c |
| a8b80 | 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 70 | lass="tok-kw">comptime</span>.op |
| a8ba0 | 74 69 6f 6e 73 3a 20 50 72 65 66 65 74 63 68 4f 70 74 69 6f 6e 73 29 20 3c 73 70 61 6e 20 63 6c | tions:.PrefetchOptions).<span.cl |
| a8bc0 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 | ass="tok-type">void</span></code |
| a8be0 | 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 62 75 69 | ></pre>.......<p>.......This.bui |
| a8c00 | 6c 74 69 6e 20 74 65 6c 6c 73 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 20 74 6f 20 65 6d 69 74 20 | ltin.tells.the.compiler.to.emit. |
| a8c20 | 61 20 70 72 65 66 65 74 63 68 20 69 6e 73 74 72 75 63 74 69 6f 6e 20 69 66 20 73 75 70 70 6f 72 | a.prefetch.instruction.if.suppor |
| a8c40 | 74 65 64 20 62 79 20 74 68 65 0a 20 20 20 20 20 20 74 61 72 67 65 74 20 43 50 55 2e 20 49 66 20 | ted.by.the.......target.CPU..If. |
| a8c60 | 74 68 65 20 74 61 72 67 65 74 20 43 50 55 20 64 6f 65 73 20 6e 6f 74 20 73 75 70 70 6f 72 74 20 | the.target.CPU.does.not.support. |
| a8c80 | 74 68 65 20 72 65 71 75 65 73 74 65 64 20 70 72 65 66 65 74 63 68 20 69 6e 73 74 72 75 63 74 69 | the.requested.prefetch.instructi |
| a8ca0 | 6f 6e 2c 0a 20 20 20 20 20 20 74 68 69 73 20 62 75 69 6c 74 69 6e 20 69 73 20 61 20 6e 6f 2d 6f | on,.......this.builtin.is.a.no-o |
| a8cc0 | 70 2e 20 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 68 61 73 20 6e 6f 20 65 66 66 65 63 74 20 6f | p..This.function.has.no.effect.o |
| a8ce0 | 6e 20 74 68 65 20 62 65 68 61 76 69 6f 72 20 6f 66 20 74 68 65 20 70 72 6f 67 72 61 6d 2c 0a 20 | n.the.behavior.of.the.program,.. |
| a8d00 | 20 20 20 20 20 6f 6e 6c 79 20 6f 6e 20 74 68 65 20 70 65 72 66 6f 72 6d 61 6e 63 65 20 63 68 61 | .....only.on.the.performance.cha |
| a8d20 | 72 61 63 74 65 72 69 73 74 69 63 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c | racteristics........</p>.......< |
| a8d40 | 70 3e 0a 20 20 20 20 20 20 54 68 65 20 3c 63 6f 64 65 3e 70 74 72 3c 2f 63 6f 64 65 3e 20 61 72 | p>.......The.<code>ptr</code>.ar |
| a8d60 | 67 75 6d 65 6e 74 20 6d 61 79 20 62 65 20 61 6e 79 20 70 6f 69 6e 74 65 72 20 74 79 70 65 20 61 | gument.may.be.any.pointer.type.a |
| a8d80 | 6e 64 20 64 65 74 65 72 6d 69 6e 65 73 20 74 68 65 20 6d 65 6d 6f 72 79 0a 20 20 20 20 20 20 61 | nd.determines.the.memory.......a |
| a8da0 | 64 64 72 65 73 73 20 74 6f 20 70 72 65 66 65 74 63 68 2e 20 54 68 69 73 20 66 75 6e 63 74 69 6f | ddress.to.prefetch..This.functio |
| a8dc0 | 6e 20 64 6f 65 73 20 6e 6f 74 20 64 65 72 65 66 65 72 65 6e 63 65 20 74 68 65 20 70 6f 69 6e 74 | n.does.not.dereference.the.point |
| a8de0 | 65 72 2c 20 69 74 20 69 73 20 70 65 72 66 65 63 74 6c 79 20 6c 65 67 61 6c 0a 20 20 20 20 20 20 | er,.it.is.perfectly.legal....... |
| a8e00 | 74 6f 20 70 61 73 73 20 61 20 70 6f 69 6e 74 65 72 20 74 6f 20 69 6e 76 61 6c 69 64 20 6d 65 6d | to.pass.a.pointer.to.invalid.mem |
| a8e20 | 6f 72 79 20 74 6f 20 74 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 61 6e 64 20 6e 6f 20 49 6c 6c 65 | ory.to.this.function.and.no.Ille |
| a8e40 | 67 61 6c 20 42 65 68 61 76 69 6f 72 20 77 69 6c 6c 20 72 65 73 75 6c 74 2e 0a 20 20 20 20 20 20 | gal.Behavior.will.result........ |
| a8e60 | 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 3c 63 6f 64 65 3e 50 72 65 66 65 74 63 68 4f 70 74 69 | </p>.......<p><code>PrefetchOpti |
| a8e80 | 6f 6e 73 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 | ons</code>.can.be.found.with.<co |
| a8ea0 | 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 |
| a8ec0 | 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 |
| a8ee0 | 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 |
| a8f00 | 6e 2e 50 72 65 66 65 74 63 68 4f 70 74 69 6f 6e 73 3c 2f 63 6f 64 65 3e 2e 3c 2f 70 3e 0a 20 20 | n.PrefetchOptions</code>.</p>... |
| a8f20 | 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 70 74 72 43 61 73 74 22 3e 3c 61 20 | ............<h3.id="ptrCast"><a. |
| a8f40 | 68 72 65 66 3d 22 23 74 6f 63 2d 70 74 72 43 61 73 74 22 3e 40 70 74 72 43 61 73 74 3c 2f 61 3e | href="#toc-ptrCast">@ptrCast</a> |
| a8f60 | 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 70 74 72 43 61 73 74 22 3e | .<a.class="hdr".href="#ptrCast"> |
| a8f80 | 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 |
| a8fa0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 70 74 72 43 61 73 74 | pan.class="tok-builtin">@ptrCast |
| a8fc0 | 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- |
| a8fe0 | 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= |
| a9000 | 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></ |
| a9020 | 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 43 6f 6e 76 65 72 74 73 20 61 20 | pre>.......<p>.......Converts.a. |
| a9040 | 70 6f 69 6e 74 65 72 20 6f 66 20 6f 6e 65 20 74 79 70 65 20 74 6f 20 61 20 70 6f 69 6e 74 65 72 | pointer.of.one.type.to.a.pointer |
| a9060 | 20 6f 66 20 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 | .of.another.type..The.return.typ |
| a9080 | 65 20 69 73 20 74 68 65 20 69 6e 66 65 72 72 65 64 20 72 65 73 75 6c 74 20 74 79 70 65 2e 0a 20 | e.is.the.inferred.result.type... |
| a90a0 | 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 3c 61 20 68 72 65 | .....</p>.......<p>.......<a.hre |
| a90c0 | 66 3d 22 23 4f 70 74 69 6f 6e 61 6c 2d 50 6f 69 6e 74 65 72 73 22 3e 4f 70 74 69 6f 6e 61 6c 20 | f="#Optional-Pointers">Optional. |
| a90e0 | 50 6f 69 6e 74 65 72 73 3c 2f 61 3e 20 61 72 65 20 61 6c 6c 6f 77 65 64 2e 20 43 61 73 74 69 6e | Pointers</a>.are.allowed..Castin |
| a9100 | 67 20 61 6e 20 6f 70 74 69 6f 6e 61 6c 20 70 6f 69 6e 74 65 72 20 77 68 69 63 68 20 69 73 20 3c | g.an.optional.pointer.which.is.< |
| a9120 | 61 20 68 72 65 66 3d 22 23 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 61 3e 0a 20 20 20 20 20 20 74 6f | a.href="#null">null</a>.......to |
| a9140 | 20 61 20 6e 6f 6e 2d 6f 70 74 69 6f 6e 61 6c 20 70 6f 69 6e 74 65 72 20 69 6e 76 6f 6b 65 73 20 | .a.non-optional.pointer.invokes. |
| a9160 | 73 61 66 65 74 79 2d 63 68 65 63 6b 65 64 20 3c 61 20 68 72 65 66 3d 22 23 49 6c 6c 65 67 61 6c | safety-checked.<a.href="#Illegal |
| a9180 | 2d 42 65 68 61 76 69 6f 72 22 3e 49 6c 6c 65 67 61 6c 20 42 65 68 61 76 69 6f 72 3c 2f 61 3e 2e | -Behavior">Illegal.Behavior</a>. |
| a91a0 | 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 3c 63 6f 64 | .......</p>.......<p>.......<cod |
| a91c0 | 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 |
| a91e0 | 43 61 73 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 63 61 6e 6e 6f 74 20 62 65 20 75 73 65 | Cast</span></code>.cannot.be.use |
| a9200 | 64 20 66 6f 72 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 | d.for:.......</p>.......<ul>.... |
| a9220 | 20 20 20 20 20 20 20 3c 6c 69 3e 52 65 6d 6f 76 69 6e 67 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 | .......<li>Removing.<code><span. |
| a9240 | 63 6c 61 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 |
| a9260 | 65 3e 20 71 75 61 6c 69 66 69 65 72 2c 20 75 73 65 20 3c 61 20 68 72 65 66 3d 22 23 63 6f 6e 73 | e>.qualifier,.use.<a.href="#cons |
| a9280 | 74 43 61 73 74 22 3e 40 63 6f 6e 73 74 43 61 73 74 3c 2f 61 3e 2e 3c 2f 6c 69 3e 0a 20 20 20 20 | tCast">@constCast</a>.</li>..... |
| a92a0 | 20 20 20 20 20 20 3c 6c 69 3e 52 65 6d 6f 76 69 6e 67 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 | ......<li>Removing.<code><span.c |
| a92c0 | 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 |
| a92e0 | 6f 64 65 3e 20 71 75 61 6c 69 66 69 65 72 2c 20 75 73 65 20 3c 61 20 68 72 65 66 3d 22 23 76 6f | ode>.qualifier,.use.<a.href="#vo |
| a9300 | 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 2e 3c 2f | latileCast">@volatileCast</a>.</ |
| a9320 | 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 43 68 61 6e 67 69 6e 67 20 70 6f 69 6e 74 | li>...........<li>Changing.point |
| a9340 | 65 72 20 61 64 64 72 65 73 73 20 73 70 61 63 65 2c 20 75 73 65 20 3c 61 20 68 72 65 66 3d 22 23 | er.address.space,.use.<a.href="# |
| a9360 | 61 64 64 72 53 70 61 63 65 43 61 73 74 22 3e 40 61 64 64 72 53 70 61 63 65 43 61 73 74 3c 2f 61 | addrSpaceCast">@addrSpaceCast</a |
| a9380 | 3e 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 49 6e 63 72 65 61 73 69 6e 67 | >.</li>...........<li>Increasing |
| a93a0 | 20 70 6f 69 6e 74 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 | .pointer.alignment,.use.<a.href= |
| a93c0 | 22 23 61 6c 69 67 6e 43 61 73 74 22 3e 40 61 6c 69 67 6e 43 61 73 74 3c 2f 61 3e 2e 3c 2f 6c 69 | "#alignCast">@alignCast</a>.</li |
| a93e0 | 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 43 61 73 74 69 6e 67 20 61 20 6e 6f 6e 2d 73 6c | >...........<li>Casting.a.non-sl |
| a9400 | 69 63 65 20 70 6f 69 6e 74 65 72 20 74 6f 20 61 20 73 6c 69 63 65 2c 20 75 73 65 20 73 6c 69 63 | ice.pointer.to.a.slice,.use.slic |
| a9420 | 69 6e 67 20 73 79 6e 74 61 78 20 3c 63 6f 64 65 3e 70 74 72 5b 73 74 61 72 74 2e 2e 65 6e 64 5d | ing.syntax.<code>ptr[start..end] |
| a9440 | 3c 2f 63 6f 64 65 3e 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 | </code>.</li>.......</ul>....... |
| a9460 | 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 70 74 72 46 72 6f 6d 49 6e 74 22 3e 3c 61 20 68 | ........<h3.id="ptrFromInt"><a.h |
| a9480 | 72 65 66 3d 22 23 74 6f 63 2d 70 74 72 46 72 6f 6d 49 6e 74 22 3e 40 70 74 72 46 72 6f 6d 49 6e | ref="#toc-ptrFromInt">@ptrFromIn |
| a94a0 | 74 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 70 74 72 46 | t</a>.<a.class="hdr".href="#ptrF |
| a94c0 | 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 72 65 3e | romInt">..</a></h3>........<pre> |
| a94e0 | 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"> |
| a9500 | 40 70 74 72 46 72 6f 6d 49 6e 74 3c 2f 73 70 61 6e 3e 28 61 64 64 72 65 73 73 3a 20 3c 73 70 61 | @ptrFromInt</span>(address:.<spa |
| a9520 | 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 29 | n.class="tok-type">usize</span>) |
| a9540 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 79 74 79 70 65 3c 2f 73 | .<span.class="tok-kw">anytype</s |
| a9560 | 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 | pan></code></pre>.......<p>..... |
| a9580 | 20 20 43 6f 6e 76 65 72 74 73 20 61 6e 20 69 6e 74 65 67 65 72 20 74 6f 20 61 20 3c 61 20 68 72 | ..Converts.an.integer.to.a.<a.hr |
| a95a0 | 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 20 54 68 65 20 | ef="#Pointers">pointer</a>..The. |
| a95c0 | 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 65 73 75 | return.type.is.the.inferred.resu |
| a95e0 | 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 68 65 72 | lt.type.....To.convert.the.other |
| a9600 | 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 50 74 72 22 3e | .way,.use.<a.href="#intFromPtr"> |
| a9620 | 40 69 6e 74 46 72 6f 6d 50 74 72 3c 2f 61 3e 2e 20 43 61 73 74 69 6e 67 20 61 6e 20 61 64 64 72 | @intFromPtr</a>..Casting.an.addr |
| a9640 | 65 73 73 20 6f 66 20 30 20 74 6f 20 61 20 64 65 73 74 69 6e 61 74 69 6f 6e 20 74 79 70 65 0a 20 | ess.of.0.to.a.destination.type.. |
| a9660 | 20 20 20 20 20 77 68 69 63 68 20 69 6e 20 6e 6f 74 20 3c 61 20 68 72 65 66 3d 22 23 4f 70 74 69 | .....which.in.not.<a.href="#Opti |
| a9680 | 6f 6e 61 6c 2d 50 6f 69 6e 74 65 72 73 22 3e 6f 70 74 69 6f 6e 61 6c 3c 2f 61 3e 20 61 6e 64 20 | onal-Pointers">optional</a>.and. |
| a96a0 | 64 6f 65 73 20 6e 6f 74 20 68 61 76 65 20 74 68 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c | does.not.have.the.<code><span.cl |
| a96c0 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6c 6c 6f 77 7a 65 72 6f 3c 2f 73 70 61 6e 3e 3c 2f 63 | ass="tok-kw">allowzero</span></c |
| a96e0 | 6f 64 65 3e 20 61 74 74 72 69 62 75 74 65 20 77 69 6c 6c 20 72 65 73 75 6c 74 20 69 6e 20 61 0a | ode>.attribute.will.result.in.a. |
| a9700 | 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 50 6f 69 6e 74 65 72 2d 43 61 73 74 2d 49 6e 76 | ......<a.href="#Pointer-Cast-Inv |
| a9720 | 61 6c 69 64 2d 4e 75 6c 6c 22 3e 50 6f 69 6e 74 65 72 20 43 61 73 74 20 49 6e 76 61 6c 69 64 20 | alid-Null">Pointer.Cast.Invalid. |
| a9740 | 4e 75 6c 6c 3c 2f 61 3e 20 70 61 6e 69 63 20 77 68 65 6e 20 72 75 6e 74 69 6d 65 20 73 61 66 65 | Null</a>.panic.when.runtime.safe |
| a9760 | 74 79 20 63 68 65 63 6b 73 20 61 72 65 20 65 6e 61 62 6c 65 64 2e 0a 20 20 20 20 20 20 3c 2f 70 | ty.checks.are.enabled........</p |
| a9780 | 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 66 20 74 68 65 20 64 65 73 74 69 6e 61 | >.......<p>.......If.the.destina |
| a97a0 | 74 69 6f 6e 20 70 6f 69 6e 74 65 72 20 74 79 70 65 20 64 6f 65 73 20 6e 6f 74 20 61 6c 6c 6f 77 | tion.pointer.type.does.not.allow |
| a97c0 | 20 61 64 64 72 65 73 73 20 7a 65 72 6f 20 61 6e 64 20 3c 63 6f 64 65 3e 61 64 64 72 65 73 73 3c | .address.zero.and.<code>address< |
| a97e0 | 2f 63 6f 64 65 3e 0a 20 20 20 20 20 20 69 73 20 7a 65 72 6f 2c 20 74 68 69 73 20 69 6e 76 6f 6b | /code>.......is.zero,.this.invok |
| a9800 | 65 73 20 73 61 66 65 74 79 2d 63 68 65 63 6b 65 64 20 3c 61 20 68 72 65 66 3d 22 23 49 6c 6c 65 | es.safety-checked.<a.href="#Ille |
| a9820 | 67 61 6c 2d 42 65 68 61 76 69 6f 72 22 3e 49 6c 6c 65 67 61 6c 20 42 65 68 61 76 69 6f 72 3c 2f | gal-Behavior">Illegal.Behavior</ |
| a9840 | 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 | a>........</p>...............<h3 |
| a9860 | 20 69 64 3d 22 72 65 6d 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 72 65 6d 22 3e 40 72 65 | .id="rem"><a.href="#toc-rem">@re |
| a9880 | 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 72 65 6d 22 | m</a>.<a.class="hdr".href="#rem" |
| a98a0 | 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>< |
| a98c0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 72 65 6d 3c 2f 73 | span.class="tok-builtin">@rem</s |
| a98e0 | 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:. |
| a9900 | 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>..... |
| a9920 | 20 20 52 65 6d 61 69 6e 64 65 72 20 64 69 76 69 73 69 6f 6e 2e 20 46 6f 72 20 75 6e 73 69 67 6e | ..Remainder.division..For.unsign |
| a9940 | 65 64 20 69 6e 74 65 67 65 72 73 20 74 68 69 73 20 69 73 20 74 68 65 20 73 61 6d 65 20 61 73 0a | ed.integers.this.is.the.same.as. |
| a9960 | 20 20 20 20 20 20 3c 63 6f 64 65 3e 6e 75 6d 65 72 61 74 6f 72 20 25 20 64 65 6e 6f 6d 69 6e 61 | ......<code>numerator.%.denomina |
| a9980 | 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 20 3c 63 | tor</code>..Caller.guarantees.<c |
| a99a0 | 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 73 3d 22 | ode>denominator.!=.<span.class=" |
| a99c0 | 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 2c 20 6f 74 68 | tok-number">0</span></code>,.oth |
| a99e0 | 65 72 77 69 73 65 20 74 68 65 0a 20 20 20 20 20 20 6f 70 65 72 61 74 69 6f 6e 20 77 69 6c 6c 20 | erwise.the.......operation.will. |
| a9a00 | 72 65 73 75 6c 74 20 69 6e 20 61 20 3c 61 20 68 72 65 66 3d 22 23 52 65 6d 61 69 6e 64 65 72 2d | result.in.a.<a.href="#Remainder- |
| a9a20 | 44 69 76 69 73 69 6f 6e 2d 62 79 2d 5a 65 72 6f 22 3e 52 65 6d 61 69 6e 64 65 72 20 44 69 76 69 | Division-by-Zero">Remainder.Divi |
| a9a40 | 73 69 6f 6e 20 62 79 20 5a 65 72 6f 3c 2f 61 3e 20 77 68 65 6e 20 72 75 6e 74 69 6d 65 20 73 61 | sion.by.Zero</a>.when.runtime.sa |
| a9a60 | 66 65 74 79 20 63 68 65 63 6b 73 20 61 72 65 20 65 6e 61 62 6c 65 64 2e 0a 20 20 20 20 20 20 3c | fety.checks.are.enabled........< |
| a9a80 | 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f | /p>.......<ul>...........<li><co |
| a9aa0 | 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 72 65 | de><span.class="tok-builtin">@re |
| a9ac0 | 6d 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 62 65 | m</span>(-<span.class="tok-numbe |
| a9ae0 | 72 22 3e 35 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | r">5</span>,.<span.class="tok-nu |
| a9b00 | 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 73 3d | mber">3</span>).==.-<span.class= |
| a9b20 | 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 6c 69 | "tok-number">2</span></code></li |
| a9b40 | 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 6c 61 | >...........<li><code>(<span.cla |
| a9b60 | 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 70 61 6e | ss="tok-builtin">@divTrunc</span |
| a9b80 | 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 6b 2d | >(a,.b).*.b).+.<span.class="tok- |
| a9ba0 | 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 20 61 3c | builtin">@rem</span>(a,.b).==.a< |
| a9bc0 | 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c 70 | /code></li>.......</ul>.......<p |
| a9be0 | 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 6e 20 | >For.a.function.that.returns.an. |
| a9c00 | 65 72 72 6f 72 20 63 6f 64 65 2c 20 73 65 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 | error.code,.see.<code><span.clas |
| a9c20 | 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>(< |
| a9c40 | 73 70 61 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 |
| a9c60 | 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 6d 61 74 68 2e 72 65 6d 3c 2f 63 6f 64 65 3e 2e 3c 2f 70 | uot;</span>).math.rem</code>.</p |
| a9c80 | 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 |
| a9ca0 | 3e 3c 61 20 68 72 65 66 3d 22 23 6d 6f 64 22 3e 40 6d 6f 64 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f | ><a.href="#mod">@mod</a></li>.</ |
| a9cc0 | 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 72 65 74 75 72 | ul>................<h3.id="retur |
| a9ce0 | 6e 41 64 64 72 65 73 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 72 65 74 75 72 6e 41 64 | nAddress"><a.href="#toc-returnAd |
| a9d00 | 64 72 65 73 73 22 3e 40 72 65 74 75 72 6e 41 64 64 72 65 73 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 | dress">@returnAddress</a>.<a.cla |
| a9d20 | 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 72 65 74 75 72 6e 41 64 64 72 65 73 73 22 3e c2 | ss="hdr".href="#returnAddress">. |
| a9d40 | 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 |
| a9d60 | 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 6e 41 64 | an.class="tok-builtin">@returnAd |
| a9d80 | 64 72 65 73 73 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | dress</span>().<span.class="tok- |
| a9da0 | 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a | type">usize</span></code></pre>. |
| a9dc0 | 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 72 65 | ......<p>.......This.function.re |
| a9de0 | 74 75 72 6e 73 20 74 68 65 20 61 64 64 72 65 73 73 20 6f 66 20 74 68 65 20 6e 65 78 74 20 6d 61 | turns.the.address.of.the.next.ma |
| a9e00 | 63 68 69 6e 65 20 63 6f 64 65 20 69 6e 73 74 72 75 63 74 69 6f 6e 20 74 68 61 74 20 77 69 6c 6c | chine.code.instruction.that.will |
| a9e20 | 20 62 65 20 65 78 65 63 75 74 65 64 0a 20 20 20 20 20 20 77 68 65 6e 20 74 68 65 20 63 75 72 72 | .be.executed.......when.the.curr |
| a9e40 | 65 6e 74 20 66 75 6e 63 74 69 6f 6e 20 72 65 74 75 72 6e 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e | ent.function.returns........</p> |
| a9e60 | 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 20 69 6d 70 6c 69 63 61 74 69 6f 6e | .......<p>.......The.implication |
| a9e80 | 73 20 6f 66 20 74 68 69 73 20 61 72 65 20 74 61 72 67 65 74 2d 73 70 65 63 69 66 69 63 20 61 6e | s.of.this.are.target-specific.an |
| a9ea0 | 64 20 6e 6f 74 20 63 6f 6e 73 69 73 74 65 6e 74 20 61 63 72 6f 73 73 0a 20 20 20 20 20 20 61 6c | d.not.consistent.across.......al |
| a9ec0 | 6c 20 70 6c 61 74 66 6f 72 6d 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 | l.platforms........</p>.......<p |
| a9ee0 | 3e 0a 20 20 20 20 20 20 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 69 73 20 6f 6e 6c 79 20 76 61 | >.......This.function.is.only.va |
| a9f00 | 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 20 49 66 20 74 68 | lid.within.function.scope..If.th |
| a9f20 | 65 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 73 20 69 6e 6c 69 6e 65 64 20 69 6e 74 6f 0a 20 20 20 | e.function.gets.inlined.into.... |
| a9f40 | 20 20 20 61 20 63 61 6c 6c 69 6e 67 20 66 75 6e 63 74 69 6f 6e 2c 20 74 68 65 20 72 65 74 75 72 | ...a.calling.function,.the.retur |
| a9f60 | 6e 65 64 20 61 64 64 72 65 73 73 20 77 69 6c 6c 20 61 70 70 6c 79 20 74 6f 20 74 68 65 20 63 61 | ned.address.will.apply.to.the.ca |
| a9f80 | 6c 6c 69 6e 67 20 66 75 6e 63 74 69 6f 6e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 | lling.function........</p>...... |
| a9fa0 | 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 73 65 6c 65 63 74 22 3e 3c 61 20 68 72 65 66 | .........<h3.id="select"><a.href |
| a9fc0 | 3d 22 23 74 6f 63 2d 73 65 6c 65 63 74 22 3e 40 73 65 6c 65 63 74 3c 2f 61 3e 20 3c 61 20 63 6c | ="#toc-select">@select</a>.<a.cl |
| a9fe0 | 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 73 65 6c 65 63 74 22 3e c2 a7 3c 2f 61 3e 3c | ass="hdr".href="#select">..</a>< |
| aa000 | 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 |
| aa020 | 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 65 6c 65 63 74 3c 2f 73 70 61 6e 3e 28 | ss="tok-builtin">@select</span>( |
| aa040 | 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 |
| aa060 | 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 |
| aa080 | 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 70 72 65 64 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ype</span>,.pred:.<span.class="t |
| aa0a0 | 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 6e 2c 20 | ok-builtin">@Vector</span>(len,. |
| aa0c0 | 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 |
| aa0e0 | 6e 3e 29 2c 20 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e | n>),.a:.<span.class="tok-builtin |
| aa100 | 22 3e 40 56 65 63 74 6f 72 3c 2f 73 70 61 6e 3e 28 6c 65 6e 2c 20 54 29 2c 20 62 3a 20 3c 73 70 | ">@Vector</span>(len,.T),.b:.<sp |
| aa120 | 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</ |
| aa140 | 73 70 61 6e 3e 28 6c 65 6e 2c 20 54 29 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | span>(len,.T)).<span.class="tok- |
| aa160 | 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 2c 20 54 29 3c | builtin">@Vector</span>(len,.T)< |
| aa180 | 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 53 65 6c | /code></pre>.......<p>.......Sel |
| aa1a0 | 65 63 74 73 20 76 61 6c 75 65 73 20 65 6c 65 6d 65 6e 74 2d 77 69 73 65 20 66 72 6f 6d 20 3c 63 | ects.values.element-wise.from.<c |
| aa1c0 | 6f 64 65 3e 61 3c 2f 63 6f 64 65 3e 20 6f 72 20 3c 63 6f 64 65 3e 62 3c 2f 63 6f 64 65 3e 20 62 | ode>a</code>.or.<code>b</code>.b |
| aa1e0 | 61 73 65 64 20 6f 6e 20 3c 63 6f 64 65 3e 70 72 65 64 3c 2f 63 6f 64 65 3e 2e 20 49 66 20 3c 63 | ased.on.<code>pred</code>..If.<c |
| aa200 | 6f 64 65 3e 70 72 65 64 5b 69 5d 3c 2f 63 6f 64 65 3e 20 69 73 20 3c 63 6f 64 65 3e 3c 73 70 61 | ode>pred[i]</code>.is.<code><spa |
| aa220 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 3c 2f | n.class="tok-null">true</span></ |
| aa240 | 63 6f 64 65 3e 2c 20 74 68 65 20 63 6f 72 72 65 73 70 6f 6e 64 69 6e 67 20 65 6c 65 6d 65 6e 74 | code>,.the.corresponding.element |
| aa260 | 20 69 6e 20 74 68 65 20 72 65 73 75 6c 74 20 77 69 6c 6c 20 62 65 20 3c 63 6f 64 65 3e 61 5b 69 | .in.the.result.will.be.<code>a[i |
| aa280 | 5d 3c 2f 63 6f 64 65 3e 20 61 6e 64 20 6f 74 68 65 72 77 69 73 65 20 3c 63 6f 64 65 3e 62 5b 69 | ]</code>.and.otherwise.<code>b[i |
| aa2a0 | 5d 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 | ]</code>........</p>.......<p>Se |
| aa2c0 | 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 56 65 | e.also:</p><ul>.<li><a.href="#Ve |
| aa2e0 | 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>... |
| aa300 | 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 73 65 74 45 76 61 6c 42 72 61 6e | .............<h3.id="setEvalBran |
| aa320 | 63 68 51 75 6f 74 61 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 73 65 74 45 76 61 6c 42 72 | chQuota"><a.href="#toc-setEvalBr |
| aa340 | 61 6e 63 68 51 75 6f 74 61 22 3e 40 73 65 74 45 76 61 6c 42 72 61 6e 63 68 51 75 6f 74 61 3c 2f | anchQuota">@setEvalBranchQuota</ |
| aa360 | 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 45 76 61 6c | a>.<a.class="hdr".href="#setEval |
| aa380 | 42 72 61 6e 63 68 51 75 6f 74 61 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 | BranchQuota">..</a></h3>........ |
| aa3a0 | 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 |
| aa3c0 | 74 69 6e 22 3e 40 73 65 74 45 76 61 6c 42 72 61 6e 63 68 51 75 6f 74 61 3c 2f 73 70 61 6e 3e 28 | tin">@setEvalBranchQuota</span>( |
| aa3e0 | 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 |
| aa400 | 70 61 6e 3e 20 6e 65 77 5f 71 75 6f 74 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | pan>.new_quota:.<span.class="tok |
| aa420 | 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=" |
| aa440 | 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 |
| aa460 | 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 6e 63 72 65 61 73 65 20 74 68 65 20 | e>.......<p>.......Increase.the. |
| aa480 | 6d 61 78 69 6d 75 6d 20 6e 75 6d 62 65 72 20 6f 66 20 62 61 63 6b 77 61 72 64 73 20 62 72 61 6e | maximum.number.of.backwards.bran |
| aa4a0 | 63 68 65 73 20 74 68 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 63 6f 64 65 0a 20 20 20 20 | ches.that.compile-time.code..... |
| aa4c0 | 20 20 65 78 65 63 75 74 69 6f 6e 20 63 61 6e 20 75 73 65 20 62 65 66 6f 72 65 20 67 69 76 69 6e | ..execution.can.use.before.givin |
| aa4e0 | 67 20 75 70 20 61 6e 64 20 6d 61 6b 69 6e 67 20 61 20 63 6f 6d 70 69 6c 65 20 65 72 72 6f 72 2e | g.up.and.making.a.compile.error. |
| aa500 | 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 66 20 74 | .......</p>.......<p>.......If.t |
| aa520 | 68 65 20 3c 63 6f 64 65 3e 6e 65 77 5f 71 75 6f 74 61 3c 2f 63 6f 64 65 3e 20 69 73 20 73 6d 61 | he.<code>new_quota</code>.is.sma |
| aa540 | 6c 6c 65 72 20 74 68 61 6e 20 74 68 65 20 64 65 66 61 75 6c 74 20 71 75 6f 74 61 20 28 3c 63 6f | ller.than.the.default.quota.(<co |
| aa560 | 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 31 30 30 30 | de><span.class="tok-number">1000 |
| aa580 | 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 29 20 6f 72 0a 20 20 20 20 20 20 61 20 70 72 65 76 69 | </span></code>).or.......a.previ |
| aa5a0 | 6f 75 73 6c 79 20 65 78 70 6c 69 63 69 74 6c 79 20 73 65 74 20 71 75 6f 74 61 2c 20 69 74 20 69 | ously.explicitly.set.quota,.it.i |
| aa5c0 | 73 20 69 67 6e 6f 72 65 64 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a | s.ignored........</p>.......<p>. |
| aa5e0 | 20 20 20 20 20 20 45 78 61 6d 70 6c 65 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 | ......Example:.......</p>....... |
| aa600 | 3c 66 69 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 |
| aa620 | 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 77 69 74 68 | ap"><cite.class="file">test_with |
| aa640 | 6f 75 74 5f 73 65 74 45 76 61 6c 42 72 61 6e 63 68 51 75 6f 74 61 5f 62 75 69 6c 74 69 6e 2e 7a | out_setEvalBranchQuota_builtin.z |
| aa660 | 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 |
| aa680 | 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 |
| aa6a0 | 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 6f | >.<span.class="tok-str">"fo |
| aa6c0 | 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 73 73 | o"</span>.{.....<span.class |
| aa6e0 | 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>.{..... |
| aa700 | 20 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 |
| aa720 | 61 6e 3e 20 69 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 | an>.i.=.<span.class="tok-number" |
| aa740 | 3e 30 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | >0</span>;.........<span.class=" |
| aa760 | 74 6f 6b 2d 6b 77 22 3e 77 68 69 6c 65 3c 2f 73 70 61 6e 3e 20 28 69 20 26 6c 74 3b 20 3c 73 70 | tok-kw">while</span>.(i.<.<sp |
| aa780 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 30 31 3c 2f 73 70 61 6e | an.class="tok-number">1001</span |
| aa7a0 | 3e 29 20 3a 20 28 69 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | >).:.(i.+=.<span.class="tok-numb |
| aa7c0 | 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 20 7b 7d 0a 20 20 20 20 7d 0a 7d 3c 2f 63 6f 64 65 3e 3c | er">1</span>).{}.....}.}</code>< |
| aa7e0 | 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 |
| aa800 | 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 |
| aa820 | 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 |
| aa840 | 20 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 | .test_without_setEvalBranchQuota |
| aa860 | 5f 62 75 69 6c 74 69 6e 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | _builtin.zig</kbd>.<span.class=" |
| aa880 | 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c | sgr-1m">/home/andy/dev/zig/doc/l |
| aa8a0 | 61 6e 67 72 65 66 2f 74 65 73 74 5f 77 69 74 68 6f 75 74 5f 73 65 74 45 76 61 6c 42 72 61 6e 63 | angref/test_without_setEvalBranc |
| aa8c0 | 68 51 75 6f 74 61 5f 62 75 69 6c 74 69 6e 2e 7a 69 67 3a 34 3a 39 3a 20 3c 2f 73 70 61 6e 3e 3c | hQuota_builtin.zig:4:9:.</span>< |
| aa8e0 | 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 |
| aa900 | 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 76 61 6c 75 61 74 69 | an><span.class="sgr-1m">evaluati |
| aa920 | 6f 6e 20 65 78 63 65 65 64 65 64 20 31 30 30 30 20 62 61 63 6b 77 61 72 64 73 20 62 72 61 6e 63 | on.exceeded.1000.backwards.branc |
| aa940 | 68 65 73 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 20 20 20 20 77 68 69 6c 65 20 28 69 20 26 6c 74 3b | hes.</span>........while.(i.< |
| aa960 | 20 31 30 30 31 29 20 3a 20 28 69 20 2b 3d 20 31 29 20 7b 7d 0a 20 20 20 20 20 20 20 20 3c 73 70 | .1001).:.(i.+=.1).{}.........<sp |
| aa980 | 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e | an.class="sgr-32m">^~~~~~~~~~~~~ |
| aa9a0 | 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 |
| aa9c0 | 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 | lass="sgr-1m">/home/andy/dev/zig |
| aa9e0 | 2f 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 45 76 61 | /doc/langref/test_without_setEva |
| aaa00 | 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 20 3c 2f | lBranchQuota_builtin.zig:4:9:.</ |
| aaa20 | 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: |
| aaa40 | 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 73 65 | .</span><span.class="sgr-1m">use |
| aaa60 | 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 73 65 20 | .@setEvalBranchQuota().to.raise. |
| aaa80 | 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 73 70 61 | the.branch.limit.from.1000.</spa |
| aaaa0 | 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>....... |
| aaac0 | 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 61 73 73 | .<p>Now.we.use.<code><span.class |
| aaae0 | 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 51 75 6f | ="tok-builtin">@setEvalBranchQuo |
| aab00 | 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 66 69 67 | ta</span></code>:</p>.......<fig |
| aab20 | 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"> |
| aab40 | 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 61 6c 42 | <cite.class="file">test_setEvalB |
| aab60 | 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 3c 2f 66 | ranchQuota_builtin.zig</cite></f |
| aab80 | 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 |
| aaba0 | 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 |
| aabc0 | 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 61 | s="tok-str">"foo"</spa |
| aabe0 | 6e 3e 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 |
| aac00 | 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 |
| aac20 | 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 |
| aac40 | 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 2d 6e 75 | Quota</span>(<span.class="tok-nu |
| aac60 | 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 73 70 61 | mber">1001</span>);.........<spa |
| aac80 | 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 20 3d 20 | n.class="tok-kw">var</span>.i.=. |
| aaca0 | 3c 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 |
| aacc0 | 3e 3b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | >;.........<span.class="tok-kw"> |
| aace0 | 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 61 73 73 | while</span>.(i.<.<span.class |
| aad00 | 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 28 69 20 | ="tok-number">1001</span>).:.(i. |
| aad20 | 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 |
| aad40 | 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 3c 2f 66 | pan>).{}.....}.}</code></pre></f |
| aad60 | 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= |
| aad80 | 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 |
| aada0 | 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 65 | re><samp>$.<kbd>zig.test.test_se |
| aadc0 | 74 45 76 61 6c 42 72 61 6e 63 68 51 75 6f 74 61 5f 62 75 69 6c 74 69 6e 2e 7a 69 67 3c 2f 6b 62 | tEvalBranchQuota_builtin.zig</kb |
| aade0 | 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 61 5f 62 | d>.1/1.test_setEvalBranchQuota_b |
| aae00 | 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 73 74 73 | uiltin.test.foo...OK.All.1.tests |
| aae20 | 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>. |
| aae40 | 0a 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 | ........<p>See.also:</p><ul>.<li |
| aae60 | 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 3c 2f 61 | ><a.href="#comptime">comptime</a |
| aae80 | 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. |
| aaea0 | 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 6f 63 2d | id="setFloatMode"><a.href="#toc- |
| aaec0 | 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 61 3e 20 | setFloatMode">@setFloatMode</a>. |
| aaee0 | 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 74 4d 6f | <a.class="hdr".href="#setFloatMo |
| aaf00 | 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 63 6f 64 | de">..</a></h3>........<pre><cod |
| aaf20 | 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 65 74 | e><span.class="tok-builtin">@set |
| aaf40 | 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 22 74 6f | FloatMode</span>(<span.class="to |
| aaf60 | 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 6c 6f 61 | k-kw">comptime</span>.mode:.Floa |
| aaf80 | 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 3e 76 6f | tMode).<span.class="tok-type">vo |
| aafa0 | 69 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e | id</span></code></pre>.......<p> |
| aafc0 | 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 75 6c 65 | Changes.the.current.scope's.rule |
| aafe0 | 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 65 72 61 | s.about.how.floating.point.opera |
| ab000 | 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 3c 75 6c | tions.are.defined.</p>.......<ul |
| ab020 | 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 6f 64 65 | >.........<li>.............<code |
| ab040 | 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 6f 61 74 | >Strict</code>.(default).-.Float |
| ab060 | 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 74 72 69 | ing.point.operations.follow.stri |
| ab080 | 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 2f 6c 69 | ct.IEEE.compliance..........</li |
| ab0a0 | 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 6f 64 65 | >.........<li>.............<code |
| ab0c0 | 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 70 6f 69 | >Optimized</code>.-.Floating.poi |
| ab0e0 | 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 68 65 20 | nt.operations.may.do.all.of.the. |
| ab100 | 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 20 20 20 | following:...........<ul>....... |
| ab120 | 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 73 20 61 | ......<li>Assume.the.arguments.a |
| ab140 | 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 7a 61 74 | nd.result.are.not.NaN..Optimizat |
| ab160 | 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 6c 65 67 61 | ions.are.required.to.retain.lega |
| ab180 | 6c 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 68 65 20 76 61 | l.behavior.over.NaNs,.but.the.va |
| ab1a0 | 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 6e 65 64 2e 3c | lue.of.the.result.is.undefined.< |
| ab1c0 | 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 20 74 68 65 20 | /li>.............<li>Assume.the. |
| ab1e0 | 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 74 20 2b 2f 2d | arguments.and.result.are.not.+/- |
| ab200 | 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 69 72 65 64 20 | Inf..Optimizations.are.required. |
| ab220 | 74 6f 20 72 65 74 61 69 6e 20 6c 65 67 61 6c 20 62 65 68 61 76 69 6f 72 20 6f 76 65 72 20 2b 2f | to.retain.legal.behavior.over.+/ |
| ab240 | 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 65 20 72 65 73 75 6c | -Inf,.but.the.value.of.the.resul |
| ab260 | 74 20 69 73 20 75 6e 64 65 66 69 6e 65 64 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 | t.is.undefined.</li>............ |
| ab280 | 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 7a 65 72 6f 20 61 72 | .<li>Treat.the.sign.of.a.zero.ar |
| ab2a0 | 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 6e 69 66 69 63 61 6e | gument.or.result.as.insignifican |
| ab2c0 | 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 73 65 20 74 68 65 20 | t.</li>.............<li>Use.the. |
| ab2e0 | 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 20 72 61 74 68 65 72 | reciprocal.of.an.argument.rather |
| ab300 | 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 6c 69 3e 0a 20 20 20 | .than.perform.division.</li>.... |
| ab320 | 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 74 69 6e 67 2d 70 6f | .........<li>Perform.floating-po |
| ab340 | 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 69 6e 67 20 61 20 6d | int.contraction.(e.g..fusing.a.m |
| ab360 | 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 64 69 74 69 6f 6e 20 | ultiply.followed.by.an.addition. |
| ab380 | 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 29 2e 3c 2f 6c 69 3e | into.a.fused.multiply-add).</li> |
| ab3a0 | 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 61 6c 67 65 62 72 61 | .............<li>Perform.algebra |
| ab3c0 | 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 72 6d 61 74 69 6f 6e | ically.equivalent.transformation |
| ab3e0 | 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 20 69 6e 20 66 6c 6f | s.that.may.change.results.in.flo |
| ab400 | 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 69 61 74 65 29 2e 3c | ating.point.(e.g..reassociate).< |
| ab420 | 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 20 20 20 20 20 20 54 | /li>...........</ul>...........T |
| ab440 | 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 65 3e 2d 66 66 61 73 | his.is.equivalent.to.<code>-ffas |
| ab460 | 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 20 20 20 20 20 3c 2f | t-math</code>.in.GCC..........</ |
| ab480 | 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>....... |
| ab4a0 | 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 73 20 69 6e 68 65 72 | The.floating.point.mode.is.inher |
| ab4c0 | 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 20 63 61 6e 20 62 65 | ited.by.child.scopes,.and.can.be |
| ab4e0 | 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 0a 20 20 20 20 20 20 | .overridden.in.any.scope........ |
| ab500 | 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 70 6f 69 6e 74 20 6d | You.can.set.the.floating.point.m |
| ab520 | 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 20 73 63 6f 70 65 20 | ode.in.a.struct.or.module.scope. |
| ab540 | 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 2e 0a 20 20 20 20 20 | by.using.a.comptime.block....... |
| ab560 | 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 74 4d 6f 64 65 3c 2f | .</p>.......<p><code>FloatMode</ |
| ab580 | 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 64 65 3e 3c 73 | code>.can.be.found.with.<code><s |
| ab5a0 | 70 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< |
| ab5c0 | 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 |
| ab5e0 | 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 6e 2e 46 6c 6f | ot;std"</span>).builtin.Flo |
| ab600 | 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 3c 70 3e 53 65 65 20 | atMode</code>.</p>.......<p>See. |
| ab620 | 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 46 6c 6f 61 | also:</p><ul>.<li><a.href="#Floa |
| ab640 | 74 69 6e 67 2d 50 6f 69 6e 74 2d 4f 70 65 72 61 74 69 6f 6e 73 22 3e 46 6c 6f 61 74 69 6e 67 20 | ting-Point-Operations">Floating. |
| ab660 | 50 6f 69 6e 74 20 4f 70 65 72 61 74 69 6f 6e 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a | Point.Operations</a></li>.</ul>. |
| ab680 | 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 74 52 75 6e 74 69 6d | ...............<h3.id="setRuntim |
| ab6a0 | 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 74 52 75 6e 74 69 6d | eSafety"><a.href="#toc-setRuntim |
| ab6c0 | 65 53 61 66 65 74 79 22 3e 40 73 65 74 52 75 6e 74 69 6d 65 53 61 66 65 74 79 3c 2f 61 3e 20 3c | eSafety">@setRuntimeSafety</a>.< |
| ab6e0 | 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 75 6e 74 69 6d 65 53 | a.class="hdr".href="#setRuntimeS |
| ab700 | 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 20 3c 70 72 65 3e 3c | afety">..</a></h3>........<pre>< |
| ab720 | 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">@ |
| ab740 | 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 63 6c | setRuntimeSafety</span>(<span.cl |
| ab760 | 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 73 61 66 | ass="tok-kw">comptime</span>.saf |
| ab780 | 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 74 79 70 65 22 3e 62 | ety_on:.<span.class="tok-type">b |
| ab7a0 | 6f 6f 6c 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | ool</span>).<span.class="tok-typ |
| ab7c0 | 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 | e">void</span></code></pre>..... |
| ab7e0 | 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 72 75 6e 74 69 6d 65 | ..<p>.......Sets.whether.runtime |
| ab800 | 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 64 20 66 6f 72 20 74 | .safety.checks.are.enabled.for.t |
| ab820 | 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 65 20 66 75 6e 63 74 | he.scope.that.contains.the.funct |
| ab840 | 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 66 69 67 75 | ion.call........</p>.......<figu |
| ab860 | 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">< |
| ab880 | 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 52 75 6e 74 69 6d | cite.class="file">test_setRuntim |
| ab8a0 | 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 3e 3c 2f 66 69 67 63 | eSafety_builtin.zig</cite></figc |
| ab8c0 | 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 |
| ab8e0 | 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=" |
| ab900 | 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 65 53 61 66 65 74 79 | tok-str">"@setRuntimeSafety |
| ab920 | 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= |
| ab940 | 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 74 69 6e 20 61 70 70 | "tok-comment">//.The.builtin.app |
| ab960 | 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 20 69 73 20 63 61 6c | lies.to.the.scope.that.it.is.cal |
| ab980 | 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 6f 76 65 72 66 6c 6f | led.in..So.here,.integer.overflo |
| ab9a0 | 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 22 74 6f 6b 2d 63 6f | w</span>.....<span.class="tok-co |
| ab9c0 | 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 67 68 74 20 69 6e 20 | mment">//.will.not.be.caught.in. |
| ab9e0 | 52 65 6c 65 61 73 65 46 61 73 74 20 61 6e 64 20 52 65 6c 65 61 73 65 53 6d 61 6c 6c 20 6d 6f 64 | ReleaseFast.and.ReleaseSmall.mod |
| aba00 | 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 73 3d 22 74 6f 6b 2d | es:</span>.....<span.class="tok- |
| aba20 | 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 76 61 72 20 78 3a 20 75 38 20 3d 20 32 35 35 3b 3c 2f 73 70 | comment">//.var.x:.u8.=.255;</sp |
| aba40 | 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 |
| aba60 | 22 3e 2f 2f 20 78 20 2b 3d 20 31 3b 20 2f 2f 20 55 6e 63 68 65 63 6b 65 64 20 49 6c 6c 65 67 61 | ">//.x.+=.1;.//.Unchecked.Illega |
| aba80 | 6c 20 42 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 | l.Behavior.in.ReleaseFast/Releas |
| abaa0 | 65 53 6d 61 6c 6c 20 6d 6f 64 65 73 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 7b 0a 20 20 20 20 20 | eSmall.modes.</span>.....{...... |
| abac0 | 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">//. |
| abae0 | 48 6f 77 65 76 65 72 20 74 68 69 73 20 62 6c 6f 63 6b 20 68 61 73 20 73 61 66 65 74 79 20 65 6e | However.this.block.has.safety.en |
| abb00 | 61 62 6c 65 64 2c 20 73 6f 20 73 61 66 65 74 79 20 63 68 65 63 6b 73 20 68 61 70 70 65 6e 20 68 | abled,.so.safety.checks.happen.h |
| abb20 | 65 72 65 2c 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ere,</span>.........<span.class= |
| abb40 | 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 65 76 65 6e 20 69 6e 20 52 65 6c 65 61 73 65 | "tok-comment">//.even.in.Release |
| abb60 | 46 61 73 74 20 61 6e 64 20 52 65 6c 65 61 73 65 53 6d 61 6c 6c 20 6d 6f 64 65 73 2e 3c 2f 73 70 | Fast.and.ReleaseSmall.modes.</sp |
| abb80 | 61 6e 3e 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 | an>.........<span.class="tok-bui |
| abba0 | 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>(< |
| abbc0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e | span.class="tok-null">true</span |
| abbe0 | 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" |
| abc00 | 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- |
| abc20 | 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 |
| abc40 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 35 35 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 20 20 20 20 78 | ok-number">255</span>;.........x |
| abc60 | 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</ |
| abc80 | 73 70 61 6e 3e 3b 0a 0a 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 | span>;..........{.............<s |
| abca0 | 70 61 6e 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 | pan.class="tok-comment">//.The.v |
| abcc0 | 61 6c 75 65 20 63 61 6e 20 62 65 20 6f 76 65 72 72 69 64 64 65 6e 20 61 74 20 61 6e 79 20 73 63 | alue.can.be.overridden.at.any.sc |
| abce0 | 6f 70 65 2e 20 53 6f 20 68 65 72 65 20 69 6e 74 65 67 65 72 20 6f 76 65 72 66 6c 6f 77 3c 2f 73 | ope..So.here.integer.overflow</s |
| abd00 | 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | pan>.............<span.class="to |
| abd20 | 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 77 6f 75 6c 64 20 6e 6f 74 20 62 65 20 63 61 75 67 68 | k-comment">//.would.not.be.caugh |
| abd40 | 74 20 69 6e 20 61 6e 79 20 62 75 69 6c 64 20 6d 6f 64 65 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 | t.in.any.build.mode.</span>..... |
| abd60 | 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e | ........<span.class="tok-builtin |
| abd80 | 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 70 61 6e | ">@setRuntimeSafety</span>(<span |
| abda0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 29 3b | .class="tok-null">false</span>); |
| abdc0 | 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 |
| abde0 | 6d 6d 65 6e 74 22 3e 2f 2f 20 76 61 72 20 78 3a 20 75 38 20 3d 20 32 35 35 3b 3c 2f 73 70 61 6e | mment">//.var.x:.u8.=.255;</span |
| abe00 | 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 | >.............<span.class="tok-c |
| abe20 | 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 78 20 2b 3d 20 31 3b 20 2f 2f 20 55 6e 63 68 65 63 6b 65 64 20 | omment">//.x.+=.1;.//.Unchecked. |
| abe40 | 49 6c 6c 65 67 61 6c 20 42 65 68 61 76 69 6f 72 20 69 6e 20 61 6c 6c 20 62 75 69 6c 64 20 6d 6f | Illegal.Behavior.in.all.build.mo |
| abe60 | 64 65 73 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 7d 0a 7d 3c 2f 63 | des.</span>.........}.....}.}</c |
| abe80 | 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 |
| abea0 | 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</ |
| abec0 | 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 |
| abee0 | 20 74 65 73 74 20 74 65 73 74 5f 73 65 74 52 75 6e 74 69 6d 65 53 61 66 65 74 79 5f 62 75 69 6c | .test.test_setRuntimeSafety_buil |
| abf00 | 74 69 6e 2e 7a 69 67 20 2d 4f 52 65 6c 65 61 73 65 46 61 73 74 3c 2f 6b 62 64 3e 0a 31 2f 31 20 | tin.zig.-OReleaseFast</kbd>.1/1. |
| abf20 | 74 65 73 74 5f 73 65 74 52 75 6e 74 69 6d 65 53 61 66 65 74 79 5f 62 75 69 6c 74 69 6e 2e 74 65 | test_setRuntimeSafety_builtin.te |
| abf40 | 73 74 2e 40 73 65 74 52 75 6e 74 69 6d 65 53 61 66 65 74 79 2e 2e 2e 74 68 72 65 61 64 20 31 31 | st.@setRuntimeSafety...thread.11 |
| abf60 | 30 31 33 37 37 20 70 61 6e 69 63 3a 20 69 6e 74 65 67 65 72 20 6f 76 65 72 66 6c 6f 77 0a 3c 73 | 01377.panic:.integer.overflow.<s |
| abf80 | 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 | pan.class="sgr-1m">/home/andy/de |
| abfa0 | 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 73 65 74 52 75 6e 74 69 6d | v/zig/doc/langref/test_setRuntim |
| abfc0 | 65 53 61 66 65 74 79 5f 62 75 69 6c 74 69 6e 2e 7a 69 67 3a 31 31 3a 31 31 3c 2f 73 70 61 6e 3e | eSafety_builtin.zig:11:11</span> |
| abfe0 | 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 65 62 39 38 | :.<span.class="sgr-2m">0x103eb98 |
| ac000 | 20 69 6e 20 74 65 73 74 2e 40 73 65 74 52 75 6e 74 69 6d 65 53 61 66 65 74 79 20 28 74 65 73 74 | .in.test.@setRuntimeSafety.(test |
| ac020 | 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 78 20 2b 3d 20 31 3b 0a 20 20 20 20 20 20 20 | )</span>.........x.+=.1;........ |
| ac040 | 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 |
| ac060 | 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 |
| ac080 | 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 63 6f 6d 70 69 6c 65 72 2f 74 65 73 74 5f 72 75 6e 6e | y/dev/zig/lib/compiler/test_runn |
| ac0a0 | 65 72 2e 7a 69 67 3a 32 31 38 3a 32 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 | er.zig:218:25</span>:.<span.clas |
| ac0c0 | 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 33 32 33 64 66 20 69 6e 20 6d 61 69 6e 20 28 74 65 | s="sgr-2m">0x10323df.in.main.(te |
| ac0e0 | 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 66 | st)</span>.........if.(test_fn.f |
| ac100 | 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 20 | unc()).|_|.{.................... |
| ac120 | 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 |
| ac140 | 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 |
| ac160 | 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 36 31 | ndy/dev/zig/lib/std/start.zig:61 |
| ac180 | 38 3a 32 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d | 8:22</span>:.<span.class="sgr-2m |
| ac1a0 | 22 3e 30 78 31 30 32 66 66 37 64 20 69 6e 20 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 | ">0x102ff7d.in.posixCallMainAndE |
| ac1c0 | 78 69 74 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 6f | xit.(test)</span>.............ro |
| ac1e0 | 6f 74 2e 6d 61 69 6e 28 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ot.main();...................... |
| ac200 | 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>.< |
| ac220 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 | span.class="sgr-1m">/home/andy/d |
| ac240 | 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 32 33 32 3a 35 3c 2f | ev/zig/lib/std/start.zig:232:5</ |
| ac260 | 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 30 | span>:.<span.class="sgr-2m">0x10 |
| ac280 | 32 66 61 37 64 20 69 6e 20 5f 73 74 61 72 74 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 | 2fa7d.in._start.(test)</span>... |
| ac2a0 | 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 |
| ac2c0 | 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" |
| ac2e0 | 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">? |
| ac300 | 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- |
| ac320 | 32 6d 22 3e 30 78 30 20 69 6e 20 3f 3f 3f 20 28 3f 3f 3f 29 3c 2f 73 70 61 6e 3e 0a 65 72 72 6f | 2m">0x0.in.???.(???)</span>.erro |
| ac340 | 72 3a 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 74 65 73 74 20 63 6f 6d 6d 61 6e 64 20 63 72 | r:.the.following.test.command.cr |
| ac360 | 61 73 68 65 64 3a 0a 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 2e 7a 69 67 2d 63 | ashed:./home/andy/dev/zig/.zig-c |
| ac380 | 61 63 68 65 2f 6f 2f 32 64 36 39 30 36 66 37 62 38 38 32 31 62 30 66 35 64 36 66 61 61 36 35 37 | ache/o/2d6906f7b8821b0f5d6faa657 |
| ac3a0 | 64 37 34 30 35 66 63 2f 74 65 73 74 20 2d 2d 73 65 65 64 3d 30 78 62 64 31 38 38 65 33 37 0a 3c | d7405fc/test.--seed=0xbd188e37.< |
| ac3c0 | 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> |
| ac3e0 | 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 2f 2f 67 69 74 | Note:.it.is.<a.href="https://git |
| ac400 | 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 39 37 38 22 3e | hub.com/ziglang/zig/issues/978"> |
| ac420 | 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 20 20 3c 63 6f | planned</a>.to.replace.......<co |
| ac440 | 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 65 | de><span.class="tok-builtin">@se |
| ac460 | 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 3e 20 77 69 74 | tRuntimeSafety</span></code>.wit |
| ac480 | 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 3c 2f 70 3e 0a | h.<code>@optimizeFor</code></p>. |
| ac4a0 | 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 78 61 63 74 22 | ...............<h3.id="shlExact" |
| ac4c0 | 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 68 6c 45 78 61 | ><a.href="#toc-shlExact">@shlExa |
| ac4e0 | 63 74 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 73 68 6c | ct</a>.<a.class="hdr".href="#shl |
| ac500 | 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 70 72 65 3e 3c | Exact">..</a></h3>........<pre>< |
| ac520 | 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">@ |
| ac540 | 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 68 69 66 74 5f | shlExact</span>(value:.T,.shift_ |
| ac560 | 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 20 20 20 20 20 | amt:.Log2T).T</code></pre>...... |
| ac580 | 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 74 20 73 68 69 | .<p>.......Performs.the.left.shi |
| ac5a0 | 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 3b 3c 2f 63 6f | ft.operation.(<code><<</co |
| ac5c0 | 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 74 65 67 65 72 | de>)........For.unsigned.integer |
| ac5e0 | 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 75 6e 64 65 66 | s,.the.result.is.<a.href="#undef |
| ac600 | 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 31 20 62 69 74 | ined">undefined</a>.if.any.1.bit |
| ac620 | 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 72 20 73 69 67 | s.......are.shifted.out..For.sig |
| ac640 | 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 20 3c 61 20 68 | ned.integers,.the.result.is.<a.h |
| ac660 | 72 65 66 3d 22 23 75 6e 64 65 66 69 6e 65 64 22 3e 75 6e 64 65 66 69 6e 65 64 3c 2f 61 3e 20 69 | ref="#undefined">undefined</a>.i |
| ac680 | 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 72 65 65 20 77 | f.......any.bits.that.disagree.w |
| ac6a0 | 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 61 72 65 20 73 | ith.the.resultant.sign.bit.are.s |
| ac6c0 | 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 20 20 3c 70 3e | hifted.out........</p>.......<p> |
| ac6e0 | 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 69 66 74 5f 61 | .......The.type.of.<code>shift_a |
| ac700 | 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 74 65 67 65 72 | mt</code>.is.an.unsigned.integer |
| ac720 | 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 73 3d 22 74 6f | .with.<code>log2(<span.class="to |
| ac740 | 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 74 79 70 65 49 6e 66 6f 3c 2f 73 70 61 6e 3e 28 54 29 2e 69 | k-builtin">@typeInfo</span>(T).i |
| ac760 | 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 20 54 68 69 73 | nt.bits)</code>.bits........This |
| ac780 | 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 74 20 26 67 74 3b | .is.because.<code>shift_amt.> |
| ac7a0 | 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 74 79 70 | =.<span.class="tok-builtin">@typ |
| ac7c0 | 65 49 6e 66 6f 3c 2f 73 70 61 6e 3e 28 54 29 2e 69 6e 74 2e 62 69 74 73 3c 2f 63 6f 64 65 3e 20 | eInfo</span>(T).int.bits</code>. |
| ac7e0 | 74 72 69 67 67 65 72 73 20 73 61 66 65 74 79 2d 63 68 65 63 6b 65 64 20 3c 61 20 68 72 65 66 3d | triggers.safety-checked.<a.href= |
| ac800 | 22 23 49 6c 6c 65 67 61 6c 2d 42 65 68 61 76 69 6f 72 22 3e 49 6c 6c 65 67 61 6c 20 42 65 68 61 | "#Illegal-Behavior">Illegal.Beha |
| ac820 | 76 69 6f 72 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 | vior</a>........</p>.......<p>.. |
| ac840 | 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 70 65 | .....<code><span.class="tok-type |
| ac860 | 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 20 69 73 20 | ">comptime_int</span></code>.is. |
| ac880 | 6d 6f 64 65 6c 65 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 | modeled.as.an.integer.with.an.in |
| ac8a0 | 66 69 6e 69 74 65 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 | finite.number.of.bits,.......mea |
| ac8c0 | 6e 69 6e 67 20 74 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 | ning.that.in.such.case,.<code><s |
| ac8e0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 68 6c 45 78 61 63 | pan.class="tok-builtin">@shlExac |
| ac900 | 74 3c 2f 73 70 61 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 | t</span></code>.always.produces. |
| ac920 | 61 20 72 65 73 75 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 | a.result.and.......cannot.produc |
| ac940 | 65 20 61 20 63 6f 6d 70 69 6c 65 20 65 72 72 6f 72 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 | e.a.compile.error........</p>... |
| ac960 | 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. |
| ac980 | 68 72 65 66 3d 22 23 73 68 72 45 78 61 63 74 22 3e 40 73 68 72 45 78 61 63 74 3c 2f 61 3e 3c 2f | href="#shrExact">@shrExact</a></ |
| ac9a0 | 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 73 68 6c 57 69 74 68 4f 76 65 72 66 6c 6f | li>.<li><a.href="#shlWithOverflo |
| ac9c0 | 77 22 3e 40 73 68 6c 57 69 74 68 4f 76 65 72 66 6c 6f 77 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 | w">@shlWithOverflow</a></li>.</u |
| ac9e0 | 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 68 6c 57 69 74 | l>................<h3.id="shlWit |
| aca00 | 68 4f 76 65 72 66 6c 6f 77 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 73 68 6c 57 69 74 68 | hOverflow"><a.href="#toc-shlWith |
| aca20 | 4f 76 65 72 66 6c 6f 77 22 3e 40 73 68 6c 57 69 74 68 4f 76 65 72 66 6c 6f 77 3c 2f 61 3e 20 3c | Overflow">@shlWithOverflow</a>.< |
| aca40 | 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 73 68 6c 57 69 74 68 4f 76 65 72 | a.class="hdr".href="#shlWithOver |
| aca60 | 66 6c 6f 77 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 | flow">..</a></h3>........<pre><c |
| aca80 | 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 | ode><span.class="tok-builtin">@s |
| acaa0 | 68 6c 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 | hlWithOverflow</span>(a:.<span.c |
| acac0 | 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 73 68 | lass="tok-kw">anytype</span>,.sh |
| acae0 | 69 66 74 5f 61 6d 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 | ift_amt:.Log2T).<span.class="tok |
| acb00 | 2d 6b 77 22 3e 73 74 72 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 20 3c 73 70 61 6e 20 63 6c 61 73 73 | -kw">struct</span>.{.<span.class |
| acb20 | 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 61 29 | ="tok-builtin">@TypeOf</span>(a) |
| acb40 | 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 31 3c 2f 73 70 61 | ,.<span.class="tok-type">u1</spa |
| acb60 | 6e 3e 20 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 | n>.}</code></pre>.......<p>..... |
| acb80 | 20 20 50 65 72 66 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 | ..Performs.<code>a.<<.b</c |
| acba0 | 6f 64 65 3e 20 61 6e 64 20 72 65 74 75 72 6e 73 20 61 20 74 75 70 6c 65 20 77 69 74 68 20 74 68 | ode>.and.returns.a.tuple.with.th |
| acbc0 | 65 20 72 65 73 75 6c 74 20 61 6e 64 20 61 20 70 6f 73 73 69 62 6c 65 20 6f 76 65 72 66 6c 6f 77 | e.result.and.a.possible.overflow |
| acbe0 | 20 62 69 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 | .bit........</p>.......<p>...... |
| acc00 | 20 54 68 65 20 74 79 70 65 20 6f 66 20 3c 63 6f 64 65 3e 73 68 69 66 74 5f 61 6d 74 3c 2f 63 6f | .The.type.of.<code>shift_amt</co |
| acc20 | 64 65 3e 20 69 73 20 61 6e 20 75 6e 73 69 67 6e 65 64 20 69 6e 74 65 67 65 72 20 77 69 74 68 20 | de>.is.an.unsigned.integer.with. |
| acc40 | 3c 63 6f 64 65 3e 6c 6f 67 32 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c | <code>log2(<span.class="tok-buil |
| acc60 | 74 69 6e 22 3e 40 74 79 70 65 49 6e 66 6f 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 | tin">@typeInfo</span>(<span.clas |
| acc80 | 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 61 | s="tok-builtin">@TypeOf</span>(a |
| acca0 | 29 29 2e 69 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 20 | )).int.bits)</code>.bits........ |
| accc0 | 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 74 20 | This.is.because.<code>shift_amt. |
| acce0 | 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 22 3e | >=.<span.class="tok-builtin"> |
| acd00 | 40 74 79 70 65 49 6e 66 6f 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | @typeInfo</span>(<span.class="to |
| acd20 | 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 69 6e | k-builtin">@TypeOf</span>(a)).in |
| acd40 | 74 2e 62 69 74 73 3c 2f 63 6f 64 65 3e 20 74 72 69 67 67 65 72 73 20 73 61 66 65 74 79 2d 63 68 | t.bits</code>.triggers.safety-ch |
| acd60 | 65 63 6b 65 64 20 3c 61 20 68 72 65 66 3d 22 23 49 6c 6c 65 67 61 6c 2d 42 65 68 61 76 69 6f 72 | ecked.<a.href="#Illegal-Behavior |
| acd80 | 22 3e 49 6c 6c 65 67 61 6c 20 42 65 68 61 76 69 6f 72 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f | ">Illegal.Behavior</a>........</ |
| acda0 | 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 |
| acdc0 | 69 3e 3c 61 20 68 72 65 66 3d 22 23 73 68 6c 45 78 61 63 74 22 3e 40 73 68 6c 45 78 61 63 74 3c | i><a.href="#shlExact">@shlExact< |
| acde0 | 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 72 45 78 61 63 74 22 | /a></li>.<li><a.href="#shrExact" |
| ace00 | 3e 40 73 68 72 45 78 61 63 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 | >@shrExact</a></li>.</ul>....... |
| ace20 | 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 73 68 72 45 78 61 63 74 22 3e 3c 61 20 68 72 | .........<h3.id="shrExact"><a.hr |
| ace40 | 65 66 3d 22 23 74 6f 63 2d 73 68 72 45 78 61 63 74 22 3e 40 73 68 72 45 78 61 63 74 3c 2f 61 3e | ef="#toc-shrExact">@shrExact</a> |
| ace60 | 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 73 68 72 45 78 61 63 74 22 | .<a.class="hdr".href="#shrExact" |
| ace80 | 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>< |
| acea0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 68 72 45 78 61 | span.class="tok-builtin">@shrExa |
| acec0 | 63 74 3c 2f 73 70 61 6e 3e 28 76 61 6c 75 65 3a 20 54 2c 20 73 68 69 66 74 5f 61 6d 74 3a 20 4c | ct</span>(value:.T,.shift_amt:.L |
| acee0 | 6f 67 32 54 29 20 54 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 | og2T).T</code></pre>.......<p>.. |
| acf00 | 20 20 20 20 20 50 65 72 66 6f 72 6d 73 20 74 68 65 20 72 69 67 68 74 20 73 68 69 66 74 20 6f 70 | .....Performs.the.right.shift.op |
| acf20 | 65 72 61 74 69 6f 6e 20 28 3c 63 6f 64 65 3e 26 67 74 3b 26 67 74 3b 3c 2f 63 6f 64 65 3e 29 2e | eration.(<code>>></code>). |
| acf40 | 20 43 61 6c 6c 65 72 20 67 75 61 72 61 6e 74 65 65 73 0a 20 20 20 20 20 20 74 68 61 74 20 74 68 | .Caller.guarantees.......that.th |
| acf60 | 65 20 73 68 69 66 74 20 77 69 6c 6c 20 6e 6f 74 20 73 68 69 66 74 20 61 6e 79 20 31 20 62 69 74 | e.shift.will.not.shift.any.1.bit |
| acf80 | 73 20 6f 75 74 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 | s.out........</p>.......<p>..... |
| acfa0 | 20 20 54 68 65 20 74 79 70 65 20 6f 66 20 3c 63 6f 64 65 3e 73 68 69 66 74 5f 61 6d 74 3c 2f 63 | ..The.type.of.<code>shift_amt</c |
| acfc0 | 6f 64 65 3e 20 69 73 20 61 6e 20 75 6e 73 69 67 6e 65 64 20 69 6e 74 65 67 65 72 20 77 69 74 68 | ode>.is.an.unsigned.integer.with |
| acfe0 | 20 3c 63 6f 64 65 3e 6c 6f 67 32 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 | .<code>log2(<span.class="tok-bui |
| ad000 | 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 69 6e 74 2e 62 69 | ltin">@typeInfo</span>(T).int.bi |
| ad020 | 74 73 29 3c 2f 63 6f 64 65 3e 20 62 69 74 73 2e 0a 20 20 20 20 20 20 54 68 69 73 20 69 73 20 62 | ts)</code>.bits........This.is.b |
| ad040 | 65 63 61 75 73 65 20 3c 63 6f 64 65 3e 73 68 69 66 74 5f 61 6d 74 20 26 67 74 3b 3d 20 3c 73 70 | ecause.<code>shift_amt.>=.<sp |
| ad060 | 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 |
| ad080 | 3c 2f 73 70 61 6e 3e 28 54 29 2e 69 6e 74 2e 62 69 74 73 3c 2f 63 6f 64 65 3e 20 74 72 69 67 67 | </span>(T).int.bits</code>.trigg |
| ad0a0 | 65 72 73 20 73 61 66 65 74 79 2d 63 68 65 63 6b 65 64 20 3c 61 20 68 72 65 66 3d 22 23 49 6c 6c | ers.safety-checked.<a.href="#Ill |
| ad0c0 | 65 67 61 6c 2d 42 65 68 61 76 69 6f 72 22 3e 49 6c 6c 65 67 61 6c 20 42 65 68 61 76 69 6f 72 3c | egal-Behavior">Illegal.Behavior< |
| ad0e0 | 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 | /a>........</p>.......<p>See.als |
| ad100 | 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 61 63 | o:</p><ul>.<li><a.href="#shlExac |
| ad120 | 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 72 65 | t">@shlExact</a></li>.<li><a.hre |
| ad140 | 66 3d 22 23 73 68 6c 57 69 74 68 4f 76 65 72 66 6c 6f 77 22 3e 40 73 68 6c 57 69 74 68 4f 76 65 | f="#shlWithOverflow">@shlWithOve |
| ad160 | 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 0a 0a 20 20 | rflow</a></li>.</ul>............ |
| ad180 | 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 3d 22 23 74 | ....<h3.id="shuffle"><a.href="#t |
| ad1a0 | 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 63 6c 61 73 | oc-shuffle">@shuffle</a>.<a.clas |
| ad1c0 | 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 61 3e 3c 2f | s="hdr".href="#shuffle">..</a></ |
| ad1e0 | 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 |
| ad200 | 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 61 6e 3e 28 | s="tok-builtin">@shuffle</span>( |
| ad220 | 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 |
| ad240 | 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 65 22 3e 74 | pan>.E:.<span.class="tok-type">t |
| ad260 | 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 74 6f 6b 2d | ype</span>,.a:.<span.class="tok- |
| ad280 | 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 6e 2c 20 45 | builtin">@Vector</span>(a_len,.E |
| ad2a0 | 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 69 6e 22 3e | ),.b:.<span.class="tok-builtin"> |
| ad2c0 | 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 70 61 6e 20 | @Vector</span>(b_len,.E),.<span. |
| ad2e0 | 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 6d | class="tok-kw">comptime</span>.m |
| ad300 | 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 6e 22 3e 40 | ask:.<span.class="tok-builtin">@ |
| ad320 | 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 6e 20 63 6c | Vector</span>(mask_len,.<span.cl |
| ad340 | 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 3c 73 70 61 | ass="tok-type">i32</span>)).<spa |
| ad360 | 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 73 | n.class="tok-builtin">@Vector</s |
| ad380 | 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 65 3e 0a 20 | pan>(mask_len,.E)</code></pre>.. |
| ad3a0 | 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 6e 65 77 20 | .....<p>.......Constructs.a.new. |
| ad3c0 | 3c 61 20 68 72 65 66 3d 22 23 56 65 63 74 6f 72 73 22 3e 76 65 63 74 6f 72 3c 2f 61 3e 20 62 79 | <a.href="#Vectors">vector</a>.by |
| ad3e0 | 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 64 65 3e 61 | .selecting.elements.from.<code>a |
| ad400 | 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 6f 64 65 3e | </code>.and.......<code>b</code> |
| ad420 | 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 0a 20 20 20 | .based.on.<code>mask</code>..... |
| ad440 | 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 20 65 6c 65 | ...</p>.......<p>.......Each.ele |
| ad460 | 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 6c 65 63 74 | ment.in.<code>mask</code>.select |
| ad480 | 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 64 65 3e 61 | s.an.element.from.either.<code>a |
| ad4a0 | 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 64 65 3e 2e | </code>.or.......<code>b</code>. |
| ad4c0 | 20 50 6f 73 69 74 69 76 65 20 6e 75 6d 62 65 72 73 20 73 65 6c 65 63 74 20 66 72 6f 6d 20 3c 63 | .Positive.numbers.select.from.<c |
| ad4e0 | 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 20 20 20 20 | ode>a</code>.starting.at.0...... |
| ad500 | 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 6d 20 3c 63 | ..Negative.values.select.from.<c |
| ad520 | 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 6f 64 65 3e | ode>b</code>,.starting.at.<code> |
| ad540 | 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 |
| ad560 | 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 20 20 20 20 | n></code>.and.going.down........ |
| ad580 | 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 20 3c 63 6f | It.is.recommended.to.use.the.<co |
| ad5a0 | 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 65 78 65 73 | de>~</code>.operator.for.indexes |
| ad5c0 | 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 6f 20 74 68 | .from.<code>b</code>.......so.th |
| ad5e0 | 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 6f 6d 20 3c | at.both.indexes.can.start.from.< |
| ad600 | 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 3c | code><span.class="tok-number">0< |
| ad620 | 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 73 70 61 6e | /span></code>.(i.e..<code>~<span |
| ad640 | 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>( |
| ad660 | 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 |
| ad680 | 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 | >,.<span.class="tok-number">0</s |
| ad6a0 | 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 2d 3c 73 70 | pan>)</code>.is.......<code>-<sp |
| ad6c0 | 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 3c 2f | an.class="tok-number">1</span></ |
| ad6e0 | 63 6f 64 65 3e 29 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 | code>)........</p>.......<p>.... |
| ad700 | 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 3e 6d 61 73 | ...For.each.element.of.<code>mas |
| ad720 | 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 74 65 64 20 | k</code>,.if.it.or.the.selected. |
| ad740 | 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 64 65 3e 20 | value.from.......<code>a</code>. |
| ad760 | 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 73 70 61 6e | or.<code>b</code>.is.<code><span |
| ad780 | 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 |
| ad7a0 | 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 73 75 6c 74 | n></code>,.......then.the.result |
| ad7c0 | 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 6c 61 73 73 | ing.element.is.<code><span.class |
| ad7e0 | 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 75 6e 64 65 66 69 6e 65 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f | ="tok-null">undefined</span></co |
| ad800 | 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>....... |
| ad820 | 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 3e 62 5f 6c | <code>a_len</code>.and.<code>b_l |
| ad840 | 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 74 68 2e 20 | en</code>.may.differ.in.length.. |
| ad860 | 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 69 6e 64 65 | Out-of-bounds.element.......inde |
| ad880 | 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 75 6c 74 20 | xes.in.<code>mask</code>.result. |
| ad8a0 | 69 6e 20 63 6f 6d 70 69 6c 65 20 65 72 72 6f 72 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 | in.compile.errors........</p>... |
| ad8c0 | 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 64 65 3e 20 | ....<p>.......If.<code>a</code>. |
| ad8e0 | 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 73 70 61 6e | or.<code>b</code>.is.<code><span |
| ad900 | 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 |
| ad920 | 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 61 6c 65 6e | n></code>,.it.......is.equivalen |
| ad940 | 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 73 70 61 6e | t.to.a.vector.of.all.<code><span |
| ad960 | 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 |
| ad980 | 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 74 68 20 61 | n></code>.with.the.same.length.a |
| ad9a0 | 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 20 62 6f 74 | s.the.other.vector........If.bot |
| ad9c0 | 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 61 73 73 3d | h.vectors.are.<code><span.class= |
| ad9e0 | 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 75 6e 64 65 66 69 6e 65 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 | "tok-null">undefined</span></cod |
| ada00 | 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 6c 74 | e>,.<code><span.class="tok-built |
| ada20 | 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 65 74 75 72 | in">@shuffle</span></code>.retur |
| ada40 | 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 6c 65 6d 65 | ns.......a.vector.with.all.eleme |
| ada60 | 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 75 6c 6c 22 | nts.<code><span.class="tok-null" |
| ada80 | 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 20 20 20 20 | >undefined</span></code>........ |
| adaa0 | 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 3c 2f 63 6f | </p>.......<p>.......<code>E</co |
| adac0 | 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 |
| adae0 | 73 22 3e 69 6e 74 65 67 65 72 3c 2f 61 3e 2c 20 3c 61 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 73 | s">integer</a>,.<a.href="#Floats |
| adb00 | 22 3e 66 6c 6f 61 74 3c 2f 61 3e 2c 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 50 6f 69 | ">float</a>,.......<a.href="#Poi |
| adb20 | 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 3e 3c 73 70 | nters">pointer</a>,.or.<code><sp |
| adb40 | 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>< |
| adb60 | 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 76 65 63 74 | /code>..The.mask.may.be.any.vect |
| adb80 | 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 67 74 68 20 | or.length,.and.its.......length. |
| adba0 | 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 2e 0a 20 20 | determines.the.result.length.... |
| adbc0 | 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 |
| adbe0 | 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=" |
| adc00 | 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 69 67 3c 2f | file">test_shuffle_builtin.zig</ |
| adc20 | 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 |
| adc40 | 61 6e 20 63 6c 61 73 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 |
| adc60 | 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">@ |
| adc80 | 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 |
| adca0 | 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 |
| adcc0 | 61 6e 20 63 6c 61 73 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 |
| adce0 | 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 |
| add00 | 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 |
| add20 | 70 61 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 63 74 6f 72 | pan.class="tok-str">"vector |
| add40 | 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 20 3c 73 70 | .@shuffle"</span>.{.....<sp |
| add60 | 61 6e 20 63 6c 61 73 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 |
| add80 | 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 56 65 | .=.<span.class="tok-builtin">@Ve |
| adda0 | 63 74 6f 72 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | ctor</span>(<span.class="tok-num |
| addc0 | 62 65 72 22 3e 37 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ber">7</span>,.<span.class="tok- |
| adde0 | 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 7b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | type">u8</span>){.<span.class="t |
| ade00 | 6f 6b 2d 73 74 72 22 3e 27 6f 27 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ok-str">'o'</span>,.<span.class= |
| ade20 | 22 74 6f 6b 2d 73 74 72 22 3e 27 6c 27 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 | "tok-str">'l'</span>,.<span.clas |
| ade40 | 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 68 27 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c | s="tok-str">'h'</span>,.<span.cl |
| ade60 | 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 65 27 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 | ass="tok-str">'e'</span>,.<span. |
| ade80 | 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 3c 73 70 61 | class="tok-str">'r'</span>,.<spa |
| adea0 | 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 2c 20 3c 73 | n.class="tok-str">'z'</span>,.<s |
| adec0 | 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 20 7d | pan.class="tok-str">'w'</span>.} |
| adee0 | 3b 0a 20 20 20 20 3c 73 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 |
| adf00 | 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 2d 62 75 69 | </span>.b.=.<span.class="tok-bui |
| adf20 | 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 |
| adf40 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c | ="tok-number">4</span>,.<span.cl |
| adf60 | 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 73 70 61 6e | ass="tok-type">u8</span>){.<span |
| adf80 | 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 20 3c 73 70 | .class="tok-str">'w'</span>,.<sp |
| adfa0 | 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 3e 2c 20 3c | an.class="tok-str">'d'</span>,.< |
| adfc0 | 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 61 6e 3e 2c | span.class="tok-str">'!'</span>, |
| adfe0 | 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 73 70 61 6e | .<span.class="tok-str">'x'</span |
| ae000 | 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 6f 6d 6d 65 | >.};......<span.class="tok-comme |
| ae020 | 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 69 6e 67 6c | nt">//.To.shuffle.within.a.singl |
| ae040 | 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 74 68 65 20 | e.vector,.pass.undefined.as.the. |
| ae060 | 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 3c 73 70 61 | second.argument.</span>.....<spa |
| ae080 | 6e 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 69 63 65 20 | n.class="tok-comment">//.Notice. |
| ae0a0 | 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 61 74 65 2c | that.we.can.re-order,.duplicate, |
| ae0c0 | 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 75 74 20 76 | .or.omit.elements.of.the.input.v |
| ae0e0 | 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 3d 22 74 6f | ector</span>.....<span.class="to |
| ae100 | 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 73 70 61 6e | k-kw">const</span>.mask1.=.<span |
| ae120 | 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 73 70 | .class="tok-builtin">@Vector</sp |
| ae140 | 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 35 3c 2f | an>(<span.class="tok-number">5</ |
| ae160 | 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 69 33 | span>,.<span.class="tok-type">i3 |
| ae180 | 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 6e 75 6d 62 | 2</span>){.<span.class="tok-numb |
| ae1a0 | 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 |
| ae1c0 | 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 |
| ae1e0 | 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= |
| ae200 | 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 |
| ae220 | 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 20 | ss="tok-number">0</span>.};..... |
| ae240 | 3c 73 70 61 6e 20 63 6c 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 |
| ae260 | 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 6c 74 69 6e | >.res1:.<span.class="tok-builtin |
| ae280 | 22 3e 40 56 65 63 74 6f 72 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ">@Vector</span>(<span.class="to |
| ae2a0 | 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= |
| ae2c0 | 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 6e 20 63 6c | "tok-type">u8</span>).=.<span.cl |
| ae2e0 | 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 61 6e | ass="tok-builtin">@shuffle</span |
| ae300 | 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 | >(<span.class="tok-type">u8</spa |
| ae320 | 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 22 3e 75 6e | n>,.a,.<span.class="tok-null">un |
| ae340 | 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 3c 73 70 61 | defined</span>,.mask1);.....<spa |
| ae360 | 6e 20 63 6c 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 |
| ae380 | 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 74 6f 6b 2d | ct(std.mem.eql(<span.class="tok- |
| ae3a0 | 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 63 6c 61 73 | type">u8</span>,.&<span.clas |
| ae3c0 | 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 3c 73 70 61 | s="tok-builtin">@as</span>([<spa |
| ae3e0 | 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 3c 73 | n.class="tok-number">5</span>]<s |
| ae400 | 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>,. |
| ae420 | 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 3e 26 71 75 | res1),.<span.class="tok-str">&qu |
| ae440 | 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 20 20 3c 73 | ot;hello"</span>));......<s |
| ae460 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 43 6f 6d 62 69 | pan.class="tok-comment">//.Combi |
| ae480 | 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 3c 73 70 61 | ning.two.vectors</span>.....<spa |
| ae4a0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6d 61 | n.class="tok-kw">const</span>.ma |
| ae4c0 | 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 69 6e 22 3e | sk2.=.<span.class="tok-builtin"> |
| ae4e0 | 40 56 65 63 74 6f 72 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | @Vector</span>(<span.class="tok- |
| ae500 | 6e 75 6d 62 65 72 22 3e 36 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | number">6</span>,.<span.class="t |
| ae520 | 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 20 63 6c 61 | ok-type">i32</span>){.-<span.cla |
| ae540 | 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. |
| ae560 | 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 73 70 | class="tok-number">0</span>,.<sp |
| ae580 | 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 2c 20 | an.class="tok-number">4</span>,. |
| ae5a0 | 3c 73 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 |
| ae5c0 | 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 32 3c 2f | >,.-<span.class="tok-number">2</ |
| ae5e0 | 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" |
| ae600 | 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 3d 22 74 6f | >3</span>.};.....<span.class="to |
| ae620 | 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 61 6e 20 63 | k-kw">const</span>.res2:.<span.c |
| ae640 | 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 |
| ae660 | 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 3c 2f 73 70 | >(<span.class="tok-number">6</sp |
| ae680 | 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f | an>,.<span.class="tok-type">u8</ |
| ae6a0 | 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 69 6c 74 69 | span>).=.<span.class="tok-builti |
| ae6c0 | 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 73 73 3d 22 | n">@shuffle</span>(<span.class=" |
| ae6e0 | 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 61 73 6b 32 | tok-type">u8</span>,.a,.b,.mask2 |
| ae700 | 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< |
| ae720 | 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 73 74 64 2e 6d 65 6d 2e 65 71 6c 28 3c 73 70 61 6e 20 | /span>.expect(std.mem.eql(<span. |
| ae740 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 26 61 6d 70 | class="tok-type">u8</span>,.& |
| ae760 | 3b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 61 73 3c 2f | ;<span.class="tok-builtin">@as</ |
| ae780 | 73 70 61 6e 3e 28 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e | span>([<span.class="tok-number"> |
| ae7a0 | 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 70 65 22 3e | 6</span>]<span.class="tok-type"> |
| ae7c0 | 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 73 3d 22 74 | u8</span>,.res2),.<span.class="t |
| ae7e0 | 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 73 70 61 6e | ok-str">"world!"</span |
| ae800 | 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 67 | >));.}</code></pre></figure><fig |
| ae820 | 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 |
| ae840 | 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>$ |
| ae860 | 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 62 75 69 6c | .<kbd>zig.test.test_shuffle_buil |
| ae880 | 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 6c 65 5f 62 | tin.zig</kbd>.1/1.test_shuffle_b |
| ae8a0 | 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 2e 2e 4f 4b | uiltin.test.vector.@shuffle...OK |
| ae8c0 | 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 |
| ae8e0 | 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:< |
| ae900 | 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 |
| ae920 | 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>........... |
| ae940 | 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 3d 22 23 74 | .....<h3.id="sizeOf"><a.href="#t |
| ae960 | 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 61 73 73 3d | oc-sizeOf">@sizeOf</a>.<a.class= |
| ae980 | 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 2f 68 33 3e | "hdr".href="#sizeOf">..</a></h3> |
| ae9a0 | 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=" |
| ae9c0 | 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 69 7a 65 4f 66 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 | tok-builtin">@sizeOf</span>(<spa |
| ae9e0 | 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> |
| aea00 | 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< |
| aea20 | 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 63 | /span>).<span.class="tok-type">c |
| aea40 | 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 72 65 3e 0a | omptime_int</span></code></pre>. |
| aea60 | 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 72 65 | ......<p>.......This.function.re |
| aea80 | 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 20 74 61 6b | turns.the.number.of.bytes.it.tak |
| aeaa0 | 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 6e 20 6d 65 | es.to.store.<code>T</code>.in.me |
| aeac0 | 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 74 61 72 67 | mory........The.result.is.a.targ |
| aeae0 | 65 74 2d 73 70 65 63 69 66 69 63 20 63 6f 6d 70 69 6c 65 20 74 69 6d 65 20 63 6f 6e 73 74 61 6e | et-specific.compile.time.constan |
| aeb00 | 74 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 | t........</p>.......<p>.......Th |
| aeb20 | 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 62 79 74 65 | is.size.may.contain.padding.byte |
| aeb40 | 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 74 69 76 65 | s..If.there.were.two.consecutive |
| aeb60 | 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 75 6c 64 20 | .T.in.memory,.the.padding.would. |
| aeb80 | 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 20 62 65 74 | be.the.offset.......in.bytes.bet |
| aeba0 | 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 74 68 65 20 | ween.element.at.index.0.and.the. |
| aebc0 | 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 72 65 66 3d | element.at.index.1..For.<a.href= |
| aebe0 | 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 20 20 20 63 | "#Integers">integer</a>,.......c |
| aec00 | 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 75 73 65 20 | onsider.whether.you.want.to.use. |
| aec20 | 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"> |
| aec40 | 40 73 69 7a 65 4f 66 3c 2f 73 70 61 6e 3e 28 54 29 3c 2f 63 6f 64 65 3e 20 6f 72 0a 20 20 20 20 | @sizeOf</span>(T)</code>.or..... |
| aec60 | 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 |
| aec80 | 22 3e 40 74 79 70 65 49 6e 66 6f 3c 2f 73 70 61 6e 3e 28 54 29 2e 69 6e 74 2e 62 69 74 73 3c 2f | ">@typeInfo</span>(T).int.bits</ |
| aeca0 | 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 | code>........</p>.......<p>..... |
| aecc0 | 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 20 73 69 7a | ..This.function.measures.the.siz |
| aece0 | 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 20 61 72 65 | e.at.runtime..For.types.that.are |
| aed00 | 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 20 61 73 0a | .disallowed.at.runtime,.such.as. |
| aed20 | 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 70 | ......<code><span.class="tok-typ |
| aed40 | 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 20 61 6e | e">comptime_int</span></code>.an |
| aed60 | 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 65 22 3e 74 | d.<code><span.class="tok-type">t |
| aed80 | 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 74 20 69 73 | ype</span></code>,.the.result.is |
| aeda0 | 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e | .<code><span.class="tok-number"> |
| aedc0 | 30 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 | 0</span></code>........</p>..... |
| aede0 | 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 |
| aee00 | 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 61 3e 3c 2f | ef="#bitSizeOf">@bitSizeOf</a></ |
| aee20 | 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 40 74 79 70 | li>.<li><a.href="#typeInfo">@typ |
| aee40 | 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 0a 0a 20 20 | eInfo</a></li>.</ul>............ |
| aee60 | 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 23 74 6f 63 | ....<h3.id="splat"><a.href="#toc |
| aee80 | 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 22 68 64 72 | -splat">@splat</a>.<a.class="hdr |
| aeea0 | 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 0a 20 20 20 | ".href="#splat">..</a></h3>..... |
| aeec0 | 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 |
| aeee0 | 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 3a 20 3c 73 | uiltin">@splat</span>(scalar:.<s |
| aef00 | 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 |
| aef20 | 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 79 74 79 70 65 3c | >).<span.class="tok-kw">anytype< |
| aef40 | 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 | /span></code></pre>.......<p>... |
| aef60 | 20 20 20 20 50 72 6f 64 75 63 65 73 20 61 6e 20 61 72 72 61 79 20 6f 72 20 76 65 63 74 6f 72 20 | ....Produces.an.array.or.vector. |
| aef80 | 77 68 65 72 65 20 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 0a | where.each.element.is.the.value. |
| aefa0 | 20 20 20 20 20 20 3c 63 6f 64 65 3e 73 63 61 6c 61 72 3c 2f 63 6f 64 65 3e 2e 20 54 68 65 20 72 | ......<code>scalar</code>..The.r |
| aefc0 | 65 74 75 72 6e 20 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 | eturn.type.and.thus.the.length.o |
| aefe0 | 66 20 74 68 65 0a 20 20 20 20 20 20 76 65 63 74 6f 72 20 69 73 20 69 6e 66 65 72 72 65 64 2e 0a | f.the.......vector.is.inferred.. |
| af000 | 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 |
| af020 | 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 |
| af040 | 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 73 70 6c 61 74 5f 62 75 69 6c 74 69 6e 2e 7a 69 67 3c 2f | ="file">test_splat_builtin.zig</ |
| af060 | 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 |
| af080 | 61 6e 20 63 6c 61 73 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 |
| af0a0 | 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">@ |
| af0c0 | 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 |
| af0e0 | 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 |
| af100 | 61 6e 20 63 6c 61 73 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 |
| af120 | 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 |
| af140 | 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 |
| af160 | 70 61 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 63 74 6f 72 | pan.class="tok-str">"vector |
| af180 | 20 40 73 70 6c 61 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 | .@splat"</span>.{.....<span |
| af1a0 | 20 63 6c 61 73 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 63 61 | .class="tok-kw">const</span>.sca |
| af1c0 | 6c 61 72 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c | lar:.<span.class="tok-type">u32< |
| af1e0 | 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 |
| af200 | 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 6b | ">5</span>;.....<span.class="tok |
| af220 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 72 65 73 75 6c 74 3a 20 3c 73 70 61 6e 20 | -kw">const</span>.result:.<span. |
| af240 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 56 65 63 74 6f 72 3c 2f 73 70 61 | class="tok-builtin">@Vector</spa |
| af260 | 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 | n>(<span.class="tok-number">4</s |
| af280 | 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 | pan>,.<span.class="tok-type">u32 |
| af2a0 | 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 69 6c | </span>).=.<span.class="tok-buil |
| af2c0 | 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 29 3b 0a 20 20 20 20 | tin">@splat</span>(scalar);..... |
| af2e0 | 3c 73 70 61 6e 20 63 6c 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>. |
| af300 | 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=" |
| af320 | 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 2c 20 26 61 6d 70 3b 3c 73 70 61 6e | tok-type">u32</span>,.&<span |
| af340 | 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>( |
| af360 | 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 | [<span.class="tok-number">4</spa |
| af380 | 6e 3e 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 | n>]<span.class="tok-type">u32</s |
| af3a0 | 70 61 6e 3e 2c 20 72 65 73 75 6c 74 29 2c 20 26 61 6d 70 3b 5b 5f 5d 3c 73 70 61 6e 20 63 6c 61 | pan>,.result),.&[_]<span.cla |
| af3c0 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 7b 20 3c 73 70 61 6e 20 | ss="tok-type">u32</span>{.<span. |
| af3e0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 | class="tok-number">5</span>,.<sp |
| af400 | 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>,. |
| af420 | 3c 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 |
| af440 | 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 | >,.<span.class="tok-number">5</s |
| af460 | 70 61 6e 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 6b 77 | pan>.}));.}..<span.class="tok-kw |
| af480 | 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 | ">test</span>.<span.class="tok-s |
| af4a0 | 74 72 22 3e 26 71 75 6f 74 3b 61 72 72 61 79 20 40 73 70 6c 61 74 26 71 75 6f 74 3b 3c 2f 73 70 | tr">"array.@splat"</sp |
| af4c0 | 61 6e 3e 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 |
| af4e0 | 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 6c 61 73 73 3d | onst</span>.scalar:.<span.class= |
| af500 | 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 |
| af520 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c | ass="tok-number">5</span>;.....< |
| af540 | 73 70 61 6e 20 63 6c 61 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> |
| af560 | 20 72 65 73 75 6c 74 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 | .result:.[<span.class="tok-numbe |
| af580 | 72 22 3e 34 3c 2f 73 70 61 6e 3e 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | r">4</span>]<span.class="tok-typ |
| af5a0 | 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 |
| af5c0 | 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 29 3b | -builtin">@splat</span>(scalar); |
| af5e0 | 0a 20 20 20 20 3c 73 70 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 |
| af600 | 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 6c | pan>.expect(std.mem.eql(<span.cl |
| af620 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 2c 20 26 61 6d 70 3b | ass="tok-type">u32</span>,.& |
| af640 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 61 73 3c 2f 73 | <span.class="tok-builtin">@as</s |
| af660 | 70 61 6e 3e 28 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 | pan>([<span.class="tok-number">4 |
| af680 | 3c 2f 73 70 61 6e 3e 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 | </span>]<span.class="tok-type">u |
| af6a0 | 33 32 3c 2f 73 70 61 6e 3e 2c 20 72 65 73 75 6c 74 29 2c 20 26 61 6d 70 3b 5b 5f 5d 3c 73 70 61 | 32</span>,.result),.&[_]<spa |
| af6c0 | 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 20 3c | n.class="tok-type">u32</span>{.< |
| af6e0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e | span.class="tok-number">5</span> |
| af700 | 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 |
| af720 | 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c | an>,.<span.class="tok-number">5< |
| af740 | 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" |
| af760 | 3e 35 3c 2f 73 70 61 6e 3e 20 7d 29 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 | >5</span>.}));.}</code></pre></f |
| af780 | 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= |
| af7a0 | 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 |
| af7c0 | 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 70 | re><samp>$.<kbd>zig.test.test_sp |
| af7e0 | 6c 61 74 5f 62 75 69 6c 74 69 6e 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 32 20 74 65 73 74 5f 73 | lat_builtin.zig</kbd>.1/2.test_s |
| af800 | 70 6c 61 74 5f 62 75 69 6c 74 69 6e 2e 74 65 73 74 2e 76 65 63 74 6f 72 20 40 73 70 6c 61 74 2e | plat_builtin.test.vector.@splat. |
| af820 | 2e 2e 4f 4b 0a 32 2f 32 20 74 65 73 74 5f 73 70 6c 61 74 5f 62 75 69 6c 74 69 6e 2e 74 65 73 74 | ..OK.2/2.test_splat_builtin.test |
| af840 | 2e 61 72 72 61 79 20 40 73 70 6c 61 74 2e 2e 2e 4f 4b 0a 41 6c 6c 20 32 20 74 65 73 74 73 20 70 | .array.@splat...OK.All.2.tests.p |
| af860 | 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>... |
| af880 | 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 64 | .....<p>.......<code>scalar</cod |
| af8a0 | 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 73 | e>.must.be.an.<a.href="#Integers |
| af8c0 | 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 69 | ">integer</a>,.<a.href="#Primiti |
| af8e0 | 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 65 | ve-Types">bool</a>,.......<a.hre |
| af900 | 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 65 | f="#Floats">float</a>,.or.<a.hre |
| af920 | 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 20 | f="#Pointers">pointer</a>....... |
| af940 | 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> |
| af960 | 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 3c | .<li><a.href="#Vectors">Vectors< |
| af980 | 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 3e | /a></li>.<li><a.href="#shuffle"> |
| af9a0 | 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 0a | @shuffle</a></li>.</ul>......... |
| af9c0 | 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 22 | .......<h3.id="reduce"><a.href=" |
| af9e0 | 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 73 | #toc-reduce">@reduce</a>.<a.clas |
| afa00 | 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 68 | s="hdr".href="#reduce">..</a></h |
| afa20 | 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 |
| afa40 | 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 73 | ="tok-builtin">@reduce</span>(<s |
| afa60 | 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 |
| afa80 | 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 6c | n>.op:.std.builtin.ReduceOp,.val |
| afaa0 | 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 |
| afac0 | 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 70 | </span>).E</code></pre>.......<p |
| afae0 | 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 56 | >.......Transforms.a.<a.href="#V |
| afb00 | 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 72 | ectors">vector</a>.into.a.scalar |
| afb20 | 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 0a | .value.(of.type.<code>E</code>). |
| afb40 | 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 6c | ......by.performing.a.sequential |
| afb60 | 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 65 | .horizontal.reduction.of.its.ele |
| afb80 | 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 20 | ments.using.the.......specified. |
| afba0 | 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 20 | operator.<code>op</code>........ |
| afbc0 | 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 6f | </p>.......<p>.......Not.every.o |
| afbe0 | 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 76 | perator.is.available.for.every.v |
| afc00 | 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 20 | ector.element.type:.......</p>.. |
| afc20 | 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 70 | .....<ul>...........<li>Every.op |
| afc40 | 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 3d | erator.is.available.for.<a.href= |
| afc60 | 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 2e | "#Integers">integer</a>.vectors. |
| afc80 | 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 2f | </li>...........<li><code>.And</ |
| afca0 | 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 20 | code>,.<code>.Or</code>,........ |
| afcc0 | 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 74 | .....<code>.Xor</code>.are.addit |
| afce0 | 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 20 | ionally.available.for........... |
| afd00 | 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 62 | ..<code><span.class="tok-type">b |
| afd20 | 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 0a | ool</span></code>.vectors,</li>. |
| afd40 | 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 2c | ..........<li><code>.Min</code>, |
| afd60 | 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 20 | .<code>.Max</code>,............. |
| afd80 | 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 63 | <code>.Add</code>,.<code>.Mul</c |
| afda0 | 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 6c | ode>.are.............additionall |
| afdc0 | 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 73 | y.available.for.<a.href="#Floats |
| afde0 | 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 6c | ">floating.point</a>.vectors,</l |
| afe00 | 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 4e | i>.......</ul>.......<p>.......N |
| afe20 | 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 3c | ote.that.<code>.Add</code>.and.< |
| afe40 | 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 6e | code>.Mul</code>.......reduction |
| afe60 | 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 67 | s.on.integral.types.are.wrapping |
| afe80 | 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 74 | ;.when.applied.on.floating.point |
| afea0 | 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 63 | .......types.the.operation.assoc |
| afec0 | 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 68 | iativity.is.preserved,.unless.th |
| afee0 | 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 6f | e.float.mode.is.......set.to.<co |
| aff00 | 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 0a | de>Optimized</code>........</p>. |
| aff20 | 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= |
| aff40 | 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 |
| aff60 | 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 67 | t_reduce_builtin.zig</cite></fig |
| aff80 | 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=" |
| affa0 | 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 |
| affc0 | 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 |
| affe0 | 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">" |
| b0000 | 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=" |
| b0020 | 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 |
| b0040 | 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=" |
| b0060 | 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= |
| b0080 | 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 71 | "tok-str">"vector.@reduce&q |
| b00a0 | 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 |
| b00c0 | 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 6c | ok-kw">const</span>.V.=.<span.cl |
| b00e0 | 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> |
| b0100 | 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 |
| b0120 | 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</ |
| b0140 | 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" |
| b0160 | 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 63 | >const</span>.value.=.V{.<span.c |
| b0180 | 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 70 | lass="tok-number">1</span>,.-<sp |
| b01a0 | 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>,. |
| b01c0 | 3c 73 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 |
| b01e0 | 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 2f | >,.-<span.class="tok-number">1</ |
| b0200 | 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 |
| b0220 | 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 67 | ">const</span>.result.=.value.&g |
| b0240 | 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 73 | t;.<span.class="tok-builtin">@as |
| b0260 | 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 6c | </span>(V,.<span.class="tok-buil |
| b0280 | 74 69 6e 22 3e 40 73 70 6c 61 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | tin">@splat</span>(<span.class=" |
| b02a0 | 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 61 | tok-number">0</span>));.....<spa |
| b02c0 | 6e 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 20 | n.class="tok-comment">//.result. |
| b02e0 | 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 3b | is.{.true,.false,.true,.false.}; |
| b0300 | 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" |
| b0320 | 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" |
| b0340 | 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 6c | >comptime</span>.expect(<span.cl |
| b0360 | 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> |
| b0380 | 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 69 | (result).==.<span.class="tok-bui |
| b03a0 | 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 |
| b03c0 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c | ="tok-number">4</span>,.<span.cl |
| b03e0 | 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 20 | ass="tok-type">bool</span>));... |
| b0400 | 20 20 3c 73 70 61 6e 20 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 |
| b0420 | 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 74 | an>.is_all_true.=.<span.class="t |
| b0440 | 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 2c | ok-builtin">@reduce</span>(.And, |
| b0460 | 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 6b | .result);.....<span.class="tok-k |
| b0480 | 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 6b | w">try</span>.<span.class="tok-k |
| b04a0 | 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 20 | w">comptime</span>.expect(<span. |
| b04c0 | 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 |
| b04e0 | 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 22 | n>(is_all_true).==.<span.class=" |
| b0500 | 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 61 | tok-type">bool</span>);.....<spa |
| b0520 | 6e 20 63 6c 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 |
| b0540 | 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 74 | ct(is_all_true.==.<span.class="t |
| b0560 | 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 3e | ok-null">false</span>);.}</code> |
| b0580 | 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 |
| b05a0 | 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 |
| b05c0 | 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 |
| b05e0 | 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 0a | t.test_reduce_builtin.zig</kbd>. |
| b0600 | 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 63 | 1/1.test_reduce_builtin.test.vec |
| b0620 | 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 73 | tor.@reduce...OK.All.1.tests.pas |
| b0640 | 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>..... |
| b0660 | 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 |
| b0680 | 72 65 66 3d 22 23 56 65 63 74 6f 72 73 22 3e 56 65 63 74 6f 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a | ref="#Vectors">Vectors</a></li>. |
| b06a0 | 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 74 | <li><a.href="#setFloatMode">@set |
| b06c0 | 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 20 | FloatMode</a></li>.</ul>........ |
| b06e0 | 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 74 | ........<h3.id="src"><a.href="#t |
| b0700 | 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 20 | oc-src">@src</a>.<a.class="hdr". |
| b0720 | 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 3c | href="#src">..</a></h3>........< |
| b0740 | 70 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 |
| b0760 | 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 6f | in">@src</span>().std.builtin.So |
| b0780 | 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 20 | urceLocation</code></pre>....... |
| b07a0 | 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 65 | <p>.......Returns.a.<code>Source |
| b07c0 | 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 74 | Location</code>.struct.represent |
| b07e0 | 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 61 | ing.the.function's.name.and.loca |
| b0800 | 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 75 | tion.in.the.source.code..This.mu |
| b0820 | 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 20 | st.be.called.in.a.function...... |
| b0840 | 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 |
| b0860 | 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 |
| b0880 | 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 3c | le">test_src_builtin.zig</cite>< |
| b08a0 | 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 |
| b08c0 | 73 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.=.< |
| b08e0 | 73 70 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 |
| b0900 | 3c 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 |
| b0920 | 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 |
| b0940 | 73 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. |
| b0960 | 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 |
| b0980 | 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 |
| b09a0 | 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 2f | ass="tok-str">"@src"</ |
| b09c0 | 73 70 61 6e 3e 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" |
| b09e0 | 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 61 | >try</span>.doTheTest();.}..<spa |
| b0a00 | 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 |
| b0a20 | 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 3e | .class="tok-fn">doTheTest</span> |
| b0a40 | 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 3c | ().!<span.class="tok-type">void< |
| b0a60 | 2f 73 70 61 6e 3e 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 |
| b0a80 | 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 73 | ">const</span>.src.=.<span.class |
| b0aa0 | 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 20 | ="tok-builtin">@src</span>();... |
| b0ac0 | 20 20 20 3c 73 70 61 6e 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 |
| b0ae0 | 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 73 | n>.expect(src.line.==.<span.clas |
| b0b00 | 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 73 | s="tok-number">9</span>);.....<s |
| b0b20 | 70 61 6e 20 63 6c 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 |
| b0b40 | 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 22 | pect(src.column.==.<span.class=" |
| b0b60 | 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 61 | tok-number">17</span>);.....<spa |
| b0b80 | 6e 20 63 6c 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 |
| b0ba0 | 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 3d | ct(std.mem.endsWith(<span.class= |
| b0bc0 | 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 6d | "tok-type">u8</span>,.src.fn_nam |
| b0be0 | 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 64 | e,.<span.class="tok-str">"d |
| b0c00 | 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 70 | oTheTest"</span>));.....<sp |
| b0c20 | 61 6e 20 63 6c 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 |
| b0c40 | 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 |
| b0c60 | 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 2c | ="tok-type">u8</span>,.src.file, |
| b0c80 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 74 65 73 | .<span.class="tok-str">"tes |
| b0ca0 | 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 29 | t_src_builtin.zig"</span>)) |
| b0cc0 | 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 |
| b0ce0 | 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 |
| b0d00 | 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 |
| b0d20 | 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 67 | bd>zig.test.test_src_builtin.zig |
| b0d40 | 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 74 | </kbd>.1/1.test_src_builtin.test |
| b0d60 | 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 3c | .@src...OK.All.1.tests.passed..< |
| b0d80 | 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>........... |
| b0da0 | 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 2d | ....<h3.id="sqrt"><a.href="#toc- |
| b0dc0 | 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 68 | sqrt">@sqrt</a>.<a.class="hdr".h |
| b0de0 | 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 3c | ref="#sqrt">..</a></h3>........< |
| b0e00 | 70 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 |
| b0e20 | 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 6c | in">@sqrt</span>(value:.<span.cl |
| b0e40 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 79 74 79 70 65 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 | ass="tok-kw">anytype</span>).<sp |
| b0e60 | 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</ |
| b0e80 | 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 20 | span>(value)</code></pre>....... |
| b0ea0 | 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 6f | <p>.......Performs.the.square.ro |
| b0ec0 | 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 55 | ot.of.a.floating.point.number..U |
| b0ee0 | 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 63 | ses.a.dedicated.hardware.instruc |
| b0f00 | 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 20 | tion.......when.available....... |
| b0f20 | 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 53 75 70 70 6f 72 74 73 20 3c | .</p>.......<p>.......Supports.< |
| b0f40 | 61 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 73 22 3e 46 6c 6f 61 74 73 3c 2f 61 3e 20 61 6e 64 20 | a.href="#Floats">Floats</a>.and. |
| b0f60 | 3c 61 20 68 72 65 66 3d 22 23 56 65 63 74 6f 72 73 22 3e 56 65 63 74 6f 72 73 3c 2f 61 3e 20 6f | <a.href="#Vectors">Vectors</a>.o |
| b0f80 | 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 20 | f.floats........</p>............ |
| b0fa0 | 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 6e | ..<h3.id="sin"><a.href="#toc-sin |
| b0fc0 | 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 22 | ">@sin</a>.<a.class="hdr".href=" |
| b0fe0 | 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 63 | #sin">..</a></h3>........<pre><c |
| b1000 | 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 | ode><span.class="tok-builtin">@s |
| b1020 | 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 6f | in</span>(value:.<span.class="to |
| b1040 | 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 |
| b1060 | 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 76 | s="tok-builtin">@TypeOf</span>(v |
| b1080 | 61 6c 75 65 29 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 | alue)</code></pre>.......<p>.... |
| b10a0 | 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 6f | ...Sine.trigonometric.function.o |
| b10c0 | 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 64 | n.a.floating.point.number.in.rad |
| b10e0 | 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 20 | ians..Uses.a.dedicated.hardware. |
| b1100 | 69 6e 73 74 72 75 63 74 69 6f 6e 0a 20 20 20 20 20 20 77 68 65 6e 20 61 76 61 69 6c 61 62 6c 65 | instruction.......when.available |
| b1120 | 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 53 75 70 | ........</p>.......<p>.......Sup |
| b1140 | 70 6f 72 74 73 20 3c 61 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 73 22 3e 46 6c 6f 61 74 73 3c 2f | ports.<a.href="#Floats">Floats</ |
| b1160 | 61 3e 20 61 6e 64 20 3c 61 20 68 72 65 66 3d 22 23 56 65 63 74 6f 72 73 22 3e 56 65 63 74 6f 72 | a>.and.<a.href="#Vectors">Vector |
| b1180 | 73 3c 2f 61 3e 20 6f 66 20 66 6c 6f 61 74 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 | s</a>.of.floats........</p>..... |
| b11a0 | 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 22 | ..........<h3.id="cos"><a.href=" |
| b11c0 | 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 72 | #toc-cos">@cos</a>.<a.class="hdr |
| b11e0 | 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 20 | ".href="#cos">..</a></h3>....... |
| b1200 | 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 |
| b1220 | 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 63 | ltin">@cos</span>(value:.<span.c |
| b1240 | 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 |
| b1260 | 70 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< |
| b1280 | 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>...... |
| b12a0 | 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 20 | .<p>.......Cosine.trigonometric. |
| b12c0 | 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 6d | function.on.a.floating.point.num |
| b12e0 | 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 64 | ber.in.radians..Uses.a.dedicated |
| b1300 | 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 |
| b1320 | 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> |
| b1340 | 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 |
| b1360 | 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 |
| b1380 | 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....... |
| b13a0 | 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 22 | .</p>...............<h3.id="tan" |
| b13c0 | 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 20 | ><a.href="#toc-tan">@tan</a>.<a. |
| b13e0 | 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 2f | class="hdr".href="#tan">..</a></ |
| b1400 | 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 |
| b1420 | 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 75 | s="tok-builtin">@tan</span>(valu |
| b1440 | 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 79 74 79 70 65 3c | e:.<span.class="tok-kw">anytype< |
| b1460 | 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 6e | /span>).<span.class="tok-builtin |
| b1480 | 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 2f | ">@TypeOf</span>(value)</code></ |
| b14a0 | 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 69 | pre>.......<p>.......Tangent.tri |
| b14c0 | 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 6e | gonometric.function.on.a.floatin |
| b14e0 | 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 20 | g.point.number.in.radians....... |
| b1500 | 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 |
| b1520 | 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 70 | uction.when.available........</p |
| b1540 | 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 72 | >.......<p>.......Supports.<a.hr |
| b1560 | 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 68 | ef="#Floats">Floats</a>.and.<a.h |
| b1580 | 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 6c | ref="#Vectors">Vectors</a>.of.fl |
| b15a0 | 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 3c | oats........</p>...............< |
| b15c0 | 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 40 | h3.id="exp"><a.href="#toc-exp">@ |
| b15e0 | 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 78 | exp</a>.<a.class="hdr".href="#ex |
| b1600 | 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 65 | p">..</a></h3>........<pre><code |
| b1620 | 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 3c | ><span.class="tok-builtin">@exp< |
| b1640 | 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 6b | /span>(value:.<span.class="tok-k |
| b1660 | 77 22 3e 61 6e 79 74 79 70 65 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | w">anytype</span>).<span.class=" |
| b1680 | 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 75 | tok-builtin">@TypeOf</span>(valu |
| b16a0 | 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 20 | e)</code></pre>.......<p>....... |
| b16c0 | 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 61 | Base-e.exponential.function.on.a |
| b16e0 | 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 |
| b1700 | 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... |
| b1720 | 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>.. |
| b1740 | 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= |
| b1760 | 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 |
| b1780 | 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 |
| b17a0 | 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 |
| b17c0 | 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 78 | d="exp2"><a.href="#toc-exp2">@ex |
| b17e0 | 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 70 | p2</a>.<a.class="hdr".href="#exp |
| b1800 | 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 |
| b1820 | 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 32 | ><span.class="tok-builtin">@exp2 |
| b1840 | 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- |
| b1860 | 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= |
| b1880 | 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 |
| b18a0 | 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>...... |
| b18c0 | 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 20 | .Base-2.exponential.function.on. |
| b18e0 | 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. |
| b1900 | 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.. |
| b1920 | 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>. |
| b1940 | 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 |
| b1960 | 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 |
| b1980 | 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 |
| b19a0 | 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. |
| b19c0 | 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 67 | id="log"><a.href="#toc-log">@log |
| b19e0 | 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 3e | </a>.<a.class="hdr".href="#log"> |
| b1a00 | 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 |
| b1a20 | 70 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 70 | pan.class="tok-builtin">@log</sp |
| b1a40 | 61 6e 3e 28 76 61 6c 75 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | an>(value:.<span.class="tok-kw"> |
| b1a60 | 61 6e 79 74 79 70 65 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | anytype</span>).<span.class="tok |
| b1a80 | 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 76 61 6c 75 65 29 3c | -builtin">@TypeOf</span>(value)< |
| b1aa0 | 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 52 65 74 | /code></pre>.......<p>.......Ret |
| b1ac0 | 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 20 | urns.the.natural.logarithm.of.a. |
| b1ae0 | 66 6c 6f 61 74 69 6e 67 20 70 6f 69 6e 74 20 6e 75 6d 62 65 72 2e 20 55 73 65 73 20 61 20 64 65 | floating.point.number..Uses.a.de |
| b1b00 | 64 69 63 61 74 65 64 20 68 61 72 64 77 61 72 65 20 69 6e 73 74 72 75 63 74 69 6f 6e 0a 20 20 20 | dicated.hardware.instruction.... |
| b1b20 | 20 20 20 77 68 65 6e 20 61 76 61 69 6c 61 62 6c 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 | ...when.available........</p>... |
| b1b40 | 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 53 75 70 70 6f 72 74 73 20 3c 61 20 68 72 65 66 3d 22 | ....<p>.......Supports.<a.href=" |
| b1b60 | 23 46 6c 6f 61 74 73 22 3e 46 6c 6f 61 74 73 3c 2f 61 3e 20 61 6e 64 20 3c 61 20 68 72 65 66 3d | #Floats">Floats</a>.and.<a.href= |
| b1b80 | 22 23 56 65 63 74 6f 72 73 22 3e 56 65 63 74 6f 72 73 3c 2f 61 3e 20 6f 66 20 66 6c 6f 61 74 73 | "#Vectors">Vectors</a>.of.floats |
| b1ba0 | 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 33 20 69 64 | ........</p>..............<h3.id |
| b1bc0 | 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 67 | ="log2"><a.href="#toc-log2">@log |
| b1be0 | 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 32 | 2</a>.<a.class="hdr".href="#log2 |
| b1c00 | 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> |
| b1c20 | 3c 73 70 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 3c | <span.class="tok-builtin">@log2< |
| b1c40 | 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 6b | /span>(value:.<span.class="tok-k |
| b1c60 | 77 22 3e 61 6e 79 74 79 70 65 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | w">anytype</span>).<span.class=" |
| b1c80 | 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 75 | tok-builtin">@TypeOf</span>(valu |
| b1ca0 | 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 20 | e)</code></pre>.......<p>....... |
| b1cc0 | 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 73 | Returns.the.logarithm.to.the.bas |
| b1ce0 | 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 20 | e.2.of.a.floating.point.number.. |
| b1d00 | 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 |
| b1d20 | 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...... |
| b1d40 | 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. |
| b1d60 | 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 |
| b1d80 | 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>. |
| b1da0 | 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>........... |
| b1dc0 | 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 2d | ...<h3.id="log10"><a.href="#toc- |
| b1de0 | 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 22 | log10">@log10</a>.<a.class="hdr" |
| b1e00 | 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 20 | .href="#log10">..</a></h3>...... |
| b1e20 | 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 |
| b1e40 | 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 61 | iltin">@log10</span>(value:.<spa |
| b1e60 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 79 74 79 70 65 3c 2f 73 70 61 6e 3e 29 | n.class="tok-kw">anytype</span>) |
| b1e80 | 20 3c 73 70 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 |
| b1ea0 | 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 20 | Of</span>(value)</code></pre>... |
| b1ec0 | 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 69 | ....<p>.......Returns.the.logari |
| b1ee0 | 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 67 | thm.to.the.base.10.of.a.floating |
| b1f00 | 20 70 6f 69 6e 74 20 6e 75 6d 62 65 72 2e 20 55 73 65 73 20 61 20 64 65 64 69 63 61 74 65 64 20 | .point.number..Uses.a.dedicated. |
| b1f20 | 68 61 72 64 77 61 72 65 20 69 6e 73 74 72 75 63 74 69 6f 6e 0a 20 20 20 20 20 20 77 68 65 6e 20 | hardware.instruction.......when. |
| b1f40 | 61 76 61 69 6c 61 62 6c 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a | available........</p>.......<p>. |
| b1f60 | 20 20 20 20 20 20 53 75 70 70 6f 72 74 73 20 3c 61 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 73 22 | ......Supports.<a.href="#Floats" |
| b1f80 | 3e 46 6c 6f 61 74 73 3c 2f 61 3e 20 61 6e 64 20 3c 61 20 68 72 65 66 3d 22 23 56 65 63 74 6f 72 | >Floats</a>.and.<a.href="#Vector |
| b1fa0 | 73 22 3e 56 65 63 74 6f 72 73 3c 2f 61 3e 20 6f 66 20 66 6c 6f 61 74 73 2e 0a 20 20 20 20 20 20 | s">Vectors</a>.of.floats........ |
| b1fc0 | 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 3c | </p>..............<h3.id="abs">< |
| b1fe0 | 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 6c | a.href="#toc-abs">@abs</a>.<a.cl |
| b2000 | 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 33 | ass="hdr".href="#abs">..</a></h3 |
| b2020 | 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= |
| b2040 | 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 3a | "tok-builtin">@abs</span>(value: |
| b2060 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 79 74 79 70 65 3c 2f 73 | .<span.class="tok-kw">anytype</s |
| b2080 | 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 79 74 79 | pan>).<span.class="tok-kw">anyty |
| b20a0 | 70 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e | pe</span></code></pre>.......<p> |
| b20c0 | 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 75 | .......Returns.the.absolute.valu |
| b20e0 | 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 6f | e.of.an.integer.or.a.floating.po |
| b2100 | 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 72 | int.number..Uses.a.dedicated.har |
| b2120 | 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 61 | dware.instruction.......when.ava |
| b2140 | 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 69 | ilable.........The.return.type.i |
| b2160 | 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 20 | s.always.an.unsigned.integer.of. |
| b2180 | 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 6e | the.same.bit.width.as.the.operan |
| b21a0 | 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 0a | d.if.the.operand.is.an.integer.. |
| b21c0 | 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 20 | ......Unsigned.integer.operands. |
| b21e0 | 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 6f | are.supported..The.builtin.canno |
| b2200 | 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 70 | t.overflow.for.signed.integer.op |
| b2220 | 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 20 | erands........</p>.......<p>.... |
| b2240 | 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 |
| b2260 | 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 6e | oats</a>,.<a.href="#Integers">In |
| b2280 | 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 73 | tegers</a>.and.<a.href="#Vectors |
| b22a0 | 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 67 | ">Vectors</a>.of.floats.or.integ |
| b22c0 | 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 33 | ers........</p>..............<h3 |
| b22e0 | 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 22 | .id="floor"><a.href="#toc-floor" |
| b2300 | 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 3d | >@floor</a>.<a.class="hdr".href= |
| b2320 | 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 65 | "#floor">..</a></h3>........<pre |
| b2340 | 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" |
| b2360 | 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 73 | >@floor</span>(value:.<span.clas |
| b2380 | 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 |
| b23a0 | 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 |
| b23c0 | 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 |
| b23e0 | 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 65 | >.......Returns.the.largest.inte |
| b2400 | 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 20 | gral.value.not.greater.than.the. |
| b2420 | 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 20 | given.floating.point.number..... |
| b2440 | 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 73 | ...Uses.a.dedicated.hardware.ins |
| b2460 | 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 3c | truction.when.available........< |
| b2480 | 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 53 75 70 70 6f 72 74 73 20 3c 61 20 | /p>.......<p>.......Supports.<a. |
| b24a0 | 68 72 65 66 3d 22 23 46 6c 6f 61 74 73 22 3e 46 6c 6f 61 74 73 3c 2f 61 3e 20 61 6e 64 20 3c 61 | href="#Floats">Floats</a>.and.<a |
| b24c0 | 20 68 72 65 66 3d 22 23 56 65 63 74 6f 72 73 22 3e 56 65 63 74 6f 72 73 3c 2f 61 3e 20 6f 66 20 | .href="#Vectors">Vectors</a>.of. |
| b24e0 | 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 20 | floats........</p>.............. |
| b2500 | 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 6c | <h3.id="ceil"><a.href="#toc-ceil |
| b2520 | 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 3d | ">@ceil</a>.<a.class="hdr".href= |
| b2540 | 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 3e | "#ceil">..</a></h3>........<pre> |
| b2560 | 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"> |
| b2580 | 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 3d | @ceil</span>(value:.<span.class= |
| b25a0 | 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 |
| b25c0 | 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 |
| b25e0 | 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 0a | >(value)</code></pre>.......<p>. |
| b2600 | 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 67 | ......Returns.the.smallest.integ |
| b2620 | 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 65 | ral.value.not.less.than.the.give |
| b2640 | 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 55 | n.floating.point.number........U |
| b2660 | 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 63 | ses.a.dedicated.hardware.instruc |
| b2680 | 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 0a | tion.when.available........</p>. |
| b26a0 | 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 |
| b26c0 | 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 |
| b26e0 | 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 |
| b2700 | 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. |
| b2720 | 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 3e | id="trunc"><a.href="#toc-trunc"> |
| b2740 | 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 22 | @trunc</a>.<a.class="hdr".href=" |
| b2760 | 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 3e | #trunc">..</a></h3>........<pre> |
| b2780 | 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"> |
| b27a0 | 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 73 | @trunc</span>(value:.<span.class |
| b27c0 | 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. |
| b27e0 | 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 |
| b2800 | 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> |
| b2820 | 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 67 | .......Rounds.the.given.floating |
| b2840 | 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 77 | .point.number.to.an.integer,.tow |
| b2860 | 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 65 | ards.zero........Uses.a.dedicate |
| b2880 | 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 69 | d.hardware.instruction.when.avai |
| b28a0 | 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 20 | lable........</p>.......<p>..... |
| b28c0 | 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 6f | ..Supports.<a.href="#Floats">Flo |
| b28e0 | 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 56 | ats</a>.and.<a.href="#Vectors">V |
| b2900 | 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 3e | ectors</a>.of.floats........</p> |
| b2920 | 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 20 | ..............<h3.id="round"><a. |
| b2940 | 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 20 | href="#toc-round">@round</a>.<a. |
| b2960 | 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 3e | class="hdr".href="#round">..</a> |
| b2980 | 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 |
| b29a0 | 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 28 | ass="tok-builtin">@round</span>( |
| b29c0 | 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 |
| b29e0 | 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 69 | ype</span>).<span.class="tok-bui |
| b2a00 | 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 64 | ltin">@TypeOf</span>(value)</cod |
| b2a20 | 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 20 | e></pre>.......<p>.......Rounds. |
| b2a40 | 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 20 | the.given.floating.point.number. |
| b2a60 | 74 6f 20 74 68 65 20 6e 65 61 72 65 73 74 20 69 6e 74 65 67 65 72 2e 20 49 66 20 74 77 6f 20 69 | to.the.nearest.integer..If.two.i |
| b2a80 | 6e 74 65 67 65 72 73 20 61 72 65 20 65 71 75 61 6c 6c 79 20 63 6c 6f 73 65 2c 20 72 6f 75 6e 64 | ntegers.are.equally.close,.round |
| b2aa0 | 73 20 61 77 61 79 20 66 72 6f 6d 20 7a 65 72 6f 2e 0a 20 20 20 20 20 20 55 73 65 73 20 61 20 64 | s.away.from.zero........Uses.a.d |
| b2ac0 | 65 64 69 63 61 74 65 64 20 68 61 72 64 77 61 72 65 20 69 6e 73 74 72 75 63 74 69 6f 6e 20 77 68 | edicated.hardware.instruction.wh |
| b2ae0 | 65 6e 20 61 76 61 69 6c 61 62 6c 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c | en.available........</p>.......< |
| b2b00 | 66 69 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 |
| b2b20 | 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 72 6f 75 6e 64 | p"><cite.class="file">test_round |
| b2b40 | 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> |
| b2b60 | 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"> |
| b2b80 | 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 |
| b2ba0 | 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>(< |
| b2bc0 | 73 70 61 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 |
| b2be0 | 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 |
| b2c00 | 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>.< |
| b2c20 | 73 70 61 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 72 6f 75 6e | span.class="tok-str">"@roun |
| b2c40 | 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | d"</span>.{.....<span.class |
| b2c60 | 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 |
| b2c80 | 6e 20 63 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 | n.class="tok-builtin">@round</sp |
| b2ca0 | 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 2e 34 | an>(<span.class="tok-number">1.4 |
| b2cc0 | 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 |
| b2ce0 | 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 73 3d | ber">1</span>);.....<span.class= |
| b2d00 | 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 3c 73 70 61 6e | "tok-kw">try</span>.expect(<span |
| b2d20 | 20 63 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 | .class="tok-builtin">@round</spa |
| b2d40 | 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 2e 35 3c | n>(<span.class="tok-number">1.5< |
| b2d60 | 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 |
| b2d80 | 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | er">2</span>);.....<span.class=" |
| b2da0 | 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. |
| b2dc0 | 63 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 | class="tok-builtin">@round</span |
| b2de0 | 3e 28 2d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 2e 34 3c | >(-<span.class="tok-number">1.4< |
| b2e00 | 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 |
| b2e20 | 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 73 3d | ber">1</span>);.....<span.class= |
| b2e40 | 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 3c 73 70 61 6e | "tok-kw">try</span>.expect(<span |
| b2e60 | 20 63 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 | .class="tok-builtin">@round</spa |
| b2e80 | 6e 3e 28 2d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 2e 35 | n>(-<span.class="tok-number">2.5 |
| b2ea0 | 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 2d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | </span>).==.-<span.class="tok-nu |
| b2ec0 | 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c | mber">3</span>);.}</code></pre>< |
| b2ee0 | 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 |
| b2f00 | 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> |
| b2f20 | 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_ |
| b2f40 | 72 6f 75 6e 64 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 | round_builtin.zig</kbd>.1/1.test |
| b2f60 | 5f 72 6f 75 6e 64 5f 62 75 69 6c 74 69 6e 2e 74 65 73 74 2e 40 72 6f 75 6e 64 2e 2e 2e 4f 4b 0a | _round_builtin.test.@round...OK. |
| b2f80 | 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 |
| b2fa0 | 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 75 70 70 | ></figure>........<p>.......Supp |
| b2fc0 | 6f 72 74 73 20 3c 61 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 73 22 3e 46 6c 6f 61 74 73 3c 2f 61 | orts.<a.href="#Floats">Floats</a |
| b2fe0 | 3e 20 61 6e 64 20 3c 61 20 68 72 65 66 3d 22 23 56 65 63 74 6f 72 73 22 3e 56 65 63 74 6f 72 73 | >.and.<a.href="#Vectors">Vectors |
| b3000 | 3c 2f 61 3e 20 6f 66 20 66 6c 6f 61 74 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 | </a>.of.floats........</p>...... |
| b3020 | 20 0a 0a 20 20 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 | .........<h3.id="subWithOverflow |
| b3040 | 22 3e 3c 61 20 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 | "><a.href="#toc-subWithOverflow" |
| b3060 | 3e 40 73 75 62 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 | >@subWithOverflow</a>.<a.class=" |
| b3080 | 68 64 72 22 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 c2 a7 3c | hdr".href="#subWithOverflow">..< |
| b30a0 | 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 |
| b30c0 | 20 63 6c 61 73 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 | .class="tok-builtin">@subWithOve |
| b30e0 | 72 66 6c 6f 77 3c 2f 73 70 61 6e 3e 28 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | rflow</span>(a:.<span.class="tok |
| b3100 | 2d 6b 77 22 3e 61 6e 79 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 62 3a 20 3c 73 70 61 6e 20 63 6c | -kw">anytype</span>,.b:.<span.cl |
| b3120 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 79 74 79 70 65 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 | ass="tok-kw">anytype</span>).<sp |
| b3140 | 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>. |
| b3160 | 7b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 70 | {.<span.class="tok-builtin">@Typ |
| b3180 | 65 4f 66 3c 2f 73 70 61 6e 3e 28 61 2c 20 62 29 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | eOf</span>(a,.b),.<span.class="t |
| b31a0 | 6f 6b 2d 74 79 70 65 22 3e 75 31 3c 2f 73 70 61 6e 3e 20 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 | ok-type">u1</span>.}</code></pre |
| b31c0 | 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 50 65 72 66 6f 72 6d 73 20 3c 63 6f 64 65 | >.......<p>.......Performs.<code |
| b31e0 | 3e 61 20 2d 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 | >a.-.b</code>.and.returns.a.tupl |
| b3200 | 65 20 77 69 74 68 20 74 68 65 20 72 65 73 75 6c 74 20 61 6e 64 20 61 20 70 6f 73 73 69 62 6c 65 | e.with.the.result.and.a.possible |
| b3220 | 20 6f 76 65 72 66 6c 6f 77 20 62 69 74 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 | .overflow.bit........</p>....... |
| b3240 | 0a 0a 20 20 20 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 | ........<h3.id="tagName"><a.href |
| b3260 | 3d 22 23 74 6f 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 | ="#toc-tagName">@tagName</a>.<a. |
| b3280 | 63 6c 61 73 73 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 | class="hdr".href="#tagName">..</ |
| b32a0 | 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. |
| b32c0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 74 61 67 4e 61 6d 65 3c 2f 73 70 | class="tok-builtin">@tagName</sp |
| b32e0 | 61 6e 3e 28 76 61 6c 75 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | an>(value:.<span.class="tok-kw"> |
| b3300 | 61 6e 79 74 79 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 | anytype</span>).[:<span.class="t |
| b3320 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ok-number">0</span>]<span.class= |
| b3340 | 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 | "tok-kw">const</span>.<span.clas |
| b3360 | 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 70 | s="tok-type">u8</span></code></p |
| b3380 | 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. |
| b33a0 | 65 6e 75 6d 20 76 61 6c 75 65 20 6f 72 20 75 6e 69 6f 6e 20 76 61 6c 75 65 20 74 6f 20 61 20 73 | enum.value.or.union.value.to.a.s |
| b33c0 | 74 72 69 6e 67 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 | tring.literal.representing.the.n |
| b33e0 | 61 6d 65 2e 3c 2f 70 3e 3c 70 3e 49 66 20 74 68 65 20 65 6e 75 6d 20 69 73 20 6e 6f 6e 2d 65 78 | ame.</p><p>If.the.enum.is.non-ex |
| b3400 | 68 61 75 73 74 69 76 65 20 61 6e 64 20 74 68 65 20 74 61 67 20 76 61 6c 75 65 20 64 6f 65 73 20 | haustive.and.the.tag.value.does. |
| b3420 | 6e 6f 74 20 6d 61 70 20 74 6f 20 61 20 6e 61 6d 65 2c 20 69 74 20 69 6e 76 6f 6b 65 73 20 73 61 | not.map.to.a.name,.it.invokes.sa |
| b3440 | 66 65 74 79 2d 63 68 65 63 6b 65 64 20 3c 61 20 68 72 65 66 3d 22 23 49 6c 6c 65 67 61 6c 2d 42 | fety-checked.<a.href="#Illegal-B |
| b3460 | 65 68 61 76 69 6f 72 22 3e 49 6c 6c 65 67 61 6c 20 42 65 68 61 76 69 6f 72 3c 2f 61 3e 2e 0a 20 | ehavior">Illegal.Behavior</a>... |
| b3480 | 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 3d 22 | .....</p>...............<h3.id=" |
| b34a0 | 54 68 69 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 54 68 69 73 22 3e 40 54 68 69 73 3c | This"><a.href="#toc-This">@This< |
| b34c0 | 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 69 73 22 3e | /a>.<a.class="hdr".href="#This"> |
| b34e0 | 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 |
| b3500 | 70 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 | pan.class="tok-builtin">@This</s |
| b3520 | 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 74 79 | pan>().<span.class="tok-type">ty |
| b3540 | 70 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e | pe</span></code></pre>.......<p> |
| b3560 | 0a 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 | .......Returns.the.innermost.str |
| b3580 | 75 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 | uct,.enum,.or.union.that.this.fu |
| b35a0 | 6e 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 | nction.call.is.inside........Thi |
| b35c0 | 73 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 | s.can.be.useful.for.an.anonymous |
| b35e0 | 20 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 | .struct.that.needs.to.refer.to.i |
| b3600 | 74 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 | tself:.......</p>.......<figure> |
| b3620 | 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 |
| b3640 | 65 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 | e.class="file">test_this_builtin |
| b3660 | 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 |
| b3680 | 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 |
| b36a0 | 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 |
| b36c0 | 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= |
| b36e0 | 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> |
| b3700 | 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 |
| b3720 | 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 |
| b3740 | 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 |
| b3760 | 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">" |
| b3780 | 40 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 | @This()"</span>.{.....<span |
| b37a0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 69 74 65 6d 73 | .class="tok-kw">var</span>.items |
| b37c0 | 20 3d 20 5b 5f 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 | .=.[_]<span.class="tok-type">i32 |
| b37e0 | 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 |
| b3800 | 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 |
| b3820 | 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ber">2</span>,.<span.class="tok- |
| b3840 | 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 |
| b3860 | 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 61 6e | ok-number">4</span>.};.....<span |
| b3880 | 20 63 6c 61 73 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 | .class="tok-kw">const</span>.lis |
| b38a0 | 74 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 | t.=.List(<span.class="tok-type"> |
| b38c0 | 69 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 | i32</span>){..items.=.items[<spa |
| b38e0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 2e 2e 5d | n.class="tok-number">0</span>..] |
| b3900 | 20 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 | .};.....<span.class="tok-kw">try |
| b3920 | 3c 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 | </span>.expect(list.length().==. |
| b3940 | 3c 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 |
| b3960 | 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</ |
| b3980 | 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 4c 69 73 74 3c | span>.<span.class="tok-fn">List< |
| b39a0 | 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 |
| b39c0 | 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- |
| b39e0 | 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=" |
| b3a00 | 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 | tok-type">type</span>.{.....<spa |
| b3a20 | 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>.< |
| b3a40 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 74 72 75 63 74 3c 2f 73 70 61 6e | span.class="tok-kw">struct</span |
| b3a60 | 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 22 | >.{.........<span.class="tok-kw" |
| b3a80 | 3e 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 | >const</span>.Self.=.<span.class |
| b3aa0 | 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 3b 0a 0a | ="tok-builtin">@This</span>();.. |
| b3ac0 | 20 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 | ........items:.[]T,..........<sp |
| b3ae0 | 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 |
| b3b00 | 6e 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 | n.class="tok-fn">length</span>(s |
| b3b20 | 65 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 | elf:.Self).<span.class="tok-type |
| b3b40 | 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 20 20 20 20 3c 73 70 | ">usize</span>.{.............<sp |
| b3b60 | 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>. |
| b3b80 | 73 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 | self.items.len;.........}.....}; |
| b3ba0 | 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> |
| b3bc0 | 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 |
| b3be0 | 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 |
| b3c00 | 64 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 | d>zig.test.test_this_builtin.zig |
| b3c20 | 3c 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 | </kbd>.1/1.test_this_builtin.tes |
| b3c40 | 74 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 | t.@This()...OK.All.1.tests.passe |
| b3c60 | 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>....... |
| b3c80 | 20 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 | .<p>.......When.<code><span.clas |
| b3ca0 | 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 61 6e 3e 28 29 3c 2f | s="tok-builtin">@This</span>()</ |
| b3cc0 | 63 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 | code>.is.used.at.file.scope,.it. |
| b3ce0 | 72 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 | returns.a.reference.to.the...... |
| b3d00 | 20 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 | .struct.that.corresponds.to.the. |
| b3d20 | 63 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 | current.file........</p>........ |
| b3d40 | 0a 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 | .......<h3.id="trap"><a.href="#t |
| b3d60 | 6f 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 | oc-trap">@trap</a>.<a.class="hdr |
| b3d80 | 22 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 | ".href="#trap">..</a></h3>...... |
| b3da0 | 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 |
| b3dc0 | 69 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 | iltin">@trap</span>().<span.clas |
| b3de0 | 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 |
| b3e00 | 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 |
| b3e20 | 75 6e 63 74 69 6f 6e 20 69 6e 73 65 72 74 73 20 61 20 70 6c 61 74 66 6f 72 6d 2d 73 70 65 63 69 | unction.inserts.a.platform-speci |
| b3e40 | 66 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 | fic.trap/jam.instruction.which.c |
| b3e60 | 61 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 | an.be.used.to.exit.the.program.a |
| b3e80 | 62 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 | bnormally........This.may.be.imp |
| b3ea0 | 6c 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 | lemented.by.explicitly.emitting. |
| b3ec0 | 61 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 | an.invalid.instruction.which.may |
| b3ee0 | 20 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 | .cause.an.illegal.instruction.ex |
| b3f00 | 63 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 | ception.of.some.sort........Unli |
| b3f20 | 6b 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 | ke.for.<code><span.class="tok-bu |
| b3f40 | 69 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 | iltin">@breakpoint</span>()</cod |
| b3f60 | 65 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 | e>,.execution.does.not.continue. |
| b3f80 | 61 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 | after.this.point........</p>.... |
| b3fa0 | 20 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 | ...<p>.......Outside.function.sc |
| b3fc0 | 6f 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 | ope,.this.builtin.causes.a.compi |
| b3fe0 | 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 53 65 | le.error........</p>.......<p>Se |
| b4000 | 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 62 72 | e.also:</p><ul>.<li><a.href="#br |
| b4020 | 65 61 6b 70 6f 69 6e 74 22 3e 40 62 72 65 61 6b 70 6f 69 6e 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c | eakpoint">@breakpoint</a></li>.< |
| b4040 | 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 74 72 75 6e | /ul>................<h3.id="trun |
| b4060 | 63 61 74 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 74 72 75 6e 63 61 74 65 22 3e 40 74 | cate"><a.href="#toc-truncate">@t |
| b4080 | 72 75 6e 63 61 74 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d | runcate</a>.<a.class="hdr".href= |
| b40a0 | 22 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 | "#truncate">..</a></h3>........< |
| b40c0 | 70 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 |
| b40e0 | 69 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 | in">@truncate</span>(integer:.<s |
| b4100 | 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 |
| b4120 | 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 79 74 79 70 65 3c | >).<span.class="tok-kw">anytype< |
| b4140 | 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 | /span></code></pre>.......<p>... |
| b4160 | 20 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 | ....This.function.truncates.bits |
| b4180 | 20 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 | .from.an.integer.type,.resulting |
| b41a0 | 20 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 | .in.a.smaller.......or.same-size |
| b41c0 | 64 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 | d.integer.type..The.return.type. |
| b41e0 | 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 20 | is.the.inferred.result.type..... |
| b4200 | 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 75 6e | ...</p>.......<p>.......This.fun |
| b4220 | 63 74 69 6f 6e 20 61 6c 77 61 79 73 20 74 72 75 6e 63 61 74 65 73 20 74 68 65 20 73 69 67 6e 69 | ction.always.truncates.the.signi |
| b4240 | 66 69 63 61 6e 74 20 62 69 74 73 20 6f 66 20 74 68 65 20 69 6e 74 65 67 65 72 2c 20 72 65 67 61 | ficant.bits.of.the.integer,.rega |
| b4260 | 72 64 6c 65 73 73 0a 20 20 20 20 20 20 6f 66 20 65 6e 64 69 61 6e 6e 65 73 73 20 6f 6e 20 74 68 | rdless.......of.endianness.on.th |
| b4280 | 65 20 74 61 72 67 65 74 20 70 6c 61 74 66 6f 72 6d 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 | e.target.platform........</p>... |
| b42a0 | 20 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 | ....<p>.......Calling.<code><spa |
| b42c0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 74 72 75 6e 63 61 74 65 3c | n.class="tok-builtin">@truncate< |
| b42e0 | 2f 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 | /span></code>.on.a.number.out.of |
| b4300 | 20 72 61 6e 67 65 20 6f 66 20 74 68 65 20 64 65 73 74 69 6e 61 74 69 6f 6e 20 74 79 70 65 20 69 | .range.of.the.destination.type.i |
| b4320 | 73 20 77 65 6c 6c 20 64 65 66 69 6e 65 64 20 61 6e 64 20 77 6f 72 6b 69 6e 67 20 63 6f 64 65 3a | s.well.defined.and.working.code: |
| b4340 | 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 |
| b4360 | 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 |
| b4380 | 73 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 | s="file">test_truncate_builtin.z |
| b43a0 | 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 |
| b43c0 | 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 |
| b43e0 | 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 |
| b4400 | 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 |
| b4420 | 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>); |
| b4440 | 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 |
| b4460 | 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;. |
| b4480 | 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 |
| b44a0 | 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 69 6e | >.<span.class="tok-str">"in |
| b44c0 | 74 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 | teger.truncation"</span>.{. |
| b44e0 | 20 20 20 20 3c 73 70 61 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</ |
| b4500 | 73 70 61 6e 3e 20 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | span>.a:.<span.class="tok-type"> |
| b4520 | 75 31 36 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | u16</span>.=.<span.class="tok-nu |
| b4540 | 6d 62 65 72 22 3e 30 78 61 62 63 64 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 | mber">0xabcd</span>;.....<span.c |
| b4560 | 6c 61 73 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 | lass="tok-kw">const</span>.b:.<s |
| b4580 | 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>.= |
| b45a0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 74 72 75 6e | .<span.class="tok-builtin">@trun |
| b45c0 | 63 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 | cate</span>(a);.....<span.class= |
| b45e0 | 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 20 3d 3d 20 | "tok-kw">try</span>.expect(b.==. |
| b4600 | 3c 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 | <span.class="tok-number">0xcd</s |
| b4620 | 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 |
| b4640 | 69 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 |
| b4660 | 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 |
| b4680 | 3e 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 | >$.<kbd>zig.test.test_truncate_b |
| b46a0 | 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 74 72 75 6e 63 61 | uiltin.zig</kbd>.1/1.test_trunca |
| b46c0 | 74 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 | te_builtin.test.integer.truncati |
| b46e0 | 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 61 | on...OK.All.1.tests.passed..</sa |
| b4700 | 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>... |
| b4720 | 20 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 | ....Use.<a.href="#intCast">@intC |
| b4740 | 61 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 | ast</a>.to.convert.numbers.guara |
| b4760 | 6e 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 | nteed.to.fit.the.destination.typ |
| b4780 | 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 20 | e........</p>...............<h3. |
| b47a0 | 69 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 | id="Type"><a.href="#toc-Type">@T |
| b47c0 | 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 54 79 | ype</a>.<a.class="hdr".href="#Ty |
| b47e0 | 70 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 | pe">..</a></h3>........<pre><cod |
| b4800 | 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 70 | e><span.class="tok-builtin">@Typ |
| b4820 | 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 |
| b4840 | 6d 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 | mptime</span>.info:.std.builtin. |
| b4860 | 54 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 | Type).<span.class="tok-type">typ |
| b4880 | 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>. |
| b48a0 | 20 20 20 20 20 20 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 69 73 20 74 68 65 20 69 6e 76 65 72 | ......This.function.is.the.inver |
| b48c0 | 73 65 20 6f 66 20 3c 61 20 68 72 65 66 3d 22 23 74 79 70 65 49 6e 66 6f 22 3e 40 74 79 70 65 49 | se.of.<a.href="#typeInfo">@typeI |
| b48e0 | 6e 66 6f 3c 2f 61 3e 2e 20 49 74 20 72 65 69 66 69 65 73 20 74 79 70 65 20 69 6e 66 6f 72 6d 61 | nfo</a>..It.reifies.type.informa |
| b4900 | 74 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 | tion.......into.a.<code><span.cl |
| b4920 | 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 |
| b4940 | 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 74 | >........</p>.......<p>.......It |
| b4960 | 20 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 | .is.available.for.the.following. |
| b4980 | 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 75 6c 3e 0a 20 20 20 | types:.......</p>.......<ul>.... |
| b49a0 | 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | .......<li><code><span.class="to |
| b49c0 | 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 6c 69 3e 0a | k-type">type</span></code></li>. |
| b49e0 | 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 3d | ..........<li><code><span.class= |
| b4a00 | 22 74 6f 6b 2d 74 79 70 65 22 3e 6e 6f 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 | "tok-type">noreturn</span></code |
| b4a20 | 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 |
| b4a40 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 3c 2f 63 | .class="tok-type">void</span></c |
| b4a60 | 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 3e 3c 73 | ode></li>...........<li><code><s |
| b4a80 | 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> |
| b4aa0 | 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 68 72 | </code></li>...........<li><a.hr |
| b4ac0 | 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 2d 20 54 68 | ef="#Integers">Integers</a>.-.Th |
| b4ae0 | 65 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 | e.maximum.bit.count.for.an.integ |
| b4b00 | 65 72 20 74 79 70 65 20 69 73 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | er.type.is.<code><span.class="to |
| b4b20 | 6b 2d 6e 75 6d 62 65 72 22 3e 36 35 35 33 35 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 3c 2f | k-number">65535</span></code>.</ |
| b4b40 | 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 46 6c 6f 61 | li>...........<li><a.href="#Floa |
| b4b60 | 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 3c 6c | ts">Floats</a></li>...........<l |
| b4b80 | 69 3e 3c 61 20 68 72 65 66 3d 22 23 50 6f 69 6e 74 65 72 73 22 3e 50 6f 69 6e 74 65 72 73 3c 2f | i><a.href="#Pointers">Pointers</ |
| b4ba0 | 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 70 61 | a></li>...........<li><code><spa |
| b4bc0 | 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< |
| b4be0 | 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 |
| b4c00 | 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 6f | ><code><span.class="tok-type">co |
| b4c20 | 6d 70 74 69 6d 65 5f 66 6c 6f 61 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a | mptime_float</span></code></li>. |
| b4c40 | 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 3d | ..........<li><code><span.class= |
| b4c60 | 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 73 70 | "tok-builtin">@TypeOf</span>(<sp |
| b4c80 | 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 |
| b4ca0 | 70 61 6e 3e 29 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e | pan>)</code></li>...........<li> |
| b4cc0 | 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"> |
| b4ce0 | 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | @TypeOf</span>(<span.class="tok- |
| b4d00 | 6e 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 | null">null</span>)</code></li>.. |
| b4d20 | 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 41 72 72 61 79 73 22 3e 41 | .........<li><a.href="#Arrays">A |
| b4d40 | 72 72 61 79 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 | rrays</a></li>...........<li><a. |
| b4d60 | 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>< |
| b4d80 | 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 45 72 72 | /li>...........<li><a.href="#Err |
| b4da0 | 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 3e 3c | or-Set-Type">Error.Set.Type</a>< |
| b4dc0 | 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 45 72 72 | /li>...........<li><a.href="#Err |
| b4de0 | 6f 72 2d 55 6e 69 6f 6e 2d 54 79 70 65 22 3e 45 72 72 6f 72 20 55 6e 69 6f 6e 20 54 79 70 65 3c | or-Union-Type">Error.Union.Type< |
| b4e00 | 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=" |
| b4e20 | 23 56 65 63 74 6f 72 73 22 3e 56 65 63 74 6f 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 | #Vectors">Vectors</a></li>...... |
| b4e40 | 20 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 | .....<li><a.href="#opaque">opaqu |
| b4e60 | 65 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 | e</a></li>...........<li><code>< |
| b4e80 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 79 66 72 61 6d 65 3c 2f 73 70 | span.class="tok-kw">anyframe</sp |
| b4ea0 | 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 61 | an></code></li>...........<li><a |
| b4ec0 | 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 3c 2f 6c 69 3e 0a | .href="#struct">struct</a></li>. |
| b4ee0 | 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 6d 22 3e 65 6e | ..........<li><a.href="#enum">en |
| b4f00 | 75 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 | um</a></li>...........<li><a.hre |
| b4f20 | 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 69 74 65 72 61 6c 73 | f="#Enum-Literals">Enum.Literals |
| b4f40 | 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 3d | </a></li>...........<li><a.href= |
| b4f60 | 22 23 75 6e 69 6f 6e 22 3e 75 6e 69 6f 6e 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 | "#union">union</a></li>......... |
| b4f80 | 20 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 | ..<li><a.href="#Functions">Funct |
| b4fa0 | 69 6f 6e 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 | ions</a></li>.......</ul>....... |
| b4fc0 | 0a 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 | .......<h3.id="typeInfo"><a.href |
| b4fe0 | 3d 22 23 74 6f 63 2d 74 79 70 65 49 6e 66 6f 22 3e 40 74 79 70 65 49 6e 66 6f 3c 2f 61 3e 20 3c | ="#toc-typeInfo">@typeInfo</a>.< |
| b5000 | 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 74 79 70 65 49 6e 66 6f 22 3e c2 | a.class="hdr".href="#typeInfo">. |
| b5020 | 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 |
| b5040 | 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 |
| b5060 | 3c 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 |
| b5080 | 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 |
| b50a0 | 2d 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 | -type">type</span>).std.builtin. |
| b50c0 | 54 79 70 65 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 | Type</code></pre>.......<p>..... |
| b50e0 | 20 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 | ..Provides.type.reflection...... |
| b5100 | 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 79 70 65 20 69 6e 66 6f | ..</p>.......<p>.......Type.info |
| b5120 | 72 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 | rmation.of.<a.href="#struct">str |
| b5140 | 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 6f 6e | ucts</a>,.<a.href="#union">union |
| b5160 | 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 2f 61 3e | s</a>,.<a.href="#enum">enums</a> |
| b5180 | 2c 20 61 6e 64 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 45 72 72 6f 72 2d 53 65 74 2d | ,.and.......<a.href="#Error-Set- |
| b51a0 | 54 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 | Type">error.sets</a>.has.fields. |
| b51c0 | 77 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 | which.are.guaranteed.to.be.in.th |
| b51e0 | 65 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 | e.same.......order.as.appearance |
| b5200 | 20 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 | .in.the.source.file........</p>. |
| b5220 | 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 6d 61 74 69 6f 6e | ......<p>.......Type.information |
| b5240 | 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 63 74 73 3c 2f 61 | .of.<a.href="#struct">structs</a |
| b5260 | 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 2c 20 | >,.<a.href="#union">unions</a>,. |
| b5280 | 3c 61 20 68 72 65 66 3d 22 23 65 6e 75 6d 22 3e 65 6e 75 6d 73 3c 2f 61 3e 2c 20 61 6e 64 0a 20 | <a.href="#enum">enums</a>,.and.. |
| b52a0 | 20 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 | .....<a.href="#opaque">opaques</ |
| b52c0 | 61 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 | a>.has.declarations,.which.are.a |
| b52e0 | 6c 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 | lso.guaranteed.to.be.in.the.same |
| b5300 | 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 69 6e 20 74 68 | .......order.as.appearance.in.th |
| b5320 | 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 20 20 20 20 20 | e.source.file........</p>....... |
| b5340 | 0a 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 | ........<h3.id="typeName"><a.hre |
| b5360 | 66 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 | f="#toc-typeName">@typeName</a>. |
| b5380 | 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 74 79 70 65 4e 61 6d 65 22 3e | <a.class="hdr".href="#typeName"> |
| b53a0 | 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 |
| b53c0 | 70 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 | pan.class="tok-builtin">@typeNam |
| b53e0 | 65 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 | e</span>(T:.<span.class="tok-typ |
| b5400 | 65 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 | e">type</span>).*<span.class="to |
| b5420 | 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 5b 4e 3a 3c 73 70 61 6e 20 63 6c 61 73 | k-kw">const</span>.[N:<span.clas |
| b5440 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 5d 3c 73 70 61 6e 20 63 6c | s="tok-number">0</span>]<span.cl |
| b5460 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c | ass="tok-type">u8</span></code>< |
| b5480 | 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 |
| b54a0 | 69 6f 6e 20 72 65 74 75 72 6e 73 20 74 68 65 20 73 74 72 69 6e 67 20 72 65 70 72 65 73 65 6e 74 | ion.returns.the.string.represent |
| b54c0 | 61 74 69 6f 6e 20 6f 66 20 61 20 74 79 70 65 2c 20 61 73 0a 20 20 20 20 20 20 61 6e 20 61 72 72 | ation.of.a.type,.as.......an.arr |
| b54e0 | 61 79 2e 20 49 74 20 69 73 20 65 71 75 69 76 61 6c 65 6e 74 20 74 6f 20 61 20 73 74 72 69 6e 67 | ay..It.is.equivalent.to.a.string |
| b5500 | 20 6c 69 74 65 72 61 6c 20 6f 66 20 74 68 65 20 74 79 70 65 20 6e 61 6d 65 2e 0a 20 20 20 20 20 | .literal.of.the.type.name....... |
| b5520 | 20 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 | .The.returned.type.name.is.fully |
| b5540 | 20 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 | .qualified.with.the.parent.names |
| b5560 | 70 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 | pace.included.......as.part.of.t |
| b5580 | 68 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 | he.type.name.with.a.series.of.do |
| b55a0 | 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 68 33 | ts........</p>...............<h3 |
| b55c0 | 20 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 | .id="TypeOf"><a.href="#toc-TypeO |
| b55e0 | 66 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 | f">@TypeOf</a>.<a.class="hdr".hr |
| b5600 | 65 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 | ef="#TypeOf">..</a></h3>........ |
| b5620 | 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 |
| b5640 | 74 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 | tin">@TypeOf</span>(...).<span.c |
| b5660 | 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 | lass="tok-type">type</span></cod |
| b5680 | 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c | e></pre>.......<p>.......<code>< |
| b56a0 | 73 70 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 |
| b56c0 | 3c 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 | </span></code>.is.a.special.buil |
| b56e0 | 74 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 | tin.function.that.takes.any.(non |
| b5700 | 2d 7a 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 | -zero).number.of.expressions.... |
| b5720 | 20 20 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 | ...as.parameters.and.returns.the |
| b5740 | 20 74 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 | .type.of.the.result,.using.<a.hr |
| b5760 | 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. |
| b5780 | 54 79 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 | Type.Resolution</a>........</p>. |
| b57a0 | 20 20 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 | ......<p>.......The.expressions. |
| b57c0 | 61 72 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 | are.evaluated,.however.they.are. |
| b57e0 | 67 75 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 | guaranteed.to.have.no.<em>runtim |
| b5800 | 65 3c 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 | e</em>.side-effects:.......</p>. |
| b5820 | 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= |
| b5840 | 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 |
| b5860 | 74 5f 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 | t_TypeOf_builtin.zig</cite></fig |
| b5880 | 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=" |
| b58a0 | 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 |
| b58c0 | 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 |
| b58e0 | 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">" |
| b5900 | 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=" |
| b5920 | 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 |
| b5940 | 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=" |
| b5960 | 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= |
| b5980 | 22 74 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 | "tok-str">"no.runtime.side. |
| b59a0 | 65 66 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 | effects"</span>.{.....<span |
| b59c0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 64 61 74 61 3a | .class="tok-kw">var</span>.data: |
| b59e0 | 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 |
| b5a00 | 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< |
| b5a20 | 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" |
| b5a40 | 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 54 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | >const</span>.T.=.<span.class="t |
| b5a60 | 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 6f 28 3c | ok-builtin">@TypeOf</span>(foo(< |
| b5a80 | 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> |
| b5aa0 | 2c 20 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 | ,.&data));.....<span.class=" |
| b5ac0 | 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=" |
| b5ae0 | 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 54 | tok-kw">comptime</span>.expect(T |
| b5b00 | 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 69 33 32 3c 2f | .==.<span.class="tok-type">i32</ |
| b5b20 | 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" |
| b5b40 | 3e 74 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 | >try</span>.expect(data.==.<span |
| b5b60 | 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 7d | .class="tok-number">0</span>);.} |
| b5b80 | 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> |
| b5ba0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 66 6f 6f 3c 2f 73 70 61 6e 3e | .<span.class="tok-fn">foo</span> |
| b5bc0 | 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f | (<span.class="tok-kw">comptime</ |
| b5be0 | 73 70 61 6e 3e 20 54 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | span>.T:.<span.class="tok-type"> |
| b5c00 | 74 79 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 | type</span>,.ptr:.*T).T.{.....pt |
| b5c20 | 72 2e 2a 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e | r.*.+=.<span.class="tok-number"> |
| b5c40 | 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | 1</span>;.....<span.class="tok-k |
| b5c60 | 77 22 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 | w">return</span>.ptr.*;.}</code> |
| b5c80 | 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 |
| b5ca0 | 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 |
| b5cc0 | 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 |
| b5ce0 | 74 20 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 | t.test_TypeOf_builtin.zig</kbd>. |
| b5d00 | 31 2f 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 | 1/1.test_TypeOf_builtin.test.no. |
| b5d20 | 72 75 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 | runtime.side.effects...OK.All.1. |
| b5d40 | 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 |
| b5d60 | 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 75 6e 69 6f | ure>................<h3.id="unio |
| b5d80 | 6e 49 6e 69 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 75 6e 69 6f 6e 49 6e 69 74 22 3e | nInit"><a.href="#toc-unionInit"> |
| b5da0 | 40 75 6e 69 6f 6e 49 6e 69 74 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 | @unionInit</a>.<a.class="hdr".hr |
| b5dc0 | 65 66 3d 22 23 75 6e 69 6f 6e 49 6e 69 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 | ef="#unionInit">..</a></h3>..... |
| b5de0 | 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 |
| b5e00 | 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 28 3c 73 70 61 6e 20 | uiltin">@unionInit</span>(<span. |
| b5e20 | 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 55 | class="tok-kw">comptime</span>.U |
| b5e40 | 6e 69 6f 6e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 | nion:.<span.class="tok-type">typ |
| b5e60 | 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 |
| b5e80 | 6f 6d 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 | omptime</span>.active_field_name |
| b5ea0 | 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f | :.[]<span.class="tok-kw">const</ |
| b5ec0 | 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< |
| b5ee0 | 2f 73 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 | /span>,.init_expr).Union</code>< |
| b5f00 | 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 69 73 20 74 68 | /pre>.......<p>.......This.is.th |
| b5f20 | 65 20 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 | e.same.thing.as.<a.href="#union" |
| b5f40 | 3e 75 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 | >union</a>.initialization.syntax |
| b5f60 | 2c 20 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 | ,.except.that.the.field.name.is. |
| b5f80 | 61 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 63 6f 6d 70 74 69 6d 65 22 3e 63 6f 6d 70 | a.......<a.href="#comptime">comp |
| b5fa0 | 74 69 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 | time</a>-known.value.rather.than |
| b5fc0 | 20 61 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 | .an.identifier.token........</p> |
| b5fe0 | 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 | .......<p>.......<code><span.cla |
| b6000 | 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 75 6e 69 6f 6e 49 6e 69 74 3c 2f 73 70 61 | ss="tok-builtin">@unionInit</spa |
| b6020 | 6e 3e 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 | n></code>.forwards.its.<a.href=" |
| b6040 | 23 52 65 73 75 6c 74 2d 4c 6f 63 61 74 69 6f 6e 2d 53 65 6d 61 6e 74 69 63 73 22 3e 72 65 73 75 | #Result-Location-Semantics">resu |
| b6060 | 6c 74 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 | lt.location</a>.to.<code>init_ex |
| b6080 | 70 72 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 0a 20 | pr</code>........</p>........... |
| b60a0 | 20 20 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 | .....<h3.id="Vector"><a.href="#t |
| b60c0 | 6f 63 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 | oc-Vector">@Vector</a>.<a.class= |
| b60e0 | 22 68 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 | "hdr".href="#Vector">..</a></h3> |
| b6100 | 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=" |
| b6120 | 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 6e 3a | tok-builtin">@Vector</span>(len: |
| b6140 | 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 65 | .<span.class="tok-type">comptime |
| b6160 | 5f 69 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 | _int</span>,.Element:.<span.clas |
| b6180 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 | s="tok-type">type</span>).<span. |
| b61a0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f | class="tok-type">type</span></co |
| b61c0 | 64 65 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 | de></pre>.......<p>Creates.<a.hr |
| b61e0 | 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 2e 3c 2f 70 3e 0a 20 | ef="#Vectors">Vectors</a>.</p>.. |
| b6200 | 20 20 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 | .............<h3.id="volatileCas |
| b6220 | 74 22 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 | t"><a.href="#toc-volatileCast">@ |
| b6240 | 76 6f 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 | volatileCast</a>.<a.class="hdr". |
| b6260 | 68 72 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 | href="#volatileCast">..</a></h3> |
| b6280 | 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=" |
| b62a0 | 74 6f 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 | tok-builtin">@volatileCast</span |
| b62c0 | 3e 28 76 61 6c 75 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e | >(value:.<span.class="tok-kw">an |
| b62e0 | 79 74 79 70 65 3c 2f 73 70 61 6e 3e 29 20 44 65 73 74 54 79 70 65 3c 2f 63 6f 64 65 3e 3c 2f 70 | ytype</span>).DestType</code></p |
| b6300 | 72 65 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 | re>.......<p>.......Remove.<code |
| b6320 | 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</ |
| b6340 | 73 70 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 | span></code>.qualifier.from.a.po |
| b6360 | 69 6e 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 | inter........</p>............... |
| b6380 | 3c 68 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 | <h3.id="workGroupId"><a.href="#t |
| b63a0 | 6f 63 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 | oc-workGroupId">@workGroupId</a> |
| b63c0 | 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 77 6f 72 6b 47 72 6f 75 70 | .<a.class="hdr".href="#workGroup |
| b63e0 | 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 |
| b6400 | 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 |
| b6420 | 6b 47 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 | kGroupId</span>(<span.class="tok |
| b6440 | 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 64 69 6d 65 6e 73 69 6f 6e 3a 20 | -kw">comptime</span>.dimension:. |
| b6460 | 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 |
| b6480 | 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 | >).<span.class="tok-type">u32</s |
| b64a0 | 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 | pan></code></pre>.......<p>..... |
| b64c0 | 20 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 | ..Returns.the.index.of.the.work. |
| b64e0 | 67 72 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 | group.in.the.current.kernel.invo |
| b6500 | 63 61 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 | cation.in.dimension.<code>dimens |
| b6520 | 69 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 | ion</code>........</p>.......... |
| b6540 | 20 20 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 | .....<h3.id="workGroupSize"><a.h |
| b6560 | 72 65 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 | ref="#toc-workGroupSize">@workGr |
| b6580 | 6f 75 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 | oupSize</a>.<a.class="hdr".href= |
| b65a0 | 22 23 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 | "#workGroupSize">..</a></h3>.... |
| b65c0 | 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- |
| b65e0 | 62 75 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 | builtin">@workGroupSize</span>(< |
| b6600 | 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 |
| b6620 | 61 6e 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 | an>.dimension:.<span.class="tok- |
| b6640 | 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 74 | type">u32</span>).<span.class="t |
| b6660 | 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 3c 2f 70 72 65 3e | ok-type">u32</span></code></pre> |
| b6680 | 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 6e 75 6d | .......<p>.......Returns.the.num |
| b66a0 | 62 65 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 | ber.of.work.items.that.a.work.gr |
| b66c0 | 6f 75 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 | oup.has.in.dimension.<code>dimen |
| b66e0 | 73 69 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 | sion</code>........</p>......... |
| b6700 | 20 20 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 | ......<h3.id="workItemId"><a.hre |
| b6720 | 66 3d 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 | f="#toc-workItemId">@workItemId< |
| b6740 | 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 77 6f 72 6b 49 74 | /a>.<a.class="hdr".href="#workIt |
| b6760 | 65 6d 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 | emId">..</a></h3>........<pre><c |
| b6780 | 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 77 | ode><span.class="tok-builtin">@w |
| b67a0 | 6f 72 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 | orkItemId</span>(<span.class="to |
| b67c0 | 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 64 69 6d 65 6e 73 69 6f 6e 3a | k-kw">comptime</span>.dimension: |
| b67e0 | 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 |
| b6800 | 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</ |
| b6820 | 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>.... |
| b6840 | 20 20 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 | ...Returns.the.index.of.the.work |
| b6860 | 20 69 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 | .item.in.the.work.group.in.dimen |
| b6880 | 73 69 6f 6e 20 3c 63 6f 64 65 3e 64 69 6d 65 6e 73 69 6f 6e 3c 2f 63 6f 64 65 3e 2e 20 54 68 69 | sion.<code>dimension</code>..Thi |
| b68a0 | 73 20 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 | s.function.returns.values.betwee |
| b68c0 | 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 6e 75 6d 62 65 72 22 | n.<code><span.class="tok-number" |
| b68e0 | 3e 30 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 | >0</span></code>.(inclusive).and |
| b6900 | 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 22 | .<code><span.class="tok-builtin" |
| b6920 | 3e 40 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 | >@workGroupSize</span>(dimension |
| b6940 | 29 3c 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 | )</code>.(exclusive)........</p> |
| b6960 | 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 22 42 | .......................<h2.id="B |
| b6980 | 75 69 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 | uild-Mode"><a.href="#toc-Build-M |
| b69a0 | 6f 64 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 | ode">Build.Mode</a>.<a.class="hd |
| b69c0 | 72 22 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 | r".href="#Build-Mode">..</a></h2 |
| b69e0 | 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 66 6f 75 72 20 | >........<p>.......Zig.has.four. |
| b6a00 | 62 75 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 | build.modes:.......</p>.......<u |
| b6a20 | 6c 3e 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 | l>.........<li><a.href="#Debug"> |
| b6a40 | 44 65 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 | Debug</a>.(default)</li>........ |
| b6a60 | 20 3c 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 | .<li><a.href="#ReleaseFast">Rele |
| b6a80 | 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 3c 6c 69 3e 3c 61 20 | aseFast</a></li>.........<li><a. |
| b6aa0 | 68 72 65 66 3d 22 23 52 65 6c 65 61 73 65 53 61 66 65 22 3e 52 65 6c 65 61 73 65 53 61 66 65 3c | href="#ReleaseSafe">ReleaseSafe< |
| b6ac0 | 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 52 | /a></li>.........<li><a.href="#R |
| b6ae0 | 65 6c 65 61 73 65 53 6d 61 6c 6c 22 3e 52 65 6c 65 61 73 65 53 6d 61 6c 6c 3c 2f 61 3e 3c 2f 6c | eleaseSmall">ReleaseSmall</a></l |
| b6b00 | 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 54 | i>.......</ul>.......<p>.......T |
| b6b20 | 6f 20 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 | o.add.standard.build.options.to. |
| b6b40 | 61 20 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 | a.<code.class="file">build.zig</ |
| b6b60 | 63 6f 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 | code>.file:.......</p>.......<fi |
| b6b80 | 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" |
| b6ba0 | 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 2e 7a 69 67 3c 2f 63 | ><cite.class="file">build.zig</c |
| b6bc0 | 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 |
| b6be0 | 6e 20 63 6c 61 73 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 |
| b6c00 | 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 |
| b6c20 | 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 |
| b6c40 | 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 |
| b6c60 | 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 |
| b6c80 | 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 |
| b6ca0 | 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 6e 3e 28 62 3a | n.class="tok-fn">build</span>(b: |
| b6cc0 | 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 6f 6b 2d 74 79 | .*std.Build).<span.class="tok-ty |
| b6ce0 | 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 |
| b6d00 | 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 6d 69 7a 65 | s="tok-kw">const</span>.optimize |
| b6d20 | 20 3d 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 | .=.b.standardOptimizeOption(.{}) |
| b6d40 | 3b 0a 20 20 20 20 3c 73 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 |
| b6d60 | 3c 2f 73 70 61 6e 3e 20 65 78 65 20 3d 20 62 2e 61 64 64 45 78 65 63 75 74 61 62 6c 65 28 2e 7b | </span>.exe.=.b.addExecutable(.{ |
| b6d80 | 0a 20 20 20 20 20 20 20 20 2e 6e 61 6d 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ..........name.=.<span.class="to |
| b6da0 | 6b 2d 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 | k-str">"example"</span |
| b6dc0 | 3e 2c 0a 20 20 20 20 20 20 20 20 2e 72 6f 6f 74 5f 6d 6f 64 75 6c 65 20 3d 20 62 2e 63 72 65 61 | >,..........root_module.=.b.crea |
| b6de0 | 74 65 4d 6f 64 75 6c 65 28 2e 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 2e 72 6f 6f 74 5f 73 6f | teModule(.{..............root_so |
| b6e00 | 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 73 3d 22 | urce_file.=.b.path(<span.class=" |
| b6e20 | 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 65 78 61 6d 70 6c 65 2e 7a 69 67 26 71 75 6f 74 3b | tok-str">"example.zig" |
| b6e40 | 3c 2f 73 70 61 6e 3e 29 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 2e 6f 70 74 69 6d 69 7a 65 20 | </span>),..............optimize. |
| b6e60 | 3d 20 6f 70 74 69 6d 69 7a 65 2c 0a 20 20 20 20 20 20 20 20 7d 29 2c 0a 20 20 20 20 7d 29 3b 0a | =.optimize,.........}),.....});. |
| b6e80 | 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 70 | ....b.default_step.dependOn(& |
| b6ea0 | 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 75 | ;exe.step);.}</code></pre></figu |
| b6ec0 | 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 73 | re>........<p>.......This.causes |
| b6ee0 | 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 0a | .these.options.to.be.available:. |
| b6f00 | 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 64 | ......</p>.......<dl>.........<d |
| b6f20 | 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 64 | t><kbd>-Doptimize=Debug</kbd></d |
| b6f40 | 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 65 | t><dd>Optimizations.off.and.safe |
| b6f60 | 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 74 | ty.on.(default)</dd>.........<dt |
| b6f80 | 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 62 | ><kbd>-Doptimize=ReleaseSafe</kb |
| b6fa0 | 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 20 | d></dt><dd>Optimizations.on.and. |
| b6fc0 | 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 3e | safety.on</dd>.........<dt><kbd> |
| b6fe0 | 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 74 | -Doptimize=ReleaseFast</kbd></dt |
| b7000 | 3e 3c 64 64 3e 4f 70 74 69 6d 69 7a 61 74 69 6f 6e 73 20 6f 6e 20 61 6e 64 20 73 61 66 65 74 79 | ><dd>Optimizations.on.and.safety |
| b7020 | 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 74 | .off</dd>.........<dt><kbd>-Dopt |
| b7040 | 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 64 | imize=ReleaseSmall</kbd></dt><dd |
| b7060 | 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 74 | >Size.optimizations.on.and.safet |
| b7080 | 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 33 | y.off</dd>.......</dl>.......<h3 |
| b70a0 | 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 22 | .id="Debug"><a.href="#toc-Debug" |
| b70c0 | 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 22 | >Debug</a>.<a.class="hdr".href=" |
| b70e0 | 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 75 | #Debug">..</a></h3>........<figu |
| b7100 | 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" |
| b7120 | 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>$. |
| b7140 | 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 2f | <kbd>zig.build-exe.example.zig</ |
| b7160 | 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 20 | kbd>.</samp></pre></figure>..... |
| b7180 | 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 74 | ..<ul>.........<li>Fast.compilat |
| b71a0 | 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 74 | ion.speed</li>.........<li>Safet |
| b71c0 | 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 6c | y.checks.enabled</li>.........<l |
| b71e0 | 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 0a | i>Slow.runtime.performance</li>. |
| b7200 | 20 20 20 20 20 20 20 20 3c 6c 69 3e 4c 61 72 67 65 20 62 69 6e 61 72 79 20 73 69 7a 65 3c 2f 6c | ........<li>Large.binary.size</l |
| b7220 | 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 62 | i>.........<li>No.reproducible.b |
| b7240 | 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 6c | uild.requirement</li>.......</ul |
| b7260 | 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 61 | >..............<h3.id="ReleaseFa |
| b7280 | 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 52 | st"><a.href="#toc-ReleaseFast">R |
| b72a0 | 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 72 | eleaseFast</a>.<a.class="hdr".hr |
| b72c0 | 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 20 | ef="#ReleaseFast">..</a></h3>... |
| b72e0 | 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=" |
| b7300 | 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 |
| b7320 | 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 61 | e><samp>$.<kbd>zig.build-exe.exa |
| b7340 | 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 2f | mple.zig.-O.ReleaseFast</kbd>.</ |
| b7360 | 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 0a | samp></pre></figure>.......<ul>. |
| b7380 | 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 6d | ........<li>Fast.runtime.perform |
| b73a0 | 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 65 | ance</li>.........<li>Safety.che |
| b73c0 | 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 6c | cks.disabled</li>.........<li>Sl |
| b73e0 | 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 20 | ow.compilation.speed</li>....... |
| b7400 | 20 20 3c 6c 69 3e 4c 61 72 67 65 20 62 69 6e 61 72 79 20 73 69 7a 65 3c 2f 6c 69 3e 0a 20 20 20 | ..<li>Large.binary.size</li>.... |
| b7420 | 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 3e | .....<li>Reproducible.build</li> |
| b7440 | 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 64 | .......</ul>..............<h3.id |
| b7460 | 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 6c | ="ReleaseSafe"><a.href="#toc-Rel |
| b7480 | 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 61 | easeSafe">ReleaseSafe</a>.<a.cla |
| b74a0 | 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 3c | ss="hdr".href="#ReleaseSafe">..< |
| b74c0 | 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 | /a></h3>........<figure><figcapt |
| b74e0 | 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 |
| b7500 | 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 |
| b7520 | 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 61 | ild-exe.example.zig.-O.ReleaseSa |
| b7540 | 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 0a | fe</kbd>.</samp></pre></figure>. |
| b7560 | 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 75 | ......<ul>.........<li>Medium.ru |
| b7580 | 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 3c | ntime.performance</li>.........< |
| b75a0 | 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 20 | li>Safety.checks.enabled</li>... |
| b75c0 | 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 64 | ......<li>Slow.compilation.speed |
| b75e0 | 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 73 | </li>.........<li>Large.binary.s |
| b7600 | 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 6c | ize</li>.........<li>Reproducibl |
| b7620 | 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 0a | e.build</li>.......</ul>........ |
| b7640 | 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 68 | ......<h3.id="ReleaseSmall"><a.h |
| b7660 | 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 53 | ref="#toc-ReleaseSmall">ReleaseS |
| b7680 | 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 52 | mall</a>.<a.class="hdr".href="#R |
| b76a0 | 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 20 | eleaseSmall">..</a></h3>........ |
| b76c0 | 3c 66 69 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 |
| b76e0 | 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 |
| b7700 | 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 2e | mp>$.<kbd>zig.build-exe.example. |
| b7720 | 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 70 | zig.-O.ReleaseSmall</kbd>.</samp |
| b7740 | 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 20 | ></pre></figure>.......<ul>..... |
| b7760 | 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 6e | ....<li>Medium.runtime.performan |
| b7780 | 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 6b | ce</li>.........<li>Safety.check |
| b77a0 | 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 77 | s.disabled</li>.........<li>Slow |
| b77c0 | 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 20 | .compilation.speed</li>......... |
| b77e0 | 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 20 | <li>Small.binary.size</li>...... |
| b7800 | 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 20 | ...<li>Reproducible.build</li>.. |
| b7820 | 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 61 | .....</ul>..............<p>See.a |
| b7840 | 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 69 | lso:</p><ul>.<li><a.href="#Compi |
| b7860 | 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 3c | le-Variables">Compile.Variables< |
| b7880 | 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 5a 69 67 2d 42 75 69 6c 64 | /a></li>.<li><a.href="#Zig-Build |
| b78a0 | 2d 53 79 73 74 65 6d 22 3e 5a 69 67 20 42 75 69 6c 64 20 53 79 73 74 65 6d 3c 2f 61 3e 3c 2f 6c | -System">Zig.Build.System</a></l |
| b78c0 | 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 49 6c 6c 65 67 61 6c 2d 42 65 68 61 76 69 6f | i>.<li><a.href="#Illegal-Behavio |
| b78e0 | 72 22 3e 49 6c 6c 65 67 61 6c 20 42 65 68 61 76 69 6f 72 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 | r">Illegal.Behavior</a></li>.</u |
| b7900 | 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 69 6e 67 6c 65 | l>................<h2.id="Single |
| b7920 | 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 23 74 6f 63 2d | -Threaded-Builds"><a.href="#toc- |
| b7940 | 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 20 54 | Single-Threaded-Builds">Single.T |
| b7960 | 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 3d 22 68 64 72 | hreaded.Builds</a>.<a.class="hdr |
| b7980 | 22 20 68 72 65 66 3d 22 23 53 69 6e 67 6c 65 2d 54 68 72 65 61 64 65 64 2d 42 75 69 6c 64 73 22 | ".href="#Single-Threaded-Builds" |
| b79a0 | 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 68 61 73 20 61 | >..</a></h2>........<p>Zig.has.a |
| b79c0 | 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 6c 65 2d 74 68 | .compile.option.<kbd>-fsingle-th |
| b79e0 | 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 66 6f 6c 6c 6f | readed</kbd>.which.has.the.follo |
| b7a00 | 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 3e 0a 20 20 20 | wing.effects:</p>.......<ul>.... |
| b7a20 | 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 61 64 2d 4c 6f | .....<li>All.<a.href="#Thread-Lo |
| b7a40 | 63 61 6c 2d 56 61 72 69 61 62 6c 65 73 22 3e 54 68 72 65 61 64 20 4c 6f 63 61 6c 20 56 61 72 69 | cal-Variables">Thread.Local.Vari |
| b7a60 | 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 67 75 6c 61 72 | ables</a>.are.treated.as.regular |
| b7a80 | 20 3c 61 20 68 72 65 66 3d 22 23 43 6f 6e 74 61 69 6e 65 72 2d 4c 65 76 65 6c 2d 56 61 72 69 61 | .<a.href="#Container-Level-Varia |
| b7aa0 | 62 6c 65 73 22 3e 43 6f 6e 74 61 69 6e 65 72 20 4c 65 76 65 6c 20 56 61 72 69 61 62 6c 65 73 3c | bles">Container.Level.Variables< |
| b7ac0 | 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 76 65 72 68 65 | /a>.</li>.........<li>The.overhe |
| b7ae0 | 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 69 6f 6e 73 22 | ad.of.<a.href="#Async-Functions" |
| b7b00 | 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 73 20 65 71 75 | >Async.Functions</a>.becomes.equ |
| b7b20 | 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 65 72 68 65 61 | ivalent.to.function.call.overhea |
| b7b40 | 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 64 65 3e 3c 73 | d.</li>.........<li>The.<code><s |
| b7b60 | 70 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< |
| b7b80 | 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 |
| b7ba0 | 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 6e 67 6c 65 5f | ot;builtin"</span>).single_ |
| b7bc0 | 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 64 65 3e 3c 73 | threaded</code>.becomes.<code><s |
| b7be0 | 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> |
| b7c00 | 3c 2f 63 6f 64 65 3e 0a 20 20 20 20 20 20 20 20 20 20 61 6e 64 20 74 68 65 72 65 66 6f 72 65 20 | </code>...........and.therefore. |
| b7c20 | 76 61 72 69 6f 75 73 20 75 73 65 72 6c 61 6e 64 20 41 50 49 73 20 77 68 69 63 68 20 72 65 61 64 | various.userland.APIs.which.read |
| b7c40 | 20 74 68 69 73 20 76 61 72 69 61 62 6c 65 20 62 65 63 6f 6d 65 20 6d 6f 72 65 20 65 66 66 69 63 | .this.variable.become.more.effic |
| b7c60 | 69 65 6e 74 2e 0a 20 20 20 20 20 20 20 20 20 20 46 6f 72 20 65 78 61 6d 70 6c 65 20 3c 63 6f 64 | ient............For.example.<cod |
| b7c80 | 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 20 20 20 20 20 | e>std.Mutex</code>.becomes...... |
| b7ca0 | 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 65 20 61 6e 64 | .....an.empty.data.structure.and |
| b7cc0 | 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 65 20 6e 6f 2d | .all.of.its.functions.become.no- |
| b7ce0 | 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 20 0a 0a 20 20 | ops.</li>.......</ul>........... |
| b7d00 | 20 20 20 20 3c 68 32 20 69 64 3d 22 49 6c 6c 65 67 61 6c 2d 42 65 68 61 76 69 6f 72 22 3e 3c 61 | ....<h2.id="Illegal-Behavior"><a |
| b7d20 | 20 68 72 65 66 3d 22 23 74 6f 63 2d 49 6c 6c 65 67 61 6c 2d 42 65 68 61 76 69 6f 72 22 3e 49 6c | .href="#toc-Illegal-Behavior">Il |
| b7d40 | 6c 65 67 61 6c 20 42 65 68 61 76 69 6f 72 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 | legal.Behavior</a>.<a.class="hdr |
| b7d60 | 22 20 68 72 65 66 3d 22 23 49 6c 6c 65 67 61 6c 2d 42 65 68 61 76 69 6f 72 22 3e c2 a7 3c 2f 61 | ".href="#Illegal-Behavior">..</a |
| b7d80 | 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 4d 61 6e 79 20 6f 70 65 | ></h2>........<p>.......Many.ope |
| b7da0 | 72 61 74 69 6f 6e 73 20 69 6e 20 5a 69 67 20 74 72 69 67 67 65 72 20 77 68 61 74 20 69 73 20 6b | rations.in.Zig.trigger.what.is.k |
| b7dc0 | 6e 6f 77 6e 20 61 73 20 22 49 6c 6c 65 67 61 6c 20 42 65 68 61 76 69 6f 72 22 20 28 49 42 29 2e | nown.as."Illegal.Behavior".(IB). |
| b7de0 | 20 49 66 20 49 6c 6c 65 67 61 6c 20 42 65 68 61 76 69 6f 72 20 69 73 20 64 65 74 65 63 74 65 64 | .If.Illegal.Behavior.is.detected |
| b7e00 | 20 61 74 0a 20 20 20 20 20 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 2c 20 5a 69 67 20 65 6d 69 74 | .at.......compile-time,.Zig.emit |
| b7e20 | 73 20 61 20 63 6f 6d 70 69 6c 65 20 65 72 72 6f 72 20 61 6e 64 20 72 65 66 75 73 65 73 20 74 6f | s.a.compile.error.and.refuses.to |
| b7e40 | 20 63 6f 6e 74 69 6e 75 65 2e 20 4f 74 68 65 72 77 69 73 65 2c 20 77 68 65 6e 20 49 6c 6c 65 67 | .continue..Otherwise,.when.Illeg |
| b7e60 | 61 6c 20 42 65 68 61 76 69 6f 72 20 69 73 20 6e 6f 74 20 63 61 75 67 68 74 0a 20 20 20 20 20 20 | al.Behavior.is.not.caught....... |
| b7e80 | 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 2c 20 69 74 20 66 61 6c 6c 73 20 69 6e 74 6f 20 6f | at.compile-time,.it.falls.into.o |
| b7ea0 | 6e 65 20 6f 66 20 74 77 6f 20 63 61 74 65 67 6f 72 69 65 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e | ne.of.two.categories........</p> |
| b7ec0 | 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 53 6f 6d 65 20 49 6c 6c 65 67 61 6c 20 42 65 | .......<p>.......Some.Illegal.Be |
| b7ee0 | 68 61 76 69 6f 72 20 69 73 20 3c 65 6d 3e 73 61 66 65 74 79 2d 63 68 65 63 6b 65 64 3c 2f 65 6d | havior.is.<em>safety-checked</em |
| b7f00 | 3e 3a 20 74 68 69 73 20 6d 65 61 6e 73 20 74 68 61 74 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 20 | >:.this.means.that.the.compiler. |
| b7f20 | 77 69 6c 6c 20 69 6e 73 65 72 74 20 22 73 61 66 65 74 79 20 63 68 65 63 6b 73 22 0a 20 20 20 20 | will.insert."safety.checks"..... |
| b7f40 | 20 20 61 6e 79 77 68 65 72 65 20 74 68 61 74 20 74 68 65 20 49 6c 6c 65 67 61 6c 20 42 65 68 61 | ..anywhere.that.the.Illegal.Beha |
| b7f60 | 76 69 6f 72 20 6d 61 79 20 6f 63 63 75 72 20 61 74 20 72 75 6e 74 69 6d 65 2c 20 74 6f 20 64 65 | vior.may.occur.at.runtime,.to.de |
| b7f80 | 74 65 72 6d 69 6e 65 20 77 68 65 74 68 65 72 20 69 74 20 69 73 20 61 62 6f 75 74 20 74 6f 20 68 | termine.whether.it.is.about.to.h |
| b7fa0 | 61 70 70 65 6e 2e 20 49 66 20 69 74 0a 20 20 20 20 20 20 69 73 2c 20 74 68 65 20 73 61 66 65 74 | appen..If.it.......is,.the.safet |
| b7fc0 | 79 20 63 68 65 63 6b 20 22 66 61 69 6c 73 22 2c 20 77 68 69 63 68 20 74 72 69 67 67 65 72 73 20 | y.check."fails",.which.triggers. |
| b7fe0 | 61 20 70 61 6e 69 63 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 | a.panic........</p>.......<p>... |
| b8000 | 20 20 20 20 41 6c 6c 20 6f 74 68 65 72 20 49 6c 6c 65 67 61 6c 20 42 65 68 61 76 69 6f 72 20 69 | ....All.other.Illegal.Behavior.i |
| b8020 | 73 20 3c 65 6d 3e 75 6e 63 68 65 63 6b 65 64 3c 2f 65 6d 3e 2c 20 6d 65 61 6e 69 6e 67 20 74 68 | s.<em>unchecked</em>,.meaning.th |
| b8040 | 65 20 63 6f 6d 70 69 6c 65 72 20 69 73 20 75 6e 61 62 6c 65 20 74 6f 20 69 6e 73 65 72 74 20 73 | e.compiler.is.unable.to.insert.s |
| b8060 | 61 66 65 74 79 20 63 68 65 63 6b 73 20 66 6f 72 0a 20 20 20 20 20 20 69 74 2e 20 49 66 20 55 6e | afety.checks.for.......it..If.Un |
| b8080 | 63 68 65 63 6b 65 64 20 49 6c 6c 65 67 61 6c 20 42 65 68 61 76 69 6f 72 20 69 73 20 69 6e 76 6f | checked.Illegal.Behavior.is.invo |
| b80a0 | 6b 65 64 20 61 74 20 72 75 6e 74 69 6d 65 2c 20 61 6e 79 74 68 69 6e 67 20 63 61 6e 20 68 61 70 | ked.at.runtime,.anything.can.hap |
| b80c0 | 70 65 6e 3a 20 75 73 75 61 6c 6c 79 20 74 68 61 74 20 77 69 6c 6c 20 62 65 20 73 6f 6d 65 20 6b | pen:.usually.that.will.be.some.k |
| b80e0 | 69 6e 64 20 6f 66 0a 20 20 20 20 20 20 63 72 61 73 68 2c 20 62 75 74 20 74 68 65 20 6f 70 74 69 | ind.of.......crash,.but.the.opti |
| b8100 | 6d 69 7a 65 72 20 69 73 20 66 72 65 65 20 74 6f 20 6d 61 6b 65 20 55 6e 63 68 65 63 6b 65 64 20 | mizer.is.free.to.make.Unchecked. |
| b8120 | 49 6c 6c 65 67 61 6c 20 42 65 68 61 76 69 6f 72 20 64 6f 20 61 6e 79 74 68 69 6e 67 2c 20 73 75 | Illegal.Behavior.do.anything,.su |
| b8140 | 63 68 20 61 73 20 63 61 6c 6c 69 6e 67 20 61 72 62 69 74 72 61 72 79 20 66 75 6e 63 74 69 6f 6e | ch.as.calling.arbitrary.function |
| b8160 | 73 0a 20 20 20 20 20 20 6f 72 20 63 6c 6f 62 62 65 72 69 6e 67 20 61 72 62 69 74 72 61 72 79 20 | s.......or.clobbering.arbitrary. |
| b8180 | 64 61 74 61 2e 20 54 68 69 73 20 69 73 20 73 69 6d 69 6c 61 72 20 74 6f 20 74 68 65 20 63 6f 6e | data..This.is.similar.to.the.con |
| b81a0 | 63 65 70 74 20 6f 66 20 22 75 6e 64 65 66 69 6e 65 64 20 62 65 68 61 76 69 6f 72 22 20 69 6e 20 | cept.of."undefined.behavior".in. |
| b81c0 | 73 6f 6d 65 20 6f 74 68 65 72 20 6c 61 6e 67 75 61 67 65 73 2e 20 4e 6f 74 65 20 74 68 61 74 0a | some.other.languages..Note.that. |
| b81e0 | 20 20 20 20 20 20 55 6e 63 68 65 63 6b 65 64 20 49 6c 6c 65 67 61 6c 20 42 65 68 61 76 69 6f 72 | ......Unchecked.Illegal.Behavior |
| b8200 | 20 73 74 69 6c 6c 20 61 6c 77 61 79 73 20 72 65 73 75 6c 74 73 20 69 6e 20 61 20 63 6f 6d 70 69 | .still.always.results.in.a.compi |
| b8220 | 6c 65 20 65 72 72 6f 72 20 69 66 20 65 76 61 6c 75 61 74 65 64 20 61 74 20 3c 61 20 68 72 65 66 | le.error.if.evaluated.at.<a.href |
| b8240 | 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 62 65 63 61 75 | ="#comptime">comptime</a>,.becau |
| b8260 | 73 65 20 74 68 65 20 5a 69 67 0a 20 20 20 20 20 20 63 6f 6d 70 69 6c 65 72 20 69 73 20 61 62 6c | se.the.Zig.......compiler.is.abl |
| b8280 | 65 20 74 6f 20 70 65 72 66 6f 72 6d 20 6d 6f 72 65 20 73 6f 70 68 69 73 74 69 63 61 74 65 64 20 | e.to.perform.more.sophisticated. |
| b82a0 | 63 68 65 63 6b 73 20 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 74 68 61 6e 20 61 74 20 72 | checks.at.compile-time.than.at.r |
| b82c0 | 75 6e 74 69 6d 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 | untime........</p>.......<p>.... |
| b82e0 | 20 20 20 4d 6f 73 74 20 49 6c 6c 65 67 61 6c 20 42 65 68 61 76 69 6f 72 20 69 73 20 73 61 66 65 | ...Most.Illegal.Behavior.is.safe |
| b8300 | 74 79 2d 63 68 65 63 6b 65 64 2e 20 48 6f 77 65 76 65 72 2c 20 74 6f 20 66 61 63 69 6c 69 74 61 | ty-checked..However,.to.facilita |
| b8320 | 74 65 20 6f 70 74 69 6d 69 7a 61 74 69 6f 6e 73 2c 20 73 61 66 65 74 79 20 63 68 65 63 6b 73 20 | te.optimizations,.safety.checks. |
| b8340 | 61 72 65 20 64 69 73 61 62 6c 65 64 20 62 79 20 64 65 66 61 75 6c 74 0a 20 20 20 20 20 20 69 6e | are.disabled.by.default.......in |
| b8360 | 20 74 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 | .the.<a.href="#ReleaseFast">Rele |
| b8380 | 61 73 65 46 61 73 74 3c 2f 61 3e 20 61 6e 64 20 3c 61 20 68 72 65 66 3d 22 23 52 65 6c 65 61 73 | aseFast</a>.and.<a.href="#Releas |
| b83a0 | 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 6f 70 74 69 6d 69 7a | eSmall">ReleaseSmall</a>.optimiz |
| b83c0 | 61 74 69 6f 6e 20 6d 6f 64 65 73 2e 20 53 61 66 65 74 79 20 63 68 65 63 6b 73 20 63 61 6e 20 61 | ation.modes..Safety.checks.can.a |
| b83e0 | 6c 73 6f 20 62 65 20 65 6e 61 62 6c 65 64 20 6f 72 20 64 69 73 61 62 6c 65 64 0a 20 20 20 20 20 | lso.be.enabled.or.disabled...... |
| b8400 | 20 6f 6e 20 61 20 70 65 72 2d 62 6c 6f 63 6b 20 62 61 73 69 73 2c 20 6f 76 65 72 72 69 64 69 6e | .on.a.per-block.basis,.overridin |
| b8420 | 67 20 74 68 65 20 64 65 66 61 75 6c 74 20 66 6f 72 20 74 68 65 20 63 75 72 72 65 6e 74 20 6f 70 | g.the.default.for.the.current.op |
| b8440 | 74 69 6d 69 7a 61 74 69 6f 6e 20 6d 6f 64 65 2c 20 75 73 69 6e 67 20 3c 61 20 68 72 65 66 3d 22 | timization.mode,.using.<a.href=" |
| b8460 | 23 73 65 74 52 75 6e 74 69 6d 65 53 61 66 65 74 79 22 3e 40 73 65 74 52 75 6e 74 69 6d 65 53 61 | #setRuntimeSafety">@setRuntimeSa |
| b8480 | 66 65 74 79 3c 2f 61 3e 2e 20 57 68 65 6e 0a 20 20 20 20 20 20 73 61 66 65 74 79 20 63 68 65 63 | fety</a>..When.......safety.chec |
| b84a0 | 6b 73 20 61 72 65 20 64 69 73 61 62 6c 65 64 2c 20 53 61 66 65 74 79 2d 43 68 65 63 6b 65 64 20 | ks.are.disabled,.Safety-Checked. |
| b84c0 | 49 6c 6c 65 67 61 6c 20 42 65 68 61 76 69 6f 72 20 62 65 68 61 76 65 73 20 6c 69 6b 65 20 55 6e | Illegal.Behavior.behaves.like.Un |
| b84e0 | 63 68 65 63 6b 65 64 20 49 6c 6c 65 67 61 6c 20 42 65 68 61 76 69 6f 72 3b 20 74 68 61 74 20 69 | checked.Illegal.Behavior;.that.i |
| b8500 | 73 2c 20 61 6e 79 20 62 65 68 61 76 69 6f 72 0a 20 20 20 20 20 20 6d 61 79 20 72 65 73 75 6c 74 | s,.any.behavior.......may.result |
| b8520 | 20 66 72 6f 6d 20 69 6e 76 6f 6b 69 6e 67 20 69 74 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 | .from.invoking.it........</p>... |
| b8540 | 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 57 68 65 6e 20 61 20 73 61 66 65 74 79 20 63 68 65 63 | ....<p>.......When.a.safety.chec |
| b8560 | 6b 20 66 61 69 6c 73 2c 20 5a 69 67 27 73 20 64 65 66 61 75 6c 74 20 70 61 6e 69 63 20 68 61 6e | k.fails,.Zig's.default.panic.han |
| b8580 | 64 6c 65 72 20 63 72 61 73 68 65 73 20 77 69 74 68 20 61 20 73 74 61 63 6b 20 74 72 61 63 65 2c | dler.crashes.with.a.stack.trace, |
| b85a0 | 20 6c 69 6b 65 20 74 68 69 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 | .like.this:.......</p>.......<fi |
| b85c0 | 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" |
| b85e0 | 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 6c 6c 65 67 61 6c | ><cite.class="file">test_illegal |
| b8600 | 5f 62 65 68 61 76 69 6f 72 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e | _behavior.zig</cite></figcaption |
| b8620 | 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" |
| b8640 | 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 |
| b8660 | 72 22 3e 26 71 75 6f 74 3b 73 61 66 65 74 79 20 63 68 65 63 6b 26 71 75 6f 74 3b 3c 2f 73 70 61 | r">"safety.check"</spa |
| b8680 | 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e | n>.{.....<span.class="tok-kw">un |
| b86a0 | 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e | reachable</span>;.}</code></pre> |
| b86c0 | 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 |
| b86e0 | 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 |
| b8700 | 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 |
| b8720 | 5f 69 6c 6c 65 67 61 6c 5f 62 65 68 61 76 69 6f 72 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 | _illegal_behavior.zig</kbd>.1/1. |
| b8740 | 74 65 73 74 5f 69 6c 6c 65 67 61 6c 5f 62 65 68 61 76 69 6f 72 2e 74 65 73 74 2e 73 61 66 65 74 | test_illegal_behavior.test.safet |
| b8760 | 79 20 63 68 65 63 6b 2e 2e 2e 74 68 72 65 61 64 20 31 30 39 35 32 31 39 20 70 61 6e 69 63 3a 20 | y.check...thread.1095219.panic:. |
| b8780 | 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 70 61 6e 20 63 | reached.unreachable.code.<span.c |
| b87a0 | 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 | lass="sgr-1m">/home/andy/dev/zig |
| b87c0 | 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 69 6c 6c 65 67 61 6c 5f 62 65 68 61 76 69 | /doc/langref/test_illegal_behavi |
| b87e0 | 6f 72 2e 7a 69 67 3a 32 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | or.zig:2:5</span>:.<span.class=" |
| b8800 | 73 67 72 2d 32 6d 22 3e 30 78 31 30 32 63 30 30 63 20 69 6e 20 74 65 73 74 2e 73 61 66 65 74 79 | sgr-2m">0x102c00c.in.test.safety |
| b8820 | 20 63 68 65 63 6b 20 28 74 65 73 74 5f 69 6c 6c 65 67 61 6c 5f 62 65 68 61 76 69 6f 72 2e 7a 69 | .check.(test_illegal_behavior.zi |
| b8840 | 67 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 75 6e 72 65 61 63 68 61 62 6c 65 3b 0a 20 20 20 20 3c | g)</span>.....unreachable;.....< |
| b8860 | 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 |
| b8880 | 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 | pan.class="sgr-1m">/home/andy/de |
| b88a0 | 76 2f 7a 69 67 2f 6c 69 62 2f 63 6f 6d 70 69 6c 65 72 2f 74 65 73 74 5f 72 75 6e 6e 65 72 2e 7a | v/zig/lib/compiler/test_runner.z |
| b88c0 | 69 67 3a 32 31 38 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 | ig:218:25</span>:.<span.class="s |
| b88e0 | 67 72 2d 32 6d 22 3e 30 78 31 31 35 63 62 30 30 20 69 6e 20 6d 61 69 6e 54 65 72 6d 69 6e 61 6c | gr-2m">0x115cb00.in.mainTerminal |
| b8900 | 20 28 74 65 73 74 5f 72 75 6e 6e 65 72 2e 7a 69 67 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 | .(test_runner.zig)</span>....... |
| b8920 | 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 20 7b 0a 20 20 20 20 | ..if.(test_fn.func()).|_|.{..... |
| b8940 | 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= |
| b8960 | 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=" |
| b8980 | 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 63 | sgr-1m">/home/andy/dev/zig/lib/c |
| b89a0 | 6f 6d 70 69 6c 65 72 2f 74 65 73 74 5f 72 75 6e 6e 65 72 2e 7a 69 67 3a 36 36 3a 32 38 3c 2f 73 | ompiler/test_runner.zig:66:28</s |
| b89c0 | 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 31 35 | pan>:.<span.class="sgr-2m">0x115 |
| b89e0 | 35 64 32 31 20 69 6e 20 6d 61 69 6e 20 28 74 65 73 74 5f 72 75 6e 6e 65 72 2e 7a 69 67 29 3c 2f | 5d21.in.main.(test_runner.zig)</ |
| b8a00 | 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 61 | span>.........return.mainTermina |
| b8a20 | 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 20 | l();............................ |
| b8a40 | 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>.< |
| b8a60 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 | span.class="sgr-1m">/home/andy/d |
| b8a80 | 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 36 31 38 3a 32 32 3c | ev/zig/lib/std/start.zig:618:22< |
| b8aa0 | 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 |
| b8ac0 | 31 34 66 61 62 64 20 69 6e 20 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 20 28 | 14fabd.in.posixCallMainAndExit.( |
| b8ae0 | 73 74 64 2e 7a 69 67 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 | std.zig)</span>.............root |
| b8b00 | 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 |
| b8b20 | 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 |
| b8b40 | 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 | an.class="sgr-1m">/home/andy/dev |
| b8b60 | 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 32 33 32 3a 35 3c 2f 73 70 | /zig/lib/std/start.zig:232:5</sp |
| b8b80 | 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 31 34 66 | an>:.<span.class="sgr-2m">0x114f |
| b8ba0 | 33 35 31 20 69 6e 20 5f 73 74 61 72 74 20 28 73 74 64 2e 7a 69 67 29 3c 2f 73 70 61 6e 3e 0a 20 | 351.in._start.(std.zig)</span>.. |
| b8bc0 | 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 5f | ...asm.volatile.(switch.(native_ |
| b8be0 | 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 6d | arch).{.....<span.class="sgr-32m |
| b8c00 | 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"> |
| b8c20 | 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 72 | ???:?:?</span>:.<span.class="sgr |
| b8c40 | 2d 32 6d 22 3e 30 78 30 20 69 6e 20 3f 3f 3f 20 28 3f 3f 3f 29 3c 2f 73 70 61 6e 3e 0a 65 72 72 | -2m">0x0.in.???.(???)</span>.err |
| b8c60 | 6f 72 3a 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 74 65 73 74 20 63 6f 6d 6d 61 6e 64 20 63 | or:.the.following.test.command.c |
| b8c80 | 72 61 73 68 65 64 3a 0a 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 2e 7a 69 67 2d | rashed:./home/andy/dev/zig/.zig- |
| b8ca0 | 63 61 63 68 65 2f 6f 2f 36 35 61 30 32 33 32 64 33 61 35 63 34 62 66 32 30 34 65 61 64 61 66 63 | cache/o/65a0232d3a5c4bf204eadafc |
| b8cc0 | 62 63 65 65 65 33 32 63 2f 74 65 73 74 20 2d 2d 73 65 65 64 3d 30 78 62 35 36 37 61 62 33 64 0a | bceee32c/test.--seed=0xb567ab3d. |
| b8ce0 | 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 68 | </samp></pre></figure>........<h |
| b8d00 | 33 20 69 64 3d 22 52 65 61 63 68 69 6e 67 2d 55 6e 72 65 61 63 68 61 62 6c 65 2d 43 6f 64 65 22 | 3.id="Reaching-Unreachable-Code" |
| b8d20 | 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 52 65 61 63 68 69 6e 67 2d 55 6e 72 65 61 63 68 61 | ><a.href="#toc-Reaching-Unreacha |
| b8d40 | 62 6c 65 2d 43 6f 64 65 22 3e 52 65 61 63 68 69 6e 67 20 55 6e 72 65 61 63 68 61 62 6c 65 20 43 | ble-Code">Reaching.Unreachable.C |
| b8d60 | 6f 64 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 52 65 | ode</a>.<a.class="hdr".href="#Re |
| b8d80 | 61 63 68 69 6e 67 2d 55 6e 72 65 61 63 68 61 62 6c 65 2d 43 6f 64 65 22 3e c2 a7 3c 2f 61 3e 3c | aching-Unreachable-Code">..</a>< |
| b8da0 | 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 3a 3c | /h3>........<p>At.compile-time:< |
| b8dc0 | 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 |
| b8de0 | 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" |
| b8e00 | 3e 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 72 65 61 63 68 61 | >test_comptime_reaching_unreacha |
| b8e20 | 62 6c 65 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e | ble.zig</cite></figcaption><pre> |
| b8e40 | 3c 63 6f 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 | <code><span.class="tok-kw">compt |
| b8e60 | 69 6d 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 61 73 73 65 72 74 28 3c 73 70 61 6e 20 63 6c | ime</span>.{.....assert(<span.cl |
| b8e80 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a | ass="tok-null">false</span>);.}. |
| b8ea0 | 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>.< |
| b8ec0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 61 73 73 65 72 74 3c 2f 73 70 61 6e | span.class="tok-fn">assert</span |
| b8ee0 | 3e 28 6f 6b 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f | >(ok:.<span.class="tok-type">boo |
| b8f00 | 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 22 | l</span>).<span.class="tok-type" |
| b8f20 | 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=" |
| b8f40 | 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 21 6f 6b 29 20 3c 73 70 61 6e 20 63 6c | tok-kw">if</span>.(!ok).<span.cl |
| b8f60 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 3b | ass="tok-kw">unreachable</span>; |
| b8f80 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 61 73 | .<span.class="tok-comment">//.as |
| b8fa0 | 73 65 72 74 69 6f 6e 20 66 61 69 6c 75 72 65 3c 2f 73 70 61 6e 3e 0a 7d 3c 2f 63 6f 64 65 3e 3c | sertion.failure</span>.}</code>< |
| b8fc0 | 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 |
| b8fe0 | 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 |
| b9000 | 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 |
| b9020 | 20 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 72 65 61 63 68 61 | .test_comptime_reaching_unreacha |
| b9040 | 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 2d 31 | ble.zig</kbd>.<span.class="sgr-1 |
| b9060 | 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 | m">/home/andy/dev/zig/doc/langre |
| b9080 | 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 72 65 61 63 68 | f/test_comptime_reaching_unreach |
| b90a0 | 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 20 63 6c 61 73 | able.zig:5:14:.</span><span.clas |
| b90c0 | 73 3d 22 73 67 72 2d 33 31 6d 22 3e 65 72 72 6f 72 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 | s="sgr-31m">error:.</span><span. |
| b90e0 | 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 61 63 68 61 62 | class="sgr-1m">reached.unreachab |
| b9100 | 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 20 75 6e 72 65 | le.code.</span>....if.(!ok).unre |
| b9120 | 61 63 68 61 62 6c 65 3b 20 2f 2f 20 61 73 73 65 72 74 69 6f 6e 20 66 61 69 6c 75 72 65 0a 20 20 | achable;.//.assertion.failure... |
| b9140 | 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" |
| b9160 | 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 6c 61 73 73 3d | >^~~~~~~~~~~.</span><span.class= |
| b9180 | 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f | "sgr-1m">/home/andy/dev/zig/doc/ |
| b91a0 | 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 72 65 61 63 68 69 6e 67 5f 75 | langref/test_comptime_reaching_u |
| b91c0 | 6e 72 65 61 63 68 61 62 6c 65 2e 7a 69 67 3a 32 3a 31 31 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 | nreachable.zig:2:11:.</span><spa |
| b91e0 | 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>< |
| b9200 | 73 70 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 61 74 20 63 6f | span.class="sgr-1m">called.at.co |
| b9220 | 6d 70 74 69 6d 65 20 68 65 72 65 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 61 73 73 65 72 74 28 66 61 | mptime.here.</span>....assert(fa |
| b9240 | 6c 73 65 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e | lse);.....<span.class="sgr-32m"> |
| b9260 | 7e 7e 7e 7e 7e 7e 5e 7e 7e 7e 7e 7e 7e 0a 3c 2f 73 70 61 6e 3e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 | ~~~~~~^~~~~~~.</span>.</samp></p |
| b9280 | 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 |
| b92a0 | 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 |
| b92c0 | 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 |
| b92e0 | 6c 65 22 3e 72 75 6e 74 69 6d 65 5f 72 65 61 63 68 69 6e 67 5f 75 6e 72 65 61 63 68 61 62 6c 65 | le">runtime_reaching_unreachable |
| b9300 | 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 |
| b9320 | 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 |
| b9340 | 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 |
| b9360 | 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= |
| b9380 | 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> |
| b93a0 | 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 |
| b93c0 | 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 |
| b93e0 | 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 |
| b9400 | 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 |
| b9420 | 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 73 74 64 2e 64 65 62 75 67 2e 61 73 73 65 72 74 28 | d</span>.{.....std.debug.assert( |
| b9440 | 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 |
| b9460 | 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 |
| b9480 | 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 |
| b94a0 | 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> |
| b94c0 | 24 20 3c 6b 62 64 3e 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 72 75 6e 74 69 6d 65 5f 72 65 61 | $.<kbd>zig.build-exe.runtime_rea |
| b94e0 | 63 68 69 6e 67 5f 75 6e 72 65 61 63 68 61 62 6c 65 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 24 20 3c 6b | ching_unreachable.zig</kbd>.$.<k |
| b9500 | 62 64 3e 2e 2f 72 75 6e 74 69 6d 65 5f 72 65 61 63 68 69 6e 67 5f 75 6e 72 65 61 63 68 61 62 6c | bd>./runtime_reaching_unreachabl |
| b9520 | 65 3c 2f 6b 62 64 3e 0a 74 68 72 65 61 64 20 31 30 39 38 38 34 39 20 70 61 6e 69 63 3a 20 72 65 | e</kbd>.thread.1098849.panic:.re |
| b9540 | 61 63 68 65 64 20 75 6e 72 65 61 63 68 61 62 6c 65 20 63 6f 64 65 0a 3c 73 70 61 6e 20 63 6c 61 | ached.unreachable.code.<span.cla |
| b9560 | 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c | ss="sgr-1m">/home/andy/dev/zig/l |
| b9580 | 69 62 2f 73 74 64 2f 64 65 62 75 67 2e 7a 69 67 3a 35 35 39 3a 31 34 3c 2f 73 70 61 6e 3e 3a 20 | ib/std/debug.zig:559:14</span>:. |
| b95a0 | 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 34 31 37 39 20 69 | <span.class="sgr-2m">0x1044179.i |
| b95c0 | 6e 20 61 73 73 65 72 74 20 28 73 74 64 2e 7a 69 67 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 69 66 | n.assert.(std.zig)</span>.....if |
| b95e0 | 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 |
| b9600 | 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 |
| b9620 | 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 |
| b9640 | 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 | ="sgr-1m">/home/andy/dev/zig/doc |
| b9660 | 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 |
| b9680 | 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 |
| b96a0 | 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 31 33 65 38 34 65 20 69 6e 20 6d 61 69 6e 20 28 72 | ss="sgr-2m">0x113e84e.in.main.(r |
| b96c0 | 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 29 | untime_reaching_unreachable.zig) |
| b96e0 | 3c 2f 73 70 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 | </span>.....std.debug.assert(fal |
| b9700 | 73 65 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 | se);.....................<span.c |
| b9720 | 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 |
| b9740 | 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f | ass="sgr-1m">/home/andy/dev/zig/ |
| b9760 | 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 36 31 38 3a 32 32 3c 2f 73 70 61 6e 3e 3a | lib/std/start.zig:618:22</span>: |
| b9780 | 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 31 33 64 61 39 64 20 | .<span.class="sgr-2m">0x113da9d. |
| b97a0 | 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 73 74 64 2e 7a 69 67 | in.posixCallMainAndExit.(std.zig |
| b97c0 | 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() |
| b97e0 | 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 |
| b9800 | 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 |
| b9820 | 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 | s="sgr-1m">/home/andy/dev/zig/li |
| b9840 | 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 32 33 32 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 | b/std/start.zig:232:5</span>:.<s |
| b9860 | 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 31 33 64 33 33 31 20 69 6e 20 | pan.class="sgr-2m">0x113d331.in. |
| b9880 | 5f 73 74 61 72 74 20 28 73 74 64 2e 7a 69 67 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 61 73 6d 20 | _start.(std.zig)</span>.....asm. |
| b98a0 | 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).{ |
| b98c0 | 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 |
| b98e0 | 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">???:?:? |
| b9900 | 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 |
| b9920 | 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 |
| b9940 | 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 |
| b9960 | 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 |
| b9980 | 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 68 72 65 66 3d 22 | ="Index-out-of-Bounds"><a.href=" |
| b99a0 | 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 49 6e 64 65 78 20 | #toc-Index-out-of-Bounds">Index. |
| b99c0 | 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 3d 22 68 64 72 22 | out.of.Bounds</a>.<a.class="hdr" |
| b99e0 | 20 68 72 65 66 3d 22 23 49 6e 64 65 78 2d 6f 75 74 2d 6f 66 2d 42 6f 75 6e 64 73 22 3e c2 a7 3c | .href="#Index-out-of-Bounds">..< |
| b9a00 | 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 69 | /a></h3>........<p>At.compile-ti |
| b9a20 | 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 |
| b9a40 | 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 |
| b9a60 | 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 75 74 5f 6f 66 5f | ile">test_comptime_index_out_of_ |
| b9a80 | 62 6f 75 6e 64 73 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 | bounds.zig</cite></figcaption><p |
| b9aa0 | 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 |
| b9ac0 | 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= |
| b9ae0 | 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 3a 20 5b 3c 73 | "tok-kw">const</span>.array:.[<s |
| b9b00 | 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>] |
| b9b20 | 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> |
| b9b40 | 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 |
| b9b60 | 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 73 70 61 6e 20 63 | ello"</span>.*;.....<span.c |
| b9b80 | 6c 61 73 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 61 72 62 61 | lass="tok-kw">const</span>.garba |
| b9ba0 | 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 6b 2d 6e 75 6d 62 | ge.=.array[<span.class="tok-numb |
| b9bc0 | 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 62 61 67 65 3b 0a | er">5</span>];....._.=.garbage;. |
| b9be0 | 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>< |
| b9c00 | 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 |
| b9c20 | 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 |
| b9c40 | 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 64 65 78 5f 6f 75 | >zig.test.test_comptime_index_ou |
| b9c60 | 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 6e 20 63 6c 61 73 | t_of_bounds.zig</kbd>.<span.clas |
| b9c80 | 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f | s="sgr-1m">/home/andy/dev/zig/do |
| b9ca0 | 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 64 65 78 5f 6f 75 | c/langref/test_comptime_index_ou |
| b9cc0 | 74 5f 6f 66 5f 62 6f 75 6e 64 73 2e 7a 69 67 3a 33 3a 32 37 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 | t_of_bounds.zig:3:27:.</span><sp |
| b9ce0 | 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 |
| b9d00 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 69 6e 64 65 78 20 35 20 6f 75 | ><span.class="sgr-1m">index.5.ou |
| b9d20 | 74 73 69 64 65 20 61 72 72 61 79 20 6f 66 20 6c 65 6e 67 74 68 20 35 0a 3c 2f 73 70 61 6e 3e 20 | tside.array.of.length.5.</span>. |
| b9d40 | 20 20 20 63 6f 6e 73 74 20 67 61 72 62 61 67 65 20 3d 20 61 72 72 61 79 5b 35 5d 3b 0a 20 20 20 | ...const.garbage.=.array[5];.... |
| b9d60 | 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 |
| b9d80 | 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></ |
| b9da0 | 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 |
| b9dc0 | 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 |
| b9de0 | 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 |
| b9e00 | 69 6c 65 22 3e 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 | ile">runtime_index_out_of_bounds |
| b9e20 | 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 |
| b9e40 | 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 70 61 | de><span.class="tok-kw">pub</spa |
| b9e60 | 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 |
| b9e80 | 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 |
| b9ea0 | 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 |
| b9ec0 | 3c 2f 73 70 61 6e 3e 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 |
| b9ee0 | 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 78 20 3d 20 66 6f 6f 28 3c 73 70 61 6e 20 63 6c | w">const</span>.x.=.foo(<span.cl |
| b9f00 | 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 3c | ass="tok-str">"hello"< |
| b9f20 | 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 5f 20 3d 20 78 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 | /span>);....._.=.x;.}..<span.cla |
| b9f40 | 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 |
| b9f60 | 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 5b 5d 3c 73 70 61 6e | s="tok-fn">foo</span>(x:.[]<span |
| b9f80 | 20 63 6c 61 73 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 |
| b9fa0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 20 3c | an.class="tok-type">u8</span>).< |
| b9fc0 | 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>. |
| b9fe0 | 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 |
| ba000 | 6e 3c 2f 73 70 61 6e 3e 20 78 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | n</span>.x[<span.class="tok-numb |
| ba020 | 65 72 22 3e 35 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">5</span>];.}</code></pre></f |
| ba040 | 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= |
| ba060 | 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 |
| ba080 | 72 65 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 72 75 | re><samp>$.<kbd>zig.build-exe.ru |
| ba0a0 | 6e 74 69 6d 65 5f 69 6e 64 65 78 5f 6f 75 74 5f 6f 66 5f 62 6f 75 6e 64 73 2e 7a 69 67 3c 2f 6b | ntime_index_out_of_bounds.zig</k |
| ba0c0 | 62 64 3e 0a 24 20 3c 6b 62 64 3e 2e 2f 72 75 6e 74 69 6d 65 5f 69 6e 64 65 78 5f 6f 75 74 5f 6f | bd>.$.<kbd>./runtime_index_out_o |
| ba0e0 | 66 5f 62 6f 75 6e 64 73 3c 2f 6b 62 64 3e 0a 74 68 72 65 61 64 20 31 30 39 38 30 36 33 20 70 61 | f_bounds</kbd>.thread.1098063.pa |
| ba100 | 6e 69 63 3a 20 69 6e 64 65 78 20 6f 75 74 20 6f 66 20 62 6f 75 6e 64 73 3a 20 69 6e 64 65 78 20 | nic:.index.out.of.bounds:.index. |
| ba120 | 35 2c 20 6c 65 6e 20 35 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 | 5,.len.5.<span.class="sgr-1m">/h |
| ba140 | 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 72 75 6e | ome/andy/dev/zig/doc/langref/run |
| ba160 | 74 69 6d 65 5f 69 6e 64 65 78 5f 6f 75 74 5f 6f 66 5f 62 6f 75 6e 64 73 2e 7a 69 67 3a 37 3a 31 | time_index_out_of_bounds.zig:7:1 |
| ba180 | 33 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 | 3</span>:.<span.class="sgr-2m">0 |
| ba1a0 | 78 31 31 33 66 61 63 36 20 69 6e 20 66 6f 6f 20 28 72 75 6e 74 69 6d 65 5f 69 6e 64 65 78 5f 6f | x113fac6.in.foo.(runtime_index_o |
| ba1c0 | 75 74 5f 6f 66 5f 62 6f 75 6e 64 73 2e 7a 69 67 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 72 65 74 | ut_of_bounds.zig)</span>.....ret |
| ba1e0 | 75 72 6e 20 78 5b 35 5d 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | urn.x[5];.............<span.clas |
| ba200 | 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 |
| ba220 | 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 | ="sgr-1m">/home/andy/dev/zig/doc |
| ba240 | 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 74 5f 6f 66 5f 62 6f | /langref/runtime_index_out_of_bo |
| ba260 | 75 6e 64 73 2e 7a 69 67 3a 32 3a 31 38 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 | unds.zig:2:18</span>:.<span.clas |
| ba280 | 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 31 33 65 38 35 61 20 69 6e 20 6d 61 69 6e 20 28 72 75 | s="sgr-2m">0x113e85a.in.main.(ru |
| ba2a0 | 6e 74 69 6d 65 5f 69 6e 64 65 78 5f 6f 75 74 5f 6f 66 5f 62 6f 75 6e 64 73 2e 7a 69 67 29 3c 2f | ntime_index_out_of_bounds.zig)</ |
| ba2c0 | 73 70 61 6e 3e 0a 20 20 20 20 63 6f 6e 73 74 20 78 20 3d 20 66 6f 6f 28 26 71 75 6f 74 3b 68 65 | span>.....const.x.=.foo("he |
| ba2e0 | 6c 6c 6f 26 71 75 6f 74 3b 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 | llo");..................<sp |
| ba300 | 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 |
| ba320 | 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f | n.class="sgr-1m">/home/andy/dev/ |
| ba340 | 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 36 31 38 3a 32 32 3c 2f 73 70 | zig/lib/std/start.zig:618:22</sp |
| ba360 | 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 31 33 64 | an>:.<span.class="sgr-2m">0x113d |
| ba380 | 61 39 64 20 69 6e 20 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 20 28 73 74 64 | a9d.in.posixCallMainAndExit.(std |
| ba3a0 | 2e 7a 69 67 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 | .zig)</span>.............root.ma |
| ba3c0 | 69 6e 28 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e | in();......................<span |
| ba3e0 | 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. |
| ba400 | 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 | class="sgr-1m">/home/andy/dev/zi |
| ba420 | 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 32 33 32 3a 35 3c 2f 73 70 61 6e 3e | g/lib/std/start.zig:232:5</span> |
| ba440 | 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 31 33 64 33 33 31 | :.<span.class="sgr-2m">0x113d331 |
| ba460 | 20 69 6e 20 5f 73 74 61 72 74 20 28 73 74 64 2e 7a 69 67 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 | .in._start.(std.zig)</span>..... |
| ba480 | 61 73 6d 20 76 6f 6c 61 74 69 6c 65 20 28 73 77 69 74 63 68 20 28 6e 61 74 69 76 65 5f 61 72 63 | asm.volatile.(switch.(native_arc |
| ba4a0 | 68 29 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e | h).{.....<span.class="sgr-32m">^ |
| ba4c0 | 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 3f 3f 3f | </span>.<span.class="sgr-1m">??? |
| ba4e0 | 3a 3f 3a 3f 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d | :?:?</span>:.<span.class="sgr-2m |
| ba500 | 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 65 | ">0x0.in.???.(???)</span>.(proce |
| ba520 | 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 3e | ss.terminated.by.signal).</samp> |
| ba540 | 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 |
| ba560 | 33 20 69 64 3d 22 43 61 73 74 2d 4e 65 67 61 74 69 76 65 2d 4e 75 6d 62 65 72 2d 74 6f 2d 55 6e | 3.id="Cast-Negative-Number-to-Un |
| ba580 | 73 69 67 6e 65 64 2d 49 6e 74 65 67 65 72 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 43 61 | signed-Integer"><a.href="#toc-Ca |
| ba5a0 | 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 |
| ba5c0 | 6e 74 65 67 65 72 22 3e 43 61 73 74 20 4e 65 67 61 74 69 76 65 20 4e 75 6d 62 65 72 20 74 6f 20 | nteger">Cast.Negative.Number.to. |
| ba5e0 | 55 6e 73 69 67 6e 65 64 20 49 6e 74 65 67 65 72 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 | Unsigned.Integer</a>.<a.class="h |
| ba600 | 64 72 22 20 68 72 65 66 3d 22 23 43 61 73 74 2d 4e 65 67 61 74 69 76 65 2d 4e 75 6d 62 65 72 2d | dr".href="#Cast-Negative-Number- |
| ba620 | 74 6f 2d 55 6e 73 69 67 6e 65 64 2d 49 6e 74 65 67 65 72 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e | to-Unsigned-Integer">..</a></h3> |
| ba640 | 0a 0a 20 20 20 20 20 20 3c 70 3e 41 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 3a 3c 2f 70 3e 0a | ........<p>At.compile-time:</p>. |
| ba660 | 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= |
| ba680 | 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 |
| ba6a0 | 74 5f 63 6f 6d 70 74 69 6d 65 5f 69 6e 76 61 6c 69 64 5f 63 61 73 74 2e 7a 69 67 3c 2f 63 69 74 | t_comptime_invalid_cast.zig</cit |
| ba6c0 | 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. |
| ba6e0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 7b | class="tok-kw">comptime</span>.{ |
| ba700 | 0a 20 20 20 20 3c 73 70 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< |
| ba720 | 2f 73 70 61 6e 3e 20 76 61 6c 75 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | /span>.value:.<span.class="tok-t |
| ba740 | 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 2d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ype">i32</span>.=.-<span.class=" |
| ba760 | 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. |
| ba780 | 63 6c 61 73 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 73 69 | class="tok-kw">const</span>.unsi |
| ba7a0 | 67 6e 65 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 33 32 | gned:.<span.class="tok-type">u32 |
| ba7c0 | 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 |
| ba7e0 | 69 6e 22 3e 40 69 6e 74 43 61 73 74 3c 2f 73 70 61 6e 3e 28 76 61 6c 75 65 29 3b 0a 20 20 20 20 | in">@intCast</span>(value);..... |
| ba800 | 5f 20 3d 20 75 6e 73 69 67 6e 65 64 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 | _.=.unsigned;.}</code></pre></fi |
| ba820 | 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=" |
| ba840 | 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 |
| ba860 | 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 |
| ba880 | 70 74 69 6d 65 5f 69 6e 76 61 6c 69 64 5f 63 61 73 74 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 3c 73 70 | ptime_invalid_cast.zig</kbd>.<sp |
| ba8a0 | 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 | an.class="sgr-1m">/home/andy/dev |
| ba8c0 | 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 69 | /zig/doc/langref/test_comptime_i |
| ba8e0 | 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 |
| ba900 | 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 |
| ba920 | 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' |
| ba940 | 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. |
| ba960 | 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:. |
| ba980 | 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);.......... |
| ba9a0 | 20 20 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. |
| ba9c0 | 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>.</ |
| ba9e0 | 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 |
| baa00 | 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 |
| baa20 | 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 |
| baa40 | 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 |
| baa60 | 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 |
| baa80 | 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 |
| baaa0 | 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 |
| baac0 | 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= |
| baae0 | 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> |
| bab00 | 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 |
| bab20 | 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 |
| bab40 | 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 |
| bab60 | 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 |
| bab80 | 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- |
| baba0 | 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 |
| babc0 | 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 |
| babe0 | 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 |
| bac00 | 70 61 6e 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 |
| bac20 | 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 |
| bac40 | 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 |
| bac60 | 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= |
| bac80 | 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 |
| baca0 | 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 |
| bacc0 | 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 |
| bace0 | 70 61 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: |
| bad00 | 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}) |
| bad20 | 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 |
| bad40 | 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 |
| bad60 | 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 |
| bad80 | 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 |
| bada0 | 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 |
| badc0 | 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 31 30 39 39 30 | _invalid_cast</kbd>.thread.10990 |
| bade0 | 33 31 20 70 61 6e 69 63 3a 20 69 6e 74 65 67 65 72 20 64 6f 65 73 20 6e 6f 74 20 66 69 74 20 69 | 31.panic:.integer.does.not.fit.i |
| bae00 | 6e 20 64 65 73 74 69 6e 61 74 69 6f 6e 20 74 79 70 65 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | n.destination.type.<span.class=" |
| bae20 | 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c | sgr-1m">/home/andy/dev/zig/doc/l |
| bae40 | 61 6e 67 72 65 66 2f 72 75 6e 74 69 6d 65 5f 69 6e 76 61 6c 69 64 5f 63 61 73 74 2e 7a 69 67 3a | angref/runtime_invalid_cast.zig: |
| bae60 | 36 3a 32 37 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d | 6:27</span>:.<span.class="sgr-2m |
| bae80 | 22 3e 30 78 31 31 33 65 38 35 66 20 69 6e 20 6d 61 69 6e 20 28 72 75 6e 74 69 6d 65 5f 69 6e 76 | ">0x113e85f.in.main.(runtime_inv |
| baea0 | 61 6c 69 64 5f 63 61 73 74 2e 7a 69 67 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 63 6f 6e 73 74 20 | alid_cast.zig)</span>.....const. |
| baec0 | 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 61 6c 75 65 29 3b | unsigned:.u32.=.@intCast(value); |
| baee0 | 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 3c 73 70 61 6e | ...........................<span |
| baf00 | 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. |
| baf20 | 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 | class="sgr-1m">/home/andy/dev/zi |
| baf40 | 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 36 31 38 3a 32 32 3c 2f 73 70 61 6e | g/lib/std/start.zig:618:22</span |
| baf60 | 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 31 33 64 61 39 | >:.<span.class="sgr-2m">0x113da9 |
| baf80 | 64 20 69 6e 20 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 20 28 73 74 64 2e 7a | d.in.posixCallMainAndExit.(std.z |
| bafa0 | 69 67 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 | ig)</span>.............root.main |
| bafc0 | 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 |
| bafe0 | 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 |
| bb000 | 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f | ass="sgr-1m">/home/andy/dev/zig/ |
| bb020 | 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 32 33 32 3a 35 3c 2f 73 70 61 6e 3e 3a 20 | lib/std/start.zig:232:5</span>:. |
| bb040 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 31 33 64 33 33 31 20 69 | <span.class="sgr-2m">0x113d331.i |
| bb060 | 6e 20 5f 73 74 61 72 74 20 28 73 74 64 2e 7a 69 67 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 61 73 | n._start.(std.zig)</span>.....as |
| bb080 | 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) |
| bb0a0 | 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">^</ |
| bb0c0 | 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">???:? |
| bb0e0 | 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"> |
| bb100 | 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 |
| bb120 | 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></ |
| bb140 | 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 |
| bb160 | 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 |
| bb180 | 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 |
| bb1a0 | 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>. |
| bb1c0 | 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 |
| bb1e0 | 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 |
| bb200 | 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 |
| bb220 | 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- |
| bb240 | 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>..... |
| bb260 | 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>...... |
| bb280 | 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- |
| bb2a0 | 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 |
| bb2c0 | 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< |
| bb2e0 | 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 |
| bb300 | 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 |
| bb320 | 6e 3e 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 |
| bb340 | 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. |
| bb360 | 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 |
| bb380 | 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 |
| bb3a0 | 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 |
| bb3c0 | 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- |
| bb3e0 | 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 |
| bb400 | 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 |
| bb420 | 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 |
| bb440 | 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 |
| bb460 | 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 |
| bb480 | 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 |
| bb4a0 | 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 |
| bb4c0 | 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 |
| bb4e0 | 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 | gr-1m">/home/andy/dev/zig/doc/la |
| bb500 | 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 63 61 73 74 | ngref/test_comptime_invalid_cast |
| bb520 | 5f 74 72 75 6e 63 61 74 65 2e 7a 69 67 3a 33 3a 33 31 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e | _truncate.zig:3:31:.</span><span |
| bb540 | 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>< |
| bb560 | 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 38 27 20 63 61 | span.class="sgr-1m">type.'u8'.ca |
| bb580 | 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 27 33 30 | nnot.represent.integer.value.'30 |
| bb5a0 | 30 27 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 63 6f 6e 73 74 20 62 79 74 65 3a 20 75 38 20 3d 20 40 | 0'.</span>....const.byte:.u8.=.@ |
| bb5c0 | 69 6e 74 43 61 73 74 28 73 70 61 72 74 61 6e 5f 63 6f 75 6e 74 29 3b 0a 20 20 20 20 20 20 20 20 | intCast(spartan_count);......... |
| bb5e0 | 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 |
| bb600 | 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 0a 3c 2f 73 70 61 6e | s="sgr-32m">^~~~~~~~~~~~~.</span |
| bb620 | 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>........ |
| bb640 | 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 |
| bb660 | 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 |
| bb680 | 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_ |
| bb6a0 | 63 61 73 74 5f 74 72 75 6e 63 61 74 65 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 | cast_truncate.zig</cite></figcap |
| bb6c0 | 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 |
| bb6e0 | 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 |
| bb700 | 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> |
| bb720 | 28 3c 73 70 61 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 |
| bb740 | 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 |
| bb760 | 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 |
| bb780 | 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 |
| bb7a0 | 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=" |
| bb7c0 | 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 |
| bb7e0 | 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 70 61 72 | n.class="tok-kw">var</span>.spar |
| bb800 | 74 61 6e 5f 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 | tan_count:.<span.class="tok-type |
| bb820 | 22 3e 75 31 36 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ">u16</span>.=.<span.class="tok- |
| bb840 | 6e 75 6d 62 65 72 22 3e 33 30 30 3c 2f 73 70 61 6e 3e 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | number">300</span>;.<span.class= |
| bb860 | 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 72 75 6e 74 69 6d 65 2d 6b 6e 6f 77 6e 3c 2f | "tok-comment">//.runtime-known</ |
| bb880 | 73 70 61 6e 3e 0a 20 20 20 20 5f 20 3d 20 26 61 6d 70 3b 73 70 61 72 74 61 6e 5f 63 6f 75 6e 74 | span>....._.=.&spartan_count |
| bb8a0 | 3b 0a 20 20 20 20 3c 73 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 |
| bb8c0 | 3c 2f 73 70 61 6e 3e 20 62 79 74 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | </span>.byte:.<span.class="tok-t |
| bb8e0 | 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 |
| bb900 | 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 74 | k-builtin">@intCast</span>(spart |
| bb920 | 61 6e 5f 63 6f 75 6e 74 29 3b 0a 20 20 20 20 73 74 64 2e 64 65 62 75 67 2e 70 72 69 6e 74 28 3c | an_count);.....std.debug.print(< |
| bb940 | 73 70 61 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 | span.class="tok-str">"value |
| bb960 | 3a 20 7b 7d 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 | :.{}\n"</span>,..{byte});.} |
| bb980 | 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 |
| bb9a0 | 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 |
| bb9c0 | 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> |
| bb9e0 | 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 5f 63 61 | zig.build-exe.runtime_invalid_ca |
| bba00 | 73 74 5f 74 72 75 6e 63 61 74 65 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 24 20 3c 6b 62 64 3e 2e 2f 72 | st_truncate.zig</kbd>.$.<kbd>./r |
| bba20 | 75 6e 74 69 6d 65 5f 69 6e 76 61 6c 69 64 5f 63 61 73 74 5f 74 72 75 6e 63 61 74 65 3c 2f 6b 62 | untime_invalid_cast_truncate</kb |
| bba40 | 64 3e 0a 74 68 72 65 61 64 20 31 31 30 31 32 34 39 20 70 61 6e 69 63 3a 20 69 6e 74 65 67 65 72 | d>.thread.1101249.panic:.integer |
| bba60 | 20 64 6f 65 73 20 6e 6f 74 20 66 69 74 20 69 6e 20 64 65 73 74 69 6e 61 74 69 6f 6e 20 74 79 70 | .does.not.fit.in.destination.typ |
| bba80 | 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 |
| bbaa0 | 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 72 75 6e 74 69 6d 65 5f 69 6e | y/dev/zig/doc/langref/runtime_in |
| bbac0 | 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 |
| bbae0 | 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 31 33 65 | an>:.<span.class="sgr-2m">0x113e |
| bbb00 | 38 36 30 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 | 860.in.main.(runtime_invalid_cas |
| bbb20 | 74 5f 74 72 75 6e 63 61 74 65 2e 7a 69 67 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 63 6f 6e 73 74 | t_truncate.zig)</span>.....const |
| bbb40 | 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 |
| bbb60 | 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 3c 73 70 61 6e 20 | nt);......................<span. |
| bbb80 | 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 |
| bbba0 | 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 | lass="sgr-1m">/home/andy/dev/zig |
| bbbc0 | 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 36 31 38 3a 32 32 3c 2f 73 70 61 6e 3e | /lib/std/start.zig:618:22</span> |
| bbbe0 | 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 31 33 64 61 39 64 | :.<span.class="sgr-2m">0x113da9d |
| bbc00 | 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 73 74 64 2e 7a 69 | .in.posixCallMainAndExit.(std.zi |
| bbc20 | 67 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 | g)</span>.............root.main( |
| bbc40 | 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 |
| bbc60 | 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 |
| bbc80 | 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c | ss="sgr-1m">/home/andy/dev/zig/l |
| bbca0 | 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 32 33 32 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c | ib/std/start.zig:232:5</span>:.< |
| bbcc0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 31 33 64 33 33 31 20 69 6e | span.class="sgr-2m">0x113d331.in |
| bbce0 | 20 5f 73 74 61 72 74 20 28 73 74 64 2e 7a 69 67 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 61 73 6d | ._start.(std.zig)</span>.....asm |
| bbd00 | 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 20 | .volatile.(switch.(native_arch). |
| bbd20 | 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 73 | {.....<span.class="sgr-32m">^</s |
| bbd40 | 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 3a | pan>.<span.class="sgr-1m">???:?: |
| bbd60 | 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 30 | ?</span>:.<span.class="sgr-2m">0 |
| bbd80 | 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 20 | x0.in.???.(???)</span>.(process. |
| bbda0 | 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 70 | terminated.by.signal).</samp></p |
| bbdc0 | 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 6f | re></figure>........<p>.......To |
| bbde0 | 20 74 72 75 6e 63 61 74 65 20 62 69 74 73 2c 20 75 73 65 20 3c 61 20 68 72 65 66 3d 22 23 74 72 | .truncate.bits,.use.<a.href="#tr |
| bbe00 | 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 |
| bbe20 | 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 49 6e 74 65 67 65 72 2d 4f | >..............<h3.id="Integer-O |
| bbe40 | 76 65 72 66 6c 6f 77 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 49 6e 74 65 67 65 72 2d 4f | verflow"><a.href="#toc-Integer-O |
| bbe60 | 76 65 72 66 6c 6f 77 22 3e 49 6e 74 65 67 65 72 20 4f 76 65 72 66 6c 6f 77 3c 2f 61 3e 20 3c 61 | verflow">Integer.Overflow</a>.<a |
| bbe80 | 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 49 6e 74 65 67 65 72 2d 4f 76 65 72 | .class="hdr".href="#Integer-Over |
| bbea0 | 66 6c 6f 77 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 68 34 20 69 64 3d | flow">..</a></h3>........<h4.id= |
| bbec0 | 22 44 65 66 61 75 6c 74 2d 4f 70 65 72 61 74 69 6f 6e 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 | "Default-Operations"><a.href="#t |
| bbee0 | 6f 63 2d 44 65 66 61 75 6c 74 2d 4f 70 65 72 61 74 69 6f 6e 73 22 3e 44 65 66 61 75 6c 74 20 4f | oc-Default-Operations">Default.O |
| bbf00 | 70 65 72 61 74 69 6f 6e 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 | perations</a>.<a.class="hdr".hre |
| bbf20 | 66 3d 22 23 44 65 66 61 75 6c 74 2d 4f 70 65 72 61 74 69 6f 6e 73 22 3e c2 a7 3c 2f 61 3e 3c 2f | f="#Default-Operations">..</a></ |
| bbf40 | 68 34 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 54 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 6f 70 65 72 | h4>........<p>The.following.oper |
| bbf60 | 61 74 6f 72 73 20 63 61 6e 20 63 61 75 73 65 20 69 6e 74 65 67 65 72 20 6f 76 65 72 66 6c 6f 77 | ators.can.cause.integer.overflow |
| bbf80 | 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c | :</p>.......<ul>...........<li>< |
| bbfa0 | 63 6f 64 65 3e 2b 3c 2f 63 6f 64 65 3e 20 28 61 64 64 69 74 69 6f 6e 29 3c 2f 6c 69 3e 0a 20 20 | code>+</code>.(addition)</li>... |
| bbfc0 | 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 3e 2d 3c 2f 63 6f 64 65 3e 20 28 73 75 62 74 | ........<li><code>-</code>.(subt |
| bbfe0 | 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 64 | raction)</li>...........<li><cod |
| bc000 | 65 3e 2d 3c 2f 63 6f 64 65 3e 20 28 6e 65 67 61 74 69 6f 6e 29 3c 2f 6c 69 3e 0a 20 20 20 20 20 | e>-</code>.(negation)</li>...... |
| bc020 | 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 3e 2a 3c 2f 63 6f 64 65 3e 20 28 6d 75 6c 74 69 70 6c | .....<li><code>*</code>.(multipl |
| bc040 | 69 63 61 74 69 6f 6e 29 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 | ication)</li>...........<li><cod |
| bc060 | 65 3e 2f 3c 2f 63 6f 64 65 3e 20 28 64 69 76 69 73 69 6f 6e 29 3c 2f 6c 69 3e 0a 20 20 20 20 20 | e>/</code>.(division)</li>...... |
| bc080 | 20 20 20 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 | ...<li><a.href="#divTrunc">@divT |
| bc0a0 | 72 75 6e 63 3c 2f 61 3e 20 28 64 69 76 69 73 69 6f 6e 29 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 | runc</a>.(division)</li>........ |
| bc0c0 | 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 64 69 76 46 6c 6f 6f 72 22 3e 40 64 69 76 46 6c 6f | .<li><a.href="#divFloor">@divFlo |
| bc0e0 | 6f 72 3c 2f 61 3e 20 28 64 69 76 69 73 69 6f 6e 29 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c | or</a>.(division)</li>.........< |
| bc100 | 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 64 69 76 45 78 61 63 74 22 3e 40 64 69 76 45 78 61 63 74 | li><a.href="#divExact">@divExact |
| bc120 | 3c 2f 61 3e 20 28 64 69 76 69 73 69 6f 6e 29 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e | </a>.(division)</li>.......</ul> |
| bc140 | 0a 20 20 20 20 20 20 3c 70 3e 45 78 61 6d 70 6c 65 20 77 69 74 68 20 61 64 64 69 74 69 6f 6e 20 | .......<p>Example.with.addition. |
| bc160 | 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 | at.compile-time:</p>.......<figu |
| bc180 | 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">< |
| bc1a0 | 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 5f | cite.class="file">test_comptime_ |
| bc1c0 | 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 6e 3e | overflow.zig</cite></figcaption> |
| bc1e0 | 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"> |
| bc200 | 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | comptime</span>.{.....<span.clas |
| bc220 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 62 79 74 65 3a 20 3c 73 70 61 | s="tok-kw">var</span>.byte:.<spa |
| bc240 | 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>.=.< |
| bc260 | 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 |
| bc280 | 6e 3e 3b 0a 20 20 20 20 62 79 74 65 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | n>;.....byte.+=.<span.class="tok |
| bc2a0 | 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 |
| bc2c0 | 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 |
| bc2e0 | 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 |
| bc300 | 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 |
| bc320 | 74 5f 63 6f 6d 70 74 69 6d 65 5f 6f 76 65 72 66 6c 6f 77 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 3c 73 | t_comptime_overflow.zig</kbd>.<s |
| bc340 | 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 | pan.class="sgr-1m">/home/andy/de |
| bc360 | 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f | v/zig/doc/langref/test_comptime_ |
| bc380 | 6f 76 65 72 66 6c 6f 77 2e 7a 69 67 3a 33 3a 31 30 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 | overflow.zig:3:10:.</span><span. |
| bc3a0 | 63 6c 61 73 73 3d 22 73 67 72 2d 33 31 6d 22 3e 65 72 72 6f 72 3a 20 3c 2f 73 70 61 6e 3e 3c 73 | class="sgr-31m">error:.</span><s |
| bc3c0 | 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 20 69 | pan.class="sgr-1m">overflow.of.i |
| bc3e0 | 6e 74 65 67 65 72 20 74 79 70 65 20 27 75 38 27 20 77 69 74 68 20 76 61 6c 75 65 20 27 32 35 36 | nteger.type.'u8'.with.value.'256 |
| bc400 | 27 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 62 79 74 65 20 2b 3d 20 31 3b 0a 20 20 20 20 3c 73 70 61 | '.</span>....byte.+=.1;.....<spa |
| bc420 | 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 7e 7e 7e 7e 7e 5e 7e 7e 7e 0a 3c 2f 73 70 | n.class="sgr-32m">~~~~~^~~~.</sp |
| bc440 | 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>...... |
| bc460 | 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 |
| bc480 | 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">< |
| bc4a0 | 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 6f 76 65 72 66 6c | cite.class="file">runtime_overfl |
| bc4c0 | 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>< |
| bc4e0 | 63 6f 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< |
| bc500 | 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 |
| bc520 | 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 |
| bc540 | 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 |
| bc560 | 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</ |
| bc580 | 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 |
| bc5a0 | 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</ |
| bc5c0 | 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 |
| bc5e0 | 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 |
| bc600 | 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 62 79 74 65 3a 20 3c 73 70 61 6e 20 63 6c 61 | k-kw">var</span>.byte:.<span.cla |
| bc620 | 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 20 | ss="tok-type">u8</span>.=.<span. |
| bc640 | 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 6e 3e 3b 0a 20 | class="tok-number">255</span>;.. |
| bc660 | 20 20 20 62 79 74 65 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 | ...byte.+=.<span.class="tok-numb |
| bc680 | 65 72 22 3e 31 3c 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 | er">1</span>;.....std.debug.prin |
| bc6a0 | 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 |
| bc6c0 | 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 62 79 74 65 7d 29 | lue:.{}\n"</span>,..{byte}) |
| bc6e0 | 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 |
| bc700 | 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 |
| bc720 | 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 |
| bc740 | 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 6f 76 65 72 66 6c 6f | bd>zig.build-exe.runtime_overflo |
| bc760 | 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 6f 76 65 | w.zig</kbd>.$.<kbd>./runtime_ove |
| bc780 | 72 66 6c 6f 77 3c 2f 6b 62 64 3e 0a 74 68 72 65 61 64 20 31 30 39 35 39 39 38 20 70 61 6e 69 63 | rflow</kbd>.thread.1095998.panic |
| bc7a0 | 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 3d 22 | :.integer.overflow.<span.class=" |
| bc7c0 | 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c | sgr-1m">/home/andy/dev/zig/doc/l |
| bc7e0 | 61 6e 67 72 65 66 2f 72 75 6e 74 69 6d 65 5f 6f 76 65 72 66 6c 6f 77 2e 7a 69 67 3a 35 3a 31 30 | angref/runtime_overflow.zig:5:10 |
| bc800 | 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 |
| bc820 | 31 31 33 65 38 37 35 20 69 6e 20 6d 61 69 6e 20 28 72 75 6e 74 69 6d 65 5f 6f 76 65 72 66 6c 6f | 113e875.in.main.(runtime_overflo |
| bc840 | 77 2e 7a 69 67 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 62 79 74 65 20 2b 3d 20 31 3b 0a 20 20 20 | w.zig)</span>.....byte.+=.1;.... |
| bc860 | 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 |
| bc880 | 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/ |
| bc8a0 | 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 36 | andy/dev/zig/lib/std/start.zig:6 |
| bc8c0 | 31 38 3a 32 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 | 18:22</span>:.<span.class="sgr-2 |
| bc8e0 | 6d 22 3e 30 78 31 31 33 64 61 39 64 20 69 6e 20 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 | m">0x113da9d.in.posixCallMainAnd |
| bc900 | 45 78 69 74 20 28 73 74 64 2e 7a 69 67 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 20 | Exit.(std.zig)</span>........... |
| bc920 | 20 20 72 6f 6f 74 2e 6d 61 69 6e 28 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ..root.main();.................. |
| bc940 | 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 |
| bc960 | 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 |
| bc980 | 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 32 33 32 | dy/dev/zig/lib/std/start.zig:232 |
| bc9a0 | 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e | :5</span>:.<span.class="sgr-2m"> |
| bc9c0 | 30 78 31 31 33 64 33 33 31 20 69 6e 20 5f 73 74 61 72 74 20 28 73 74 64 2e 7a 69 67 29 3c 2f 73 | 0x113d331.in._start.(std.zig)</s |
| bc9e0 | 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 |
| bca00 | 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 |
| bca20 | 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 |
| bca40 | 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 |
| bca60 | 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 |
| bca80 | 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 |
| bcaa0 | 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>........ |
| bcac0 | 0a 20 20 20 20 20 20 3c 68 34 20 69 64 3d 22 53 74 61 6e 64 61 72 64 2d 4c 69 62 72 61 72 79 2d | .......<h4.id="Standard-Library- |
| bcae0 | 4d 61 74 68 2d 46 75 6e 63 74 69 6f 6e 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 53 74 | Math-Functions"><a.href="#toc-St |
| bcb00 | 61 6e 64 61 72 64 2d 4c 69 62 72 61 72 79 2d 4d 61 74 68 2d 46 75 6e 63 74 69 6f 6e 73 22 3e 53 | andard-Library-Math-Functions">S |
| bcb20 | 74 61 6e 64 61 72 64 20 4c 69 62 72 61 72 79 20 4d 61 74 68 20 46 75 6e 63 74 69 6f 6e 73 3c 2f | tandard.Library.Math.Functions</ |
| bcb40 | 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 53 74 61 6e 64 61 72 | a>.<a.class="hdr".href="#Standar |
| bcb60 | 64 2d 4c 69 62 72 61 72 79 2d 4d 61 74 68 2d 46 75 6e 63 74 69 6f 6e 73 22 3e c2 a7 3c 2f 61 3e | d-Library-Math-Functions">..</a> |
| bcb80 | 3c 2f 68 34 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 54 68 65 73 65 20 66 75 6e 63 74 69 6f 6e 73 20 | </h4>........<p>These.functions. |
| bcba0 | 70 72 6f 76 69 64 65 64 20 62 79 20 74 68 65 20 73 74 61 6e 64 61 72 64 20 6c 69 62 72 61 72 79 | provided.by.the.standard.library |
| bcbc0 | 20 72 65 74 75 72 6e 20 70 6f 73 73 69 62 6c 65 20 65 72 72 6f 72 73 2e 3c 2f 70 3e 0a 20 20 20 | .return.possible.errors.</p>.... |
| bcbe0 | 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 3e 3c 73 70 61 | ...<ul>...........<li><code><spa |
| bcc00 | 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 |
| bcc20 | 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">" |
| bcc40 | 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 6d 61 74 68 2e 61 64 64 3c 2f 63 6f 64 | ;std"</span>).math.add</cod |
| bcc60 | 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 |
| bcc80 | 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 |
| bcca0 | 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">" |
| bccc0 | 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 6d 61 74 68 2e 73 75 62 3c 2f 63 6f 64 | ;std"</span>).math.sub</cod |
| bcce0 | 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 |
| bcd00 | 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 |
| bcd20 | 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">" |
| bcd40 | 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 6d 61 74 68 2e 6d 75 6c 3c 2f 63 6f 64 | ;std"</span>).math.mul</cod |
| bcd60 | 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 |
| bcd80 | 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 |
| bcda0 | 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">" |
| bcdc0 | 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 6d 61 74 68 2e 64 69 76 54 72 75 6e 63 | ;std"</span>).math.divTrunc |
| bcde0 | 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 | </code></li>...........<li><code |
| bce00 | 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 |
| bce20 | 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"> |
| bce40 | 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 |
| bce60 | 46 6c 6f 6f 72 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e | Floor</code></li>...........<li> |
| bce80 | 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"> |
| bcea0 | 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- |
| bcec0 | 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 6d 61 74 | str">"std"</span>).mat |
| bcee0 | 68 2e 64 69 76 45 78 61 63 74 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 | h.divExact</code></li>.......... |
| bcf00 | 20 3c 6c 69 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c | .<li><code><span.class="tok-buil |
| bcf20 | 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= |
| bcf40 | 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> |
| bcf60 | 29 2e 6d 61 74 68 2e 73 68 6c 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 | ).math.shl</code></li>.......</u |
| bcf80 | 6c 3e 0a 20 20 20 20 20 20 3c 70 3e 45 78 61 6d 70 6c 65 20 6f 66 20 63 61 74 63 68 69 6e 67 20 | l>.......<p>Example.of.catching. |
| bcfa0 | 61 6e 20 6f 76 65 72 66 6c 6f 77 20 66 6f 72 20 61 64 64 69 74 69 6f 6e 3a 3c 2f 70 3e 0a 20 20 | an.overflow.for.addition:</p>... |
| bcfc0 | 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 |
| bcfe0 | 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 6d 61 74 68 5f | ig-cap"><cite.class="file">math_ |
| bd000 | 61 64 64 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e | add.zig</cite></figcaption><pre> |
| bd020 | 3c 63 6f 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 |
| bd040 | 3c 2f 73 70 61 6e 3e 20 6d 61 74 68 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | </span>.math.=.<span.class="tok- |
| bd060 | 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 |
| bd080 | 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 |
| bd0a0 | 70 61 6e 3e 29 2e 6d 61 74 68 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | pan>).math;.<span.class="tok-kw" |
| bd0c0 | 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 70 72 69 6e 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | >const</span>.print.=.<span.clas |
| bd0e0 | 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>(< |
| bd100 | 73 70 61 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 |
| bd120 | 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 64 65 62 75 67 2e 70 72 69 6e 74 3b 0a 3c 73 70 61 6e 20 | uot;</span>).debug.print;.<span. |
| bd140 | 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. |
| bd160 | 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 |
| bd180 | 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 6d 61 69 6e 3c 2f 73 70 61 6e 3e 28 29 20 21 3c 73 70 | lass="tok-fn">main</span>().!<sp |
| bd1a0 | 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>. |
| bd1c0 | 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</ |
| bd1e0 | 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 |
| bd200 | 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- |
| bd220 | 6e 75 6d 62 65 72 22 3e 32 35 35 3c 2f 73 70 61 6e 3e 3b 0a 0a 20 20 20 20 62 79 74 65 20 3d 20 | number">255</span>;......byte.=. |
| bd240 | 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>.( |
| bd260 | 6d 61 74 68 2e 61 64 64 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | math.add(<span.class="tok-type"> |
| bd280 | 75 38 3c 2f 73 70 61 6e 3e 2c 20 62 79 74 65 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | u8</span>,.byte,.<span.class="to |
| bd2a0 | 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 29 20 7c 72 65 73 75 6c 74 7c 20 72 65 | k-number">1</span>)).|result|.re |
| bd2c0 | 73 75 6c 74 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f | sult.<span.class="tok-kw">else</ |
| bd2e0 | 73 70 61 6e 3e 20 7c 65 72 72 7c 20 7b 0a 20 20 20 20 20 20 20 20 70 72 69 6e 74 28 3c 73 70 61 | span>.|err|.{.........print(<spa |
| bd300 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 75 6e 61 62 6c 65 20 74 | n.class="tok-str">"unable.t |
| bd320 | 6f 20 61 64 64 20 6f 6e 65 3a 20 7b 73 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e | o.add.one:.{s}\n"</span>,.. |
| bd340 | 7b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 65 72 72 6f | {<span.class="tok-builtin">@erro |
| bd360 | 72 4e 61 6d 65 3c 2f 73 70 61 6e 3e 28 65 72 72 29 7d 29 3b 0a 20 20 20 20 20 20 20 20 3c 73 70 | rName</span>(err)});.........<sp |
| bd380 | 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>. |
| bd3a0 | 65 72 72 3b 0a 20 20 20 20 7d 3b 0a 0a 20 20 20 20 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 6c 61 | err;.....};......print(<span.cla |
| bd3c0 | 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 72 65 73 75 6c 74 3a 20 7b 7d 5c 6e 26 | ss="tok-str">"result:.{}\n& |
| bd3e0 | 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 62 79 74 65 7d 29 3b 0a 7d 3c 2f 63 6f 64 65 3e | quot;</span>,..{byte});.}</code> |
| bd400 | 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 |
| bd420 | 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 |
| bd440 | 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 |
| bd460 | 6c 64 2d 65 78 65 20 6d 61 74 68 5f 61 64 64 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 24 20 3c 6b 62 64 | ld-exe.math_add.zig</kbd>.$.<kbd |
| bd480 | 3e 2e 2f 6d 61 74 68 5f 61 64 64 3c 2f 6b 62 64 3e 0a 75 6e 61 62 6c 65 20 74 6f 20 61 64 64 20 | >./math_add</kbd>.unable.to.add. |
| bd4a0 | 6f 6e 65 3a 20 4f 76 65 72 66 6c 6f 77 0a 65 72 72 6f 72 3a 20 4f 76 65 72 66 6c 6f 77 0a 3c 73 | one:.Overflow.error:.Overflow.<s |
| bd4c0 | 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 | pan.class="sgr-1m">/home/andy/de |
| bd4e0 | 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 6d 61 74 68 2e 7a 69 67 3a 35 37 30 3a 32 31 3c 2f 73 | v/zig/lib/std/math.zig:570:21</s |
| bd500 | 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 31 33 | pan>:.<span.class="sgr-2m">0x113 |
| bd520 | 65 62 38 65 20 69 6e 20 61 64 64 5f 5f 61 6e 6f 6e 5f 32 32 35 35 34 20 28 73 74 64 2e 7a 69 67 | eb8e.in.add__anon_22554.(std.zig |
| bd540 | 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 69 66 20 28 6f 76 5b 31 5d 20 21 3d 20 30 29 20 72 65 74 | )</span>.....if.(ov[1].!=.0).ret |
| bd560 | 75 72 6e 20 65 72 72 6f 72 2e 4f 76 65 72 66 6c 6f 77 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 | urn.error.Overflow;............. |
| bd580 | 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">^< |
| bd5a0 | 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 |
| bd5c0 | 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 6d 61 74 68 5f | e/andy/dev/zig/doc/langref/math_ |
| bd5e0 | 61 64 64 2e 7a 69 67 3a 38 3a 39 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | add.zig:8:9</span>:.<span.class= |
| bd600 | 22 73 67 72 2d 32 6d 22 3e 30 78 31 31 33 64 34 30 32 20 69 6e 20 6d 61 69 6e 20 28 6d 61 74 68 | "sgr-2m">0x113d402.in.main.(math |
| bd620 | 5f 61 64 64 2e 7a 69 67 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 | _add.zig)</span>.........return. |
| bd640 | 65 72 72 3b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 | err;.........<span.class="sgr-32 |
| bd660 | 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 69 67 75 72 | m">^</span>.</samp></pre></figur |
| bd680 | 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 42 75 69 6c 74 69 6e | e>...............<h4.id="Builtin |
| bd6a0 | 2d 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 | -Overflow-Functions"><a.href="#t |
| bd6c0 | 6f 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 | oc-Builtin-Overflow-Functions">B |
| bd6e0 | 75 69 6c 74 69 6e 20 4f 76 65 72 66 6c 6f 77 20 46 75 6e 63 74 69 6f 6e 73 3c 2f 61 3e 20 3c 61 | uiltin.Overflow.Functions</a>.<a |
| bd700 | 20 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 | .class="hdr".href="#Builtin-Over |
| bd720 | 66 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 | flow-Functions">..</a></h4>..... |
| bd740 | 20 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 | ...<p>.......These.builtins.retu |
| bd760 | 72 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 | rn.a.tuple.containing.whether.th |
| bd780 | 65 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 | ere.was.an.overflow.......(as.a. |
| bd7a0 | 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 31 3c | <code><span.class="tok-type">u1< |
| bd7c0 | 2f 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 | /span></code>).and.the.possibly. |
| bd7e0 | 6f 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 | overflowed.bits.of.the.operation |
| bd800 | 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 | :.......</p>.......<ul>......... |
| bd820 | 20 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 | ..<li><a.href="#addWithOverflow" |
| bd840 | 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 20 20 | >@addWithOverflow</a></li>...... |
| bd860 | 20 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 | .....<li><a.href="#subWithOverfl |
| bd880 | 6f 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 | ow">@subWithOverflow</a></li>... |
| bd8a0 | 20 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 | ........<li><a.href="#mulWithOve |
| bd8c0 | 72 66 6c 6f 77 22 3e 40 6d 75 6c 57 69 74 68 4f 76 65 72 66 6c 6f 77 3c 2f 61 3e 3c 2f 6c 69 3e | rflow">@mulWithOverflow</a></li> |
| bd8e0 | 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 73 68 6c 57 69 74 68 | ...........<li><a.href="#shlWith |
| bd900 | 4f 76 65 72 66 6c 6f 77 22 3e 40 73 68 6c 57 69 74 68 4f 76 65 72 66 6c 6f 77 3c 2f 61 3e 3c 2f | Overflow">@shlWithOverflow</a></ |
| bd920 | 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>....... |
| bd940 | 45 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 | Example.of.<a.href="#addWithOver |
| bd960 | 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 3a 0a 20 20 20 20 | flow">@addWithOverflow</a>:..... |
| bd980 | 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 |
| bd9a0 | 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 |
| bd9c0 | 6c 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 | le">addWithOverflow_builtin.zig< |
| bd9e0 | 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 |
| bda00 | 70 61 6e 20 63 6c 61 73 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>. |
| bda20 | 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 |
| bda40 | 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 |
| bda60 | 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 |
| bda80 | 65 62 75 67 2e 70 72 69 6e 74 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | ebug.print;.<span.class="tok-kw" |
| bdaa0 | 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" |
| bdac0 | 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"> |
| bdae0 | 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 |
| bdb00 | 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 |
| bdb20 | 73 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 | ss="tok-kw">const</span>.byte:.< |
| bdb40 | 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>. |
| bdb60 | 3d 20 3c 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 | =.<span.class="tok-number">255</ |
| bdb80 | 73 70 61 6e 3e 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | span>;......<span.class="tok-kw" |
| bdba0 | 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=" |
| bdbc0 | 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 |
| bdbe0 | 70 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 | pan>(byte,.<span.class="tok-numb |
| bdc00 | 65 72 22 3e 31 30 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | er">10</span>);.....<span.class= |
| bdc20 | 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 |
| bdc40 | 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 |
| bdc60 | 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>). |
| bdc80 | 7b 0a 20 20 20 20 20 20 20 20 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | {.........print(<span.class="tok |
| bdca0 | 2d 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 | -str">"overflowed.result:.{ |
| bdcc0 | 7d 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 | }\n"</span>,..{ov[<span.cla |
| bdce0 | 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 7d 29 3b 0a 20 20 20 | ss="tok-number">0</span>]});.... |
| bdd00 | 20 7d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 | .}.<span.class="tok-kw">else</sp |
| bdd20 | 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d | an>.{.........print(<span.class= |
| bdd40 | 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 72 65 73 75 6c 74 3a 20 7b 7d 5c 6e 26 71 75 6f | "tok-str">"result:.{}\n&quo |
| bdd60 | 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 6f 76 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | t;</span>,..{ov[<span.class="tok |
| bdd80 | 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 5d 7d 29 3b 0a 20 20 20 20 7d 0a 7d 3c 2f 63 | -number">0</span>]});.....}.}</c |
| bdda0 | 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 |
| bddc0 | 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</ |
| bdde0 | 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 |
| bde00 | 20 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 | .build-exe.addWithOverflow_built |
| bde20 | 69 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 | in.zig</kbd>.$.<kbd>./addWithOve |
| bde40 | 72 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 | rflow_builtin</kbd>.overflowed.r |
| bde60 | 65 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 | esult:.9.</samp></pre></figure>. |
| bde80 | 0a 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 | ..............<h4.id="Wrapping-O |
| bdea0 | 70 65 72 61 74 69 6f 6e 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 57 72 61 70 70 69 6e | perations"><a.href="#toc-Wrappin |
| bdec0 | 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 74 69 6f 6e | g-Operations">Wrapping.Operation |
| bdee0 | 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 57 72 61 70 | s</a>.<a.class="hdr".href="#Wrap |
| bdf00 | 70 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 | ping-Operations">..</a></h4>.... |
| bdf20 | 20 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 | ....<p>.......These.operations.h |
| bdf40 | 61 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 | ave.guaranteed.wraparound.semant |
| bdf60 | 69 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 | ics........</p>.......<ul>...... |
| bdf80 | 20 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 | .....<li><code>+%</code>.(wrapar |
| bdfa0 | 6f 75 6e 64 20 61 64 64 69 74 69 6f 6e 29 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c | ound.addition)</li>...........<l |
| bdfc0 | 69 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 | i><code>-%</code>.(wraparound.su |
| bdfe0 | 62 74 72 61 63 74 69 6f 6e 29 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 | btraction)</li>...........<li><c |
| be000 | 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 6e 65 67 61 74 69 | ode>-%</code>.(wraparound.negati |
| be020 | 6f 6e 29 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 3e 2a 25 3c | on)</li>...........<li><code>*%< |
| be040 | 2f 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 | /code>.(wraparound.multiplicatio |
| be060 | 6e 29 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 | n)</li>.......</ul>.......<figur |
| be080 | 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 |
| be0a0 | 69 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 | ite.class="file">test_wraparound |
| be0c0 | 5f 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 | _semantics.zig</cite></figcaptio |
| be0e0 | 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 |
| be100 | 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 |
| be120 | 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 |
| be140 | 70 61 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 |
| be160 | 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 |
| be180 | 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 |
| be1a0 | 69 6e 67 2e 65 78 70 65 63 74 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | ing.expect;.<span.class="tok-kw" |
| be1c0 | 3e 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 | >const</span>.minInt.=.std.math. |
| be1e0 | 6d 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 | minInt;.<span.class="tok-kw">con |
| be200 | 73 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 | st</span>.maxInt.=.std.math.maxI |
| be220 | 6e 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f | nt;..<span.class="tok-kw">test</ |
| be240 | 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 |
| be260 | 74 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 | t;wraparound.addition.and.subtra |
| be280 | 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 63 | ction"</span>.{.....<span.c |
| be2a0 | 6c 61 73 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 |
| be2c0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 | pan.class="tok-type">i32</span>. |
| be2e0 | 3d 20 6d 61 78 49 6e 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | =.maxInt(<span.class="tok-type"> |
| be300 | 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 22 74 6f | i32</span>);.....<span.class="to |
| be320 | 6b 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 | k-kw">const</span>.min_val.=.x.+ |
| be340 | 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 3e 31 3c 2f 73 70 | %.<span.class="tok-number">1</sp |
| be360 | 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 |
| be380 | 79 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 | y</span>.expect(min_val.==.minIn |
| be3a0 | 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 | t(<span.class="tok-type">i32</sp |
| be3c0 | 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 22 3e | an>));.....<span.class="tok-kw"> |
| be3e0 | 63 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 | const</span>.max_val.=.min_val.- |
| be400 | 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 3e 31 3c 2f 73 70 | %.<span.class="tok-number">1</sp |
| be420 | 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 |
| be440 | 79 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 | y</span>.expect(max_val.==.maxIn |
| be460 | 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 | t(<span.class="tok-type">i32</sp |
| be480 | 61 6e 3e 29 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 | an>));.}</code></pre></figure><f |
| be4a0 | 69 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 |
| be4c0 | 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 |
| be4e0 | 3e 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 | >$.<kbd>zig.test.test_wraparound |
| be500 | 5f 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 | _semantics.zig</kbd>.1/1.test_wr |
| be520 | 61 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 | aparound_semantics.test.wraparou |
| be540 | 6e 64 20 61 64 64 69 74 69 6f 6e 20 61 6e 64 20 73 75 62 74 72 61 63 74 69 6f 6e 2e 2e 2e 4f 4b | nd.addition.and.subtraction...OK |
| be560 | 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 |
| be580 | 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 0a 20 20 20 20 20 | e></figure>..................... |
| be5a0 | 20 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 | .<h3.id="Exact-Left-Shift-Overfl |
| be5c0 | 6f 77 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 45 78 61 63 74 2d 4c 65 66 74 2d 53 68 69 | ow"><a.href="#toc-Exact-Left-Shi |
| be5e0 | 66 74 2d 4f 76 65 72 66 6c 6f 77 22 3e 45 78 61 63 74 20 4c 65 66 74 20 53 68 69 66 74 20 4f 76 | ft-Overflow">Exact.Left.Shift.Ov |
| be600 | 65 72 66 6c 6f 77 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 | erflow</a>.<a.class="hdr".href=" |
| be620 | 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 c2 a7 3c 2f | #Exact-Left-Shift-Overflow">..</ |
| be640 | 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d | a></h3>........<p>At.compile-tim |
| be660 | 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 |
| be680 | 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 |
| be6a0 | 6c 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 66 | le">test_comptime_shlExact_overf |
| be6c0 | 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 6e 3e 3c 70 72 65 3e | low.zig</cite></figcaption><pre> |
| be6e0 | 3c 63 6f 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 | <code><span.class="tok-kw">compt |
| be700 | 69 6d 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ime</span>.{.....<span.class="to |
| be720 | 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 78 20 3d 20 3c 73 70 61 6e 20 63 6c 61 | k-kw">const</span>.x.=.<span.cla |
| be740 | 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 |
| be760 | 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 61 73 3c | >(<span.class="tok-builtin">@as< |
| be780 | 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 | /span>(<span.class="tok-type">u8 |
| be7a0 | 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 |
| be7c0 | 22 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 | ">0b01010101</span>),.<span.clas |
| be7e0 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 5f 20 | s="tok-number">2</span>);....._. |
| be800 | 3d 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 | =.x;.}</code></pre></figure><fig |
| be820 | 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 |
| be840 | 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>$ |
| be860 | 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 73 68 6c | .<kbd>zig.test.test_comptime_shl |
| be880 | 45 78 61 63 74 5f 6f 76 65 72 66 6c 6f 77 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 3c 73 70 61 6e 20 63 | Exact_overflow.zig</kbd>.<span.c |
| be8a0 | 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 | lass="sgr-1m">/home/andy/dev/zig |
| be8c0 | 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 73 68 6c 45 78 | /doc/langref/test_comptime_shlEx |
| be8e0 | 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 73 70 61 6e 3e 3c 73 | act_overflow.zig:2:15:.</span><s |
| be900 | 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 31 6d 22 3e 65 72 72 6f 72 3a 20 3c 2f 73 70 61 | pan.class="sgr-31m">error:.</spa |
| be920 | 6e 3e 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 | n><span.class="sgr-1m">overflow. |
| be940 | 6f 66 20 69 6e 74 65 67 65 72 20 74 79 70 65 20 27 75 38 27 20 77 69 74 68 20 76 61 6c 75 65 20 | of.integer.type.'u8'.with.value. |
| be960 | 27 33 34 30 27 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 63 6f 6e 73 74 20 78 20 3d 20 40 73 68 6c 45 | '340'.</span>....const.x.=.@shlE |
| be980 | 78 61 63 74 28 40 61 73 28 75 38 2c 20 30 62 30 31 30 31 30 31 30 31 29 2c 20 32 29 3b 0a 20 20 | xact(@as(u8,.0b01010101),.2);... |
| be9a0 | 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 |
| be9c0 | 22 3e 5e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e | ">^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
| be9e0 | 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 72 | ~~~.</span>.</samp></pre></figur |
| bea00 | 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 74 20 72 75 6e 74 69 6d 65 3a 3c 2f 70 3e 0a 20 20 20 | e>........<p>At.runtime:</p>.... |
| bea20 | 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 |
| bea40 | 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 74 69 6d | g-cap"><cite.class="file">runtim |
| bea60 | 65 5f 73 68 6c 45 78 61 63 74 5f 6f 76 65 72 66 6c 6f 77 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f | e_shlExact_overflow.zig</cite></ |
| bea80 | 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 |
| beaa0 | 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 |
| beac0 | 70 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< |
| beae0 | 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 |
| beb00 | 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 61 | ot;std"</span>);..<span.cla |
| beb20 | 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 |
| beb40 | 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 |
| beb60 | 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 |
| beb80 | 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>.{... |
| beba0 | 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 |
| bebc0 | 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 38 3c 2f | >.x:.<span.class="tok-type">u8</ |
| bebe0 | 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" |
| bec00 | 3e 30 62 30 31 30 31 30 31 30 31 3c 2f 73 70 61 6e 3e 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | >0b01010101</span>;.<span.class= |
| bec20 | 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 72 75 6e 74 69 6d 65 2d 6b 6e 6f 77 6e 3c 2f | "tok-comment">//.runtime-known</ |
| bec40 | 73 70 61 6e 3e 0a 20 20 20 20 5f 20 3d 20 26 61 6d 70 3b 78 3b 0a 20 20 20 20 3c 73 70 61 6e 20 | span>....._.=.&x;.....<span. |
| bec60 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 79 20 3d 20 | class="tok-kw">const</span>.y.=. |
| bec80 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 68 6c 45 78 | <span.class="tok-builtin">@shlEx |
| beca0 | 61 63 74 3c 2f 73 70 61 6e 3e 28 78 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | act</span>(x,.<span.class="tok-n |
| becc0 | 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 73 74 64 2e 64 65 62 75 67 2e | umber">2</span>);.....std.debug. |
| bece0 | 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 |
| bed00 | 74 3b 76 61 6c 75 65 3a 20 7b 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 79 7d | t;value:.{}\n"</span>,..{y} |
| bed20 | 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 |
| bed40 | 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"> |
| bed60 | 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>$.< |
| bed80 | 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 73 68 6c 45 78 61 | kbd>zig.build-exe.runtime_shlExa |
| beda0 | 63 74 5f 6f 76 65 72 66 6c 6f 77 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 24 20 3c 6b 62 64 3e 2e 2f 72 | ct_overflow.zig</kbd>.$.<kbd>./r |
| bedc0 | 75 6e 74 69 6d 65 5f 73 68 6c 45 78 61 63 74 5f 6f 76 65 72 66 6c 6f 77 3c 2f 6b 62 64 3e 0a 74 | untime_shlExact_overflow</kbd>.t |
| bede0 | 68 72 65 61 64 20 31 30 39 37 39 35 33 20 70 61 6e 69 63 3a 20 6c 65 66 74 20 73 68 69 66 74 20 | hread.1097953.panic:.left.shift. |
| bee00 | 6f 76 65 72 66 6c 6f 77 65 64 20 62 69 74 73 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 | overflowed.bits.<span.class="sgr |
| bee20 | 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 | -1m">/home/andy/dev/zig/doc/lang |
| bee40 | 72 65 66 2f 72 75 6e 74 69 6d 65 5f 73 68 6c 45 78 61 63 74 5f 6f 76 65 72 66 6c 6f 77 2e 7a 69 | ref/runtime_shlExact_overflow.zi |
| bee60 | 67 3a 36 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 | g:6:5</span>:.<span.class="sgr-2 |
| bee80 | 6d 22 3e 30 78 31 31 33 65 38 38 31 20 69 6e 20 6d 61 69 6e 20 28 72 75 6e 74 69 6d 65 5f 73 68 | m">0x113e881.in.main.(runtime_sh |
| beea0 | 6c 45 78 61 63 74 5f 6f 76 65 72 66 6c 6f 77 2e 7a 69 67 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 | lExact_overflow.zig)</span>..... |
| beec0 | 63 6f 6e 73 74 20 79 20 3d 20 40 73 68 6c 45 78 61 63 74 28 78 2c 20 32 29 3b 0a 20 20 20 20 3c | const.y.=.@shlExact(x,.2);.....< |
| beee0 | 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 |
| bef00 | 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 | pan.class="sgr-1m">/home/andy/de |
| bef20 | 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 36 31 38 3a 32 32 3c 2f | v/zig/lib/std/start.zig:618:22</ |
| bef40 | 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 31 | span>:.<span.class="sgr-2m">0x11 |
| bef60 | 33 64 61 39 64 20 69 6e 20 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 20 28 73 | 3da9d.in.posixCallMainAndExit.(s |
| bef80 | 74 64 2e 7a 69 67 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 | td.zig)</span>.............root. |
| befa0 | 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 |
| befc0 | 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 |
| befe0 | 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f | n.class="sgr-1m">/home/andy/dev/ |
| bf000 | 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 32 33 32 3a 35 3c 2f 73 70 61 | zig/lib/std/start.zig:232:5</spa |
| bf020 | 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 31 33 64 33 | n>:.<span.class="sgr-2m">0x113d3 |
| bf040 | 33 31 20 69 6e 20 5f 73 74 61 72 74 20 28 73 74 64 2e 7a 69 67 29 3c 2f 73 70 61 6e 3e 0a 20 20 | 31.in._start.(std.zig)</span>... |
| bf060 | 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 |
| bf080 | 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" |
| bf0a0 | 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">? |
| bf0c0 | 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- |
| bf0e0 | 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 |
| bf100 | 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 |
| bf120 | 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>............... |
| bf140 | 3c 68 33 20 69 64 3d 22 45 78 61 63 74 2d 52 69 67 68 74 2d 53 68 69 66 74 2d 4f 76 65 72 66 6c | <h3.id="Exact-Right-Shift-Overfl |
| bf160 | 6f 77 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 45 78 61 63 74 2d 52 69 67 68 74 2d 53 68 | ow"><a.href="#toc-Exact-Right-Sh |
| bf180 | 69 66 74 2d 4f 76 65 72 66 6c 6f 77 22 3e 45 78 61 63 74 20 52 69 67 68 74 20 53 68 69 66 74 20 | ift-Overflow">Exact.Right.Shift. |
| bf1a0 | 4f 76 65 72 66 6c 6f 77 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 | Overflow</a>.<a.class="hdr".href |
| bf1c0 | 3d 22 23 45 78 61 63 74 2d 52 69 67 68 74 2d 53 68 69 66 74 2d 4f 76 65 72 66 6c 6f 77 22 3e c2 | ="#Exact-Right-Shift-Overflow">. |
| bf1e0 | a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 74 20 63 6f 6d 70 69 6c 65 2d | .</a></h3>........<p>At.compile- |
| bf200 | 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 |
| bf220 | 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= |
| bf240 | 22 66 69 6c 65 22 3e 74 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 73 68 72 45 78 61 63 74 5f 6f 76 | "file">test_comptime_shrExact_ov |
| bf260 | 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 6e 3e 3c 70 | erflow.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 78 20 3d 20 3c 73 70 61 6e 20 | "tok-kw">const</span>.x.=.<span. |
| bf2e0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 68 72 45 78 61 63 74 3c 2f 73 | class="tok-builtin">@shrExact</s |
| bf300 | 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 | pan>(<span.class="tok-builtin">@ |
| bf320 | 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 22 | as</span>(<span.class="tok-type" |
| bf340 | 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | >u8</span>,.<span.class="tok-num |
| bf360 | 62 65 72 22 3e 30 62 31 30 31 30 31 30 31 30 3c 2f 73 70 61 6e 3e 29 2c 20 3c 73 70 61 6e 20 63 | ber">0b10101010</span>),.<span.c |
| bf380 | 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>);.... |
| bf3a0 | 20 5f 20 3d 20 78 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c | ._.=.x;.}</code></pre></figure>< |
| bf3c0 | 66 69 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- |
| bf3e0 | 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 |
| bf400 | 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_ |
| bf420 | 73 68 72 45 78 61 63 74 5f 6f 76 65 72 66 6c 6f 77 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 3c 73 70 61 | shrExact_overflow.zig</kbd>.<spa |
| bf440 | 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f | n.class="sgr-1m">/home/andy/dev/ |
| bf460 | 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 73 68 | zig/doc/langref/test_comptime_sh |
| bf480 | 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 73 70 61 6e | rExact_overflow.zig:2:15:.</span |
| bf4a0 | 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:.</ |
| bf4c0 | 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 61 63 74 20 | span><span.class="sgr-1m">exact. |
| bf4e0 | 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 70 61 6e 3e | shift.shifted.out.1.bits.</span> |
| bf500 | 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 75 38 2c 20 | ....const.x.=.@shrExact(@as(u8,. |
| bf520 | 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 20 20 20 3c | 0b10101010),.2);...............< |
| bf540 | 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">^~~~~~~~~~~ |
| bf560 | 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a 3c 2f 73 70 61 6e 3e 0a 3c | ~~~~~~~~~~~~~~~~~~~~~~.</span>.< |
| bf580 | 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> |
| bf5a0 | 41 74 20 72 75 6e 74 69 6d 65 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 | At.runtime:</p>.......<figure><f |
| bf5c0 | 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. |
| bf5e0 | 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 74 5f 6f 76 | class="file">runtime_shrExact_ov |
| bf600 | 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 6e 3e 3c 70 | erflow.zig</cite></figcaption><p |
| bf620 | 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 |
| bf640 | 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 73 | nst</span>.builtin.=.<span.class |
| bf660 | 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 |
| bf680 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 62 75 69 6c 74 69 | pan.class="tok-str">"builti |
| bf6a0 | 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 6f | n"</span>);.<span.class="to |
| bf6c0 | 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 |
| bf6e0 | 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 |
| bf700 | 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 |
| bf720 | 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | d"</span>);..<span.class="t |
| bf740 | 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 |
| bf760 | 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 |
| bf780 | 6b 2d 66 6e 22 3e 6d 61 69 6e 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | k-fn">main</span>().<span.class= |
| bf7a0 | 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 |
| bf7c0 | 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 20 | an.class="tok-kw">var</span>.x:. |
| bf7e0 | 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> |
| bf800 | 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 62 31 30 | .=.<span.class="tok-number">0b10 |
| bf820 | 31 30 31 30 31 30 3c 2f 73 70 61 6e 3e 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | 101010</span>;.<span.class="tok- |
| bf840 | 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 72 75 6e 74 69 6d 65 2d 6b 6e 6f 77 6e 3c 2f 73 70 61 6e 3e | comment">//.runtime-known</span> |
| bf860 | 0a 20 20 20 20 5f 20 3d 20 26 61 6d 70 3b 78 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ....._.=.&x;.....<span.class |
| bf880 | 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 6e | ="tok-kw">const</span>.y.=.<span |
| bf8a0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 68 72 45 78 61 63 74 3c 2f | .class="tok-builtin">@shrExact</ |
| bf8c0 | 73 70 61 6e 3e 28 78 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | span>(x,.<span.class="tok-number |
| bf8e0 | 22 3e 32 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 73 74 64 2e 64 65 62 75 67 2e 70 72 69 6e 74 | ">2</span>);.....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 79 7d 29 3b 0a 0a 20 | ue:.{}\n"</span>,..{y});... |
| bf940 | 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 |
| bf960 | 3e 20 28 62 75 69 6c 74 69 6e 2e 63 70 75 2e 61 72 63 68 2e 69 73 52 49 53 43 56 28 29 20 3c 73 | >.(builtin.cpu.arch.isRISCV().<s |
| bf980 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 64 3c 2f 73 70 61 6e 3e 20 62 75 | pan.class="tok-kw">and</span>.bu |
| bf9a0 | 69 6c 74 69 6e 2e 7a 69 67 5f 62 61 63 6b 65 6e 64 20 3d 3d 20 2e 73 74 61 67 65 32 5f 6c 6c 76 | iltin.zig_backend.==..stage2_llv |
| bf9c0 | 6d 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 70 61 | m).<span.class="tok-builtin">@pa |
| bf9e0 | 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 22 | nic</span>(<span.class="tok-str" |
| bfa00 | 3e 26 71 75 6f 74 3b 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 | >"https://github.com/ziglan |
| bfa20 | 67 2f 7a 69 67 2f 69 73 73 75 65 73 2f 32 34 33 30 34 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 | g/zig/issues/24304"</span>) |
| bfa40 | 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 |
| bfa60 | 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 |
| bfa80 | 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 |
| bfaa0 | 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 73 68 72 45 78 61 63 | bd>zig.build-exe.runtime_shrExac |
| bfac0 | 74 5f 6f 76 65 72 66 6c 6f 77 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 24 20 3c 6b 62 64 3e 2e 2f 72 75 | t_overflow.zig</kbd>.$.<kbd>./ru |
| bfae0 | 6e 74 69 6d 65 5f 73 68 72 45 78 61 63 74 5f 6f 76 65 72 66 6c 6f 77 3c 2f 6b 62 64 3e 0a 74 68 | ntime_shrExact_overflow</kbd>.th |
| bfb00 | 72 65 61 64 20 31 30 39 39 36 33 37 20 70 61 6e 69 63 3a 20 72 69 67 68 74 20 73 68 69 66 74 20 | read.1099637.panic:.right.shift. |
| bfb20 | 6f 76 65 72 66 6c 6f 77 65 64 20 62 69 74 73 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 | overflowed.bits.<span.class="sgr |
| bfb40 | 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 | -1m">/home/andy/dev/zig/doc/lang |
| bfb60 | 72 65 66 2f 72 75 6e 74 69 6d 65 5f 73 68 72 45 78 61 63 74 5f 6f 76 65 72 66 6c 6f 77 2e 7a 69 | ref/runtime_shrExact_overflow.zi |
| bfb80 | 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 |
| bfba0 | 6d 22 3e 30 78 31 31 33 65 38 36 61 20 69 6e 20 6d 61 69 6e 20 28 72 75 6e 74 69 6d 65 5f 73 68 | m">0x113e86a.in.main.(runtime_sh |
| bfbc0 | 72 45 78 61 63 74 5f 6f 76 65 72 66 6c 6f 77 2e 7a 69 67 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 | rExact_overflow.zig)</span>..... |
| bfbe0 | 63 6f 6e 73 74 20 79 20 3d 20 40 73 68 72 45 78 61 63 74 28 78 2c 20 32 29 3b 0a 20 20 20 20 3c | const.y.=.@shrExact(x,.2);.....< |
| bfc00 | 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 |
| bfc20 | 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 | pan.class="sgr-1m">/home/andy/de |
| bfc40 | 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 36 31 38 3a 32 32 3c 2f | v/zig/lib/std/start.zig:618:22</ |
| bfc60 | 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 31 | span>:.<span.class="sgr-2m">0x11 |
| bfc80 | 33 64 61 39 64 20 69 6e 20 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 20 28 73 | 3da9d.in.posixCallMainAndExit.(s |
| bfca0 | 74 64 2e 7a 69 67 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 | td.zig)</span>.............root. |
| bfcc0 | 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 |
| bfce0 | 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 |
| bfd00 | 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f | n.class="sgr-1m">/home/andy/dev/ |
| bfd20 | 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 32 33 32 3a 35 3c 2f 73 70 61 | zig/lib/std/start.zig:232:5</spa |
| bfd40 | 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 31 33 64 33 | n>:.<span.class="sgr-2m">0x113d3 |
| bfd60 | 33 31 20 69 6e 20 5f 73 74 61 72 74 20 28 73 74 64 2e 7a 69 67 29 3c 2f 73 70 61 6e 3e 0a 20 20 | 31.in._start.(std.zig)</span>... |
| bfd80 | 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 |
| bfda0 | 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" |
| bfdc0 | 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">? |
| bfde0 | 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- |
| bfe00 | 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 |
| bfe20 | 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 |
| bfe40 | 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>............... |
| bfe60 | 3c 68 33 20 69 64 3d 22 44 69 76 69 73 69 6f 6e 2d 62 79 2d 5a 65 72 6f 22 3e 3c 61 20 68 72 65 | <h3.id="Division-by-Zero"><a.hre |
| bfe80 | 66 3d 22 23 74 6f 63 2d 44 69 76 69 73 69 6f 6e 2d 62 79 2d 5a 65 72 6f 22 3e 44 69 76 69 73 69 | f="#toc-Division-by-Zero">Divisi |
| bfea0 | 6f 6e 20 62 79 20 5a 65 72 6f 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 | on.by.Zero</a>.<a.class="hdr".hr |
| bfec0 | 65 66 3d 22 23 44 69 76 69 73 69 6f 6e 2d 62 79 2d 5a 65 72 6f 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 | ef="#Division-by-Zero">..</a></h |
| bfee0 | 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 3a 3c 2f 70 | 3>........<p>At.compile-time:</p |
| bff00 | 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 |
| bff20 | 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 |
| bff40 | 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 64 69 76 69 73 69 6f 6e 5f 62 79 5f 7a 65 72 6f 2e 7a 69 | est_comptime_division_by_zero.zi |
| bff60 | 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> |
| bff80 | 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 |
| bffa0 | 70 61 6e 3e 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"> |
| bffc0 | 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | const</span>.a:.<span.class="tok |
| bffe0 | 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= |
| c0000 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e | "tok-number">1</span>;.....<span |
| c0020 | 20 63 6c 61 73 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:. |
| c0040 | 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 |
| c0060 | 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</ |
| c0080 | 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"> |
| c00a0 | 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 63 20 3d 20 61 20 2f 20 62 3b 0a 20 20 20 20 5f 20 3d 20 | const</span>.c.=.a./.b;....._.=. |
| c00c0 | 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 66 69 67 75 72 | c;.}</code></pre></figure><figur |
| c00e0 | 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"> |
| c0100 | 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>$.< |
| c0120 | 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 64 69 76 69 73 | kbd>zig.test.test_comptime_divis |
| c0140 | 69 6f 6e 5f 62 79 5f 7a 65 72 6f 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 | ion_by_zero.zig</kbd>.<span.clas |
| c0160 | 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f | s="sgr-1m">/home/andy/dev/zig/do |
| c0180 | 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 69 73 69 6f 6e | c/langref/test_comptime_division |
| c01a0 | 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 73 70 61 6e 20 | _by_zero.zig:4:19:.</span><span. |
| c01c0 | 63 6c 61 73 73 3d 22 73 67 72 2d 33 31 6d 22 3e 65 72 72 6f 72 3a 20 3c 2f 73 70 61 6e 3e 3c 73 | class="sgr-31m">error:.</span><s |
| c01e0 | 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 20 62 79 20 7a | pan.class="sgr-1m">division.by.z |
| c0200 | 65 72 6f 20 68 65 72 65 20 63 61 75 73 65 73 20 69 6c 6c 65 67 61 6c 20 62 65 68 61 76 69 6f 72 | ero.here.causes.illegal.behavior |
| c0220 | 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 20 62 3b 0a 20 20 20 | .</span>....const.c.=.a./.b;.... |
| c0240 | 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- |
| c0260 | 33 32 6d 22 3e 5e 0a 3c 2f 73 70 61 6e 3e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 | 32m">^.</span>.</samp></pre></fi |
| c0280 | 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>. |
| c02a0 | 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= |
| c02c0 | 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 |
| c02e0 | 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> |
| c0300 | 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 |
| c0320 | 61 73 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.=. |
| c0340 | 3c 73 70 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 |
| c0360 | 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">& |
| c0380 | 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 |
| c03a0 | 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 |
| c03c0 | 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 |
| c03e0 | 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 |
| c0400 | 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>.{. |
| c0420 | 20 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 |
| c0440 | 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 33 | an>.a:.<span.class="tok-type">u3 |
| c0460 | 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 |
| c0480 | 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | er">1</span>;.....<span.class="t |
| c04a0 | 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 6c 61 73 73 | ok-kw">var</span>.b:.<span.class |
| c04c0 | 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 |
| c04e0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 | lass="tok-number">0</span>;..... |
| c0500 | 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 20 3c 73 70 | _.=..{.&a,.&b.};.....<sp |
| c0520 | 61 6e 20 63 6c 61 73 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 | an.class="tok-kw">const</span>.c |
| c0540 | 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 72 69 6e 74 28 3c 73 | .=.a./.b;.....std.debug.print(<s |
| c0560 | 70 61 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: |
| c0580 | 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 3b 0a 7d 3c 2f 63 6f | .{}\n"</span>,..{c});.}</co |
| c05a0 | 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 |
| c05c0 | 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 |
| c05e0 | 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. |
| c0600 | 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 6e 5f 62 79 5f 7a 65 | build-exe.runtime_division_by_ze |
| c0620 | 72 6f 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 24 20 3c 6b 62 64 3e 2e 2f 72 75 6e 74 69 6d 65 5f 64 69 | ro.zig</kbd>.$.<kbd>./runtime_di |
| c0640 | 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 61 64 20 31 30 39 31 | vision_by_zero</kbd>.thread.1091 |
| c0660 | 38 35 39 20 70 61 6e 69 63 3a 20 64 69 76 69 73 69 6f 6e 20 62 79 20 7a 65 72 6f 0a 3c 73 70 61 | 859.panic:.division.by.zero.<spa |
| c0680 | 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f | n.class="sgr-1m">/home/andy/dev/ |
| c06a0 | 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 69 73 69 6f 6e | zig/doc/langref/runtime_division |
| c06c0 | 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 20 3c 73 70 61 6e 20 | _by_zero.zig:7:17</span>:.<span. |
| c06e0 | 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 31 33 65 38 37 30 20 69 6e 20 6d 61 69 6e | class="sgr-2m">0x113e870.in.main |
| c0700 | 20 28 72 75 6e 74 69 6d 65 5f 64 69 76 69 73 69 6f 6e 5f 62 79 5f 7a 65 72 6f 2e 7a 69 67 29 3c | .(runtime_division_by_zero.zig)< |
| c0720 | 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 20 20 20 | /span>.....const.c.=.a./.b;..... |
| c0740 | 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 |
| c0760 | 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"> |
| c0780 | 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 | /home/andy/dev/zig/lib/std/start |
| c07a0 | 2e 7a 69 67 3a 36 31 38 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:618:22</span>:.<span.class= |
| c07c0 | 22 73 67 72 2d 32 6d 22 3e 30 78 31 31 33 64 61 39 64 20 69 6e 20 70 6f 73 69 78 43 61 6c 6c 4d | "sgr-2m">0x113da9d.in.posixCallM |
| c07e0 | 61 69 6e 41 6e 64 45 78 69 74 20 28 73 74 64 2e 7a 69 67 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 | ainAndExit.(std.zig)</span>..... |
| c0800 | 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();............ |
| c0820 | 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"> |
| c0840 | 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 |
| c0860 | 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a | ome/andy/dev/zig/lib/std/start.z |
| c0880 | 69 67 3a 32 33 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 | ig:232:5</span>:.<span.class="sg |
| c08a0 | 72 2d 32 6d 22 3e 30 78 31 31 33 64 33 33 31 20 69 6e 20 5f 73 74 61 72 74 20 28 73 74 64 2e 7a | r-2m">0x113d331.in._start.(std.z |
| c08c0 | 69 67 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 | ig)</span>.....asm.volatile.(swi |
| c08e0 | 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 |
| c0900 | 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 |
| c0920 | 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 |
| c0940 | 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.???.(??? |
| c0960 | 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. |
| c0980 | 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>.. |
| c09a0 | 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 64 65 72 2d 44 | .............<h3.id="Remainder-D |
| c09c0 | 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 52 | ivision-by-Zero"><a.href="#toc-R |
| c09e0 | 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 52 65 6d 61 69 | emainder-Division-by-Zero">Remai |
| c0a00 | 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 61 20 63 6c 61 | nder.Division.by.Zero</a>.<a.cla |
| c0a20 | 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 69 76 69 73 69 | ss="hdr".href="#Remainder-Divisi |
| c0a40 | 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 20 20 3c | on-by-Zero">..</a></h3>........< |
| c0a60 | 70 3e 41 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 | p>At.compile-time:</p>.......<fi |
| c0a80 | 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" |
| c0aa0 | 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 63 6f 6d 70 74 69 6d | ><cite.class="file">test_comptim |
| c0ac0 | 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 7a 69 67 | e_remainder_division_by_zero.zig |
| c0ae0 | 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>< |
| c0b00 | 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 |
| c0b20 | 61 6e 3e 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 |
| c0b40 | 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | onst</span>.a:.<span.class="tok- |
| c0b60 | 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | type">i32</span>.=.<span.class=" |
| c0b80 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e | tok-number">10</span>;.....<span |
| c0ba0 | 20 63 6c 61 73 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:. |
| c0bc0 | 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 |
| c0be0 | 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</ |
| c0c00 | 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"> |
| c0c20 | 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 20 5f 20 3d 20 | const</span>.c.=.a.%.b;....._.=. |
| c0c40 | 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 66 69 67 75 72 | c;.}</code></pre></figure><figur |
| c0c60 | 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"> |
| c0c80 | 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>$.< |
| c0ca0 | 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 72 65 6d 61 69 | kbd>zig.test.test_comptime_remai |
| c0cc0 | 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 6b 62 64 3e 0a | nder_division_by_zero.zig</kbd>. |
| c0ce0 | 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/ |
| c0d00 | 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 63 6f 6d 70 74 69 6d | dev/zig/doc/langref/test_comptim |
| c0d20 | 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 7a 69 67 | e_remainder_division_by_zero.zig |
| c0d40 | 3a 34 3a 31 39 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 | :4:19:.</span><span.class="sgr-3 |
| c0d60 | 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 |
| c0d80 | 67 72 2d 31 6d 22 3e 64 69 76 69 73 69 6f 6e 20 62 79 20 7a 65 72 6f 20 68 65 72 65 20 63 61 75 | gr-1m">division.by.zero.here.cau |
| c0da0 | 73 65 73 20 69 6c 6c 65 67 61 6c 20 62 65 68 61 76 69 6f 72 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 | ses.illegal.behavior.</span>.... |
| c0dc0 | 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 20 20 | const.c.=.a.%.b;................ |
| c0de0 | 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 0a 3c 2f 73 70 61 | ...<span.class="sgr-32m">^.</spa |
| c0e00 | 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>....... |
| c0e20 | 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 |
| c0e40 | 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 |
| c0e60 | 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 72 65 6d 61 69 6e 64 | ite.class="file">runtime_remaind |
| c0e80 | 65 72 5f 64 69 76 69 73 69 6f 6e 5f 62 79 5f 7a 65 72 6f 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f | er_division_by_zero.zig</cite></ |
| c0ea0 | 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 |
| c0ec0 | 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 |
| c0ee0 | 70 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< |
| c0f00 | 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 |
| c0f20 | 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 61 | ot;std"</span>);..<span.cla |
| c0f40 | 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 |
| c0f60 | 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 |
| c0f80 | 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 |
| c0fa0 | 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>.{... |
| c0fc0 | 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 |
| c0fe0 | 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 33 32 3c | >.a:.<span.class="tok-type">u32< |
| c1000 | 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 |
| c1020 | 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 22 74 6f | ">10</span>;.....<span.class="to |
| c1040 | 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 62 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | k-kw">var</span>.b:.<span.class= |
| c1060 | 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 |
| c1080 | 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 5f | ass="tok-number">0</span>;....._ |
| c10a0 | 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 20 3c 73 70 61 | .=..{.&a,.&b.};.....<spa |
| c10c0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 63 20 | n.class="tok-kw">const</span>.c. |
| c10e0 | 3d 20 61 20 25 20 62 3b 0a 20 20 20 20 73 74 64 2e 64 65 62 75 67 2e 70 72 69 6e 74 28 3c 73 70 | =.a.%.b;.....std.debug.print(<sp |
| c1100 | 61 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:. |
| c1120 | 7b 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 63 7d 29 3b 0a 7d 3c 2f 63 6f 64 | {}\n"</span>,..{c});.}</cod |
| c1140 | 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 |
| c1160 | 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 |
| c1180 | 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 |
| c11a0 | 75 69 6c 64 2d 65 78 65 20 72 75 6e 74 69 6d 65 5f 72 65 6d 61 69 6e 64 65 72 5f 64 69 76 69 73 | uild-exe.runtime_remainder_divis |
| c11c0 | 69 6f 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 | ion_by_zero.zig</kbd>.$.<kbd>./r |
| c11e0 | 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 5f 7a 65 72 | untime_remainder_division_by_zer |
| c1200 | 6f 3c 2f 6b 62 64 3e 0a 74 68 72 65 61 64 20 31 30 39 39 31 35 39 20 70 61 6e 69 63 3a 20 64 69 | o</kbd>.thread.1099159.panic:.di |
| c1220 | 76 69 73 69 6f 6e 20 62 79 20 7a 65 72 6f 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d | vision.by.zero.<span.class="sgr- |
| c1240 | 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 | 1m">/home/andy/dev/zig/doc/langr |
| c1260 | 65 66 2f 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 | ef/runtime_remainder_division_by |
| c1280 | 5f 7a 65 72 6f 2e 7a 69 67 3a 37 3a 31 37 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 | _zero.zig:7:17</span>:.<span.cla |
| c12a0 | 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 31 33 65 38 37 30 20 69 6e 20 6d 61 69 6e 20 28 72 | ss="sgr-2m">0x113e870.in.main.(r |
| c12c0 | 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 5f 7a 65 72 | untime_remainder_division_by_zer |
| c12e0 | 6f 2e 7a 69 67 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 25 20 | o.zig)</span>.....const.c.=.a.%. |
| c1300 | 62 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | b;.................<span.class=" |
| c1320 | 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 |
| c1340 | 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 | gr-1m">/home/andy/dev/zig/lib/st |
| c1360 | 64 2f 73 74 61 72 74 2e 7a 69 67 3a 36 31 38 3a 32 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e | d/start.zig:618:22</span>:.<span |
| c1380 | 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 31 33 64 61 39 64 20 69 6e 20 70 6f 73 | .class="sgr-2m">0x113da9d.in.pos |
| c13a0 | 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 20 28 73 74 64 2e 7a 69 67 29 3c 2f 73 70 61 | ixCallMainAndExit.(std.zig)</spa |
| c13c0 | 6e 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 6f 6f 74 2e 6d 61 69 6e 28 29 3b 0a 20 20 20 20 | n>.............root.main();..... |
| c13e0 | 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 |
| c1400 | 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 |
| c1420 | 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f | -1m">/home/andy/dev/zig/lib/std/ |
| c1440 | 73 74 61 72 74 2e 7a 69 67 3a 32 33 32 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c | start.zig:232:5</span>:.<span.cl |
| c1460 | 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 31 33 64 33 33 31 20 69 6e 20 5f 73 74 61 72 74 | ass="sgr-2m">0x113d331.in._start |
| c1480 | 20 28 73 74 64 2e 7a 69 67 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 61 73 6d 20 76 6f 6c 61 74 69 | .(std.zig)</span>.....asm.volati |
| c14a0 | 6c 65 20 28 73 77 69 74 63 68 20 28 6e 61 74 69 76 65 5f 61 72 63 68 29 20 7b 0a 20 20 20 20 3c | le.(switch.(native_arch).{.....< |
| c14c0 | 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 |
| c14e0 | 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 3f 3f 3f 3a 3f 3a 3f 3c 2f 73 70 61 6e | pan.class="sgr-1m">???:?:?</span |
| c1500 | 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 30 20 69 6e 20 3f | >:.<span.class="sgr-2m">0x0.in.? |
| c1520 | 3f 3f 20 28 3f 3f 3f 29 3c 2f 73 70 61 6e 3e 0a 28 70 72 6f 63 65 73 73 20 74 65 72 6d 69 6e 61 | ??.(???)</span>.(process.termina |
| c1540 | 74 65 64 20 62 79 20 73 69 67 6e 61 6c 29 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 | ted.by.signal).</samp></pre></fi |
| c1560 | 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 78 61 63 | gure>...............<h3.id="Exac |
| c1580 | 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 72 65 66 3d 22 23 | t-Division-Remainder"><a.href="# |
| c15a0 | 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 65 72 22 3e 45 78 | toc-Exact-Division-Remainder">Ex |
| c15c0 | 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 20 3c 61 20 63 6c | act.Division.Remainder</a>.<a.cl |
| c15e0 | 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 69 73 69 6f 6e 2d | ass="hdr".href="#Exact-Division- |
| c1600 | 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 20 20 20 20 3c 70 | Remainder">..</a></h3>........<p |
| c1620 | 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 |
| c1640 | 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"> |
| c1660 | 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 |
| c1680 | 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 74 65 3e 3c 2f | _divExact_remainder.zig</cite></ |
| c16a0 | 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 |
| c16c0 | 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>.{.... |
| c16e0 | 20 3c 73 70 61 6e 20 63 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 |
| c1700 | 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 33 32 | n>.a:.<span.class="tok-type">u32 |
| c1720 | 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 |
| c1740 | 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 22 74 | r">10</span>;.....<span.class="t |
| c1760 | 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 |
| c1780 | 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 |
| c17a0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 3b 0a 20 20 | .class="tok-number">3</span>;... |
| c17c0 | 20 20 3c 73 70 61 6e 20 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 |
| c17e0 | 61 6e 3e 20 63 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e | an>.c.=.<span.class="tok-builtin |
| c1800 | 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 20 20 20 20 5f 20 | ">@divExact</span>(a,.b);....._. |
| c1820 | 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 66 69 67 | =.c;.}</code></pre></figure><fig |
| c1840 | 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 |
| c1860 | 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>$ |
| c1880 | 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 64 69 76 | .<kbd>zig.test.test_comptime_div |
| c18a0 | 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 3c 73 70 61 6e 20 | Exact_remainder.zig</kbd>.<span. |
| c18c0 | 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 | class="sgr-1m">/home/andy/dev/zi |
| c18e0 | 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 64 69 76 45 | g/doc/langref/test_comptime_divE |
| c1900 | 78 61 63 74 5f 72 65 6d 61 69 6e 64 65 72 2e 7a 69 67 3a 34 3a 31 35 3a 20 3c 2f 73 70 61 6e 3e | xact_remainder.zig:4:15:.</span> |
| c1920 | 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 |
| c1940 | 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 61 63 74 20 64 | pan><span.class="sgr-1m">exact.d |
| c1960 | 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 3c 2f 73 70 61 | ivision.produced.remainder.</spa |
| c1980 | 6e 3e 20 20 20 20 63 6f 6e 73 74 20 63 20 3d 20 40 64 69 76 45 78 61 63 74 28 61 2c 20 62 29 3b | n>....const.c.=.@divExact(a,.b); |
| c19a0 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d | ...............<span.class="sgr- |
| c19c0 | 33 32 6d 22 3e 5e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a 3c 2f 73 70 61 6e 3e 0a 3c 2f 73 | 32m">^~~~~~~~~~~~~~~.</span>.</s |
| c19e0 | 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 74 | amp></pre></figure>........<p>At |
| c1a00 | 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 67 | .runtime:</p>.......<figure><fig |
| c1a20 | 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 |
| c1a40 | 61 73 73 3d 22 66 69 6c 65 22 3e 72 75 6e 74 69 6d 65 5f 64 69 76 45 78 61 63 74 5f 72 65 6d 61 | ass="file">runtime_divExact_rema |
| c1a60 | 69 6e 64 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 | inder.zig</cite></figcaption><pr |
| c1a80 | 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 |
| c1aa0 | 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 |
| c1ac0 | 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 |
| c1ae0 | 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"</ |
| c1b00 | 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 |
| c1b20 | 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 |
| c1b40 | 3c 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 |
| c1b60 | 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 |
| c1b80 | 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= |
| c1ba0 | 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 |
| c1bc0 | 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 |
| c1be0 | 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>;.. |
| c1c00 | 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 |
| c1c20 | 6e 3e 20 62 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 | n>.b:.<span.class="tok-type">u32 |
| c1c40 | 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 |
| c1c60 | 72 22 3e 33 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 2c 20 | r">3</span>;....._.=..{.&a,. |
| c1c80 | 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 2d 6b | &b.};.....<span.class="tok-k |
| c1ca0 | 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 63 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | w">const</span>.c.=.<span.class= |
| c1cc0 | 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 64 69 76 45 78 61 63 74 3c 2f 73 70 61 6e 3e 28 61 | "tok-builtin">@divExact</span>(a |
| c1ce0 | 2c 20 62 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 | ,.b);.....std.debug.print(<span. |
| c1d00 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 76 61 6c 75 65 3a 20 7b 7d 5c | class="tok-str">"value:.{}\ |
| c1d20 | 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 63 7d 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c | n"</span>,..{c});.}</code>< |
| c1d40 | 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 |
| c1d60 | 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 |
| c1d80 | 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 |
| c1da0 | 64 2d 65 78 65 20 72 75 6e 74 69 6d 65 5f 64 69 76 45 78 61 63 74 5f 72 65 6d 61 69 6e 64 65 72 | d-exe.runtime_divExact_remainder |
| c1dc0 | 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 64 69 76 45 | .zig</kbd>.$.<kbd>./runtime_divE |
| c1de0 | 78 61 63 74 5f 72 65 6d 61 69 6e 64 65 72 3c 2f 6b 62 64 3e 0a 74 68 72 65 61 64 20 31 30 39 33 | xact_remainder</kbd>.thread.1093 |
| c1e00 | 34 36 30 20 70 61 6e 69 63 3a 20 65 78 61 63 74 20 64 69 76 69 73 69 6f 6e 20 70 72 6f 64 75 63 | 460.panic:.exact.division.produc |
| c1e20 | 65 64 20 72 65 6d 61 69 6e 64 65 72 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d | ed.remainder.<span.class="sgr-1m |
| c1e40 | 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 | ">/home/andy/dev/zig/doc/langref |
| c1e60 | 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 72 2e 7a 69 67 3a | /runtime_divExact_remainder.zig: |
| c1e80 | 37 3a 31 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d | 7:15</span>:.<span.class="sgr-2m |
| c1ea0 | 22 3e 30 78 31 31 33 65 38 61 37 20 69 6e 20 6d 61 69 6e 20 28 72 75 6e 74 69 6d 65 5f 64 69 76 | ">0x113e8a7.in.main.(runtime_div |
| c1ec0 | 45 78 61 63 74 5f 72 65 6d 61 69 6e 64 65 72 2e 7a 69 67 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 | Exact_remainder.zig)</span>..... |
| c1ee0 | 63 6f 6e 73 74 20 63 20 3d 20 40 64 69 76 45 78 61 63 74 28 61 2c 20 62 29 3b 0a 20 20 20 20 20 | const.c.=.@divExact(a,.b);...... |
| c1f00 | 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">^ |
| c1f20 | 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 |
| c1f40 | 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 | me/andy/dev/zig/lib/std/start.zi |
| c1f60 | 67 3a 36 31 38 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:618:22</span>:.<span.class="sg |
| c1f80 | 72 2d 32 6d 22 3e 30 78 31 31 33 64 61 39 64 20 69 6e 20 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e | r-2m">0x113da9d.in.posixCallMain |
| c1fa0 | 41 6e 64 45 78 69 74 20 28 73 74 64 2e 7a 69 67 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 | AndExit.(std.zig)</span>........ |
| c1fc0 | 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();............... |
| c1fe0 | 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">^</ |
| c2000 | 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 |
| c2020 | 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a | /andy/dev/zig/lib/std/start.zig: |
| c2040 | 32 33 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 | 232:5</span>:.<span.class="sgr-2 |
| c2060 | 6d 22 3e 30 78 31 31 33 64 33 33 31 20 69 6e 20 5f 73 74 61 72 74 20 28 73 74 64 2e 7a 69 67 29 | m">0x113d331.in._start.(std.zig) |
| c2080 | 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 |
| c20a0 | 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 |
| c20c0 | 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= |
| c20e0 | 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 |
| c2100 | 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.???.(???)</ |
| c2120 | 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 |
| c2140 | 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>..... |
| c2160 | 20 20 20 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 41 74 74 65 6d 70 74 2d 74 6f 2d 55 6e 77 | ..........<h3.id="Attempt-to-Unw |
| c2180 | 72 61 70 2d 4e 75 6c 6c 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 41 74 74 65 6d 70 74 2d | rap-Null"><a.href="#toc-Attempt- |
| c21a0 | 74 6f 2d 55 6e 77 72 61 70 2d 4e 75 6c 6c 22 3e 41 74 74 65 6d 70 74 20 74 6f 20 55 6e 77 72 61 | to-Unwrap-Null">Attempt.to.Unwra |
| c21c0 | 70 20 4e 75 6c 6c 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 | p.Null</a>.<a.class="hdr".href=" |
| c21e0 | 23 41 74 74 65 6d 70 74 2d 74 6f 2d 55 6e 77 72 61 70 2d 4e 75 6c 6c 22 3e c2 a7 3c 2f 61 3e 3c | #Attempt-to-Unwrap-Null">..</a>< |
| c2200 | 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 3a 3c | /h3>........<p>At.compile-time:< |
| c2220 | 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 |
| c2240 | 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" |
| c2260 | 3e 74 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 75 6e 77 72 61 70 5f 6e 75 6c 6c 2e 7a 69 67 3c 2f | >test_comptime_unwrap_null.zig</ |
| c2280 | 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 |
| c22a0 | 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 |
| c22c0 | 3e 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 |
| c22e0 | 73 74 3c 2f 73 70 61 6e 3e 20 6f 70 74 69 6f 6e 61 6c 5f 6e 75 6d 62 65 72 3a 20 3f 3c 73 70 61 | st</span>.optional_number:.?<spa |
| c2300 | 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>.=. |
| c2320 | 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 |
| c2340 | 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 |
| c2360 | 73 74 3c 2f 73 70 61 6e 3e 20 6e 75 6d 62 65 72 20 3d 20 6f 70 74 69 6f 6e 61 6c 5f 6e 75 6d 62 | st</span>.number.=.optional_numb |
| c2380 | 65 72 2e 3f 3b 0a 20 20 20 20 5f 20 3d 20 6e 75 6d 62 65 72 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f | er.?;....._.=.number;.}</code></ |
| c23a0 | 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 |
| c23c0 | 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 |
| c23e0 | 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. |
| c2400 | 74 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 75 6e 77 72 61 70 5f 6e 75 6c 6c 2e 7a 69 67 3c 2f 6b | test_comptime_unwrap_null.zig</k |
| c2420 | 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 |
| c2440 | 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 63 6f 6d | ndy/dev/zig/doc/langref/test_com |
| c2460 | 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 73 70 | ptime_unwrap_null.zig:3:35:.</sp |
| c2480 | 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:. |
| c24a0 | 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 62 | </span><span.class="sgr-1m">unab |
| c24c0 | 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 6f 6e | le.to.unwrap.null.</span>....con |
| c24e0 | 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 0a 20 | st.number.=.optional_number.?;.. |
| c2500 | 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 |
| c2520 | 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 61 6e | gr-32m">~~~~~~~~~~~~~~~^~.</span |
| c2540 | 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>........ |
| c2560 | 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 |
| c2580 | 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 |
| c25a0 | 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 5f 6e | te.class="file">runtime_unwrap_n |
| c25c0 | 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 65 3e | ull.zig</cite></figcaption><pre> |
| c25e0 | 3c 63 6f 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 |
| c2600 | 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 |
| c2620 | 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 |
| c2640 | 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 |
| c2660 | 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 3c | an>);..<span.class="tok-kw">pub< |
| c2680 | 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</ |
| c26a0 | 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< |
| c26c0 | 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | /span>().<span.class="tok-type"> |
| c26e0 | 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 |
| c2700 | 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 62 65 | ok-kw">var</span>.optional_numbe |
| c2720 | 72 3a 20 3f 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f | r:.?<span.class="tok-type">i32</ |
| c2740 | 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 |
| c2760 | 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 6e 61 | ull</span>;....._.=.&optiona |
| c2780 | 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 2d 6b | l_number;.....<span.class="tok-k |
| c27a0 | 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 6e 61 | w">const</span>.number.=.optiona |
| c27c0 | 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 74 28 | l_number.?;.....std.debug.print( |
| c27e0 | 3c 73 70 61 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 |
| c2800 | 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 7d 29 | e:.{}\n"</span>,..{number}) |
| c2820 | 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 |
| c2840 | 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 |
| c2860 | 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 |
| c2880 | 62 64 3e 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 72 75 6e 74 69 6d 65 5f 75 6e 77 72 61 70 5f | bd>zig.build-exe.runtime_unwrap_ |
| c28a0 | 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 65 5f | null.zig</kbd>.$.<kbd>./runtime_ |
| c28c0 | 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 31 30 39 34 34 31 31 | unwrap_null</kbd>.thread.1094411 |
| c28e0 | 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 6c 75 | .panic:.attempt.to.use.null.valu |
| c2900 | 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 |
| c2920 | 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 72 75 6e 74 69 6d 65 5f 75 6e | y/dev/zig/doc/langref/runtime_un |
| c2940 | 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 61 6e | wrap_null.zig:6:35</span>:.<span |
| c2960 | 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 31 33 65 38 39 34 20 69 6e 20 6d 61 69 | .class="sgr-2m">0x113e894.in.mai |
| c2980 | 6e 20 28 72 75 6e 74 69 6d 65 5f 75 6e 77 72 61 70 5f 6e 75 6c 6c 2e 7a 69 67 29 3c 2f 73 70 61 | n.(runtime_unwrap_null.zig)</spa |
| c29a0 | 6e 3e 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 | n>.....const.number.=.optional_n |
| c29c0 | 75 6d 62 65 72 2e 3f 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | umber.?;........................ |
| c29e0 | 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" |
| c2a00 | 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">/ |
| c2a20 | 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e | home/andy/dev/zig/lib/std/start. |
| c2a40 | 7a 69 67 3a 36 31 38 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 | zig:618:22</span>:.<span.class=" |
| c2a60 | 73 67 72 2d 32 6d 22 3e 30 78 31 31 33 64 61 39 64 20 69 6e 20 70 6f 73 69 78 43 61 6c 6c 4d 61 | sgr-2m">0x113da9d.in.posixCallMa |
| c2a80 | 69 6e 41 6e 64 45 78 69 74 20 28 73 74 64 2e 7a 69 67 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 | inAndExit.(std.zig)</span>...... |
| c2aa0 | 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();............. |
| c2ac0 | 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">^ |
| c2ae0 | 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 |
| c2b00 | 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 | me/andy/dev/zig/lib/std/start.zi |
| c2b20 | 67 3a 32 33 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 | g:232:5</span>:.<span.class="sgr |
| c2b40 | 2d 32 6d 22 3e 30 78 31 31 33 64 33 33 31 20 69 6e 20 5f 73 74 61 72 74 20 28 73 74 64 2e 7a 69 | -2m">0x113d331.in._start.(std.zi |
| c2b60 | 67 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 | g)</span>.....asm.volatile.(swit |
| c2b80 | 63 68 20 28 6e 61 74 69 76 65 5f 61 72 63 68 29 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | ch.(native_arch).{.....<span.cla |
| c2ba0 | 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 |
| c2bc0 | 73 3d 22 73 67 72 2d 31 6d 22 3e 3f 3f 3f 3a 3f 3a 3f 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e | s="sgr-1m">???:?:?</span>:.<span |
| c2be0 | 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 30 20 69 6e 20 3f 3f 3f 20 28 3f 3f 3f 29 | .class="sgr-2m">0x0.in.???.(???) |
| c2c00 | 3c 2f 73 70 61 6e 3e 0a 28 70 72 6f 63 65 73 73 20 74 65 72 6d 69 6e 61 74 65 64 20 62 79 20 73 | </span>.(process.terminated.by.s |
| c2c20 | 69 67 6e 61 6c 29 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 | ignal).</samp></pre></figure>... |
| c2c40 | 20 20 20 20 20 3c 70 3e 4f 6e 65 20 77 61 79 20 74 6f 20 61 76 6f 69 64 20 74 68 69 73 20 63 72 | .....<p>One.way.to.avoid.this.cr |
| c2c60 | 61 73 68 20 69 73 20 74 6f 20 74 65 73 74 20 66 6f 72 20 6e 75 6c 6c 20 69 6e 73 74 65 61 64 20 | ash.is.to.test.for.null.instead. |
| c2c80 | 6f 66 20 61 73 73 75 6d 69 6e 67 20 6e 6f 6e 2d 6e 75 6c 6c 2c 20 77 69 74 68 0a 20 20 20 20 20 | of.assuming.non-null,.with...... |
| c2ca0 | 20 74 68 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | .the.<code><span.class="tok-kw"> |
| c2cc0 | 69 66 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 65 78 70 72 65 73 73 69 6f 6e 3a 3c 2f 70 3e | if</span></code>.expression:</p> |
| c2ce0 | 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 |
| c2d00 | 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 |
| c2d20 | 73 74 69 6e 67 5f 6e 75 6c 6c 5f 77 69 74 68 5f 69 66 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 | sting_null_with_if.zig</cite></f |
| c2d40 | 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 |
| c2d60 | 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.=.< |
| c2d80 | 73 70 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 |
| c2da0 | 3c 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 |
| c2dc0 | 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 |
| c2de0 | 74 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 70 61 | t;.<span.class="tok-kw">pub</spa |
| c2e00 | 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 |
| c2e20 | 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 |
| c2e40 | 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 |
| c2e60 | 3c 2f 73 70 61 6e 3e 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 |
| c2e80 | 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6f 70 74 69 6f 6e 61 6c 5f 6e 75 6d 62 65 72 3a | w">const</span>.optional_number: |
| c2ea0 | 20 3f 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 | .?<span.class="tok-type">i32</sp |
| c2ec0 | 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 |
| c2ee0 | 6c 3c 2f 73 70 61 6e 3e 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | l</span>;......<span.class="tok- |
| c2f00 | 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 6f 70 74 69 6f 6e 61 6c 5f 6e 75 6d 62 65 72 29 20 | kw">if</span>.(optional_number). |
| c2f20 | 7c 6e 75 6d 62 65 72 7c 20 7b 0a 20 20 20 20 20 20 20 20 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 | |number|.{.........print(<span.c |
| c2f40 | 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 67 6f 74 20 6e 75 6d 62 65 72 3a | lass="tok-str">"got.number: |
| c2f60 | 20 7b 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 6e 75 6d 62 65 72 7d 29 3b 0a | .{}\n"</span>,..{number});. |
| c2f80 | 20 20 20 20 7d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c | ....}.<span.class="tok-kw">else< |
| c2fa0 | 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 6c 61 | /span>.{.........print(<span.cla |
| c2fc0 | 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 69 74 27 73 20 6e 75 6c 6c 5c 6e 26 71 | ss="tok-str">"it's.null\n&q |
| c2fe0 | 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 7d 29 3b 0a 20 20 20 20 7d 0a 7d 3c 2f 63 6f 64 65 | uot;</span>,..{});.....}.}</code |
| c3000 | 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 |
| c3020 | 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 |
| c3040 | 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 |
| c3060 | 69 6c 64 2d 65 78 65 20 74 65 73 74 69 6e 67 5f 6e 75 6c 6c 5f 77 69 74 68 5f 69 66 2e 7a 69 67 | ild-exe.testing_null_with_if.zig |
| c3080 | 3c 2f 6b 62 64 3e 0a 24 20 3c 6b 62 64 3e 2e 2f 74 65 73 74 69 6e 67 5f 6e 75 6c 6c 5f 77 69 74 | </kbd>.$.<kbd>./testing_null_wit |
| c30a0 | 68 5f 69 66 3c 2f 6b 62 64 3e 0a 69 74 27 73 20 6e 75 6c 6c 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 | h_if</kbd>.it's.null.</samp></pr |
| c30c0 | 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:< |
| c30e0 | 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 4f 70 74 69 6f 6e 61 6c 73 22 | /p><ul>.<li><a.href="#Optionals" |
| c3100 | 3e 4f 70 74 69 6f 6e 61 6c 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 | >Optionals</a></li>.</ul>....... |
| c3120 | 20 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 41 74 74 65 6d 70 74 2d 74 6f 2d 55 6e 77 72 61 | ........<h3.id="Attempt-to-Unwra |
| c3140 | 70 2d 45 72 72 6f 72 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 41 74 74 65 6d 70 74 2d 74 | p-Error"><a.href="#toc-Attempt-t |
| c3160 | 6f 2d 55 6e 77 72 61 70 2d 45 72 72 6f 72 22 3e 41 74 74 65 6d 70 74 20 74 6f 20 55 6e 77 72 61 | o-Unwrap-Error">Attempt.to.Unwra |
| c3180 | 70 20 45 72 72 6f 72 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d | p.Error</a>.<a.class="hdr".href= |
| c31a0 | 22 23 41 74 74 65 6d 70 74 2d 74 6f 2d 55 6e 77 72 61 70 2d 45 72 72 6f 72 22 3e c2 a7 3c 2f 61 | "#Attempt-to-Unwrap-Error">..</a |
| c31c0 | 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 |
| c31e0 | 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. |
| c3200 | 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 |
| c3220 | 65 22 3e 74 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 75 6e 77 72 61 70 5f 65 72 72 6f 72 2e 7a 69 | e">test_comptime_unwrap_error.zi |
| c3240 | 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> |
| c3260 | 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 |
| c3280 | 70 61 6e 3e 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"> |
| c32a0 | 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6e 75 6d 62 65 72 20 3d 20 67 65 74 4e 75 6d 62 65 72 4f | const</span>.number.=.getNumberO |
| c32c0 | 72 46 61 69 6c 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 61 74 | rFail().<span.class="tok-kw">cat |
| c32e0 | 63 68 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 | ch</span>.<span.class="tok-kw">u |
| c3300 | 6e 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 5f 20 3d 20 6e 75 6d 62 65 | nreachable</span>;....._.=.numbe |
| c3320 | 72 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 | r;.}..<span.class="tok-kw">fn</s |
| c3340 | 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 67 65 74 4e 75 6d | pan>.<span.class="tok-fn">getNum |
| c3360 | 62 65 72 4f 72 46 61 69 6c 3c 2f 73 70 61 6e 3e 28 29 20 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d | berOrFail</span>().!<span.class= |
| c3380 | 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 |
| c33a0 | 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>.< |
| c33c0 | 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> |
| c33e0 | 2e 55 6e 61 62 6c 65 54 6f 52 65 74 75 72 6e 4e 75 6d 62 65 72 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c | .UnableToReturnNumber;.}</code>< |
| c3400 | 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 |
| c3420 | 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 |
| c3440 | 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 |
| c3460 | 20 74 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 75 6e 77 72 61 70 5f 65 72 72 6f 72 2e 7a 69 67 3c | .test_comptime_unwrap_error.zig< |
| c3480 | 2f 6b 62 64 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 | /kbd>.<span.class="sgr-1m">/home |
| c34a0 | 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 63 | /andy/dev/zig/doc/langref/test_c |
| c34c0 | 6f 6d 70 74 69 6d 65 5f 75 6e 77 72 61 70 5f 65 72 72 6f 72 2e 7a 69 67 3a 32 3a 34 34 3a 20 3c | omptime_unwrap_error.zig:2:44:.< |
| c34e0 | 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 |
| c3500 | 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 |
| c3520 | 61 75 67 68 74 20 75 6e 65 78 70 65 63 74 65 64 20 65 72 72 6f 72 20 27 55 6e 61 62 6c 65 54 6f | aught.unexpected.error.'UnableTo |
| c3540 | 52 65 74 75 72 6e 4e 75 6d 62 65 72 27 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 63 6f 6e 73 74 20 6e | ReturnNumber'.</span>....const.n |
| c3560 | 75 6d 62 65 72 20 3d 20 67 65 74 4e 75 6d 62 65 72 4f 72 46 61 69 6c 28 29 20 63 61 74 63 68 20 | umber.=.getNumberOrFail().catch. |
| c3580 | 75 6e 72 65 61 63 68 61 62 6c 65 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | unreachable;.................... |
| c35a0 | 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 |
| c35c0 | 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a 3c 2f 73 70 61 6e | ass="sgr-32m">^~~~~~~~~~~.</span |
| c35e0 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 | ><span.class="sgr-1m">/home/andy |
| c3600 | 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 63 6f 6d 70 74 69 | /dev/zig/doc/langref/test_compti |
| c3620 | 6d 65 5f 75 6e 77 72 61 70 5f 65 72 72 6f 72 2e 7a 69 67 3a 37 3a 31 38 3a 20 3c 2f 73 70 61 6e | me_unwrap_error.zig:7:18:.</span |
| c3640 | 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 |
| c3660 | 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 65 72 72 6f 72 20 72 | pan><span.class="sgr-1m">error.r |
| c3680 | 65 74 75 72 6e 65 64 20 68 65 72 65 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 72 65 74 75 72 6e 20 65 | eturned.here.</span>....return.e |
| c36a0 | 72 72 6f 72 2e 55 6e 61 62 6c 65 54 6f 52 65 74 75 72 6e 4e 75 6d 62 65 72 3b 0a 20 20 20 20 20 | rror.UnableToReturnNumber;...... |
| c36c0 | 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 |
| c36e0 | 22 3e 5e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 7e 0a 3c 2f 73 70 61 6e 3e 0a 3c | ">^~~~~~~~~~~~~~~~~~~~.</span>.< |
| c3700 | 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> |
| c3720 | 41 74 20 72 75 6e 74 69 6d 65 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 | At.runtime:</p>.......<figure><f |
| c3740 | 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. |
| c3760 | 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 72 75 6e 74 69 6d 65 5f 75 6e 77 72 61 70 5f 65 72 72 6f | class="file">runtime_unwrap_erro |
| c3780 | 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 |
| c37a0 | 6f 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</ |
| c37c0 | 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 |
| c37e0 | 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 |
| c3800 | 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 |
| c3820 | 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 |
| c3840 | 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 |
| c3860 | 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 |
| c3880 | 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 |
| c38a0 | 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | id</span>.{.....<span.class="tok |
| c38c0 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6e 75 6d 62 65 72 20 3d 20 67 65 74 4e 75 | -kw">const</span>.number.=.getNu |
| c38e0 | 6d 62 65 72 4f 72 46 61 69 6c 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | mberOrFail().<span.class="tok-kw |
| c3900 | 22 3e 63 61 74 63 68 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ">catch</span>.<span.class="tok- |
| c3920 | 6b 77 22 3e 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 73 74 64 2e | kw">unreachable</span>;.....std. |
| c3940 | 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 |
| c3960 | 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> |
| c3980 | 2c 20 2e 7b 6e 75 6d 62 65 72 7d 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ,..{number});.}..<span.class="to |
| c39a0 | 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 |
| c39c0 | 2d 66 6e 22 3e 67 65 74 4e 75 6d 62 65 72 4f 72 46 61 69 6c 3c 2f 73 70 61 6e 3e 28 29 20 21 3c | -fn">getNumberOrFail</span>().!< |
| c39e0 | 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> |
| c3a00 | 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 |
| c3a20 | 72 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 | rn</span>.<span.class="tok-kw">e |
| c3a40 | 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 55 6e 61 62 6c 65 54 6f 52 65 74 75 72 6e 4e 75 6d 62 65 72 | rror</span>.UnableToReturnNumber |
| c3a60 | 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 |
| c3a80 | 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 |
| c3aa0 | 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 |
| c3ac0 | 62 64 3e 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 72 75 6e 74 69 6d 65 5f 75 6e 77 72 61 70 5f | bd>zig.build-exe.runtime_unwrap_ |
| c3ae0 | 65 72 72 6f 72 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 24 20 3c 6b 62 64 3e 2e 2f 72 75 6e 74 69 6d 65 | error.zig</kbd>.$.<kbd>./runtime |
| c3b00 | 5f 75 6e 77 72 61 70 5f 65 72 72 6f 72 3c 2f 6b 62 64 3e 0a 74 68 72 65 61 64 20 31 30 39 31 39 | _unwrap_error</kbd>.thread.10919 |
| c3b20 | 37 33 20 70 61 6e 69 63 3a 20 61 74 74 65 6d 70 74 20 74 6f 20 75 6e 77 72 61 70 20 65 72 72 6f | 73.panic:.attempt.to.unwrap.erro |
| c3b40 | 72 3a 20 55 6e 61 62 6c 65 54 6f 52 65 74 75 72 6e 4e 75 6d 62 65 72 0a 3c 73 70 61 6e 20 63 6c | r:.UnableToReturnNumber.<span.cl |
| c3b60 | 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f | ass="sgr-1m">/home/andy/dev/zig/ |
| c3b80 | 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 72 6f 72 | doc/langref/runtime_unwrap_error |
| c3ba0 | 2e 7a 69 67 3a 39 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 | .zig:9:5</span>:.<span.class="sg |
| c3bc0 | 72 2d 32 6d 22 3e 30 78 31 31 33 65 38 34 63 20 69 6e 20 67 65 74 4e 75 6d 62 65 72 4f 72 46 61 | r-2m">0x113e84c.in.getNumberOrFa |
| c3be0 | 69 6c 20 28 72 75 6e 74 69 6d 65 5f 75 6e 77 72 61 70 5f 65 72 72 6f 72 2e 7a 69 67 29 3c 2f 73 | il.(runtime_unwrap_error.zig)</s |
| c3c00 | 70 61 6e 3e 0a 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 | pan>.....return.error.UnableToRe |
| c3c20 | 74 75 72 6e 4e 75 6d 62 65 72 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 | turnNumber;.....<span.class="sgr |
| c3c40 | 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- |
| c3c60 | 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 | 1m">/home/andy/dev/zig/doc/langr |
| c3c80 | 65 66 2f 72 75 6e 74 69 6d 65 5f 75 6e 77 72 61 70 5f 65 72 72 6f 72 2e 7a 69 67 3a 34 3a 34 34 | ef/runtime_unwrap_error.zig:4:44 |
| c3ca0 | 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 |
| c3cc0 | 31 31 33 65 38 62 33 20 69 6e 20 6d 61 69 6e 20 28 72 75 6e 74 69 6d 65 5f 75 6e 77 72 61 70 5f | 113e8b3.in.main.(runtime_unwrap_ |
| c3ce0 | 65 72 72 6f 72 2e 7a 69 67 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 63 6f 6e 73 74 20 6e 75 6d 62 | error.zig)</span>.....const.numb |
| c3d00 | 65 72 20 3d 20 67 65 74 4e 75 6d 62 65 72 4f 72 46 61 69 6c 28 29 20 63 61 74 63 68 20 75 6e 72 | er.=.getNumberOrFail().catch.unr |
| c3d20 | 65 61 63 68 61 62 6c 65 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | eachable;....................... |
| c3d40 | 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 |
| c3d60 | 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= |
| c3d80 | 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f | "sgr-1m">/home/andy/dev/zig/lib/ |
| c3da0 | 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 36 31 38 3a 32 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 | std/start.zig:618:22</span>:.<sp |
| c3dc0 | 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 31 33 64 61 39 64 20 69 6e 20 70 | an.class="sgr-2m">0x113da9d.in.p |
| c3de0 | 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 20 28 73 74 64 2e 7a 69 67 29 3c 2f 73 | osixCallMainAndExit.(std.zig)</s |
| c3e00 | 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();... |
| c3e20 | 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=" |
| c3e40 | 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 |
| c3e60 | 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 | gr-1m">/home/andy/dev/zig/lib/st |
| c3e80 | 64 2f 73 74 61 72 74 2e 7a 69 67 3a 32 33 32 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 | d/start.zig:232:5</span>:.<span. |
| c3ea0 | 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 31 33 64 33 33 31 20 69 6e 20 5f 73 74 61 | class="sgr-2m">0x113d331.in._sta |
| c3ec0 | 72 74 20 28 73 74 64 2e 7a 69 67 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 61 73 6d 20 76 6f 6c 61 | rt.(std.zig)</span>.....asm.vola |
| c3ee0 | 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 20 | tile.(switch.(native_arch).{.... |
| c3f00 | 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>. |
| c3f20 | 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 70 | <span.class="sgr-1m">???:?:?</sp |
| c3f40 | 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 6e | an>:.<span.class="sgr-2m">0x0.in |
| c3f60 | 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 69 | .???.(???)</span>.(process.termi |
| c3f80 | 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 2f | nated.by.signal).</samp></pre></ |
| c3fa0 | 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 76 6f | figure>........<p>One.way.to.avo |
| c3fc0 | 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 6e 20 | id.this.crash.is.to.test.for.an. |
| c3fe0 | 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 63 63 | error.instead.of.assuming.a.succ |
| c4000 | 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 3c 63 | essful.result,.with.......the.<c |
| c4020 | 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 | ode><span.class="tok-kw">if</spa |
| c4040 | 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 20 20 | n></code>.expression:</p>....... |
| c4060 | 3c 66 69 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 |
| c4080 | 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 65 | ap"><cite.class="file">testing_e |
| c40a0 | 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 70 74 | rror_with_if.zig</cite></figcapt |
| c40c0 | 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- |
| c40e0 | 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 |
| c4100 | 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 |
| c4120 | 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 |
| c4140 | 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 64 65 62 75 67 2e 70 72 69 6e 74 3b 0a 0a 3c 73 | d"</span>).debug.print;..<s |
| c4160 | 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 |
| c4180 | 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 |
| c41a0 | 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>(). |
| c41c0 | 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 |
| c41e0 | 6e 3e 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 |
| c4200 | 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 72 46 | nst</span>.result.=.getNumberOrF |
| c4220 | 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 77 22 | ail();......<span.class="tok-kw" |
| c4240 | 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 0a 20 | >if</span>.(result).|number|.{.. |
| c4260 | 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 |
| c4280 | 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 3b 3c | r">"got.number:.{}\n"< |
| c42a0 | 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 6e 20 | /span>,..{number});.....}.<span. |
| c42c0 | 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| |
| c42e0 | 20 7b 0a 20 20 20 20 20 20 20 20 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | .{.........print(<span.class="to |
| c4300 | 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 71 75 | k-str">"got.error:.{s}\n&qu |
| c4320 | 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 2d 62 | ot;</span>,..{<span.class="tok-b |
| c4340 | 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 7d 29 | uiltin">@errorName</span>(err)}) |
| c4360 | 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"> |
| c4380 | 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 67 | fn</span>.<span.class="tok-fn">g |
| c43a0 | 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 20 63 | etNumberOrFail</span>().!<span.c |
| c43c0 | 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>.{.... |
| c43e0 | 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 |
| c4400 | 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f | an>.<span.class="tok-kw">error</ |
| c4420 | 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 2f 63 | span>.UnableToReturnNumber;.}</c |
| c4440 | 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 |
| c4460 | 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</ |
| c4480 | 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 |
| c44a0 | 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 69 66 | .build-exe.testing_error_with_if |
| c44c0 | 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 72 6f | .zig</kbd>.$.<kbd>./testing_erro |
| c44e0 | 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 62 6c | r_with_if</kbd>.got.error:.Unabl |
| c4500 | 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 2f 66 | eToReturnNumber.</samp></pre></f |
| c4520 | 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 |
| c4540 | 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 73 3c | l>.<li><a.href="#Errors">Errors< |
| c4560 | 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 33 | /a></li>.</ul>...............<h3 |
| c4580 | 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 65 66 | .id="Invalid-Error-Code"><a.href |
| c45a0 | 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 61 6c | ="#toc-Invalid-Error-Code">Inval |
| c45c0 | 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 72 22 | id.Error.Code</a>.<a.class="hdr" |
| c45e0 | 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 3c 2f | .href="#Invalid-Error-Code">..</ |
| c4600 | 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d | a></h3>........<p>At.compile-tim |
| c4620 | 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 |
| c4640 | 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 |
| c4660 | 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 72 5f | le">test_comptime_invalid_error_ |
| c4680 | 63 6f 64 65 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 | code.zig</cite></figcaption><pre |
| c46a0 | 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 |
| c46c0 | 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 |
| c46e0 | 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 72 72 20 3d 20 3c 73 70 61 6e 20 | ok-kw">const</span>.err.=.<span. |
| c4700 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 41 6e 45 72 | class="tok-kw">error</span>.AnEr |
| c4720 | 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 63 6f | ror;.....<span.class="tok-kw">co |
| c4740 | 6e 73 74 3c 2f 73 70 61 6e 3e 20 6e 75 6d 62 65 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | nst</span>.number.=.<span.class= |
| c4760 | 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 70 61 | "tok-builtin">@intFromError</spa |
| c4780 | 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 62 65 | n>(err).+.<span.class="tok-numbe |
| c47a0 | 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 22 74 | r">10</span>;.....<span.class="t |
| c47c0 | 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 72 20 | ok-kw">const</span>.invalid_err. |
| c47e0 | 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 72 72 | =.<span.class="tok-builtin">@err |
| c4800 | 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 5f 20 | orFromInt</span>(number);....._. |
| c4820 | 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 2f 66 | =.invalid_err;.}</code></pre></f |
| c4840 | 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= |
| c4860 | 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 |
| c4880 | 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 |
| c48a0 | 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 2f 6b | mptime_invalid_error_code.zig</k |
| c48c0 | 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 |
| c48e0 | 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 63 6f 6d | ndy/dev/zig/doc/langref/test_com |
| c4900 | 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 3a 34 3a 33 | ptime_invalid_error_code.zig:4:3 |
| c4920 | 39 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 31 6d 22 3e | 9:.</span><span.class="sgr-31m"> |
| c4940 | 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 |
| c4960 | 6d 22 3e 69 6e 74 65 67 65 72 20 76 61 6c 75 65 20 27 31 31 27 20 72 65 70 72 65 73 65 6e 74 73 | m">integer.value.'11'.represents |
| c4980 | 20 6e 6f 20 65 72 72 6f 72 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 63 6f 6e 73 74 20 69 6e 76 61 6c | .no.error.</span>....const.inval |
| c49a0 | 69 64 5f 65 72 72 20 3d 20 40 65 72 72 6f 72 46 72 6f 6d 49 6e 74 28 6e 75 6d 62 65 72 29 3b 0a | id_err.=.@errorFromInt(number);. |
| c49c0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ................................ |
| c49e0 | 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 7e 7e 7e | ......<span.class="sgr-32m">^~~~ |
| c4a00 | 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 72 65 | ~~.</span>.</samp></pre></figure |
| c4a20 | 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 74 20 72 75 6e 74 69 6d 65 3a 3c 2f 70 3e 0a 20 20 20 20 | >........<p>At.runtime:</p>..... |
| c4a40 | 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 |
| c4a60 | 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 72 75 6e 74 69 6d 65 | -cap"><cite.class="file">runtime |
| c4a80 | 5f 69 6e 76 61 6c 69 64 5f 65 72 72 6f 72 5f 63 6f 64 65 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f | _invalid_error_code.zig</cite></ |
| c4aa0 | 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 |
| c4ac0 | 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 |
| c4ae0 | 70 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< |
| c4b00 | 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 |
| c4b20 | 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 61 | ot;std"</span>);..<span.cla |
| c4b40 | 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 |
| c4b60 | 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 |
| c4b80 | 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 |
| c4ba0 | 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>.{... |
| c4bc0 | 20 20 3c 73 70 61 6e 20 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 |
| c4be0 | 61 6e 3e 20 65 72 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 | an>.err.=.<span.class="tok-kw">e |
| c4c00 | 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 41 6e 45 72 72 6f 72 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 | rror</span>.AnError;.....<span.c |
| c4c20 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 6e 75 6d 62 65 72 20 | lass="tok-kw">var</span>.number. |
| c4c40 | 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6e 74 | =.<span.class="tok-builtin">@int |
| c4c60 | 46 72 6f 6d 45 72 72 6f 72 3c 2f 73 70 61 6e 3e 28 65 72 72 29 20 2b 20 3c 73 70 61 6e 20 63 6c | FromError</span>(err).+.<span.cl |
| c4c80 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 30 30 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 | ass="tok-number">500</span>;.... |
| c4ca0 | 20 5f 20 3d 20 26 61 6d 70 3b 6e 75 6d 62 65 72 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | ._.=.&number;.....<span.clas |
| c4cc0 | 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 69 64 5f | s="tok-kw">const</span>.invalid_ |
| c4ce0 | 65 72 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 | err.=.<span.class="tok-builtin"> |
| c4d00 | 40 65 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 | @errorFromInt</span>(number);... |
| c4d20 | 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 |
| c4d40 | 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 76 61 6c 75 65 3a 20 7b 7d 5c 6e 26 71 75 6f 74 3b 3c | ok-str">"value:.{}\n"< |
| c4d60 | 2f 73 70 61 6e 3e 2c 20 2e 7b 69 6e 76 61 6c 69 64 5f 65 72 72 7d 29 3b 0a 7d 3c 2f 63 6f 64 65 | /span>,..{invalid_err});.}</code |
| c4d80 | 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 |
| c4da0 | 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 |
| c4dc0 | 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 |
| c4de0 | 69 6c 64 2d 65 78 65 20 72 75 6e 74 69 6d 65 5f 69 6e 76 61 6c 69 64 5f 65 72 72 6f 72 5f 63 6f | ild-exe.runtime_invalid_error_co |
| c4e00 | 64 65 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 24 20 3c 6b 62 64 3e 2e 2f 72 75 6e 74 69 6d 65 5f 69 6e | de.zig</kbd>.$.<kbd>./runtime_in |
| c4e20 | 76 61 6c 69 64 5f 65 72 72 6f 72 5f 63 6f 64 65 3c 2f 6b 62 64 3e 0a 74 68 72 65 61 64 20 31 30 | valid_error_code</kbd>.thread.10 |
| c4e40 | 39 31 39 37 31 20 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 | 91971.panic:.invalid.error.code. |
| c4e60 | 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/ |
| c4e80 | 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 72 75 6e 74 69 6d 65 5f 69 6e 76 61 | dev/zig/doc/langref/runtime_inva |
| c4ea0 | 6c 69 64 5f 65 72 72 6f 72 5f 63 6f 64 65 2e 7a 69 67 3a 37 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c | lid_error_code.zig:7:5</span>:.< |
| c4ec0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 31 33 65 38 38 37 20 69 6e | span.class="sgr-2m">0x113e887.in |
| c4ee0 | 20 6d 61 69 6e 20 28 72 75 6e 74 69 6d 65 5f 69 6e 76 61 6c 69 64 5f 65 72 72 6f 72 5f 63 6f 64 | .main.(runtime_invalid_error_cod |
| c4f00 | 65 2e 7a 69 67 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 63 6f 6e 73 74 20 69 6e 76 61 6c 69 64 5f | e.zig)</span>.....const.invalid_ |
| c4f20 | 65 72 72 20 3d 20 40 65 72 72 6f 72 46 72 6f 6d 49 6e 74 28 6e 75 6d 62 65 72 29 3b 0a 20 20 20 | err.=.@errorFromInt(number);.... |
| c4f40 | 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>. |
| c4f60 | 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/ |
| c4f80 | 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 36 31 38 3a 32 32 | dev/zig/lib/std/start.zig:618:22 |
| c4fa0 | 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 |
| c4fc0 | 31 31 33 64 61 39 64 20 69 6e 20 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 20 | 113da9d.in.posixCallMainAndExit. |
| c4fe0 | 28 73 74 64 2e 7a 69 67 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 6f 6f | (std.zig)</span>.............roo |
| c5000 | 74 2e 6d 61 69 6e 28 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c | t.main();......................< |
| c5020 | 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 |
| c5040 | 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 | pan.class="sgr-1m">/home/andy/de |
| c5060 | 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 32 33 32 3a 35 3c 2f 73 | v/zig/lib/std/start.zig:232:5</s |
| c5080 | 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 31 33 | pan>:.<span.class="sgr-2m">0x113 |
| c50a0 | 64 33 33 31 20 69 6e 20 5f 73 74 61 72 74 20 28 73 74 64 2e 7a 69 67 29 3c 2f 73 70 61 6e 3e 0a | d331.in._start.(std.zig)</span>. |
| c50c0 | 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 |
| c50e0 | 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 |
| c5100 | 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" |
| c5120 | 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 |
| c5140 | 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 |
| c5160 | 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 |
| c5180 | 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 | amp></pre></figure>............. |
| c51a0 | 20 20 3c 68 33 20 69 64 3d 22 49 6e 76 61 6c 69 64 2d 45 6e 75 6d 2d 43 61 73 74 22 3e 3c 61 20 | ..<h3.id="Invalid-Enum-Cast"><a. |
| c51c0 | 68 72 65 66 3d 22 23 74 6f 63 2d 49 6e 76 61 6c 69 64 2d 45 6e 75 6d 2d 43 61 73 74 22 3e 49 6e | href="#toc-Invalid-Enum-Cast">In |
| c51e0 | 76 61 6c 69 64 20 45 6e 75 6d 20 43 61 73 74 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 | valid.Enum.Cast</a>.<a.class="hd |
| c5200 | 72 22 20 68 72 65 66 3d 22 23 49 6e 76 61 6c 69 64 2d 45 6e 75 6d 2d 43 61 73 74 22 3e c2 a7 3c | r".href="#Invalid-Enum-Cast">..< |
| c5220 | 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 69 | /a></h3>........<p>At.compile-ti |
| c5240 | 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 |
| c5260 | 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 |
| c5280 | 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 6e 75 6d 5f | ile">test_comptime_invalid_enum_ |
| c52a0 | 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 |
| c52c0 | 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 |
| c52e0 | 74 3c 2f 73 70 61 6e 3e 20 46 6f 6f 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | t</span>.Foo.=.<span.class="tok- |
| c5300 | 6b 77 22 3e 65 6e 75 6d 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 61 2c 0a 20 20 20 20 62 2c 0a | kw">enum</span>.{.....a,.....b,. |
| c5320 | 20 20 20 20 63 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 | ....c,.};.<span.class="tok-kw">c |
| c5340 | 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 |
| c5360 | 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. |
| c5380 | 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 20 3d 20 3c 73 70 | class="tok-type">u2</span>.=.<sp |
| c53a0 | 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>;. |
| c53c0 | 20 20 20 20 3c 73 70 61 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</ |
| c53e0 | 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 22 74 6f 6b 2d | span>.b:.Foo.=.<span.class="tok- |
| c5400 | 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 3e 28 61 29 3b | builtin">@enumFromInt</span>(a); |
| c5420 | 0a 20 20 20 20 5f 20 3d 20 62 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 | ....._.=.b;.}</code></pre></figu |
| c5440 | 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 |
| c5460 | 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> |
| c5480 | 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 |
| c54a0 | 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 6b 62 64 3e 0a | ime_invalid_enum_cast.zig</kbd>. |
| c54c0 | 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/ |
| c54e0 | 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 63 6f 6d 70 74 69 6d | dev/zig/doc/langref/test_comptim |
| c5500 | 65 5f 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 | e_invalid_enum_cast.zig:8:20:.</ |
| c5520 | 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 |
| c5540 | 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 65 6e | :.</span><span.class="sgr-1m">en |
| c5560 | 75 6d 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 | um.'test_comptime_invalid_enum_c |
| c5580 | 61 73 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 | ast.Foo'.has.no.tag.with.value.' |
| c55a0 | 33 27 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 | 3'.</span>....const.b:.Foo.=.@en |
| c55c0 | 75 6d 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 | umFromInt(a);................... |
| c55e0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 7e 7e 7e 7e 7e 7e 7e 7e | .<span.class="sgr-32m">^~~~~~~~~ |
| c5600 | 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 31 | ~~~~~~.</span><span.class="sgr-1 |
| c5620 | 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 | m">/home/andy/dev/zig/doc/langre |
| c5640 | 66 2f 74 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 69 6e 76 61 6c 69 64 5f 65 6e 75 6d 5f 63 61 73 | f/test_comptime_invalid_enum_cas |
| c5660 | 74 2e 7a 69 67 3a 31 3a 31 33 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | t.zig:1:13:.</span><span.class=" |
| c5680 | 73 67 72 2d 33 36 6d 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 | sgr-36m">note:.</span><span.clas |
| c56a0 | 73 3d 22 73 67 72 2d 31 6d 22 3e 65 6e 75 6d 20 64 65 63 6c 61 72 65 64 20 68 65 72 65 0a 3c 2f | s="sgr-1m">enum.declared.here.</ |
| c56c0 | 73 70 61 6e 3e 63 6f 6e 73 74 20 46 6f 6f 20 3d 20 65 6e 75 6d 20 7b 0a 20 20 20 20 20 20 20 20 | span>const.Foo.=.enum.{......... |
| c56e0 | 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 7e 7e 7e 0a 3c | ....<span.class="sgr-32m">^~~~.< |
| c5700 | 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 20 | /span>.</samp></pre></figure>... |
| c5720 | 20 20 20 20 20 3c 70 3e 41 74 20 72 75 6e 74 69 6d 65 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 | .....<p>At.runtime:</p>.......<f |
| c5740 | 69 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 |
| c5760 | 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 69 6e 76 | "><cite.class="file">runtime_inv |
| c5780 | 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 3c 2f 66 69 67 63 61 | alid_enum_cast.zig</cite></figca |
| c57a0 | 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 |
| c57c0 | 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 |
| c57e0 | 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 |
| c5800 | 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 |
| c5820 | 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | d"</span>);..<span.class="t |
| c5840 | 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 46 6f 6f 20 3d 20 3c 73 70 61 6e 20 | ok-kw">const</span>.Foo.=.<span. |
| c5860 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6e 75 6d 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 | class="tok-kw">enum</span>.{.... |
| c5880 | 20 61 2c 0a 20 20 20 20 62 2c 0a 20 20 20 20 63 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 | .a,.....b,.....c,.};..<span.clas |
| c58a0 | 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 |
| c58c0 | 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 |
| c58e0 | 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 |
| c5900 | 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>.{.... |
| c5920 | 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> |
| c5940 | 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 32 3c 2f 73 | .a:.<span.class="tok-type">u2</s |
| c5960 | 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"> |
| c5980 | 33 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 20 3c 73 | 3</span>;....._.=.&a;.....<s |
| c59a0 | 70 61 6e 20 63 6c 61 73 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>. |
| c59c0 | 62 3a 20 46 6f 6f 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 | b:.Foo.=.<span.class="tok-builti |
| c59e0 | 6e 22 3e 40 65 6e 75 6d 46 72 6f 6d 49 6e 74 3c 2f 73 70 61 6e 3e 28 61 29 3b 0a 20 20 20 20 73 | n">@enumFromInt</span>(a);.....s |
| c5a00 | 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- |
| c5a20 | 73 74 72 22 3e 26 71 75 6f 74 3b 76 61 6c 75 65 3a 20 7b 73 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 | str">"value:.{s}\n"</s |
| c5a40 | 70 61 6e 3e 2c 20 2e 7b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e | pan>,..{<span.class="tok-builtin |
| c5a60 | 22 3e 40 74 61 67 4e 61 6d 65 3c 2f 73 70 61 6e 3e 28 62 29 7d 29 3b 0a 7d 3c 2f 63 6f 64 65 3e | ">@tagName</span>(b)});.}</code> |
| c5a80 | 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 |
| c5aa0 | 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 |
| c5ac0 | 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 |
| c5ae0 | 6c 64 2d 65 78 65 20 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 | ld-exe.runtime_invalid_enum_cast |
| c5b00 | 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 69 6e 76 61 | .zig</kbd>.$.<kbd>./runtime_inva |
| c5b20 | 6c 69 64 5f 65 6e 75 6d 5f 63 61 73 74 3c 2f 6b 62 64 3e 0a 74 68 72 65 61 64 20 31 30 39 32 31 | lid_enum_cast</kbd>.thread.10921 |
| c5b40 | 33 33 20 70 61 6e 69 63 3a 20 69 6e 76 61 6c 69 64 20 65 6e 75 6d 20 76 61 6c 75 65 0a 3c 73 70 | 33.panic:.invalid.enum.value.<sp |
| c5b60 | 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 | an.class="sgr-1m">/home/andy/dev |
| c5b80 | 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 |
| c5ba0 | 5f 65 6e 75 6d 5f 63 61 73 74 2e 7a 69 67 3a 31 32 3a 32 30 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 | _enum_cast.zig:12:20</span>:.<sp |
| c5bc0 | 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 31 33 65 38 64 30 20 69 6e 20 6d | an.class="sgr-2m">0x113e8d0.in.m |
| c5be0 | 61 69 6e 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 73 74 2e 7a | ain.(runtime_invalid_enum_cast.z |
| c5c00 | 69 67 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 63 6f 6e 73 74 20 62 3a 20 46 6f 6f 20 3d 20 40 65 | ig)</span>.....const.b:.Foo.=.@e |
| c5c20 | 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 20 20 20 20 20 20 20 | numFromInt(a);.................. |
| c5c40 | 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> |
| c5c60 | 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 |
| c5c80 | 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 36 31 38 3a 32 | /dev/zig/lib/std/start.zig:618:2 |
| c5ca0 | 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 |
| c5cc0 | 78 31 31 33 64 61 39 64 20 69 6e 20 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 | x113da9d.in.posixCallMainAndExit |
| c5ce0 | 20 28 73 74 64 2e 7a 69 67 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 6f | .(std.zig)</span>.............ro |
| c5d00 | 6f 74 2e 6d 61 69 6e 28 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ot.main();...................... |
| c5d20 | 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>.< |
| c5d40 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 | span.class="sgr-1m">/home/andy/d |
| c5d60 | 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 32 33 32 3a 35 3c 2f | ev/zig/lib/std/start.zig:232:5</ |
| c5d80 | 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 31 | span>:.<span.class="sgr-2m">0x11 |
| c5da0 | 33 64 33 33 31 20 69 6e 20 5f 73 74 61 72 74 20 28 73 74 64 2e 7a 69 67 29 3c 2f 73 70 61 6e 3e | 3d331.in._start.(std.zig)</span> |
| c5dc0 | 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 |
| c5de0 | 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 |
| c5e00 | 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 |
| c5e20 | 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 |
| c5e40 | 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>.( |
| c5e60 | 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).</ |
| c5e80 | 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 | samp></pre></figure>............ |
| c5ea0 | 20 20 20 20 3c 68 33 20 69 64 3d 22 49 6e 76 61 6c 69 64 2d 45 72 72 6f 72 2d 53 65 74 2d 43 61 | ....<h3.id="Invalid-Error-Set-Ca |
| c5ec0 | 73 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 49 6e 76 61 6c 69 64 2d 45 72 72 6f 72 2d | st"><a.href="#toc-Invalid-Error- |
| c5ee0 | 53 65 74 2d 43 61 73 74 22 3e 49 6e 76 61 6c 69 64 20 45 72 72 6f 72 20 53 65 74 20 43 61 73 74 | Set-Cast">Invalid.Error.Set.Cast |
| c5f00 | 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 |
| c5f20 | 69 64 2d 45 72 72 6f 72 2d 53 65 74 2d 43 61 73 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a | id-Error-Set-Cast">..</a></h3>.. |
| c5f40 | 20 20 20 20 20 20 3c 70 3e 41 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 3a 3c 2f 70 3e 0a 20 20 | ......<p>At.compile-time:</p>... |
| c5f60 | 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 |
| c5f80 | 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_ |
| c5fa0 | 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 5f 63 61 73 74 2e | comptime_invalid_error_set_cast. |
| c5fc0 | 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 |
| c5fe0 | 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 |
| c6000 | 61 6e 3e 20 53 65 74 31 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | an>.Set1.=.<span.class="tok-kw"> |
| c6020 | 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 7b 0a 20 20 20 20 41 2c 0a 20 20 20 20 42 2c 0a 7d 3b 0a 3c | error</span>{.....A,.....B,.};.< |
| c6040 | 73 70 61 6e 20 63 6c 61 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> |
| c6060 | 20 53 65 74 32 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 | .Set2.=.<span.class="tok-kw">err |
| c6080 | 6f 72 3c 2f 73 70 61 6e 3e 7b 0a 20 20 20 20 41 2c 0a 20 20 20 20 43 2c 0a 7d 3b 0a 3c 73 70 61 | or</span>{.....A,.....C,.};.<spa |
| c60a0 | 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> |
| c60c0 | 20 7b 0a 20 20 20 20 5f 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c | .{....._.=.<span.class="tok-buil |
| c60e0 | 74 69 6e 22 3e 40 61 73 3c 2f 73 70 61 6e 3e 28 53 65 74 32 2c 20 3c 73 70 61 6e 20 63 6c 61 73 | tin">@as</span>(Set2,.<span.clas |
| c6100 | 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 65 72 72 6f 72 43 61 73 74 3c 2f 73 70 61 6e | s="tok-builtin">@errorCast</span |
| c6120 | 3e 28 53 65 74 31 2e 42 29 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 | >(Set1.B));.}</code></pre></figu |
| c6140 | 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 |
| c6160 | 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> |
| c6180 | 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 |
| c61a0 | 69 6d 65 5f 69 6e 76 61 6c 69 64 5f 65 72 72 6f 72 5f 73 65 74 5f 63 61 73 74 2e 7a 69 67 3c 2f | ime_invalid_error_set_cast.zig</ |
| c61c0 | 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/ |
| c61e0 | 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 63 6f | andy/dev/zig/doc/langref/test_co |
| c6200 | 6d 70 74 69 6d 65 5f 69 6e 76 61 6c 69 64 5f 65 72 72 6f 72 5f 73 65 74 5f 63 61 73 74 2e 7a 69 | mptime_invalid_error_set_cast.zi |
| c6220 | 67 3a 31 30 3a 31 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 | g:10:19:.</span><span.class="sgr |
| c6240 | 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= |
| c6260 | 22 73 67 72 2d 31 6d 22 3e 27 65 72 72 6f 72 2e 42 27 20 6e 6f 74 20 61 20 6d 65 6d 62 65 72 20 | "sgr-1m">'error.B'.not.a.member. |
| c6280 | 6f 66 20 65 72 72 6f 72 20 73 65 74 20 27 65 72 72 6f 72 7b 41 2c 43 7d 27 0a 3c 2f 73 70 61 6e | of.error.set.'error{A,C}'.</span |
| c62a0 | 3e 20 20 20 20 5f 20 3d 20 40 61 73 28 53 65 74 32 2c 20 40 65 72 72 6f 72 43 61 73 74 28 53 65 | >...._.=.@as(Set2,.@errorCast(Se |
| c62c0 | 74 31 2e 42 29 29 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 | t1.B));...................<span. |
| c62e0 | 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 7e | class="sgr-32m">^~~~~~~~~~~~~~~~ |
| c6300 | 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 72 65 | ~~.</span>.</samp></pre></figure |
| c6320 | 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 74 20 72 75 6e 74 69 6d 65 3a 3c 2f 70 3e 0a 20 20 20 20 | >........<p>At.runtime:</p>..... |
| c6340 | 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 |
| c6360 | 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 72 75 6e 74 69 6d 65 | -cap"><cite.class="file">runtime |
| c6380 | 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 63 69 74 | _invalid_error_set_cast.zig</cit |
| c63a0 | 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. |
| c63c0 | 63 6c 61 73 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. |
| c63e0 | 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 |
| c6400 | 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" |
| c6420 | 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 |
| c6440 | 20 63 6c 61 73 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 65 74 | .class="tok-kw">const</span>.Set |
| c6460 | 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 65 72 72 6f 72 3c 2f | 1.=.<span.class="tok-kw">error</ |
| c6480 | 73 70 61 6e 3e 7b 0a 20 20 20 20 41 2c 0a 20 20 20 20 42 2c 0a 7d 3b 0a 3c 73 70 61 6e 20 63 6c | span>{.....A,.....B,.};.<span.cl |
| c64a0 | 61 73 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 65 74 32 20 3d | ass="tok-kw">const</span>.Set2.= |
| c64c0 | 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 |
| c64e0 | 6e 3e 7b 0a 20 20 20 20 41 2c 0a 20 20 20 20 43 2c 0a 7d 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | n>{.....A,.....C,.};.<span.class |
| c6500 | 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 |
| c6520 | 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= |
| c6540 | 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 |
| c6560 | 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>.{..... |
| c6580 | 66 6f 6f 28 53 65 74 31 2e 42 29 3b 0a 7d 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | foo(Set1.B);.}.<span.class="tok- |
| c65a0 | 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 |
| c65c0 | 6e 22 3e 66 6f 6f 3c 2f 73 70 61 6e 3e 28 73 65 74 31 3a 20 53 65 74 31 29 20 3c 73 70 61 6e 20 | n">foo</span>(set1:.Set1).<span. |
| c65e0 | 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>.{.. |
| c6600 | 20 20 20 3c 73 70 61 6e 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 |
| c6620 | 70 61 6e 3e 20 78 3a 20 53 65 74 32 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | pan>.x:.Set2.=.<span.class="tok- |
| c6640 | 62 75 69 6c 74 69 6e 22 3e 40 65 72 72 6f 72 43 61 73 74 3c 2f 73 70 61 6e 3e 28 73 65 74 31 29 | builtin">@errorCast</span>(set1) |
| c6660 | 3b 0a 20 20 20 20 73 74 64 2e 64 65 62 75 67 2e 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 6c 61 73 | ;.....std.debug.print(<span.clas |
| c6680 | 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 76 61 6c 75 65 3a 20 7b 7d 5c 6e 26 71 75 | s="tok-str">"value:.{}\n&qu |
| c66a0 | 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 78 7d 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 | ot;</span>,..{x});.}</code></pre |
| c66c0 | 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 |
| c66e0 | 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 |
| c6700 | 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 |
| c6720 | 65 20 72 75 6e 74 69 6d 65 5f 69 6e 76 61 6c 69 64 5f 65 72 72 6f 72 5f 73 65 74 5f 63 61 73 74 | e.runtime_invalid_error_set_cast |
| c6740 | 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 69 6e 76 61 | .zig</kbd>.$.<kbd>./runtime_inva |
| c6760 | 6c 69 64 5f 65 72 72 6f 72 5f 73 65 74 5f 63 61 73 74 3c 2f 6b 62 64 3e 0a 74 68 72 65 61 64 20 | lid_error_set_cast</kbd>.thread. |
| c6780 | 31 30 39 36 35 38 35 20 70 61 6e 69 63 3a 20 69 6e 76 61 6c 69 64 20 65 72 72 6f 72 20 63 6f 64 | 1096585.panic:.invalid.error.cod |
| c67a0 | 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 |
| c67c0 | 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 72 75 6e 74 69 6d 65 5f 69 6e | y/dev/zig/doc/langref/runtime_in |
| c67e0 | 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 35 3a 32 31 3c 2f | valid_error_set_cast.zig:15:21</ |
| c6800 | 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 31 | span>:.<span.class="sgr-2m">0x11 |
| c6820 | 33 66 62 31 63 20 69 6e 20 66 6f 6f 20 28 72 75 6e 74 69 6d 65 5f 69 6e 76 61 6c 69 64 5f 65 72 | 3fb1c.in.foo.(runtime_invalid_er |
| c6840 | 72 6f 72 5f 73 65 74 5f 63 61 73 74 2e 7a 69 67 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 63 6f 6e | ror_set_cast.zig)</span>.....con |
| c6860 | 73 74 20 78 3a 20 53 65 74 32 20 3d 20 40 65 72 72 6f 72 43 61 73 74 28 73 65 74 31 29 3b 0a 20 | st.x:.Set2.=.@errorCast(set1);.. |
| c6880 | 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=" |
| c68a0 | 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 |
| c68c0 | 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 | gr-1m">/home/andy/dev/zig/doc/la |
| c68e0 | 6e 67 72 65 66 2f 72 75 6e 74 69 6d 65 5f 69 6e 76 61 6c 69 64 5f 65 72 72 6f 72 5f 73 65 74 5f | ngref/runtime_invalid_error_set_ |
| c6900 | 63 61 73 74 2e 7a 69 67 3a 31 32 3a 38 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 | cast.zig:12:8</span>:.<span.clas |
| c6920 | 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 31 33 65 38 35 37 20 69 6e 20 6d 61 69 6e 20 28 72 75 | s="sgr-2m">0x113e857.in.main.(ru |
| c6940 | 6e 74 69 6d 65 5f 69 6e 76 61 6c 69 64 5f 65 72 72 6f 72 5f 73 65 74 5f 63 61 73 74 2e 7a 69 67 | ntime_invalid_error_set_cast.zig |
| c6960 | 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 66 6f 6f 28 53 65 74 31 2e 42 29 3b 0a 20 20 20 20 20 20 | )</span>.....foo(Set1.B);....... |
| c6980 | 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>. |
| c69a0 | 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/ |
| c69c0 | 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 36 31 38 3a 32 32 | dev/zig/lib/std/start.zig:618:22 |
| c69e0 | 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 |
| c6a00 | 31 31 33 64 61 39 64 20 69 6e 20 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 20 | 113da9d.in.posixCallMainAndExit. |
| c6a20 | 28 73 74 64 2e 7a 69 67 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 6f 6f | (std.zig)</span>.............roo |
| c6a40 | 74 2e 6d 61 69 6e 28 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c | t.main();......................< |
| c6a60 | 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 |
| c6a80 | 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 | pan.class="sgr-1m">/home/andy/de |
| c6aa0 | 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 32 33 32 3a 35 3c 2f 73 | v/zig/lib/std/start.zig:232:5</s |
| c6ac0 | 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 31 33 | pan>:.<span.class="sgr-2m">0x113 |
| c6ae0 | 64 33 33 31 20 69 6e 20 5f 73 74 61 72 74 20 28 73 74 64 2e 7a 69 67 29 3c 2f 73 70 61 6e 3e 0a | d331.in._start.(std.zig)</span>. |
| c6b00 | 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 |
| c6b20 | 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 |
| c6b40 | 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" |
| c6b60 | 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 |
| c6b80 | 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 |
| c6ba0 | 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 |
| c6bc0 | 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>............. |
| c6be0 | 20 20 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 | ...<h3.id="Incorrect-Pointer-Ali |
| c6c00 | 67 6e 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 | gnment"><a.href="#toc-Incorrect- |
| c6c20 | 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 |
| c6c40 | 6e 74 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 | nter.Alignment</a>.<a.class="hdr |
| c6c60 | 22 20 68 72 65 66 3d 22 23 49 6e 63 6f 72 72 65 63 74 2d 50 6f 69 6e 74 65 72 2d 41 6c 69 67 6e | ".href="#Incorrect-Pointer-Align |
| c6c80 | 6d 65 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 | ment">..</a></h3>........<p>At.c |
| c6ca0 | 6f 6d 70 69 6c 65 2d 74 69 6d 65 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c | ompile-time:</p>.......<figure>< |
| c6cc0 | 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 |
| c6ce0 | 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 63 6f | .class="file">test_comptime_inco |
| c6d00 | 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 63 69 74 | rrect_pointer_alignment.zig</cit |
| c6d20 | 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. |
| c6d40 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 7b | class="tok-kw">comptime</span>.{ |
| c6d60 | 0a 20 20 20 20 3c 73 70 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< |
| c6d80 | 2f 73 70 61 6e 3e 20 70 74 72 3a 20 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | /span>.ptr:.*<span.class="tok-kw |
| c6da0 | 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- |
| c6dc0 | 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | number">1</span>).<span.class="t |
| c6de0 | 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 |
| c6e00 | 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 70 74 72 46 72 6f 6d 49 6e 74 3c 2f 73 70 61 | s="tok-builtin">@ptrFromInt</spa |
| c6e20 | 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 31 3c | n>(<span.class="tok-number">0x1< |
| c6e40 | 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 |
| c6e60 | 22 3e 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 | ">const</span>.aligned:.*<span.c |
| c6e80 | 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 |
| c6ea0 | 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 73 | .class="tok-number">4</span>).<s |
| c6ec0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 | pan.class="tok-type">i32</span>. |
| c6ee0 | 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 61 6c 69 | =.<span.class="tok-builtin">@ali |
| c6f00 | 67 6e 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 | gnCast</span>(ptr);....._.=.alig |
| c6f20 | 6e 65 64 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 | ned;.}</code></pre></figure><fig |
| c6f40 | 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 |
| c6f60 | 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>$ |
| c6f80 | 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 63 | .<kbd>zig.test.test_comptime_inc |
| c6fa0 | 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 62 | orrect_pointer_alignment.zig</kb |
| c6fc0 | 64 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e | d>.<span.class="sgr-1m">/home/an |
| c6fe0 | 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 63 6f 6d 70 | dy/dev/zig/doc/langref/test_comp |
| c7000 | 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 |
| c7020 | 2e 7a 69 67 3a 33 3a 34 37 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 | .zig:3:47:.</span><span.class="s |
| c7040 | 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 |
| c7060 | 73 3d 22 73 67 72 2d 31 6d 22 3e 70 6f 69 6e 74 65 72 20 61 64 64 72 65 73 73 20 30 78 31 20 69 | s="sgr-1m">pointer.address.0x1.i |
| c7080 | 73 20 6e 6f 74 20 61 6c 69 67 6e 65 64 20 74 6f 20 34 20 62 79 74 65 73 0a 3c 2f 73 70 61 6e 3e | s.not.aligned.to.4.bytes.</span> |
| c70a0 | 20 20 20 20 63 6f 6e 73 74 20 61 6c 69 67 6e 65 64 3a 20 2a 61 6c 69 67 6e 28 34 29 20 69 33 32 | ....const.aligned:.*align(4).i32 |
| c70c0 | 20 3d 20 40 61 6c 69 67 6e 43 61 73 74 28 70 74 72 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 | .=.@alignCast(ptr);............. |
| c70e0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ................................ |
| c7100 | 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 3c 2f 73 70 | ..<span.class="sgr-32m">^~~.</sp |
| c7120 | 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>...... |
| c7140 | 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 |
| c7160 | 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">< |
| c7180 | 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 69 6e 63 6f 72 72 | cite.class="file">runtime_incorr |
| c71a0 | 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> |
| c71c0 | 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 |
| c71e0 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6d 65 6d 20 3d 20 | ass="tok-kw">const</span>.mem.=. |
| c7200 | 3c 73 70 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 |
| c7220 | 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">& |
| c7240 | 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 3c 73 70 61 | quot;std"</span>).mem;.<spa |
| c7260 | 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 |
| c7280 | 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 |
| c72a0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 6d 61 69 6e 3c 2f 73 70 61 6e 3e 28 29 20 21 3c | .class="tok-fn">main</span>().!< |
| c72c0 | 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 |
| c72e0 | 3e 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 |
| c7300 | 3c 2f 73 70 61 6e 3e 20 61 72 72 61 79 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | </span>.array.<span.class="tok-k |
| c7320 | 77 22 3e 61 6c 69 67 6e 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | w">align</span>(<span.class="tok |
| c7340 | 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 29 20 3d 20 5b 5f 5d 3c 73 70 61 6e 20 63 6c | -number">4</span>).=.[_]<span.cl |
| c7360 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 7b 20 3c 73 70 61 6e | ass="tok-type">u32</span>{.<span |
| c7380 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 31 31 31 31 31 31 31 31 3c 2f | .class="tok-number">0x11111111</ |
| c73a0 | 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"> |
| c73c0 | 30 78 31 31 31 31 31 31 31 31 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 | 0x11111111</span>.};.....<span.c |
| c73e0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 62 79 74 65 73 | lass="tok-kw">const</span>.bytes |
| c7400 | 20 3d 20 6d 65 6d 2e 73 6c 69 63 65 41 73 42 79 74 65 73 28 61 72 72 61 79 5b 3c 73 70 61 6e 20 | .=.mem.sliceAsBytes(array[<span. |
| c7420 | 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 29 3b | class="tok-number">0</span>..]); |
| c7440 | 0a 20 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 |
| c7460 | 61 6e 3e 20 28 66 6f 6f 28 62 79 74 65 73 29 20 21 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | an>.(foo(bytes).!=.<span.class=" |
| c7480 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 31 31 31 31 31 31 31 31 3c 2f 73 70 61 6e 3e 29 20 3c | tok-number">0x11111111</span>).< |
| c74a0 | 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 |
| c74c0 | 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 |
| c74e0 | 61 6e 3e 2e 57 72 6f 6e 67 3b 0a 7d 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | an>.Wrong;.}.<span.class="tok-kw |
| c7500 | 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" |
| c7520 | 3e 66 6f 6f 3c 2f 73 70 61 6e 3e 28 62 79 74 65 73 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 | >foo</span>(bytes:.[]<span.class |
| c7540 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 | ="tok-type">u8</span>).<span.cla |
| c7560 | 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>.{.....< |
| c7580 | 73 70 61 6e 20 63 6c 61 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> |
| c75a0 | 20 73 6c 69 63 65 34 20 3d 20 62 79 74 65 73 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | .slice4.=.bytes[<span.class="tok |
| c75c0 | 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 22 | -number">1</span>..<span.class=" |
| c75e0 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 5d 3b 0a 20 20 20 20 3c 73 70 61 6e | tok-number">5</span>];.....<span |
| c7600 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 69 6e 74 | .class="tok-kw">const</span>.int |
| c7620 | 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 3c 73 70 61 6e 20 | _slice.=.mem.bytesAsSlice(<span. |
| c7640 | 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 |
| c7660 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 61 73 3c 2f 73 70 61 6e | an.class="tok-builtin">@as</span |
| c7680 | 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 61 6c 69 67 6e 3c 2f | >([]<span.class="tok-kw">align</ |
| c76a0 | 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 | span>(<span.class="tok-number">4 |
| c76c0 | 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"> |
| c76e0 | 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 6c | u8</span>,.<span.class="tok-buil |
| c7700 | 74 69 6e 22 3e 40 61 6c 69 67 6e 43 61 73 74 3c 2f 73 70 61 6e 3e 28 73 6c 69 63 65 34 29 29 29 | tin">@alignCast</span>(slice4))) |
| c7720 | 3b 0a 20 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 |
| c7740 | 6e 3c 2f 73 70 61 6e 3e 20 69 6e 74 5f 73 6c 69 63 65 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | n</span>.int_slice[<span.class=" |
| c7760 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 5d 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c | tok-number">0</span>];.}</code>< |
| c7780 | 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 |
| c77a0 | 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 |
| c77c0 | 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 |
| c77e0 | 64 2d 65 78 65 20 72 75 6e 74 69 6d 65 5f 69 6e 63 6f 72 72 65 63 74 5f 70 6f 69 6e 74 65 72 5f | d-exe.runtime_incorrect_pointer_ |
| c7800 | 61 6c 69 67 6e 6d 65 6e 74 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 24 20 3c 6b 62 64 3e 2e 2f 72 75 6e | alignment.zig</kbd>.$.<kbd>./run |
| c7820 | 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 |
| c7840 | 3c 2f 6b 62 64 3e 0a 74 68 72 65 61 64 20 31 30 39 37 38 36 36 20 70 61 6e 69 63 3a 20 69 6e 63 | </kbd>.thread.1097866.panic:.inc |
| c7860 | 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 73 67 | orrect.alignment.<span.class="sg |
| c7880 | 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e | r-1m">/home/andy/dev/zig/doc/lan |
| c78a0 | 67 72 65 66 2f 72 75 6e 74 69 6d 65 5f 69 6e 63 6f 72 72 65 63 74 5f 70 6f 69 6e 74 65 72 5f 61 | gref/runtime_incorrect_pointer_a |
| c78c0 | 6c 69 67 6e 6d 65 6e 74 2e 7a 69 67 3a 39 3a 36 34 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 | lignment.zig:9:64</span>:.<span. |
| c78e0 | 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 31 33 65 62 65 38 20 69 6e 20 66 6f 6f 20 | class="sgr-2m">0x113ebe8.in.foo. |
| c7900 | 28 72 75 6e 74 69 6d 65 5f 69 6e 63 6f 72 72 65 63 74 5f 70 6f 69 6e 74 65 72 5f 61 6c 69 67 6e | (runtime_incorrect_pointer_align |
| c7920 | 6d 65 6e 74 2e 7a 69 67 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 63 6f 6e 73 74 20 69 6e 74 5f 73 | ment.zig)</span>.....const.int_s |
| c7940 | 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 33 32 2c 20 40 61 73 | lice.=.mem.bytesAsSlice(u32,.@as |
| c7960 | 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 65 | ([]align(4).u8,.@alignCast(slice |
| c7980 | 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 20 | 4)));........................... |
| c79a0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ................................ |
| c79c0 | 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 |
| c79e0 | 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 |
| c7a00 | 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 72 75 6e 74 69 6d 65 5f | ndy/dev/zig/doc/langref/runtime_ |
| c7a20 | 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 67 3a | incorrect_pointer_alignment.zig: |
| c7a40 | 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 22 73 67 72 2d 32 6d | 5:12</span>:.<span.class="sgr-2m |
| c7a60 | 22 3e 30 78 31 31 33 64 33 64 32 20 69 6e 20 6d 61 69 6e 20 28 72 75 6e 74 69 6d 65 5f 69 6e 63 | ">0x113d3d2.in.main.(runtime_inc |
| c7a80 | 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 29 3c 2f 73 | orrect_pointer_alignment.zig)</s |
| c7aa0 | 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 31 31 31 | pan>.....if.(foo(bytes).!=.0x111 |
| c7ac0 | 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 20 20 20 | 11111).return.error.Wrong;...... |
| c7ae0 | 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 |
| c7b00 | 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/ |
| c7b20 | 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 36 | andy/dev/zig/lib/std/start.zig:6 |
| c7b40 | 32 37 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 72 2d 32 | 27:37</span>:.<span.class="sgr-2 |
| c7b60 | 6d 22 3e 30 78 31 31 33 64 62 61 39 20 69 6e 20 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 | m">0x113dba9.in.posixCallMainAnd |
| c7b80 | 45 78 69 74 20 28 73 74 64 2e 7a 69 67 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 20 | Exit.(std.zig)</span>........... |
| c7ba0 | 20 20 63 6f 6e 73 74 20 72 65 73 75 6c 74 20 3d 20 72 6f 6f 74 2e 6d 61 69 6e 28 29 20 63 61 74 | ..const.result.=.root.main().cat |
| c7bc0 | 63 68 20 7c 65 72 72 7c 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ch.|err|.{...................... |
| c7be0 | 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- |
| c7c00 | 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 |
| c7c20 | 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 | m">/home/andy/dev/zig/lib/std/st |
| c7c40 | 61 72 74 2e 7a 69 67 3a 32 33 32 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 | art.zig:232:5</span>:.<span.clas |
| c7c60 | 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 31 33 64 33 33 31 20 69 6e 20 5f 73 74 61 72 74 20 28 | s="sgr-2m">0x113d331.in._start.( |
| c7c80 | 73 74 64 2e 7a 69 67 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 | std.zig)</span>.....asm.volatile |
| c7ca0 | 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 |
| c7cc0 | 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 |
| c7ce0 | 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>: |
| c7d00 | 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.??? |
| c7d20 | 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 |
| c7d40 | 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 |
| c7d60 | 72 65 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 57 72 6f 6e 67 2d | re>...............<h3.id="Wrong- |
| c7d80 | 55 6e 69 6f 6e 2d 46 69 65 6c 64 2d 41 63 63 65 73 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f | Union-Field-Access"><a.href="#to |
| c7da0 | 63 2d 57 72 6f 6e 67 2d 55 6e 69 6f 6e 2d 46 69 65 6c 64 2d 41 63 63 65 73 73 22 3e 57 72 6f 6e | c-Wrong-Union-Field-Access">Wron |
| c7dc0 | 67 20 55 6e 69 6f 6e 20 46 69 65 6c 64 20 41 63 63 65 73 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 | g.Union.Field.Access</a>.<a.clas |
| c7de0 | 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 57 72 6f 6e 67 2d 55 6e 69 6f 6e 2d 46 69 65 6c 64 | s="hdr".href="#Wrong-Union-Field |
| c7e00 | 2d 41 63 63 65 73 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 | -Access">..</a></h3>........<p>A |
| c7e20 | 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 | t.compile-time:</p>.......<figur |
| c7e40 | 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 |
| c7e60 | 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 77 | ite.class="file">test_comptime_w |
| c7e80 | 72 6f 6e 67 5f 75 6e 69 6f 6e 5f 66 69 65 6c 64 5f 61 63 63 65 73 73 2e 7a 69 67 3c 2f 63 69 74 | rong_union_field_access.zig</cit |
| c7ea0 | 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. |
| c7ec0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 7b | class="tok-kw">comptime</span>.{ |
| c7ee0 | 0a 20 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 |
| c7f00 | 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 73 | pan>.f.=.Foo{..int.=.<span.class |
| c7f20 | 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 66 | ="tok-number">42</span>.};.....f |
| c7f40 | 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 |
| c7f60 | 22 3e 31 32 2e 33 34 3c 2f 73 70 61 6e 3e 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ">12.34</span>;.}..<span.class=" |
| c7f80 | 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 6e | tok-kw">const</span>.Foo.=.<span |
| c7fa0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 69 6f 6e 3c 2f 73 70 61 6e 3e 20 7b 0a 20 | .class="tok-kw">union</span>.{.. |
| c7fc0 | 20 20 20 66 6c 6f 61 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 | ...float:.<span.class="tok-type" |
| c7fe0 | 3e 66 33 32 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 69 6e 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 | >f32</span>,.....int:.<span.clas |
| c8000 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 2c 0a 7d 3b 3c 2f 63 6f 64 | s="tok-type">u32</span>,.};</cod |
| c8020 | 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 |
| c8040 | 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 |
| c8060 | 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 |
| c8080 | 65 73 74 20 74 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 77 72 6f 6e 67 5f 75 6e 69 6f 6e 5f 66 69 | est.test_comptime_wrong_union_fi |
| c80a0 | 65 6c 64 5f 61 63 63 65 73 73 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | eld_access.zig</kbd>.<span.class |
| c80c0 | 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 | ="sgr-1m">/home/andy/dev/zig/doc |
| c80e0 | 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 77 72 6f 6e 67 5f 75 6e 69 | /langref/test_comptime_wrong_uni |
| c8100 | 6f 6e 5f 66 69 65 6c 64 5f 61 63 63 65 73 73 2e 7a 69 67 3a 33 3a 36 3a 20 3c 2f 73 70 61 6e 3e | on_field_access.zig:3:6:.</span> |
| c8120 | 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 |
| c8140 | 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 61 63 63 65 73 73 20 | pan><span.class="sgr-1m">access. |
| c8160 | 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 65 | of.union.field.'float'.while.fie |
| c8180 | 6c 64 20 27 69 6e 74 27 20 69 73 20 61 63 74 69 76 65 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 66 2e | ld.'int'.is.active.</span>....f. |
| c81a0 | 66 6c 6f 61 74 20 3d 20 31 32 2e 33 34 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | float.=.12.34;.....<span.class=" |
| c81c0 | 73 67 72 2d 33 32 6d 22 3e 7e 5e 7e 7e 7e 7e 7e 0a 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c | sgr-32m">~^~~~~~.</span><span.cl |
| c81e0 | 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f | ass="sgr-1m">/home/andy/dev/zig/ |
| c8200 | 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 77 72 6f 6e 67 5f | doc/langref/test_comptime_wrong_ |
| c8220 | 75 6e 69 6f 6e 5f 66 69 65 6c 64 5f 61 63 63 65 73 73 2e 7a 69 67 3a 36 3a 31 33 3a 20 3c 2f 73 | union_field_access.zig:6:13:.</s |
| c8240 | 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 36 6d 22 3e 6e 6f 74 65 3a 20 | pan><span.class="sgr-36m">note:. |
| c8260 | 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 69 6f | </span><span.class="sgr-1m">unio |
| c8280 | 6e 20 64 65 63 6c 61 72 65 64 20 68 65 72 65 0a 3c 2f 73 70 61 6e 3e 63 6f 6e 73 74 20 46 6f 6f | n.declared.here.</span>const.Foo |
| c82a0 | 20 3d 20 75 6e 69 6f 6e 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | .=.union.{.............<span.cla |
| c82c0 | 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 7e 7e 7e 7e 0a 3c 2f 73 70 61 6e 3e 0a 3c 2f 73 61 6d | ss="sgr-32m">^~~~~.</span>.</sam |
| c82e0 | 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 74 20 72 | p></pre></figure>........<p>At.r |
| c8300 | 75 6e 74 69 6d 65 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 | untime:</p>.......<figure><figca |
| c8320 | 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 |
| c8340 | 73 3d 22 66 69 6c 65 22 3e 72 75 6e 74 69 6d 65 5f 77 72 6f 6e 67 5f 75 6e 69 6f 6e 5f 66 69 65 | s="file">runtime_wrong_union_fie |
| c8360 | 6c 64 5f 61 63 63 65 73 73 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e | ld_access.zig</cite></figcaption |
| c8380 | 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" |
| c83a0 | 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= |
| c83c0 | 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 |
| c83e0 | 61 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 |
| c8400 | 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 77 | t;</span>);..<span.class="tok-kw |
| c8420 | 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 |
| c8440 | 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 6f | ="tok-kw">union</span>.{.....flo |
| c8460 | 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 2f | at:.<span.class="tok-type">f32</ |
| c8480 | 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 6b | span>,.....int:.<span.class="tok |
| c84a0 | 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 | -type">u32</span>,.};..<span.cla |
| c84c0 | 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 |
| c84e0 | 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 |
| c8500 | 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 |
| c8520 | 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>.{... |
| c8540 | 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 |
| c8560 | 3e 20 66 20 3d 20 46 6f 6f 7b 20 2e 69 6e 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | >.f.=.Foo{..int.=.<span.class="t |
| c8580 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 32 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 20 20 20 20 62 61 72 28 | ok-number">42</span>.};.....bar( |
| c85a0 | 26 61 6d 70 3b 66 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | &f);.}..<span.class="tok-kw" |
| c85c0 | 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"> |
| c85e0 | 62 61 72 3c 2f 73 70 61 6e 3e 28 66 3a 20 2a 46 6f 6f 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | bar</span>(f:.*Foo).<span.class= |
| c8600 | 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 66 2e 66 | "tok-type">void</span>.{.....f.f |
| c8620 | 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 22 3e | loat.=.<span.class="tok-number"> |
| c8640 | 31 32 2e 33 34 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 73 74 64 2e 64 65 62 75 67 2e 70 72 69 6e | 12.34</span>;.....std.debug.prin |
| c8660 | 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 |
| c8680 | 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 |
| c86a0 | 74 7d 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 69 67 | t});.}</code></pre></figure><fig |
| c86c0 | 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 |
| c86e0 | 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>$ |
| c8700 | 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 77 72 6f 6e | .<kbd>zig.build-exe.runtime_wron |
| c8720 | 67 5f 75 6e 69 6f 6e 5f 66 69 65 6c 64 5f 61 63 63 65 73 73 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 24 | g_union_field_access.zig</kbd>.$ |
| c8740 | 20 3c 6b 62 64 3e 2e 2f 72 75 6e 74 69 6d 65 5f 77 72 6f 6e 67 5f 75 6e 69 6f 6e 5f 66 69 65 6c | .<kbd>./runtime_wrong_union_fiel |
| c8760 | 64 5f 61 63 63 65 73 73 3c 2f 6b 62 64 3e 0a 74 68 72 65 61 64 20 31 30 39 33 33 35 32 20 70 61 | d_access</kbd>.thread.1093352.pa |
| c8780 | 6e 69 63 3a 20 61 63 63 65 73 73 20 6f 66 20 75 6e 69 6f 6e 20 66 69 65 6c 64 20 27 66 6c 6f 61 | nic:.access.of.union.field.'floa |
| c87a0 | 74 27 20 77 68 69 6c 65 20 66 69 65 6c 64 20 27 69 6e 74 27 20 69 73 20 61 63 74 69 76 65 0a 3c | t'.while.field.'int'.is.active.< |
| c87c0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 | span.class="sgr-1m">/home/andy/d |
| c87e0 | 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 72 75 6e 74 69 6d 65 5f 77 72 6f 6e 67 | ev/zig/doc/langref/runtime_wrong |
| c8800 | 5f 75 6e 69 6f 6e 5f 66 69 65 6c 64 5f 61 63 63 65 73 73 2e 7a 69 67 3a 31 34 3a 36 3c 2f 73 70 | _union_field_access.zig:14:6</sp |
| c8820 | 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 31 33 66 | an>:.<span.class="sgr-2m">0x113f |
| c8840 | 61 66 65 20 69 6e 20 62 61 72 20 28 72 75 6e 74 69 6d 65 5f 77 72 6f 6e 67 5f 75 6e 69 6f 6e 5f | afe.in.bar.(runtime_wrong_union_ |
| c8860 | 66 69 65 6c 64 5f 61 63 63 65 73 73 2e 7a 69 67 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 66 2e 66 | field_access.zig)</span>.....f.f |
| c8880 | 6c 6f 61 74 20 3d 20 31 32 2e 33 34 3b 0a 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | loat.=.12.34;......<span.class=" |
| c88a0 | 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 |
| c88c0 | 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 | gr-1m">/home/andy/dev/zig/doc/la |
| c88e0 | 6e 67 72 65 66 2f 72 75 6e 74 69 6d 65 5f 77 72 6f 6e 67 5f 75 6e 69 6f 6e 5f 66 69 65 6c 64 5f | ngref/runtime_wrong_union_field_ |
| c8900 | 61 63 63 65 73 73 2e 7a 69 67 3a 31 30 3a 38 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c | access.zig:10:8</span>:.<span.cl |
| c8920 | 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 31 33 65 38 37 66 20 69 6e 20 6d 61 69 6e 20 28 | ass="sgr-2m">0x113e87f.in.main.( |
| c8940 | 72 75 6e 74 69 6d 65 5f 77 72 6f 6e 67 5f 75 6e 69 6f 6e 5f 66 69 65 6c 64 5f 61 63 63 65 73 73 | runtime_wrong_union_field_access |
| c8960 | 2e 7a 69 67 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 62 61 72 28 26 61 6d 70 3b 66 29 3b 0a 20 20 | .zig)</span>.....bar(&f);... |
| c8980 | 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 |
| c89a0 | 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 |
| c89c0 | 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 36 31 | ndy/dev/zig/lib/std/start.zig:61 |
| c89e0 | 38 3a 32 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d | 8:22</span>:.<span.class="sgr-2m |
| c8a00 | 22 3e 30 78 31 31 33 64 61 39 64 20 69 6e 20 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 | ">0x113da9d.in.posixCallMainAndE |
| c8a20 | 78 69 74 20 28 73 74 64 2e 7a 69 67 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 20 20 | xit.(std.zig)</span>............ |
| c8a40 | 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();................... |
| c8a60 | 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 |
| c8a80 | 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 |
| c8aa0 | 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 32 33 32 3a | y/dev/zig/lib/std/start.zig:232: |
| c8ac0 | 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 |
| c8ae0 | 78 31 31 33 64 33 33 31 20 69 6e 20 5f 73 74 61 72 74 20 28 73 74 64 2e 7a 69 67 29 3c 2f 73 70 | x113d331.in._start.(std.zig)</sp |
| c8b00 | 61 6e 3e 0a 20 20 20 20 61 73 6d 20 76 6f 6c 61 74 69 6c 65 20 28 73 77 69 74 63 68 20 28 6e 61 | an>.....asm.volatile.(switch.(na |
| c8b20 | 74 69 76 65 5f 61 72 63 68 29 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 | tive_arch).{.....<span.class="sg |
| c8b40 | 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 |
| c8b60 | 2d 31 6d 22 3e 3f 3f 3f 3a 3f 3a 3f 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 | -1m">???:?:?</span>:.<span.class |
| c8b80 | 3d 22 73 67 72 2d 32 6d 22 3e 30 78 30 20 69 6e 20 3f 3f 3f 20 28 3f 3f 3f 29 3c 2f 73 70 61 6e | ="sgr-2m">0x0.in.???.(???)</span |
| c8ba0 | 3e 0a 28 70 72 6f 63 65 73 73 20 74 65 72 6d 69 6e 61 74 65 64 20 62 79 20 73 69 67 6e 61 6c 29 | >.(process.terminated.by.signal) |
| c8bc0 | 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>........< |
| c8be0 | 70 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 | p>.......This.safety.is.not.avai |
| c8c00 | 6c 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 | lable.for.<code><span.class="tok |
| c8c20 | 2d 6b 77 22 3e 65 78 74 65 72 6e 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6f 72 20 3c 63 6f | -kw">extern</span></code>.or.<co |
| c8c40 | 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 61 63 6b 65 64 3c 2f | de><span.class="tok-kw">packed</ |
| c8c60 | 73 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 | span></code>.unions........</p>. |
| c8c80 | 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 74 68 65 20 61 63 | ......<p>.......To.change.the.ac |
| c8ca0 | 74 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 | tive.field.of.a.union,.assign.th |
| c8cc0 | 65 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 | e.entire.union,.like.this:...... |
| c8ce0 | 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. |
| c8d00 | 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 |
| c8d20 | 65 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 | e">change_active_union_field.zig |
| c8d40 | 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>< |
| c8d60 | 73 70 61 6e 20 63 6c 61 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> |
| c8d80 | 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" |
| c8da0 | 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 |
| c8dc0 | 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>);.. |
| c8de0 | 3c 73 70 61 6e 20 63 6c 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 |
| c8e00 | 3e 20 46 6f 6f 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 69 | >.Foo.=.<span.class="tok-kw">uni |
| c8e20 | 6f 6e 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 66 6c 6f 61 74 3a 20 3c 73 70 61 6e 20 63 6c 61 | on</span>.{.....float:.<span.cla |
| c8e40 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 69 6e | ss="tok-type">f32</span>,.....in |
| c8e60 | 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 | t:.<span.class="tok-type">u32</s |
| c8e80 | 70 61 6e 3e 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 | pan>,.};..<span.class="tok-kw">p |
| c8ea0 | 75 62 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 | ub</span>.<span.class="tok-kw">f |
| c8ec0 | 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 6d 61 | n</span>.<span.class="tok-fn">ma |
| c8ee0 | 69 6e 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | in</span>().<span.class="tok-typ |
| c8f00 | 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 |
| c8f20 | 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 66 20 3d 20 46 6f 6f 7b 20 2e 69 | ="tok-kw">var</span>.f.=.Foo{..i |
| c8f40 | 6e 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 32 | nt.=.<span.class="tok-number">42 |
| c8f60 | 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 0a 3c | </span>.};.....bar(&f);.}..< |
| c8f80 | 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 |
| c8fa0 | 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 66 3a | pan.class="tok-fn">bar</span>(f: |
| c8fc0 | 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 76 6f | .*Foo).<span.class="tok-type">vo |
| c8fe0 | 69 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 | id</span>.{.....f.*.=.Foo{..floa |
| c9000 | 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. |
| c9020 | 33 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 | 34</span>.};.....std.debug.print |
| c9040 | 28 3c 73 70 61 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 |
| c9060 | 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 74 | ue:.{}\n"</span>,..{f.float |
| c9080 | 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 |
| c90a0 | 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" |
| c90c0 | 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>$. |
| c90e0 | 3c 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 | <kbd>zig.build-exe.change_active |
| c9100 | 5f 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 | _union_field.zig</kbd>.$.<kbd>./ |
| c9120 | 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 3c 2f 6b 62 64 3e 0a | change_active_union_field</kbd>. |
| c9140 | 76 61 6c 75 65 3a 20 31 32 2e 33 34 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 | value:.12.34.</samp></pre></figu |
| c9160 | 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 74 | re>........<p>.......To.change.t |
| c9180 | 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 20 | he.active.field.of.a.union.when. |
| c91a0 | 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 64 | a.meaningful.value.for.the.field |
| c91c0 | 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 66 | .is.not.known,.......use.<a.href |
| c91e0 | 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 6b | ="#undefined">undefined</a>,.lik |
| c9200 | 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 |
| c9220 | 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 |
| c9240 | 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 65 | te.class="file">undefined_active |
| c9260 | 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 74 | _union_field.zig</cite></figcapt |
| c9280 | 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- |
| c92a0 | 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 |
| c92c0 | 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>( |
| c92e0 | 3c 73 70 61 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& |
| c9300 | 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 |
| c9320 | 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 6c | -kw">const</span>.Foo.=.<span.cl |
| c9340 | 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 20 | ass="tok-kw">union</span>.{..... |
| c9360 | 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 33 | float:.<span.class="tok-type">f3 |
| c9380 | 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 22 | 2</span>,.....int:.<span.class=" |
| c93a0 | 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 20 | tok-type">u32</span>,.};..<span. |
| c93c0 | 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. |
| c93e0 | 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 |
| c9400 | 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 |
| c9420 | 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>.{ |
| c9440 | 0a 20 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 |
| c9460 | 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 73 | pan>.f.=.Foo{..int.=.<span.class |
| c9480 | 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 66 | ="tok-number">42</span>.};.....f |
| c94a0 | 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 6f | .=.Foo{..float.=.<span.class="to |
| c94c0 | 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 20 | k-null">undefined</span>.};..... |
| c94e0 | 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 74 | bar(&f);.....std.debug.print |
| c9500 | 28 3c 73 70 61 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 |
| c9520 | 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 74 | ue:.{}\n"</span>,..{f.float |
| c9540 | 7d 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f | });.}..<span.class="tok-kw">fn</ |
| c9560 | 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 2f | span>.<span.class="tok-fn">bar</ |
| c9580 | 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 2d | span>(f:.*Foo).<span.class="tok- |
| c95a0 | 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 20 | type">void</span>.{.....f.float. |
| c95c0 | 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 2e 33 34 | =.<span.class="tok-number">12.34 |
| c95e0 | 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> |
| c9600 | 3c 66 69 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 |
| c9620 | 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 |
| c9640 | 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 65 | mp>$.<kbd>zig.build-exe.undefine |
| c9660 | 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 24 | d_active_union_field.zig</kbd>.$ |
| c9680 | 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 66 | .<kbd>./undefined_active_union_f |
| c96a0 | 69 65 6c 64 3c 2f 6b 62 64 3e 0a 76 61 6c 75 65 3a 20 31 32 2e 33 34 0a 3c 2f 73 61 6d 70 3e 3c | ield</kbd>.value:.12.34.</samp>< |
| c96c0 | 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 |
| c96e0 | 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 22 3e | o:</p><ul>.<li><a.href="#union"> |
| c9700 | 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 78 74 | union</a></li>.<li><a.href="#ext |
| c9720 | 65 72 6e 2d 75 6e 69 6f 6e 22 3e 65 78 74 65 72 6e 20 75 6e 69 6f 6e 3c 2f 61 3e 3c 2f 6c 69 3e | ern-union">extern.union</a></li> |
| c9740 | 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 4f 75 | .</ul>................<h3.id="Ou |
| c9760 | 74 2d 6f 66 2d 42 6f 75 6e 64 73 2d 46 6c 6f 61 74 2d 74 6f 2d 49 6e 74 65 67 65 72 2d 43 61 73 | t-of-Bounds-Float-to-Integer-Cas |
| c9780 | 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 73 2d 46 | t"><a.href="#toc-Out-of-Bounds-F |
| c97a0 | 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 42 6f 75 | loat-to-Integer-Cast">Out.of.Bou |
| c97c0 | 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 20 3c 61 | nds.Float.to.Integer.Cast</a>.<a |
| c97e0 | 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 75 6e 64 | .class="hdr".href="#Out-of-Bound |
| c9800 | 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 61 3e 3c | s-Float-to-Integer-Cast">..</a>< |
| c9820 | 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 70 70 65 | /h3>........<p>.......This.happe |
| c9840 | 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 20 69 6e | ns.when.casting.a.float.to.an.in |
| c9860 | 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 61 6c 75 | teger.where.the.float.has.a.valu |
| c9880 | 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 79 70 65 | e.outside.the.......integer.type |
| c98a0 | 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 3e 41 74 | 's.range........</p>.......<p>At |
| c98c0 | 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 |
| c98e0 | 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 |
| c9900 | 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 6f 75 | te.class="file">test_comptime_ou |
| c9920 | 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 63 61 73 | t_of_bounds_float_to_integer_cas |
| c9940 | 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 3c 63 | t.zig</cite></figcaption><pre><c |
| c9960 | 6f 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 |
| c9980 | 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- |
| c99a0 | 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 20 63 6c | kw">const</span>.float:.<span.cl |
| c99c0 | 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 70 61 | ass="tok-type">f32</span>.=.<spa |
| c99e0 | 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 39 36 3c | n.class="tok-number">4294967296< |
| c9a00 | 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" |
| c9a20 | 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 73 3d 22 | >const</span>.int:.<span.class=" |
| c9a40 | 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 | tok-type">i32</span>.=.<span.cla |
| c9a60 | 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 74 3c 2f | ss="tok-builtin">@intFromFloat</ |
| c9a80 | 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 2f 63 6f | span>(float);....._.=.int;.}</co |
| c9aa0 | 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 |
| c9ac0 | 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 |
| c9ae0 | 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. |
| c9b00 | 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 6e 64 73 | test.test_comptime_out_of_bounds |
| c9b20 | 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 62 64 3e | _float_to_integer_cast.zig</kbd> |
| c9b40 | 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 |
| c9b60 | 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 63 6f 6d 70 74 69 | /dev/zig/doc/langref/test_compti |
| c9b80 | 6d 65 5f 6f 75 74 5f 6f 66 5f 62 6f 75 6e 64 73 5f 66 6c 6f 61 74 5f 74 6f 5f 69 6e 74 65 67 65 | me_out_of_bounds_float_to_intege |
| c9ba0 | 72 5f 63 61 73 74 2e 7a 69 67 3a 33 3a 33 36 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c | r_cast.zig:3:36:.</span><span.cl |
| c9bc0 | 61 73 73 3d 22 73 67 72 2d 33 31 6d 22 3e 65 72 72 6f 72 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 | ass="sgr-31m">error:.</span><spa |
| c9be0 | 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 66 6c 6f 61 74 20 76 61 6c 75 65 20 27 34 32 | n.class="sgr-1m">float.value.'42 |
| c9c00 | 39 34 39 36 37 32 39 36 27 20 63 61 6e 6e 6f 74 20 62 65 20 73 74 6f 72 65 64 20 69 6e 20 69 6e | 94967296'.cannot.be.stored.in.in |
| c9c20 | 74 65 67 65 72 20 74 79 70 65 20 27 69 33 32 27 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 63 6f 6e 73 | teger.type.'i32'.</span>....cons |
| c9c40 | 74 20 69 6e 74 3a 20 69 33 32 20 3d 20 40 69 6e 74 46 72 6f 6d 46 6c 6f 61 74 28 66 6c 6f 61 74 | t.int:.i32.=.@intFromFloat(float |
| c9c60 | 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 | );.............................. |
| c9c80 | 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 7e 7e 7e | ......<span.class="sgr-32m">^~~~ |
| c9ca0 | 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 72 65 3e | ~.</span>.</samp></pre></figure> |
| c9cc0 | 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>...... |
| c9ce0 | 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- |
| c9d00 | 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_ |
| c9d20 | 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 63 | out_of_bounds_float_to_integer_c |
| c9d40 | 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 3e | ast.zig</cite></figcaption><pre> |
| c9d60 | 3c 63 6f 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</ |
| c9d80 | 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 |
| c9da0 | 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</ |
| c9dc0 | 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 |
| c9de0 | 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 |
| c9e00 | 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 66 6c 6f 61 74 3a 20 3c 73 70 61 6e 20 63 6c | k-kw">var</span>.float:.<span.cl |
| c9e20 | 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 70 61 | ass="tok-type">f32</span>.=.<spa |
| c9e40 | 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 39 36 3c | n.class="tok-number">4294967296< |
| c9e60 | 2f 73 70 61 6e 3e 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 | /span>;.<span.class="tok-comment |
| c9e80 | 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 20 5f 20 | ">//.runtime-known</span>....._. |
| c9ea0 | 3d 20 26 61 6d 70 3b 66 6c 6f 61 74 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | =.&float;.....<span.class="t |
| c9ec0 | 6f 6b 2d 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 | ok-kw">const</span>.int:.<span.c |
| c9ee0 | 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 |
| c9f00 | 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 |
| c9f20 | 6c 6f 61 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 | loat</span>(float);....._.=.int; |
| c9f40 | 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> |
| c9f60 | 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 |
| c9f80 | 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 |
| c9fa0 | 64 3e 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 72 75 6e 74 69 6d 65 5f 6f 75 74 5f 6f 66 5f 62 | d>zig.build-exe.runtime_out_of_b |
| c9fc0 | 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 2e 7a 69 67 3c | ounds_float_to_integer_cast.zig< |
| c9fe0 | 2f 6b 62 64 3e 0a 24 20 3c 6b 62 64 3e 2e 2f 72 75 6e 74 69 6d 65 5f 6f 75 74 5f 6f 66 5f 62 6f | /kbd>.$.<kbd>./runtime_out_of_bo |
| ca000 | 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 3c 2f 6b 62 64 3e | unds_float_to_integer_cast</kbd> |
| ca020 | 0a 74 68 72 65 61 64 20 31 31 30 31 32 37 36 20 70 61 6e 69 63 3a 20 69 6e 74 65 67 65 72 20 70 | .thread.1101276.panic:.integer.p |
| ca040 | 61 72 74 20 6f 66 20 66 6c 6f 61 74 69 6e 67 20 70 6f 69 6e 74 20 76 61 6c 75 65 20 6f 75 74 20 | art.of.floating.point.value.out. |
| ca060 | 6f 66 20 62 6f 75 6e 64 73 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f | of.bounds.<span.class="sgr-1m">/ |
| ca080 | 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 72 75 | home/andy/dev/zig/doc/langref/ru |
| ca0a0 | 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 74 | ntime_out_of_bounds_float_to_int |
| ca0c0 | 65 67 65 72 5f 63 61 73 74 2e 7a 69 67 3a 34 3a 32 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e | eger_cast.zig:4:22</span>:.<span |
| ca0e0 | 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 31 33 65 38 62 32 20 69 6e 20 6d 61 69 | .class="sgr-2m">0x113e8b2.in.mai |
| ca100 | 6e 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 61 74 5f 74 | n.(runtime_out_of_bounds_float_t |
| ca120 | 6f 5f 69 6e 74 65 67 65 72 5f 63 61 73 74 2e 7a 69 67 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 63 | o_integer_cast.zig)</span>.....c |
| ca140 | 6f 6e 73 74 20 69 6e 74 3a 20 69 33 32 20 3d 20 40 69 6e 74 46 72 6f 6d 46 6c 6f 61 74 28 66 6c | onst.int:.i32.=.@intFromFloat(fl |
| ca160 | 6f 61 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 3c 73 70 61 6e | oat);......................<span |
| ca180 | 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. |
| ca1a0 | 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 | class="sgr-1m">/home/andy/dev/zi |
| ca1c0 | 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 36 31 38 3a 32 32 3c 2f 73 70 61 6e | g/lib/std/start.zig:618:22</span |
| ca1e0 | 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 31 33 64 61 39 | >:.<span.class="sgr-2m">0x113da9 |
| ca200 | 64 20 69 6e 20 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 20 28 73 74 64 2e 7a | d.in.posixCallMainAndExit.(std.z |
| ca220 | 69 67 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 | ig)</span>.............root.main |
| ca240 | 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 |
| ca260 | 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 |
| ca280 | 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f | ass="sgr-1m">/home/andy/dev/zig/ |
| ca2a0 | 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 32 33 32 3a 35 3c 2f 73 70 61 6e 3e 3a 20 | lib/std/start.zig:232:5</span>:. |
| ca2c0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 31 33 64 33 33 31 20 69 | <span.class="sgr-2m">0x113d331.i |
| ca2e0 | 6e 20 5f 73 74 61 72 74 20 28 73 74 64 2e 7a 69 67 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 61 73 | n._start.(std.zig)</span>.....as |
| ca300 | 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) |
| ca320 | 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">^</ |
| ca340 | 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">???:? |
| ca360 | 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"> |
| ca380 | 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 |
| ca3a0 | 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></ |
| ca3c0 | 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 33 | pre></figure>................<h3 |
| ca3e0 | 20 69 64 3d 22 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 | .id="Pointer-Cast-Invalid-Null"> |
| ca400 | 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 50 6f 69 6e 74 65 72 2d 43 61 73 74 2d 49 6e 76 61 6c | <a.href="#toc-Pointer-Cast-Inval |
| ca420 | 69 64 2d 4e 75 6c 6c 22 3e 50 6f 69 6e 74 65 72 20 43 61 73 74 20 49 6e 76 61 6c 69 64 20 4e 75 | id-Null">Pointer.Cast.Invalid.Nu |
| ca440 | 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 50 6f 69 | ll</a>.<a.class="hdr".href="#Poi |
| ca460 | 6e 74 65 72 2d 43 61 73 74 2d 49 6e 76 61 6c 69 64 2d 4e 75 6c 6c 22 3e c2 a7 3c 2f 61 3e 3c 2f | nter-Cast-Invalid-Null">..</a></ |
| ca480 | 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 70 70 65 6e | h3>........<p>.......This.happen |
| ca4a0 | 73 20 77 68 65 6e 20 63 61 73 74 69 6e 67 20 61 20 70 6f 69 6e 74 65 72 20 77 69 74 68 20 74 68 | s.when.casting.a.pointer.with.th |
| ca4c0 | 65 20 61 64 64 72 65 73 73 20 30 20 74 6f 20 61 20 70 6f 69 6e 74 65 72 20 77 68 69 63 68 20 6d | e.address.0.to.a.pointer.which.m |
| ca4e0 | 61 79 20 6e 6f 74 20 68 61 76 65 20 74 68 65 20 61 64 64 72 65 73 73 20 30 2e 0a 20 20 20 20 20 | ay.not.have.the.address.0....... |
| ca500 | 20 46 6f 72 20 65 78 61 6d 70 6c 65 2c 20 3c 61 20 68 72 65 66 3d 22 23 43 2d 50 6f 69 6e 74 65 | .For.example,.<a.href="#C-Pointe |
| ca520 | 72 73 22 3e 43 20 50 6f 69 6e 74 65 72 73 3c 2f 61 3e 2c 20 3c 61 20 68 72 65 66 3d 22 23 4f 70 | rs">C.Pointers</a>,.<a.href="#Op |
| ca540 | 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 |
| ca560 | 72 73 3c 2f 61 3e 2c 20 61 6e 64 20 3c 61 20 68 72 65 66 3d 22 23 61 6c 6c 6f 77 7a 65 72 6f 22 | rs</a>,.and.<a.href="#allowzero" |
| ca580 | 3e 61 6c 6c 6f 77 7a 65 72 6f 3c 2f 61 3e 20 70 6f 69 6e 74 65 72 73 0a 20 20 20 20 20 20 61 6c | >allowzero</a>.pointers.......al |
| ca5a0 | 6c 6f 77 20 61 64 64 72 65 73 73 20 7a 65 72 6f 2c 20 62 75 74 20 6e 6f 72 6d 61 6c 20 3c 61 20 | low.address.zero,.but.normal.<a. |
| ca5c0 | 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 20 64 6f | href="#Pointers">Pointers</a>.do |
| ca5e0 | 20 6e 6f 74 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 41 74 20 63 6f 6d | .not........</p>.......<p>At.com |
| ca600 | 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 |
| ca620 | 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 |
| ca640 | 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 5f 63 6f 6d 70 74 69 6d 65 5f 69 6e 76 61 6c 69 | lass="file">test_comptime_invali |
| ca660 | 64 5f 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 | d_null_pointer_cast.zig</cite></ |
| ca680 | 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 |
| ca6a0 | 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>.{.... |
| ca6c0 | 20 3c 73 70 61 6e 20 63 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 |
| ca6e0 | 6e 3e 20 6f 70 74 5f 70 74 72 3a 20 3f 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | n>.opt_ptr:.?*<span.class="tok-t |
| ca700 | 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 |
| ca720 | 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 | ok-null">null</span>;.....<span. |
| ca740 | 63 6c 61 73 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 | class="tok-kw">const</span>.ptr: |
| ca760 | 20 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 | .*<span.class="tok-type">i32</sp |
| ca780 | 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 3e | an>.=.<span.class="tok-builtin"> |
| ca7a0 | 40 70 74 72 43 61 73 74 3c 2f 73 70 61 6e 3e 28 6f 70 74 5f 70 74 72 29 3b 0a 20 20 20 20 5f 20 | @ptrCast</span>(opt_ptr);....._. |
| ca7c0 | 3d 20 70 74 72 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 | =.ptr;.}</code></pre></figure><f |
| ca7e0 | 69 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 |
| ca800 | 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 |
| ca820 | 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 69 | >$.<kbd>zig.test.test_comptime_i |
| ca840 | 6e 76 61 6c 69 64 5f 6e 75 6c 6c 5f 70 6f 69 6e 74 65 72 5f 63 61 73 74 2e 7a 69 67 3c 2f 6b 62 | nvalid_null_pointer_cast.zig</kb |
| ca860 | 64 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e | d>.<span.class="sgr-1m">/home/an |
| ca880 | 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 63 6f 6d 70 | dy/dev/zig/doc/langref/test_comp |
| ca8a0 | 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 7a | time_invalid_null_pointer_cast.z |
| ca8c0 | 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 72 | ig:3:32:.</span><span.class="sgr |
| ca8e0 | 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= |
| ca900 | 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 20 | "sgr-1m">null.pointer.casted.to. |
| ca920 | 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 72 | type.'*i32'.</span>....const.ptr |
| ca940 | 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);..... |
| ca960 | 20 20 20 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 |
| ca980 | 20 63 6c 61 73 73 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 7e 7e 7e 7e 7e 7e 0a 3c 2f 73 70 61 6e 3e | .class="sgr-32m">^~~~~~~.</span> |
| ca9a0 | 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>........< |
| ca9c0 | 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> |
| ca9e0 | 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 |
| caa00 | 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 6e | e.class="file">runtime_invalid_n |
| caa20 | 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 67 | ull_pointer_cast.zig</cite></fig |
| caa40 | 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=" |
| caa60 | 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=" |
| caa80 | 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 |
| caaa0 | 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 |
| caac0 | 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 |
| caae0 | 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 70 | pan.class="tok-kw">var</span>.op |
| cab00 | 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 3e | t_ptr:.?*<span.class="tok-type"> |
| cab20 | 69 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | i32</span>.=.<span.class="tok-nu |
| cab40 | 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 70 | ll">null</span>;....._.=.&op |
| cab60 | 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 3e | t_ptr;.....<span.class="tok-kw"> |
| cab80 | 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 22 | const</span>.ptr:.*<span.class=" |
| caba0 | 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 | tok-type">i32</span>.=.<span.cla |
| cabc0 | 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 70 74 72 43 61 73 74 3c 2f 73 70 61 6e 3e | ss="tok-builtin">@ptrCast</span> |
| cabe0 | 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 3e | (opt_ptr);....._.=.ptr;.}</code> |
| cac00 | 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 |
| cac20 | 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 |
| cac40 | 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 |
| cac60 | 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 6e | ld-exe.runtime_invalid_null_poin |
| cac80 | 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 74 | ter_cast.zig</kbd>.$.<kbd>./runt |
| caca0 | 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 6b | ime_invalid_null_pointer_cast</k |
| cacc0 | 62 64 3e 0a 74 68 72 65 61 64 20 31 31 30 30 32 30 37 20 70 61 6e 69 63 3a 20 63 61 73 74 20 63 | bd>.thread.1100207.panic:.cast.c |
| cace0 | 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 63 | auses.pointer.to.be.null.<span.c |
| cad00 | 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 | lass="sgr-1m">/home/andy/dev/zig |
| cad20 | 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 6c | /doc/langref/runtime_invalid_nul |
| cad40 | 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 20 | l_pointer_cast.zig:4:23</span>:. |
| cad60 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 31 33 65 38 36 61 20 69 | <span.class="sgr-2m">0x113e86a.i |
| cad80 | 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 69 | n.main.(runtime_invalid_null_poi |
| cada0 | 6e 74 65 72 5f 63 61 73 74 2e 7a 69 67 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 63 6f 6e 73 74 20 | nter_cast.zig)</span>.....const. |
| cadc0 | 70 74 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 | ptr:.*i32.=.@ptrCast(opt_ptr);.. |
| cade0 | 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 |
| cae00 | 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= |
| cae20 | 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f | "sgr-1m">/home/andy/dev/zig/lib/ |
| cae40 | 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 36 31 38 3a 32 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 | std/start.zig:618:22</span>:.<sp |
| cae60 | 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 31 33 64 61 39 64 20 69 6e 20 70 | an.class="sgr-2m">0x113da9d.in.p |
| cae80 | 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 20 28 73 74 64 2e 7a 69 67 29 3c 2f 73 | osixCallMainAndExit.(std.zig)</s |
| caea0 | 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();... |
| caec0 | 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=" |
| caee0 | 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 |
| caf00 | 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 6c 69 62 2f 73 74 | gr-1m">/home/andy/dev/zig/lib/st |
| caf20 | 64 2f 73 74 61 72 74 2e 7a 69 67 3a 32 33 32 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 | d/start.zig:232:5</span>:.<span. |
| caf40 | 63 6c 61 73 73 3d 22 73 67 72 2d 32 6d 22 3e 30 78 31 31 33 64 33 33 31 20 69 6e 20 5f 73 74 61 | class="sgr-2m">0x113d331.in._sta |
| caf60 | 72 74 20 28 73 74 64 2e 7a 69 67 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 61 73 6d 20 76 6f 6c 61 | rt.(std.zig)</span>.....asm.vola |
| caf80 | 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 20 | tile.(switch.(native_arch).{.... |
| cafa0 | 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>. |
| cafc0 | 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 70 | <span.class="sgr-1m">???:?:?</sp |
| cafe0 | 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 6e | an>:.<span.class="sgr-2m">0x0.in |
| cb000 | 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 69 | .???.(???)</span>.(process.termi |
| cb020 | 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 2f | nated.by.signal).</samp></pre></ |
| cb040 | 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 | figure>.......................<h |
| cb060 | 32 20 69 64 3d 22 4d 65 6d 6f 72 79 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 4d 65 6d 6f | 2.id="Memory"><a.href="#toc-Memo |
| cb080 | 72 79 22 3e 4d 65 6d 6f 72 79 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 | ry">Memory</a>.<a.class="hdr".hr |
| cb0a0 | 65 66 3d 22 23 4d 65 6d 6f 72 79 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 | ef="#Memory">..</a></h2>........ |
| cb0c0 | 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 20 5a 69 67 20 6c 61 6e 67 75 61 67 65 20 70 65 72 66 6f | <p>.......The.Zig.language.perfo |
| cb0e0 | 72 6d 73 20 6e 6f 20 6d 65 6d 6f 72 79 20 6d 61 6e 61 67 65 6d 65 6e 74 20 6f 6e 20 62 65 68 61 | rms.no.memory.management.on.beha |
| cb100 | 6c 66 20 6f 66 20 74 68 65 20 70 72 6f 67 72 61 6d 6d 65 72 2e 20 54 68 69 73 20 69 73 0a 20 20 | lf.of.the.programmer..This.is... |
| cb120 | 20 20 20 20 77 68 79 20 5a 69 67 20 68 61 73 20 6e 6f 20 72 75 6e 74 69 6d 65 2c 20 61 6e 64 20 | ....why.Zig.has.no.runtime,.and. |
| cb140 | 77 68 79 20 5a 69 67 20 63 6f 64 65 20 77 6f 72 6b 73 20 73 65 61 6d 6c 65 73 73 6c 79 20 69 6e | why.Zig.code.works.seamlessly.in |
| cb160 | 20 73 6f 20 6d 61 6e 79 20 65 6e 76 69 72 6f 6e 6d 65 6e 74 73 2c 0a 20 20 20 20 20 20 69 6e 63 | .so.many.environments,.......inc |
| cb180 | 6c 75 64 69 6e 67 20 72 65 61 6c 2d 74 69 6d 65 20 73 6f 66 74 77 61 72 65 2c 20 6f 70 65 72 61 | luding.real-time.software,.opera |
| cb1a0 | 74 69 6e 67 20 73 79 73 74 65 6d 20 6b 65 72 6e 65 6c 73 2c 20 65 6d 62 65 64 64 65 64 20 64 65 | ting.system.kernels,.embedded.de |
| cb1c0 | 76 69 63 65 73 2c 20 61 6e 64 0a 20 20 20 20 20 20 6c 6f 77 20 6c 61 74 65 6e 63 79 20 73 65 72 | vices,.and.......low.latency.ser |
| cb1e0 | 76 65 72 73 2e 20 41 73 20 61 20 63 6f 6e 73 65 71 75 65 6e 63 65 2c 20 5a 69 67 20 70 72 6f 67 | vers..As.a.consequence,.Zig.prog |
| cb200 | 72 61 6d 6d 65 72 73 20 6d 75 73 74 20 61 6c 77 61 79 73 20 62 65 20 61 62 6c 65 20 74 6f 20 61 | rammers.must.always.be.able.to.a |
| cb220 | 6e 73 77 65 72 0a 20 20 20 20 20 20 74 68 65 20 71 75 65 73 74 69 6f 6e 3a 0a 20 20 20 20 20 20 | nswer.......the.question:....... |
| cb240 | 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 3c 61 20 68 72 65 66 3d 22 23 57 68 65 72 65 2d 61 72 | </p>.......<p><a.href="#Where-ar |
| cb260 | 65 2d 74 68 65 2d 62 79 74 65 73 22 3e 57 68 65 72 65 20 61 72 65 20 74 68 65 20 62 79 74 65 73 | e-the-bytes">Where.are.the.bytes |
| cb280 | 3f 3c 2f 61 3e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 4c 69 6b 65 20 5a | ?</a></p>.......<p>.......Like.Z |
| cb2a0 | 69 67 2c 20 74 68 65 20 43 20 70 72 6f 67 72 61 6d 6d 69 6e 67 20 6c 61 6e 67 75 61 67 65 20 68 | ig,.the.C.programming.language.h |
| cb2c0 | 61 73 20 6d 61 6e 75 61 6c 20 6d 65 6d 6f 72 79 20 6d 61 6e 61 67 65 6d 65 6e 74 2e 20 48 6f 77 | as.manual.memory.management..How |
| cb2e0 | 65 76 65 72 2c 20 75 6e 6c 69 6b 65 20 5a 69 67 2c 0a 20 20 20 20 20 20 43 20 68 61 73 20 61 20 | ever,.unlike.Zig,.......C.has.a. |
| cb300 | 64 65 66 61 75 6c 74 20 61 6c 6c 6f 63 61 74 6f 72 20 2d 20 3c 63 6f 64 65 3e 6d 61 6c 6c 6f 63 | default.allocator.-.<code>malloc |
| cb320 | 3c 2f 63 6f 64 65 3e 2c 20 3c 63 6f 64 65 3e 72 65 61 6c 6c 6f 63 3c 2f 63 6f 64 65 3e 2c 20 61 | </code>,.<code>realloc</code>,.a |
| cb340 | 6e 64 20 3c 63 6f 64 65 3e 66 72 65 65 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 57 68 65 6e | nd.<code>free</code>........When |
| cb360 | 20 6c 69 6e 6b 69 6e 67 20 61 67 61 69 6e 73 74 20 6c 69 62 63 2c 20 5a 69 67 20 65 78 70 6f 73 | .linking.against.libc,.Zig.expos |
| cb380 | 65 73 20 74 68 69 73 20 61 6c 6c 6f 63 61 74 6f 72 20 77 69 74 68 20 3c 63 6f 64 65 3e 73 74 64 | es.this.allocator.with.<code>std |
| cb3a0 | 2e 68 65 61 70 2e 63 5f 61 6c 6c 6f 63 61 74 6f 72 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 | .heap.c_allocator</code>........ |
| cb3c0 | 48 6f 77 65 76 65 72 2c 20 62 79 20 63 6f 6e 76 65 6e 74 69 6f 6e 2c 20 74 68 65 72 65 20 69 73 | However,.by.convention,.there.is |
| cb3e0 | 20 6e 6f 20 64 65 66 61 75 6c 74 20 61 6c 6c 6f 63 61 74 6f 72 20 69 6e 20 5a 69 67 2e 20 49 6e | .no.default.allocator.in.Zig..In |
| cb400 | 73 74 65 61 64 2c 20 66 75 6e 63 74 69 6f 6e 73 20 77 68 69 63 68 20 6e 65 65 64 20 74 6f 0a 20 | stead,.functions.which.need.to.. |
| cb420 | 20 20 20 20 20 61 6c 6c 6f 63 61 74 65 20 61 63 63 65 70 74 20 61 6e 20 3c 63 6f 64 65 3e 41 6c | .....allocate.accept.an.<code>Al |
| cb440 | 6c 6f 63 61 74 6f 72 3c 2f 63 6f 64 65 3e 20 70 61 72 61 6d 65 74 65 72 2e 20 4c 69 6b 65 77 69 | locator</code>.parameter..Likewi |
| cb460 | 73 65 2c 20 73 6f 6d 65 20 64 61 74 61 20 73 74 72 75 63 74 75 72 65 73 0a 20 20 20 20 20 20 61 | se,.some.data.structures.......a |
| cb480 | 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>. |
| cb4a0 | 70 61 72 61 6d 65 74 65 72 20 69 6e 20 74 68 65 69 72 20 69 6e 69 74 69 61 6c 69 7a 61 74 69 6f | parameter.in.their.initializatio |
| cb4c0 | 6e 20 66 75 6e 63 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 | n.functions:.......</p>.......<f |
| cb4e0 | 69 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 |
| cb500 | 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 6c 6c 6f 63 61 | "><cite.class="file">test_alloca |
| cb520 | 74 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 | tor.zig</cite></figcaption><pre> |
| cb540 | 3c 63 6f 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 |
| cb560 | 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 |
| cb580 | 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 |
| cb5a0 | 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 |
| cb5c0 | 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 |
| cb5e0 | 3c 2f 73 70 61 6e 3e 20 41 6c 6c 6f 63 61 74 6f 72 20 3d 20 73 74 64 2e 6d 65 6d 2e 41 6c 6c 6f | </span>.Allocator.=.std.mem.Allo |
| cb600 | 63 61 74 6f 72 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 | cator;.<span.class="tok-kw">cons |
| cb620 | 74 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 73 74 64 2e 74 65 73 74 69 6e 67 2e 65 78 | t</span>.expect.=.std.testing.ex |
| cb640 | 70 65 63 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 | pect;..<span.class="tok-kw">test |
| cb660 | 3c 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 |
| cb680 | 75 6f 74 3b 75 73 69 6e 67 20 61 6e 20 61 6c 6c 6f 63 61 74 6f 72 26 71 75 6f 74 3b 3c 2f 73 70 | uot;using.an.allocator"</sp |
| cb6a0 | 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 | an>.{.....<span.class="tok-kw">v |
| cb6c0 | 61 72 3c 2f 73 70 61 6e 3e 20 62 75 66 66 65 72 3a 20 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ar</span>.buffer:.[<span.class=" |
| cb6e0 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 30 3c 2f 73 70 61 6e 3e 5d 3c 73 70 61 6e 20 63 6c 61 | tok-number">100</span>]<span.cla |
| cb700 | 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 20 | ss="tok-type">u8</span>.=.<span. |
| cb720 | 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 6e | class="tok-null">undefined</span |
| cb740 | 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 3c | >;.....<span.class="tok-kw">var< |
| cb760 | 2f 73 70 61 6e 3e 20 66 62 61 20 3d 20 73 74 64 2e 68 65 61 70 2e 46 69 78 65 64 42 75 66 66 65 | /span>.fba.=.std.heap.FixedBuffe |
| cb780 | 72 41 6c 6c 6f 63 61 74 6f 72 2e 69 6e 69 74 28 26 61 6d 70 3b 62 75 66 66 65 72 29 3b 0a 20 20 | rAllocator.init(&buffer);... |
| cb7a0 | 20 20 3c 73 70 61 6e 20 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 |
| cb7c0 | 61 6e 3e 20 61 6c 6c 6f 63 61 74 6f 72 20 3d 20 66 62 61 2e 61 6c 6c 6f 63 61 74 6f 72 28 29 3b | an>.allocator.=.fba.allocator(); |
| cb7e0 | 0a 20 20 20 20 3c 73 70 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< |
| cb800 | 2f 73 70 61 6e 3e 20 72 65 73 75 6c 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | /span>.result.=.<span.class="tok |
| cb820 | 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 63 6f 6e 63 61 74 28 61 6c 6c 6f 63 61 74 6f 72 | -kw">try</span>.concat(allocator |
| cb840 | 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 66 6f | ,.<span.class="tok-str">"fo |
| cb860 | 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 73 3d 22 74 6f 6b | o"</span>,.<span.class="tok |
| cb880 | 2d 73 74 72 22 3e 26 71 75 6f 74 3b 62 61 72 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 20 | -str">"bar"</span>);.. |
| cb8a0 | 20 20 20 3c 73 70 61 6e 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 |
| cb8c0 | 6e 3e 20 65 78 70 65 63 74 28 73 74 64 2e 6d 65 6d 2e 65 71 6c 28 3c 73 70 61 6e 20 63 6c 61 73 | n>.expect(std.mem.eql(<span.clas |
| cb8e0 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c | s="tok-type">u8</span>,.<span.cl |
| cb900 | 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 66 6f 6f 62 61 72 26 71 75 6f 74 3b | ass="tok-str">"foobar" |
| cb920 | 3c 2f 73 70 61 6e 3e 2c 20 72 65 73 75 6c 74 29 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 | </span>,.result));.}..<span.clas |
| cb940 | 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 |
| cb960 | 3d 22 74 6f 6b 2d 66 6e 22 3e 63 6f 6e 63 61 74 3c 2f 73 70 61 6e 3e 28 61 6c 6c 6f 63 61 74 6f | ="tok-fn">concat</span>(allocato |
| cb980 | 72 3a 20 41 6c 6c 6f 63 61 74 6f 72 2c 20 61 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | r:.Allocator,.a:.[]<span.class=" |
| cb9a0 | 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 |
| cb9c0 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 62 3a 20 5b 5d 3c 73 70 61 | ="tok-type">u8</span>,.b:.[]<spa |
| cb9e0 | 6e 20 63 6c 61 73 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 |
| cba00 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 20 | pan.class="tok-type">u8</span>). |
| cba20 | 21 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 | ![]<span.class="tok-type">u8</sp |
| cba40 | 61 6e 3e 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 |
| cba60 | 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 72 65 73 75 6c 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | onst</span>.result.=.<span.class |
| cba80 | 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 61 6c 6c 6f 63 61 74 6f 72 2e 61 | ="tok-kw">try</span>.allocator.a |
| cbaa0 | 6c 6c 6f 63 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f | lloc(<span.class="tok-type">u8</ |
| cbac0 | 73 70 61 6e 3e 2c 20 61 2e 6c 65 6e 20 2b 20 62 2e 6c 65 6e 29 3b 0a 20 20 20 20 3c 73 70 61 6e | span>,.a.len.+.b.len);.....<span |
| cbae0 | 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 63 70 79 3c 2f 73 70 | .class="tok-builtin">@memcpy</sp |
| cbb00 | 61 6e 3e 28 72 65 73 75 6c 74 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | an>(result[<span.class="tok-numb |
| cbb20 | 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 2e 2e 61 2e 6c 65 6e 5d 2c 20 61 29 3b 0a 20 20 20 20 3c 73 | er">0</span>..a.len],.a);.....<s |
| cbb40 | 70 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 63 70 79 3c | pan.class="tok-builtin">@memcpy< |
| cbb60 | 2f 73 70 61 6e 3e 28 72 65 73 75 6c 74 5b 61 2e 6c 65 6e 2e 2e 5d 2c 20 62 29 3b 0a 20 20 20 20 | /span>(result[a.len..],.b);..... |
| cbb80 | 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 |
| cbba0 | 6e 3e 20 72 65 73 75 6c 74 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 | n>.result;.}</code></pre></figur |
| cbbc0 | 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 |
| cbbe0 | 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>< |
| cbc00 | 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 63 61 | samp>$.<kbd>zig.test.test_alloca |
| cbc20 | 74 6f 72 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f 61 6c 6c 6f 63 61 74 6f 72 | tor.zig</kbd>.1/1.test_allocator |
| cbc40 | 2e 74 65 73 74 2e 75 73 69 6e 67 20 61 6e 20 61 6c 6c 6f 63 61 74 6f 72 2e 2e 2e 4f 4b 0a 41 6c | .test.using.an.allocator...OK.Al |
| cbc60 | 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>< |
| cbc80 | 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 6e 20 74 68 65 | /figure>........<p>.......In.the |
| cbca0 | 20 61 62 6f 76 65 20 65 78 61 6d 70 6c 65 2c 20 31 30 30 20 62 79 74 65 73 20 6f 66 20 73 74 61 | .above.example,.100.bytes.of.sta |
| cbcc0 | 63 6b 20 6d 65 6d 6f 72 79 20 61 72 65 20 75 73 65 64 20 74 6f 20 69 6e 69 74 69 61 6c 69 7a 65 | ck.memory.are.used.to.initialize |
| cbce0 | 20 61 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 46 69 78 65 64 42 75 66 66 65 72 41 6c 6c 6f 63 61 | .a.......<code>FixedBufferAlloca |
| cbd00 | 74 6f 72 3c 2f 63 6f 64 65 3e 2c 20 77 68 69 63 68 20 69 73 20 74 68 65 6e 20 70 61 73 73 65 64 | tor</code>,.which.is.then.passed |
| cbd20 | 20 74 6f 20 61 20 66 75 6e 63 74 69 6f 6e 2e 0a 20 20 20 20 20 20 41 73 20 61 20 63 6f 6e 76 65 | .to.a.function........As.a.conve |
| cbd40 | 6e 69 65 6e 63 65 20 74 68 65 72 65 20 69 73 20 61 20 67 6c 6f 62 61 6c 20 3c 63 6f 64 65 3e 46 | nience.there.is.a.global.<code>F |
| cbd60 | 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 0a 20 20 20 20 20 | ixedBufferAllocator</code>...... |
| cbd80 | 20 61 76 61 69 6c 61 62 6c 65 20 66 6f 72 20 71 75 69 63 6b 20 74 65 73 74 73 20 61 74 20 3c 63 | .available.for.quick.tests.at.<c |
| cbda0 | 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> |
| cbdc0 | 2c 0a 20 20 20 20 20 20 77 68 69 63 68 20 77 69 6c 6c 20 61 6c 73 6f 20 70 65 72 66 6f 72 6d 20 | ,.......which.will.also.perform. |
| cbde0 | 62 61 73 69 63 20 6c 65 61 6b 20 64 65 74 65 63 74 69 6f 6e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e | basic.leak.detection........</p> |
| cbe00 | 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 61 20 67 65 6e 65 72 | .......<p>.......Zig.has.a.gener |
| cbe20 | 61 6c 20 70 75 72 70 6f 73 65 20 61 6c 6c 6f 63 61 74 6f 72 20 61 76 61 69 6c 61 62 6c 65 20 74 | al.purpose.allocator.available.t |
| cbe40 | 6f 20 62 65 20 69 6d 70 6f 72 74 65 64 0a 20 20 20 20 20 20 77 69 74 68 20 3c 63 6f 64 65 3e 73 | o.be.imported.......with.<code>s |
| cbe60 | 74 64 2e 68 65 61 70 2e 47 65 6e 65 72 61 6c 50 75 72 70 6f 73 65 41 6c 6c 6f 63 61 74 6f 72 3c | td.heap.GeneralPurposeAllocator< |
| cbe80 | 2f 63 6f 64 65 3e 2e 20 48 6f 77 65 76 65 72 2c 20 69 74 20 69 73 20 73 74 69 6c 6c 20 72 65 63 | /code>..However,.it.is.still.rec |
| cbea0 | 6f 6d 6d 65 6e 64 65 64 20 74 6f 0a 20 20 20 20 20 20 66 6f 6c 6c 6f 77 20 74 68 65 20 3c 61 20 | ommended.to.......follow.the.<a. |
| cbec0 | 68 72 65 66 3d 22 23 43 68 6f 6f 73 69 6e 67 2d 61 6e 2d 41 6c 6c 6f 63 61 74 6f 72 22 3e 43 68 | href="#Choosing-an-Allocator">Ch |
| cbee0 | 6f 6f 73 69 6e 67 20 61 6e 20 41 6c 6c 6f 63 61 74 6f 72 3c 2f 61 3e 20 67 75 69 64 65 2e 0a 20 | oosing.an.Allocator</a>.guide... |
| cbf00 | 20 20 20 20 20 3c 2f 70 3e 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 43 68 6f 6f 73 69 6e | .....</p>........<h3.id="Choosin |
| cbf20 | 67 2d 61 6e 2d 41 6c 6c 6f 63 61 74 6f 72 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 43 68 | g-an-Allocator"><a.href="#toc-Ch |
| cbf40 | 6f 6f 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 | oosing-an-Allocator">Choosing.an |
| cbf60 | 20 41 6c 6c 6f 63 61 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 | .Allocator</a>.<a.class="hdr".hr |
| cbf80 | 65 66 3d 22 23 43 68 6f 6f 73 69 6e 67 2d 61 6e 2d 41 6c 6c 6f 63 61 74 6f 72 22 3e c2 a7 3c 2f | ef="#Choosing-an-Allocator">..</ |
| cbfa0 | 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 57 68 61 74 20 61 6c 6c 6f 63 61 74 6f 72 | a></h3>........<p>What.allocator |
| cbfc0 | 20 74 6f 20 75 73 65 20 64 65 70 65 6e 64 73 20 6f 6e 20 61 20 6e 75 6d 62 65 72 20 6f 66 20 66 | .to.use.depends.on.a.number.of.f |
| cbfe0 | 61 63 74 6f 72 73 2e 20 48 65 72 65 20 69 73 20 61 20 66 6c 6f 77 20 63 68 61 72 74 20 74 6f 20 | actors..Here.is.a.flow.chart.to. |
| cc000 | 68 65 6c 70 20 79 6f 75 20 64 65 63 69 64 65 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 | help.you.decide:.......</p>..... |
| cc020 | 20 20 3c 6f 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 | ..<ol>...........<li>........... |
| cc040 | 20 20 20 20 41 72 65 20 79 6f 75 20 6d 61 6b 69 6e 67 20 61 20 6c 69 62 72 61 72 79 3f 20 49 6e | ....Are.you.making.a.library?.In |
| cc060 | 20 74 68 69 73 20 63 61 73 65 2c 20 62 65 73 74 20 74 6f 20 61 63 63 65 70 74 20 61 6e 20 3c 63 | .this.case,.best.to.accept.an.<c |
| cc080 | 6f 64 65 3e 41 6c 6c 6f 63 61 74 6f 72 3c 2f 63 6f 64 65 3e 0a 20 20 20 20 20 20 20 20 20 20 20 | ode>Allocator</code>............ |
| cc0a0 | 20 20 20 61 73 20 61 20 70 61 72 61 6d 65 74 65 72 20 61 6e 64 20 61 6c 6c 6f 77 20 79 6f 75 72 | ...as.a.parameter.and.allow.your |
| cc0c0 | 20 6c 69 62 72 61 72 79 27 73 20 75 73 65 72 73 20 74 6f 20 64 65 63 69 64 65 20 77 68 61 74 20 | .library's.users.to.decide.what. |
| cc0e0 | 61 6c 6c 6f 63 61 74 6f 72 20 74 6f 20 75 73 65 2e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 6c 69 | allocator.to.use............</li |
| cc100 | 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 41 72 65 20 79 6f 75 20 6c 69 6e 6b 69 6e 67 20 | >...........<li>Are.you.linking. |
| cc120 | 6c 69 62 63 3f 20 49 6e 20 74 68 69 73 20 63 61 73 65 2c 20 3c 63 6f 64 65 3e 73 74 64 2e 68 65 | libc?.In.this.case,.<code>std.he |
| cc140 | 61 70 2e 63 5f 61 6c 6c 6f 63 61 74 6f 72 3c 2f 63 6f 64 65 3e 20 69 73 20 6c 69 6b 65 6c 79 0a | ap.c_allocator</code>.is.likely. |
| cc160 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 74 68 65 20 72 69 67 68 74 20 63 68 6f 69 63 65 2c 20 | ..............the.right.choice,. |
| cc180 | 61 74 20 6c 65 61 73 74 20 66 6f 72 20 79 6f 75 72 20 6d 61 69 6e 20 61 6c 6c 6f 63 61 74 6f 72 | at.least.for.your.main.allocator |
| cc1a0 | 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 | .</li>...........<li>........... |
| cc1c0 | 20 20 20 20 4e 65 65 64 20 74 6f 20 75 73 65 20 74 68 65 20 73 61 6d 65 20 61 6c 6c 6f 63 61 74 | ....Need.to.use.the.same.allocat |
| cc1e0 | 6f 72 20 69 6e 20 6d 75 6c 74 69 70 6c 65 20 74 68 72 65 61 64 73 3f 20 55 73 65 20 6f 6e 65 20 | or.in.multiple.threads?.Use.one. |
| cc200 | 6f 66 20 79 6f 75 72 20 63 68 6f 69 63 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 77 72 61 | of.your.choice...............wra |
| cc220 | 70 70 65 64 20 61 72 6f 75 6e 64 20 3c 63 6f 64 65 3e 73 74 64 2e 68 65 61 70 2e 54 68 72 65 61 | pped.around.<code>std.heap.Threa |
| cc240 | 64 53 61 66 65 41 6c 6c 6f 63 61 74 6f 72 3c 2f 63 6f 64 65 3e 0a 20 20 20 20 20 20 20 20 20 20 | dSafeAllocator</code>........... |
| cc260 | 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 | </li>...........<li>............ |
| cc280 | 20 20 20 49 73 20 74 68 65 20 6d 61 78 69 6d 75 6d 20 6e 75 6d 62 65 72 20 6f 66 20 62 79 74 65 | ...Is.the.maximum.number.of.byte |
| cc2a0 | 73 20 74 68 61 74 20 79 6f 75 20 77 69 6c 6c 20 6e 65 65 64 20 62 6f 75 6e 64 65 64 20 62 79 20 | s.that.you.will.need.bounded.by. |
| cc2c0 | 61 20 6e 75 6d 62 65 72 20 6b 6e 6f 77 6e 20 61 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | a.number.known.at............... |
| cc2e0 | 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> |
| cc300 | 3f 20 49 6e 20 74 68 69 73 20 63 61 73 65 2c 20 75 73 65 20 3c 63 6f 64 65 3e 73 74 64 2e 68 65 | ?.In.this.case,.use.<code>std.he |
| cc320 | 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 6f 64 65 3e 2e 0a | ap.FixedBufferAllocator</code>.. |
| cc340 | 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 0a 20 | ..........</li>...........<li>.. |
| cc360 | 20 20 20 20 20 20 20 20 20 20 20 20 20 49 73 20 79 6f 75 72 20 70 72 6f 67 72 61 6d 20 61 20 63 | .............Is.your.program.a.c |
| cc380 | 6f 6d 6d 61 6e 64 20 6c 69 6e 65 20 61 70 70 6c 69 63 61 74 69 6f 6e 20 77 68 69 63 68 20 72 75 | ommand.line.application.which.ru |
| cc3a0 | 6e 73 20 66 72 6f 6d 20 73 74 61 72 74 20 74 6f 20 65 6e 64 20 77 69 74 68 6f 75 74 20 61 6e 79 | ns.from.start.to.end.without.any |
| cc3c0 | 20 66 75 6e 64 61 6d 65 6e 74 61 6c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 79 63 6c 69 | .fundamental...............cycli |
| cc3e0 | 63 61 6c 20 70 61 74 74 65 72 6e 20 28 73 75 63 68 20 61 73 20 61 20 76 69 64 65 6f 20 67 61 6d | cal.pattern.(such.as.a.video.gam |
| cc400 | 65 20 6d 61 69 6e 20 6c 6f 6f 70 2c 20 6f 72 20 61 20 77 65 62 20 73 65 72 76 65 72 20 72 65 71 | e.main.loop,.or.a.web.server.req |
| cc420 | 75 65 73 74 20 68 61 6e 64 6c 65 72 29 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 75 63 | uest.handler),...............suc |
| cc440 | 68 20 74 68 61 74 20 69 74 20 77 6f 75 6c 64 20 6d 61 6b 65 20 73 65 6e 73 65 20 74 6f 20 66 72 | h.that.it.would.make.sense.to.fr |
| cc460 | 65 65 20 65 76 65 72 79 74 68 69 6e 67 20 61 74 20 6f 6e 63 65 20 61 74 20 74 68 65 20 65 6e 64 | ee.everything.at.once.at.the.end |
| cc480 | 3f 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 49 6e 20 74 68 69 73 20 63 61 73 65 2c 20 69 74 | ?...............In.this.case,.it |
| cc4a0 | 20 69 73 20 72 65 63 6f 6d 6d 65 6e 64 65 64 20 74 6f 20 66 6f 6c 6c 6f 77 20 74 68 69 73 20 70 | .is.recommended.to.follow.this.p |
| cc4c0 | 61 74 74 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 | attern:.......<figure><figcaptio |
| cc4e0 | 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 |
| cc500 | 69 6c 65 22 3e 63 6c 69 5f 61 6c 6c 6f 63 61 74 69 6f 6e 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f | ile">cli_allocation.zig</cite></ |
| cc520 | 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 |
| cc540 | 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 |
| cc560 | 70 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< |
| cc580 | 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 |
| cc5a0 | 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 61 | ot;std"</span>);..<span.cla |
| cc5c0 | 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 |
| cc5e0 | 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 |
| cc600 | 73 3d 22 74 6f 6b 2d 66 6e 22 3e 6d 61 69 6e 3c 2f 73 70 61 6e 3e 28 29 20 21 3c 73 70 61 6e 20 | s="tok-fn">main</span>().!<span. |
| cc620 | 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>.{.. |
| cc640 | 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 |
| cc660 | 6e 3e 20 61 72 65 6e 61 20 3d 20 73 74 64 2e 68 65 61 70 2e 41 72 65 6e 61 41 6c 6c 6f 63 61 74 | n>.arena.=.std.heap.ArenaAllocat |
| cc680 | 6f 72 2e 69 6e 69 74 28 73 74 64 2e 68 65 61 70 2e 70 61 67 65 5f 61 6c 6c 6f 63 61 74 6f 72 29 | or.init(std.heap.page_allocator) |
| cc6a0 | 3b 0a 20 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 | ;.....<span.class="tok-kw">defer |
| cc6c0 | 3c 2f 73 70 61 6e 3e 20 61 72 65 6e 61 2e 64 65 69 6e 69 74 28 29 3b 0a 0a 20 20 20 20 3c 73 70 | </span>.arena.deinit();......<sp |
| cc6e0 | 61 6e 20 63 6c 61 73 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 |
| cc700 | 6c 6c 6f 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 | llocator.=.arena.allocator();... |
| cc720 | 20 20 20 3c 73 70 61 6e 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 |
| cc740 | 70 61 6e 3e 20 70 74 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | pan>.ptr.=.<span.class="tok-kw"> |
| cc760 | 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 61 | try</span>.allocator.create(<spa |
| cc780 | 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 0a | n.class="tok-type">i32</span>);. |
| cc7a0 | 20 20 20 20 73 74 64 2e 64 65 62 75 67 2e 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ....std.debug.print(<span.class= |
| cc7c0 | 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 70 74 72 3d 7b 2a 7d 5c 6e 26 71 75 6f 74 3b 3c | "tok-str">"ptr={*}\n"< |
| cc7e0 | 2f 73 70 61 6e 3e 2c 20 2e 7b 70 74 72 7d 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c | /span>,..{ptr});.}</code></pre>< |
| cc800 | 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 |
| cc820 | 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> |
| cc840 | 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. |
| cc860 | 63 6c 69 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 | cli_allocation.zig</kbd>.$.<kbd> |
| cc880 | 2e 2f 63 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 | ./cli_allocation</kbd>.ptr=i32@7 |
| cc8a0 | 66 35 31 32 37 37 37 62 30 31 30 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 | f512777b010.</samp></pre></figur |
| cc8c0 | 65 3e 0a 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 | e>................When.using.thi |
| cc8e0 | 73 20 6b 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 | s.kind.of.allocator,.there.is.no |
| cc900 | 20 6e 65 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 | .need.to.free.anything.manually. |
| cc920 | 20 45 76 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 | .Everything...............gets.f |
| cc940 | 72 65 65 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 | reed.at.once.with.the.call.to.<c |
| cc960 | 6f 64 65 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 | ode>arena.deinit()</code>....... |
| cc980 | 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 20 20 | .....</li>...........<li>....... |
| cc9a0 | 20 20 20 20 20 20 20 20 41 72 65 20 74 68 65 20 61 6c 6c 6f 63 61 74 69 6f 6e 73 20 70 61 72 74 | ........Are.the.allocations.part |
| cc9c0 | 20 6f 66 20 61 20 63 79 63 6c 69 63 61 6c 20 70 61 74 74 65 72 6e 20 73 75 63 68 20 61 73 20 61 | .of.a.cyclical.pattern.such.as.a |
| cc9e0 | 20 76 69 64 65 6f 20 67 61 6d 65 20 6d 61 69 6e 20 6c 6f 6f 70 2c 20 6f 72 20 61 20 77 65 62 0a | .video.game.main.loop,.or.a.web. |
| cca00 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 65 72 76 65 72 20 72 65 71 75 65 73 74 20 68 61 6e | ..............server.request.han |
| cca20 | 64 6c 65 72 3f 20 49 66 20 74 68 65 20 61 6c 6c 6f 63 61 74 69 6f 6e 73 20 63 61 6e 20 61 6c 6c | dler?.If.the.allocations.can.all |
| cca40 | 20 62 65 20 66 72 65 65 64 20 61 74 20 6f 6e 63 65 2c 20 61 74 20 74 68 65 20 65 6e 64 20 6f 66 | .be.freed.at.once,.at.the.end.of |
| cca60 | 20 74 68 65 20 63 79 63 6c 65 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 20 65 78 | .the.cycle,...............for.ex |
| cca80 | 61 6d 70 6c 65 20 6f 6e 63 65 20 74 68 65 20 76 69 64 65 6f 20 67 61 6d 65 20 66 72 61 6d 65 20 | ample.once.the.video.game.frame. |
| ccaa0 | 68 61 73 20 62 65 65 6e 20 66 75 6c 6c 79 20 72 65 6e 64 65 72 65 64 2c 20 6f 72 20 74 68 65 20 | has.been.fully.rendered,.or.the. |
| ccac0 | 77 65 62 20 73 65 72 76 65 72 20 72 65 71 75 65 73 74 20 68 61 73 0a 20 20 20 20 20 20 20 20 20 | web.server.request.has.......... |
| ccae0 | 20 20 20 20 20 62 65 65 6e 20 73 65 72 76 65 64 2c 20 74 68 65 6e 20 3c 63 6f 64 65 3e 73 74 64 | .....been.served,.then.<code>std |
| ccb00 | 2e 68 65 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 | .heap.ArenaAllocator</code>.is.a |
| ccb20 | 20 67 72 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 | .great.candidate..As............ |
| ccb40 | 20 20 20 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 | ...demonstrated.in.the.previous. |
| ccb60 | 62 75 6c 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 | bullet.point,.this.allows.you.to |
| ccb80 | 20 66 72 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 | .free.entire.arenas.at.once..... |
| ccba0 | 20 20 20 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 | ...........Note.also.that.if.an. |
| ccbc0 | 75 70 70 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 | upper.bound.of.memory.can.be.est |
| ccbe0 | 61 62 6c 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 | ablished,.then...............<co |
| ccc00 | 64 65 3e 73 74 64 2e 68 65 61 70 2e 46 69 78 65 64 42 75 66 66 65 72 41 6c 6c 6f 63 61 74 6f 72 | de>std.heap.FixedBufferAllocator |
| ccc20 | 3c 2f 63 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 | </code>.can.be.used.as.a.further |
| ccc40 | 20 6f 70 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 | .optimization............</li>.. |
| ccc60 | 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 41 72 65 20 | .........<li>...............Are. |
| ccc80 | 79 6f 75 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 | you.writing.a.test,.and.you.want |
| ccca0 | 20 74 6f 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 | .to.make.sure.<code><span.class= |
| cccc0 | 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 72 | "tok-kw">error</span>.OutOfMemor |
| ccce0 | 79 3c 2f 63 6f 64 65 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 73 20 68 61 6e 64 6c 65 | y</code>...............is.handle |
| ccd00 | 64 20 63 6f 72 72 65 63 74 6c 79 3f 20 49 6e 20 74 68 69 73 20 63 61 73 65 2c 20 75 73 65 20 3c | d.correctly?.In.this.case,.use.< |
| ccd20 | 63 6f 64 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 | code>std.testing.FailingAllocato |
| ccd40 | 72 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | r</code>............</li>....... |
| ccd60 | 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 20 77 | ....<li>...............Are.you.w |
| ccd80 | 72 69 74 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 | riting.a.test?.In.this.case,.use |
| ccda0 | 20 3c 63 6f 64 65 3e 73 74 64 2e 74 65 73 74 69 6e 67 2e 61 6c 6c 6f 63 61 74 6f 72 3c 2f 63 6f | .<code>std.testing.allocator</co |
| ccdc0 | 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 20 3c | de>............</li>...........< |
| ccde0 | 6c 69 3e 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 | li>...............Finally,.if.no |
| cce00 | 6e 65 20 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 | ne.of.the.above.apply,.you.need. |
| cce20 | 61 20 67 65 6e 65 72 61 6c 20 70 75 72 70 6f 73 65 20 61 6c 6c 6f 63 61 74 6f 72 2e 0a 20 20 20 | a.general.purpose.allocator..... |
| cce40 | 20 20 20 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 | ...........Zig's.general.purpose |
| cce60 | 20 61 6c 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 | .allocator.is.available.as.a.fun |
| cce80 | 63 74 69 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 | ction.that.takes.a.<a.href="#com |
| ccea0 | 70 74 69 6d 65 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | ptime">comptime</a>............. |
| ccec0 | 20 20 3c 61 20 68 72 65 66 3d 22 23 73 74 72 75 63 74 22 3e 73 74 72 75 63 74 3c 2f 61 3e 20 6f | ..<a.href="#struct">struct</a>.o |
| ccee0 | 66 20 63 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 | f.configuration.options.and.retu |
| ccf00 | 72 6e 73 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 | rns.a.type................Genera |
| ccf20 | 6c 6c 79 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 | lly,.you.will.set.up.one.<code>s |
| ccf40 | 74 64 2e 68 65 61 70 2e 47 65 6e 65 72 61 6c 50 75 72 70 6f 73 65 41 6c 6c 6f 63 61 74 6f 72 3c | td.heap.GeneralPurposeAllocator< |
| ccf60 | 2f 63 6f 64 65 3e 20 69 6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 79 6f 75 72 20 6d 61 69 | /code>.in...............your.mai |
| ccf80 | 6e 20 66 75 6e 63 74 69 6f 6e 2c 20 61 6e 64 20 74 68 65 6e 20 70 61 73 73 20 69 74 20 6f 72 20 | n.function,.and.then.pass.it.or. |
| ccfa0 | 73 75 62 2d 61 6c 6c 6f 63 61 74 6f 72 73 20 61 72 6f 75 6e 64 20 74 6f 20 76 61 72 69 6f 75 73 | sub-allocators.around.to.various |
| ccfc0 | 20 70 61 72 74 73 20 6f 66 20 79 6f 75 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 61 70 70 | .parts.of.your...............app |
| ccfe0 | 6c 69 63 61 74 69 6f 6e 2e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | lication............</li>....... |
| cd000 | 20 20 20 20 3c 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 59 6f 75 20 63 61 6e 20 61 | ....<li>...............You.can.a |
| cd020 | 6c 73 6f 20 63 6f 6e 73 69 64 65 72 20 3c 61 20 68 72 65 66 3d 22 23 49 6d 70 6c 65 6d 65 6e 74 | lso.consider.<a.href="#Implement |
| cd040 | 69 6e 67 2d 61 6e 2d 41 6c 6c 6f 63 61 74 6f 72 22 3e 49 6d 70 6c 65 6d 65 6e 74 69 6e 67 20 61 | ing-an-Allocator">Implementing.a |
| cd060 | 6e 20 41 6c 6c 6f 63 61 74 6f 72 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 6c 69 3e | n.Allocator</a>............</li> |
| cd080 | 0a 20 20 20 20 20 20 3c 2f 6f 6c 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 | .......</ol>...............<h3.i |
| cd0a0 | 64 3d 22 57 68 65 72 65 2d 61 72 65 2d 74 68 65 2d 62 79 74 65 73 22 3e 3c 61 20 68 72 65 66 3d | d="Where-are-the-bytes"><a.href= |
| cd0c0 | 22 23 74 6f 63 2d 57 68 65 72 65 2d 61 72 65 2d 74 68 65 2d 62 79 74 65 73 22 3e 57 68 65 72 65 | "#toc-Where-are-the-bytes">Where |
| cd0e0 | 20 61 72 65 20 74 68 65 20 62 79 74 65 73 3f 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 | .are.the.bytes?</a>.<a.class="hd |
| cd100 | 72 22 20 68 72 65 66 3d 22 23 57 68 65 72 65 2d 61 72 65 2d 74 68 65 2d 62 79 74 65 73 22 3e c2 | r".href="#Where-are-the-bytes">. |
| cd120 | a7 3c 2f 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 | .</a></h3>........<p>String.lite |
| cd140 | 72 61 6c 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 | rals.such.as.<code><span.class=" |
| cd160 | 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 68 65 6c 6c 6f 26 71 75 6f 74 3b 3c 2f 73 70 61 6e | tok-str">"hello"</span |
| cd180 | 3e 3c 2f 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 | ></code>.are.in.the.global.const |
| cd1a0 | 61 6e 74 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 | ant.data.section........This.is. |
| cd1c0 | 77 68 79 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 | why.it.is.an.error.to.pass.a.str |
| cd1e0 | 69 6e 67 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 | ing.literal.to.a.mutable.slice,. |
| cd200 | 6c 69 6b 65 20 74 68 69 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 | like.this:.......</p>.......<fig |
| cd220 | 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"> |
| cd240 | 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 5f 6c | <cite.class="file">test_string_l |
| cd260 | 69 74 65 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 | iteral_to_slice.zig</cite></figc |
| cd280 | 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 |
| cd2a0 | 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 |
| cd2c0 | 6b 2d 66 6e 22 3e 66 6f 6f 3c 2f 73 70 61 6e 3e 28 73 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 | k-fn">foo</span>(s:.[]<span.clas |
| cd2e0 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c | s="tok-type">u8</span>).<span.cl |
| cd300 | 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>.{.... |
| cd320 | 20 5f 20 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 | ._.=.s;.}..<span.class="tok-kw"> |
| cd340 | 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 |
| cd360 | 22 3e 26 71 75 6f 74 3b 73 74 72 69 6e 67 20 6c 69 74 65 72 61 6c 20 74 6f 20 6d 75 74 61 62 6c | ">"string.literal.to.mutabl |
| cd380 | 65 20 73 6c 69 63 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 66 6f 6f 28 3c | e.slice"</span>.{.....foo(< |
| cd3a0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 68 65 6c 6c 6f | span.class="tok-str">"hello |
| cd3c0 | 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f | "</span>);.}</code></pre></ |
| cd3e0 | 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 |
| cd400 | 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>< |
| cd420 | 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 73 | pre><samp>$.<kbd>zig.test.test_s |
| cd440 | 74 72 69 6e 67 5f 6c 69 74 65 72 61 6c 5f 74 6f 5f 73 6c 69 63 65 2e 7a 69 67 3c 2f 6b 62 64 3e | tring_literal_to_slice.zig</kbd> |
| cd460 | 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 |
| cd480 | 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 2f 6c 61 6e 67 72 65 66 2f 74 65 73 74 5f 73 74 72 69 6e 67 | /dev/zig/doc/langref/test_string |
| cd4a0 | 5f 6c 69 74 65 72 61 6c 5f 74 6f 5f 73 6c 69 63 65 2e 7a 69 67 3a 36 3a 39 3a 20 3c 2f 73 70 61 | _literal_to_slice.zig:6:9:.</spa |
| cd4c0 | 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 3c | n><span.class="sgr-31m">error:.< |
| cd4e0 | 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 65 78 70 65 63 | /span><span.class="sgr-1m">expec |
| cd500 | 74 65 64 20 74 79 70 65 20 27 5b 5d 75 38 27 2c 20 66 6f 75 6e 64 20 27 2a 63 6f 6e 73 74 20 5b | ted.type.'[]u8',.found.'*const.[ |
| cd520 | 35 3a 30 5d 75 38 27 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 66 6f 6f 28 26 71 75 6f 74 3b 68 65 6c | 5:0]u8'.</span>....foo("hel |
| cd540 | 6c 6f 26 71 75 6f 74 3b 29 3b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | lo");.........<span.class=" |
| cd560 | 73 67 72 2d 33 32 6d 22 3e 5e 7e 7e 7e 7e 7e 7e 0a 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c | sgr-32m">^~~~~~~.</span><span.cl |
| cd580 | 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f | ass="sgr-1m">/home/andy/dev/zig/ |
| cd5a0 | 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 6c 5f | doc/langref/test_string_literal_ |
| cd5c0 | 74 6f 5f 73 6c 69 63 65 2e 7a 69 67 3a 36 3a 39 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 | to_slice.zig:6:9:.</span><span.c |
| cd5e0 | 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 |
| cd600 | 6e 20 63 6c 61 73 73 3d 22 73 67 72 2d 31 6d 22 3e 63 61 73 74 20 64 69 73 63 61 72 64 73 20 63 | n.class="sgr-1m">cast.discards.c |
| cd620 | 6f 6e 73 74 20 71 75 61 6c 69 66 69 65 72 0a 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 | onst.qualifier.</span><span.clas |
| cd640 | 73 3d 22 73 67 72 2d 31 6d 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f | s="sgr-1m">/home/andy/dev/zig/do |
| cd660 | 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 6c 5f 74 6f | c/langref/test_string_literal_to |
| cd680 | 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 6e 20 63 6c | _slice.zig:1:11:.</span><span.cl |
| cd6a0 | 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 |
| cd6c0 | 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 65 20 64 | .class="sgr-1m">parameter.type.d |
| cd6e0 | 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 3a 20 5b 5d | eclared.here.</span>fn.foo(s:.[] |
| cd700 | 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 6c 61 73 73 | u8).void.{...........<span.class |
| cd720 | 3d 22 73 67 72 2d 33 32 6d 22 3e 5e 7e 7e 7e 0a 3c 2f 73 70 61 6e 3e 0a 3c 2f 73 61 6d 70 3e 3c | ="sgr-32m">^~~~.</span>.</samp>< |
| cd740 | 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 65 76 65 72 | /pre></figure>........<p>However |
| cd760 | 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 61 6e 74 2c | .if.you.make.the.slice.constant, |
| cd780 | 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 69 67 75 72 | .then.it.works:</p>.......<figur |
| cd7a0 | 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 |
| cd7c0 | 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 5f 6c 69 74 | ite.class="file">test_string_lit |
| cd7e0 | 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 65 3e 3c 2f | eral_to_const_slice.zig</cite></ |
| cd800 | 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 |
| cd820 | 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 |
| cd840 | 3d 22 74 6f 6b 2d 66 6e 22 3e 66 6f 6f 3c 2f 73 70 61 6e 3e 28 73 3a 20 5b 5d 3c 73 70 61 6e 20 | ="tok-fn">foo</span>(s:.[]<span. |
| cd860 | 63 6c 61 73 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 |
| cd880 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 20 3c 73 | n.class="tok-type">u8</span>).<s |
| cd8a0 | 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> |
| cd8c0 | 20 7b 0a 20 20 20 20 5f 20 3d 20 73 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | .{....._.=.s;.}..<span.class="to |
| cd8e0 | 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 |
| cd900 | 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 72 69 6e 67 20 6c 69 74 65 72 61 6c 20 74 6f 20 | ok-str">"string.literal.to. |
| cd920 | 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 7b 0a 20 20 | constant.slice"</span>.{... |
| cd940 | 20 20 66 6f 6f 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f | ..foo(<span.class="tok-str">&quo |
| cd960 | 74 3b 68 65 6c 6c 6f 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c | t;hello"</span>);.}</code>< |
| cd980 | 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 |
| cd9a0 | 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 |
| cd9c0 | 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 |
| cd9e0 | 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 74 5f 73 6c | .test_string_literal_to_const_sl |
| cda00 | 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 67 5f 6c 69 | ice.zig</kbd>.1/1.test_string_li |
| cda20 | 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 72 69 6e 67 | teral_to_const_slice.test.string |
| cda40 | 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 2e 4f 4b 0a | .literal.to.constant.slice...OK. |
| cda60 | 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 |
| cda80 | 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 4a 75 73 74 | ></figure>........<p>.......Just |
| cdaa0 | 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 3e 3c 73 70 | .like.string.literals,.<code><sp |
| cdac0 | 61 6e 20 63 6c 61 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 | an.class="tok-kw">const</span></ |
| cdae0 | 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 20 76 61 6c | code>.declarations,.when.the.val |
| cdb00 | 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 70 74 69 6d | ue.is.known.at.<a.href="#comptim |
| cdb20 | 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 74 6f 72 65 | e">comptime</a>,.......are.store |
| cdb40 | 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 61 20 73 65 | d.in.the.global.constant.data.se |
| cdb60 | 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 65 2d 54 69 | ction..Also.<a.href="#Compile-Ti |
| cdb80 | 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 61 72 69 61 | me-Variables">Compile.Time.Varia |
| cdba0 | 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 20 74 68 65 | bles</a>.are.stored.......in.the |
| cdbc0 | 20 67 6c 6f 62 61 6c 20 63 6f 6e 73 74 61 6e 74 20 64 61 74 61 20 73 65 63 74 69 6f 6e 2e 0a 20 | .global.constant.data.section... |
| cdbe0 | 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e | .....</p>.......<p>.......<code> |
| cdc00 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 3c | <span.class="tok-kw">var</span>< |
| cdc20 | 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 75 6e 63 74 | /code>.declarations.inside.funct |
| cdc40 | 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 69 6f 6e 27 | ions.are.stored.in.the.function' |
| cdc60 | 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 6f 6e 20 72 | s.stack.frame..Once.a.function.r |
| cdc80 | 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 50 6f 69 6e | eturns,.......any.<a.href="#Poin |
| cdca0 | 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 6c 65 73 20 | ters">Pointers</a>.to.variables. |
| cdcc0 | 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 65 20 62 65 | in.the.function's.stack.frame.be |
| cdce0 | 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 0a 20 20 20 | come.invalid.references,.and.... |
| cdd00 | 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 73 20 75 6e | ...dereferencing.them.becomes.un |
| cdd20 | 63 68 65 63 6b 65 64 20 3c 61 20 68 72 65 66 3d 22 23 49 6c 6c 65 67 61 6c 2d 42 65 68 61 76 69 | checked.<a.href="#Illegal-Behavi |
| cdd40 | 6f 72 22 3e 49 6c 6c 65 67 61 6c 20 42 65 68 61 76 69 6f 72 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 | or">Illegal.Behavior</a>........ |
| cdd60 | 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 6e | </p>.......<p>.......<code><span |
| cdd80 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 | .class="tok-kw">var</span></code |
| cdda0 | 3e 20 64 65 63 6c 61 72 61 74 69 6f 6e 73 20 61 74 20 74 68 65 20 74 6f 70 20 6c 65 76 65 6c 20 | >.declarations.at.the.top.level. |
| cddc0 | 6f 72 20 69 6e 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 | or.in.<a.href="#struct">struct</ |
| cdde0 | 61 3e 20 64 65 63 6c 61 72 61 74 69 6f 6e 73 20 61 72 65 20 73 74 6f 72 65 64 20 69 6e 20 74 68 | a>.declarations.are.stored.in.th |
| cde00 | 65 20 67 6c 6f 62 61 6c 0a 20 20 20 20 20 20 64 61 74 61 20 73 65 63 74 69 6f 6e 2e 0a 20 20 20 | e.global.......data.section..... |
| cde20 | 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 6c 6f 63 61 | ...</p>.......<p>.......The.loca |
| cde40 | 74 69 6f 6e 20 6f 66 20 6d 65 6d 6f 72 79 20 61 6c 6c 6f 63 61 74 65 64 20 77 69 74 68 20 3c 63 | tion.of.memory.allocated.with.<c |
| cde60 | 6f 64 65 3e 61 6c 6c 6f 63 61 74 6f 72 2e 61 6c 6c 6f 63 3c 2f 63 6f 64 65 3e 20 6f 72 0a 20 20 | ode>allocator.alloc</code>.or... |
| cde80 | 20 20 20 20 3c 63 6f 64 65 3e 61 6c 6c 6f 63 61 74 6f 72 2e 63 72 65 61 74 65 3c 2f 63 6f 64 65 | ....<code>allocator.create</code |
| cdea0 | 3e 20 69 73 20 64 65 74 65 72 6d 69 6e 65 64 20 62 79 20 74 68 65 20 61 6c 6c 6f 63 61 74 6f 72 | >.is.determined.by.the.allocator |
| cdec0 | 27 73 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 | 's.implementation........</p>... |
| cdee0 | 20 20 20 20 3c 70 3e 54 4f 44 4f 3a 20 74 68 72 65 61 64 20 6c 6f 63 61 6c 20 76 61 72 69 61 62 | ....<p>TODO:.thread.local.variab |
| cdf00 | 6c 65 73 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 49 6d | les</p>...............<h3.id="Im |
| cdf20 | 70 6c 65 6d 65 6e 74 69 6e 67 2d 61 6e 2d 41 6c 6c 6f 63 61 74 6f 72 22 3e 3c 61 20 68 72 65 66 | plementing-an-Allocator"><a.href |
| cdf40 | 3d 22 23 74 6f 63 2d 49 6d 70 6c 65 6d 65 6e 74 69 6e 67 2d 61 6e 2d 41 6c 6c 6f 63 61 74 6f 72 | ="#toc-Implementing-an-Allocator |
| cdf60 | 22 3e 49 6d 70 6c 65 6d 65 6e 74 69 6e 67 20 61 6e 20 41 6c 6c 6f 63 61 74 6f 72 3c 2f 61 3e 20 | ">Implementing.an.Allocator</a>. |
| cdf80 | 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 49 6d 70 6c 65 6d 65 6e 74 69 | <a.class="hdr".href="#Implementi |
| cdfa0 | 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>.... |
| cdfc0 | 20 20 20 20 3c 70 3e 5a 69 67 20 70 72 6f 67 72 61 6d 6d 65 72 73 20 63 61 6e 20 69 6d 70 6c 65 | ....<p>Zig.programmers.can.imple |
| cdfe0 | 6d 65 6e 74 20 74 68 65 69 72 20 6f 77 6e 20 61 6c 6c 6f 63 61 74 6f 72 73 20 62 79 20 66 75 6c | ment.their.own.allocators.by.ful |
| ce000 | 66 69 6c 6c 69 6e 67 20 74 68 65 20 41 6c 6c 6f 63 61 74 6f 72 20 69 6e 74 65 72 66 61 63 65 2e | filling.the.Allocator.interface. |
| ce020 | 0a 20 20 20 20 20 20 49 6e 20 6f 72 64 65 72 20 74 6f 20 64 6f 20 74 68 69 73 20 6f 6e 65 20 6d | .......In.order.to.do.this.one.m |
| ce040 | 75 73 74 20 72 65 61 64 20 63 61 72 65 66 75 6c 6c 79 20 74 68 65 20 64 6f 63 75 6d 65 6e 74 61 | ust.read.carefully.the.documenta |
| ce060 | 74 69 6f 6e 20 63 6f 6d 6d 65 6e 74 73 20 69 6e 20 73 74 64 2f 6d 65 6d 2e 7a 69 67 20 61 6e 64 | tion.comments.in.std/mem.zig.and |
| ce080 | 0a 20 20 20 20 20 20 74 68 65 6e 20 73 75 70 70 6c 79 20 61 20 3c 63 6f 64 65 3e 61 6c 6c 6f 63 | .......then.supply.a.<code>alloc |
| ce0a0 | 46 6e 3c 2f 63 6f 64 65 3e 20 61 6e 64 20 61 20 3c 63 6f 64 65 3e 72 65 73 69 7a 65 46 6e 3c 2f | Fn</code>.and.a.<code>resizeFn</ |
| ce0c0 | 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 | code>........</p>.......<p>..... |
| ce0e0 | 20 20 54 68 65 72 65 20 61 72 65 20 6d 61 6e 79 20 65 78 61 6d 70 6c 65 20 61 6c 6c 6f 63 61 74 | ..There.are.many.example.allocat |
| ce100 | 6f 72 73 20 74 6f 20 6c 6f 6f 6b 20 61 74 20 66 6f 72 20 69 6e 73 70 69 72 61 74 69 6f 6e 2e 20 | ors.to.look.at.for.inspiration.. |
| ce120 | 4c 6f 6f 6b 20 61 74 20 73 74 64 2f 68 65 61 70 2e 7a 69 67 20 61 6e 64 0a 20 20 20 20 20 20 3c | Look.at.std/heap.zig.and.......< |
| ce140 | 63 6f 64 65 3e 73 74 64 2e 68 65 61 70 2e 47 65 6e 65 72 61 6c 50 75 72 70 6f 73 65 41 6c 6c 6f | code>std.heap.GeneralPurposeAllo |
| ce160 | 63 61 74 6f 72 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a | cator</code>........</p>........ |
| ce180 | 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 48 65 61 70 2d 41 6c 6c 6f 63 61 74 69 6f 6e 2d 46 | .......<h3.id="Heap-Allocation-F |
| ce1a0 | 61 69 6c 75 72 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 48 65 61 70 2d 41 6c 6c 6f 63 | ailure"><a.href="#toc-Heap-Alloc |
| ce1c0 | 61 74 69 6f 6e 2d 46 61 69 6c 75 72 65 22 3e 48 65 61 70 20 41 6c 6c 6f 63 61 74 69 6f 6e 20 46 | ation-Failure">Heap.Allocation.F |
| ce1e0 | 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 66 3d 22 | ailure</a>.<a.class="hdr".href=" |
| ce200 | 23 48 65 61 70 2d 41 6c 6c 6f 63 61 74 69 6f 6e 2d 46 61 69 6c 75 72 65 22 3e c2 a7 3c 2f 61 3e | #Heap-Allocation-Failure">..</a> |
| ce220 | 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 4d 61 6e 79 20 70 72 6f 67 | </h3>........<p>.......Many.prog |
| ce240 | 72 61 6d 6d 69 6e 67 20 6c 61 6e 67 75 61 67 65 73 20 63 68 6f 6f 73 65 20 74 6f 20 68 61 6e 64 | ramming.languages.choose.to.hand |
| ce260 | 6c 65 20 74 68 65 20 70 6f 73 73 69 62 69 6c 69 74 79 20 6f 66 20 68 65 61 70 20 61 6c 6c 6f 63 | le.the.possibility.of.heap.alloc |
| ce280 | 61 74 69 6f 6e 20 66 61 69 6c 75 72 65 20 62 79 0a 20 20 20 20 20 20 75 6e 63 6f 6e 64 69 74 69 | ation.failure.by.......unconditi |
| ce2a0 | 6f 6e 61 6c 6c 79 20 63 72 61 73 68 69 6e 67 2e 20 42 79 20 63 6f 6e 76 65 6e 74 69 6f 6e 2c 20 | onally.crashing..By.convention,. |
| ce2c0 | 5a 69 67 20 70 72 6f 67 72 61 6d 6d 65 72 73 20 64 6f 20 6e 6f 74 20 63 6f 6e 73 69 64 65 72 20 | Zig.programmers.do.not.consider. |
| ce2e0 | 74 68 69 73 20 74 6f 20 62 65 20 61 0a 20 20 20 20 20 20 73 61 74 69 73 66 61 63 74 6f 72 79 20 | this.to.be.a.......satisfactory. |
| ce300 | 73 6f 6c 75 74 69 6f 6e 2e 20 49 6e 73 74 65 61 64 2c 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 | solution..Instead,.<code><span.c |
| ce320 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 4f 75 74 4f 66 | lass="tok-kw">error</span>.OutOf |
| ce340 | 4d 65 6d 6f 72 79 3c 2f 63 6f 64 65 3e 20 72 65 70 72 65 73 65 6e 74 73 0a 20 20 20 20 20 20 68 | Memory</code>.represents.......h |
| ce360 | 65 61 70 20 61 6c 6c 6f 63 61 74 69 6f 6e 20 66 61 69 6c 75 72 65 2c 20 61 6e 64 20 5a 69 67 20 | eap.allocation.failure,.and.Zig. |
| ce380 | 6c 69 62 72 61 72 69 65 73 20 72 65 74 75 72 6e 20 74 68 69 73 20 65 72 72 6f 72 20 63 6f 64 65 | libraries.return.this.error.code |
| ce3a0 | 20 77 68 65 6e 65 76 65 72 20 68 65 61 70 20 61 6c 6c 6f 63 61 74 69 6f 6e 0a 20 20 20 20 20 20 | .whenever.heap.allocation....... |
| ce3c0 | 66 61 69 6c 75 72 65 20 70 72 65 76 65 6e 74 65 64 20 61 6e 20 6f 70 65 72 61 74 69 6f 6e 20 66 | failure.prevented.an.operation.f |
| ce3e0 | 72 6f 6d 20 63 6f 6d 70 6c 65 74 69 6e 67 20 73 75 63 63 65 73 73 66 75 6c 6c 79 2e 0a 20 20 20 | rom.completing.successfully..... |
| ce400 | 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 53 6f 6d 65 20 68 61 76 | ...</p>.......<p>.......Some.hav |
| ce420 | 65 20 61 72 67 75 65 64 20 74 68 61 74 20 62 65 63 61 75 73 65 20 73 6f 6d 65 20 6f 70 65 72 61 | e.argued.that.because.some.opera |
| ce440 | 74 69 6e 67 20 73 79 73 74 65 6d 73 20 73 75 63 68 20 61 73 20 4c 69 6e 75 78 20 68 61 76 65 20 | ting.systems.such.as.Linux.have. |
| ce460 | 6d 65 6d 6f 72 79 20 6f 76 65 72 63 6f 6d 6d 69 74 20 65 6e 61 62 6c 65 64 20 62 79 0a 20 20 20 | memory.overcommit.enabled.by.... |
| ce480 | 20 20 20 64 65 66 61 75 6c 74 2c 20 69 74 20 69 73 20 70 6f 69 6e 74 6c 65 73 73 20 74 6f 20 68 | ...default,.it.is.pointless.to.h |
| ce4a0 | 61 6e 64 6c 65 20 68 65 61 70 20 61 6c 6c 6f 63 61 74 69 6f 6e 20 66 61 69 6c 75 72 65 2e 20 54 | andle.heap.allocation.failure..T |
| ce4c0 | 68 65 72 65 20 61 72 65 20 6d 61 6e 79 20 70 72 6f 62 6c 65 6d 73 20 77 69 74 68 20 74 68 69 73 | here.are.many.problems.with.this |
| ce4e0 | 20 72 65 61 73 6f 6e 69 6e 67 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c | .reasoning:.......</p>.......<ul |
| ce500 | 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 4f 6e 6c 79 20 73 6f 6d 65 20 6f 70 65 72 61 74 | >...........<li>Only.some.operat |
| ce520 | 69 6e 67 20 73 79 73 74 65 6d 73 20 68 61 76 65 20 61 6e 20 6f 76 65 72 63 6f 6d 6d 69 74 20 66 | ing.systems.have.an.overcommit.f |
| ce540 | 65 61 74 75 72 65 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 | eature................<ul>...... |
| ce560 | 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 4c 69 6e 75 78 20 68 61 73 20 69 74 20 65 6e | .............<li>Linux.has.it.en |
| ce580 | 61 62 6c 65 64 20 62 79 20 64 65 66 61 75 6c 74 2c 20 62 75 74 20 69 74 20 69 73 20 63 6f 6e 66 | abled.by.default,.but.it.is.conf |
| ce5a0 | 69 67 75 72 61 62 6c 65 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | igurable.</li>.................. |
| ce5c0 | 20 3c 6c 69 3e 57 69 6e 64 6f 77 73 20 64 6f 65 73 20 6e 6f 74 20 6f 76 65 72 63 6f 6d 6d 69 74 | .<li>Windows.does.not.overcommit |
| ce5e0 | 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 45 6d 62 | .</li>...................<li>Emb |
| ce600 | 65 64 64 65 64 20 73 79 73 74 65 6d 73 20 64 6f 20 6e 6f 74 20 68 61 76 65 20 6f 76 65 72 63 6f | edded.systems.do.not.have.overco |
| ce620 | 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 20 3c 6c 69 | mmit.</li>...................<li |
| ce640 | 3e 48 6f 62 62 79 20 6f 70 65 72 61 74 69 6e 67 20 73 79 73 74 65 6d 73 20 6d 61 79 20 6f 72 20 | >Hobby.operating.systems.may.or. |
| ce660 | 6d 61 79 20 6e 6f 74 20 68 61 76 65 20 6f 76 65 72 63 6f 6d 6d 69 74 2e 3c 2f 6c 69 3e 0a 20 20 | may.not.have.overcommit.</li>... |
| ce680 | 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 |
| ce6a0 | 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 46 | >...........<li>...............F |
| ce6c0 | 6f 72 20 72 65 61 6c 2d 74 69 6d 65 20 73 79 73 74 65 6d 73 2c 20 6e 6f 74 20 6f 6e 6c 79 20 69 | or.real-time.systems,.not.only.i |
| ce6e0 | 73 20 74 68 65 72 65 20 6e 6f 20 6f 76 65 72 63 6f 6d 6d 69 74 2c 20 62 75 74 20 74 79 70 69 63 | s.there.no.overcommit,.but.typic |
| ce700 | 61 6c 6c 79 20 74 68 65 20 6d 61 78 69 6d 75 6d 20 61 6d 6f 75 6e 74 0a 20 20 20 20 20 20 20 20 | ally.the.maximum.amount......... |
| ce720 | 20 20 20 20 20 20 6f 66 20 6d 65 6d 6f 72 79 20 70 65 72 20 61 70 70 6c 69 63 61 74 69 6f 6e 20 | ......of.memory.per.application. |
| ce740 | 69 73 20 64 65 74 65 72 6d 69 6e 65 64 20 61 68 65 61 64 20 6f 66 20 74 69 6d 65 2e 0a 20 20 20 | is.determined.ahead.of.time..... |
| ce760 | 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>..... |
| ce780 | 20 20 20 20 20 20 20 20 20 20 57 68 65 6e 20 77 72 69 74 69 6e 67 20 61 20 6c 69 62 72 61 72 79 | ..........When.writing.a.library |
| ce7a0 | 2c 20 6f 6e 65 20 6f 66 20 74 68 65 20 6d 61 69 6e 20 67 6f 61 6c 73 20 69 73 20 63 6f 64 65 20 | ,.one.of.the.main.goals.is.code. |
| ce7c0 | 72 65 75 73 65 2e 20 42 79 20 6d 61 6b 69 6e 67 20 63 6f 64 65 20 68 61 6e 64 6c 65 0a 20 20 20 | reuse..By.making.code.handle.... |
| ce7e0 | 20 20 20 20 20 20 20 20 20 20 20 61 6c 6c 6f 63 61 74 69 6f 6e 20 66 61 69 6c 75 72 65 20 63 6f | ...........allocation.failure.co |
| ce800 | 72 72 65 63 74 6c 79 2c 20 61 20 6c 69 62 72 61 72 79 20 62 65 63 6f 6d 65 73 20 65 6c 69 67 69 | rrectly,.a.library.becomes.eligi |
| ce820 | 62 6c 65 20 74 6f 20 62 65 20 72 65 75 73 65 64 20 69 6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | ble.to.be.reused.in............. |
| ce840 | 20 20 6d 6f 72 65 20 63 6f 6e 74 65 78 74 73 2e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 6c 69 3e | ..more.contexts............</li> |
| ce860 | 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 41 6c | ...........<li>...............Al |
| ce880 | 74 68 6f 75 67 68 20 73 6f 6d 65 20 73 6f 66 74 77 61 72 65 20 68 61 73 20 67 72 6f 77 6e 20 74 | though.some.software.has.grown.t |
| ce8a0 | 6f 20 64 65 70 65 6e 64 20 6f 6e 20 6f 76 65 72 63 6f 6d 6d 69 74 20 62 65 69 6e 67 20 65 6e 61 | o.depend.on.overcommit.being.ena |
| ce8c0 | 62 6c 65 64 2c 20 69 74 73 20 65 78 69 73 74 65 6e 63 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 | bled,.its.existence............. |
| ce8e0 | 20 20 69 73 20 74 68 65 20 73 6f 75 72 63 65 20 6f 66 20 63 6f 75 6e 74 6c 65 73 73 20 75 73 65 | ..is.the.source.of.countless.use |
| ce900 | 72 20 65 78 70 65 72 69 65 6e 63 65 20 64 69 73 61 73 74 65 72 73 2e 20 57 68 65 6e 20 61 20 73 | r.experience.disasters..When.a.s |
| ce920 | 79 73 74 65 6d 20 77 69 74 68 20 6f 76 65 72 63 6f 6d 6d 69 74 20 65 6e 61 62 6c 65 64 2c 0a 20 | ystem.with.overcommit.enabled,.. |
| ce940 | 20 20 20 20 20 20 20 20 20 20 20 20 20 73 75 63 68 20 61 73 20 4c 69 6e 75 78 20 6f 6e 20 64 65 | .............such.as.Linux.on.de |
| ce960 | 66 61 75 6c 74 20 73 65 74 74 69 6e 67 73 2c 20 63 6f 6d 65 73 20 63 6c 6f 73 65 20 74 6f 20 6d | fault.settings,.comes.close.to.m |
| ce980 | 65 6d 6f 72 79 20 65 78 68 61 75 73 74 69 6f 6e 2c 20 74 68 65 20 73 79 73 74 65 6d 20 6c 6f 63 | emory.exhaustion,.the.system.loc |
| ce9a0 | 6b 73 20 75 70 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 61 6e 64 20 62 65 63 6f 6d 65 73 20 | ks.up...............and.becomes. |
| ce9c0 | 75 6e 75 73 61 62 6c 65 2e 20 41 74 20 74 68 69 73 20 70 6f 69 6e 74 2c 20 74 68 65 20 4f 4f 4d | unusable..At.this.point,.the.OOM |
| ce9e0 | 20 4b 69 6c 6c 65 72 20 73 65 6c 65 63 74 73 20 61 6e 20 61 70 70 6c 69 63 61 74 69 6f 6e 20 74 | .Killer.selects.an.application.t |
| cea00 | 6f 20 6b 69 6c 6c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 62 61 73 65 64 20 6f 6e 20 68 65 | o.kill...............based.on.he |
| cea20 | 75 72 69 73 74 69 63 73 2e 20 54 68 69 73 20 6e 6f 6e 2d 64 65 74 65 72 6d 69 6e 69 73 74 69 63 | uristics..This.non-deterministic |
| cea40 | 20 64 65 63 69 73 69 6f 6e 20 6f 66 74 65 6e 20 72 65 73 75 6c 74 73 20 69 6e 20 61 6e 20 69 6d | .decision.often.results.in.an.im |
| cea60 | 70 6f 72 74 61 6e 74 20 70 72 6f 63 65 73 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 62 65 | portant.process...............be |
| cea80 | 69 6e 67 20 6b 69 6c 6c 65 64 2c 20 61 6e 64 20 6f 66 74 65 6e 20 66 61 69 6c 73 20 74 6f 20 72 | ing.killed,.and.often.fails.to.r |
| ceaa0 | 65 74 75 72 6e 20 74 68 65 20 73 79 73 74 65 6d 20 62 61 63 6b 20 74 6f 20 77 6f 72 6b 69 6e 67 | eturn.the.system.back.to.working |
| ceac0 | 20 6f 72 64 65 72 2e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f | .order............</li>.......</ |
| ceae0 | 75 6c 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 52 65 63 75 72 73 | ul>...............<h3.id="Recurs |
| ceb00 | 69 6f 6e 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 52 65 63 75 72 73 69 6f 6e 22 3e 52 65 | ion"><a.href="#toc-Recursion">Re |
| ceb20 | 63 75 72 73 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 | cursion</a>.<a.class="hdr".href= |
| ceb40 | 22 23 52 65 63 75 72 73 69 6f 6e 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 | "#Recursion">..</a></h3>........ |
| ceb60 | 3c 70 3e 0a 20 20 20 20 20 20 52 65 63 75 72 73 69 6f 6e 20 69 73 20 61 20 66 75 6e 64 61 6d 65 | <p>.......Recursion.is.a.fundame |
| ceb80 | 6e 74 61 6c 20 74 6f 6f 6c 20 69 6e 20 6d 6f 64 65 6c 69 6e 67 20 73 6f 66 74 77 61 72 65 2e 20 | ntal.tool.in.modeling.software.. |
| ceba0 | 48 6f 77 65 76 65 72 20 69 74 20 68 61 73 20 61 6e 20 6f 66 74 65 6e 2d 6f 76 65 72 6c 6f 6f 6b | However.it.has.an.often-overlook |
| cebc0 | 65 64 20 70 72 6f 62 6c 65 6d 3a 0a 20 20 20 20 20 20 75 6e 62 6f 75 6e 64 65 64 20 6d 65 6d 6f | ed.problem:.......unbounded.memo |
| cebe0 | 72 79 20 61 6c 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 20 20 | ry.allocation........</p>....... |
| cec00 | 3c 70 3e 0a 20 20 20 20 20 20 52 65 63 75 72 73 69 6f 6e 20 69 73 20 61 6e 20 61 72 65 61 20 6f | <p>.......Recursion.is.an.area.o |
| cec20 | 66 20 61 63 74 69 76 65 20 65 78 70 65 72 69 6d 65 6e 74 61 74 69 6f 6e 20 69 6e 20 5a 69 67 20 | f.active.experimentation.in.Zig. |
| cec40 | 61 6e 64 20 73 6f 20 74 68 65 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 20 68 65 72 65 20 69 73 | and.so.the.documentation.here.is |
| cec60 | 20 6e 6f 74 20 66 69 6e 61 6c 2e 0a 20 20 20 20 20 20 59 6f 75 20 63 61 6e 20 72 65 61 64 20 61 | .not.final........You.can.read.a |
| cec80 | 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 7a 69 67 6c 61 6e 67 2e | .......<a.href="https://ziglang. |
| ceca0 | 6f 72 67 2f 64 6f 77 6e 6c 6f 61 64 2f 30 2e 33 2e 30 2f 72 65 6c 65 61 73 65 2d 6e 6f 74 65 73 | org/download/0.3.0/release-notes |
| cecc0 | 2e 68 74 6d 6c 23 72 65 63 75 72 73 69 6f 6e 22 3e 73 75 6d 6d 61 72 79 20 6f 66 20 72 65 63 75 | .html#recursion">summary.of.recu |
| cece0 | 72 73 69 6f 6e 20 73 74 61 74 75 73 20 69 6e 20 74 68 65 20 30 2e 33 2e 30 20 72 65 6c 65 61 73 | rsion.status.in.the.0.3.0.releas |
| ced00 | 65 20 6e 6f 74 65 73 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 | e.notes</a>........</p>.......<p |
| ced20 | 3e 0a 20 20 20 20 20 20 54 68 65 20 73 68 6f 72 74 20 73 75 6d 6d 61 72 79 20 69 73 20 74 68 61 | >.......The.short.summary.is.tha |
| ced40 | 74 20 63 75 72 72 65 6e 74 6c 79 20 72 65 63 75 72 73 69 6f 6e 20 77 6f 72 6b 73 20 6e 6f 72 6d | t.currently.recursion.works.norm |
| ced60 | 61 6c 6c 79 20 61 73 20 79 6f 75 20 77 6f 75 6c 64 20 65 78 70 65 63 74 2e 20 41 6c 74 68 6f 75 | ally.as.you.would.expect..Althou |
| ced80 | 67 68 20 5a 69 67 20 63 6f 64 65 0a 20 20 20 20 20 20 69 73 20 6e 6f 74 20 79 65 74 20 70 72 6f | gh.Zig.code.......is.not.yet.pro |
| ceda0 | 74 65 63 74 65 64 20 66 72 6f 6d 20 73 74 61 63 6b 20 6f 76 65 72 66 6c 6f 77 2c 20 69 74 20 69 | tected.from.stack.overflow,.it.i |
| cedc0 | 73 20 70 6c 61 6e 6e 65 64 20 74 68 61 74 20 61 20 66 75 74 75 72 65 20 76 65 72 73 69 6f 6e 20 | s.planned.that.a.future.version. |
| cede0 | 6f 66 20 5a 69 67 20 77 69 6c 6c 20 70 72 6f 76 69 64 65 0a 20 20 20 20 20 20 73 75 63 68 20 70 | of.Zig.will.provide.......such.p |
| cee00 | 72 6f 74 65 63 74 69 6f 6e 2c 20 77 69 74 68 20 73 6f 6d 65 20 64 65 67 72 65 65 20 6f 66 20 63 | rotection,.with.some.degree.of.c |
| cee20 | 6f 6f 70 65 72 61 74 69 6f 6e 20 66 72 6f 6d 20 5a 69 67 20 63 6f 64 65 20 72 65 71 75 69 72 65 | ooperation.from.Zig.code.require |
| cee40 | 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 20 | d........</p>...............<h3. |
| cee60 | 69 64 3d 22 4c 69 66 65 74 69 6d 65 2d 61 6e 64 2d 4f 77 6e 65 72 73 68 69 70 22 3e 3c 61 20 68 | id="Lifetime-and-Ownership"><a.h |
| cee80 | 72 65 66 3d 22 23 74 6f 63 2d 4c 69 66 65 74 69 6d 65 2d 61 6e 64 2d 4f 77 6e 65 72 73 68 69 70 | ref="#toc-Lifetime-and-Ownership |
| ceea0 | 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 20 3c 61 20 | ">Lifetime.and.Ownership</a>.<a. |
| ceec0 | 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 4c 69 66 65 74 69 6d 65 2d 61 6e 64 2d | class="hdr".href="#Lifetime-and- |
| ceee0 | 4f 77 6e 65 72 73 68 69 70 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 | Ownership">..</a></h3>........<p |
| cef00 | 3e 0a 20 20 20 20 20 20 49 74 20 69 73 20 74 68 65 20 5a 69 67 20 70 72 6f 67 72 61 6d 6d 65 72 | >.......It.is.the.Zig.programmer |
| cef20 | 27 73 20 72 65 73 70 6f 6e 73 69 62 69 6c 69 74 79 20 74 6f 20 65 6e 73 75 72 65 20 74 68 61 74 | 's.responsibility.to.ensure.that |
| cef40 | 20 61 20 3c 61 20 68 72 65 66 3d 22 23 50 6f 69 6e 74 65 72 73 22 3e 70 6f 69 6e 74 65 72 3c 2f | .a.<a.href="#Pointers">pointer</ |
| cef60 | 61 3e 20 69 73 20 6e 6f 74 0a 20 20 20 20 20 20 61 63 63 65 73 73 65 64 20 77 68 65 6e 20 74 68 | a>.is.not.......accessed.when.th |
| cef80 | 65 20 6d 65 6d 6f 72 79 20 70 6f 69 6e 74 65 64 20 74 6f 20 69 73 20 6e 6f 20 6c 6f 6e 67 65 72 | e.memory.pointed.to.is.no.longer |
| cefa0 | 20 61 76 61 69 6c 61 62 6c 65 2e 20 4e 6f 74 65 20 74 68 61 74 20 61 20 3c 61 20 68 72 65 66 3d | .available..Note.that.a.<a.href= |
| cefc0 | 22 23 53 6c 69 63 65 73 22 3e 73 6c 69 63 65 3c 2f 61 3e 0a 20 20 20 20 20 20 69 73 20 61 20 66 | "#Slices">slice</a>.......is.a.f |
| cefe0 | 6f 72 6d 20 6f 66 20 70 6f 69 6e 74 65 72 2c 20 69 6e 20 74 68 61 74 20 69 74 20 72 65 66 65 72 | orm.of.pointer,.in.that.it.refer |
| cf000 | 65 6e 63 65 73 20 6f 74 68 65 72 20 6d 65 6d 6f 72 79 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 | ences.other.memory........</p>.. |
| cf020 | 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 6e 20 6f 72 64 65 72 20 74 6f 20 70 72 65 76 65 | .....<p>.......In.order.to.preve |
| cf040 | 6e 74 20 62 75 67 73 2c 20 74 68 65 72 65 20 61 72 65 20 73 6f 6d 65 20 68 65 6c 70 66 75 6c 20 | nt.bugs,.there.are.some.helpful. |
| cf060 | 63 6f 6e 76 65 6e 74 69 6f 6e 73 20 74 6f 20 66 6f 6c 6c 6f 77 20 77 68 65 6e 20 64 65 61 6c 69 | conventions.to.follow.when.deali |
| cf080 | 6e 67 20 77 69 74 68 20 70 6f 69 6e 74 65 72 73 2e 0a 20 20 20 20 20 20 49 6e 20 67 65 6e 65 72 | ng.with.pointers........In.gener |
| cf0a0 | 61 6c 2c 20 77 68 65 6e 20 61 20 66 75 6e 63 74 69 6f 6e 20 72 65 74 75 72 6e 73 20 61 20 70 6f | al,.when.a.function.returns.a.po |
| cf0c0 | 69 6e 74 65 72 2c 20 74 68 65 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 20 66 6f 72 20 74 68 65 | inter,.the.documentation.for.the |
| cf0e0 | 20 66 75 6e 63 74 69 6f 6e 20 73 68 6f 75 6c 64 20 65 78 70 6c 61 69 6e 0a 20 20 20 20 20 20 77 | .function.should.explain.......w |
| cf100 | 68 6f 20 22 6f 77 6e 73 22 20 74 68 65 20 70 6f 69 6e 74 65 72 2e 20 54 68 69 73 20 63 6f 6e 63 | ho."owns".the.pointer..This.conc |
| cf120 | 65 70 74 20 68 65 6c 70 73 20 74 68 65 20 70 72 6f 67 72 61 6d 6d 65 72 20 64 65 63 69 64 65 20 | ept.helps.the.programmer.decide. |
| cf140 | 77 68 65 6e 20 69 74 20 69 73 20 61 70 70 72 6f 70 72 69 61 74 65 2c 20 69 66 20 65 76 65 72 2c | when.it.is.appropriate,.if.ever, |
| cf160 | 0a 20 20 20 20 20 20 74 6f 20 66 72 65 65 20 74 68 65 20 70 6f 69 6e 74 65 72 2e 0a 20 20 20 20 | .......to.free.the.pointer...... |
| cf180 | 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 46 6f 72 20 65 78 61 6d 70 | ..</p>.......<p>.......For.examp |
| cf1a0 | 6c 65 2c 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 27 73 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e | le,.the.function's.documentation |
| cf1c0 | 20 6d 61 79 20 73 61 79 20 22 63 61 6c 6c 65 72 20 6f 77 6e 73 20 74 68 65 20 72 65 74 75 72 6e | .may.say."caller.owns.the.return |
| cf1e0 | 65 64 20 6d 65 6d 6f 72 79 22 2c 20 69 6e 20 77 68 69 63 68 20 63 61 73 65 0a 20 20 20 20 20 20 | ed.memory",.in.which.case....... |
| cf200 | 74 68 65 20 63 6f 64 65 20 74 68 61 74 20 63 61 6c 6c 73 20 74 68 65 20 66 75 6e 63 74 69 6f 6e | the.code.that.calls.the.function |
| cf220 | 20 6d 75 73 74 20 68 61 76 65 20 61 20 70 6c 61 6e 20 66 6f 72 20 77 68 65 6e 20 74 6f 20 66 72 | .must.have.a.plan.for.when.to.fr |
| cf240 | 65 65 20 74 68 61 74 20 6d 65 6d 6f 72 79 2e 20 50 72 6f 62 61 62 6c 79 20 69 6e 20 74 68 69 73 | ee.that.memory..Probably.in.this |
| cf260 | 20 73 69 74 75 61 74 69 6f 6e 2c 0a 20 20 20 20 20 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 77 | .situation,.......the.function.w |
| cf280 | 69 6c 6c 20 61 63 63 65 70 74 20 61 6e 20 3c 63 6f 64 65 3e 41 6c 6c 6f 63 61 74 6f 72 3c 2f 63 | ill.accept.an.<code>Allocator</c |
| cf2a0 | 6f 64 65 3e 20 70 61 72 61 6d 65 74 65 72 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 | ode>.parameter........</p>...... |
| cf2c0 | 20 3c 70 3e 0a 20 20 20 20 20 20 53 6f 6d 65 74 69 6d 65 73 20 74 68 65 20 6c 69 66 65 74 69 6d | .<p>.......Sometimes.the.lifetim |
| cf2e0 | 65 20 6f 66 20 61 20 70 6f 69 6e 74 65 72 20 6d 61 79 20 62 65 20 6d 6f 72 65 20 63 6f 6d 70 6c | e.of.a.pointer.may.be.more.compl |
| cf300 | 69 63 61 74 65 64 2e 20 46 6f 72 20 65 78 61 6d 70 6c 65 2c 20 74 68 65 0a 20 20 20 20 20 20 3c | icated..For.example,.the.......< |
| cf320 | 63 6f 64 65 3e 73 74 64 2e 41 72 72 61 79 4c 69 73 74 28 54 29 2e 69 74 65 6d 73 3c 2f 63 6f 64 | code>std.ArrayList(T).items</cod |
| cf340 | 65 3e 20 73 6c 69 63 65 20 68 61 73 20 61 20 6c 69 66 65 74 69 6d 65 20 74 68 61 74 20 72 65 6d | e>.slice.has.a.lifetime.that.rem |
| cf360 | 61 69 6e 73 0a 20 20 20 20 20 20 76 61 6c 69 64 20 75 6e 74 69 6c 20 74 68 65 20 6e 65 78 74 20 | ains.......valid.until.the.next. |
| cf380 | 74 69 6d 65 20 74 68 65 20 6c 69 73 74 20 69 73 20 72 65 73 69 7a 65 64 2c 20 73 75 63 68 20 61 | time.the.list.is.resized,.such.a |
| cf3a0 | 73 20 62 79 20 61 70 70 65 6e 64 69 6e 67 20 6e 65 77 20 65 6c 65 6d 65 6e 74 73 2e 0a 20 20 20 | s.by.appending.new.elements..... |
| cf3c0 | 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 41 50 49 20 | ...</p>.......<p>.......The.API. |
| cf3e0 | 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 20 66 6f 72 20 66 75 6e 63 74 69 6f 6e 73 20 61 6e 64 20 | documentation.for.functions.and. |
| cf400 | 64 61 74 61 20 73 74 72 75 63 74 75 72 65 73 20 73 68 6f 75 6c 64 20 74 61 6b 65 20 67 72 65 61 | data.structures.should.take.grea |
| cf420 | 74 20 63 61 72 65 20 74 6f 20 65 78 70 6c 61 69 6e 0a 20 20 20 20 20 20 74 68 65 20 6f 77 6e 65 | t.care.to.explain.......the.owne |
| cf440 | 72 73 68 69 70 20 61 6e 64 20 6c 69 66 65 74 69 6d 65 20 73 65 6d 61 6e 74 69 63 73 20 6f 66 20 | rship.and.lifetime.semantics.of. |
| cf460 | 70 6f 69 6e 74 65 72 73 2e 20 4f 77 6e 65 72 73 68 69 70 20 64 65 74 65 72 6d 69 6e 65 73 20 77 | pointers..Ownership.determines.w |
| cf480 | 68 6f 73 65 20 72 65 73 70 6f 6e 73 69 62 69 6c 69 74 79 20 69 74 0a 20 20 20 20 20 20 69 73 20 | hose.responsibility.it.......is. |
| cf4a0 | 74 6f 20 66 72 65 65 20 74 68 65 20 6d 65 6d 6f 72 79 20 72 65 66 65 72 65 6e 63 65 64 20 62 79 | to.free.the.memory.referenced.by |
| cf4c0 | 20 74 68 65 20 70 6f 69 6e 74 65 72 2c 20 61 6e 64 20 6c 69 66 65 74 69 6d 65 20 64 65 74 65 72 | .the.pointer,.and.lifetime.deter |
| cf4e0 | 6d 69 6e 65 73 20 74 68 65 20 70 6f 69 6e 74 20 61 74 20 77 68 69 63 68 0a 20 20 20 20 20 20 74 | mines.the.point.at.which.......t |
| cf500 | 68 65 20 6d 65 6d 6f 72 79 20 62 65 63 6f 6d 65 73 20 69 6e 61 63 63 65 73 73 69 62 6c 65 20 28 | he.memory.becomes.inaccessible.( |
| cf520 | 6c 65 73 74 20 3c 61 20 68 72 65 66 3d 22 23 49 6c 6c 65 67 61 6c 2d 42 65 68 61 76 69 6f 72 22 | lest.<a.href="#Illegal-Behavior" |
| cf540 | 3e 49 6c 6c 65 67 61 6c 20 42 65 68 61 76 69 6f 72 3c 2f 61 3e 20 6f 63 63 75 72 29 2e 0a 20 20 | >Illegal.Behavior</a>.occur).... |
| cf560 | 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 | ....</p>......................<h |
| cf580 | 32 20 69 64 3d 22 43 6f 6d 70 69 6c 65 2d 56 61 72 69 61 62 6c 65 73 22 3e 3c 61 20 68 72 65 66 | 2.id="Compile-Variables"><a.href |
| cf5a0 | 3d 22 23 74 6f 63 2d 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 | ="#toc-Compile-Variables">Compil |
| cf5c0 | 65 20 56 61 72 69 61 62 6c 65 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 | e.Variables</a>.<a.class="hdr".h |
| cf5e0 | 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 c2 a7 3c 2f 61 3e 3c | ref="#Compile-Variables">..</a>< |
| cf600 | 2f 68 32 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 20 76 61 | /h2>........<p>.......Compile.va |
| cf620 | 72 69 61 62 6c 65 73 20 61 72 65 20 61 63 63 65 73 73 69 62 6c 65 20 62 79 20 69 6d 70 6f 72 74 | riables.are.accessible.by.import |
| cf640 | 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 74 6f 6b 2d 73 | ing.the.<code><span.class="tok-s |
| cf660 | 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 3c 2f | tr">"builtin"</span></ |
| cf680 | 63 6f 64 65 3e 20 70 61 63 6b 61 67 65 2c 0a 20 20 20 20 20 20 77 68 69 63 68 20 74 68 65 20 63 | code>.package,.......which.the.c |
| cf6a0 | 6f 6d 70 69 6c 65 72 20 6d 61 6b 65 73 20 61 76 61 69 6c 61 62 6c 65 20 74 6f 20 65 76 65 72 79 | ompiler.makes.available.to.every |
| cf6c0 | 20 5a 69 67 20 73 6f 75 72 63 65 20 66 69 6c 65 2e 20 49 74 20 63 6f 6e 74 61 69 6e 73 0a 20 20 | .Zig.source.file..It.contains... |
| cf6e0 | 20 20 20 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 63 6f 6e 73 74 61 6e 74 73 20 73 75 63 68 20 | ....compile-time.constants.such. |
| cf700 | 61 73 20 74 68 65 20 63 75 72 72 65 6e 74 20 74 61 72 67 65 74 2c 20 65 6e 64 69 61 6e 6e 65 73 | as.the.current.target,.endiannes |
| cf720 | 73 2c 20 61 6e 64 20 72 65 6c 65 61 73 65 20 6d 6f 64 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a | s,.and.release.mode........</p>. |
| cf740 | 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= |
| cf760 | 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 63 6f 6d | "zig-cap"><cite.class="file">com |
| cf780 | 70 69 6c 65 5f 76 61 72 69 61 62 6c 65 73 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 | pile_variables.zig</cite></figca |
| cf7a0 | 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 |
| cf7c0 | 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 62 75 69 6c 74 69 6e 20 3d 20 3c 73 70 | k-kw">const</span>.builtin.=.<sp |
| cf7e0 | 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</ |
| cf800 | 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 |
| cf820 | 74 3b 62 75 69 6c 74 69 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 3c 73 70 61 6e 20 63 | t;builtin"</span>);.<span.c |
| cf840 | 6c 61 73 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 70 61 72 | lass="tok-kw">const</span>.separ |
| cf860 | 61 74 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 69 66 3c 2f | ator.=.<span.class="tok-kw">if</ |
| cf880 | 73 70 61 6e 3e 20 28 62 75 69 6c 74 69 6e 2e 6f 73 2e 74 61 67 20 3d 3d 20 2e 77 69 6e 64 6f 77 | span>.(builtin.os.tag.==..window |
| cf8a0 | 73 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 5c 5c 27 3c 2f 73 | s).<span.class="tok-str">'\\'</s |
| cf8c0 | 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f | pan>.<span.class="tok-kw">else</ |
| cf8e0 | 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 27 2f 27 3c | span>.<span.class="tok-str">'/'< |
| cf900 | 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 0a 0a 20 | /span>;</code></pre></figure>... |
| cf920 | 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 45 78 61 6d 70 6c 65 20 6f 66 20 77 68 61 74 20 69 | .....<p>.......Example.of.what.i |
| cf940 | 73 20 69 6d 70 6f 72 74 65 64 20 77 69 74 68 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 | s.imported.with.<code><span.clas |
| cf960 | 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>(< |
| cf980 | 73 70 61 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 |
| cf9a0 | 69 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3c 2f 63 6f 64 65 3e 3a 0a 20 20 20 20 20 20 3c | in"</span>)</code>:.......< |
| cf9c0 | 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 |
| cf9e0 | 61 73 73 3d 22 7a 69 67 2d 63 61 70 22 3e 3c 63 69 74 65 3e 40 69 6d 70 6f 72 74 28 22 62 75 69 | ass="zig-cap"><cite>@import("bui |
| cfa00 | 6c 74 69 6e 22 29 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 | ltin")</cite></figcaption><pre>< |
| cfa20 | 63 6f 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< |
| cfa40 | 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 |
| cfa60 | 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 |
| cfa80 | 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 |
| cfaa0 | 6e 3e 29 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f | n>);.<span.class="tok-comment">/ |
| cfac0 | 2f 2f 20 5a 69 67 20 76 65 72 73 69 6f 6e 2e 20 57 68 65 6e 20 77 72 69 74 69 6e 67 20 63 6f 64 | //.Zig.version..When.writing.cod |
| cfae0 | 65 20 74 68 61 74 20 73 75 70 70 6f 72 74 73 20 6d 75 6c 74 69 70 6c 65 20 76 65 72 73 69 6f 6e | e.that.supports.multiple.version |
| cfb00 | 73 20 6f 66 20 5a 69 67 2c 20 70 72 65 66 65 72 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c | s.of.Zig,.prefer</span>.<span.cl |
| cfb20 | 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 66 65 61 74 75 72 65 20 64 65 | ass="tok-comment">///.feature.de |
| cfb40 | 74 65 63 74 69 6f 6e 20 28 69 2e 65 2e 20 77 69 74 68 20 60 40 68 61 73 44 65 63 6c 60 20 6f 72 | tection.(i.e..with.`@hasDecl`.or |
| cfb60 | 20 60 40 68 61 73 46 69 65 6c 64 60 29 20 6f 76 65 72 20 76 65 72 73 69 6f 6e 20 63 68 65 63 6b | .`@hasField`).over.version.check |
| cfb80 | 73 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 | s.</span>.<span.class="tok-kw">p |
| cfba0 | 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 |
| cfbc0 | 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 7a 69 67 5f 76 65 72 73 69 6f 6e 20 3d 20 73 74 64 2e 53 65 | onst</span>.zig_version.=.std.Se |
| cfbe0 | 6d 61 6e 74 69 63 56 65 72 73 69 6f 6e 2e 70 61 72 73 65 28 7a 69 67 5f 76 65 72 73 69 6f 6e 5f | manticVersion.parse(zig_version_ |
| cfc00 | 73 74 72 69 6e 67 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 | string).<span.class="tok-kw">cat |
| cfc20 | 63 68 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 | ch</span>.<span.class="tok-kw">u |
| cfc40 | 6e 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | nreachable</span>;.<span.class=" |
| cfc60 | 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=" |
| cfc80 | 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 69 6f 6e | tok-kw">const</span>.zig_version |
| cfca0 | 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 73 74 72 22 3e | _string.=.<span.class="tok-str"> |
| cfcc0 | 26 71 75 6f 74 3b 30 2e 31 36 2e 30 2d 64 65 76 2e 31 2b 63 66 35 66 38 31 31 33 63 26 71 75 6f | "0.16.0-dev.1+cf5f8113c&quo |
| cfce0 | 74 3b 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | t;</span>;.<span.class="tok-kw"> |
| cfd00 | 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"> |
| cfd20 | 63 6f 6e 73 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 | const</span>.zig_backend.=.std.b |
| cfd40 | 75 69 6c 74 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 78 38 | uiltin.CompilerBackend.stage2_x8 |
| cfd60 | 36 5f 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 70 75 62 3c | 6_64;..<span.class="tok-kw">pub< |
| cfd80 | 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 |
| cfda0 | 74 3c 2f 73 70 61 6e 3e 20 6f 75 74 70 75 74 5f 6d 6f 64 65 3a 20 73 74 64 2e 62 75 69 6c 74 69 | t</span>.output_mode:.std.builti |
| cfdc0 | 6e 2e 4f 75 74 70 75 74 4d 6f 64 65 20 3d 20 2e 45 78 65 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | n.OutputMode.=..Exe;.<span.class |
| cfde0 | 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 |
| cfe00 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6c 69 6e 6b 5f 6d 6f 64 65 | ="tok-kw">const</span>.link_mode |
| cfe20 | 3a 20 73 74 64 2e 62 75 69 6c 74 69 6e 2e 4c 69 6e 6b 4d 6f 64 65 20 3d 20 2e 73 74 61 74 69 63 | :.std.builtin.LinkMode.=..static |
| cfe40 | 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 |
| cfe60 | 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 |
| cfe80 | 61 6e 3e 20 75 6e 77 69 6e 64 5f 74 61 62 6c 65 73 3a 20 73 74 64 2e 62 75 69 6c 74 69 6e 2e 55 | an>.unwind_tables:.std.builtin.U |
| cfea0 | 6e 77 69 6e 64 54 61 62 6c 65 73 20 3d 20 2e 61 73 79 6e 63 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 | nwindTables.=..async;.<span.clas |
| cfec0 | 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 |
| cfee0 | 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 74 20 | s="tok-kw">const</span>.is_test. |
| cff00 | 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f | =.<span.class="tok-null">false</ |
| cff20 | 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< |
| cff40 | 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 |
| cff60 | 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 61 6e | t</span>.single_threaded.=.<span |
| cff80 | 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>;. |
| cffa0 | 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>. |
| cffc0 | 3c 73 70 61 6e 20 63 6c 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 |
| cffe0 | 3e 20 61 62 69 3a 20 73 74 64 2e 54 61 72 67 65 74 2e 41 62 69 20 3d 20 2e 67 6e 75 3b 0a 3c 73 | >.abi:.std.Target.Abi.=..gnu;.<s |
| d0000 | 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 |
| d0020 | 70 61 6e 20 63 6c 61 73 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>. |
| d0040 | 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 |
| d0060 | 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.=.& |
| d0080 | 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,...... |
| d00a0 | 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 |
| d00c0 | 65 53 65 74 28 26 61 6d 70 3b 2e 7b 0a 20 20 20 20 20 20 20 20 2e 40 26 71 75 6f 74 3b 36 34 62 | eSet(&.{..........@"64b |
| d00e0 | 69 74 26 71 75 6f 74 3b 2c 0a 20 20 20 20 20 20 20 20 2e 61 64 78 2c 0a 20 20 20 20 20 20 20 20 | it",..........adx,......... |
| d0100 | 2e 61 65 73 2c 0a 20 20 20 20 20 20 20 20 2e 61 6c 6c 6f 77 5f 6c 69 67 68 74 5f 32 35 36 5f 62 | .aes,..........allow_light_256_b |
| d0120 | 69 74 2c 0a 20 20 20 20 20 20 20 20 2e 61 76 78 2c 0a 20 20 20 20 20 20 20 20 2e 61 76 78 32 2c | it,..........avx,..........avx2, |
| d0140 | 0a 20 20 20 20 20 20 20 20 2e 61 76 78 35 31 32 62 66 31 36 2c 0a 20 20 20 20 20 20 20 20 2e 61 | ..........avx512bf16,..........a |
| d0160 | 76 78 35 31 32 62 69 74 61 6c 67 2c 0a 20 20 20 20 20 20 20 20 2e 61 76 78 35 31 32 62 77 2c 0a | vx512bitalg,..........avx512bw,. |
| d0180 | 20 20 20 20 20 20 20 20 2e 61 76 78 35 31 32 63 64 2c 0a 20 20 20 20 20 20 20 20 2e 61 76 78 35 | .........avx512cd,..........avx5 |
| d01a0 | 31 32 64 71 2c 0a 20 20 20 20 20 20 20 20 2e 61 76 78 35 31 32 66 2c 0a 20 20 20 20 20 20 20 20 | 12dq,..........avx512f,......... |
| d01c0 | 2e 61 76 78 35 31 32 69 66 6d 61 2c 0a 20 20 20 20 20 20 20 20 2e 61 76 78 35 31 32 76 62 6d 69 | .avx512ifma,..........avx512vbmi |
| d01e0 | 2c 0a 20 20 20 20 20 20 20 20 2e 61 76 78 35 31 32 76 62 6d 69 32 2c 0a 20 20 20 20 20 20 20 20 | ,..........avx512vbmi2,......... |
| d0200 | 2e 61 76 78 35 31 32 76 6c 2c 0a 20 20 20 20 20 20 20 20 2e 61 76 78 35 31 32 76 6e 6e 69 2c 0a | .avx512vl,..........avx512vnni,. |
| d0220 | 20 20 20 20 20 20 20 20 2e 61 76 78 35 31 32 76 70 6f 70 63 6e 74 64 71 2c 0a 20 20 20 20 20 20 | .........avx512vpopcntdq,....... |
| d0240 | 20 20 2e 62 6d 69 2c 0a 20 20 20 20 20 20 20 20 2e 62 6d 69 32 2c 0a 20 20 20 20 20 20 20 20 2e | ...bmi,..........bmi2,.......... |
| d0260 | 62 72 61 6e 63 68 66 75 73 69 6f 6e 2c 0a 20 20 20 20 20 20 20 20 2e 63 6c 66 6c 75 73 68 6f 70 | branchfusion,..........clflushop |
| d0280 | 74 2c 0a 20 20 20 20 20 20 20 20 2e 63 6c 77 62 2c 0a 20 20 20 20 20 20 20 20 2e 63 6c 7a 65 72 | t,..........clwb,..........clzer |
| d02a0 | 6f 2c 0a 20 20 20 20 20 20 20 20 2e 63 6d 6f 76 2c 0a 20 20 20 20 20 20 20 20 2e 63 72 63 33 32 | o,..........cmov,..........crc32 |
| d02c0 | 2c 0a 20 20 20 20 20 20 20 20 2e 63 78 31 36 2c 0a 20 20 20 20 20 20 20 20 2e 63 78 38 2c 0a 20 | ,..........cx16,..........cx8,.. |
| d02e0 | 20 20 20 20 20 20 20 2e 65 76 65 78 35 31 32 2c 0a 20 20 20 20 20 20 20 20 2e 66 31 36 63 2c 0a | ........evex512,..........f16c,. |
| d0300 | 20 20 20 20 20 20 20 20 2e 66 61 73 74 5f 31 35 62 79 74 65 6e 6f 70 2c 0a 20 20 20 20 20 20 20 | .........fast_15bytenop,........ |
| d0320 | 20 2e 66 61 73 74 5f 62 65 78 74 72 2c 0a 20 20 20 20 20 20 20 20 2e 66 61 73 74 5f 64 70 77 73 | ..fast_bextr,..........fast_dpws |
| d0340 | 73 64 2c 0a 20 20 20 20 20 20 20 20 2e 66 61 73 74 5f 69 6d 6d 31 36 2c 0a 20 20 20 20 20 20 20 | sd,..........fast_imm16,........ |
| d0360 | 20 2e 66 61 73 74 5f 6c 7a 63 6e 74 2c 0a 20 20 20 20 20 20 20 20 2e 66 61 73 74 5f 6d 6f 76 62 | ..fast_lzcnt,..........fast_movb |
| d0380 | 65 2c 0a 20 20 20 20 20 20 20 20 2e 66 61 73 74 5f 73 63 61 6c 61 72 5f 66 73 71 72 74 2c 0a 20 | e,..........fast_scalar_fsqrt,.. |
| d03a0 | 20 20 20 20 20 20 20 2e 66 61 73 74 5f 73 63 61 6c 61 72 5f 73 68 69 66 74 5f 6d 61 73 6b 73 2c | ........fast_scalar_shift_masks, |
| d03c0 | 0a 20 20 20 20 20 20 20 20 2e 66 61 73 74 5f 76 61 72 69 61 62 6c 65 5f 70 65 72 6c 61 6e 65 5f | ..........fast_variable_perlane_ |
| d03e0 | 73 68 75 66 66 6c 65 2c 0a 20 20 20 20 20 20 20 20 2e 66 61 73 74 5f 76 65 63 74 6f 72 5f 66 73 | shuffle,..........fast_vector_fs |
| d0400 | 71 72 74 2c 0a 20 20 20 20 20 20 20 20 2e 66 6d 61 2c 0a 20 20 20 20 20 20 20 20 2e 66 73 67 73 | qrt,..........fma,..........fsgs |
| d0420 | 62 61 73 65 2c 0a 20 20 20 20 20 20 20 20 2e 66 73 72 6d 2c 0a 20 20 20 20 20 20 20 20 2e 66 78 | base,..........fsrm,..........fx |
| d0440 | 73 72 2c 0a 20 20 20 20 20 20 20 20 2e 67 66 6e 69 2c 0a 20 20 20 20 20 20 20 20 2e 69 64 69 76 | sr,..........gfni,..........idiv |
| d0460 | 71 5f 74 6f 5f 64 69 76 6c 2c 0a 20 20 20 20 20 20 20 20 2e 69 6e 76 70 63 69 64 2c 0a 20 20 20 | q_to_divl,..........invpcid,.... |
| d0480 | 20 20 20 20 20 2e 6c 7a 63 6e 74 2c 0a 20 20 20 20 20 20 20 20 2e 6d 61 63 72 6f 66 75 73 69 6f | ......lzcnt,..........macrofusio |
| d04a0 | 6e 2c 0a 20 20 20 20 20 20 20 20 2e 6d 6d 78 2c 0a 20 20 20 20 20 20 20 20 2e 6d 6f 76 62 65 2c | n,..........mmx,..........movbe, |
| d04c0 | 0a 20 20 20 20 20 20 20 20 2e 6d 77 61 69 74 78 2c 0a 20 20 20 20 20 20 20 20 2e 6e 6f 70 6c 2c | ..........mwaitx,..........nopl, |
| d04e0 | 0a 20 20 20 20 20 20 20 20 2e 70 63 6c 6d 75 6c 2c 0a 20 20 20 20 20 20 20 20 2e 70 6b 75 2c 0a | ..........pclmul,..........pku,. |
| d0500 | 20 20 20 20 20 20 20 20 2e 70 6f 70 63 6e 74 2c 0a 20 20 20 20 20 20 20 20 2e 70 72 66 63 68 77 | .........popcnt,..........prfchw |
| d0520 | 2c 0a 20 20 20 20 20 20 20 20 2e 72 64 70 69 64 2c 0a 20 20 20 20 20 20 20 20 2e 72 64 70 72 75 | ,..........rdpid,..........rdpru |
| d0540 | 2c 0a 20 20 20 20 20 20 20 20 2e 72 64 72 6e 64 2c 0a 20 20 20 20 20 20 20 20 2e 72 64 73 65 65 | ,..........rdrnd,..........rdsee |
| d0560 | 64 2c 0a 20 20 20 20 20 20 20 20 2e 73 61 68 66 2c 0a 20 20 20 20 20 20 20 20 2e 73 62 62 5f 64 | d,..........sahf,..........sbb_d |
| d0580 | 65 70 5f 62 72 65 61 6b 69 6e 67 2c 0a 20 20 20 20 20 20 20 20 2e 73 68 61 2c 0a 20 20 20 20 20 | ep_breaking,..........sha,...... |
| d05a0 | 20 20 20 2e 73 68 73 74 6b 2c 0a 20 20 20 20 20 20 20 20 2e 73 6c 6f 77 5f 73 68 6c 64 2c 0a 20 | ....shstk,..........slow_shld,.. |
| d05c0 | 20 20 20 20 20 20 20 2e 73 6d 61 70 2c 0a 20 20 20 20 20 20 20 20 2e 73 6d 65 70 2c 0a 20 20 20 | ........smap,..........smep,.... |
| d05e0 | 20 20 20 20 20 2e 73 73 65 2c 0a 20 20 20 20 20 20 20 20 2e 73 73 65 32 2c 0a 20 20 20 20 20 20 | ......sse,..........sse2,....... |
| d0600 | 20 20 2e 73 73 65 33 2c 0a 20 20 20 20 20 20 20 20 2e 73 73 65 34 5f 31 2c 0a 20 20 20 20 20 20 | ...sse3,..........sse4_1,....... |
| d0620 | 20 20 2e 73 73 65 34 5f 32 2c 0a 20 20 20 20 20 20 20 20 2e 73 73 65 34 61 2c 0a 20 20 20 20 20 | ...sse4_2,..........sse4a,...... |
| d0640 | 20 20 20 2e 73 73 73 65 33 2c 0a 20 20 20 20 20 20 20 20 2e 76 61 65 73 2c 0a 20 20 20 20 20 20 | ....ssse3,..........vaes,....... |
| d0660 | 20 20 2e 76 70 63 6c 6d 75 6c 71 64 71 2c 0a 20 20 20 20 20 20 20 20 2e 76 7a 65 72 6f 75 70 70 | ...vpclmulqdq,..........vzeroupp |
| d0680 | 65 72 2c 0a 20 20 20 20 20 20 20 20 2e 77 62 6e 6f 69 6e 76 64 2c 0a 20 20 20 20 20 20 20 20 2e | er,..........wbnoinvd,.......... |
| d06a0 | 78 38 37 2c 0a 20 20 20 20 20 20 20 20 2e 78 73 61 76 65 2c 0a 20 20 20 20 20 20 20 20 2e 78 73 | x87,..........xsave,..........xs |
| d06c0 | 61 76 65 63 2c 0a 20 20 20 20 20 20 20 20 2e 78 73 61 76 65 6f 70 74 2c 0a 20 20 20 20 20 20 20 | avec,..........xsaveopt,........ |
| d06e0 | 20 2e 78 73 61 76 65 73 2c 0a 20 20 20 20 7d 29 2c 0a 7d 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | ..xsaves,.....}),.};.<span.class |
| d0700 | 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 |
| d0720 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6f 73 3a 20 73 74 64 2e 54 | ="tok-kw">const</span>.os:.std.T |
| d0740 | 61 72 67 65 74 2e 4f 73 20 3d 20 2e 7b 0a 20 20 20 20 2e 74 61 67 20 3d 20 2e 6c 69 6e 75 78 2c | arget.Os.=..{......tag.=..linux, |
| d0760 | 0a 20 20 20 20 2e 76 65 72 73 69 6f 6e 5f 72 61 6e 67 65 20 3d 20 2e 7b 20 2e 6c 69 6e 75 78 20 | ......version_range.=..{..linux. |
| d0780 | 3d 20 2e 7b 0a 20 20 20 20 20 20 20 20 2e 72 61 6e 67 65 20 3d 20 2e 7b 0a 20 20 20 20 20 20 20 | =..{..........range.=..{........ |
| d07a0 | 20 20 20 20 20 2e 6d 69 6e 20 3d 20 2e 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2e | ......min.=..{.................. |
| d07c0 | 6d 61 6a 6f 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 | major.=.<span.class="tok-number" |
| d07e0 | 3e 36 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2e 6d 69 6e 6f | >6</span>,..................mino |
| d0800 | 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 36 3c | r.=.<span.class="tok-number">16< |
| d0820 | 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2e 70 61 74 63 68 20 3d | /span>,..................patch.= |
| d0840 | 20 3c 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 |
| d0860 | 6e 3e 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 2e | n>,.............},.............. |
| d0880 | 6d 61 78 20 3d 20 2e 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2e 6d 61 6a 6f 72 20 | max.=..{..................major. |
| d08a0 | 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 36 3c 2f 73 70 | =.<span.class="tok-number">6</sp |
| d08c0 | 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2e 6d 69 6e 6f 72 20 3d 20 3c 73 | an>,..................minor.=.<s |
| d08e0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 36 3c 2f 73 70 61 6e 3e | pan.class="tok-number">16</span> |
| d0900 | 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2e 70 61 74 63 68 20 3d 20 3c 73 70 61 6e | ,..................patch.=.<span |
| d0920 | 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>,... |
| d0940 | 20 20 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 | ..........},.........},......... |
| d0960 | 2e 67 6c 69 62 63 20 3d 20 2e 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 2e 6d 61 6a 6f 72 20 3d | .glibc.=..{..............major.= |
| d0980 | 20 3c 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 |
| d09a0 | 6e 3e 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 2e 6d 69 6e 6f 72 20 3d 20 3c 73 70 61 6e 20 63 | n>,..............minor.=.<span.c |
| d09c0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 39 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 | lass="tok-number">39</span>,.... |
| d09e0 | 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 22 74 | ..........patch.=.<span.class="t |
| d0a00 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 7d 2c 0a | ok-number">0</span>,.........},. |
| d0a20 | 20 20 20 20 20 20 20 20 2e 61 6e 64 72 6f 69 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | .........android.=.<span.class=" |
| d0a40 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 39 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 7d 7d 2c 0a 7d | tok-number">29</span>,.....}},.} |
| d0a60 | 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 |
| d0a80 | 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 |
| d0aa0 | 61 6e 3e 20 74 61 72 67 65 74 3a 20 73 74 64 2e 54 61 72 67 65 74 20 3d 20 2e 7b 0a 20 20 20 20 | an>.target:.std.Target.=..{..... |
| d0ac0 | 2e 63 70 75 20 3d 20 63 70 75 2c 0a 20 20 20 20 2e 6f 73 20 3d 20 6f 73 2c 0a 20 20 20 20 2e 61 | .cpu.=.cpu,......os.=.os,......a |
| d0ae0 | 62 69 20 3d 20 61 62 69 2c 0a 20 20 20 20 2e 6f 66 6d 74 20 3d 20 6f 62 6a 65 63 74 5f 66 6f 72 | bi.=.abi,......ofmt.=.object_for |
| d0b00 | 6d 61 74 2c 0a 20 20 20 20 2e 64 79 6e 61 6d 69 63 5f 6c 69 6e 6b 65 72 20 3d 20 2e 69 6e 69 74 | mat,......dynamic_linker.=..init |
| d0b20 | 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 2f 6e 69 | (<span.class="tok-str">"/ni |
| d0b40 | 78 2f 73 74 6f 72 65 2f 7a 64 70 62 79 33 6c 36 61 7a 69 37 38 73 6c 38 33 63 70 61 64 32 71 6a | x/store/zdpby3l6azi78sl83cpad2qj |
| d0b60 | 70 66 6a 32 35 61 71 78 2d 67 6c 69 62 63 2d 32 2e 34 30 2d 36 36 2f 6c 69 62 2f 6c 64 2d 6c 69 | pfj25aqx-glibc-2.40-66/lib/ld-li |
| d0b80 | 6e 75 78 2d 78 38 36 2d 36 34 2e 73 6f 2e 32 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2c 0a 7d | nux-x86-64.so.2"</span>),.} |
| d0ba0 | 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 |
| d0bc0 | 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 |
| d0be0 | 61 6e 3e 20 6f 62 6a 65 63 74 5f 66 6f 72 6d 61 74 3a 20 73 74 64 2e 54 61 72 67 65 74 2e 4f 62 | an>.object_format:.std.Target.Ob |
| d0c00 | 6a 65 63 74 46 6f 72 6d 61 74 20 3d 20 2e 65 6c 66 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | jectFormat.=..elf;.<span.class=" |
| d0c20 | 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=" |
| d0c40 | 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6d 6f 64 65 3a 20 73 74 64 2e 62 | tok-kw">const</span>.mode:.std.b |
| d0c60 | 75 69 6c 74 69 6e 2e 4f 70 74 69 6d 69 7a 65 4d 6f 64 65 20 3d 20 2e 44 65 62 75 67 3b 0a 3c 73 | uiltin.OptimizeMode.=..Debug;.<s |
| d0c80 | 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 |
| d0ca0 | 70 61 6e 20 63 6c 61 73 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>. |
| d0cc0 | 6c 69 6e 6b 5f 6c 69 62 63 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c | link_libc.=.<span.class="tok-nul |
| d0ce0 | 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | l">false</span>;.<span.class="to |
| d0d00 | 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 |
| d0d20 | 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6c 69 6e 6b 5f 6c 69 62 63 70 70 20 3d | k-kw">const</span>.link_libcpp.= |
| d0d40 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 | .<span.class="tok-null">false</s |
| d0d60 | 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 2f | pan>;.<span.class="tok-kw">pub</ |
| d0d80 | 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 | span>.<span.class="tok-kw">const |
| d0da0 | 3c 2f 73 70 61 6e 3e 20 68 61 76 65 5f 65 72 72 6f 72 5f 72 65 74 75 72 6e 5f 74 72 61 63 69 6e | </span>.have_error_return_tracin |
| d0dc0 | 67 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c | g.=.<span.class="tok-null">true< |
| d0de0 | 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 | /span>;.<span.class="tok-kw">pub |
| d0e00 | 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e | </span>.<span.class="tok-kw">con |
| d0e20 | 73 74 3c 2f 73 70 61 6e 3e 20 76 61 6c 67 72 69 6e 64 5f 73 75 70 70 6f 72 74 20 3d 20 3c 73 70 | st</span>.valgrind_support.=.<sp |
| d0e40 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 3b | an.class="tok-null">true</span>; |
| d0e60 | 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> |
| d0e80 | 20 3c 73 70 61 6e 20 63 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 |
| d0ea0 | 6e 3e 20 73 61 6e 69 74 69 7a 65 5f 74 68 72 65 61 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | n>.sanitize_thread.=.<span.class |
| d0ec0 | 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 | ="tok-null">false</span>;.<span. |
| d0ee0 | 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. |
| d0f00 | 63 6c 61 73 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 7a 7a | class="tok-kw">const</span>.fuzz |
| d0f20 | 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 3c | .=.<span.class="tok-null">false< |
| d0f40 | 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 | /span>;.<span.class="tok-kw">pub |
| d0f60 | 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e | </span>.<span.class="tok-kw">con |
| d0f80 | 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 63 | st</span>.position_independent_c |
| d0fa0 | 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 6c | ode.=.<span.class="tok-null">fal |
| d0fc0 | 73 65 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | se</span>;.<span.class="tok-kw"> |
| d0fe0 | 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"> |
| d1000 | 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 70 6f 73 69 74 69 6f 6e 5f 69 6e 64 65 70 65 6e 64 65 6e | const</span>.position_independen |
| d1020 | 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 2d | t_executable.=.<span.class="tok- |
| d1040 | 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | null">false</span>;.<span.class= |
| d1060 | 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= |
| d1080 | 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 75 | "tok-kw">const</span>.strip_debu |
| d10a0 | 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 3e | g_info.=.<span.class="tok-null"> |
| d10c0 | 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | false</span>;.<span.class="tok-k |
| d10e0 | 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 |
| d1100 | 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 63 6f 64 65 5f 6d 6f 64 65 6c 3a 20 73 74 64 2e | w">const</span>.code_model:.std. |
| d1120 | 62 75 69 6c 74 69 6e 2e 43 6f 64 65 4d 6f 64 65 6c 20 3d 20 2e 64 65 66 61 75 6c 74 3b 0a 3c 73 | builtin.CodeModel.=..default;.<s |
| d1140 | 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 |
| d1160 | 70 61 6e 20 63 6c 61 73 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>. |
| d1180 | 6f 6d 69 74 5f 66 72 61 6d 65 5f 70 6f 69 6e 74 65 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | omit_frame_pointer.=.<span.class |
| d11a0 | 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 3b 3c 2f 63 6f 64 65 3e | ="tok-null">false</span>;</code> |
| d11c0 | 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 | </pre></figure>.......<p>See.als |
| d11e0 | 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 42 75 69 6c 64 2d 4d | o:</p><ul>.<li><a.href="#Build-M |
| d1200 | 6f 64 65 22 3e 42 75 69 6c 64 20 4d 6f 64 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a | ode">Build.Mode</a></li>.</ul>.. |
| d1220 | 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 43 6f 6d 70 69 6c 61 74 69 6f 6e | .............<h2.id="Compilation |
| d1240 | 2d 4d 6f 64 65 6c 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 43 6f 6d 70 69 6c 61 74 69 6f | -Model"><a.href="#toc-Compilatio |
| d1260 | 6e 2d 4d 6f 64 65 6c 22 3e 43 6f 6d 70 69 6c 61 74 69 6f 6e 20 4d 6f 64 65 6c 3c 2f 61 3e 20 3c | n-Model">Compilation.Model</a>.< |
| d1280 | 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 43 6f 6d 70 69 6c 61 74 69 6f 6e | a.class="hdr".href="#Compilation |
| d12a0 | 2d 4d 6f 64 65 6c 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 | -Model">..</a></h2>........<p>.. |
| d12c0 | 20 20 20 20 20 41 20 5a 69 67 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 20 69 73 20 73 65 70 61 72 61 | .....A.Zig.compilation.is.separa |
| d12e0 | 74 65 64 20 69 6e 74 6f 20 3c 65 6d 3e 6d 6f 64 75 6c 65 73 3c 2f 65 6d 3e 2e 20 45 61 63 68 20 | ted.into.<em>modules</em>..Each. |
| d1300 | 6d 6f 64 75 6c 65 20 69 73 20 61 20 63 6f 6c 6c 65 63 74 69 6f 6e 20 6f 66 20 5a 69 67 20 73 6f | module.is.a.collection.of.Zig.so |
| d1320 | 75 72 63 65 20 66 69 6c 65 73 2c 0a 20 20 20 20 20 20 6f 6e 65 20 6f 66 20 77 68 69 63 68 20 69 | urce.files,.......one.of.which.i |
| d1340 | 73 20 74 68 65 20 6d 6f 64 75 6c 65 27 73 20 3c 65 6d 3e 72 6f 6f 74 20 73 6f 75 72 63 65 20 66 | s.the.module's.<em>root.source.f |
| d1360 | 69 6c 65 3c 2f 65 6d 3e 2e 20 45 61 63 68 20 6d 6f 64 75 6c 65 20 63 61 6e 20 3c 65 6d 3e 64 65 | ile</em>..Each.module.can.<em>de |
| d1380 | 70 65 6e 64 3c 2f 65 6d 3e 20 6f 6e 20 61 6e 79 20 6e 75 6d 62 65 72 20 6f 66 0a 20 20 20 20 20 | pend</em>.on.any.number.of...... |
| d13a0 | 20 6f 74 68 65 72 20 6d 6f 64 75 6c 65 73 2c 20 66 6f 72 6d 69 6e 67 20 61 20 64 69 72 65 63 74 | .other.modules,.forming.a.direct |
| d13c0 | 65 64 20 67 72 61 70 68 20 28 64 65 70 65 6e 64 65 6e 63 79 20 6c 6f 6f 70 73 20 62 65 74 77 65 | ed.graph.(dependency.loops.betwe |
| d13e0 | 65 6e 20 6d 6f 64 75 6c 65 73 20 61 72 65 20 61 6c 6c 6f 77 65 64 29 2e 20 49 66 20 6d 6f 64 75 | en.modules.are.allowed)..If.modu |
| d1400 | 6c 65 20 41 0a 20 20 20 20 20 20 64 65 70 65 6e 64 73 20 6f 6e 20 6d 6f 64 75 6c 65 20 42 2c 20 | le.A.......depends.on.module.B,. |
| d1420 | 74 68 65 6e 20 61 6e 79 20 5a 69 67 20 73 6f 75 72 63 65 20 66 69 6c 65 20 69 6e 20 6d 6f 64 75 | then.any.Zig.source.file.in.modu |
| d1440 | 6c 65 20 41 20 63 61 6e 20 69 6d 70 6f 72 74 20 74 68 65 20 3c 65 6d 3e 72 6f 6f 74 20 73 6f 75 | le.A.can.import.the.<em>root.sou |
| d1460 | 72 63 65 20 66 69 6c 65 3c 2f 65 6d 3e 20 6f 66 0a 20 20 20 20 20 20 6d 6f 64 75 6c 65 20 42 20 | rce.file</em>.of.......module.B. |
| d1480 | 75 73 69 6e 67 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 | using.<code><span.class="tok-bui |
| d14a0 | 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 77 69 74 68 | ltin">@import</span></code>.with |
| d14c0 | 20 74 68 65 20 6d 6f 64 75 6c 65 27 73 20 6e 61 6d 65 2e 20 49 6e 20 65 73 73 65 6e 63 65 2c 20 | .the.module's.name..In.essence,. |
| d14e0 | 61 20 6d 6f 64 75 6c 65 20 61 63 74 73 20 61 73 20 61 6e 0a 20 20 20 20 20 20 61 6c 69 61 73 20 | a.module.acts.as.an.......alias. |
| d1500 | 74 6f 20 69 6d 70 6f 72 74 20 61 20 5a 69 67 20 73 6f 75 72 63 65 20 66 69 6c 65 20 28 77 68 69 | to.import.a.Zig.source.file.(whi |
| d1520 | 63 68 20 6d 69 67 68 74 20 65 78 69 73 74 20 69 6e 20 61 20 63 6f 6d 70 6c 65 74 65 6c 79 20 73 | ch.might.exist.in.a.completely.s |
| d1540 | 65 70 61 72 61 74 65 20 70 61 72 74 20 6f 66 20 74 68 65 20 66 69 6c 65 73 79 73 74 65 6d 29 2e | eparate.part.of.the.filesystem). |
| d1560 | 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 20 73 69 | .......</p>.......<p>.......A.si |
| d1580 | 6d 70 6c 65 20 5a 69 67 20 70 72 6f 67 72 61 6d 20 63 6f 6d 70 69 6c 65 64 20 77 69 74 68 20 3c | mple.Zig.program.compiled.with.< |
| d15a0 | 63 6f 64 65 3e 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 3c 2f 63 6f 64 65 3e 20 68 61 73 20 74 77 | code>zig.build-exe</code>.has.tw |
| d15c0 | 6f 20 6b 65 79 20 6d 6f 64 75 6c 65 73 3a 20 74 68 65 20 6f 6e 65 20 63 6f 6e 74 61 69 6e 69 6e | o.key.modules:.the.one.containin |
| d15e0 | 67 20 79 6f 75 72 0a 20 20 20 20 20 20 63 6f 64 65 2c 20 6b 6e 6f 77 6e 20 61 73 20 74 68 65 20 | g.your.......code,.known.as.the. |
| d1600 | 22 6d 61 69 6e 22 20 6f 72 20 22 72 6f 6f 74 22 20 6d 6f 64 75 6c 65 2c 20 61 6e 64 20 74 68 65 | "main".or."root".module,.and.the |
| d1620 | 20 73 74 61 6e 64 61 72 64 20 6c 69 62 72 61 72 79 2e 20 59 6f 75 72 20 6d 6f 64 75 6c 65 20 3c | .standard.library..Your.module.< |
| d1640 | 65 6d 3e 64 65 70 65 6e 64 73 20 6f 6e 3c 2f 65 6d 3e 0a 20 20 20 20 20 20 74 68 65 20 73 74 61 | em>depends.on</em>.......the.sta |
| d1660 | 6e 64 61 72 64 20 6c 69 62 72 61 72 79 20 6d 6f 64 75 6c 65 20 75 6e 64 65 72 20 74 68 65 20 6e | ndard.library.module.under.the.n |
| d1680 | 61 6d 65 20 22 73 74 64 22 2c 20 77 68 69 63 68 20 69 73 20 77 68 61 74 20 61 6c 6c 6f 77 73 20 | ame."std",.which.is.what.allows. |
| d16a0 | 79 6f 75 20 74 6f 20 77 72 69 74 65 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 | you.to.write.......<code><span.c |
| d16c0 | 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 |
| d16e0 | 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 |
| d1700 | 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3c 2f 63 6f 64 65 3e 21 20 49 6e 20 66 61 63 74 2c | d"</span>)</code>!.In.fact, |
| d1720 | 20 65 76 65 72 79 20 73 69 6e 67 6c 65 20 6d 6f 64 75 6c 65 20 69 6e 20 61 20 5a 69 67 20 63 6f | .every.single.module.in.a.Zig.co |
| d1740 | 6d 70 69 6c 61 74 69 6f 6e 20 26 23 38 32 31 32 3b 20 69 6e 63 6c 75 64 69 6e 67 0a 20 20 20 20 | mpilation.—.including..... |
| d1760 | 20 20 74 68 65 20 73 74 61 6e 64 61 72 64 20 6c 69 62 72 61 72 79 20 69 74 73 65 6c 66 20 26 23 | ..the.standard.library.itself.&# |
| d1780 | 38 32 31 32 3b 20 69 6d 70 6c 69 63 69 74 6c 79 20 64 65 70 65 6e 64 73 20 6f 6e 20 74 68 65 20 | 8212;.implicitly.depends.on.the. |
| d17a0 | 73 74 61 6e 64 61 72 64 20 6c 69 62 72 61 72 79 20 6d 6f 64 75 6c 65 20 75 6e 64 65 72 20 74 68 | standard.library.module.under.th |
| d17c0 | 65 20 6e 61 6d 65 20 22 73 74 64 22 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c | e.name."std"........</p>.......< |
| d17e0 | 70 3e 0a 20 20 20 20 20 20 54 68 65 20 22 72 6f 6f 74 20 6d 6f 64 75 6c 65 22 20 28 74 68 65 20 | p>.......The."root.module".(the. |
| d1800 | 6f 6e 65 20 70 72 6f 76 69 64 65 64 20 62 79 20 79 6f 75 20 69 6e 20 74 68 65 20 3c 63 6f 64 65 | one.provided.by.you.in.the.<code |
| d1820 | 3e 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 3c 2f 63 6f 64 65 3e 20 65 78 61 6d 70 6c 65 29 20 68 | >zig.build-exe</code>.example).h |
| d1840 | 61 73 20 61 20 73 70 65 63 69 61 6c 0a 20 20 20 20 20 20 70 72 6f 70 65 72 74 79 2e 20 4c 69 6b | as.a.special.......property..Lik |
| d1860 | 65 20 74 68 65 20 73 74 61 6e 64 61 72 64 20 6c 69 62 72 61 72 79 2c 20 69 74 20 69 73 20 69 6d | e.the.standard.library,.it.is.im |
| d1880 | 70 6c 69 63 69 74 6c 79 20 6d 61 64 65 20 61 76 61 69 6c 61 62 6c 65 20 74 6f 20 61 6c 6c 20 6d | plicitly.made.available.to.all.m |
| d18a0 | 6f 64 75 6c 65 73 20 28 69 6e 63 6c 75 64 69 6e 67 20 69 74 73 65 6c 66 29 2c 0a 20 20 20 20 20 | odules.(including.itself),...... |
| d18c0 | 20 74 68 69 73 20 74 69 6d 65 20 75 6e 64 65 72 20 74 68 65 20 6e 61 6d 65 20 22 72 6f 6f 74 22 | .this.time.under.the.name."root" |
| d18e0 | 2e 20 53 6f 2c 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 | ..So,.<code><span.class="tok-bui |
| d1900 | 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 |
| d1920 | 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 72 6f 6f 74 26 71 75 6f 74 3b 3c 2f 73 70 61 | ="tok-str">"root"</spa |
| d1940 | 6e 3e 29 3c 2f 63 6f 64 65 3e 20 77 69 6c 6c 20 61 6c 77 61 79 73 20 62 65 20 65 71 75 69 76 61 | n>)</code>.will.always.be.equiva |
| d1960 | 6c 65 6e 74 20 74 6f 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | lent.to.......<code><span.class= |
| d1980 | 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 |
| d19a0 | 64 65 3e 20 6f 66 20 79 6f 75 72 20 22 6d 61 69 6e 22 20 73 6f 75 72 63 65 20 66 69 6c 65 20 28 | de>.of.your."main".source.file.( |
| d19c0 | 6f 66 74 65 6e 2c 20 62 75 74 20 6e 6f 74 20 6e 65 63 65 73 73 61 72 69 6c 79 2c 20 6e 61 6d 65 | often,.but.not.necessarily,.name |
| d19e0 | 64 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 6d 61 69 6e 2e 7a 69 67 3c 2f 63 6f 64 65 3e 29 2e 0a | d.......<code>main.zig</code>).. |
| d1a00 | 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 53 6f 75 72 63 65 2d | ......</p>.......<h3.id="Source- |
| d1a20 | 46 69 6c 65 2d 53 74 72 75 63 74 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 53 6f 75 72 | File-Structs"><a.href="#toc-Sour |
| d1a40 | 63 65 2d 46 69 6c 65 2d 53 74 72 75 63 74 73 22 3e 53 6f 75 72 63 65 20 46 69 6c 65 20 53 74 72 | ce-File-Structs">Source.File.Str |
| d1a60 | 75 63 74 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 53 | ucts</a>.<a.class="hdr".href="#S |
| d1a80 | 6f 75 72 63 65 2d 46 69 6c 65 2d 53 74 72 75 63 74 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a | ource-File-Structs">..</a></h3>. |
| d1aa0 | 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 45 76 65 72 79 20 5a 69 67 20 73 6f 75 72 63 | .......<p>.......Every.Zig.sourc |
| d1ac0 | 65 20 66 69 6c 65 20 69 73 20 69 6d 70 6c 69 63 69 74 6c 79 20 61 20 3c 63 6f 64 65 3e 3c 73 70 | e.file.is.implicitly.a.<code><sp |
| d1ae0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 74 72 75 63 74 3c 2f 73 70 61 6e 3e 3c | an.class="tok-kw">struct</span>< |
| d1b00 | 2f 63 6f 64 65 3e 20 64 65 63 6c 61 72 61 74 69 6f 6e 3b 20 79 6f 75 20 63 61 6e 20 69 6d 61 67 | /code>.declaration;.you.can.imag |
| d1b20 | 69 6e 65 20 74 68 61 74 0a 20 20 20 20 20 20 74 68 65 20 66 69 6c 65 27 73 20 63 6f 6e 74 65 6e | ine.that.......the.file's.conten |
| d1b40 | 74 73 20 61 72 65 20 6c 69 74 65 72 61 6c 6c 79 20 73 75 72 72 6f 75 6e 64 65 64 20 62 79 20 3c | ts.are.literally.surrounded.by.< |
| d1b60 | 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 74 72 75 63 74 | code><span.class="tok-kw">struct |
| d1b80 | 3c 2f 73 70 61 6e 3e 20 7b 20 2e 2e 2e 20 7d 3c 2f 63 6f 64 65 3e 2e 20 54 68 69 73 20 6d 65 61 | </span>.{.....}</code>..This.mea |
| d1ba0 | 6e 73 20 74 68 61 74 0a 20 20 20 20 20 20 61 73 20 77 65 6c 6c 20 61 73 20 64 65 63 6c 61 72 61 | ns.that.......as.well.as.declara |
| d1bc0 | 74 69 6f 6e 73 2c 20 74 68 65 20 74 6f 70 20 6c 65 76 65 6c 20 6f 66 20 61 20 66 69 6c 65 20 69 | tions,.the.top.level.of.a.file.i |
| d1be0 | 73 20 70 65 72 6d 69 74 74 65 64 20 74 6f 20 63 6f 6e 74 61 69 6e 20 66 69 65 6c 64 73 3a 0a 20 | s.permitted.to.contain.fields:.. |
| d1c00 | 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 |
| d1c20 | 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= |
| d1c40 | 22 66 69 6c 65 22 3e 54 6f 70 4c 65 76 65 6c 46 69 65 6c 64 73 2e 7a 69 67 3c 2f 63 69 74 65 3e | "file">TopLevelFields.zig</cite> |
| d1c60 | 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 |
| d1c80 | 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 21 20 42 65 63 61 75 73 65 20 74 68 | ass="tok-comment">//!.Because.th |
| d1ca0 | 69 73 20 66 69 6c 65 20 63 6f 6e 74 61 69 6e 73 20 66 69 65 6c 64 73 2c 20 69 74 20 69 73 20 61 | is.file.contains.fields,.it.is.a |
| d1cc0 | 20 74 79 70 65 20 77 68 69 63 68 20 69 73 20 69 6e 74 65 6e 64 65 64 20 74 6f 20 62 65 20 69 6e | .type.which.is.intended.to.be.in |
| d1ce0 | 73 74 61 6e 74 69 61 74 65 64 2c 20 61 6e 64 20 73 6f 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 | stantiated,.and.so</span>.<span. |
| d1d00 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 21 20 69 73 20 6e 61 6d 65 64 | class="tok-comment">//!.is.named |
| d1d20 | 20 69 6e 20 54 69 74 6c 65 43 61 73 65 20 69 6e 73 74 65 61 64 20 6f 66 20 73 6e 61 6b 65 5f 63 | .in.TitleCase.instead.of.snake_c |
| d1d40 | 61 73 65 20 62 79 20 63 6f 6e 76 65 6e 74 69 6f 6e 2e 3c 2f 73 70 61 6e 3e 0a 0a 66 6f 6f 3a 20 | ase.by.convention.</span>..foo:. |
| d1d60 | 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 |
| d1d80 | 3e 2c 0a 62 61 72 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 | >,.bar:.<span.class="tok-type">u |
| d1da0 | 36 34 3c 2f 73 70 61 6e 3e 2c 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d | 64</span>,..<span.class="tok-com |
| d1dc0 | 6d 65 6e 74 22 3e 2f 2f 2f 20 60 40 54 68 69 73 28 29 60 20 63 61 6e 20 62 65 20 75 73 65 64 20 | ment">///.`@This()`.can.be.used. |
| d1de0 | 74 6f 20 72 65 66 65 72 20 74 6f 20 74 68 69 73 20 73 74 72 75 63 74 20 74 79 70 65 2e 20 49 6e | to.refer.to.this.struct.type..In |
| d1e00 | 20 66 69 6c 65 73 20 77 69 74 68 20 66 69 65 6c 64 73 2c 20 69 74 20 69 73 20 71 75 69 74 65 20 | .files.with.fields,.it.is.quite. |
| d1e20 | 63 6f 6d 6d 6f 6e 20 74 6f 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | common.to</span>.<span.class="to |
| d1e40 | 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 6e 61 6d 65 20 74 68 65 20 74 79 70 65 20 68 65 72 | k-comment">///.name.the.type.her |
| d1e60 | 65 2c 20 73 6f 20 69 74 20 63 61 6e 20 62 65 20 65 61 73 69 6c 79 20 72 65 66 65 72 65 6e 63 65 | e,.so.it.can.be.easily.reference |
| d1e80 | 64 20 62 79 20 6f 74 68 65 72 20 64 65 63 6c 61 72 61 74 69 6f 6e 73 20 69 6e 20 74 68 69 73 20 | d.by.other.declarations.in.this. |
| d1ea0 | 66 69 6c 65 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | file.</span>.<span.class="tok-kw |
| d1ec0 | 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 54 6f 70 4c 65 76 65 6c 46 69 65 6c 64 73 20 3d 20 | ">const</span>.TopLevelFields.=. |
| d1ee0 | 3c 73 70 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 | <span.class="tok-builtin">@This< |
| d1f00 | 2f 73 70 61 6e 3e 28 29 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | /span>();..<span.class="tok-kw"> |
| d1f20 | 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"> |
| d1f40 | 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 69 | fn</span>.<span.class="tok-fn">i |
| d1f60 | 6e 69 74 3c 2f 73 70 61 6e 3e 28 76 61 6c 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | nit</span>(val:.<span.class="tok |
| d1f80 | 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 29 20 54 6f 70 4c 65 76 65 6c 46 69 65 6c 64 | -type">u32</span>).TopLevelField |
| d1fa0 | 73 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 | s.{.....<span.class="tok-kw">ret |
| d1fc0 | 75 72 6e 3c 2f 73 70 61 6e 3e 20 2e 7b 0a 20 20 20 20 20 20 20 20 2e 66 6f 6f 20 3d 20 76 61 6c | urn</span>..{..........foo.=.val |
| d1fe0 | 2c 0a 20 20 20 20 20 20 20 20 2e 62 61 72 20 3d 20 76 61 6c 20 2a 20 3c 73 70 61 6e 20 63 6c 61 | ,..........bar.=.val.*.<span.cla |
| d2000 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 7d | ss="tok-number">10</span>,.....} |
| d2020 | 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>....... |
| d2040 | 3c 70 3e 0a 20 20 20 20 20 20 53 75 63 68 20 66 69 6c 65 73 20 63 61 6e 20 62 65 20 69 6e 73 74 | <p>.......Such.files.can.be.inst |
| d2060 | 61 6e 74 69 61 74 65 64 20 6a 75 73 74 20 6c 69 6b 65 20 61 6e 79 20 6f 74 68 65 72 20 3c 63 6f | antiated.just.like.any.other.<co |
| d2080 | 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 74 72 75 63 74 3c 2f | de><span.class="tok-kw">struct</ |
| d20a0 | 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 74 79 70 65 2e 20 41 20 66 69 6c 65 27 73 20 22 72 6f 6f | span></code>.type..A.file's."roo |
| d20c0 | 74 0a 20 20 20 20 20 20 73 74 72 75 63 74 20 74 79 70 65 22 20 63 61 6e 20 62 65 20 72 65 66 65 | t.......struct.type".can.be.refe |
| d20e0 | 72 72 65 64 20 74 6f 20 77 69 74 68 69 6e 20 74 68 61 74 20 66 69 6c 65 20 75 73 69 6e 67 20 3c | rred.to.within.that.file.using.< |
| d2100 | 61 20 68 72 65 66 3d 22 23 54 68 69 73 22 3e 40 54 68 69 73 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 | a.href="#This">@This</a>........ |
| d2120 | 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 46 69 6c 65 2d 61 | </p>..............<h3.id="File-a |
| d2140 | 6e 64 2d 44 65 63 6c 61 72 61 74 69 6f 6e 2d 44 69 73 63 6f 76 65 72 79 22 3e 3c 61 20 68 72 65 | nd-Declaration-Discovery"><a.hre |
| d2160 | 66 3d 22 23 74 6f 63 2d 46 69 6c 65 2d 61 6e 64 2d 44 65 63 6c 61 72 61 74 69 6f 6e 2d 44 69 73 | f="#toc-File-and-Declaration-Dis |
| d2180 | 63 6f 76 65 72 79 22 3e 46 69 6c 65 20 61 6e 64 20 44 65 63 6c 61 72 61 74 69 6f 6e 20 44 69 73 | covery">File.and.Declaration.Dis |
| d21a0 | 63 6f 76 65 72 79 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 | covery</a>.<a.class="hdr".href=" |
| d21c0 | 23 46 69 6c 65 2d 61 6e 64 2d 44 65 63 6c 61 72 61 74 69 6f 6e 2d 44 69 73 63 6f 76 65 72 79 22 | #File-and-Declaration-Discovery" |
| d21e0 | 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 5a 69 | >..</a></h3>........<p>.......Zi |
| d2200 | 67 20 70 6c 61 63 65 73 20 69 6d 70 6f 72 74 61 6e 63 65 20 6f 6e 20 74 68 65 20 63 6f 6e 63 65 | g.places.importance.on.the.conce |
| d2220 | 70 74 20 6f 66 20 77 68 65 74 68 65 72 20 61 6e 79 20 70 69 65 63 65 20 6f 66 20 63 6f 64 65 20 | pt.of.whether.any.piece.of.code. |
| d2240 | 69 73 20 3c 65 6d 3e 73 65 6d 61 6e 74 69 63 61 6c 6c 79 20 61 6e 61 6c 79 7a 65 64 3c 2f 65 6d | is.<em>semantically.analyzed</em |
| d2260 | 3e 3b 20 69 6e 0a 20 20 20 20 20 20 65 73 73 65 6e 63 65 2c 20 77 68 65 74 68 65 72 20 74 68 65 | >;.in.......essence,.whether.the |
| d2280 | 20 63 6f 6d 70 69 6c 65 72 20 22 6c 6f 6f 6b 73 20 61 74 22 20 69 74 2e 20 57 68 61 74 20 63 6f | .compiler."looks.at".it..What.co |
| d22a0 | 64 65 20 69 73 20 61 6e 61 6c 79 7a 65 64 20 69 73 20 62 61 73 65 64 20 6f 6e 20 77 68 61 74 20 | de.is.analyzed.is.based.on.what. |
| d22c0 | 66 69 6c 65 73 20 61 6e 64 0a 20 20 20 20 20 20 64 65 63 6c 61 72 61 74 69 6f 6e 73 20 61 72 65 | files.and.......declarations.are |
| d22e0 | 20 22 64 69 73 63 6f 76 65 72 65 64 22 20 66 72 6f 6d 20 61 20 63 65 72 74 61 69 6e 20 70 6f 69 | ."discovered".from.a.certain.poi |
| d2300 | 6e 74 2e 20 54 68 69 73 20 70 72 6f 63 65 73 73 20 6f 66 20 22 64 69 73 63 6f 76 65 72 79 22 20 | nt..This.process.of."discovery". |
| d2320 | 69 73 20 62 61 73 65 64 20 6f 6e 20 61 20 73 69 6d 70 6c 65 20 73 65 74 0a 20 20 20 20 20 20 6f | is.based.on.a.simple.set.......o |
| d2340 | 66 20 72 65 63 75 72 73 69 76 65 20 72 75 6c 65 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 | f.recursive.rules:.......</p>... |
| d2360 | 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 49 66 20 61 20 63 61 6c 6c 20 74 | ....<ul>.........<li>If.a.call.t |
| d2380 | 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 6e | o.<code><span.class="tok-builtin |
| d23a0 | 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 69 73 20 61 6e 61 6c 79 | ">@import</span></code>.is.analy |
| d23c0 | 7a 65 64 2c 20 74 68 65 20 66 69 6c 65 20 62 65 69 6e 67 20 69 6d 70 6f 72 74 65 64 20 69 73 20 | zed,.the.file.being.imported.is. |
| d23e0 | 61 6e 61 6c 79 7a 65 64 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 49 66 20 61 20 | analyzed.</li>.........<li>If.a. |
| d2400 | 74 79 70 65 20 28 69 6e 63 6c 75 64 69 6e 67 20 61 20 66 69 6c 65 29 20 69 73 20 61 6e 61 6c 79 | type.(including.a.file).is.analy |
| d2420 | 7a 65 64 2c 20 61 6c 6c 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | zed,.all.<code><span.class="tok- |
| d2440 | 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 61 6e 64 20 3c | kw">comptime</span></code>.and.< |
| d2460 | 63 6f 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 | code><span.class="tok-kw">export |
| d2480 | 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 64 65 63 6c 61 72 61 74 69 6f 6e 73 20 77 69 74 68 | </span></code>.declarations.with |
| d24a0 | 69 6e 20 69 74 20 61 72 65 20 61 6e 61 6c 79 7a 65 64 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 | in.it.are.analyzed.</li>........ |
| d24c0 | 20 3c 6c 69 3e 49 66 20 61 20 74 79 70 65 20 28 69 6e 63 6c 75 64 69 6e 67 20 61 20 66 69 6c 65 | .<li>If.a.type.(including.a.file |
| d24e0 | 29 20 69 73 20 61 6e 61 6c 79 7a 65 64 2c 20 61 6e 64 20 74 68 65 20 63 6f 6d 70 69 6c 61 74 69 | ).is.analyzed,.and.the.compilati |
| d2500 | 6f 6e 20 69 73 20 66 6f 72 20 61 20 3c 61 20 68 72 65 66 3d 22 23 5a 69 67 2d 54 65 73 74 22 3e | on.is.for.a.<a.href="#Zig-Test"> |
| d2520 | 74 65 73 74 3c 2f 61 3e 2c 20 61 6e 64 20 74 68 65 20 6d 6f 64 75 6c 65 20 74 68 65 20 74 79 70 | test</a>,.and.the.module.the.typ |
| d2540 | 65 20 69 73 20 77 69 74 68 69 6e 20 69 73 20 74 68 65 20 72 6f 6f 74 20 6d 6f 64 75 6c 65 20 6f | e.is.within.is.the.root.module.o |
| d2560 | 66 20 74 68 65 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 2c 20 74 68 65 6e 20 61 6c 6c 20 3c 63 6f 64 | f.the.compilation,.then.all.<cod |
| d2580 | 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 | e><span.class="tok-kw">test</spa |
| d25a0 | 6e 3e 3c 2f 63 6f 64 65 3e 20 64 65 63 6c 61 72 61 74 69 6f 6e 73 20 77 69 74 68 69 6e 20 69 74 | n></code>.declarations.within.it |
| d25c0 | 20 61 72 65 20 61 6c 73 6f 20 61 6e 61 6c 79 7a 65 64 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 | .are.also.analyzed.</li>........ |
| d25e0 | 20 3c 6c 69 3e 49 66 20 61 20 72 65 66 65 72 65 6e 63 65 20 74 6f 20 61 20 6e 61 6d 65 64 20 64 | .<li>If.a.reference.to.a.named.d |
| d2600 | 65 63 6c 61 72 61 74 69 6f 6e 20 28 69 2e 65 2e 20 61 20 75 73 61 67 65 20 6f 66 20 69 74 29 20 | eclaration.(i.e..a.usage.of.it). |
| d2620 | 69 73 20 61 6e 61 6c 79 7a 65 64 2c 20 74 68 65 20 64 65 63 6c 61 72 61 74 69 6f 6e 20 62 65 69 | is.analyzed,.the.declaration.bei |
| d2640 | 6e 67 20 72 65 66 65 72 65 6e 63 65 64 20 69 73 20 61 6e 61 6c 79 7a 65 64 2e 20 44 65 63 6c 61 | ng.referenced.is.analyzed..Decla |
| d2660 | 72 61 74 69 6f 6e 73 20 61 72 65 20 6f 72 64 65 72 2d 69 6e 64 65 70 65 6e 64 65 6e 74 2c 20 73 | rations.are.order-independent,.s |
| d2680 | 6f 20 74 68 69 73 20 72 65 66 65 72 65 6e 63 65 20 6d 61 79 20 62 65 20 61 62 6f 76 65 20 6f 72 | o.this.reference.may.be.above.or |
| d26a0 | 20 62 65 6c 6f 77 20 74 68 65 20 64 65 63 6c 61 72 61 74 69 6f 6e 20 62 65 69 6e 67 20 72 65 66 | .below.the.declaration.being.ref |
| d26c0 | 65 72 65 6e 63 65 64 2c 20 6f 72 20 65 76 65 6e 20 69 6e 20 61 6e 6f 74 68 65 72 20 66 69 6c 65 | erenced,.or.even.in.another.file |
| d26e0 | 20 65 6e 74 69 72 65 6c 79 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 | .entirely.</li>.......</ul>..... |
| d2700 | 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 61 74 27 73 20 69 74 21 20 54 68 6f 73 65 20 72 75 6c | ..<p>.......That's.it!.Those.rul |
| d2720 | 65 73 20 64 65 66 69 6e 65 20 68 6f 77 20 5a 69 67 20 66 69 6c 65 73 20 61 6e 64 20 64 65 63 6c | es.define.how.Zig.files.and.decl |
| d2740 | 61 72 61 74 69 6f 6e 73 20 61 72 65 20 64 69 73 63 6f 76 65 72 65 64 2e 20 41 6c 6c 20 74 68 61 | arations.are.discovered..All.tha |
| d2760 | 74 20 72 65 6d 61 69 6e 73 20 69 73 20 74 6f 0a 20 20 20 20 20 20 75 6e 64 65 72 73 74 61 6e 64 | t.remains.is.to.......understand |
| d2780 | 20 77 68 65 72 65 20 74 68 69 73 20 70 72 6f 63 65 73 73 20 3c 65 6d 3e 73 74 61 72 74 73 3c 2f | .where.this.process.<em>starts</ |
| d27a0 | 65 6d 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 | em>........</p>.......<p>....... |
| d27c0 | 54 68 65 20 61 6e 73 77 65 72 20 74 6f 20 74 68 61 74 20 69 73 20 74 68 65 20 72 6f 6f 74 20 6f | The.answer.to.that.is.the.root.o |
| d27e0 | 66 20 74 68 65 20 73 74 61 6e 64 61 72 64 20 6c 69 62 72 61 72 79 3a 20 65 76 65 72 79 20 5a 69 | f.the.standard.library:.every.Zi |
| d2800 | 67 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 20 62 65 67 69 6e 73 20 62 79 20 61 6e 61 6c 79 7a 69 6e | g.compilation.begins.by.analyzin |
| d2820 | 67 20 74 68 65 0a 20 20 20 20 20 20 66 69 6c 65 20 3c 63 6f 64 65 3e 6c 69 62 2f 73 74 64 2f 73 | g.the.......file.<code>lib/std/s |
| d2840 | 74 64 2e 7a 69 67 3c 2f 63 6f 64 65 3e 2e 20 54 68 69 73 20 66 69 6c 65 20 63 6f 6e 74 61 69 6e | td.zig</code>..This.file.contain |
| d2860 | 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 77 22 3e 63 | s.a.<code><span.class="tok-kw">c |
| d2880 | 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 64 65 63 6c 61 72 61 74 69 6f | omptime</span></code>.declaratio |
| d28a0 | 6e 0a 20 20 20 20 20 20 77 68 69 63 68 20 69 6d 70 6f 72 74 73 20 3c 63 6f 64 65 3e 6c 69 62 2f | n.......which.imports.<code>lib/ |
| d28c0 | 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3c 2f 63 6f 64 65 3e 2c 20 61 6e 64 20 74 68 61 74 20 66 | std/start.zig</code>,.and.that.f |
| d28e0 | 69 6c 65 20 69 6e 20 74 75 72 6e 20 75 73 65 73 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 | ile.in.turn.uses.......<code><sp |
| d2900 | 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</ |
| d2920 | 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 |
| d2940 | 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 74 6f 20 72 | t;root"</span>)</code>.to.r |
| d2960 | 65 66 65 72 65 6e 63 65 20 74 68 65 20 22 72 6f 6f 74 20 6d 6f 64 75 6c 65 22 3b 20 73 6f 2c 20 | eference.the."root.module";.so,. |
| d2980 | 74 68 65 20 66 69 6c 65 20 79 6f 75 20 70 72 6f 76 69 64 65 20 61 73 20 79 6f 75 72 0a 20 20 20 | the.file.you.provide.as.your.... |
| d29a0 | 20 20 20 6d 61 69 6e 20 6d 6f 64 75 6c 65 27 73 20 72 6f 6f 74 20 73 6f 75 72 63 65 20 66 69 6c | ...main.module's.root.source.fil |
| d29c0 | 65 20 69 73 20 65 66 66 65 63 74 69 76 65 6c 79 20 61 6c 73 6f 20 61 20 72 6f 6f 74 2c 20 62 65 | e.is.effectively.also.a.root,.be |
| d29e0 | 63 61 75 73 65 20 74 68 65 20 73 74 61 6e 64 61 72 64 20 6c 69 62 72 61 72 79 20 77 69 6c 6c 20 | cause.the.standard.library.will. |
| d2a00 | 61 6c 77 61 79 73 0a 20 20 20 20 20 20 72 65 66 65 72 65 6e 63 65 20 69 74 2e 0a 20 20 20 20 20 | always.......reference.it....... |
| d2a20 | 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 6f 66 74 65 | .</p>.......<p>.......It.is.ofte |
| d2a40 | 6e 20 64 65 73 69 72 61 62 6c 65 20 74 6f 20 6d 61 6b 65 20 73 75 72 65 20 74 68 61 74 20 63 65 | n.desirable.to.make.sure.that.ce |
| d2a60 | 72 74 61 69 6e 20 64 65 63 6c 61 72 61 74 69 6f 6e 73 20 26 23 38 32 31 32 3b 20 70 61 72 74 69 | rtain.declarations.—.parti |
| d2a80 | 63 75 6c 61 72 6c 79 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | cularly.<code><span.class="tok-k |
| d2aa0 | 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 0a 20 20 20 20 20 20 6f 72 20 3c | w">test</span></code>.......or.< |
| d2ac0 | 63 6f 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 | code><span.class="tok-kw">export |
| d2ae0 | 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 64 65 63 6c 61 72 61 74 69 6f 6e 73 20 26 23 38 32 | </span></code>.declarations.R |
| d2b00 | 31 32 3b 20 61 72 65 20 64 69 73 63 6f 76 65 72 65 64 2e 20 42 61 73 65 64 20 6f 6e 20 74 68 65 | 12;.are.discovered..Based.on.the |
| d2b20 | 20 61 62 6f 76 65 20 72 75 6c 65 73 2c 20 61 20 63 6f 6d 6d 6f 6e 0a 20 20 20 20 20 20 73 74 72 | .above.rules,.a.common.......str |
| d2b40 | 61 74 65 67 79 20 66 6f 72 20 74 68 69 73 20 69 73 20 74 6f 20 75 73 65 20 3c 63 6f 64 65 3e 3c | ategy.for.this.is.to.use.<code>< |
| d2b60 | 73 70 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 |
| d2b80 | 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 77 69 74 68 69 6e 20 61 20 3c 63 6f 64 65 3e 3c 73 | </span></code>.within.a.<code><s |
| d2ba0 | 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 |
| d2bc0 | 6e 3e 3c 2f 63 6f 64 65 3e 20 6f 72 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 | n></code>.or.......<code><span.c |
| d2be0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e | lass="tok-kw">test</span></code> |
| d2c00 | 20 62 6c 6f 63 6b 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 | .block:.......</p>.......<figure |
| d2c20 | 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 |
| d2c40 | 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 66 6f 72 63 65 5f 66 69 6c 65 5f 64 69 73 63 6f | te.class="file">force_file_disco |
| d2c60 | 76 65 72 79 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 | very.zig</cite></figcaption><pre |
| d2c80 | 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 |
| d2ca0 | 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 |
| d2cc0 | 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 69 73 20 77 69 6c 6c 20 65 6e 73 75 72 65 20 | ok-comment">//.This.will.ensure. |
| d2ce0 | 74 68 61 74 20 74 68 65 20 66 69 6c 65 20 27 61 70 69 2e 7a 69 67 27 20 69 73 20 61 6c 77 61 79 | that.the.file.'api.zig'.is.alway |
| d2d00 | 73 20 64 69 73 63 6f 76 65 72 65 64 20 28 61 73 20 6c 6f 6e 67 20 61 73 20 74 68 69 73 20 66 69 | s.discovered.(as.long.as.this.fi |
| d2d20 | 6c 65 20 69 73 20 64 69 73 63 6f 76 65 72 65 64 29 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 | le.is.discovered).</span>.....<s |
| d2d40 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 49 74 20 69 73 | pan.class="tok-comment">//.It.is |
| d2d60 | 20 75 73 65 66 75 6c 20 69 66 20 27 61 70 69 2e 7a 69 67 27 20 63 6f 6e 74 61 69 6e 73 20 69 6d | .useful.if.'api.zig'.contains.im |
| d2d80 | 70 6f 72 74 61 6e 74 20 65 78 70 6f 72 74 65 64 20 64 65 63 6c 61 72 61 74 69 6f 6e 73 2e 3c 2f | portant.exported.declarations.</ |
| d2da0 | 73 70 61 6e 3e 0a 20 20 20 20 5f 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 | span>....._.=.<span.class="tok-b |
| d2dc0 | 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 |
| d2de0 | 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 61 70 69 2e 7a 69 67 26 71 75 6f 74 3b | ss="tok-str">"api.zig" |
| d2e00 | 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- |
| d2e20 | 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 57 65 20 63 6f 75 6c 64 20 61 6c 73 6f 20 68 61 76 65 20 61 | comment">//.We.could.also.have.a |
| d2e40 | 20 66 69 6c 65 20 77 68 69 63 68 20 63 6f 6e 74 61 69 6e 73 20 64 65 63 6c 61 72 61 74 69 6f 6e | .file.which.contains.declaration |
| d2e60 | 73 20 77 65 20 6f 6e 6c 79 20 77 61 6e 74 20 74 6f 20 65 78 70 6f 72 74 20 64 65 70 65 6e 64 69 | s.we.only.want.to.export.dependi |
| d2e80 | 6e 67 20 6f 6e 20 61 20 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 | ng.on.a.comptime</span>.....<spa |
| d2ea0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 63 6f 6e 64 69 74 69 | n.class="tok-comment">//.conditi |
| d2ec0 | 6f 6e 2e 20 49 6e 20 74 68 61 74 20 63 61 73 65 2c 20 77 65 20 63 61 6e 20 75 73 65 20 61 6e 20 | on..In.that.case,.we.can.use.an. |
| d2ee0 | 60 69 66 60 20 73 74 61 74 65 6d 65 6e 74 20 68 65 72 65 3a 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 | `if`.statement.here:</span>..... |
| d2f00 | 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>.( |
| d2f20 | 62 75 69 6c 74 69 6e 2e 6f 73 2e 74 61 67 20 3d 3d 20 2e 77 69 6e 64 6f 77 73 29 20 7b 0a 20 20 | builtin.os.tag.==..windows).{... |
| d2f40 | 20 20 20 20 20 20 5f 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 | ......_.=.<span.class="tok-built |
| d2f60 | 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=" |
| d2f80 | 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 77 69 6e 64 6f 77 73 5f 61 70 69 2e 7a 69 67 26 71 | tok-str">"windows_api.zig&q |
| d2fa0 | 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 7d 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 | uot;</span>);.....}.}..<span.cla |
| d2fc0 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 | ss="tok-kw">test</span>.{.....<s |
| d2fe0 | 70 61 6e 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 | pan.class="tok-comment">//.This. |
| d3000 | 77 69 6c 6c 20 65 6e 73 75 72 65 20 74 68 61 74 20 74 68 65 20 66 69 6c 65 20 27 74 65 73 74 73 | will.ensure.that.the.file.'tests |
| d3020 | 2e 7a 69 67 27 20 69 73 20 61 6c 77 61 79 73 20 64 69 73 63 6f 76 65 72 65 64 20 28 61 73 20 6c | .zig'.is.always.discovered.(as.l |
| d3040 | 6f 6e 67 20 61 73 20 74 68 69 73 20 66 69 6c 65 20 69 73 20 64 69 73 63 6f 76 65 72 65 64 29 2c | ong.as.this.file.is.discovered), |
| d3060 | 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 |
| d3080 | 6d 65 6e 74 22 3e 2f 2f 20 69 66 20 74 68 69 73 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 20 69 73 20 | ment">//.if.this.compilation.is. |
| d30a0 | 61 20 74 65 73 74 2e 20 49 74 20 69 73 20 75 73 65 66 75 6c 20 69 66 20 27 74 65 73 74 73 2e 7a | a.test..It.is.useful.if.'tests.z |
| d30c0 | 69 67 27 20 63 6f 6e 74 61 69 6e 73 20 74 65 73 74 73 20 77 65 20 77 61 6e 74 20 74 6f 20 65 6e | ig'.contains.tests.we.want.to.en |
| d30e0 | 73 75 72 65 20 61 72 65 20 72 75 6e 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 5f 20 3d 20 3c 73 70 | sure.are.run.</span>....._.=.<sp |
| d3100 | 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</ |
| d3120 | 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 |
| d3140 | 74 3b 74 65 73 74 73 2e 7a 69 67 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 20 20 20 20 | t;tests.zig"</span>);...... |
| d3160 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 57 65 20 | <span.class="tok-comment">//.We. |
| d3180 | 63 6f 75 6c 64 20 61 6c 73 6f 20 68 61 76 65 20 61 20 66 69 6c 65 20 77 68 69 63 68 20 63 6f 6e | could.also.have.a.file.which.con |
| d31a0 | 74 61 69 6e 73 20 74 65 73 74 73 20 77 65 20 6f 6e 6c 79 20 77 61 6e 74 20 74 6f 20 72 75 6e 20 | tains.tests.we.only.want.to.run. |
| d31c0 | 64 65 70 65 6e 64 69 6e 67 20 6f 6e 20 61 20 63 6f 6d 70 74 69 6d 65 20 63 6f 6e 64 69 74 69 6f | depending.on.a.comptime.conditio |
| d31e0 | 6e 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 | n.</span>.....<span.class="tok-c |
| d3200 | 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 49 6e 20 74 68 61 74 20 63 61 73 65 2c 20 77 65 20 63 61 6e 20 | omment">//.In.that.case,.we.can. |
| d3220 | 75 73 65 20 61 6e 20 60 69 66 60 20 73 74 61 74 65 6d 65 6e 74 20 68 65 72 65 3a 3c 2f 73 70 61 | use.an.`if`.statement.here:</spa |
| d3240 | 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 2f | n>.....<span.class="tok-kw">if</ |
| d3260 | 73 70 61 6e 3e 20 28 62 75 69 6c 74 69 6e 2e 6f 73 2e 74 61 67 20 3d 3d 20 2e 77 69 6e 64 6f 77 | span>.(builtin.os.tag.==..window |
| d3280 | 73 29 20 7b 0a 20 20 20 20 20 20 20 20 5f 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | s).{........._.=.<span.class="to |
| d32a0 | 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. |
| d32c0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 77 69 6e 64 6f 77 73 5f 74 65 | class="tok-str">"windows_te |
| d32e0 | 73 74 73 2e 7a 69 67 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 7d 0a 7d 0a 0a | sts.zig"</span>);.....}.}.. |
| d3300 | 3c 73 70 61 6e 20 63 6c 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 |
| d3320 | 3e 20 62 75 69 6c 74 69 6e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 | >.builtin.=.<span.class="tok-bui |
| d3340 | 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 |
| d3360 | 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 2f | ="tok-str">"builtin"</ |
| d3380 | 73 70 61 6e 3e 29 3b 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 20 20 | span>);</code></pre></figure>... |
| d33a0 | 20 20 20 20 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 53 70 65 63 69 61 6c 2d 52 6f 6f 74 2d | ...........<h3.id="Special-Root- |
| d33c0 | 44 65 63 6c 61 72 61 74 69 6f 6e 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 53 70 65 63 | Declarations"><a.href="#toc-Spec |
| d33e0 | 69 61 6c 2d 52 6f 6f 74 2d 44 65 63 6c 61 72 61 74 69 6f 6e 73 22 3e 53 70 65 63 69 61 6c 20 52 | ial-Root-Declarations">Special.R |
| d3400 | 6f 6f 74 20 44 65 63 6c 61 72 61 74 69 6f 6e 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 | oot.Declarations</a>.<a.class="h |
| d3420 | 64 72 22 20 68 72 65 66 3d 22 23 53 70 65 63 69 61 6c 2d 52 6f 6f 74 2d 44 65 63 6c 61 72 61 74 | dr".href="#Special-Root-Declarat |
| d3440 | 69 6f 6e 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 | ions">..</a></h3>........<p>.... |
| d3460 | 20 20 20 42 65 63 61 75 73 65 20 74 68 65 20 72 6f 6f 74 20 6d 6f 64 75 6c 65 27 73 20 72 6f 6f | ...Because.the.root.module's.roo |
| d3480 | 74 20 73 6f 75 72 63 65 20 66 69 6c 65 20 69 73 20 61 6c 77 61 79 73 20 61 63 63 65 73 73 69 62 | t.source.file.is.always.accessib |
| d34a0 | 6c 65 20 75 73 69 6e 67 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | le.using.......<code><span.class |
| d34c0 | 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 |
| d34e0 | 70 61 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 6f 6f 74 26 71 | pan.class="tok-str">"root&q |
| d3500 | 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3c 2f 63 6f 64 65 3e 2c 20 69 73 20 69 73 20 73 6f 6d 65 74 | uot;</span>)</code>,.is.is.somet |
| d3520 | 69 6d 65 73 20 75 73 65 64 20 62 79 20 6c 69 62 72 61 72 69 65 73 20 26 23 38 32 31 32 3b 20 69 | imes.used.by.libraries.—.i |
| d3540 | 6e 63 6c 75 64 69 6e 67 20 74 68 65 20 5a 69 67 20 53 74 61 6e 64 61 72 64 0a 20 20 20 20 20 20 | ncluding.the.Zig.Standard....... |
| d3560 | 4c 69 62 72 61 72 79 20 26 23 38 32 31 32 3b 20 61 73 20 61 20 70 6c 61 63 65 20 66 6f 72 20 74 | Library.—.as.a.place.for.t |
| d3580 | 68 65 20 70 72 6f 67 72 61 6d 20 74 6f 20 65 78 70 6f 73 65 20 73 6f 6d 65 20 22 67 6c 6f 62 61 | he.program.to.expose.some."globa |
| d35a0 | 6c 22 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 74 6f 20 74 68 61 74 20 6c 69 62 72 61 72 79 2e 20 | l".information.to.that.library.. |
| d35c0 | 54 68 65 20 5a 69 67 0a 20 20 20 20 20 20 53 74 61 6e 64 61 72 64 20 4c 69 62 72 61 72 79 20 77 | The.Zig.......Standard.Library.w |
| d35e0 | 69 6c 6c 20 6c 6f 6f 6b 20 66 6f 72 20 73 65 76 65 72 61 6c 20 64 65 63 6c 61 72 61 74 69 6f 6e | ill.look.for.several.declaration |
| d3600 | 73 20 69 6e 20 74 68 69 73 20 66 69 6c 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 | s.in.this.file........</p>...... |
| d3620 | 20 3c 68 34 20 69 64 3d 22 45 6e 74 72 79 2d 50 6f 69 6e 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 | .<h4.id="Entry-Point"><a.href="# |
| d3640 | 74 6f 63 2d 45 6e 74 72 79 2d 50 6f 69 6e 74 22 3e 45 6e 74 72 79 20 50 6f 69 6e 74 3c 2f 61 3e | toc-Entry-Point">Entry.Point</a> |
| d3660 | 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 74 72 79 2d 50 6f 69 | .<a.class="hdr".href="#Entry-Poi |
| d3680 | 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>...... |
| d36a0 | 20 57 68 65 6e 20 62 75 69 6c 64 69 6e 67 20 61 6e 20 65 78 65 63 75 74 61 62 6c 65 2c 20 74 68 | .When.building.an.executable,.th |
| d36c0 | 65 20 6d 6f 73 74 20 69 6d 70 6f 72 74 61 6e 74 20 74 68 69 6e 67 20 74 6f 20 62 65 20 6c 6f 6f | e.most.important.thing.to.be.loo |
| d36e0 | 6b 65 64 20 75 70 20 69 6e 20 74 68 69 73 20 66 69 6c 65 20 69 73 20 74 68 65 20 70 72 6f 67 72 | ked.up.in.this.file.is.the.progr |
| d3700 | 61 6d 27 73 0a 20 20 20 20 20 20 3c 65 6d 3e 65 6e 74 72 79 20 70 6f 69 6e 74 3c 2f 65 6d 3e 2e | am's.......<em>entry.point</em>. |
| d3720 | 20 4d 6f 73 74 20 63 6f 6d 6d 6f 6e 6c 79 2c 20 74 68 69 73 20 69 73 20 61 20 66 75 6e 63 74 69 | .Most.commonly,.this.is.a.functi |
| d3740 | 6f 6e 20 6e 61 6d 65 64 20 3c 63 6f 64 65 3e 6d 61 69 6e 3c 2f 63 6f 64 65 3e 2c 20 77 68 69 63 | on.named.<code>main</code>,.whic |
| d3760 | 68 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 73 74 64 2e 73 74 61 72 74 3c 2f 63 6f 64 65 3e 20 77 | h.......<code>std.start</code>.w |
| d3780 | 69 6c 6c 20 63 61 6c 6c 20 6a 75 73 74 20 61 66 74 65 72 20 70 65 72 66 6f 72 6d 69 6e 67 20 69 | ill.call.just.after.performing.i |
| d37a0 | 6d 70 6f 72 74 61 6e 74 20 69 6e 69 74 69 61 6c 69 7a 61 74 69 6f 6e 20 77 6f 72 6b 2e 0a 20 20 | mportant.initialization.work.... |
| d37c0 | 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 41 6c 74 65 72 6e 61 | ....</p>.......<p>.......Alterna |
| d37e0 | 74 69 76 65 6c 79 2c 20 74 68 65 20 70 72 65 73 65 6e 63 65 20 6f 66 20 61 20 64 65 63 6c 61 72 | tively,.the.presence.of.a.declar |
| d3800 | 61 74 69 6f 6e 20 6e 61 6d 65 64 20 3c 63 6f 64 65 3e 5f 73 74 61 72 74 3c 2f 63 6f 64 65 3e 20 | ation.named.<code>_start</code>. |
| d3820 | 28 66 6f 72 20 69 6e 73 74 61 6e 63 65 2c 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 6e | (for.instance,.......<code><span |
| d3840 | 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 |
| d3860 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 5f 73 74 | .class="tok-kw">const</span>._st |
| d3880 | 61 72 74 20 3d 20 7b 7d 3b 3c 2f 63 6f 64 65 3e 29 20 77 69 6c 6c 20 64 69 73 61 62 6c 65 20 74 | art.=.{};</code>).will.disable.t |
| d38a0 | 68 65 20 64 65 66 61 75 6c 74 20 3c 63 6f 64 65 3e 73 74 64 2e 73 74 61 72 74 3c 2f 63 6f 64 65 | he.default.<code>std.start</code |
| d38c0 | 3e 0a 20 20 20 20 20 20 6c 6f 67 69 63 2c 20 61 6c 6c 6f 77 69 6e 67 20 79 6f 75 72 20 72 6f 6f | >.......logic,.allowing.your.roo |
| d38e0 | 74 20 73 6f 75 72 63 65 20 66 69 6c 65 20 74 6f 20 65 78 70 6f 72 74 20 61 20 6c 6f 77 2d 6c 65 | t.source.file.to.export.a.low-le |
| d3900 | 76 65 6c 20 65 6e 74 72 79 20 70 6f 69 6e 74 20 61 73 20 6e 65 65 64 65 64 2e 0a 20 20 20 20 20 | vel.entry.point.as.needed....... |
| d3920 | 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. |
| d3940 | 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 |
| d3960 | 65 22 3e 65 6e 74 72 79 5f 70 6f 69 6e 74 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 | e">entry_point.zig</cite></figca |
| d3980 | 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 |
| d39a0 | 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 60 73 74 64 2e 73 74 61 72 74 60 20 69 6d 70 6f 72 | k-comment">///.`std.start`.impor |
| d39c0 | 74 73 20 74 68 69 73 20 66 69 6c 65 20 75 73 69 6e 67 20 60 40 69 6d 70 6f 72 74 28 26 71 75 6f | ts.this.file.using.`@import(&quo |
| d39e0 | 74 3b 72 6f 6f 74 26 71 75 6f 74 3b 29 60 2c 20 61 6e 64 20 75 73 65 73 20 74 68 69 73 20 64 65 | t;root")`,.and.uses.this.de |
| d3a00 | 63 6c 61 72 61 74 69 6f 6e 20 61 73 20 74 68 65 20 70 72 6f 67 72 61 6d 27 73 3c 2f 73 70 61 6e | claration.as.the.program's</span |
| d3a20 | 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 2f 20 | >.<span.class="tok-comment">///. |
| d3a40 | 75 73 65 72 2d 70 72 6f 76 69 64 65 64 20 65 6e 74 72 79 20 70 6f 69 6e 74 2e 20 49 74 20 63 61 | user-provided.entry.point..It.ca |
| d3a60 | 6e 20 72 65 74 75 72 6e 20 61 6e 79 20 6f 66 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 74 79 | n.return.any.of.the.following.ty |
| d3a80 | 70 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 | pes:</span>.<span.class="tok-com |
| d3aa0 | 6d 65 6e 74 22 3e 2f 2f 2f 20 2a 20 60 76 6f 69 64 60 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 | ment">///.*.`void`</span>.<span. |
| d3ac0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 2a 20 60 45 21 76 6f 69 | class="tok-comment">///.*.`E!voi |
| d3ae0 | 64 60 2c 20 66 6f 72 20 61 6e 79 20 65 72 72 6f 72 20 73 65 74 20 60 45 60 3c 2f 73 70 61 6e 3e | d`,.for.any.error.set.`E`</span> |
| d3b00 | 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 2a | .<span.class="tok-comment">///.* |
| d3b20 | 20 60 75 38 60 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f | .`u8`</span>.<span.class="tok-co |
| d3b40 | 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 2a 20 60 45 21 75 38 60 2c 20 66 6f 72 20 61 6e 79 20 65 72 72 | mment">///.*.`E!u8`,.for.any.err |
| d3b60 | 6f 72 20 73 65 74 20 60 45 60 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | or.set.`E`</span>.<span.class="t |
| d3b80 | 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 52 65 74 75 72 6e 69 6e 67 20 61 20 60 76 6f 69 | ok-comment">///.Returning.a.`voi |
| d3ba0 | 64 60 20 76 61 6c 75 65 20 66 72 6f 6d 20 74 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 77 69 6c 6c | d`.value.from.this.function.will |
| d3bc0 | 20 65 78 69 74 20 77 69 74 68 20 63 6f 64 65 20 30 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 | .exit.with.code.0.</span>.<span. |
| d3be0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 52 65 74 75 72 6e 69 6e | class="tok-comment">///.Returnin |
| d3c00 | 67 20 61 20 60 75 38 60 20 76 61 6c 75 65 20 66 72 6f 6d 20 74 68 69 73 20 66 75 6e 63 74 69 6f | g.a.`u8`.value.from.this.functio |
| d3c20 | 6e 20 77 69 6c 6c 20 65 78 69 74 20 77 69 74 68 20 74 68 65 20 67 69 76 65 6e 20 73 74 61 74 75 | n.will.exit.with.the.given.statu |
| d3c40 | 73 20 63 6f 64 65 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | s.code.</span>.<span.class="tok- |
| d3c60 | 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 52 65 74 75 72 6e 69 6e 67 20 61 6e 20 65 72 72 6f 72 20 | comment">///.Returning.an.error. |
| d3c80 | 76 61 6c 75 65 20 66 72 6f 6d 20 74 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 77 69 6c 6c 20 70 72 | value.from.this.function.will.pr |
| d3ca0 | 69 6e 74 20 61 6e 20 45 72 72 6f 72 20 52 65 74 75 72 6e 20 54 72 61 63 65 20 61 6e 64 20 65 78 | int.an.Error.Return.Trace.and.ex |
| d3cc0 | 69 74 20 77 69 74 68 20 63 6f 64 65 20 31 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 | it.with.code.1.</span>.<span.cla |
| d3ce0 | 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 |
| d3d00 | 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 |
| d3d20 | 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 |
| d3d40 | 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>.{... |
| d3d60 | 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 |
| d3d80 | 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 48 65 6c 6c 6f 2c 20 57 6f 72 6c 64 21 5c 6e 26 71 75 | ok-str">"Hello,.World!\n&qu |
| d3da0 | 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 7d 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | ot;</span>,..{});.}..<span.class |
| d3dc0 | 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 49 66 20 75 6e 63 6f 6d 6d 65 6e 74 65 64 | ="tok-comment">//.If.uncommented |
| d3de0 | 2c 20 74 68 69 73 20 64 65 63 6c 61 72 61 74 69 6f 6e 20 77 6f 75 6c 64 20 73 75 70 70 72 65 73 | ,.this.declaration.would.suppres |
| d3e00 | 73 20 74 68 65 20 75 73 75 61 6c 20 73 74 64 2e 73 74 61 72 74 20 6c 6f 67 69 63 2c 20 63 61 75 | s.the.usual.std.start.logic,.cau |
| d3e20 | 73 69 6e 67 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d | sing</span>.<span.class="tok-com |
| d3e40 | 6d 65 6e 74 22 3e 2f 2f 20 74 68 65 20 60 6d 61 69 6e 60 20 64 65 63 6c 61 72 61 74 69 6f 6e 20 | ment">//.the.`main`.declaration. |
| d3e60 | 61 62 6f 76 65 20 74 6f 20 62 65 20 69 67 6e 6f 72 65 64 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 | above.to.be.ignored.</span>.<spa |
| d3e80 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 70 75 62 20 63 6f 6e 73 | n.class="tok-comment">//pub.cons |
| d3ea0 | 74 20 5f 73 74 61 72 74 20 3d 20 7b 7d 3b 3c 2f 73 70 61 6e 3e 0a 0a 3c 73 70 61 6e 20 63 6c 61 | t._start.=.{};</span>..<span.cla |
| d3ec0 | 73 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.=.< |
| d3ee0 | 73 70 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 |
| d3f00 | 3c 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 |
| d3f20 | 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 3c 2f 63 6f 64 65 3e 3c 2f 70 | uot;std"</span>);</code></p |
| d3f40 | 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. |
| d3f60 | 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 |
| d3f80 | 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- |
| d3fa0 | 65 78 65 20 65 6e 74 72 79 5f 70 6f 69 6e 74 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 24 20 3c 6b 62 64 | exe.entry_point.zig</kbd>.$.<kbd |
| d3fc0 | 3e 2e 2f 65 6e 74 72 79 5f 70 6f 69 6e 74 3c 2f 6b 62 64 3e 0a 48 65 6c 6c 6f 2c 20 57 6f 72 6c | >./entry_point</kbd>.Hello,.Worl |
| d3fe0 | 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 20 20 20 20 20 20 | d!.</samp></pre></figure>....... |
| d4000 | 3c 70 3e 0a 20 20 20 20 20 20 49 66 20 74 68 65 20 5a 69 67 20 63 6f 6d 70 69 6c 61 74 69 6f 6e | <p>.......If.the.Zig.compilation |
| d4020 | 20 6c 69 6e 6b 73 20 6c 69 62 63 2c 20 74 68 65 20 3c 63 6f 64 65 3e 6d 61 69 6e 3c 2f 63 6f 64 | .links.libc,.the.<code>main</cod |
| d4040 | 65 3e 20 66 75 6e 63 74 69 6f 6e 20 63 61 6e 20 6f 70 74 69 6f 6e 61 6c 6c 79 20 62 65 20 61 6e | e>.function.can.optionally.be.an |
| d4060 | 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | .......<code><span.class="tok-kw |
| d4080 | 22 3e 65 78 70 6f 72 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ">export</span>.<span.class="tok |
| d40a0 | 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 77 68 69 63 68 20 6d 61 74 63 | -kw">fn</span></code>.which.matc |
| d40c0 | 68 65 73 20 74 68 65 20 73 69 67 6e 61 74 75 72 65 20 6f 66 20 74 68 65 20 43 20 3c 63 6f 64 65 | hes.the.signature.of.the.C.<code |
| d40e0 | 3e 6d 61 69 6e 3c 2f 63 6f 64 65 3e 20 66 75 6e 63 74 69 6f 6e 3a 0a 20 20 20 20 20 20 3c 2f 70 | >main</code>.function:.......</p |
| d4100 | 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 |
| d4120 | 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 6c | s="zig-cap"><cite.class="file">l |
| d4140 | 69 62 63 5f 65 78 70 6f 72 74 5f 65 6e 74 72 79 5f 70 6f 69 6e 74 2e 7a 69 67 3c 2f 63 69 74 65 | ibc_export_entry_point.zig</cite |
| d4160 | 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 |
| d4180 | 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 |
| d41a0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 78 70 6f 72 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 | lass="tok-kw">export</span>.<spa |
| d41c0 | 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 |
| d41e0 | 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 61 72 67 63 | .class="tok-fn">main</span>(argc |
| d4200 | 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 63 5f 69 6e 74 3c 2f | :.<span.class="tok-type">c_int</ |
| d4220 | 73 70 61 6e 3e 2c 20 61 72 67 76 3a 20 5b 2a 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | span>,.argv:.[*]<span.class="tok |
| d4240 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 5b 2a 3a 3c 73 70 61 6e 20 63 6c 61 73 73 | -kw">const</span>.[*:<span.class |
| d4260 | 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 |
| d4280 | 73 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 |
| d42a0 | 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 |
| d42c0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 63 5f 69 6e 74 3c 2f 73 70 61 6e 3e 20 7b | .class="tok-type">c_int</span>.{ |
| d42e0 | 0a 20 20 20 20 3c 73 70 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< |
| d4300 | 2f 73 70 61 6e 3e 20 61 72 67 73 20 3d 20 61 72 67 76 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | /span>.args.=.argv[<span.class=" |
| d4320 | 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 |
| d4340 | 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>( |
| d4360 | 61 72 67 63 29 5d 3b 0a 20 20 20 20 73 74 64 2e 64 65 62 75 67 2e 70 72 69 6e 74 28 3c 73 70 61 | argc)];.....std.debug.print(<spa |
| d4380 | 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 21 20 61 | n.class="tok-str">"Hello!.a |
| d43a0 | 72 67 76 5b 30 5d 20 69 73 20 27 7b 73 7d 27 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 | rgv[0].is.'{s}'\n"</span>,. |
| d43c0 | 2e 7b 61 72 67 73 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e | .{args[<span.class="tok-number"> |
| d43e0 | 30 3c 2f 73 70 61 6e 3e 5d 7d 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | 0</span>]});.....<span.class="to |
| d4400 | 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= |
| d4420 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 | "tok-number">0</span>;.}..<span. |
| d4440 | 63 6c 61 73 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. |
| d4460 | 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 |
| d4480 | 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" |
| d44a0 | 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 3c 2f 63 6f 64 65 3e | >"std"</span>);</code> |
| d44c0 | 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 |
| d44e0 | 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 |
| d4500 | 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 |
| d4520 | 6c 64 2d 65 78 65 20 6c 69 62 63 5f 65 78 70 6f 72 74 5f 65 6e 74 72 79 5f 70 6f 69 6e 74 2e 7a | ld-exe.libc_export_entry_point.z |
| d4540 | 69 67 20 2d 6c 63 3c 2f 6b 62 64 3e 0a 24 20 3c 6b 62 64 3e 2e 2f 6c 69 62 63 5f 65 78 70 6f 72 | ig.-lc</kbd>.$.<kbd>./libc_expor |
| d4560 | 74 5f 65 6e 74 72 79 5f 70 6f 69 6e 74 3c 2f 6b 62 64 3e 0a 48 65 6c 6c 6f 21 20 61 72 67 76 5b | t_entry_point</kbd>.Hello!.argv[ |
| d4580 | 30 5d 20 69 73 20 27 2e 2f 6c 69 62 63 5f 65 78 70 6f 72 74 5f 65 6e 74 72 79 5f 70 6f 69 6e 74 | 0].is.'./libc_export_entry_point |
| d45a0 | 27 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 | '.</samp></pre></figure>.......< |
| d45c0 | 70 3e 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 73 74 64 2e 73 74 61 72 74 3c 2f 63 6f 64 65 3e 20 | p>.......<code>std.start</code>. |
| d45e0 | 6d 61 79 20 61 6c 73 6f 20 75 73 65 20 6f 74 68 65 72 20 65 6e 74 72 79 20 70 6f 69 6e 74 20 64 | may.also.use.other.entry.point.d |
| d4600 | 65 63 6c 61 72 61 74 69 6f 6e 73 20 69 6e 20 63 65 72 74 61 69 6e 20 73 69 74 75 61 74 69 6f 6e | eclarations.in.certain.situation |
| d4620 | 73 2c 20 73 75 63 68 0a 20 20 20 20 20 20 61 73 20 3c 63 6f 64 65 3e 77 57 69 6e 4d 61 69 6e 3c | s,.such.......as.<code>wWinMain< |
| d4640 | 2f 63 6f 64 65 3e 20 6f 72 20 3c 63 6f 64 65 3e 45 66 69 4d 61 69 6e 3c 2f 63 6f 64 65 3e 2e 20 | /code>.or.<code>EfiMain</code>.. |
| d4660 | 52 65 66 65 72 20 74 6f 20 74 68 65 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 6c 69 62 2f 73 74 64 | Refer.to.the.......<code>lib/std |
| d4680 | 2f 73 74 61 72 74 2e 7a 69 67 3c 2f 63 6f 64 65 3e 20 6c 6f 67 69 63 20 66 6f 72 20 64 65 74 61 | /start.zig</code>.logic.for.deta |
| d46a0 | 69 6c 73 20 6f 66 20 74 68 65 73 65 20 64 65 63 6c 61 72 61 74 69 6f 6e 73 2e 0a 20 20 20 20 20 | ils.of.these.declarations....... |
| d46c0 | 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 34 20 69 64 3d 22 53 74 61 6e 64 | .</p>..............<h4.id="Stand |
| d46e0 | 61 72 64 2d 4c 69 62 72 61 72 79 2d 4f 70 74 69 6f 6e 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 | ard-Library-Options"><a.href="#t |
| d4700 | 6f 63 2d 53 74 61 6e 64 61 72 64 2d 4c 69 62 72 61 72 79 2d 4f 70 74 69 6f 6e 73 22 3e 53 74 61 | oc-Standard-Library-Options">Sta |
| d4720 | 6e 64 61 72 64 20 4c 69 62 72 61 72 79 20 4f 70 74 69 6f 6e 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 | ndard.Library.Options</a>.<a.cla |
| d4740 | 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 53 74 61 6e 64 61 72 64 2d 4c 69 62 72 61 72 79 | ss="hdr".href="#Standard-Library |
| d4760 | 2d 4f 70 74 69 6f 6e 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 34 3e 0a 0a 20 20 20 20 20 20 3c 70 3e | -Options">..</a></h4>........<p> |
| d4780 | 0a 20 20 20 20 20 20 54 68 65 20 73 74 61 6e 64 61 72 64 20 6c 69 62 72 61 72 79 20 61 6c 73 6f | .......The.standard.library.also |
| d47a0 | 20 6c 6f 6f 6b 73 20 66 6f 72 20 61 20 64 65 63 6c 61 72 61 74 69 6f 6e 20 69 6e 20 74 68 65 20 | .looks.for.a.declaration.in.the. |
| d47c0 | 72 6f 6f 74 20 6d 6f 64 75 6c 65 27 73 20 72 6f 6f 74 20 73 6f 75 72 63 65 20 66 69 6c 65 20 6e | root.module's.root.source.file.n |
| d47e0 | 61 6d 65 64 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 73 74 64 5f 6f 70 74 69 6f 6e 73 3c 2f 63 6f | amed.......<code>std_options</co |
| d4800 | 64 65 3e 2e 20 49 66 20 70 72 65 73 65 6e 74 2c 20 74 68 69 73 20 64 65 63 6c 61 72 61 74 69 6f | de>..If.present,.this.declaratio |
| d4820 | 6e 20 69 73 20 65 78 70 65 63 74 65 64 20 74 6f 20 62 65 20 61 20 73 74 72 75 63 74 20 6f 66 20 | n.is.expected.to.be.a.struct.of. |
| d4840 | 74 79 70 65 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 73 74 64 2e 4f 70 74 69 6f 6e 73 3c 2f 63 6f | type.......<code>std.Options</co |
| d4860 | 64 65 3e 2c 20 61 6e 64 20 61 6c 6c 6f 77 73 20 74 68 65 20 70 72 6f 67 72 61 6d 20 74 6f 20 63 | de>,.and.allows.the.program.to.c |
| d4880 | 75 73 74 6f 6d 69 7a 65 20 73 6f 6d 65 20 73 74 61 6e 64 61 72 64 20 6c 69 62 72 61 72 79 0a 20 | ustomize.some.standard.library.. |
| d48a0 | 20 20 20 20 20 66 75 6e 63 74 69 6f 6e 61 6c 69 74 79 2c 20 73 75 63 68 20 61 73 20 74 68 65 20 | .....functionality,.such.as.the. |
| d48c0 | 3c 63 6f 64 65 3e 73 74 64 2e 6c 6f 67 3c 2f 63 6f 64 65 3e 20 69 6d 70 6c 65 6d 65 6e 74 61 74 | <code>std.log</code>.implementat |
| d48e0 | 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 3e 3c 66 | ion........</p>.......<figure><f |
| d4900 | 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. |
| d4920 | 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 73 74 64 5f 6f 70 74 69 6f 6e 73 2e 7a 69 67 3c 2f 63 69 | class="file">std_options.zig</ci |
| d4940 | 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 |
| d4960 | 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 54 68 65 20 70 72 65 | .class="tok-comment">///.The.pre |
| d4980 | 73 65 6e 63 65 20 6f 66 20 74 68 69 73 20 64 65 63 6c 61 72 61 74 69 6f 6e 20 61 6c 6c 6f 77 73 | sence.of.this.declaration.allows |
| d49a0 | 20 74 68 65 20 70 72 6f 67 72 61 6d 20 74 6f 20 6f 76 65 72 72 69 64 65 20 63 65 72 74 61 69 6e | .the.program.to.override.certain |
| d49c0 | 20 62 65 68 61 76 69 6f 72 73 20 6f 66 20 74 68 65 20 73 74 61 6e 64 61 72 64 20 6c 69 62 72 61 | .behaviors.of.the.standard.libra |
| d49e0 | 72 79 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d | ry.</span>.<span.class="tok-comm |
| d4a00 | 65 6e 74 22 3e 2f 2f 2f 20 46 6f 72 20 61 20 66 75 6c 6c 20 6c 69 73 74 20 6f 66 20 61 76 61 69 | ent">///.For.a.full.list.of.avai |
| d4a20 | 6c 61 62 6c 65 20 6f 70 74 69 6f 6e 73 2c 20 73 65 65 20 74 68 65 20 64 6f 63 75 6d 65 6e 74 61 | lable.options,.see.the.documenta |
| d4a40 | 74 69 6f 6e 20 66 6f 72 20 60 73 74 64 2e 4f 70 74 69 6f 6e 73 60 2e 3c 2f 73 70 61 6e 3e 0a 3c | tion.for.`std.Options`.</span>.< |
| d4a60 | 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>.< |
| d4a80 | 73 70 61 6e 20 63 6c 61 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> |
| d4aa0 | 20 73 74 64 5f 6f 70 74 69 6f 6e 73 3a 20 73 74 64 2e 4f 70 74 69 6f 6e 73 20 3d 20 2e 7b 0a 20 | .std_options:.std.Options.=..{.. |
| d4ac0 | 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">//. |
| d4ae0 | 42 79 20 64 65 66 61 75 6c 74 2c 20 69 6e 20 73 61 66 65 20 62 75 69 6c 64 20 6d 6f 64 65 73 2c | By.default,.in.safe.build.modes, |
| d4b00 | 20 74 68 65 20 73 74 61 6e 64 61 72 64 20 6c 69 62 72 61 72 79 20 77 69 6c 6c 20 61 74 74 61 63 | .the.standard.library.will.attac |
| d4b20 | 68 20 61 20 73 65 67 66 61 75 6c 74 20 68 61 6e 64 6c 65 72 20 74 6f 20 74 68 65 20 70 72 6f 67 | h.a.segfault.handler.to.the.prog |
| d4b40 | 72 61 6d 20 74 6f 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ram.to</span>.....<span.class="t |
| d4b60 | 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 70 72 69 6e 74 20 61 20 68 65 6c 70 66 75 6c 20 73 | ok-comment">//.print.a.helpful.s |
| d4b80 | 74 61 63 6b 20 74 72 61 63 65 20 69 66 20 61 20 73 65 67 6d 65 6e 74 61 74 69 6f 6e 20 66 61 75 | tack.trace.if.a.segmentation.fau |
| d4ba0 | 6c 74 20 6f 63 63 75 72 73 2e 20 48 65 72 65 2c 20 77 65 20 63 61 6e 20 64 69 73 61 62 6c 65 20 | lt.occurs..Here,.we.can.disable. |
| d4bc0 | 74 68 69 73 2c 20 6f 72 20 65 76 65 6e 20 65 6e 61 62 6c 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 | this,.or.even.enable</span>..... |
| d4be0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 69 74 20 | <span.class="tok-comment">//.it. |
| d4c00 | 69 6e 20 75 6e 73 61 66 65 20 62 75 69 6c 64 20 6d 6f 64 65 73 2e 3c 2f 73 70 61 6e 3e 0a 20 20 | in.unsafe.build.modes.</span>... |
| d4c20 | 20 20 2e 65 6e 61 62 6c 65 5f 73 65 67 66 61 75 6c 74 5f 68 61 6e 64 6c 65 72 20 3d 20 3c 73 70 | ...enable_segfault_handler.=.<sp |
| d4c40 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 2c | an.class="tok-null">true</span>, |
| d4c60 | 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">/ |
| d4c80 | 2f 20 54 68 69 73 20 69 73 20 74 68 65 20 6c 6f 67 67 69 6e 67 20 66 75 6e 63 74 69 6f 6e 20 75 | /.This.is.the.logging.function.u |
| d4ca0 | 73 65 64 20 62 79 20 60 73 74 64 2e 6c 6f 67 60 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 2e 6c 6f | sed.by.`std.log`.</span>......lo |
| d4cc0 | 67 46 6e 20 3d 20 6d 79 4c 6f 67 46 6e 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | gFn.=.myLogFn,.};..<span.class=" |
| d4ce0 | 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 |
| d4d00 | 6f 6b 2d 66 6e 22 3e 6d 79 4c 6f 67 46 6e 3c 2f 73 70 61 6e 3e 28 0a 20 20 20 20 3c 73 70 61 6e | ok-fn">myLogFn</span>(.....<span |
| d4d20 | 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>. |
| d4d40 | 6c 65 76 65 6c 3a 20 73 74 64 2e 6c 6f 67 2e 4c 65 76 65 6c 2c 0a 20 20 20 20 3c 73 70 61 6e 20 | level:.std.log.Level,.....<span. |
| d4d60 | 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 73 | class="tok-kw">comptime</span>.s |
| d4d80 | 63 6f 70 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e | cope:.<span.class="tok-builtin"> |
| d4da0 | 40 54 79 70 65 3c 2f 73 70 61 6e 3e 28 2e 65 6e 75 6d 5f 6c 69 74 65 72 61 6c 29 2c 0a 20 20 20 | @Type</span>(.enum_literal),.... |
| d4dc0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f | .<span.class="tok-kw">comptime</ |
| d4de0 | 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 74 6f 6b | span>.format:.[]<span.class="tok |
| d4e00 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | -kw">const</span>.<span.class="t |
| d4e20 | 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 61 72 67 73 3a 20 3c 73 | ok-type">u8</span>,.....args:.<s |
| d4e40 | 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 |
| d4e60 | 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 76 6f 69 64 | >,.).<span.class="tok-type">void |
| d4e80 | 3c 2f 73 70 61 6e 3e 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 |
| d4ea0 | 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 57 65 20 63 6f 75 6c 64 20 64 6f 20 61 6e 79 74 68 69 6e 67 20 | omment">//.We.could.do.anything. |
| d4ec0 | 77 65 20 77 61 6e 74 20 68 65 72 65 21 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 | we.want.here!</span>.....<span.c |
| d4ee0 | 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 2e 2e 2e 62 75 74 20 61 63 74 | lass="tok-comment">//....but.act |
| d4f00 | 75 61 6c 6c 79 2c 20 6c 65 74 27 73 20 6a 75 73 74 20 63 61 6c 6c 20 74 68 65 20 64 65 66 61 75 | ually,.let's.just.call.the.defau |
| d4f20 | 6c 74 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 73 74 | lt.implementation.</span>.....st |
| d4f40 | 64 2e 6c 6f 67 2e 64 65 66 61 75 6c 74 4c 6f 67 28 6c 65 76 65 6c 2c 20 73 63 6f 70 65 2c 20 66 | d.log.defaultLog(level,.scope,.f |
| d4f60 | 6f 72 6d 61 74 2c 20 61 72 67 73 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ormat,.args);.}..<span.class="to |
| d4f80 | 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 |
| d4fa0 | 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 |
| d4fc0 | 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 |
| d4fe0 | 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 | d"</span>);</code></pre></f |
| d5000 | 69 67 75 72 65 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 34 20 69 64 3d 22 50 61 6e 69 | igure>..............<h4.id="Pani |
| d5020 | 63 2d 48 61 6e 64 6c 65 72 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 50 61 6e 69 63 2d 48 | c-Handler"><a.href="#toc-Panic-H |
| d5040 | 61 6e 64 6c 65 72 22 3e 50 61 6e 69 63 20 48 61 6e 64 6c 65 72 3c 2f 61 3e 20 3c 61 20 63 6c 61 | andler">Panic.Handler</a>.<a.cla |
| d5060 | 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 50 61 6e 69 63 2d 48 61 6e 64 6c 65 72 22 3e c2 | ss="hdr".href="#Panic-Handler">. |
| d5080 | 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 54 68 65 20 | .</a></h4>........<p>.......The. |
| d50a0 | 5a 69 67 20 53 74 61 6e 64 61 72 64 20 4c 69 62 72 61 72 79 20 6c 6f 6f 6b 73 20 66 6f 72 20 61 | Zig.Standard.Library.looks.for.a |
| d50c0 | 20 64 65 63 6c 61 72 61 74 69 6f 6e 20 6e 61 6d 65 64 20 3c 63 6f 64 65 3e 70 61 6e 69 63 3c 2f | .declaration.named.<code>panic</ |
| d50e0 | 63 6f 64 65 3e 20 69 6e 20 74 68 65 20 72 6f 6f 74 20 6d 6f 64 75 6c 65 27 73 0a 20 20 20 20 20 | code>.in.the.root.module's...... |
| d5100 | 20 72 6f 6f 74 20 73 6f 75 72 63 65 20 66 69 6c 65 2e 20 49 66 20 70 72 65 73 65 6e 74 2c 20 69 | .root.source.file..If.present,.i |
| d5120 | 74 20 69 73 20 65 78 70 65 63 74 65 64 20 74 6f 20 62 65 20 61 20 6e 61 6d 65 73 70 61 63 65 20 | t.is.expected.to.be.a.namespace. |
| d5140 | 28 63 6f 6e 74 61 69 6e 65 72 20 74 79 70 65 29 20 77 69 74 68 20 64 65 63 6c 61 72 61 74 69 6f | (container.type).with.declaratio |
| d5160 | 6e 73 0a 20 20 20 20 20 20 70 72 6f 76 69 64 69 6e 67 20 64 69 66 66 65 72 65 6e 74 20 70 61 6e | ns.......providing.different.pan |
| d5180 | 69 63 20 68 61 6e 64 6c 65 72 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 | ic.handlers........</p>.......<p |
| d51a0 | 3e 0a 20 20 20 20 20 20 53 65 65 20 3c 63 6f 64 65 3e 73 74 64 2e 64 65 62 75 67 2e 73 69 6d 70 | >.......See.<code>std.debug.simp |
| d51c0 | 6c 65 5f 70 61 6e 69 63 3c 2f 63 6f 64 65 3e 20 66 6f 72 20 61 20 62 61 73 69 63 20 69 6d 70 6c | le_panic</code>.for.a.basic.impl |
| d51e0 | 65 6d 65 6e 74 61 74 69 6f 6e 20 6f 66 20 74 68 69 73 20 6e 61 6d 65 73 70 61 63 65 2e 0a 20 20 | ementation.of.this.namespace.... |
| d5200 | 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 76 65 72 72 69 64 | ....</p>.......<p>.......Overrid |
| d5220 | 69 6e 67 20 68 6f 77 20 74 68 65 20 70 61 6e 69 63 20 68 61 6e 64 6c 65 72 20 61 63 74 75 61 6c | ing.how.the.panic.handler.actual |
| d5240 | 6c 79 20 6f 75 74 70 75 74 73 20 6d 65 73 73 61 67 65 73 2c 20 62 75 74 20 6b 65 65 70 69 6e 67 | ly.outputs.messages,.but.keeping |
| d5260 | 20 74 68 65 20 66 6f 72 6d 61 74 74 65 64 20 73 61 66 65 74 79 20 70 61 6e 69 63 73 0a 20 20 20 | .the.formatted.safety.panics.... |
| d5280 | 20 20 20 77 68 69 63 68 20 61 72 65 20 65 6e 61 62 6c 65 64 20 62 79 20 64 65 66 61 75 6c 74 2c | ...which.are.enabled.by.default, |
| d52a0 | 20 63 61 6e 20 62 65 20 65 61 73 69 6c 79 20 61 63 68 69 65 76 65 64 20 77 69 74 68 20 3c 63 6f | .can.be.easily.achieved.with.<co |
| d52c0 | 64 65 3e 73 74 64 2e 64 65 62 75 67 2e 46 75 6c 6c 50 61 6e 69 63 3c 2f 63 6f 64 65 3e 3a 0a 20 | de>std.debug.FullPanic</code>:.. |
| d52e0 | 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 |
| d5300 | 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= |
| d5320 | 22 66 69 6c 65 22 3e 70 61 6e 69 63 5f 68 61 6e 64 6c 65 72 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c | "file">panic_handler.zig</cite>< |
| d5340 | 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 |
| d5360 | 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 |
| d5380 | 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 |
| d53a0 | 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 |
| d53c0 | 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>.{... |
| d53e0 | 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 65 74 | ..<span.class="tok-builtin">@set |
| d5400 | 52 75 6e 74 69 6d 65 53 61 66 65 74 79 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 | RuntimeSafety</span>(<span.class |
| d5420 | 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 20 20 20 3c 73 | ="tok-null">true</span>);.....<s |
| d5440 | 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: |
| d5460 | 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 |
| d5480 | 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 35 35 | >.=.<span.class="tok-number">255 |
| d54a0 | 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 |
| d54c0 | 6d 6d 65 6e 74 22 3e 2f 2f 20 4c 65 74 27 73 20 6f 76 65 72 66 6c 6f 77 20 74 68 69 73 20 69 6e | mment">//.Let's.overflow.this.in |
| d54e0 | 74 65 67 65 72 21 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 78 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 | teger!</span>.....x.+=.<span.cla |
| d5500 | 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 0a 0a 3c 73 70 | ss="tok-number">1</span>;.}..<sp |
| d5520 | 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 |
| d5540 | 61 6e 20 63 6c 61 73 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 |
| d5560 | 61 6e 69 63 20 3d 20 73 74 64 2e 64 65 62 75 67 2e 46 75 6c 6c 50 61 6e 69 63 28 6d 79 50 61 6e | anic.=.std.debug.FullPanic(myPan |
| d5580 | 69 63 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 2f 73 | ic);..<span.class="tok-kw">fn</s |
| d55a0 | 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 6d 79 50 61 6e 69 | pan>.<span.class="tok-fn">myPani |
| d55c0 | 63 3c 2f 73 70 61 6e 3e 28 6d 73 67 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | c</span>(msg:.[]<span.class="tok |
| d55e0 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | -kw">const</span>.<span.class="t |
| d5600 | 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 66 69 72 73 74 5f 74 72 61 63 65 5f | ok-type">u8</span>,.first_trace_ |
| d5620 | 61 64 64 72 3a 20 3f 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 | addr:.?<span.class="tok-type">us |
| d5640 | 69 7a 65 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | ize</span>).<span.class="tok-typ |
| d5660 | 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 5f 20 3d 20 66 69 72 | e">noreturn</span>.{....._.=.fir |
| d5680 | 73 74 5f 74 72 61 63 65 5f 61 64 64 72 3b 0a 20 20 20 20 73 74 64 2e 64 65 62 75 67 2e 70 72 69 | st_trace_addr;.....std.debug.pri |
| d56a0 | 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 50 | nt(<span.class="tok-str">"P |
| d56c0 | 61 6e 69 63 21 20 7b 73 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 6d 73 67 7d | anic!.{s}\n"</span>,..{msg} |
| d56e0 | 29 3b 0a 20 20 20 20 73 74 64 2e 70 72 6f 63 65 73 73 2e 65 78 69 74 28 3c 73 70 61 6e 20 63 6c | );.....std.process.exit(<span.cl |
| d5700 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c | ass="tok-number">1</span>);.}..< |
| d5720 | 73 70 61 6e 20 63 6c 61 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> |
| d5740 | 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" |
| d5760 | 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 |
| d5780 | 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 3c 2f | -str">"std"</span>);</ |
| d57a0 | 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 |
| d57c0 | 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< |
| d57e0 | 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 |
| d5800 | 67 20 62 75 69 6c 64 2d 65 78 65 20 70 61 6e 69 63 5f 68 61 6e 64 6c 65 72 2e 7a 69 67 3c 2f 6b | g.build-exe.panic_handler.zig</k |
| d5820 | 62 64 3e 0a 24 20 3c 6b 62 64 3e 2e 2f 70 61 6e 69 63 5f 68 61 6e 64 6c 65 72 3c 2f 6b 62 64 3e | bd>.$.<kbd>./panic_handler</kbd> |
| d5840 | 0a 50 61 6e 69 63 21 20 69 6e 74 65 67 65 72 20 6f 76 65 72 66 6c 6f 77 0a 3c 2f 73 61 6d 70 3e | .Panic!.integer.overflow.</samp> |
| d5860 | 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 0a 20 20 | </pre></figure>................. |
| d5880 | 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 69 6c 64 2d 53 79 73 | ...........<h2.id="Zig-Build-Sys |
| d58a0 | 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 69 6c 64 2d 53 79 73 | tem"><a.href="#toc-Zig-Build-Sys |
| d58c0 | 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 20 3c 61 20 63 6c 61 | tem">Zig.Build.System</a>.<a.cla |
| d58e0 | 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 2d 53 79 73 74 65 6d | ss="hdr".href="#Zig-Build-System |
| d5900 | 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 54 | ">..</a></h2>........<p>.......T |
| d5920 | 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 64 65 73 20 61 20 63 | he.Zig.Build.System.provides.a.c |
| d5940 | 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 2d 66 72 65 65 20 77 | ross-platform,.dependency-free.w |
| d5960 | 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 6f 67 69 63 20 72 65 | ay.to.declare.......the.logic.re |
| d5980 | 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 2e 20 57 69 74 68 20 | quired.to.build.a.project..With. |
| d59a0 | 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 20 62 75 69 6c 64 0a | this.system,.the.logic.to.build. |
| d59c0 | 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 6e 20 69 6e 20 61 20 | ......a.project.is.written.in.a. |
| d59e0 | 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 20 5a 69 67 20 42 75 | build.zig.file,.using.the.Zig.Bu |
| d5a00 | 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 65 63 6c 61 72 65 20 | ild.System.API.to.......declare. |
| d5a20 | 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 61 63 74 73 20 61 6e | and.configure.build.artifacts.an |
| d5a40 | 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 0a 20 20 20 20 20 20 | d.other.tasks........</p>....... |
| d5a60 | 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 66 20 74 61 73 6b 73 | <p>.......Some.examples.of.tasks |
| d5a80 | 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 70 20 77 69 74 68 3a | .the.build.system.can.help.with: |
| d5aa0 | 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 3c | .......</p>.......<ul>.........< |
| d5ac0 | 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 72 61 6c 6c 65 6c 20 | li>Performing.tasks.in.parallel. |
| d5ae0 | 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 2f 6c 69 3e 0a 20 20 | and.caching.the.results.</li>... |
| d5b00 | 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 68 65 72 20 70 72 6f | ......<li>Depending.on.other.pro |
| d5b20 | 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 72 6f 76 69 64 69 6e | jects.</li>.........<li>Providin |
| d5b40 | 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 6a 65 63 74 73 20 74 | g.a.package.for.other.projects.t |
| d5b60 | 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 20 3c 6c 69 3e 43 72 | o.depend.on.</li>.........<li>Cr |
| d5b80 | 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 20 65 78 65 63 75 74 | eating.build.artifacts.by.execut |
| d5ba0 | 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 73 20 69 6e 63 6c 75 | ing.the.Zig.compiler..This.inclu |
| d5bc0 | 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 67 20 73 6f 75 72 63 | des...........building.Zig.sourc |
| d5be0 | 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 2b 2b 20 73 6f 75 72 | e.code.as.well.as.C.and.C++.sour |
| d5c00 | 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 3e 43 61 70 74 75 72 | ce.code.</li>.........<li>Captur |
| d5c20 | 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 6e 73 20 61 6e 64 20 | ing.user-configured.options.and. |
| d5c40 | 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 6e 66 69 67 75 72 65 | using.those.options.to.configure |
| d5c60 | 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 3e 0a 20 20 20 20 20 | ...........the.build.</li>...... |
| d5c80 | 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 6e 66 69 67 75 72 61 | ...<li>Surfacing.build.configura |
| d5ca0 | 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 65 22 3e 63 6f 6d 70 | tion.as.<a.href="#comptime">comp |
| d5cc0 | 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 69 6e 67 20 61 0a 20 | time</a>.values.by.providing.a.. |
| d5ce0 | 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 20 3c 61 20 68 72 65 | .........file.that.can.be.<a.hre |
| d5d00 | 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 62 79 20 5a 69 67 20 | f="#import">imported</a>.by.Zig. |
| d5d20 | 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 63 68 69 6e 67 20 62 | code.</li>.........<li>Caching.b |
| d5d40 | 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 6e 6e 65 63 65 73 73 | uild.artifacts.to.avoid.unnecess |
| d5d60 | 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 69 3e 0a 20 20 20 20 | arily.repeating.steps.</li>..... |
| d5d80 | 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 72 74 69 66 61 63 74 | ....<li>Executing.build.artifact |
| d5da0 | 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 6c 73 2e 3c 2f 6c 69 | s.or.system-installed.tools.</li |
| d5dc0 | 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 74 73 20 61 6e 64 20 | >.........<li>Running.tests.and. |
| d5de0 | 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 78 65 63 75 74 69 6e | verifying.the.output.of.executin |
| d5e00 | 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 73 0a 20 20 20 20 20 | g.a.build.artifact.matches...... |
| d5e20 | 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 69 3e 0a 20 20 20 20 | ...the.expected.value.</li>..... |
| d5e40 | 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 20 66 6d 74 3c 2f 63 | ....<li>Running.<code>zig.fmt</c |
| d5e60 | 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 75 62 73 65 74 20 6f | ode>.on.a.codebase.or.a.subset.o |
| d5e80 | 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 73 74 6f 6d 20 74 61 | f.it.</li>.........<li>Custom.ta |
| d5ea0 | 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 20 20 20 3c 70 3e 0a | sks.</li>.......</ul>.......<p>. |
| d5ec0 | 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 73 74 65 6d 2c 20 72 | ......To.use.the.build.system,.r |
| d5ee0 | 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 2f 6b 62 64 3e 0a 20 | un.<kbd>zig.build.--help</kbd>.. |
| d5f00 | 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 65 20 75 73 61 67 65 | .....to.see.a.command-line.usage |
| d5f20 | 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 6c 75 64 65 20 70 72 | .help.menu..This.will.include.pr |
| d5f40 | 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 6f 6e 73 20 74 68 61 | oject-specific.......options.tha |
| d5f60 | 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 69 6c 64 2e 7a 69 67 | t.were.declared.in.the.build.zig |
| d5f80 | 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 20 3c 70 3e 0a 20 20 | .script........</p>.......<p>... |
| d5fa0 | 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 68 65 20 62 75 69 6c | ....For.the.time.being,.the.buil |
| d5fc0 | 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 20 68 6f 73 74 65 64 | d.system.documentation.is.hosted |
| d5fe0 | 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 66 3d 22 68 74 74 70 | .externally:.......<a.href="http |
| d6000 | 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 6c 64 2d 73 79 73 74 | s://ziglang.org/learn/build-syst |
| d6020 | 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 74 61 74 69 6f 6e 3c | em/">Build.System.Documentation< |
| d6040 | 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 20 20 20 3c 68 32 20 | /a>.......</p>..............<h2. |
| d6060 | 69 64 3d 22 43 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 43 22 3e 43 3c 2f 61 3e 20 3c 61 | id="C"><a.href="#toc-C">C</a>.<a |
| d6080 | 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 43 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 | .class="hdr".href="#C">..</a></h |
| d60a0 | 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 75 67 68 20 5a 69 67 | 2>........<p>.......Although.Zig |
| d60c0 | 20 69 73 20 69 6e 64 65 70 65 6e 64 65 6e 74 20 6f 66 20 43 2c 20 61 6e 64 2c 20 75 6e 6c 69 6b | .is.independent.of.C,.and,.unlik |
| d60e0 | 65 20 6d 6f 73 74 20 6f 74 68 65 72 20 6c 61 6e 67 75 61 67 65 73 2c 20 64 6f 65 73 20 6e 6f 74 | e.most.other.languages,.does.not |
| d6100 | 20 64 65 70 65 6e 64 20 6f 6e 20 6c 69 62 63 2c 0a 20 20 20 20 20 20 5a 69 67 20 61 63 6b 6e 6f | .depend.on.libc,.......Zig.ackno |
| d6120 | 77 6c 65 64 67 65 73 20 74 68 65 20 69 6d 70 6f 72 74 61 6e 63 65 20 6f 66 20 69 6e 74 65 72 61 | wledges.the.importance.of.intera |
| d6140 | 63 74 69 6e 67 20 77 69 74 68 20 65 78 69 73 74 69 6e 67 20 43 20 63 6f 64 65 2e 0a 20 20 20 20 | cting.with.existing.C.code...... |
| d6160 | 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 72 65 20 61 72 65 | ..</p>.......<p>.......There.are |
| d6180 | 20 61 20 66 65 77 20 77 61 79 73 20 74 68 61 74 20 5a 69 67 20 66 61 63 69 6c 69 74 61 74 65 73 | .a.few.ways.that.Zig.facilitates |
| d61a0 | 20 43 20 69 6e 74 65 72 6f 70 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 68 33 | .C.interop........</p>.......<h3 |
| d61c0 | 20 69 64 3d 22 43 2d 54 79 70 65 2d 50 72 69 6d 69 74 69 76 65 73 22 3e 3c 61 20 68 72 65 66 3d | .id="C-Type-Primitives"><a.href= |
| d61e0 | 22 23 74 6f 63 2d 43 2d 54 79 70 65 2d 50 72 69 6d 69 74 69 76 65 73 22 3e 43 20 54 79 70 65 20 | "#toc-C-Type-Primitives">C.Type. |
| d6200 | 50 72 69 6d 69 74 69 76 65 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 | Primitives</a>.<a.class="hdr".hr |
| d6220 | 65 66 3d 22 23 43 2d 54 79 70 65 2d 50 72 69 6d 69 74 69 76 65 73 22 3e c2 a7 3c 2f 61 3e 3c 2f | ef="#C-Type-Primitives">..</a></ |
| d6240 | 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 73 65 20 68 61 76 65 20 | h3>........<p>.......These.have. |
| d6260 | 67 75 61 72 61 6e 74 65 65 64 20 43 20 41 42 49 20 63 6f 6d 70 61 74 69 62 69 6c 69 74 79 20 61 | guaranteed.C.ABI.compatibility.a |
| d6280 | 6e 64 20 63 61 6e 20 62 65 20 75 73 65 64 20 6c 69 6b 65 20 61 6e 79 20 6f 74 68 65 72 20 74 79 | nd.can.be.used.like.any.other.ty |
| d62a0 | 70 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 | pe........</p>.......<ul>....... |
| d62c0 | 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 |
| d62e0 | 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 3c 2f 6c 69 3e 0a 20 | ype">c_char</span></code></li>.. |
| d6300 | 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=" |
| d6320 | 74 6f 6b 2d 74 79 70 65 22 3e 63 5f 73 68 6f 72 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c | tok-type">c_short</span></code>< |
| d6340 | 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 | /li>...........<li><code><span.c |
| d6360 | 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 2f 73 70 61 6e 3e 3c | lass="tok-type">c_ushort</span>< |
| d6380 | 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> |
| d63a0 | 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 |
| d63c0 | 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 |
| d63e0 | 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 |
| d6400 | 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 20 3c | t</span></code></li>...........< |
| d6420 | 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"> |
| d6440 | 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 0a 20 20 20 20 20 20 | c_long</span></code></li>....... |
| d6460 | 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 |
| d6480 | 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 3e 3c 2f 6c 69 3e 0a | ype">c_ulong</span></code></li>. |
| d64a0 | 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 3d | ..........<li><code><span.class= |
| d64c0 | 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 61 6e 3e 3c 2f 63 6f | "tok-type">c_longlong</span></co |
| d64e0 | 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 |
| d6500 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 63 5f 75 6c 6f 6e 67 6c 6f 6e 67 3c | an.class="tok-type">c_ulonglong< |
| d6520 | 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 |
| d6540 | 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_ |
| d6560 | 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 2f 6c 69 3e 0a 20 20 | longdouble</span></code></li>... |
| d6580 | 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 69 6e 74 | ....</ul>.......<p>.......To.int |
| d65a0 | 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 61 6e 20 63 6c 61 73 | erop.with.the.C.<code><span.clas |
| d65c0 | 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 20 | s="tok-type">void</span></code>. |
| d65e0 | 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 73 73 3d 22 74 6f 6b | type,.use.<code><span.class="tok |
| d6600 | 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 0a | -type">anyopaque</span></code>.. |
| d6620 | 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 | ......</p>.......<p>See.also:</p |
| d6640 | 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 74 69 76 65 2d 54 79 | ><ul>.<li><a.href="#Primitive-Ty |
| d6660 | 70 65 73 22 3e 50 72 69 6d 69 74 69 76 65 20 54 79 70 65 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f | pes">Primitive.Types</a></li>.</ |
| d6680 | 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 49 6d 70 6f 72 74 | ul>...............<h3.id="Import |
| d66a0 | 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 72 65 66 3d 22 23 74 | -from-C-Header-File"><a.href="#t |
| d66c0 | 6f 63 2d 49 6d 70 6f 72 74 2d 66 72 6f 6d 2d 43 2d 48 65 61 64 65 72 2d 46 69 6c 65 22 3e 49 6d | oc-Import-from-C-Header-File">Im |
| d66e0 | 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 20 3c 61 20 63 | port.from.C.Header.File</a>.<a.c |
| d6700 | 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 66 72 6f 6d 2d 43 2d | lass="hdr".href="#Import-from-C- |
| d6720 | 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 0a 20 20 20 20 20 20 | Header-File">..</a></h3>........ |
| d6740 | 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | <p>.......The.<code><span.class= |
| d6760 | 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 |
| d6780 | 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 20 62 65 20 75 73 65 | ode>.builtin.function.can.be.use |
| d67a0 | 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 74 20 73 79 6d 62 6f | d.......to.directly.import.symbo |
| d67c0 | 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 22 3e 2e 68 3c 2f 63 | ls.from.<code.class="file">.h</c |
| d67e0 | 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 20 20 20 20 3c 66 69 | ode>.files:.......</p>.......<fi |
| d6800 | 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" |
| d6820 | 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 72 74 5f 62 75 69 6c | ><cite.class="file">cImport_buil |
| d6840 | 74 69 6e 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e | tin.zig</cite></figcaption><pre> |
| d6860 | 3c 63 6f 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 |
| d6880 | 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 |
| d68a0 | 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 |
| d68c0 | 6e 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 65 65 20 68 74 74 | n.class="tok-comment">//.See.htt |
| d68e0 | 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 7a 69 67 6c 61 6e 67 2f 7a 69 67 2f 69 73 73 75 | ps://github.com/ziglang/zig/issu |
| d6900 | 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 6c 61 73 73 3d 22 74 | es/515</span>.....<span.class="t |
| d6920 | 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 44 65 66 69 6e 65 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 | ok-builtin">@cDefine</span>(<spa |
| d6940 | 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 4e 4f 5f 43 52 54 5f | n.class="tok-str">"_NO_CRT_ |
| d6960 | 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 2c 20 3c 73 70 61 6e | STDIO_INLINE"</span>,.<span |
| d6980 | 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 71 75 6f 74 3b 3c 2f | .class="tok-str">"1"</ |
| d69a0 | 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 | span>);.....<span.class="tok-bui |
| d69c0 | 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 |
| d69e0 | 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 68 26 71 75 6f 74 3b | ss="tok-str">"stdio.h" |
| d6a00 | 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 3d 22 74 6f 6b 2d 6b | </span>);.});.<span.class="tok-k |
| d6a20 | 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 |
| d6a40 | 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 |
| d6a60 | 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 |
| d6a80 | 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 5f 20 3d 20 63 2e 70 | -type">void</span>.{....._.=.c.p |
| d6aa0 | 72 69 6e 74 66 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f | rintf(<span.class="tok-str">&quo |
| d6ac0 | 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 7d 3c 2f 63 6f 64 65 | t;hello\n"</span>);.}</code |
| d6ae0 | 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 |
| d6b00 | 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 |
| d6b20 | 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 |
| d6b40 | 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 69 67 20 2d 6c 63 3c | ild-exe.cImport_builtin.zig.-lc< |
| d6b60 | 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 69 6c 74 69 6e 3c 2f | /kbd>.$.<kbd>./cImport_builtin</ |
| d6b80 | 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 2f 66 69 67 75 72 65 | kbd>.hello.</samp></pre></figure |
| d6ba0 | 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 20 3c 63 6f 64 65 3e 3c 73 70 | >........<p>.......The.<code><sp |
| d6bc0 | 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< |
| d6be0 | 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 6b 65 73 20 61 6e 20 | /span></code>.function.takes.an. |
| d6c00 | 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 2e 0a 20 20 20 20 20 | expression.as.a.parameter....... |
| d6c20 | 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 61 74 65 64 20 61 74 | .This.expression.is.evaluated.at |
| d6c40 | 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 20 74 6f 20 63 6f 6e | .compile-time.and.is.used.to.con |
| d6c60 | 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 69 72 65 63 74 69 76 | trol.......preprocessor.directiv |
| d6c80 | 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 63 6f 64 65 20 63 6c | es.and.include.multiple.<code.cl |
| d6ca0 | 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 73 3a 0a 20 20 20 20 | ass="file">.h</code>.files:..... |
| d6cc0 | 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 |
| d6ce0 | 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 |
| d6d00 | 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 63 69 74 65 3e 3c 2f | le">@cImport.Expression</cite></ |
| d6d20 | 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 |
| d6d40 | 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 6e 20 | s="tok-kw">const</span>.builtin. |
| d6d60 | 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 |
| d6d80 | 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" |
| d6da0 | 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 0a 3c | >"builtin"</span>);..< |
| d6dc0 | 73 70 61 6e 20 63 6c 61 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> |
| d6de0 | 20 63 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 | .c.=.<span.class="tok-builtin">@ |
| d6e00 | 63 49 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | cImport</span>({.....<span.class |
| d6e20 | 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 44 65 66 69 6e 65 3c 2f 73 70 61 6e 3e 28 3c | ="tok-builtin">@cDefine</span>(< |
| d6e40 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 4e 44 45 42 55 | span.class="tok-str">"NDEBU |
| d6e60 | 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 6f 64 65 20 3d 3d 20 | G"</span>,.builtin.mode.==. |
| d6e80 | 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 63 6c 61 73 73 3d 22 | .ReleaseFast);.....<span.class=" |
| d6ea0 | 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 73 6f 6d 65 74 68 69 6e 67 29 20 7b 0a | tok-kw">if</span>.(something).{. |
| d6ec0 | 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e | ........<span.class="tok-builtin |
| d6ee0 | 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 |
| d6f00 | 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 5f 47 4e 55 5f 53 4f 55 52 43 45 26 71 75 6f 74 3b 3c | ok-str">"_GNU_SOURCE"< |
| d6f20 | 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 70 61 6e 20 63 6c 61 | /span>,.{});.....}.....<span.cla |
| d6f40 | 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 49 6e 63 6c 75 64 65 3c 2f 73 70 61 6e | ss="tok-builtin">@cInclude</span |
| d6f60 | 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 |
| d6f80 | 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 20 3c 73 70 61 6e 20 | dlib.h"</span>);.....<span. |
| d6fa0 | 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 |
| d6fc0 | 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- |
| d6fe0 | 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 73 70 61 6e 20 63 6c | builtin">@cUndef</span>(<span.cl |
| d7000 | 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 26 | ass="tok-str">"_GNU_SOURCE& |
| d7020 | 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 3c 73 70 61 6e 20 63 | quot;</span>);.....}.....<span.c |
| d7040 | 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 49 6e 63 6c 75 64 65 3c 2f 73 70 | lass="tok-builtin">@cInclude</sp |
| d7060 | 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">" |
| d7080 | 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 7d 29 3b 3c 2f 63 6f | soundio.h"</span>);.});</co |
| d70a0 | 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 | de></pre></figure>.......<p>See. |
| d70c0 | 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 49 6d 70 | also:</p><ul>.<li><a.href="#cImp |
| d70e0 | 6f 72 74 22 3e 40 63 49 6d 70 6f 72 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 | ort">@cImport</a></li>.<li><a.hr |
| d7100 | 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 6c 69 | ef="#cInclude">@cInclude</a></li |
| d7120 | 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 63 44 65 66 69 6e 65 22 3e 40 63 44 65 66 69 6e | >.<li><a.href="#cDefine">@cDefin |
| d7140 | 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 66 22 | e</a></li>.<li><a.href="#cUndef" |
| d7160 | 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 68 72 65 66 3d 22 23 | >@cUndef</a></li>.<li><a.href="# |
| d7180 | 69 6d 70 6f 72 74 22 3e 40 69 6d 70 6f 72 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a | import">@import</a></li>.</ul>.. |
| d71a0 | 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 72 61 6e 73 6c 61 74 | ..............<h3.id="C-Translat |
| d71c0 | 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 54 72 61 6e 73 6c 61 | ion-CLI"><a.href="#toc-C-Transla |
| d71e0 | 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 20 | tion-CLI">C.Translation.CLI</a>. |
| d7200 | 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 72 61 6e 73 6c 61 74 | <a.class="hdr".href="#C-Translat |
| d7220 | 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 20 20 20 3c 70 3e 0a | ion-CLI">..</a></h3>........<p>. |
| d7240 | 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 20 63 61 70 61 62 69 | ......Zig's.C.translation.capabi |
| d7260 | 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 49 20 74 6f 6f 6c 20 | lity.is.available.as.a.CLI.tool. |
| d7280 | 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 62 64 3e 2e 0a | via.<kbd>zig.translate-c</kbd>.. |
| d72a0 | 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 65 20 66 69 6c 65 6e | ......It.requires.a.single.filen |
| d72c0 | 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 79 20 61 6c 73 6f 20 | ame.as.an.argument..It.may.also. |
| d72e0 | 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 61 67 73 20 74 68 61 | take.a.set.of.optional.flags.tha |
| d7300 | 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 63 6c 61 6e 67 2e 20 | t.are.......forwarded.to.clang.. |
| d7320 | 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 66 69 6c 65 20 74 6f | It.writes.the.translated.file.to |
| d7340 | 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 20 3c 68 34 20 69 64 | .stdout........</p>.......<h4.id |
| d7360 | 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 68 72 65 66 3d 22 23 | ="Command-line-flags"><a.href="# |
| d7380 | 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 6f 6d 6d 61 6e 64 20 | toc-Command-line-flags">Command. |
| d73a0 | 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 68 64 72 22 20 68 72 | line.flags</a>.<a.class="hdr".hr |
| d73c0 | 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 c2 a7 3c 2f 61 3e 3c | ef="#Command-line-flags">..</a>< |
| d73e0 | 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 3c 6c 69 3e 0a 20 20 | /h4>........<ul>.........<li>... |
| d7400 | 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 20 20 20 20 20 20 20 | ........<kbd>-I</kbd>:.......... |
| d7420 | 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 72 79 20 66 6f 72 20 | .Specify.a.search.directory.for. |
| d7440 | 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 64 20 6d 75 6c 74 69 | include.files..May.be.used.multi |
| d7460 | 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 20 20 20 20 20 20 20 | ple.times..Equivalent.to........ |
| d7480 | 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 73 65 73 2e 6c 6c 76 | ...<a.href="https://releases.llv |
| d74a0 | 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 64 6f 63 73 2f 43 6c | m.org/12.0.0/tools/clang/docs/Cl |
| d74c0 | 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 74 6d 6c 23 63 6d 64 | angCommandLineReference.html#cmd |
| d74e0 | 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 20 20 20 20 20 20 63 | option-clang-i-dir">...........c |
| d7500 | 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 3c 2f 61 3e 2e 20 54 | lang's.<kbd>-I</kbd>.flag</a>..T |
| d7520 | 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 65 6d 3e 6e 6f 74 3c | he.current.directory.is.<em>not< |
| d7540 | 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 0a 20 20 20 20 20 20 | /em>.included.by.default;....... |
| d7560 | 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 20 69 6e 63 6c 75 64 | ....use.<kbd>-I.</kbd>.to.includ |
| d7580 | 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 20 20 20 3c 6c 69 3e | e.it..........</li>.........<li> |
| d75a0 | 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 20 44 65 66 69 6e 65 | ...........<kbd>-D</kbd>:.Define |
| d75c0 | 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 75 69 76 61 6c 65 6e | .a.preprocessor.macro..Equivalen |
| d75e0 | 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 74 74 70 73 3a 2f 2f | t.to...........<a.href="https:// |
| d7600 | 72 65 6c 65 61 73 65 73 2e 6c 6c 76 6d 2e 6f 72 67 2f 31 32 2e 30 2e 30 2f 74 6f 6f 6c 73 2f 63 | releases.llvm.org/12.0.0/tools/c |
| d7620 | 6c 61 6e 67 2f 64 6f 63 73 2f 43 6c 61 6e 67 43 6f 6d 6d 61 6e 64 4c 69 6e 65 52 65 66 65 72 65 | lang/docs/ClangCommandLineRefere |
| d7640 | 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 64 2d 6d 61 63 72 6f | nce.html#cmdoption-clang-d-macro |
| d7660 | 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 3e 2d 44 3c 2f 6b 62 | ">...........clang's.<kbd>-D</kb |
| d7680 | 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 3e 0a 20 20 20 20 20 | d>.flag</a>..........</li>...... |
| d76a0 | 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 66 6c 61 67 73 20 5b | ...<li>...........<kbd>-cflags.[ |
| d76c0 | 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 69 74 72 61 72 79 20 | flags].--</kbd>:.Pass.arbitrary. |
| d76e0 | 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 72 65 66 3d 22 68 74 | additional...........<a.href="ht |
| d7700 | 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 74 | tps://releases.llvm.org/12.0.0/t |
| d7720 | 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 65 | ools/clang/docs/ClangCommandLine |
| d7740 | 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 69 6e 65 0a 20 20 20 | Reference.html">command.line.... |
| d7760 | 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 2e 20 4e 6f 74 65 3a | .......flags</a>.to.clang..Note: |
| d7780 | 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 6e 64 20 77 69 74 68 | .the.list.of.flags.must.end.with |
| d77a0 | 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 6c 69 3e 0a 20 20 20 | .<kbd>--</kbd>.........</li>.... |
| d77c0 | 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 74 61 72 67 65 74 | .....<li>...........<kbd>-target |
| d77e0 | 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 67 65 74 73 22 3e 74 | </kbd>:.The.<a.href="#Targets">t |
| d7800 | 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 74 72 61 6e 73 6c 61 | arget.triple</a>.for.the.transla |
| d7820 | 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 66 20 6e 6f 20 74 61 | ted.Zig.code............If.no.ta |
| d7840 | 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 72 72 65 6e 74 20 68 | rget.is.specified,.the.current.h |
| d7860 | 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 20 20 20 20 20 20 20 | ost.target.will.be.used......... |
| d7880 | 20 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 | .</li>.......</ul>.............. |
| d78a0 | 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 2d 2d 63 66 6c 61 67 | <h4.id="Using--target-and--cflag |
| d78c0 | 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 61 72 67 65 74 2d 61 | s"><a.href="#toc-Using--target-a |
| d78e0 | 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 20 61 6e 64 20 2d 63 | nd--cflags">Using.-target.and.-c |
| d7900 | 66 6c 61 67 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 | flags</a>.<a.class="hdr".href="# |
| d7920 | 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 c2 a7 3c 2f 61 | Using--target-and--cflags">..</a |
| d7940 | 3e 3c 2f 68 34 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 20 20 3c 73 74 72 6f 6e | ></h4>........<p>.........<stron |
| d7960 | 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 6e 20 74 72 61 6e 73 | g>Important!</strong>.When.trans |
| d7980 | 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 69 67 20 74 72 61 6e | lating.C.code.with.<kbd>zig.tran |
| d79a0 | 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 75 20 3c 73 74 72 6f | slate-c</kbd>,.........you.<stro |
| d79c0 | 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 73 61 6d 65 20 3c 6b | ng>must</strong>.use.the.same.<k |
| d79e0 | 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 68 61 74 20 79 6f 75 | bd>-target</kbd>.triple.that.you |
| d7a00 | 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 20 20 20 20 20 20 20 | .will.use.when.compiling........ |
| d7a20 | 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 61 64 64 69 74 69 6f | .the.translated.code..In.additio |
| d7a40 | 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 6e 67 3e 20 65 6e 73 | n,.you.<strong>must</strong>.ens |
| d7a60 | 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 3c 2f 6b 62 64 3e 20 | ure.that.the.<kbd>-cflags</kbd>. |
| d7a80 | 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 63 68 20 74 68 65 20 | used,.........if.any,.match.the. |
| d7aa0 | 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 65 20 74 61 72 67 65 | cflags.used.by.code.on.the.targe |
| d7ac0 | 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 72 65 63 74 20 3c 6b | t.system..Using.the.incorrect.<k |
| d7ae0 | 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 6f 72 20 3c 6b 62 64 | bd>-target</kbd>.........or.<kbd |
| d7b00 | 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 6c 74 20 69 6e 20 63 | >-cflags</kbd>.could.result.in.c |
| d7b20 | 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 73 2c 20 6f 72 20 73 | lang.or.Zig.parse.failures,.or.s |
| d7b40 | 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 65 73 0a 20 20 20 20 | ubtle.ABI.incompatibilities..... |
| d7b60 | 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 6f 64 65 2e 0a 20 20 | ....when.linking.with.C.code.... |
| d7b80 | 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 |
| d7ba0 | 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 69 | on.class="c-cap"><cite.class="fi |
| d7bc0 | 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 66 69 67 63 61 70 74 | le">varytarget.h</cite></figcapt |
| d7be0 | 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 20 5f 5f 4c 4f 4e 47 | ion><pre><code>long.FOO.=.__LONG |
| d7c00 | 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 75 72 65 3e 0a 20 20 | _MAX__;</code></pre></figure>... |
| d7c20 | 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 | ....<figure><figcaption.class="s |
| d7c40 | 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 |
| d7c60 | 3e 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 74 72 61 6e 73 6c 61 74 65 2d 63 20 2d 74 | ><samp>$.<kbd>zig.translate-c.-t |
| d7c80 | 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 67 6e 75 65 61 62 69 | arget.thumb-freestanding-gnueabi |
| d7ca0 | 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 2f 6b 62 64 3e 0a 70 | hf.varytarget.h|grep.FOO</kbd>.p |
| d7cc0 | 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 20 3d 20 32 31 34 37 | ub.export.var.FOO:.c_long.=.2147 |
| d7ce0 | 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 61 74 65 2d 63 20 2d | 483647;.$.<kbd>zig.translate-c.- |
| d7d00 | 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 61 72 79 74 61 72 67 | target.x86_64-macos-gnu.varytarg |
| d7d20 | 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 78 70 6f 72 74 20 76 | et.h|grep.FOO</kbd>.pub.export.v |
| d7d40 | 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 33 36 38 35 34 37 37 | ar.FOO:.c_long.=.922337203685477 |
| d7d60 | 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 72 65 3e 0a 20 20 20 | 5807;.</samp></pre></figure>.... |
| d7d80 | 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 63 2d | ...<figure><figcaption.class="c- |
| d7da0 | 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 79 63 66 6c 61 | cap"><cite.class="file">varycfla |
| d7dc0 | 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 70 72 65 3e 3c 63 6f | gs.h</cite></figcaption><pre><co |
| d7de0 | 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 64 6f 5f 73 6f 6d 65 | de>enum.FOO.{.BAR.};.int.do_some |
| d7e00 | 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 65 3e 3c 2f 70 72 65 | thing(enum.FOO.foo);</code></pre |
| d7e20 | 3e 3c 2f 66 69 67 75 72 65 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 | ></figure>.......<figure><figcap |
| d7e40 | 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 |
| d7e60 | 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 |
| d7e80 | 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 72 65 70 20 2d 42 31 | ranslate-c.varycflags.h|grep.-B1 |
| d7ea0 | 20 64 6f 5f 73 6f 6d 65 74 68 69 6e 67 3c 2f 6b 62 64 3e 0a 70 75 62 20 63 6f 6e 73 74 20 65 6e | .do_something</kbd>.pub.const.en |
| d7ec0 | 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 72 6e 20 66 6e 20 64 | um_FOO.=.c_uint;.pub.extern.fn.d |
| d7ee0 | 6f 5f 73 6f 6d 65 74 68 69 6e 67 28 66 6f 6f 3a 20 65 6e 75 6d 5f 46 4f 4f 29 20 63 5f 69 6e 74 | o_something(foo:.enum_FOO).c_int |
| d7f00 | 3b 0a 24 20 3c 6b 62 64 3e 7a 69 67 20 74 72 61 6e 73 6c 61 74 65 2d 63 20 2d 63 66 6c 61 67 73 | ;.$.<kbd>zig.translate-c.-cflags |
| d7f20 | 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 61 67 73 2e 68 7c 67 | .-fshort-enums.--.varycflags.h|g |
| d7f40 | 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 |
| d7f60 | 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 78 74 65 72 6e 20 66 | onst.enum_FOO.=.u8;.pub.extern.f |
| d7f80 | 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 29 20 63 5f | n.do_something(foo:.enum_FOO).c_ |
| d7fa0 | 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 65 3e 0a 20 20 20 20 | int;.</samp></pre></figure>..... |
| d7fc0 | 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 76 73 2d 74 72 61 6e | .........<h4.id="cImport-vs-tran |
| d7fe0 | 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 6d 70 6f 72 74 2d 76 | slate-c"><a.href="#toc-cImport-v |
| d8000 | 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 73 | s-translate-c">@cImport.vs.trans |
| d8020 | 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 20 68 72 65 66 3d 22 | late-c</a>.<a.class="hdr".href=" |
| d8040 | 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 c2 a7 3c 2f 61 3e 3c | #cImport-vs-translate-c">..</a>< |
| d8060 | 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 6e 20 63 6c 61 73 73 | /h4>........<p><code><span.class |
| d8080 | 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></ |
| d80a0 | 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 61 74 65 2d 63 3c 2f | code>.and.<kbd>zig.translate-c</ |
| d80c0 | 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 69 6e 67 0a 20 20 20 | kbd>.use.the.same.underlying.... |
| d80e0 | 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 61 6c 69 74 79 2c 20 | ...C.translation.functionality,. |
| d8100 | 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 68 65 79 20 61 72 65 | so.on.a.technical.level.they.are |
| d8120 | 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 0a 20 20 20 20 20 20 | .equivalent..In.practice,....... |
| d8140 | 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"> |
| d8160 | 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 20 75 73 65 66 75 6c | @cImport</span></code>.is.useful |
| d8180 | 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 65 61 73 69 6c 79 20 | .as.a.way.to.quickly.and.easily. |
| d81a0 | 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 20 74 79 70 65 64 65 | access.numeric.constants,.typede |
| d81c0 | 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 73 20 77 69 74 68 6f | fs,.......and.record.types.witho |
| d81e0 | 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 70 2e 20 49 66 20 79 | ut.needing.any.extra.setup..If.y |
| d8200 | 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 23 55 73 69 6e 67 2d | ou.need.to.pass.<a.href="#Using- |
| d8220 | 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 67 73 3c 2f 61 3e 0a | -target-and--cflags">cflags</a>. |
| d8240 | 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 20 77 6f 75 6c 64 20 | ......to.clang,.or.if.you.would. |
| d8260 | 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 65 64 20 63 6f 64 65 | like.to.edit.the.translated.code |
| d8280 | 2c 20 69 74 20 69 73 20 72 65 63 6f 6d 6d 65 6e 64 65 64 20 74 6f 20 75 73 65 0a 20 20 20 20 20 | ,.it.is.recommended.to.use...... |
| d82a0 | 20 3c 6b 62 64 3e 7a 69 67 20 74 72 61 6e 73 6c 61 74 65 2d 63 3c 2f 6b 62 64 3e 20 61 6e 64 20 | .<kbd>zig.translate-c</kbd>.and. |
| d82c0 | 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 65 2e 20 43 6f 6d 6d | save.the.results.to.a.file..Comm |
| d82e0 | 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 20 20 20 20 74 68 65 | on.reasons.for.editing.......the |
| d8300 | 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 63 68 61 6e 67 69 6e | .generated.code.include:.changin |
| d8320 | 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 61 6e 79 | g.<code><span.class="tok-kw">any |
| d8340 | 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 74 65 72 73 20 69 6e | type</span></code>.parameters.in |
| d8360 | 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 6d 6f 72 65 0a 20 20 | .function-like.macros.to.more... |
| d8380 | 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 69 6e 67 20 3c 63 6f | ....specific.types;.changing.<co |
| d83a0 | 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 74 6f 20 3c 63 6f 64 | de>[*c]T</code>.pointers.to.<cod |
| d83c0 | 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 6f 64 65 3e 2a 54 3c | e>[*]T</code>.or.......<code>*T< |
| d83e0 | 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 76 65 64 20 74 79 70 | /code>.pointers.for.improved.typ |
| d8400 | 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 65 66 3d 22 23 73 65 | e.safety;.and.......<a.href="#se |
| d8420 | 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 6f 72 20 64 69 73 61 | tRuntimeSafety">enabling.or.disa |
| d8440 | 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 77 69 74 68 69 6e 20 | bling.runtime.safety</a>.within. |
| d8460 | 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 20 3c 2f 70 3e 0a 20 | specific.functions........</p>.. |
| d8480 | 20 20 20 20 20 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e | ............<p>See.also:</p><ul> |
| d84a0 | 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 54 61 72 67 65 74 73 22 3e 54 61 72 67 65 74 73 3c | .<li><a.href="#Targets">Targets< |
| d84c0 | 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 54 79 70 65 2d 50 72 | /a></li>.<li><a.href="#C-Type-Pr |
| d84e0 | 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 3e 3c | imitives">C.Type.Primitives</a>< |
| d8500 | 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 72 73 22 3e 50 6f 69 | /li>.<li><a.href="#Pointers">Poi |
| d8520 | 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 3d 22 23 43 2d 50 | nters</a></li>.<li><a.href="#C-P |
| d8540 | 6f 69 6e 74 65 72 73 22 3e 43 20 50 6f 69 6e 74 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 | ointers">C.Pointers</a></li>.<li |
| d8560 | 3e 3c 61 20 68 72 65 66 3d 22 23 49 6d 70 6f 72 74 2d 66 72 6f 6d 2d 43 2d 48 65 61 64 65 72 2d | ><a.href="#Import-from-C-Header- |
| d8580 | 46 69 6c 65 22 3e 49 6d 70 6f 72 74 20 66 72 6f 6d 20 43 20 48 65 61 64 65 72 20 46 69 6c 65 3c | File">Import.from.C.Header.File< |
| d85a0 | 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 63 49 6e 63 6c 75 64 65 22 | /a></li>.<li><a.href="#cInclude" |
| d85c0 | 3e 40 63 49 6e 63 6c 75 64 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d | >@cInclude</a></li>.<li><a.href= |
| d85e0 | 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 69 | "#cImport">@cImport</a></li>.<li |
| d8600 | 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 74 79 22 3e 40 73 65 | ><a.href="#setRuntimeSafety">@se |
| d8620 | 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 2f 75 6c 3e 0a 0a 20 | tRuntimeSafety</a></li>.</ul>... |
| d8640 | 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 6e 73 6c 61 74 69 6f | ............<h3.id="C-Translatio |
| d8660 | 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 43 2d 54 72 61 6e 73 | n-Caching"><a.href="#toc-C-Trans |
| d8680 | 6c 61 74 69 6f 6e 2d 43 61 63 68 69 6e 67 22 3e 43 20 54 72 61 6e 73 6c 61 74 69 6f 6e 20 43 61 | lation-Caching">C.Translation.Ca |
| d86a0 | 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 68 72 65 66 3d 22 23 | ching</a>.<a.class="hdr".href="# |
| d86c0 | 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 3c 2f 61 3e 3c 2f 68 | C-Translation-Caching">..</a></h |
| d86e0 | 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 20 43 20 74 72 61 6e | 3>........<p>.........The.C.tran |
| d8700 | 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 75 73 65 64 20 76 69 | slation.feature.(whether.used.vi |
| d8720 | 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 62 64 3e 20 6f 72 0a | a.<kbd>zig.translate-c</kbd>.or. |
| d8740 | 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 62 | ........<code><span.class="tok-b |
| d8760 | 75 69 6c 74 69 6e 22 3e 40 63 49 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 29 20 | uiltin">@cImport</span></code>). |
| d8780 | 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 61 63 68 69 6e 67 20 | integrates.with.the.Zig.caching. |
| d87a0 | 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 69 74 68 0a 20 20 20 | system..Subsequent.runs.with.... |
| d87c0 | 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 2c 20 74 61 72 67 65 | .....the.same.source.file,.targe |
| d87e0 | 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 65 20 63 61 63 68 65 | t,.and.cflags.will.use.the.cache |
| d8800 | 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 61 6e 73 6c 61 74 69 | .instead.of.repeatedly.translati |
| d8820 | 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 0a 20 20 20 20 20 20 | ng.........the.same.code........ |
| d8840 | 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 20 73 65 65 20 77 68 | </p>.......<p>.........To.see.wh |
| d8860 | 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 73 74 6f 72 65 64 20 | ere.the.cached.files.are.stored. |
| d8880 | 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 75 73 65 73 20 3c 63 | when.compiling.code.that.uses.<c |
| d88a0 | 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 |
| d88c0 | 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 20 20 20 20 20 75 73 | Import</span></code>,.........us |
| d88e0 | 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 6f 72 74 3c 2f 6b 62 | e.the.<kbd>--verbose-cimport</kb |
| d8900 | 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 20 3c 66 69 67 75 72 | d>.flag:.......</p>.......<figur |
| d8920 | 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 |
| d8940 | 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 63 69 6d 70 6f 72 74 | ite.class="file">verbose_cimport |
| d8960 | 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 69 6f 6e 3e 3c 70 72 | _flag.zig</cite></figcaption><pr |
| d8980 | 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 |
| d89a0 | 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 |
| d89c0 | 75 69 6c 74 69 6e 22 3e 40 63 49 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 7b 0a 20 20 20 20 3c 73 | uiltin">@cImport</span>({.....<s |
| d89e0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 44 65 66 69 6e 65 | pan.class="tok-builtin">@cDefine |
| d8a00 | 3c 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 |
| d8a20 | 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 71 75 6f 74 3b 3c 2f | uot;_NO_CRT_STDIO_INLINE"</ |
| d8a40 | 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 71 75 | span>,.<span.class="tok-str">&qu |
| d8a60 | 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 73 70 61 6e 20 63 6c | ot;1"</span>);.....<span.cl |
| d8a80 | 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 49 6e 63 6c 75 64 65 3c 2f 73 70 61 | ass="tok-builtin">@cInclude</spa |
| d8aa0 | 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 |
| d8ac0 | 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 0a 3c 73 70 61 6e 20 | tdio.h"</span>);.});.<span. |
| d8ae0 | 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. |
| d8b00 | 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 |
| d8b20 | 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 |
| d8b40 | 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>.{ |
| d8b60 | 0a 20 20 20 20 5f 20 3d 20 63 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 | ....._.=.c;.}</code></pre></figu |
| d8b80 | 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 |
| d8ba0 | 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> |
| d8bc0 | 3c 73 61 6d 70 3e 24 20 3c 6b 62 64 3e 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 76 65 72 62 6f | <samp>$.<kbd>zig.build-exe.verbo |
| d8be0 | 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 2d 76 65 72 62 6f 73 | se_cimport_flag.zig.-lc.--verbos |
| d8c00 | 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 69 6c 61 74 69 6f 6e | e-cimport</kbd>.info(compilation |
| d8c20 | 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 2f 61 6e 64 79 2f 64 | ):.C.import.source:./home/andy/d |
| d8c40 | 65 76 2f 7a 69 67 2f 2e 7a 69 67 2d 63 61 63 68 65 2f 6f 2f 64 38 63 63 64 38 65 36 30 62 64 65 | ev/zig/.zig-cache/o/d8ccd8e60bde |
| d8c60 | 32 64 35 64 63 64 66 33 32 61 33 63 64 65 66 36 34 39 39 39 2f 63 69 6d 70 6f 72 74 2e 68 0a 69 | 2d5dcdf32a3cdef64999/cimport.h.i |
| d8c80 | 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 74 20 2e 64 20 66 69 | nfo(compilation):.C.import..d.fi |
| d8ca0 | 6c 65 3a 20 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 2e 7a 69 67 2d 63 61 63 68 | le:./home/andy/dev/zig/.zig-cach |
| d8cc0 | 65 2f 6f 2f 64 38 63 63 64 38 65 36 30 62 64 65 32 64 35 64 63 64 66 33 32 61 33 63 64 65 66 36 | e/o/d8ccd8e60bde2d5dcdf32a3cdef6 |
| d8ce0 | 34 39 39 39 2f 63 69 6d 70 6f 72 74 2e 68 2e 64 0a 24 20 3c 6b 62 64 3e 2e 2f 76 65 72 62 6f 73 | 4999/cimport.h.d.$.<kbd>./verbos |
| d8d00 | 65 5f 63 69 6d 70 6f 72 74 5f 66 6c 61 67 3c 2f 6b 62 64 3e 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 | e_cimport_flag</kbd>.</samp></pr |
| d8d20 | 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 20 3c | e></figure>........<p>.........< |
| d8d40 | 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 2e 68 3c 2f 63 6f 64 | code.class="file">cimport.h</cod |
| d8d60 | 65 3e 20 63 6f 6e 74 61 69 6e 73 20 74 68 65 20 66 69 6c 65 20 74 6f 20 74 72 61 6e 73 6c 61 74 | e>.contains.the.file.to.translat |
| d8d80 | 65 20 28 63 6f 6e 73 74 72 75 63 74 65 64 20 66 72 6f 6d 20 63 61 6c 6c 73 20 74 6f 0a 20 20 20 | e.(constructed.from.calls.to.... |
| d8da0 | 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 |
| d8dc0 | 74 69 6e 22 3e 40 63 49 6e 63 6c 75 64 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 3c 63 | tin">@cInclude</span></code>,.<c |
| d8de0 | 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 |
| d8e00 | 44 65 66 69 6e 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 61 6e 64 20 3c 63 6f 64 65 3e | Define</span></code>,.and.<code> |
| d8e20 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 55 6e 64 65 | <span.class="tok-builtin">@cUnde |
| d8e40 | 66 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 29 2c 0a 20 20 20 20 20 20 20 20 3c 63 6f 64 65 20 | f</span></code>),.........<code. |
| d8e60 | 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 63 69 6d 70 6f 72 74 2e 68 2e 64 3c 2f 63 6f 64 65 3e 20 | class="file">cimport.h.d</code>. |
| d8e80 | 69 73 20 74 68 65 20 6c 69 73 74 20 6f 66 20 66 69 6c 65 20 64 65 70 65 6e 64 65 6e 63 69 65 73 | is.the.list.of.file.dependencies |
| d8ea0 | 2c 20 61 6e 64 0a 20 20 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 | ,.and.........<code.class="file" |
| d8ec0 | 3e 63 69 6d 70 6f 72 74 2e 7a 69 67 3c 2f 63 6f 64 65 3e 20 63 6f 6e 74 61 69 6e 73 20 74 68 65 | >cimport.zig</code>.contains.the |
| d8ee0 | 20 74 72 61 6e 73 6c 61 74 65 64 20 6f 75 74 70 75 74 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 | .translated.output........</p>.. |
| d8f00 | 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 |
| d8f20 | 20 68 72 65 66 3d 22 23 49 6d 70 6f 72 74 2d 66 72 6f 6d 2d 43 2d 48 65 61 64 65 72 2d 46 69 6c | .href="#Import-from-C-Header-Fil |
| d8f40 | 65 22 3e 49 6d 70 6f 72 74 20 66 72 6f 6d 20 43 20 48 65 61 64 65 72 20 46 69 6c 65 3c 2f 61 3e | e">Import.from.C.Header.File</a> |
| d8f60 | 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 43 2d 54 72 61 6e 73 6c 61 74 69 6f | </li>.<li><a.href="#C-Translatio |
| d8f80 | 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 3c 2f 6c 69 | n-CLI">C.Translation.CLI</a></li |
| d8fa0 | 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 63 49 6e 63 6c 75 64 65 22 3e 40 63 49 6e 63 6c | >.<li><a.href="#cInclude">@cIncl |
| d8fc0 | 75 64 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 63 49 6d 70 6f | ude</a></li>.<li><a.href="#cImpo |
| d8fe0 | 72 74 22 3e 40 63 49 6d 70 6f 72 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 | rt">@cImport</a></li>.</ul>..... |
| d9000 | 20 20 20 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 54 72 61 6e 73 6c 61 74 69 6f 6e 2d 66 61 | ..........<h3.id="Translation-fa |
| d9020 | 69 6c 75 72 65 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 54 72 61 6e 73 6c 61 74 69 6f | ilures"><a.href="#toc-Translatio |
| d9040 | 6e 2d 66 61 69 6c 75 72 65 73 22 3e 54 72 61 6e 73 6c 61 74 69 6f 6e 20 66 61 69 6c 75 72 65 73 | n-failures">Translation.failures |
| d9060 | 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 72 61 6e 73 | </a>.<a.class="hdr".href="#Trans |
| d9080 | 6c 61 74 69 6f 6e 2d 66 61 69 6c 75 72 65 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 | lation-failures">..</a></h3>.... |
| d90a0 | 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 20 20 53 6f 6d 65 20 43 20 63 6f 6e 73 74 72 75 63 74 | ....<p>.........Some.C.construct |
| d90c0 | 73 20 63 61 6e 6e 6f 74 20 62 65 20 74 72 61 6e 73 6c 61 74 65 64 20 74 6f 20 5a 69 67 20 2d 20 | s.cannot.be.translated.to.Zig.-. |
| d90e0 | 66 6f 72 20 65 78 61 6d 70 6c 65 2c 20 3c 65 6d 3e 67 6f 74 6f 3c 2f 65 6d 3e 2c 0a 20 20 20 20 | for.example,.<em>goto</em>,..... |
| d9100 | 20 20 20 20 73 74 72 75 63 74 73 20 77 69 74 68 20 62 69 74 66 69 65 6c 64 73 2c 20 61 6e 64 20 | ....structs.with.bitfields,.and. |
| d9120 | 74 6f 6b 65 6e 2d 70 61 73 74 69 6e 67 20 6d 61 63 72 6f 73 2e 20 5a 69 67 20 65 6d 70 6c 6f 79 | token-pasting.macros..Zig.employ |
| d9140 | 73 20 3c 65 6d 3e 64 65 6d 6f 74 69 6f 6e 3c 2f 65 6d 3e 20 74 6f 20 61 6c 6c 6f 77 20 74 72 61 | s.<em>demotion</em>.to.allow.tra |
| d9160 | 6e 73 6c 61 74 69 6f 6e 0a 20 20 20 20 20 20 20 20 74 6f 20 63 6f 6e 74 69 6e 75 65 20 69 6e 20 | nslation.........to.continue.in. |
| d9180 | 74 68 65 20 66 61 63 65 20 6f 66 20 6e 6f 6e 2d 74 72 61 6e 73 6c 61 74 61 62 6c 65 20 65 6e 74 | the.face.of.non-translatable.ent |
| d91a0 | 69 74 69 65 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 | ities........</p>.......<p>..... |
| d91c0 | 20 20 20 20 44 65 6d 6f 74 69 6f 6e 20 63 6f 6d 65 73 20 69 6e 20 74 68 72 65 65 20 76 61 72 69 | ....Demotion.comes.in.three.vari |
| d91e0 | 65 74 69 65 73 20 2d 20 3c 61 20 68 72 65 66 3d 22 23 6f 70 61 71 75 65 22 3e 6f 70 61 71 75 65 | eties.-.<a.href="#opaque">opaque |
| d9200 | 3c 2f 61 3e 2c 20 3c 65 6d 3e 65 78 74 65 72 6e 3c 2f 65 6d 3e 2c 20 61 6e 64 0a 20 20 20 20 20 | </a>,.<em>extern</em>,.and...... |
| d9220 | 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 | ...<code><span.class="tok-builti |
| d9240 | 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 2e 0a | n">@compileError</span></code>.. |
| d9260 | 0a 20 20 20 20 20 20 20 20 43 20 73 74 72 75 63 74 73 20 61 6e 64 20 75 6e 69 6f 6e 73 20 74 68 | .........C.structs.and.unions.th |
| d9280 | 61 74 20 63 61 6e 6e 6f 74 20 62 65 20 74 72 61 6e 73 6c 61 74 65 64 20 63 6f 72 72 65 63 74 6c | at.cannot.be.translated.correctl |
| d92a0 | 79 20 77 69 6c 6c 20 62 65 20 74 72 61 6e 73 6c 61 74 65 64 20 61 73 20 3c 63 6f 64 65 3e 3c 73 | y.will.be.translated.as.<code><s |
| d92c0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 6f 70 61 71 75 65 3c 2f 73 70 61 6e 3e | pan.class="tok-kw">opaque</span> |
| d92e0 | 7b 7d 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 20 20 46 75 6e 63 74 69 6f 6e 73 20 74 68 61 | {}</code>..........Functions.tha |
| d9300 | 74 20 63 6f 6e 74 61 69 6e 20 6f 70 61 71 75 65 20 74 79 70 65 73 20 6f 72 20 63 6f 64 65 20 63 | t.contain.opaque.types.or.code.c |
| d9320 | 6f 6e 73 74 72 75 63 74 73 20 74 68 61 74 20 63 61 6e 6e 6f 74 20 62 65 20 74 72 61 6e 73 6c 61 | onstructs.that.cannot.be.transla |
| d9340 | 74 65 64 20 77 69 6c 6c 20 62 65 20 64 65 6d 6f 74 65 64 0a 20 20 20 20 20 20 20 20 74 6f 20 3c | ted.will.be.demoted.........to.< |
| d9360 | 63 6f 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 | code><span.class="tok-kw">extern |
| d9380 | 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 64 65 63 6c 61 72 61 74 69 6f 6e 73 2e 0a 0a 20 20 | </span></code>.declarations..... |
| d93a0 | 20 20 20 20 20 20 54 68 75 73 2c 20 6e 6f 6e 2d 74 72 61 6e 73 6c 61 74 61 62 6c 65 20 74 79 70 | ......Thus,.non-translatable.typ |
| d93c0 | 65 73 20 63 61 6e 20 73 74 69 6c 6c 20 62 65 20 75 73 65 64 20 61 73 20 70 6f 69 6e 74 65 72 73 | es.can.still.be.used.as.pointers |
| d93e0 | 2c 20 61 6e 64 20 6e 6f 6e 2d 74 72 61 6e 73 6c 61 74 61 62 6c 65 20 66 75 6e 63 74 69 6f 6e 73 | ,.and.non-translatable.functions |
| d9400 | 0a 20 20 20 20 20 20 20 20 63 61 6e 20 62 65 20 63 61 6c 6c 65 64 20 73 6f 20 6c 6f 6e 67 20 61 | .........can.be.called.so.long.a |
| d9420 | 73 20 74 68 65 20 6c 69 6e 6b 65 72 20 69 73 20 61 77 61 72 65 20 6f 66 20 74 68 65 20 63 6f 6d | s.the.linker.is.aware.of.the.com |
| d9440 | 70 69 6c 65 64 20 66 75 6e 63 74 69 6f 6e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 | piled.function........</p>...... |
| d9460 | 20 3c 70 3e 0a 20 20 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | .<p>.........<code><span.class=" |
| d9480 | 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 |
| d94a0 | 3e 3c 2f 63 6f 64 65 3e 20 69 73 20 75 73 65 64 20 77 68 65 6e 20 74 6f 70 2d 6c 65 76 65 6c 20 | ></code>.is.used.when.top-level. |
| d94c0 | 64 65 66 69 6e 69 74 69 6f 6e 73 20 28 67 6c 6f 62 61 6c 20 76 61 72 69 61 62 6c 65 73 2c 0a 20 | definitions.(global.variables,.. |
| d94e0 | 20 20 20 20 20 20 20 66 75 6e 63 74 69 6f 6e 20 70 72 6f 74 6f 74 79 70 65 73 2c 20 6d 61 63 72 | .......function.prototypes,.macr |
| d9500 | 6f 73 29 20 63 61 6e 6e 6f 74 20 62 65 20 74 72 61 6e 73 6c 61 74 65 64 20 6f 72 20 64 65 6d 6f | os).cannot.be.translated.or.demo |
| d9520 | 74 65 64 2e 20 53 69 6e 63 65 20 5a 69 67 20 75 73 65 73 20 6c 61 7a 79 20 61 6e 61 6c 79 73 69 | ted..Since.Zig.uses.lazy.analysi |
| d9540 | 73 20 66 6f 72 0a 20 20 20 20 20 20 20 20 74 6f 70 2d 6c 65 76 65 6c 20 64 65 63 6c 61 72 61 74 | s.for.........top-level.declarat |
| d9560 | 69 6f 6e 73 2c 20 75 6e 74 72 61 6e 73 6c 61 74 61 62 6c 65 20 65 6e 74 69 74 69 65 73 20 77 69 | ions,.untranslatable.entities.wi |
| d9580 | 6c 6c 20 6e 6f 74 20 63 61 75 73 65 20 61 20 63 6f 6d 70 69 6c 65 20 65 72 72 6f 72 20 69 6e 20 | ll.not.cause.a.compile.error.in. |
| d95a0 | 79 6f 75 72 20 63 6f 64 65 20 75 6e 6c 65 73 73 0a 20 20 20 20 20 20 20 20 79 6f 75 20 61 63 74 | your.code.unless.........you.act |
| d95c0 | 75 61 6c 6c 79 20 75 73 65 20 74 68 65 6d 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 | ually.use.them........</p>...... |
| d95e0 | 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 |
| d9600 | 66 3d 22 23 6f 70 61 71 75 65 22 3e 6f 70 61 71 75 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e | f="#opaque">opaque</a></li>.<li> |
| d9620 | 3c 61 20 68 72 65 66 3d 22 23 65 78 74 65 72 6e 22 3e 65 78 74 65 72 6e 3c 2f 61 3e 3c 2f 6c 69 | <a.href="#extern">extern</a></li |
| d9640 | 3e 0a 3c 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 | >.<li><a.href="#compileError">@c |
| d9660 | 6f 6d 70 69 6c 65 45 72 72 6f 72 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 | ompileError</a></li>.</ul>...... |
| d9680 | 20 20 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 43 2d 4d 61 63 72 6f 73 22 3e 3c 61 20 68 72 | .........<h3.id="C-Macros"><a.hr |
| d96a0 | 65 66 3d 22 23 74 6f 63 2d 43 2d 4d 61 63 72 6f 73 22 3e 43 20 4d 61 63 72 6f 73 3c 2f 61 3e 20 | ef="#toc-C-Macros">C.Macros</a>. |
| d96c0 | 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 43 2d 4d 61 63 72 6f 73 22 3e | <a.class="hdr".href="#C-Macros"> |
| d96e0 | c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 20 20 43 | ..</a></h3>........<p>.........C |
| d9700 | 20 54 72 61 6e 73 6c 61 74 69 6f 6e 20 6d 61 6b 65 73 20 61 20 62 65 73 74 2d 65 66 66 6f 72 74 | .Translation.makes.a.best-effort |
| d9720 | 20 61 74 74 65 6d 70 74 20 74 6f 20 74 72 61 6e 73 6c 61 74 65 20 66 75 6e 63 74 69 6f 6e 2d 6c | .attempt.to.translate.function-l |
| d9740 | 69 6b 65 20 6d 61 63 72 6f 73 20 69 6e 74 6f 20 65 71 75 69 76 61 6c 65 6e 74 0a 20 20 20 20 20 | ike.macros.into.equivalent...... |
| d9760 | 20 20 20 5a 69 67 20 66 75 6e 63 74 69 6f 6e 73 2e 20 53 69 6e 63 65 20 43 20 6d 61 63 72 6f 73 | ...Zig.functions..Since.C.macros |
| d9780 | 20 6f 70 65 72 61 74 65 20 61 74 20 74 68 65 20 6c 65 76 65 6c 20 6f 66 20 6c 65 78 69 63 61 6c | .operate.at.the.level.of.lexical |
| d97a0 | 20 74 6f 6b 65 6e 73 2c 20 6e 6f 74 20 61 6c 6c 20 43 20 6d 61 63 72 6f 73 0a 20 20 20 20 20 20 | .tokens,.not.all.C.macros....... |
| d97c0 | 20 20 63 61 6e 20 62 65 20 74 72 61 6e 73 6c 61 74 65 64 20 74 6f 20 5a 69 67 2e 20 4d 61 63 72 | ..can.be.translated.to.Zig..Macr |
| d97e0 | 6f 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 | os.that.cannot.be.translated.wil |
| d9800 | 6c 20 62 65 20 64 65 6d 6f 74 65 64 20 74 6f 0a 20 20 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 | l.be.demoted.to.........<code><s |
| d9820 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 6f 6d 70 69 6c 65 | pan.class="tok-builtin">@compile |
| d9840 | 45 72 72 6f 72 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 20 4e 6f 74 65 20 74 68 61 74 20 43 | Error</span></code>..Note.that.C |
| d9860 | 20 63 6f 64 65 20 77 68 69 63 68 20 3c 65 6d 3e 75 73 65 73 3c 2f 65 6d 3e 20 6d 61 63 72 6f 73 | .code.which.<em>uses</em>.macros |
| d9880 | 20 77 69 6c 6c 20 62 65 0a 20 20 20 20 20 20 20 20 74 72 61 6e 73 6c 61 74 65 64 20 77 69 74 68 | .will.be.........translated.with |
| d98a0 | 6f 75 74 20 61 6e 79 20 61 64 64 69 74 69 6f 6e 61 6c 20 69 73 73 75 65 73 20 28 73 69 6e 63 65 | out.any.additional.issues.(since |
| d98c0 | 20 5a 69 67 20 6f 70 65 72 61 74 65 73 20 6f 6e 20 74 68 65 20 70 72 65 2d 70 72 6f 63 65 73 73 | .Zig.operates.on.the.pre-process |
| d98e0 | 65 64 20 73 6f 75 72 63 65 0a 20 20 20 20 20 20 20 20 77 69 74 68 20 6d 61 63 72 6f 73 20 65 78 | ed.source.........with.macros.ex |
| d9900 | 70 61 6e 64 65 64 29 2e 20 49 74 20 69 73 20 6d 65 72 65 6c 79 20 74 68 65 20 6d 61 63 72 6f 73 | panded)..It.is.merely.the.macros |
| d9920 | 20 74 68 65 6d 73 65 6c 76 65 73 20 77 68 69 63 68 20 6d 61 79 20 6e 6f 74 20 62 65 20 74 72 61 | .themselves.which.may.not.be.tra |
| d9940 | 6e 73 6c 61 74 61 62 6c 65 20 74 6f 0a 20 20 20 20 20 20 20 20 5a 69 67 2e 0a 20 20 20 20 20 20 | nslatable.to.........Zig........ |
| d9960 | 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 43 6f 6e 73 69 64 65 72 20 74 68 65 20 66 6f 6c 6c 6f | </p>.......<p>Consider.the.follo |
| d9980 | 77 69 6e 67 20 65 78 61 6d 70 6c 65 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e | wing.example:</p>.......<figure> |
| d99a0 | 3c 66 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 | <figcaption.class="c-cap"><cite. |
| d99c0 | 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 6d 61 63 72 6f 2e 63 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 | class="file">macro.c</cite></fig |
| d99e0 | 63 61 70 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 23 64 65 66 69 6e 65 20 4d 41 4b 45 4c | caption><pre><code>#define.MAKEL |
| d9a00 | 4f 43 41 4c 28 4e 41 4d 45 2c 20 49 4e 49 54 29 20 69 6e 74 20 4e 41 4d 45 20 3d 20 49 4e 49 54 | OCAL(NAME,.INIT).int.NAME.=.INIT |
| d9a20 | 0a 69 6e 74 20 66 6f 6f 28 76 6f 69 64 29 20 7b 0a 20 20 20 4d 41 4b 45 4c 4f 43 41 4c 28 61 2c | .int.foo(void).{....MAKELOCAL(a, |
| d9a40 | 20 31 29 3b 0a 20 20 20 4d 41 4b 45 4c 4f 43 41 4c 28 62 2c 20 32 29 3b 0a 20 20 20 72 65 74 75 | .1);....MAKELOCAL(b,.2);....retu |
| d9a60 | 72 6e 20 61 20 2b 20 62 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 | rn.a.+.b;.}</code></pre></figure |
| d9a80 | 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 |
| d9aa0 | 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> |
| d9ac0 | 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 74 65 2d | <pre><samp>$.<kbd>zig.translate- |
| d9ae0 | 63 20 6d 61 63 72 6f 2e 63 20 26 67 74 3b 20 6d 61 63 72 6f 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 3c | c.macro.c.>.macro.zig</kbd>.< |
| d9b00 | 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 |
| d9b20 | 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"> |
| d9b40 | 3c 63 69 74 65 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 6d 61 63 72 6f 2e 7a 69 67 3c 2f 63 69 | <cite.class="file">macro.zig</ci |
| d9b60 | 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 |
| d9b80 | 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 |
| d9ba0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 78 70 6f 72 74 3c 2f 73 70 61 6e 3e 20 3c 73 | .class="tok-kw">export</span>.<s |
| d9bc0 | 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 |
| d9be0 | 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 29 20 3c | an.class="tok-fn">foo</span>().< |
| d9c00 | 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 |
| d9c20 | 6e 3e 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 |
| d9c40 | 72 3c 2f 73 70 61 6e 3e 20 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | r</span>.a:.<span.class="tok-typ |
| d9c60 | 65 22 3e 63 5f 69 6e 74 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | e">c_int</span>.=.<span.class="t |
| d9c80 | 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 5f 20 3d 20 26 61 6d | ok-number">1</span>;....._.=.&am |
| d9ca0 | 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 76 61 | p;a;.....<span.class="tok-kw">va |
| d9cc0 | 72 3c 2f 73 70 61 6e 3e 20 62 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | r</span>.b:.<span.class="tok-typ |
| d9ce0 | 65 22 3e 63 5f 69 6e 74 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | e">c_int</span>.=.<span.class="t |
| d9d00 | 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 5f 20 3d 20 26 61 6d | ok-number">2</span>;....._.=.&am |
| d9d20 | 70 3b 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 72 65 | p;b;.....<span.class="tok-kw">re |
| d9d40 | 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 61 20 2b 20 62 3b 0a 7d 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | turn</span>.a.+.b;.}.<span.class |
| d9d60 | 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 |
| d9d80 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 4d 41 4b 45 4c 4f 43 41 4c | ="tok-kw">const</span>.MAKELOCAL |
| d9da0 | 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 63 6f | .=.<span.class="tok-builtin">@co |
| d9dc0 | 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 |
| d9de0 | 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 75 6e 61 62 6c 65 20 74 6f 20 74 72 61 6e 73 6c 61 74 | ok-str">"unable.to.translat |
| d9e00 | 65 20 43 20 65 78 70 72 3a 20 75 6e 65 78 70 65 63 74 65 64 20 74 6f 6b 65 6e 20 2e 45 71 75 61 | e.C.expr:.unexpected.token..Equa |
| d9e20 | 6c 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | l"</span>);.<span.class="to |
| d9e40 | 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 6d 61 63 72 6f 2e 63 3a 31 3a 39 3c 2f 73 70 61 6e 3e | k-comment">//.macro.c:1:9</span> |
| d9e60 | 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 |
| d9e80 | 3e 4e 6f 74 65 20 74 68 61 74 20 3c 63 6f 64 65 3e 66 6f 6f 3c 2f 63 6f 64 65 3e 20 77 61 73 20 | >Note.that.<code>foo</code>.was. |
| d9ea0 | 74 72 61 6e 73 6c 61 74 65 64 20 63 6f 72 72 65 63 74 6c 79 20 64 65 73 70 69 74 65 20 75 73 69 | translated.correctly.despite.usi |
| d9ec0 | 6e 67 20 61 20 6e 6f 6e 2d 74 72 61 6e 73 6c 61 74 61 62 6c 65 0a 20 20 20 20 20 20 20 20 6d 61 | ng.a.non-translatable.........ma |
| d9ee0 | 63 72 6f 2e 20 3c 63 6f 64 65 3e 4d 41 4b 45 4c 4f 43 41 4c 3c 2f 63 6f 64 65 3e 20 77 61 73 20 | cro..<code>MAKELOCAL</code>.was. |
| d9f00 | 64 65 6d 6f 74 65 64 20 74 6f 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | demoted.to.<code><span.class="to |
| d9f20 | 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 6f 6d 70 69 6c 65 45 72 72 6f 72 3c 2f 73 70 61 6e 3e 3c | k-builtin">@compileError</span>< |
| d9f40 | 2f 63 6f 64 65 3e 20 73 69 6e 63 65 0a 20 20 20 20 20 20 20 20 69 74 20 63 61 6e 6e 6f 74 20 62 | /code>.since.........it.cannot.b |
| d9f60 | 65 20 65 78 70 72 65 73 73 65 64 20 61 73 20 61 20 5a 69 67 20 66 75 6e 63 74 69 6f 6e 3b 20 74 | e.expressed.as.a.Zig.function;.t |
| d9f80 | 68 69 73 20 73 69 6d 70 6c 79 20 6d 65 61 6e 73 20 74 68 61 74 20 79 6f 75 20 63 61 6e 6e 6f 74 | his.simply.means.that.you.cannot |
| d9fa0 | 20 64 69 72 65 63 74 6c 79 20 75 73 65 0a 20 20 20 20 20 20 20 20 3c 63 6f 64 65 3e 4d 41 4b 45 | .directly.use.........<code>MAKE |
| d9fc0 | 4c 4f 43 41 4c 3c 2f 63 6f 64 65 3e 20 66 72 6f 6d 20 5a 69 67 2e 0a 20 20 20 20 20 20 3c 2f 70 | LOCAL</code>.from.Zig........</p |
| d9fe0 | 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 |
| da000 | 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 69 6c | ><a.href="#compileError">@compil |
| da020 | 65 45 72 72 6f 72 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 | eError</a></li>.</ul>........... |
| da040 | 20 20 20 20 20 3c 68 33 20 69 64 3d 22 43 2d 50 6f 69 6e 74 65 72 73 22 3e 3c 61 20 68 72 65 66 | .....<h3.id="C-Pointers"><a.href |
| da060 | 3d 22 23 74 6f 63 2d 43 2d 50 6f 69 6e 74 65 72 73 22 3e 43 20 50 6f 69 6e 74 65 72 73 3c 2f 61 | ="#toc-C-Pointers">C.Pointers</a |
| da080 | 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 50 6f 69 6e 74 65 | >.<a.class="hdr".href="#C-Pointe |
| da0a0 | 72 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 | rs">..</a></h3>........<p>...... |
| da0c0 | 20 54 68 69 73 20 74 79 70 65 20 69 73 20 74 6f 20 62 65 20 61 76 6f 69 64 65 64 20 77 68 65 6e | .This.type.is.to.be.avoided.when |
| da0e0 | 65 76 65 72 20 70 6f 73 73 69 62 6c 65 2e 20 54 68 65 20 6f 6e 6c 79 20 76 61 6c 69 64 20 72 65 | ever.possible..The.only.valid.re |
| da100 | 61 73 6f 6e 20 66 6f 72 20 75 73 69 6e 67 20 61 20 43 20 70 6f 69 6e 74 65 72 20 69 73 20 69 6e | ason.for.using.a.C.pointer.is.in |
| da120 | 0a 20 20 20 20 20 20 61 75 74 6f 2d 67 65 6e 65 72 61 74 65 64 20 63 6f 64 65 20 66 72 6f 6d 20 | .......auto-generated.code.from. |
| da140 | 74 72 61 6e 73 6c 61 74 69 6e 67 20 43 20 63 6f 64 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 | translating.C.code........</p>.. |
| da160 | 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 57 68 65 6e 20 69 6d 70 6f 72 74 69 6e 67 20 43 20 | .....<p>.......When.importing.C. |
| da180 | 68 65 61 64 65 72 20 66 69 6c 65 73 2c 20 69 74 20 69 73 20 61 6d 62 69 67 75 6f 75 73 20 77 68 | header.files,.it.is.ambiguous.wh |
| da1a0 | 65 74 68 65 72 20 70 6f 69 6e 74 65 72 73 20 73 68 6f 75 6c 64 20 62 65 20 74 72 61 6e 73 6c 61 | ether.pointers.should.be.transla |
| da1c0 | 74 65 64 20 61 73 0a 20 20 20 20 20 20 73 69 6e 67 6c 65 2d 69 74 65 6d 20 70 6f 69 6e 74 65 72 | ted.as.......single-item.pointer |
| da1e0 | 73 20 28 3c 63 6f 64 65 3e 2a 54 3c 2f 63 6f 64 65 3e 29 20 6f 72 20 6d 61 6e 79 2d 69 74 65 6d | s.(<code>*T</code>).or.many-item |
| da200 | 20 70 6f 69 6e 74 65 72 73 20 28 3c 63 6f 64 65 3e 5b 2a 5d 54 3c 2f 63 6f 64 65 3e 29 2e 0a 20 | .pointers.(<code>[*]T</code>)... |
| da220 | 20 20 20 20 20 43 20 70 6f 69 6e 74 65 72 73 20 61 72 65 20 61 20 63 6f 6d 70 72 6f 6d 69 73 65 | .....C.pointers.are.a.compromise |
| da240 | 20 73 6f 20 74 68 61 74 20 5a 69 67 20 63 6f 64 65 20 63 61 6e 20 75 74 69 6c 69 7a 65 20 74 72 | .so.that.Zig.code.can.utilize.tr |
| da260 | 61 6e 73 6c 61 74 65 64 20 68 65 61 64 65 72 20 66 69 6c 65 73 20 64 69 72 65 63 74 6c 79 2e 0a | anslated.header.files.directly.. |
| da280 | 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 5b 2a 63 5d 54 3c | ......</p>.......<p><code>[*c]T< |
| da2a0 | 2f 63 6f 64 65 3e 20 2d 20 43 20 70 6f 69 6e 74 65 72 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 | /code>.-.C.pointer.</p>.......<u |
| da2c0 | 6c 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 75 70 70 6f 72 74 73 20 61 6c 6c 20 74 68 65 20 | l>.........<li>Supports.all.the. |
| da2e0 | 73 79 6e 74 61 78 20 6f 66 20 74 68 65 20 6f 74 68 65 72 20 74 77 6f 20 70 6f 69 6e 74 65 72 20 | syntax.of.the.other.two.pointer. |
| da300 | 74 79 70 65 73 20 28 3c 63 6f 64 65 3e 2a 54 3c 2f 63 6f 64 65 3e 29 20 61 6e 64 20 28 3c 63 6f | types.(<code>*T</code>).and.(<co |
| da320 | 64 65 3e 5b 2a 5d 54 3c 2f 63 6f 64 65 3e 29 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c | de>[*]T</code>).</li>.........<l |
| da340 | 69 3e 43 6f 65 72 63 65 73 20 74 6f 20 6f 74 68 65 72 20 70 6f 69 6e 74 65 72 20 74 79 70 65 73 | i>Coerces.to.other.pointer.types |
| da360 | 2c 20 61 73 20 77 65 6c 6c 20 61 73 20 3c 61 20 68 72 65 66 3d 22 23 4f 70 74 69 6f 6e 61 6c 2d | ,.as.well.as.<a.href="#Optional- |
| da380 | 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 2e | Pointers">Optional.Pointers</a>. |
| da3a0 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 57 68 65 6e 20 61 20 43 20 70 6f 69 6e 74 65 72 20 69 73 | .............When.a.C.pointer.is |
| da3c0 | 20 63 6f 65 72 63 65 64 20 74 6f 20 61 20 6e 6f 6e 2d 6f 70 74 69 6f 6e 61 6c 20 70 6f 69 6e 74 | .coerced.to.a.non-optional.point |
| da3e0 | 65 72 2c 20 73 61 66 65 74 79 2d 63 68 65 63 6b 65 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c | er,.safety-checked.............< |
| da400 | 61 20 68 72 65 66 3d 22 23 49 6c 6c 65 67 61 6c 2d 42 65 68 61 76 69 6f 72 22 3e 49 6c 6c 65 67 | a.href="#Illegal-Behavior">Illeg |
| da420 | 61 6c 20 42 65 68 61 76 69 6f 72 3c 2f 61 3e 20 6f 63 63 75 72 73 20 69 66 20 74 68 65 20 61 64 | al.Behavior</a>.occurs.if.the.ad |
| da440 | 64 72 65 73 73 20 69 73 20 30 2e 0a 20 20 20 20 20 20 20 20 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | dress.is.0..........</li>....... |
| da460 | 20 20 3c 6c 69 3e 41 6c 6c 6f 77 73 20 61 64 64 72 65 73 73 20 30 2e 20 4f 6e 20 6e 6f 6e 2d 66 | ..<li>Allows.address.0..On.non-f |
| da480 | 72 65 65 73 74 61 6e 64 69 6e 67 20 74 61 72 67 65 74 73 2c 20 64 65 72 65 66 65 72 65 6e 63 69 | reestanding.targets,.dereferenci |
| da4a0 | 6e 67 20 61 64 64 72 65 73 73 20 30 20 69 73 20 73 61 66 65 74 79 2d 63 68 65 63 6b 65 64 0a 20 | ng.address.0.is.safety-checked.. |
| da4c0 | 20 20 20 20 20 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 49 6c 6c 65 67 61 6c 2d 42 65 68 | ...........<a.href="#Illegal-Beh |
| da4e0 | 61 76 69 6f 72 22 3e 49 6c 6c 65 67 61 6c 20 42 65 68 61 76 69 6f 72 3c 2f 61 3e 2e 20 4f 70 74 | avior">Illegal.Behavior</a>..Opt |
| da500 | 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 |
| da520 | 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......... |
| da540 | 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 |
| da560 | 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></ |
| da580 | 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 |
| da5a0 | 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 |
| da5c0 | 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 |
| da5e0 | 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 |
| da600 | 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 |
| da620 | 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= |
| da640 | 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</ |
| da660 | 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>... |
| da680 | 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 |
| da6a0 | 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 |
| da6c0 | 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. |
| da6e0 | 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 |
| da700 | 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 |
| da720 | 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>.. |
| da740 | 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 |
| da760 | 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 |
| da780 | 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. |
| da7a0 | 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. |
| da7c0 | 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 |
| da7e0 | 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...... |
| da800 | 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 |
| da820 | 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 |
| da840 | 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 |
| da860 | 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 |
| da880 | 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 |
| da8a0 | 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 |
| da8c0 | 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. |
| da8e0 | 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 |
| da900 | 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_ |
| da920 | 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>............... |
| da940 | 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 |
| da960 | 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 |
| da980 | 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 |
| da9a0 | 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 |
| da9c0 | 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 |
| da9e0 | 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 |
| daa00 | 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 |
| daa20 | 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=" |
| daa40 | 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 |
| daa60 | 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>< |
| daa80 | 73 70 61 6e 20 63 6c 61 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> |
| daaa0 | 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" |
| daac0 | 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 |
| daae0 | 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>);.< |
| dab00 | 73 70 61 6e 20 63 6c 61 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> |
| dab20 | 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 |
| dab40 | 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 |
| dab60 | 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 |
| dab80 | 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"< |
| daba0 | 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</ |
| dabc0 | 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 |
| dabe0 | 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= |
| dac00 | 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 |
| dac20 | 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 |
| dac40 | 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>,....).< |
| dac60 | 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 |
| dac80 | 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</ |
| daca0 | 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 |
| dacc0 | 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> |
| dace0 | 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< |
| dad00 | 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 |
| dad20 | 61 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,. |
| dad40 | 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. |
| dad60 | 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>);.. |
| dad80 | 20 20 20 3c 73 70 61 6e 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 |
| dada0 | 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 |
| dadc0 | 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 |
| dade0 | 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</ |
| dae00 | 73 70 61 6e 3e 28 70 72 69 6e 74 66 29 29 2e 40 26 71 75 6f 74 3b 66 6e 26 71 75 6f 74 3b 2e 69 | span>(printf)).@"fn".i |
| dae20 | 73 5f 76 61 72 5f 61 72 67 73 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 | s_var_args);.}</code></pre></fig |
| dae40 | 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 |
| dae60 | 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 |
| dae80 | 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 76 61 72 69 | ><samp>$.<kbd>zig.test.test_vari |
| daea0 | 61 64 69 63 5f 66 75 6e 63 74 69 6f 6e 2e 7a 69 67 20 2d 6c 63 3c 2f 6b 62 64 3e 0a 31 2f 31 20 | adic_function.zig.-lc</kbd>.1/1. |
| daec0 | 74 65 73 74 5f 76 61 72 69 61 64 69 63 5f 66 75 6e 63 74 69 6f 6e 2e 74 65 73 74 2e 76 61 72 69 | test_variadic_function.test.vari |
| daee0 | 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 20 70 | adic.function...OK.All.1.tests.p |
| daf00 | 61 73 73 65 64 2e 0a 48 65 6c 6c 6f 2c 20 77 6f 72 6c 64 21 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 | assed..Hello,.world!.</samp></pr |
| daf20 | 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 20 56 | e></figure>........<p>.........V |
| daf40 | 61 72 69 61 64 69 63 20 66 75 6e 63 74 69 6f 6e 73 20 63 61 6e 20 62 65 20 69 6d 70 6c 65 6d 65 | ariadic.functions.can.be.impleme |
| daf60 | 6e 74 65 64 20 75 73 69 6e 67 20 3c 61 20 68 72 65 66 3d 22 23 63 56 61 53 74 61 72 74 22 3e 40 | nted.using.<a.href="#cVaStart">@ |
| daf80 | 63 56 61 53 74 61 72 74 3c 2f 61 3e 2c 20 3c 61 20 68 72 65 66 3d 22 23 63 56 61 45 6e 64 22 3e | cVaStart</a>,.<a.href="#cVaEnd"> |
| dafa0 | 40 63 56 61 45 6e 64 3c 2f 61 3e 2c 20 3c 61 20 68 72 65 66 3d 22 23 63 56 61 41 72 67 22 3e 40 | @cVaEnd</a>,.<a.href="#cVaArg">@ |
| dafc0 | 63 56 61 41 72 67 3c 2f 61 3e 20 61 6e 64 20 3c 61 20 68 72 65 66 3d 22 23 63 56 61 43 6f 70 79 | cVaArg</a>.and.<a.href="#cVaCopy |
| dafe0 | 22 3e 40 63 56 61 43 6f 70 79 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 | ">@cVaCopy</a>........</p>...... |
| db000 | 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- |
| db020 | 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 64 65 66 | cap"><cite.class="file">test_def |
| db040 | 69 6e 69 6e 67 5f 76 61 72 69 61 64 69 63 5f 66 75 6e 63 74 69 6f 6e 2e 7a 69 67 3c 2f 63 69 74 | ining_variadic_function.zig</cit |
| db060 | 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. |
| db080 | 63 6c 61 73 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. |
| db0a0 | 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 |
| db0c0 | 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" |
| db0e0 | 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. |
| db100 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 74 65 73 74 | class="tok-kw">const</span>.test |
| db120 | 69 6e 67 20 3d 20 73 74 64 2e 74 65 73 74 69 6e 67 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ing.=.std.testing;.<span.class=" |
| db140 | 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 62 75 69 6c 74 69 6e 20 3d 20 3c | tok-kw">const</span>.builtin.=.< |
| db160 | 73 70 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 |
| db180 | 3c 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 |
| db1a0 | 75 6f 74 3b 62 75 69 6c 74 69 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 3c 73 70 61 | uot;builtin"</span>);..<spa |
| db1c0 | 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 |
| db1e0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 61 64 64 3c 2f 73 70 61 6e 3e 28 63 6f 75 6e 74 | .class="tok-fn">add</span>(count |
| db200 | 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 63 5f 69 6e 74 3c 2f | :.<span.class="tok-type">c_int</ |
| db220 | 73 70 61 6e 3e 2c 20 2e 2e 2e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | span>,....).<span.class="tok-kw" |
| db240 | 3e 63 61 6c 6c 63 6f 6e 76 3c 2f 73 70 61 6e 3e 28 2e 63 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 | >callconv</span>(.c).<span.class |
| db260 | 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 20 3c | ="tok-type">c_int</span>.{.....< |
| db280 | 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 |
| db2a0 | 70 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 63 | p.=.<span.class="tok-builtin">@c |
| db2c0 | 56 61 53 74 61 72 74 3c 2f 73 70 61 6e 3e 28 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | VaStart</span>();.....<span.clas |
| db2e0 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 64 65 66 65 72 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c | s="tok-kw">defer</span>.<span.cl |
| db300 | 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 56 61 45 6e 64 3c 2f 73 70 61 6e 3e | ass="tok-builtin">@cVaEnd</span> |
| db320 | 28 26 61 6d 70 3b 61 70 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | (&ap);.....<span.class="tok- |
| db340 | 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 |
| db360 | 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 |
| db380 | 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>;.....< |
| db3a0 | 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 |
| db3c0 | 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 63 5f 69 6e 74 | um:.<span.class="tok-type">c_int |
| db3e0 | 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 |
| db400 | 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 |
| db420 | 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 63 6f 75 6e 74 | k-kw">while</span>.(i.<.count |
| db440 | 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 65 | ).:.(i.+=.<span.class="tok-numbe |
| db460 | 72 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 20 2b 3d 20 3c 73 | r">1</span>).{.........sum.+=.<s |
| db480 | 70 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 3c | pan.class="tok-builtin">@cVaArg< |
| db4a0 | 2f 73 70 61 6e 3e 28 26 61 6d 70 3b 61 70 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | /span>(&ap,.<span.class="tok |
| db4c0 | 2d 74 79 70 65 22 3e 63 5f 69 6e 74 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 7d 0a 20 20 20 20 | -type">c_int</span>);.....}..... |
| db4e0 | 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 |
| db500 | 6e 3e 20 73 75 6d 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | n>.sum;.}..<span.class="tok-kw"> |
| db520 | 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 |
| db540 | 22 3e 26 71 75 6f 74 3b 64 65 66 69 6e 69 6e 67 20 61 20 76 61 72 69 61 64 69 63 20 66 75 6e 63 | ">"defining.a.variadic.func |
| db560 | 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 |
| db580 | 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 6c 74 69 6e 2e | ass="tok-kw">if</span>.(builtin. |
| db5a0 | 63 70 75 2e 61 72 63 68 20 3d 3d 20 2e 61 61 72 63 68 36 34 20 3c 73 70 61 6e 20 63 6c 61 73 73 | cpu.arch.==..aarch64.<span.class |
| db5c0 | 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 74 69 6e 2e 6f 73 2e | ="tok-kw">and</span>.builtin.os. |
| db5e0 | 74 61 67 20 21 3d 20 2e 6d 61 63 6f 73 29 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 | tag.!=..macos).{.........<span.c |
| db600 | 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 68 74 74 70 73 3a 2f 2f 67 69 | lass="tok-comment">//.https://gi |
| db620 | 74 68 75 62 2e 63 6f 6d 2f 7a 69 67 6c 61 6e 67 2f 7a 69 67 2f 69 73 73 75 65 73 2f 31 34 30 39 | thub.com/ziglang/zig/issues/1409 |
| db640 | 36 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 | 6</span>.........<span.class="to |
| db660 | 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= |
| db680 | 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 73 | "tok-kw">error</span>.SkipZigTes |
| db6a0 | 74 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 | t;.....}.....<span.class="tok-kw |
| db6c0 | 22 3e 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 | ">if</span>.(builtin.cpu.arch.== |
| db6e0 | 20 2e 78 38 36 5f 36 34 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e | ..x86_64.<span.class="tok-kw">an |
| db700 | 64 3c 2f 73 70 61 6e 3e 20 62 75 69 6c 74 69 6e 2e 6f 73 2e 74 61 67 20 3d 3d 20 2e 77 69 6e 64 | d</span>.builtin.os.tag.==..wind |
| db720 | 6f 77 73 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 | ows).{.........<span.class="tok- |
| db740 | 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 7a | comment">//.https://github.com/z |
| db760 | 69 67 6c 61 6e 67 2f 7a 69 67 2f 69 73 73 75 65 73 2f 31 36 39 36 31 3c 2f 73 70 61 6e 3e 0a 20 | iglang/zig/issues/16961</span>.. |
| db780 | 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 |
| db7a0 | 72 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 | rn</span>.<span.class="tok-kw">e |
| db7c0 | 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 53 6b 69 70 5a 69 67 54 65 73 74 3b 0a 20 20 20 20 7d 0a 0a | rror</span>.SkipZigTest;.....}.. |
| db7e0 | 20 20 20 20 3c 73 70 61 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 |
| db800 | 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 3c 73 70 61 | an>.std.testing.expectEqual(<spa |
| db820 | 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> |
| db840 | 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 |
| db860 | 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 |
| db880 | 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 22 74 6f 6b 2d 6e | </span>),.add(<span.class="tok-n |
| db8a0 | 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 61 6e 20 63 6c 61 | umber">0</span>));.....<span.cla |
| db8c0 | 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 |
| db8e0 | 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- |
| db900 | 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= |
| db920 | 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 |
| db940 | 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 2c 20 61 64 64 | lass="tok-number">1</span>),.add |
| db960 | 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 | (<span.class="tok-number">1</spa |
| db980 | 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 61 | n>,.<span.class="tok-builtin">@a |
| db9a0 | 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"> |
| db9c0 | 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 2d 6e | c_int</span>,.<span.class="tok-n |
| db9e0 | 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 29 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | umber">1</span>)));.....<span.cl |
| dba00 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 73 74 64 2e 74 65 73 74 | ass="tok-kw">try</span>.std.test |
| dba20 | 69 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 | ing.expectEqual(<span.class="tok |
| dba40 | 2d 62 75 69 6c 74 69 6e 22 3e 40 61 73 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 | -builtin">@as</span>(<span.class |
| dba60 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 63 5f 69 6e 74 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 | ="tok-type">c_int</span>,.<span. |
| dba80 | 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 2c 20 61 64 | class="tok-number">3</span>),.ad |
| dbaa0 | 64 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 | d(<span.class="tok-number">2</sp |
| dbac0 | 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 | an>,.<span.class="tok-builtin">@ |
| dbae0 | 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 22 | as</span>(<span.class="tok-type" |
| dbb00 | 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 2d | >c_int</span>,.<span.class="tok- |
| dbb20 | 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | number">1</span>),.<span.class=" |
| dbb40 | 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 |
| dbb60 | 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 20 3c 73 70 | ass="tok-type">c_int</span>,.<sp |
| dbb80 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 29 29 | an.class="tok-number">2</span>)) |
| dbba0 | 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 |
| dbbc0 | 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"> |
| dbbe0 | 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>$.< |
| dbc00 | 6b 62 64 3e 7a 69 67 20 74 65 73 74 20 74 65 73 74 5f 64 65 66 69 6e 69 6e 67 5f 76 61 72 69 61 | kbd>zig.test.test_defining_varia |
| dbc20 | 64 69 63 5f 66 75 6e 63 74 69 6f 6e 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 31 2f 31 20 74 65 73 74 5f | dic_function.zig</kbd>.1/1.test_ |
| dbc40 | 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 74 65 73 74 2e | defining_variadic_function.test. |
| dbc60 | 64 65 66 69 6e 69 6e 67 20 61 20 76 61 72 69 61 64 69 63 20 66 75 6e 63 74 69 6f 6e 2e 2e 2e 4f | defining.a.variadic.function...O |
| dbc80 | 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 |
| dbca0 | 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 |
| dbcc0 | 64 3d 22 45 78 70 6f 72 74 69 6e 67 2d 61 2d 43 2d 4c 69 62 72 61 72 79 22 3e 3c 61 20 68 72 65 | d="Exporting-a-C-Library"><a.hre |
| dbce0 | 66 3d 22 23 74 6f 63 2d 45 78 70 6f 72 74 69 6e 67 2d 61 2d 43 2d 4c 69 62 72 61 72 79 22 3e 45 | f="#toc-Exporting-a-C-Library">E |
| dbd00 | 78 70 6f 72 74 69 6e 67 20 61 20 43 20 4c 69 62 72 61 72 79 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 | xporting.a.C.Library</a>.<a.clas |
| dbd20 | 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 45 78 70 6f 72 74 69 6e 67 2d 61 2d 43 2d 4c 69 62 | s="hdr".href="#Exporting-a-C-Lib |
| dbd40 | 72 61 72 79 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 | rary">..</a></h3>........<p>.... |
| dbd60 | 20 20 20 4f 6e 65 20 6f 66 20 74 68 65 20 70 72 69 6d 61 72 79 20 75 73 65 20 63 61 73 65 73 20 | ...One.of.the.primary.use.cases. |
| dbd80 | 66 6f 72 20 5a 69 67 20 69 73 20 65 78 70 6f 72 74 69 6e 67 20 61 20 6c 69 62 72 61 72 79 20 77 | for.Zig.is.exporting.a.library.w |
| dbda0 | 69 74 68 20 74 68 65 20 43 20 41 42 49 20 66 6f 72 20 6f 74 68 65 72 20 70 72 6f 67 72 61 6d 6d | ith.the.C.ABI.for.other.programm |
| dbdc0 | 69 6e 67 20 6c 61 6e 67 75 61 67 65 73 0a 20 20 20 20 20 20 74 6f 20 63 61 6c 6c 20 69 6e 74 6f | ing.languages.......to.call.into |
| dbde0 | 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 6b 77 22 | ..The.<code><span.class="tok-kw" |
| dbe00 | 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 72 64 20 69 6e | >export</span></code>.keyword.in |
| dbe20 | 20 66 72 6f 6e 74 20 6f 66 20 66 75 6e 63 74 69 6f 6e 73 2c 20 76 61 72 69 61 62 6c 65 73 2c 20 | .front.of.functions,.variables,. |
| dbe40 | 61 6e 64 20 74 79 70 65 73 20 63 61 75 73 65 73 20 74 68 65 6d 20 74 6f 0a 20 20 20 20 20 20 62 | and.types.causes.them.to.......b |
| dbe60 | 65 20 70 61 72 74 20 6f 66 20 74 68 65 20 6c 69 62 72 61 72 79 20 41 50 49 3a 0a 20 20 20 20 20 | e.part.of.the.library.API:...... |
| dbe80 | 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. |
| dbea0 | 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 |
| dbec0 | 65 22 3e 6d 61 74 68 74 65 73 74 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 | e">mathtest.zig</cite></figcapti |
| dbee0 | 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 |
| dbf00 | 77 22 3e 65 78 70 6f 72 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | w">export</span>.<span.class="to |
| dbf20 | 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 |
| dbf40 | 2d 66 6e 22 3e 61 64 64 3c 2f 73 70 61 6e 3e 28 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | -fn">add</span>(a:.<span.class=" |
| dbf60 | 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 |
| dbf80 | 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 |
| dbfa0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 7b 0a | n.class="tok-type">i32</span>.{. |
| dbfc0 | 20 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< |
| dbfe0 | 2f 73 70 61 6e 3e 20 61 20 2b 20 62 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 | /span>.a.+.b;.}</code></pre></fi |
| dc000 | 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 54 6f 20 6d 61 6b 65 20 61 20 73 74 61 74 69 63 | gure>........<p>To.make.a.static |
| dc020 | 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 69 67 | .library:</p>.......<figure><fig |
| dc040 | 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< |
| dc060 | 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 |
| dc080 | 67 20 62 75 69 6c 64 2d 6c 69 62 20 6d 61 74 68 74 65 73 74 2e 7a 69 67 3c 2f 6b 62 64 3e 0a 3c | g.build-lib.mathtest.zig</kbd>.< |
| dc0a0 | 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 54 | /samp></pre></figure>.......<p>T |
| dc0c0 | 6f 20 6d 61 6b 65 20 61 20 73 68 61 72 65 64 20 6c 69 62 72 61 72 79 3a 3c 2f 70 3e 0a 20 20 20 | o.make.a.shared.library:</p>.... |
| dc0e0 | 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 69 6f 6e 20 63 6c 61 73 73 3d 22 73 68 | ...<figure><figcaption.class="sh |
| dc100 | 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> |
| dc120 | 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 61 74 68 74 | <samp>$.<kbd>zig.build-lib.matht |
| dc140 | 65 73 74 2e 7a 69 67 20 2d 64 79 6e 61 6d 69 63 3c 2f 6b 62 64 3e 0a 3c 2f 73 61 6d 70 3e 3c 2f | est.zig.-dynamic</kbd>.</samp></ |
| dc160 | 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 48 65 72 65 20 69 73 20 61 | pre></figure>.......<p>Here.is.a |
| dc180 | 6e 20 65 78 61 6d 70 6c 65 20 77 69 74 68 20 74 68 65 20 3c 61 20 68 72 65 66 3d 22 23 5a 69 67 | n.example.with.the.<a.href="#Zig |
| dc1a0 | 2d 42 75 69 6c 64 2d 53 79 73 74 65 6d 22 3e 5a 69 67 20 42 75 69 6c 64 20 53 79 73 74 65 6d 3c | -Build-System">Zig.Build.System< |
| dc1c0 | 2f 61 3e 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 | /a>:</p>.......<figure><figcapti |
| dc1e0 | 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 69 | on.class="c-cap"><cite.class="fi |
| dc200 | 6c 65 22 3e 74 65 73 74 2e 63 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 74 69 6f 6e 3e 3c 70 | le">test.c</cite></figcaption><p |
| dc220 | 72 65 3e 3c 63 6f 64 65 3e 2f 2f 20 54 68 69 73 20 68 65 61 64 65 72 20 69 73 20 67 65 6e 65 72 | re><code>//.This.header.is.gener |
| dc240 | 61 74 65 64 20 62 79 20 7a 69 67 20 66 72 6f 6d 20 6d 61 74 68 74 65 73 74 2e 7a 69 67 0a 23 69 | ated.by.zig.from.mathtest.zig.#i |
| dc260 | 6e 63 6c 75 64 65 20 26 71 75 6f 74 3b 6d 61 74 68 74 65 73 74 2e 68 26 71 75 6f 74 3b 0a 23 69 | nclude."mathtest.h".#i |
| dc280 | 6e 63 6c 75 64 65 20 26 6c 74 3b 73 74 64 69 6f 2e 68 26 67 74 3b 0a 0a 69 6e 74 20 6d 61 69 6e | nclude.<stdio.h>..int.main |
| dc2a0 | 28 69 6e 74 20 61 72 67 63 2c 20 63 68 61 72 20 2a 2a 61 72 67 76 29 20 7b 0a 20 20 20 20 69 6e | (int.argc,.char.**argv).{.....in |
| dc2c0 | 74 33 32 5f 74 20 72 65 73 75 6c 74 20 3d 20 61 64 64 28 34 32 2c 20 31 33 33 37 29 3b 0a 20 20 | t32_t.result.=.add(42,.1337);... |
| dc2e0 | 20 20 70 72 69 6e 74 66 28 26 71 75 6f 74 3b 25 64 5c 6e 26 71 75 6f 74 3b 2c 20 72 65 73 75 6c | ..printf("%d\n",.resul |
| dc300 | 74 29 3b 0a 20 20 20 20 72 65 74 75 72 6e 20 30 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e | t);.....return.0;.}</code></pre> |
| dc320 | 3c 2f 66 69 67 75 72 65 3e 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 61 70 74 | </figure>.......<figure><figcapt |
| dc340 | 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= |
| dc360 | 22 66 69 6c 65 22 3e 62 75 69 6c 64 5f 63 2e 7a 69 67 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 | "file">build_c.zig</cite></figca |
| dc380 | 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 |
| dc3a0 | 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 |
| dc3c0 | 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 |
| dc3e0 | 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 |
| dc400 | 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | d"</span>);..<span.class="t |
| dc420 | 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 |
| dc440 | 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 |
| dc460 | 6b 2d 66 6e 22 3e 62 75 69 6c 64 3c 2f 73 70 61 6e 3e 28 62 3a 20 2a 73 74 64 2e 42 75 69 6c 64 | k-fn">build</span>(b:.*std.Build |
| dc480 | 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 |
| dc4a0 | 70 61 6e 3e 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"> |
| dc4c0 | 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6c 69 62 20 3d 20 62 2e 61 64 64 4c 69 62 72 61 72 79 28 | const</span>.lib.=.b.addLibrary( |
| dc4e0 | 2e 7b 0a 20 20 20 20 20 20 20 20 2e 6c 69 6e 6b 61 67 65 20 3d 20 2e 64 79 6e 61 6d 69 63 2c 0a | .{..........linkage.=..dynamic,. |
| dc500 | 20 20 20 20 20 20 20 20 2e 6e 61 6d 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | .........name.=.<span.class="tok |
| dc520 | 2d 73 74 72 22 3e 26 71 75 6f 74 3b 6d 61 74 68 74 65 73 74 26 71 75 6f 74 3b 3c 2f 73 70 61 6e | -str">"mathtest"</span |
| dc540 | 3e 2c 0a 20 20 20 20 20 20 20 20 2e 72 6f 6f 74 5f 6d 6f 64 75 6c 65 20 3d 20 62 2e 63 72 65 61 | >,..........root_module.=.b.crea |
| dc560 | 74 65 4d 6f 64 75 6c 65 28 2e 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 2e 72 6f 6f 74 5f 73 6f | teModule(.{..............root_so |
| dc580 | 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 73 3d 22 | urce_file.=.b.path(<span.class=" |
| dc5a0 | 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 6d 61 74 68 74 65 73 74 2e 7a 69 67 26 71 75 6f 74 | tok-str">"mathtest.zig" |
| dc5c0 | 3b 3c 2f 73 70 61 6e 3e 29 2c 0a 20 20 20 20 20 20 20 20 7d 29 2c 0a 20 20 20 20 20 20 20 20 2e | ;</span>),.........}),.......... |
| dc5e0 | 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 6c 61 73 | version.=..{..major.=.<span.clas |
| dc600 | 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 6f 72 20 | s="tok-number">1</span>,..minor. |
| dc620 | 3d 20 3c 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 |
| dc640 | 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 6b 2d 6e | an>,..patch.=.<span.class="tok-n |
| dc660 | 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 20 20 3c | umber">0</span>.},.....});.....< |
| dc680 | 73 70 61 6e 20 63 6c 61 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> |
| dc6a0 | 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 20 20 20 | .exe.=.b.addExecutable(.{....... |
| dc6c0 | 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 22 3e | ...name.=.<span.class="tok-str"> |
| dc6e0 | 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 20 20 20 | "test"</span>,........ |
| dc700 | 20 2e 72 6f 6f 74 5f 6d 6f 64 75 6c 65 20 3d 20 62 2e 63 72 65 61 74 65 4d 6f 64 75 6c 65 28 2e | ..root_module.=.b.createModule(. |
| dc720 | 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 2e 6c 69 6e 6b 5f 6c 69 62 63 20 3d 20 3c 73 70 61 6e | {..............link_libc.=.<span |
| dc740 | 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>,.. |
| dc760 | 20 20 20 20 20 20 20 7d 29 2c 0a 20 20 20 20 7d 29 3b 0a 20 20 20 20 65 78 65 2e 72 6f 6f 74 5f | .......}),.....});.....exe.root_ |
| dc780 | 6d 6f 64 75 6c 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 | module.addCSourceFile(.{..file.= |
| dc7a0 | 20 62 2e 70 61 74 68 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 | .b.path(<span.class="tok-str">&q |
| dc7c0 | 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 66 6c 61 67 73 | uot;test.c"</span>),..flags |
| dc7e0 | 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 73 74 72 22 3e | .=.&.{<span.class="tok-str"> |
| dc800 | 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 7d 20 7d 29 3b | "-std=c99"</span>}.}); |
| dc820 | 0a 20 20 20 20 65 78 65 2e 72 6f 6f 74 5f 6d 6f 64 75 6c 65 2e 6c 69 6e 6b 4c 69 62 72 61 72 79 | .....exe.root_module.linkLibrary |
| dc840 | 28 6c 69 62 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 | (lib);......b.default_step.depen |
| dc860 | 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 |
| dc880 | 6c 61 73 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 |
| dc8a0 | 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 |
| dc8c0 | 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 |
| dc8e0 | 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"> |
| dc900 | 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 |
| dc920 | 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 |
| dc940 | 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 |
| dc960 | 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);. |
| dc980 | 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>........< |
| dc9a0 | 66 69 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- |
| dc9c0 | 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 |
| dc9e0 | 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 |
| dca00 | 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>....... |
| dca20 | 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 |
| dca40 | 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> |
| dca60 | 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 |
| dca80 | 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 |
| dcaa0 | 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 |
| dcac0 | 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 |
| dcae0 | 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>... |
| dcb00 | 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 |
| dcb20 | 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 |
| dcb40 | 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.. |
| dcb60 | 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 |
| dcb80 | 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 |
| dcba0 | 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 |
| dcbc0 | 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. |
| dcbe0 | 63 6c 61 73 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 |
| dcc00 | 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">@ |
| dcc20 | 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 |
| dcc40 | 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 |
| dcc60 | 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 |
| dcc80 | 3c 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< |
| dcca0 | 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 |
| dccc0 | 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: |
| dcce0 | 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 |
| dcd00 | 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= |
| dcd20 | 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 |
| dcd40 | 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" |
| dcd60 | 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 |
| dcd80 | 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:. |
| dcda0 | 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 |
| dcdc0 | 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 |
| dcde0 | 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 |
| dce00 | 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_ |
| dce20 | 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</ |
| dce40 | 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 |
| dce60 | 61 73 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.= |
| dce80 | 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 |
| dcea0 | 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 |
| dcec0 | 6e 20 63 6c 61 73 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 |
| dcee0 | 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 |
| dcf00 | 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" |
| dcf20 | 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 |
| dcf40 | 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 |
| dcf60 | 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 |
| dcf80 | 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 |
| dcfa0 | 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. |
| dcfc0 | 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 |
| dcfe0 | 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 |
| dd000 | 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 |
| dd020 | 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 |
| dd040 | 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 |
| dd060 | 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 |
| dd080 | 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>...... |
| dd0a0 | 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 |
| dd0c0 | 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 |
| dd0e0 | 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 |
| dd100 | 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 |
| dd120 | 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 |
| dd140 | 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 |
| dd160 | 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> |
| dd180 | 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 |
| dd1a0 | 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 |
| dd1c0 | 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 |
| dd1e0 | 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 |
| dd200 | 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_ |
| dd220 | 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 |
| dd240 | 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;.. |
| dd260 | 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;.}</ |
| dd280 | 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 |
| dd2a0 | 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">< |
| dd2c0 | 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 |
| dd2e0 | 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 |
| dd300 | 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 |
| dd320 | 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 |
| dd340 | 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 |
| dd360 | 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>); |
| dd380 | 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 |
| dd3a0 | 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> |
| dd3c0 | 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 |
| dd3e0 | 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 |
| dd400 | 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 |
| dd420 | 20 63 6c 61 73 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 |
| dd440 | 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. |
| dd460 | 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 |
| dd480 | 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 |
| dd4a0 | 5f 6d 6f 64 75 6c 65 20 3d 20 62 2e 63 72 65 61 74 65 4d 6f 64 75 6c 65 28 2e 7b 0a 20 20 20 20 | _module.=.b.createModule(.{..... |
| dd4c0 | 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 61 | .........root_source_file.=.b.pa |
| dd4e0 | 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 62 | th(<span.class="tok-str">"b |
| dd500 | 61 73 65 36 34 2e 7a 69 67 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2c 0a 20 20 20 20 20 20 20 | ase64.zig"</span>),........ |
| dd520 | 20 7d 29 2c 0a 20 20 20 20 7d 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | .}),.....});......<span.class="t |
| dd540 | 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 20 62 2e 61 64 64 45 | ok-kw">const</span>.exe.=.b.addE |
| dd560 | 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 65 20 3d 20 3c 73 70 | xecutable(.{..........name.=.<sp |
| dd580 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 74 65 73 74 26 71 75 | an.class="tok-str">"test&qu |
| dd5a0 | 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 5f 6d 6f 64 75 6c 65 | ot;</span>,..........root_module |
| dd5c0 | 20 3d 20 62 2e 63 72 65 61 74 65 4d 6f 64 75 6c 65 28 2e 7b 0a 20 20 20 20 20 20 20 20 20 20 20 | .=.b.createModule(.{............ |
| dd5e0 | 20 2e 6c 69 6e 6b 5f 6c 69 62 63 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | ..link_libc.=.<span.class="tok-n |
| dd600 | 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 7d 29 2c 0a 20 20 | ull">true</span>,.........}),... |
| dd620 | 20 20 7d 29 3b 0a 20 20 20 20 65 78 65 2e 72 6f 6f 74 5f 6d 6f 64 75 6c 65 2e 61 64 64 43 53 6f | ..});.....exe.root_module.addCSo |
| dd640 | 75 72 63 65 46 69 6c 65 28 2e 7b 20 2e 66 69 6c 65 20 3d 20 62 2e 70 61 74 68 28 3c 73 70 61 6e | urceFile(.{..file.=.b.path(<span |
| dd660 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 74 65 73 74 2e 63 26 71 75 | .class="tok-str">"test.c&qu |
| dd680 | 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2c 20 2e 66 6c 61 67 73 20 3d 20 26 61 6d 70 3b 2e 7b 3c 73 70 | ot;</span>),..flags.=.&.{<sp |
| dd6a0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 2d 73 74 64 3d 63 39 | an.class="tok-str">"-std=c9 |
| dd6c0 | 39 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 7d 20 7d 29 3b 0a 20 20 20 20 65 78 65 2e 72 6f 6f 74 | 9"</span>}.});.....exe.root |
| dd6e0 | 5f 6d 6f 64 75 6c 65 2e 61 64 64 4f 62 6a 65 63 74 28 6f 62 6a 29 3b 0a 20 20 20 20 62 2e 69 6e | _module.addObject(obj);.....b.in |
| dd700 | 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 3c 2f 70 72 | stallArtifact(exe);.}</code></pr |
| dd720 | 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 69 67 63 | e></figure>........<figure><figc |
| dd740 | 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</ |
| dd760 | 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 |
| dd780 | 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 74 2f 62 69 | .build</kbd>.$.<kbd>./zig-out/bi |
| dd7a0 | 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 72 65 20 62 | n/test</kbd>.all.your.base.are.b |
| dd7c0 | 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 69 67 75 72 | elong.to.us.</samp></pre></figur |
| dd7e0 | 65 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c | e>.......<p>See.also:</p><ul>.<l |
| dd800 | 69 3e 3c 61 20 68 72 65 66 3d 22 23 54 61 72 67 65 74 73 22 3e 54 61 72 67 65 74 73 3c 2f 61 3e | i><a.href="#Targets">Targets</a> |
| dd820 | 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 5a 69 67 2d 42 75 69 6c 64 2d 53 79 | </li>.<li><a.href="#Zig-Build-Sy |
| dd840 | 73 74 65 6d 22 3e 5a 69 67 20 42 75 69 6c 64 20 53 79 73 74 65 6d 3c 2f 61 3e 3c 2f 6c 69 3e 0a | stem">Zig.Build.System</a></li>. |
| dd860 | 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 32 20 69 | </ul>......................<h2.i |
| dd880 | 64 3d 22 57 65 62 41 73 73 65 6d 62 6c 79 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 57 65 | d="WebAssembly"><a.href="#toc-We |
| dd8a0 | 62 41 73 73 65 6d 62 6c 79 22 3e 57 65 62 41 73 73 65 6d 62 6c 79 3c 2f 61 3e 20 3c 61 20 63 6c | bAssembly">WebAssembly</a>.<a.cl |
| dd8c0 | 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 57 65 62 41 73 73 65 6d 62 6c 79 22 3e c2 a7 | ass="hdr".href="#WebAssembly">.. |
| dd8e0 | 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 6f 72 74 73 | </a></h2>........<p>Zig.supports |
| dd900 | 20 62 75 69 6c 64 69 6e 67 20 66 6f 72 20 57 65 62 41 73 73 65 6d 62 6c 79 20 6f 75 74 20 6f 66 | .building.for.WebAssembly.out.of |
| dd920 | 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 46 72 65 65 | .the.box.</p>.......<h3.id="Free |
| dd940 | 73 74 61 6e 64 69 6e 67 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 46 72 65 65 73 74 61 6e | standing"><a.href="#toc-Freestan |
| dd960 | 64 69 6e 67 22 3e 46 72 65 65 73 74 61 6e 64 69 6e 67 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d | ding">Freestanding</a>.<a.class= |
| dd980 | 22 68 64 72 22 20 68 72 65 66 3d 22 23 46 72 65 65 73 74 61 6e 64 69 6e 67 22 3e c2 a7 3c 2f 61 | "hdr".href="#Freestanding">..</a |
| dd9a0 | 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 76 69 72 6f | ></h3>........<p>For.host.enviro |
| dd9c0 | 6e 6d 65 6e 74 73 20 6c 69 6b 65 20 74 68 65 20 77 65 62 20 62 72 6f 77 73 65 72 20 61 6e 64 20 | nments.like.the.web.browser.and. |
| dd9e0 | 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 6c 65 20 75 | nodejs,.build.as.an.executable.u |
| dda00 | 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 4f 53 20 74 | sing.the.freestanding.......OS.t |
| dda20 | 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 72 75 6e 6e | arget..Here's.an.example.of.runn |
| dda40 | 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 41 73 73 65 | ing.Zig.code.compiled.to.WebAsse |
| dda60 | 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 3c 66 69 67 | mbly.with.nodejs.</p>.......<fig |
| dda80 | 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"> |
| ddaa0 | 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 2f 63 69 74 | <cite.class="file">math.zig</cit |
| ddac0 | 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. |
| ddae0 | 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 |
| ddb00 | 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 |
| ddb20 | 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 3e 28 3c 73 | n.class="tok-fn">print</span>(<s |
| ddb40 | 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>) |
| ddb60 | 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 |
| ddb80 | 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 78 70 6f 72 | an>;..<span.class="tok-kw">expor |
| ddba0 | 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e | t</span>.<span.class="tok-kw">fn |
| ddbc0 | 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 61 64 64 | </span>.<span.class="tok-fn">add |
| ddbe0 | 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 |
| ddc00 | 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 |
| ddc20 | 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= |
| ddc40 | 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 70 72 69 | "tok-type">void</span>.{.....pri |
| ddc60 | 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 69 67 75 72 | nt(a.+.b);.}</code></pre></figur |
| ddc80 | 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 |
| ddca0 | 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>< |
| ddcc0 | 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 74 68 2e 7a | samp>$.<kbd>zig.build-exe.math.z |
| ddce0 | 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 6e 67 20 2d | ig.-target.wasm32-freestanding.- |
| ddd00 | 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 0a 3c 2f 73 | fno-entry.--export=add</kbd>.</s |
| ddd20 | 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 66 69 67 75 | amp></pre></figure>........<figu |
| ddd40 | 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 72 69 70 74 | re><figcaption.class="javascript |
| ddd60 | 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 2e 6a 73 | -cap"><cite.class="file">test.js |
| ddd80 | 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 63 | </cite></figcaption><pre><code>c |
| ddda0 | 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 73 74 20 73 | onst.fs.=.require('fs');.const.s |
| dddc0 | 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 74 3b 2e 2f | ource.=.fs.readFileSync("./ |
| ddde0 | 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 64 41 72 72 | math.wasm");.const.typedArr |
| dde00 | 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 0a 0a 57 65 | ay.=.new.Uint8Array(source);..We |
| dde20 | 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 72 72 61 79 | bAssembly.instantiate(typedArray |
| dde40 | 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 75 6c 74 29 | ,.{...env:.{.....print:.(result) |
| dde60 | 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 73 75 6c 74 | .=>.{.console.log(`The.result |
| dde80 | 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 6e 28 72 65 | .is.${result}`);.}...}}).then(re |
| ddea0 | 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 65 73 75 6c | sult.=>.{...const.add.=.resul |
| ddec0 | 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 64 28 31 2c | t.instance.exports.add;...add(1, |
| ddee0 | 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 65 3e 0a 20 | .2);.});</code></pre></figure>.. |
| ddf00 | 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=" |
| ddf20 | 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 |
| ddf40 | 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 2f 6b 62 64 | e><samp>$.<kbd>node.test.js</kbd |
| ddf60 | 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 72 65 3e 3c | >.The.result.is.3.</samp></pre>< |
| ddf80 | 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 3d 22 57 41 | /figure>..............<h3.id="WA |
| ddfa0 | 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 3c 2f 61 3e | SI"><a.href="#toc-WASI">WASI</a> |
| ddfc0 | 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 3e c2 a7 3c | .<a.class="hdr".href="#WASI">..< |
| ddfe0 | 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 70 6f 72 74 | /a></h3>........<p>Zig's.support |
| de000 | 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 72 66 61 63 | .for.WebAssembly.System.Interfac |
| de020 | 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 65 6c 6f 70 | e.(WASI).is.under.active.develop |
| de040 | 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 20 74 68 65 | ment........Example.of.using.the |
| de060 | 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 67 20 63 6f | .standard.library.and.reading.co |
| de080 | 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 20 20 20 20 | mmand.line.arguments:</p>....... |
| de0a0 | 3c 66 69 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 |
| de0c0 | 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 61 72 67 73 | ap"><cite.class="file">wasi_args |
| de0e0 | 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 |
| de100 | 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 |
| de120 | 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 |
| de140 | 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= |
| de160 | 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> |
| de180 | 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 |
| de1a0 | 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 |
| de1c0 | 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 |
| de1e0 | 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 6f | an>().!<span.class="tok-type">vo |
| de200 | 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | id</span>.{.....<span.class="tok |
| de220 | 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 6f 73 65 5f | -kw">var</span>.general_purpose_ |
| de240 | 61 6c 6c 6f 63 61 74 6f 72 3a 20 73 74 64 2e 68 65 61 70 2e 47 65 6e 65 72 61 6c 50 75 72 70 6f | allocator:.std.heap.GeneralPurpo |
| de260 | 73 65 41 6c 6c 6f 63 61 74 6f 72 28 2e 7b 7d 29 20 3d 20 2e 69 6e 69 74 3b 0a 20 20 20 20 3c 73 | seAllocator(.{}).=..init;.....<s |
| de280 | 70 61 6e 20 63 6c 61 73 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>. |
| de2a0 | 67 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 | gpa.=.general_purpose_allocator. |
| de2c0 | 61 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 | allocator();.....<span.class="to |
| de2e0 | 6b 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 | k-kw">const</span>.args.=.<span. |
| de300 | 63 6c 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 | class="tok-kw">try</span>.std.pr |
| de320 | 6f 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 | ocess.argsAlloc(gpa);.....<span. |
| de340 | 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 73 74 64 2e | class="tok-kw">defer</span>.std. |
| de360 | 70 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 | process.argsFree(gpa,.args);.... |
| de380 | 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6f 72 3c 2f 73 70 61 6e | ..<span.class="tok-kw">for</span |
| de3a0 | 3e 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 | >.(args,.<span.class="tok-number |
| de3c0 | 22 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 | ">0</span>..).|arg,.i|.{........ |
| de3e0 | 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 |
| de400 | 6b 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 | k-str">"{}:.{s}\n"</sp |
| de420 | 61 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 | an>,..{.i,.arg.});.....}.}</code |
| de440 | 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 |
| de460 | 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 |
| de480 | 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 |
| de4a0 | 69 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 | ild-exe.wasi_args.zig.-target.wa |
| de4c0 | 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 2f 66 | sm32-wasi</kbd>.</samp></pre></f |
| de4e0 | 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 69 6f | igure>........<figure><figcaptio |
| de500 | 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 |
| de520 | 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 6d 65 | ption><pre><samp>$.<kbd>wasmtime |
| de540 | 20 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 | .wasi_args.wasm.123.hello</kbd>. |
| de560 | 30 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 | 0:.wasi_args.wasm.1:.123.2:.hell |
| de580 | 6f 0a 3c 2f 73 61 6d 70 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 20 20 20 20 20 20 3c | o.</samp></pre></figure>.......< |
| de5a0 | 70 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 | p>A.more.interesting.example.wou |
| de5c0 | 6c 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 | ld.be.extracting.the.list.of.pre |
| de5e0 | 6f 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 | opens.from.the.runtime........Th |
| de600 | 69 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 | is.is.now.supported.in.the.stand |
| de620 | 61 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 | ard.library.via.<code>std.fs.was |
| de640 | 69 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 | i.Preopens</code>:</p>.......<fi |
| de660 | 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" |
| de680 | 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 70 72 65 6f 70 65 6e | ><cite.class="file">wasi_preopen |
| de6a0 | 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 |
| de6c0 | 6f 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</ |
| de6e0 | 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 |
| de700 | 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 |
| de720 | 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 |
| de740 | 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</ |
| de760 | 73 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 | span>.fs.=.std.fs;..<span.class= |
| de780 | 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= |
| de7a0 | 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=" |
| de7c0 | 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 |
| de7e0 | 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>.{..... |
| de800 | 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>. |
| de820 | 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 3a 20 73 74 64 2e 68 | general_purpose_allocator:.std.h |
| de840 | 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(.{}) |
| de860 | 20 3d 20 2e 69 6e 69 74 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | .=..init;.....<span.class="tok-k |
| de880 | 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 67 70 61 20 3d 20 67 65 6e 65 72 61 6c 5f 70 75 | w">const</span>.gpa.=.general_pu |
| de8a0 | 72 70 6f 73 65 5f 61 6c 6c 6f 63 61 74 6f 72 2e 61 6c 6c 6f 63 61 74 6f 72 28 29 3b 0a 0a 20 20 | rpose_allocator.allocator();.... |
| de8c0 | 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 |
| de8e0 | 3e 20 61 72 65 6e 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 | >.arena_instance.=.std.heap.Aren |
| de900 | 61 41 6c 6c 6f 63 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 | aAllocator.init(gpa);.....<span. |
| de920 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 64 65 66 65 72 3c 2f 73 70 61 6e 3e 20 61 72 65 6e | class="tok-kw">defer</span>.aren |
| de940 | 61 5f 69 6e 73 74 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 | a_instance.deinit();.....<span.c |
| de960 | 6c 61 73 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 65 6e 61 | lass="tok-kw">const</span>.arena |
| de980 | 20 3d 20 61 72 65 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 | .=.arena_instance.allocator();.. |
| de9a0 | 20 20 20 20 3c 73 70 61 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</ |
| de9c0 | 73 70 61 6e 3e 20 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 | span>.preopens.=.<span.class="to |
| de9e0 | 6b 2d 6b 77 22 3e 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 | k-kw">try</span>.fs.wasi.preopen |
| dea00 | 73 41 6c 6c 6f 63 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 | sAlloc(arena);......<span.class= |
| dea20 | 22 74 6f 6b 2d 6b 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 | "tok-kw">for</span>.(preopens.na |
| dea40 | 6d 65 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 | mes,.<span.class="tok-number">0< |
| dea60 | 2f 73 70 61 6e 3e 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 | /span>..).|preopen,.i|.{........ |
| dea80 | 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 |
| deaa0 | 6b 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 | k-str">"{}:.{s}\n"</sp |
| deac0 | 61 6e 3e 2c 20 2e 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 | an>,..{.i,.preopen.});.....}.}</ |
| deae0 | 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 |
| deb00 | 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< |
| deb20 | 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 |
| deb40 | 67 20 62 75 69 6c 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 | g.build-exe.wasi_preopens.zig.-t |
| deb60 | 61 72 67 65 74 20 77 61 73 6d 33 32 2d 77 61 73 69 3c 2f 6b 62 64 3e 0a 3c 2f 73 61 6d 70 3e 3c | arget.wasm32-wasi</kbd>.</samp>< |
| deb80 | 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e 3c 66 | /pre></figure>........<figure><f |
| deba0 | 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 |
| debc0 | 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> |
| debe0 | 77 61 73 6d 74 69 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 | wasmtime.--dir=..wasi_preopens.w |
| dec00 | 61 73 6d 3c 2f 6b 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 | asm</kbd>.0:.stdin.1:.stdout.2:. |
| dec20 | 73 74 64 65 72 72 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 | stderr.3:...</samp></pre></figur |
| dec40 | 65 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 54 | e>.....................<h2.id="T |
| dec60 | 61 72 67 65 74 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 54 61 72 67 65 74 73 22 3e 54 | argets"><a.href="#toc-Targets">T |
| dec80 | 61 72 67 65 74 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 | argets</a>.<a.class="hdr".href=" |
| deca0 | 23 54 61 72 67 65 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 | #Targets">..</a></h2>........<p> |
| decc0 | 0a 20 20 20 20 20 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 | .......<strong>Target</strong>.r |
| dece0 | 65 66 65 72 73 20 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 | efers.to.the.computer.that.will. |
| ded00 | 62 65 20 75 73 65 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 | be.used.to.run.an.executable.... |
| ded20 | 20 20 20 20 49 74 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 | ....It.is.composed.of.the.CPU.ar |
| ded40 | 63 68 69 74 65 63 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 | chitecture,.the.set.of.enabled.C |
| ded60 | 50 55 20 66 65 61 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 | PU.features,.operating.system,.. |
| ded80 | 20 20 20 20 20 6d 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 | .....minimum.and.maximum.operati |
| deda0 | 6e 67 20 73 79 73 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 | ng.system.version,.ABI,.and.ABI. |
| dedc0 | 76 65 72 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 | version........</p>.......<p>... |
| dede0 | 20 20 20 20 5a 69 67 20 69 73 20 61 20 67 65 6e 65 72 61 6c 2d 70 75 72 70 6f 73 65 20 70 72 6f | ....Zig.is.a.general-purpose.pro |
| dee00 | 67 72 61 6d 6d 69 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 | gramming.language.which.means.th |
| dee20 | 61 74 20 69 74 20 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 | at.it.is.designed.to.......gener |
| dee40 | 61 74 65 20 6f 70 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 | ate.optimal.code.for.a.large.set |
| dee60 | 20 6f 66 20 74 61 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 | .of.targets..The.command.<code>z |
| dee80 | 69 67 20 74 61 72 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 | ig.targets</code>.......provides |
| deea0 | 20 69 6e 66 6f 72 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 | .information.about.all.of.the.ta |
| deec0 | 72 67 65 74 73 20 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 | rgets.the.compiler.is.aware.of.< |
| deee0 | 2f 70 3e 0a 20 20 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 | /p>.......<p>When.no.target.opti |
| def00 | 6f 6e 20 69 73 20 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 | on.is.provided.to.the.compiler,. |
| def20 | 74 68 65 20 64 65 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 | the.default.choice.......is.to.t |
| def40 | 61 72 67 65 74 20 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 | arget.the.<strong>host.computer< |
| def60 | 2f 73 74 72 6f 6e 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 | /strong>,.meaning.that.the...... |
| def80 | 20 72 65 73 75 6c 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 | .resulting.executable.will.be.<e |
| defa0 | 6d 3e 75 6e 73 75 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 | m>unsuitable.for.copying.to.a.di |
| defc0 | 66 66 65 72 65 6e 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 | fferent.......computer</em>..In. |
| defe0 | 6f 72 64 65 72 20 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 | order.to.copy.an.executable.to.a |
| df000 | 6e 6f 74 68 65 72 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 | nother.computer,.the.compiler... |
| df020 | 20 20 20 20 6e 65 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 | ....needs.to.know.about.the.targ |
| df040 | 65 74 20 72 65 71 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 | et.requirements.via.the.<code>-t |
| df060 | 61 72 67 65 74 3c 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 | arget</code>.option........</p>. |
| df080 | 20 20 20 20 20 20 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 | ......<p>.......The.Zig.Standard |
| df0a0 | 20 4c 69 62 72 61 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 | .Library.(<code><span.class="tok |
| df0c0 | 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 |
| df0e0 | 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"</ |
| df100 | 73 70 61 6e 3e 29 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 | span>)</code>).has.......cross-p |
| df120 | 6c 61 74 66 6f 72 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 | latform.abstractions,.making.the |
| df140 | 20 73 61 6d 65 20 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 | .same.source.code.viable.on.many |
| df160 | 20 74 61 72 67 65 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 | .targets........Some.code.is.mor |
| df180 | 65 20 70 6f 72 74 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 | e.portable.than.other.code..In.g |
| df1a0 | 65 6e 65 72 61 6c 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 | eneral,.Zig.code.is.extremely... |
| df1c0 | 20 20 20 20 70 6f 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 | ....portable.compared.to.other.p |
| df1e0 | 72 6f 67 72 61 6d 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 | rogramming.languages........</p> |
| df200 | 0a 20 20 20 20 20 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 | .......<p>.......Each.platform.r |
| df220 | 65 71 75 69 72 65 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 | equires.its.own.implementations. |
| df240 | 74 6f 20 6d 61 6b 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 | to.make.Zig's.......cross-platfo |
| df260 | 72 6d 20 61 62 73 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 | rm.abstractions.work..These.impl |
| df280 | 65 6d 65 6e 74 61 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 | ementations.are.at.various...... |
| df2a0 | 20 64 65 67 72 65 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 | .degrees.of.completion..Each.tag |
| df2c0 | 67 65 64 20 72 65 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 | ged.release.of.the.compiler.come |
| df2e0 | 73 20 77 69 74 68 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 | s.with.......release.notes.that. |
| df300 | 70 72 6f 76 69 64 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 | provide.the.full.support.table.f |
| df320 | 6f 72 20 65 61 63 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 | or.each.target........</p>...... |
| df340 | 20 0a 20 20 20 20 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 | ........<h2.id="Style-Guide"><a. |
| df360 | 68 72 65 66 3d 22 23 74 6f 63 2d 53 74 79 6c 65 2d 47 75 69 64 65 22 3e 53 74 79 6c 65 20 47 75 | href="#toc-Style-Guide">Style.Gu |
| df380 | 69 64 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 53 74 | ide</a>.<a.class="hdr".href="#St |
| df3a0 | 79 6c 65 2d 47 75 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 | yle-Guide">..</a></h2>........<p |
| df3c0 | 3e 0a 54 68 65 73 65 20 63 6f 64 69 6e 67 20 63 6f 6e 76 65 6e 74 69 6f 6e 73 20 61 72 65 20 6e | >.These.coding.conventions.are.n |
| df3e0 | 6f 74 20 65 6e 66 6f 72 63 65 64 20 62 79 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 2c 20 62 75 74 | ot.enforced.by.the.compiler,.but |
| df400 | 20 74 68 65 79 20 61 72 65 20 73 68 69 70 70 65 64 20 69 6e 0a 74 68 69 73 20 64 6f 63 75 6d 65 | .they.are.shipped.in.this.docume |
| df420 | 6e 74 61 74 69 6f 6e 20 61 6c 6f 6e 67 20 77 69 74 68 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 20 | ntation.along.with.the.compiler. |
| df440 | 69 6e 20 6f 72 64 65 72 20 74 6f 20 70 72 6f 76 69 64 65 20 61 20 70 6f 69 6e 74 20 6f 66 0a 72 | in.order.to.provide.a.point.of.r |
| df460 | 65 66 65 72 65 6e 63 65 2c 20 73 68 6f 75 6c 64 20 61 6e 79 6f 6e 65 20 77 69 73 68 20 74 6f 20 | eference,.should.anyone.wish.to. |
| df480 | 70 6f 69 6e 74 20 74 6f 20 61 6e 20 61 75 74 68 6f 72 69 74 79 20 6f 6e 20 61 67 72 65 65 64 20 | point.to.an.authority.on.agreed. |
| df4a0 | 75 70 6f 6e 20 5a 69 67 0a 63 6f 64 69 6e 67 20 73 74 79 6c 65 2e 0a 20 20 20 20 20 20 3c 2f 70 | upon.Zig.coding.style........</p |
| df4c0 | 3e 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 63 79 | >.......<h3.id="Avoid-Redundancy |
| df4e0 | 2d 69 6e 2d 4e 61 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 | -in-Names"><a.href="#toc-Avoid-R |
| df500 | 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 6e 64 | edundancy-in-Names">Avoid.Redund |
| df520 | 61 6e 63 79 20 69 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 | ancy.in.Names</a>.<a.class="hdr" |
| df540 | 20 68 72 65 66 3d 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 | .href="#Avoid-Redundancy-in-Name |
| df560 | 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 76 6f 69 64 20 74 | s">..</a></h3>........<p>Avoid.t |
| df580 | 68 65 73 65 20 77 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 | hese.words.in.type.names:</p>... |
| df5a0 | 20 20 20 20 3c 75 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 | ....<ul>.........<li>Value</li>. |
| df5c0 | 20 20 20 20 20 20 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 | ........<li>Data</li>.........<l |
| df5e0 | 69 3e 43 6f 6e 74 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 | i>Context</li>.........<li>Manag |
| df600 | 65 72 3c 2f 6c 69 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 | er</li>.........<li>utils,.misc, |
| df620 | 20 6f 72 20 73 6f 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 | .or.somebody's.initials</li>.... |
| df640 | 20 20 20 3c 2f 75 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 | ...</ul>.......<p>Everything.is. |
| df660 | 61 20 76 61 6c 75 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 | a.value,.all.types.are.data,.eve |
| df680 | 72 79 74 68 69 6e 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 | rything.is.context,.all.logic.ma |
| df6a0 | 6e 61 67 65 73 20 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 | nages.state........Nothing.is.co |
| df6c0 | 6d 6d 75 6e 69 63 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 | mmunicated.by.using.a.word.that. |
| df6e0 | 61 70 70 6c 69 65 73 20 74 6f 20 61 6c 6c 20 74 79 70 65 73 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 | applies.to.all.types.</p>....... |
| df700 | 3c 70 3e 54 65 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 | <p>Temptation.to.use."utilities" |
| df720 | 2c 20 22 6d 69 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 | ,."miscellaneous",.or.somebody's |
| df740 | 20 69 6e 69 74 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 | .initials.......is.a.failure.to. |
| df760 | 63 61 74 65 67 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 | categorize,.or.more.commonly,.ov |
| df780 | 65 72 63 61 74 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 | ercategorization..Such.......dec |
| df7a0 | 6c 61 72 61 74 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 | larations.can.live.at.the.root.o |
| df7c0 | 66 20 61 20 6d 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 | f.a.module.that.needs.them.with. |
| df7e0 | 6e 6f 0a 20 20 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 | no.......namespace.needed.</p>.. |
| df800 | 20 20 20 20 20 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 | .............<h3.id="Avoid-Redun |
| df820 | 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 61 | dant-Names-in-Fully-Qualified-Na |
| df840 | 6d 65 73 70 61 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 | mespaces"><a.href="#toc-Avoid-Re |
| df860 | 64 75 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 | dundant-Names-in-Fully-Qualified |
| df880 | 2d 4e 61 6d 65 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 | -Namespaces">Avoid.Redundant.Nam |
| df8a0 | 65 73 20 69 6e 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 | es.in.Fully-Qualified.Namespaces |
| df8c0 | 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 76 6f 69 64 | </a>.<a.class="hdr".href="#Avoid |
| df8e0 | 2d 52 65 64 75 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 | -Redundant-Names-in-Fully-Qualif |
| df900 | 69 65 64 2d 4e 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 | ied-Namespaces">..</a></h3>..... |
| df920 | 20 20 20 3c 70 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 | ...<p>Every.declaration.is.assig |
| df940 | 6e 65 64 20 61 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 | ned.a.<strong>fully.qualified... |
| df960 | 20 20 20 20 6e 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 | ....namespace</strong>.by.the.co |
| df980 | 6d 70 69 6c 65 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 | mpiler,.creating.a.tree.structur |
| df9a0 | 65 2e 20 43 68 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 | e..Choose.names.based.......on.t |
| df9c0 | 68 65 20 66 75 6c 6c 79 2d 71 75 61 6c 69 66 69 65 64 20 6e 61 6d 65 73 70 61 63 65 2c 20 61 6e | he.fully-qualified.namespace,.an |
| df9e0 | 64 20 61 76 6f 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 | d.avoid.redundant.name.segments. |
| dfa00 | 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 |
| dfa20 | 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 |
| dfa40 | 22 3e 72 65 64 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 | ">redundant_fqn.zig</cite></figc |
| dfa60 | 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 |
| dfa80 | 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. |
| dfaa0 | 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 |
| dfac0 | 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 |
| dfae0 | 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=" |
| dfb00 | 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=" |
| dfb20 | 74 6f 6b 2d 6b 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 | tok-kw">const</span>.json.=.<spa |
| dfb40 | 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>.{ |
| dfb60 | 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 | .....<span.class="tok-kw">pub</s |
| dfb80 | 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c | pan>.<span.class="tok-kw">const< |
| dfba0 | 2f 73 70 61 6e 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 | /span>.JsonValue.=.<span.class=" |
| dfbc0 | 74 6f 6b 2d 6b 77 22 3e 75 6e 69 6f 6e 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 | tok-kw">union</span>(<span.class |
| dfbe0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6e 75 6d 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 20 20 20 | ="tok-kw">enum</span>).{........ |
| dfc00 | 20 6e 75 6d 62 65 72 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | .number:.<span.class="tok-type"> |
| dfc20 | 66 36 34 3c 2f 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 | f64</span>,.........boolean:.<sp |
| dfc40 | 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 2c | an.class="tok-type">bool</span>, |
| dfc60 | 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 |
| dfc80 | 74 22 3e 2f 2f 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 | t">//....</span>.....};.};..<spa |
| dfca0 | 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 |
| dfcc0 | 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 |
| dfce0 | 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 |
| dfd00 | 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> |
| dfd20 | 20 7b 0a 20 20 20 20 73 74 64 2e 64 65 62 75 67 2e 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 6c 61 | .{.....std.debug.print(<span.cla |
| dfd40 | 73 73 3d 22 74 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 | ss="tok-str">"{s}\n"</ |
| dfd60 | 73 70 61 6e 3e 2c 20 2e 7b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 | span>,..{<span.class="tok-builti |
| dfd80 | 6e 22 3e 40 74 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 | n">@typeName</span>(json.JsonVal |
| dfda0 | 75 65 29 7d 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 3c 66 | ue)});.}</code></pre></figure><f |
| dfdc0 | 69 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 |
| dfde0 | 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 |
| dfe00 | 3e 24 20 3c 6b 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 | >$.<kbd>zig.build-exe.redundant_ |
| dfe20 | 66 71 6e 2e 7a 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 | fqn.zig</kbd>.$.<kbd>./redundant |
| dfe40 | 5f 66 71 6e 3c 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 | _fqn</kbd>.redundant_fqn.json.Js |
| dfe60 | 6f 6e 56 61 6c 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 | onValue.</samp></pre></figure>.. |
| dfe80 | 20 20 20 20 20 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 | ......<p>In.this.example,."json" |
| dfea0 | 20 69 73 20 72 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 | .is.repeated.in.the.fully-qualif |
| dfec0 | 69 65 64 20 6e 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 | ied.namespace..The.solution..... |
| dfee0 | 20 20 69 73 20 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 | ..is.to.delete.<code>Json</code> |
| dff00 | 20 66 72 6f 6d 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 | .from.<code>JsonValue</code>..In |
| dff20 | 20 74 68 69 73 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 | .this.example.we.have.......an.e |
| dff40 | 6d 70 74 79 20 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 | mpty.struct.named.<code>json</co |
| dff60 | 64 65 3e 20 62 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 | de>.but.remember.that.files.also |
| dff80 | 20 61 63 74 0a 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 | .act.......as.part.of.the.fully- |
| dffa0 | 71 75 61 6c 69 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 | qualified.namespace.</p>.......< |
| dffc0 | 70 3e 54 68 69 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 | p>This.example.is.an.exception.t |
| dffe0 | 6f 20 74 68 65 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 | o.the.rule.specified.in.<a.href= |
| e0000 | 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 41 76 6f | "#Avoid-Redundancy-in-Names">Avo |
| e0020 | 69 64 20 52 65 64 75 6e 64 61 6e 63 79 20 69 6e 20 4e 61 6d 65 73 3c 2f 61 3e 2e 0a 20 20 20 20 | id.Redundancy.in.Names</a>...... |
| e0040 | 20 20 54 68 65 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 | ..The.meaning.of.the.type.has.be |
| e0060 | 65 6e 20 72 65 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 | en.reduced.to.its.core:.it.is.a. |
| e0080 | 6a 73 6f 6e 20 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 | json.value..The.name.......canno |
| e00a0 | 74 20 62 65 20 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 | t.be.any.more.specific.without.b |
| e00c0 | 65 69 6e 67 20 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 | eing.incorrect.</p>............. |
| e00e0 | 20 20 3c 68 33 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 | ..<h3.id="Whitespace"><a.href="# |
| e0100 | 74 6f 63 2d 57 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 | toc-Whitespace">Whitespace</a>.< |
| e0120 | 61 20 63 6c 61 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 | a.class="hdr".href="#Whitespace" |
| e0140 | 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 | >..</a></h3>........<ul>........ |
| e0160 | 20 3c 6c 69 3e 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 | .<li>...........4.space.indentat |
| e0180 | 69 6f 6e 0a 20 20 20 20 20 20 20 20 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 0a 20 | ion.........</li>.........<li>.. |
| e01a0 | 20 20 20 20 20 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 | .........Open.braces.on.same.lin |
| e01c0 | 65 2c 20 75 6e 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 | e,.unless.you.need.to.wrap...... |
| e01e0 | 20 20 20 20 3c 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 | ....</li>.........<li>If.a.list. |
| e0200 | 6f 66 20 74 68 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 | of.things.is.longer.than.2,.put. |
| e0220 | 65 61 63 68 20 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 | each.item.on.its.own.line.and... |
| e0240 | 20 20 20 20 20 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 | ........exercise.the.ability.to. |
| e0260 | 70 75 74 20 61 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 | put.an.extra.comma.at.the.end... |
| e0280 | 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>....... |
| e02a0 | 20 20 20 20 4c 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 | ....Line.length:.aim.for.100;.us |
| e02c0 | 65 20 63 6f 6d 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 | e.common.sense..........</li>... |
| e02e0 | 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 64 3d 22 4e | ....</ul>..............<h3.id="N |
| e0300 | 61 6d 65 73 22 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 | ames"><a.href="#toc-Names">Names |
| e0320 | 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 4e 61 6d 65 73 | </a>.<a.class="hdr".href="#Names |
| e0340 | 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 52 | ">..</a></h3>........<p>.......R |
| e0360 | 6f 75 67 68 6c 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 | oughly.speaking:.<code>camelCase |
| e0380 | 46 75 6e 63 74 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 | FunctionName</code>,.<code>Title |
| e03a0 | 43 61 73 65 54 79 70 65 4e 61 6d 65 3c 2f 63 6f 64 65 3e 2c 0a 20 20 20 20 20 20 20 20 20 20 20 | CaseTypeName</code>,............ |
| e03c0 | 20 20 20 3c 63 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 | ...<code>snake_case_variable_nam |
| e03e0 | 65 3c 2f 63 6f 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 | e</code>..More.precisely:....... |
| e0400 | 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 0a 20 20 20 | </p>.......<ul>.........<li>.... |
| e0420 | 20 20 20 20 20 20 20 20 20 49 66 20 3c 63 6f 64 65 3e 78 3c 2f 63 6f 64 65 3e 20 69 73 20 61 20 | .........If.<code>x</code>.is.a. |
| e0440 | 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 | <code><span.class="tok-type">typ |
| e0460 | 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 74 68 65 6e | e</span></code>.............then |
| e0480 | 20 3c 63 6f 64 65 3e 78 3c 2f 63 6f 64 65 3e 20 73 68 6f 75 6c 64 20 62 65 20 3c 63 6f 64 65 3e | .<code>x</code>.should.be.<code> |
| e04a0 | 54 69 74 6c 65 43 61 73 65 3c 2f 63 6f 64 65 3e 2c 20 75 6e 6c 65 73 73 20 69 74 0a 20 20 20 20 | TitleCase</code>,.unless.it..... |
| e04c0 | 20 20 20 20 20 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 | ........is.a.<code><span.class=" |
| e04e0 | 74 6f 6b 2d 6b 77 22 3e 73 74 72 75 63 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 77 69 74 | tok-kw">struct</span></code>.wit |
| e0500 | 68 20 30 20 66 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 | h.0.fields.and.is.never.meant.to |
| e0520 | 20 62 65 20 69 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 | .be.instantiated,.............in |
| e0540 | 20 77 68 69 63 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 | .which.case.it.is.considered.to. |
| e0560 | 62 65 20 61 20 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 | be.a."namespace".and.uses.<code> |
| e0580 | 73 6e 61 6b 65 5f 63 61 73 65 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 20 20 3c 2f 6c 69 3e | snake_case</code>..........</li> |
| e05a0 | 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 49 66 20 3c 63 6f | .........<li>.............If.<co |
| e05c0 | 64 65 3e 78 3c 2f 63 6f 64 65 3e 20 69 73 20 63 61 6c 6c 61 62 6c 65 2c 20 61 6e 64 20 3c 63 6f | de>x</code>.is.callable,.and.<co |
| e05e0 | 64 65 3e 78 3c 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 | de>x</code>'s.return.type.is.... |
| e0600 | 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- |
| e0620 | 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 74 68 65 6e 20 3c | type">type</span></code>,.then.< |
| e0640 | 63 6f 64 65 3e 78 3c 2f 63 6f 64 65 3e 20 73 68 6f 75 6c 64 20 62 65 20 3c 63 6f 64 65 3e 54 69 | code>x</code>.should.be.<code>Ti |
| e0660 | 74 6c 65 43 61 73 65 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 20 20 3c 2f 6c 69 3e 0a 20 20 | tleCase</code>..........</li>... |
| e0680 | 20 20 20 20 20 20 3c 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 49 66 20 3c 63 6f 64 65 3e | ......<li>.............If.<code> |
| e06a0 | 78 3c 2f 63 6f 64 65 3e 20 69 73 20 6f 74 68 65 72 77 69 73 65 20 63 61 6c 6c 61 62 6c 65 2c 20 | x</code>.is.otherwise.callable,. |
| e06c0 | 74 68 65 6e 20 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 | then.<code>x</code>.should...... |
| e06e0 | 20 20 20 20 20 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 | .......be.<code>camelCase</code> |
| e0700 | 2e 0a 20 20 20 20 20 20 20 20 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 0a 20 20 20 | ..........</li>.........<li>.... |
| e0720 | 20 20 20 20 20 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 | .........Otherwise,.<code>x</cod |
| e0740 | 65 3e 20 73 68 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 | e>.should.be.<code>snake_case</c |
| e0760 | 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 3c 2f 75 6c 3e 0a | ode>..........</li>.......</ul>. |
| e0780 | 20 20 20 20 20 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 | ......<p>.......Acronyms,.initia |
| e07a0 | 6c 69 73 6d 73 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 | lisms,.proper.nouns,.or.any.othe |
| e07c0 | 72 20 77 6f 72 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 | r.word.that.has.capitalization.. |
| e07e0 | 20 20 20 20 20 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 | .....rules.in.written.English.ar |
| e0800 | 65 20 73 75 62 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 | e.subject.to.naming.conventions. |
| e0820 | 6a 75 73 74 20 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 | just.like.any.other.......word.. |
| e0840 | 45 76 65 6e 20 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 | Even.acronyms.that.are.only.2.le |
| e0860 | 74 74 65 72 73 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 | tters.long.are.subject.to.these. |
| e0880 | 20 20 20 20 20 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 | ......conventions........</p>... |
| e08a0 | 20 20 20 20 3c 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 | ....<p>.......File.names.fall.in |
| e08c0 | 74 6f 20 74 77 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 | to.two.categories:.types.and.nam |
| e08e0 | 65 73 70 61 63 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 | espaces..If.the.file.......(impl |
| e0900 | 69 63 69 74 6c 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 | icitly.a.struct).has.top.level.f |
| e0920 | 69 65 6c 64 73 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 | ields,.it.should.be.named.like.a |
| e0940 | 6e 79 0a 20 20 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 | ny.......other.struct.with.field |
| e0960 | 73 20 75 73 69 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 | s.using.<code.class="file">Title |
| e0980 | 43 61 73 65 3c 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 | Case</code>..Otherwise,.......it |
| e09a0 | 20 73 68 6f 75 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 | .should.use.<code.class="file">s |
| e09c0 | 6e 61 6b 65 5f 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 | nake_case</code>..Directory.name |
| e09e0 | 73 20 73 68 6f 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 | s.should.be.......<code.class="f |
| e0a00 | 69 6c 65 22 3e 73 6e 61 6b 65 5f 63 61 73 65 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f | ile">snake_case</code>........</ |
| e0a20 | 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 61 72 65 20 67 65 6e | p>.......<p>.......These.are.gen |
| e0a40 | 65 72 61 6c 20 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 | eral.rules.of.thumb;.if.it.makes |
| e0a60 | 20 73 65 6e 73 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 | .sense.to.do.something.different |
| e0a80 | 2c 0a 20 20 20 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 | ,.......do.what.makes.sense..For |
| e0aa0 | 20 65 78 61 6d 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 | .example,.if.there.is.an.establi |
| e0ac0 | 73 68 65 64 20 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 | shed.convention.such.as.......<c |
| e0ae0 | 6f 64 65 3e 45 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 | ode>ENOENT</code>,.follow.the.es |
| e0b00 | 74 61 62 6c 69 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 | tablished.convention........</p> |
| e0b20 | 0a 20 20 20 20 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 | ..............<h3.id="Examples"> |
| e0b40 | 3c 61 20 68 72 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 | <a.href="#toc-Examples">Examples |
| e0b60 | 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 45 78 61 6d 70 | </a>.<a.class="hdr".href="#Examp |
| e0b80 | 6c 65 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 66 69 67 75 72 65 3e | les">..</a></h3>........<figure> |
| e0ba0 | 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 |
| e0bc0 | 65 20 63 6c 61 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 | e.class="file">style_example.zig |
| e0be0 | 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>< |
| e0c00 | 73 70 61 6e 20 63 6c 61 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> |
| e0c20 | 20 6e 61 6d 65 73 70 61 63 65 5f 6e 61 6d 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | .namespace_name.=.<span.class="t |
| e0c40 | 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 |
| e0c60 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 64 69 72 5f 6e 61 6d 65 2f | .class="tok-str">"dir_name/ |
| e0c80 | 66 69 6c 65 5f 6e 61 6d 65 2e 7a 69 67 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 3c 73 70 | file_name.zig"</span>);.<sp |
| e0ca0 | 61 6e 20 63 6c 61 73 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 |
| e0cc0 | 79 70 65 4e 61 6d 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 | ypeName.=.<span.class="tok-built |
| e0ce0 | 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=" |
| e0d00 | 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 64 69 72 5f 6e 61 6d 65 2f 54 79 70 65 4e 61 6d 65 | tok-str">"dir_name/TypeName |
| e0d20 | 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 61 73 73 3d | .zig"</span>);.<span.class= |
| e0d40 | 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 67 6c 6f 62 61 6c 5f 76 61 72 3a 20 | "tok-kw">var</span>.global_var:. |
| e0d60 | 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 |
| e0d80 | 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 75 6e 64 65 66 | >.=.<span.class="tok-null">undef |
| e0da0 | 69 6e 65 64 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | ined</span>;.<span.class="tok-kw |
| e0dc0 | 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 63 6f 6e 73 74 5f 6e 61 6d 65 20 3d 20 3c 73 70 61 | ">const</span>.const_name.=.<spa |
| e0de0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 32 3c 2f 73 70 61 6e 3e 3b 0a | n.class="tok-number">42</span>;. |
| e0e00 | 3c 73 70 61 6e 20 63 6c 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 |
| e0e20 | 3e 20 70 72 69 6d 69 74 69 76 65 5f 74 79 70 65 5f 61 6c 69 61 73 20 3d 20 3c 73 70 61 6e 20 63 | >.primitive_type_alias.=.<span.c |
| e0e40 | 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 3b 0a 3c 73 70 61 | lass="tok-type">f32</span>;.<spa |
| e0e60 | 6e 20 63 6c 61 73 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 |
| e0e80 | 72 69 6e 67 5f 61 6c 69 61 73 20 3d 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ring_alias.=.[]<span.class="tok- |
| e0ea0 | 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | type">u8</span>;..<span.class="t |
| e0ec0 | 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 4e 61 6d 65 20 3d | ok-kw">const</span>.StructName.= |
| e0ee0 | 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 |
| e0f00 | 61 6e 3e 20 7b 0a 20 20 20 20 66 69 65 6c 64 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | an>.{.....field:.<span.class="to |
| e0f20 | 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 2c 0a 7d 3b 0a 3c 73 70 61 6e 20 63 6c 61 | k-type">i32</span>,.};.<span.cla |
| e0f40 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 53 74 72 75 63 74 41 | ss="tok-kw">const</span>.StructA |
| e0f60 | 6c 69 61 73 20 3d 20 53 74 72 75 63 74 4e 61 6d 65 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | lias.=.StructName;..<span.class= |
| e0f80 | 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=" |
| e0fa0 | 74 6f 6b 2d 66 6e 22 3e 66 75 6e 63 74 69 6f 6e 4e 61 6d 65 3c 2f 73 70 61 6e 3e 28 70 61 72 61 | tok-fn">functionName</span>(para |
| e0fc0 | 6d 5f 6e 61 6d 65 3a 20 54 79 70 65 4e 61 6d 65 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | m_name:.TypeName).<span.class="t |
| e0fe0 | 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 |
| e1000 | 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 75 6e 63 74 | .class="tok-kw">var</span>.funct |
| e1020 | 69 6f 6e 50 6f 69 6e 74 65 72 20 3d 20 66 75 6e 63 74 69 6f 6e 4e 61 6d 65 3b 0a 20 20 20 20 66 | ionPointer.=.functionName;.....f |
| e1040 | 75 6e 63 74 69 6f 6e 50 6f 69 6e 74 65 72 28 29 3b 0a 20 20 20 20 66 75 6e 63 74 69 6f 6e 50 6f | unctionPointer();.....functionPo |
| e1060 | 69 6e 74 65 72 20 3d 20 6f 74 68 65 72 46 75 6e 63 74 69 6f 6e 3b 0a 20 20 20 20 66 75 6e 63 74 | inter.=.otherFunction;.....funct |
| e1080 | 69 6f 6e 50 6f 69 6e 74 65 72 28 29 3b 0a 7d 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ionPointer();.}.<span.class="tok |
| e10a0 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 66 75 6e 63 74 69 6f 6e 41 6c 69 61 73 20 | -kw">const</span>.functionAlias. |
| e10c0 | 3d 20 66 75 6e 63 74 69 6f 6e 4e 61 6d 65 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | =.functionName;..<span.class="to |
| e10e0 | 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 |
| e1100 | 2d 66 6e 22 3e 4c 69 73 74 54 65 6d 70 6c 61 74 65 46 75 6e 63 74 69 6f 6e 3c 2f 73 70 61 6e 3e | -fn">ListTemplateFunction</span> |
| e1120 | 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f | (<span.class="tok-kw">comptime</ |
| e1140 | 73 70 61 6e 3e 20 43 68 69 6c 64 54 79 70 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | span>.ChildType:.<span.class="to |
| e1160 | 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 | k-type">type</span>,.<span.class |
| e1180 | 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 78 65 64 5f | ="tok-kw">comptime</span>.fixed_ |
| e11a0 | 73 69 7a 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 | size:.<span.class="tok-type">usi |
| e11c0 | 7a 65 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | ze</span>).<span.class="tok-type |
| e11e0 | 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ">type</span>.{.....<span.class= |
| e1200 | 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 4c 69 73 74 28 43 68 69 6c | "tok-kw">return</span>.List(Chil |
| e1220 | 64 54 79 70 65 2c 20 66 69 78 65 64 5f 73 69 7a 65 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 | dType,.fixed_size);.}..<span.cla |
| e1240 | 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 |
| e1260 | 73 3d 22 74 6f 6b 2d 66 6e 22 3e 53 68 6f 72 74 4c 69 73 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 | s="tok-fn">ShortList</span>(<spa |
| e1280 | 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> |
| e12a0 | 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< |
| e12c0 | 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 |
| e12e0 | 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 6e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ptime</span>.n:.<span.class="tok |
| e1300 | 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 6c 61 73 73 | -type">usize</span>).<span.class |
| e1320 | 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 20 3c 73 | ="tok-type">type</span>.{.....<s |
| e1340 | 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> |
| e1360 | 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 |
| e1380 | 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 66 69 65 6c 64 5f 6e 61 6d 65 3a 20 5b 6e 5d 54 2c 0a | an>.{.........field_name:.[n]T,. |
| e13a0 | 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 66 6e 3c | ........<span.class="tok-kw">fn< |
| e13c0 | 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 65 74 68 | /span>.<span.class="tok-fn">meth |
| e13e0 | 6f 64 4e 61 6d 65 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | odName</span>().<span.class="tok |
| e1400 | 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 7d 0a 20 20 20 20 7d 3b 0a 7d 0a 0a | -type">void</span>.{}.....};.}.. |
| e1420 | 3c 73 70 61 6e 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 |
| e1440 | 20 77 6f 72 64 20 58 4d 4c 20 6c 6f 73 65 73 20 69 74 73 20 63 61 73 69 6e 67 20 77 68 65 6e 20 | .word.XML.loses.its.casing.when. |
| e1460 | 75 73 65 64 20 69 6e 20 5a 69 67 20 69 64 65 6e 74 69 66 69 65 72 73 2e 3c 2f 73 70 61 6e 3e 0a | used.in.Zig.identifiers.</span>. |
| e1480 | 3c 73 70 61 6e 20 63 6c 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 |
| e14a0 | 3e 20 78 6d 6c 5f 64 6f 63 75 6d 65 6e 74 20 3d 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | >.xml_document.=.....<span.class |
| e14c0 | 3d 22 74 6f 6b 2d 73 74 72 22 3e 5c 5c 26 6c 74 3b 3f 78 6d 6c 20 76 65 72 73 69 6f 6e 3d 26 71 | ="tok-str">\\<?xml.version=&q |
| e14e0 | 75 6f 74 3b 31 2e 30 26 71 75 6f 74 3b 20 65 6e 63 6f 64 69 6e 67 3d 26 71 75 6f 74 3b 55 54 46 | uot;1.0".encoding="UTF |
| e1500 | 2d 38 26 71 75 6f 74 3b 3f 26 67 74 3b 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 | -8"?></span>.....<span.c |
| e1520 | 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 5c 5c 26 6c 74 3b 64 6f 63 75 6d 65 6e 74 26 67 74 | lass="tok-str">\\<document> |
| e1540 | 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 73 74 | ;</span>.....<span.class="tok-st |
| e1560 | 72 22 3e 5c 5c 26 6c 74 3b 2f 64 6f 63 75 6d 65 6e 74 26 67 74 3b 3c 2f 73 70 61 6e 3e 0a 3b 0a | r">\\</document></span>.;. |
| e1580 | 3c 73 70 61 6e 20 63 6c 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 |
| e15a0 | 3e 20 58 6d 6c 50 61 72 73 65 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | >.XmlParser.=.<span.class="tok-k |
| e15c0 | 77 22 3e 73 74 72 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 66 69 65 6c 64 3a 20 3c 73 | w">struct</span>.{.....field:.<s |
| e15e0 | 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>, |
| e1600 | 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f | .};..<span.class="tok-comment">/ |
| e1620 | 2f 20 54 68 65 20 69 6e 69 74 69 61 6c 73 20 42 45 20 28 42 69 67 20 45 6e 64 69 61 6e 29 20 61 | /.The.initials.BE.(Big.Endian).a |
| e1640 | 72 65 20 6a 75 73 74 20 61 6e 6f 74 68 65 72 20 77 6f 72 64 20 69 6e 20 5a 69 67 20 69 64 65 6e | re.just.another.word.in.Zig.iden |
| e1660 | 74 69 66 69 65 72 20 6e 61 6d 65 73 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | tifier.names.</span>.<span.class |
| e1680 | 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= |
| e16a0 | 22 74 6f 6b 2d 66 6e 22 3e 72 65 61 64 55 33 32 42 65 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 | "tok-fn">readU32Be</span>().<spa |
| e16c0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 20 7b 7d | n.class="tok-type">u32</span>.{} |
| e16e0 | 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 66 69 67 75 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e | </code></pre></figure>.......<p> |
| e1700 | 0a 20 20 20 20 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 | .......See.the.<a.href="#Zig-Sta |
| e1720 | 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 |
| e1740 | 61 72 79 3c 2f 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 | ary</a>.for.more.examples....... |
| e1760 | 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 44 6f 63 2d 43 | .</p>..............<h3.id="Doc-C |
| e1780 | 6f 6d 6d 65 6e 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 | omment-Guidance"><a.href="#toc-D |
| e17a0 | 6f 63 2d 43 6f 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 | oc-Comment-Guidance">Doc.Comment |
| e17c0 | 20 47 75 69 64 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 | .Guidance</a>.<a.class="hdr".hre |
| e17e0 | 66 3d 22 23 44 6f 63 2d 43 6f 6d 6d 65 6e 74 2d 47 75 69 64 61 6e 63 65 22 3e c2 a7 3c 2f 61 3e | f="#Doc-Comment-Guidance">..</a> |
| e1800 | 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 4f 6d | </h3>........<ul>.........<li>Om |
| e1820 | 69 74 20 61 6e 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 | it.any.information.that.is.redun |
| e1840 | 64 61 6e 74 20 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 | dant.based.on.the.name.of.the.th |
| e1860 | 69 6e 67 20 62 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 | ing.being.documented.</li>...... |
| e1880 | 20 20 20 3c 6c 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 | ...<li>Duplicating.information.o |
| e18a0 | 6e 74 6f 20 6d 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 | nto.multiple.similar.functions.i |
| e18c0 | 73 20 65 6e 63 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 | s.encouraged.because.it.helps.ID |
| e18e0 | 45 73 20 61 6e 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 | Es.and.other.tools.provide.bette |
| e1900 | 72 20 68 65 6c 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 | r.help.text.</li>.........<li>Us |
| e1920 | 65 20 74 68 65 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 | e.the.word.<strong>assume</stron |
| e1940 | 67 3e 20 74 6f 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 | g>.to.indicate.invariants.that.c |
| e1960 | 61 75 73 65 20 3c 65 6d 3e 75 6e 63 68 65 63 6b 65 64 3c 2f 65 6d 3e 20 3c 61 20 68 72 65 66 3d | ause.<em>unchecked</em>.<a.href= |
| e1980 | 22 23 49 6c 6c 65 67 61 6c 2d 42 65 68 61 76 69 6f 72 22 3e 49 6c 6c 65 67 61 6c 20 42 65 68 61 | "#Illegal-Behavior">Illegal.Beha |
| e19a0 | 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>.... |
| e19c0 | 20 20 20 20 20 3c 6c 69 3e 55 73 65 20 74 68 65 20 77 6f 72 64 20 3c 73 74 72 6f 6e 67 3e 61 73 | .....<li>Use.the.word.<strong>as |
| e19e0 | 73 65 72 74 3c 2f 73 74 72 6f 6e 67 3e 20 74 6f 20 69 6e 64 69 63 61 74 65 20 69 6e 76 61 72 69 | sert</strong>.to.indicate.invari |
| e1a00 | 61 6e 74 73 20 74 68 61 74 20 63 61 75 73 65 20 3c 65 6d 3e 73 61 66 65 74 79 2d 63 68 65 63 6b | ants.that.cause.<em>safety-check |
| e1a20 | 65 64 3c 2f 65 6d 3e 20 3c 61 20 68 72 65 66 3d 22 23 49 6c 6c 65 67 61 6c 2d 42 65 68 61 76 69 | ed</em>.<a.href="#Illegal-Behavi |
| e1a40 | 6f 72 22 3e 49 6c 6c 65 67 61 6c 20 42 65 68 61 76 69 6f 72 3c 2f 61 3e 20 77 68 65 6e 20 76 69 | or">Illegal.Behavior</a>.when.vi |
| e1a60 | 6f 6c 61 74 65 64 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 0a | olated.</li>.......</ul>........ |
| e1a80 | 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 53 6f 75 72 63 65 2d 45 6e 63 6f | .............<h2.id="Source-Enco |
| e1aa0 | 64 69 6e 67 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 53 6f 75 72 63 65 2d 45 6e 63 6f 64 | ding"><a.href="#toc-Source-Encod |
| e1ac0 | 69 6e 67 22 3e 53 6f 75 72 63 65 20 45 6e 63 6f 64 69 6e 67 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 | ing">Source.Encoding</a>.<a.clas |
| e1ae0 | 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 53 6f 75 72 63 65 2d 45 6e 63 6f 64 69 6e 67 22 3e | s="hdr".href="#Source-Encoding"> |
| e1b00 | 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 6f 75 72 63 65 | ..</a></h2>........<p>Zig.source |
| e1b20 | 20 63 6f 64 65 20 69 73 20 65 6e 63 6f 64 65 64 20 69 6e 20 55 54 46 2d 38 2e 20 41 6e 20 69 6e | .code.is.encoded.in.UTF-8..An.in |
| e1b40 | 76 61 6c 69 64 20 55 54 46 2d 38 20 62 79 74 65 20 73 65 71 75 65 6e 63 65 20 72 65 73 75 6c 74 | valid.UTF-8.byte.sequence.result |
| e1b60 | 73 20 69 6e 20 61 20 63 6f 6d 70 69 6c 65 20 65 72 72 6f 72 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 | s.in.a.compile.error.</p>....... |
| e1b80 | 3c 70 3e 54 68 72 6f 75 67 68 6f 75 74 20 61 6c 6c 20 7a 69 67 20 73 6f 75 72 63 65 20 63 6f 64 | <p>Throughout.all.zig.source.cod |
| e1ba0 | 65 20 28 69 6e 63 6c 75 64 69 6e 67 20 69 6e 20 63 6f 6d 6d 65 6e 74 73 29 2c 20 73 6f 6d 65 20 | e.(including.in.comments),.some. |
| e1bc0 | 63 6f 64 65 20 70 6f 69 6e 74 73 20 61 72 65 20 6e 65 76 65 72 20 61 6c 6c 6f 77 65 64 3a 3c 2f | code.points.are.never.allowed:</ |
| e1be0 | 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 73 63 69 69 20 | p>.......<ul>.........<li>Ascii. |
| e1c00 | 63 6f 6e 74 72 6f 6c 20 63 68 61 72 61 63 74 65 72 73 2c 20 65 78 63 65 70 74 20 66 6f 72 20 55 | control.characters,.except.for.U |
| e1c20 | 2b 30 30 30 61 20 28 4c 46 29 2c 20 55 2b 30 30 30 64 20 28 43 52 29 2c 20 61 6e 64 20 55 2b 30 | +000a.(LF),.U+000d.(CR),.and.U+0 |
| e1c40 | 30 30 39 20 28 48 54 29 3a 20 55 2b 30 30 30 30 20 2d 20 55 2b 30 30 30 38 2c 20 55 2b 30 30 30 | 009.(HT):.U+0000.-.U+0008,.U+000 |
| e1c60 | 62 20 2d 20 55 2b 30 30 30 63 2c 20 55 2b 30 30 30 65 20 2d 20 55 2b 30 30 30 31 66 2c 20 55 2b | b.-.U+000c,.U+000e.-.U+0001f,.U+ |
| e1c80 | 30 30 37 66 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 4e 6f 6e 2d 41 73 63 69 69 | 007f.</li>.........<li>Non-Ascii |
| e1ca0 | 20 55 6e 69 63 6f 64 65 20 6c 69 6e 65 20 65 6e 64 69 6e 67 73 3a 20 55 2b 30 30 38 35 20 28 4e | .Unicode.line.endings:.U+0085.(N |
| e1cc0 | 45 4c 29 2c 20 55 2b 32 30 32 38 20 28 4c 53 29 2c 20 55 2b 32 30 32 39 20 28 50 53 29 2e 3c 2f | EL),.U+2028.(LS),.U+2029.(PS).</ |
| e1ce0 | 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>....... |
| e1d00 | 4c 46 20 28 62 79 74 65 20 76 61 6c 75 65 20 30 78 30 61 2c 20 63 6f 64 65 20 70 6f 69 6e 74 20 | LF.(byte.value.0x0a,.code.point. |
| e1d20 | 55 2b 30 30 30 61 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 73 | U+000a,.<code><span.class="tok-s |
| e1d40 | 74 72 22 3e 27 5c 6e 27 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 29 20 69 73 20 74 68 65 20 6c | tr">'\n'</span></code>).is.the.l |
| e1d60 | 69 6e 65 20 74 65 72 6d 69 6e 61 74 6f 72 20 69 6e 20 5a 69 67 20 73 6f 75 72 63 65 20 63 6f 64 | ine.terminator.in.Zig.source.cod |
| e1d80 | 65 2e 0a 20 20 20 20 20 20 54 68 69 73 20 62 79 74 65 20 76 61 6c 75 65 20 74 65 72 6d 69 6e 61 | e........This.byte.value.termina |
| e1da0 | 74 65 73 20 65 76 65 72 79 20 6c 69 6e 65 20 6f 66 20 7a 69 67 20 73 6f 75 72 63 65 20 63 6f 64 | tes.every.line.of.zig.source.cod |
| e1dc0 | 65 20 65 78 63 65 70 74 20 74 68 65 20 6c 61 73 74 20 6c 69 6e 65 20 6f 66 20 74 68 65 20 66 69 | e.except.the.last.line.of.the.fi |
| e1de0 | 6c 65 2e 0a 20 20 20 20 20 20 49 74 20 69 73 20 72 65 63 6f 6d 6d 65 6e 64 65 64 20 74 68 61 74 | le........It.is.recommended.that |
| e1e00 | 20 6e 6f 6e 2d 65 6d 70 74 79 20 73 6f 75 72 63 65 20 66 69 6c 65 73 20 65 6e 64 20 77 69 74 68 | .non-empty.source.files.end.with |
| e1e20 | 20 61 6e 20 65 6d 70 74 79 20 6c 69 6e 65 2c 20 77 68 69 63 68 20 6d 65 61 6e 73 20 74 68 65 20 | .an.empty.line,.which.means.the. |
| e1e40 | 6c 61 73 74 20 62 79 74 65 20 77 6f 75 6c 64 20 62 65 20 30 78 30 61 20 28 4c 46 29 2e 0a 20 20 | last.byte.would.be.0x0a.(LF).... |
| e1e60 | 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 20 4c 46 | ....</p>.......<p>.......Each.LF |
| e1e80 | 20 6d 61 79 20 62 65 20 69 6d 6d 65 64 69 61 74 65 6c 79 20 70 72 65 63 65 64 65 64 20 62 79 20 | .may.be.immediately.preceded.by. |
| e1ea0 | 61 20 73 69 6e 67 6c 65 20 43 52 20 28 62 79 74 65 20 76 61 6c 75 65 20 30 78 30 64 2c 20 63 6f | a.single.CR.(byte.value.0x0d,.co |
| e1ec0 | 64 65 20 70 6f 69 6e 74 20 55 2b 30 30 30 64 2c 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 | de.point.U+000d,.<code><span.cla |
| e1ee0 | 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 5c 72 27 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 29 | ss="tok-str">'\r'</span></code>) |
| e1f00 | 0a 20 20 20 20 20 20 74 6f 20 66 6f 72 6d 20 61 20 57 69 6e 64 6f 77 73 20 73 74 79 6c 65 20 6c | .......to.form.a.Windows.style.l |
| e1f20 | 69 6e 65 20 65 6e 64 69 6e 67 2c 20 62 75 74 20 74 68 69 73 20 69 73 20 64 69 73 63 6f 75 72 61 | ine.ending,.but.this.is.discoura |
| e1f40 | 67 65 64 2e 20 4e 6f 74 65 20 74 68 61 74 20 69 6e 20 6d 75 6c 74 69 6c 69 6e 65 20 73 74 72 69 | ged..Note.that.in.multiline.stri |
| e1f60 | 6e 67 73 2c 20 43 52 4c 46 20 73 65 71 75 65 6e 63 65 73 20 77 69 6c 6c 0a 20 20 20 20 20 20 62 | ngs,.CRLF.sequences.will.......b |
| e1f80 | 65 20 65 6e 63 6f 64 65 64 20 61 73 20 4c 46 20 77 68 65 6e 20 63 6f 6d 70 69 6c 65 64 20 69 6e | e.encoded.as.LF.when.compiled.in |
| e1fa0 | 74 6f 20 61 20 7a 69 67 20 70 72 6f 67 72 61 6d 2e 0a 20 20 20 20 20 20 41 20 43 52 20 69 6e 20 | to.a.zig.program........A.CR.in. |
| e1fc0 | 61 6e 79 20 6f 74 68 65 72 20 63 6f 6e 74 65 78 74 20 69 73 20 6e 6f 74 20 61 6c 6c 6f 77 65 64 | any.other.context.is.not.allowed |
| e1fe0 | 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 48 54 20 | ........</p>.......<p>.......HT. |
| e2000 | 68 61 72 64 20 74 61 62 73 20 28 62 79 74 65 20 76 61 6c 75 65 20 30 78 30 39 2c 20 63 6f 64 65 | hard.tabs.(byte.value.0x09,.code |
| e2020 | 20 70 6f 69 6e 74 20 55 2b 30 30 30 39 2c 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | .point.U+0009,.<code><span.class |
| e2040 | 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 5c 74 27 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 29 20 61 | ="tok-str">'\t'</span></code>).a |
| e2060 | 72 65 20 69 6e 74 65 72 63 68 61 6e 67 65 61 62 6c 65 20 77 69 74 68 0a 20 20 20 20 20 20 53 50 | re.interchangeable.with.......SP |
| e2080 | 20 73 70 61 63 65 73 20 28 62 79 74 65 20 76 61 6c 75 65 20 30 78 32 30 2c 20 63 6f 64 65 20 70 | .spaces.(byte.value.0x20,.code.p |
| e20a0 | 6f 69 6e 74 20 55 2b 30 30 32 30 2c 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | oint.U+0020,.<code><span.class=" |
| e20c0 | 74 6f 6b 2d 73 74 72 22 3e 27 20 27 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 29 20 61 73 20 61 | tok-str">'.'</span></code>).as.a |
| e20e0 | 20 74 6f 6b 65 6e 20 73 65 70 61 72 61 74 6f 72 2c 0a 20 20 20 20 20 20 62 75 74 20 75 73 65 20 | .token.separator,.......but.use. |
| e2100 | 6f 66 20 68 61 72 64 20 74 61 62 73 20 69 73 20 64 69 73 63 6f 75 72 61 67 65 64 2e 20 53 65 65 | of.hard.tabs.is.discouraged..See |
| e2120 | 20 3c 61 20 68 72 65 66 3d 22 23 47 72 61 6d 6d 61 72 22 3e 47 72 61 6d 6d 61 72 3c 2f 61 3e 2e | .<a.href="#Grammar">Grammar</a>. |
| e2140 | 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 20 | .......</p>.......<p>.......For. |
| e2160 | 63 6f 6d 70 61 74 69 62 69 6c 69 74 79 20 77 69 74 68 20 6f 74 68 65 72 20 74 6f 6f 6c 73 2c 20 | compatibility.with.other.tools,. |
| e2180 | 74 68 65 20 63 6f 6d 70 69 6c 65 72 20 69 67 6e 6f 72 65 73 20 61 20 55 54 46 2d 38 2d 65 6e 63 | the.compiler.ignores.a.UTF-8-enc |
| e21a0 | 6f 64 65 64 20 62 79 74 65 20 6f 72 64 65 72 20 6d 61 72 6b 20 28 55 2b 46 45 46 46 29 0a 20 20 | oded.byte.order.mark.(U+FEFF)... |
| e21c0 | 20 20 20 20 69 66 20 69 74 20 69 73 20 74 68 65 20 66 69 72 73 74 20 55 6e 69 63 6f 64 65 20 63 | ....if.it.is.the.first.Unicode.c |
| e21e0 | 6f 64 65 20 70 6f 69 6e 74 20 69 6e 20 74 68 65 20 73 6f 75 72 63 65 20 74 65 78 74 2e 20 41 20 | ode.point.in.the.source.text..A. |
| e2200 | 62 79 74 65 20 6f 72 64 65 72 20 6d 61 72 6b 20 69 73 20 6e 6f 74 20 61 6c 6c 6f 77 65 64 20 61 | byte.order.mark.is.not.allowed.a |
| e2220 | 6e 79 77 68 65 72 65 20 65 6c 73 65 20 69 6e 20 74 68 65 20 73 6f 75 72 63 65 2e 0a 20 20 20 20 | nywhere.else.in.the.source...... |
| e2240 | 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 74 | ..</p>.......<p>.......Note.that |
| e2260 | 20 72 75 6e 6e 69 6e 67 20 3c 6b 62 64 3e 7a 69 67 20 66 6d 74 3c 2f 6b 62 64 3e 20 6f 6e 20 61 | .running.<kbd>zig.fmt</kbd>.on.a |
| e2280 | 20 73 6f 75 72 63 65 20 66 69 6c 65 20 77 69 6c 6c 20 69 6d 70 6c 65 6d 65 6e 74 20 61 6c 6c 20 | .source.file.will.implement.all. |
| e22a0 | 72 65 63 6f 6d 6d 65 6e 64 61 74 69 6f 6e 73 20 6d 65 6e 74 69 6f 6e 65 64 20 68 65 72 65 2e 0a | recommendations.mentioned.here.. |
| e22c0 | 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 65 20 | ......</p>.......<p>.......Note. |
| e22e0 | 74 68 61 74 20 61 20 74 6f 6f 6c 20 72 65 61 64 69 6e 67 20 5a 69 67 20 73 6f 75 72 63 65 20 63 | that.a.tool.reading.Zig.source.c |
| e2300 | 6f 64 65 20 63 61 6e 20 6d 61 6b 65 20 61 73 73 75 6d 70 74 69 6f 6e 73 20 69 66 20 74 68 65 20 | ode.can.make.assumptions.if.the. |
| e2320 | 73 6f 75 72 63 65 20 63 6f 64 65 20 69 73 20 61 73 73 75 6d 65 64 20 74 6f 20 62 65 20 63 6f 72 | source.code.is.assumed.to.be.cor |
| e2340 | 72 65 63 74 20 5a 69 67 20 63 6f 64 65 2e 0a 20 20 20 20 20 20 46 6f 72 20 65 78 61 6d 70 6c 65 | rect.Zig.code........For.example |
| e2360 | 2c 20 77 68 65 6e 20 69 64 65 6e 74 69 66 79 69 6e 67 20 74 68 65 20 65 6e 64 73 20 6f 66 20 6c | ,.when.identifying.the.ends.of.l |
| e2380 | 69 6e 65 73 2c 20 61 20 74 6f 6f 6c 20 63 61 6e 20 75 73 65 20 61 20 6e 61 69 76 65 20 73 65 61 | ines,.a.tool.can.use.a.naive.sea |
| e23a0 | 72 63 68 20 73 75 63 68 20 61 73 20 3c 63 6f 64 65 3e 2f 5c 6e 2f 3c 2f 63 6f 64 65 3e 2c 0a 20 | rch.such.as.<code>/\n/</code>,.. |
| e23c0 | 20 20 20 20 20 6f 72 20 61 6e 20 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 6d 73 64 6e | .....or.an.<a.href="https://msdn |
| e23e0 | 2e 6d 69 63 72 6f 73 6f 66 74 2e 63 6f 6d 2f 65 6e 2d 75 73 2f 6c 69 62 72 61 72 79 2f 64 64 34 | .microsoft.com/en-us/library/dd4 |
| e2400 | 30 39 37 39 37 2e 61 73 70 78 22 3e 61 64 76 61 6e 63 65 64 3c 2f 61 3e 0a 20 20 20 20 20 20 73 | 09797.aspx">advanced</a>.......s |
| e2420 | 65 61 72 63 68 20 73 75 63 68 20 61 73 20 3c 63 6f 64 65 3e 2f 5c 72 5c 6e 3f 7c 5b 5c 6e 5c 75 | earch.such.as.<code>/\r\n?|[\n\u |
| e2440 | 30 30 38 35 5c 75 32 30 32 38 5c 75 32 30 32 39 5d 2f 3c 2f 63 6f 64 65 3e 2c 20 61 6e 64 20 69 | 0085\u2028\u2029]/</code>,.and.i |
| e2460 | 6e 20 65 69 74 68 65 72 20 63 61 73 65 20 6c 69 6e 65 20 65 6e 64 69 6e 67 73 20 77 69 6c 6c 20 | n.either.case.line.endings.will. |
| e2480 | 62 65 20 63 6f 72 72 65 63 74 6c 79 20 69 64 65 6e 74 69 66 69 65 64 2e 0a 20 20 20 20 20 20 46 | be.correctly.identified........F |
| e24a0 | 6f 72 20 61 6e 6f 74 68 65 72 20 65 78 61 6d 70 6c 65 2c 20 77 68 65 6e 20 69 64 65 6e 74 69 66 | or.another.example,.when.identif |
| e24c0 | 79 69 6e 67 20 74 68 65 20 77 68 69 74 65 73 70 61 63 65 20 62 65 66 6f 72 65 20 74 68 65 20 66 | ying.the.whitespace.before.the.f |
| e24e0 | 69 72 73 74 20 74 6f 6b 65 6e 20 6f 6e 20 61 20 6c 69 6e 65 2c 0a 20 20 20 20 20 20 61 20 74 6f | irst.token.on.a.line,.......a.to |
| e2500 | 6f 6c 20 63 61 6e 20 65 69 74 68 65 72 20 75 73 65 20 61 20 6e 61 69 76 65 20 73 65 61 72 63 68 | ol.can.either.use.a.naive.search |
| e2520 | 20 73 75 63 68 20 61 73 20 3c 63 6f 64 65 3e 2f 5b 20 5c 74 5d 2f 3c 2f 63 6f 64 65 3e 2c 0a 20 | .such.as.<code>/[.\t]/</code>,.. |
| e2540 | 20 20 20 20 20 6f 72 20 61 6e 20 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 74 63 33 39 | .....or.an.<a.href="https://tc39 |
| e2560 | 2e 65 73 2f 65 63 6d 61 32 36 32 2f 23 73 65 63 2d 63 68 61 72 61 63 74 65 72 63 6c 61 73 73 65 | .es/ecma262/#sec-characterclasse |
| e2580 | 73 63 61 70 65 22 3e 61 64 76 61 6e 63 65 64 3c 2f 61 3e 20 73 65 61 72 63 68 20 73 75 63 68 20 | scape">advanced</a>.search.such. |
| e25a0 | 61 73 20 3c 63 6f 64 65 3e 2f 5c 73 2f 3c 2f 63 6f 64 65 3e 2c 0a 20 20 20 20 20 20 61 6e 64 20 | as.<code>/\s/</code>,.......and. |
| e25c0 | 69 6e 20 65 69 74 68 65 72 20 63 61 73 65 20 77 68 69 74 65 73 70 61 63 65 20 77 69 6c 6c 20 62 | in.either.case.whitespace.will.b |
| e25e0 | 65 20 63 6f 72 72 65 63 74 6c 79 20 69 64 65 6e 74 69 66 69 65 64 2e 0a 20 20 20 20 20 20 3c 2f | e.correctly.identified........</ |
| e2600 | 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 4b 65 79 77 6f 72 64 | p>...............<h2.id="Keyword |
| e2620 | 2d 52 65 66 65 72 65 6e 63 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 4b 65 79 77 6f 72 | -Reference"><a.href="#toc-Keywor |
| e2640 | 64 2d 52 65 66 65 72 65 6e 63 65 22 3e 4b 65 79 77 6f 72 64 20 52 65 66 65 72 65 6e 63 65 3c 2f | d-Reference">Keyword.Reference</ |
| e2660 | 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 4b 65 79 77 6f 72 64 | a>.<a.class="hdr".href="#Keyword |
| e2680 | 2d 52 65 66 65 72 65 6e 63 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c | -Reference">..</a></h2>........< |
| e26a0 | 64 69 76 20 63 6c 61 73 73 3d 22 74 61 62 6c 65 2d 77 72 61 70 70 65 72 22 3e 0a 20 20 20 20 20 | div.class="table-wrapper">...... |
| e26c0 | 20 3c 74 61 62 6c 65 3e 0a 20 20 20 20 20 20 20 20 3c 74 68 65 61 64 3e 0a 20 20 20 20 20 20 20 | .<table>.........<thead>........ |
| e26e0 | 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"> |
| e2700 | 4b 65 79 77 6f 72 64 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 | Keyword</th>...........<th.scope |
| e2720 | 3d 22 63 6f 6c 22 3e 44 65 73 63 72 69 70 74 69 6f 6e 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 | ="col">Description</th>......... |
| e2740 | 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 3c | </tr>.........</thead>.........< |
| e2760 | 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 3c 74 | tbody>.........<tr>...........<t |
| e2780 | 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 3e | h.scope="row">.............<pre> |
| e27a0 | 3c 63 6f 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 64 64 72 73 | <code><span.class="tok-kw">addrs |
| e27c0 | 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 20 20 20 20 20 20 | pace</span></code></pre>........ |
| e27e0 | 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>......... |
| e2800 | 20 20 20 20 54 68 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | ....The.<code><span.class="tok-k |
| e2820 | 77 22 3e 61 64 64 72 73 70 61 63 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6b 65 79 77 6f | w">addrspace</span></code>.keywo |
| e2840 | 72 64 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 | rd..............<ul>............ |
| e2860 | 20 20 20 3c 6c 69 3e 54 4f 44 4f 20 61 64 64 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 20 66 6f | ...<li>TODO.add.documentation.fo |
| e2880 | 72 20 61 64 64 72 73 70 61 63 65 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 | r.addrspace</li>.............</u |
| e28a0 | 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e | l>...........</td>.........</tr> |
| e28c0 | 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 70 | .........<tr>...........<th.scop |
| e28e0 | 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 3e | e="row">.............<pre><code> |
| e2900 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6c 69 67 6e 3c 2f 73 70 61 6e | <span.class="tok-kw">align</span |
| e2920 | 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>.. |
| e2940 | 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> |
| e2960 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6c 69 67 6e 3c 2f 73 70 61 6e | <span.class="tok-kw">align</span |
| e2980 | 3e 3c 2f 63 6f 64 65 3e 20 63 61 6e 20 62 65 20 75 73 65 64 20 74 6f 20 73 70 65 63 69 66 79 20 | ></code>.can.be.used.to.specify. |
| e29a0 | 74 68 65 20 61 6c 69 67 6e 6d 65 6e 74 20 6f 66 20 61 20 70 6f 69 6e 74 65 72 2e 0a 20 20 20 20 | the.alignment.of.a.pointer...... |
| e29c0 | 20 20 20 20 20 20 20 20 49 74 20 63 61 6e 20 61 6c 73 6f 20 62 65 20 75 73 65 64 20 61 66 74 65 | ........It.can.also.be.used.afte |
| e29e0 | 72 20 61 20 76 61 72 69 61 62 6c 65 20 6f 72 20 66 75 6e 63 74 69 6f 6e 20 64 65 63 6c 61 72 61 | r.a.variable.or.function.declara |
| e2a00 | 74 69 6f 6e 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 | tion.to.specify.the.alignment.of |
| e2a20 | 20 70 6f 69 6e 74 65 72 73 20 74 6f 20 74 68 61 74 20 76 61 72 69 61 62 6c 65 20 6f 72 20 66 75 | .pointers.to.that.variable.or.fu |
| e2a40 | 6e 63 74 69 6f 6e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 | nction..............<ul>........ |
| e2a60 | 20 20 20 20 20 20 20 3c 6c 69 3e 53 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 41 6c | .......<li>See.also.<a.href="#Al |
| e2a80 | 69 67 6e 6d 65 6e 74 22 3e 41 6c 69 67 6e 6d 65 6e 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 | ignment">Alignment</a></li>..... |
| e2aa0 | 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>... |
| e2ac0 | 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>........ |
| e2ae0 | 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">............. |
| e2b00 | 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"> |
| e2b20 | 61 6c 6c 6f 77 7a 65 72 6f 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 | allowzero</span></code></pre>... |
| e2b40 | 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>.... |
| e2b60 | 20 20 20 20 20 20 20 20 20 54 68 65 20 70 6f 69 6e 74 65 72 20 61 74 74 72 69 62 75 74 65 20 3c | .........The.pointer.attribute.< |
| e2b80 | 63 6f 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 7a | code><span.class="tok-kw">allowz |
| e2ba0 | 65 72 6f 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 61 6c 6c 6f 77 73 20 61 20 70 6f 69 6e 74 | ero</span></code>.allows.a.point |
| e2bc0 | 65 72 20 74 6f 20 68 61 76 65 20 61 64 64 72 65 73 73 20 7a 65 72 6f 2e 0a 20 20 20 20 20 20 20 | er.to.have.address.zero......... |
| e2be0 | 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. |
| e2c00 | 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 61 6c 6c 6f 77 7a 65 72 6f 22 3e 61 6c 6c 6f 77 7a | also.<a.href="#allowzero">allowz |
| e2c20 | 65 72 6f 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 | ero</a></li>.............</ul>.. |
| e2c40 | 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>.... |
| e2c60 | 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 72 | .....<tr>...........<th.scope="r |
| e2c80 | 6f 77 22 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 | ow">.............<pre><code><spa |
| e2ca0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 | n.class="tok-kw">and</span></cod |
| e2cc0 | 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>........ |
| e2ce0 | 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 54 68 65 20 62 6f 6f 6c 65 61 6e 20 | ...<td>.............The.boolean. |
| e2d00 | 6f 70 65 72 61 74 6f 72 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | operator.<code><span.class="tok- |
| e2d20 | 6b 77 22 3e 61 6e 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 | kw">and</span></code>........... |
| e2d40 | 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 |
| e2d60 | 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 4f 70 65 72 61 74 6f 72 73 22 3e 4f 70 65 72 61 74 6f 72 | so.<a.href="#Operators">Operator |
| e2d80 | 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>.... |
| e2da0 | 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>...... |
| e2dc0 | 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 |
| e2de0 | 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. |
| e2e00 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 79 66 72 61 6d 65 3c 2f 73 70 61 6e 3e 3c 2f | class="tok-kw">anyframe</span></ |
| e2e20 | 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>..... |
| e2e40 | 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 |
| e2e60 | 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 6e | an.class="tok-kw">anyframe</span |
| e2e80 | 3e 3c 2f 63 6f 64 65 3e 20 63 61 6e 20 62 65 20 75 73 65 64 20 61 73 20 61 20 74 79 70 65 20 66 | ></code>.can.be.used.as.a.type.f |
| e2ea0 | 6f 72 20 76 61 72 69 61 62 6c 65 73 20 77 68 69 63 68 20 68 6f 6c 64 20 70 6f 69 6e 74 65 72 73 | or.variables.which.hold.pointers |
| e2ec0 | 20 74 6f 20 66 75 6e 63 74 69 6f 6e 20 66 72 61 6d 65 73 2e 0a 20 20 20 20 20 20 20 20 20 20 20 | .to.function.frames............. |
| e2ee0 | 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 65 65 20 61 6c 73 6f | .<ul>...............<li>See.also |
| e2f00 | 20 3c 61 20 68 72 65 66 3d 22 23 41 73 79 6e 63 2d 46 75 6e 63 74 69 6f 6e 73 22 3e 41 73 79 6e | .<a.href="#Async-Functions">Asyn |
| e2f20 | 63 20 46 75 6e 63 74 69 6f 6e 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 | c.Functions</a></li>............ |
| e2f40 | 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>.........< |
| e2f60 | 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. |
| e2f80 | 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 |
| e2fa0 | 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 79 74 79 70 65 | ode><span.class="tok-kw">anytype |
| e2fc0 | 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>...........< |
| e2fe0 | 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>............. |
| e3000 | 46 75 6e 63 74 69 6f 6e 20 70 61 72 61 6d 65 74 65 72 73 20 63 61 6e 20 62 65 20 64 65 63 6c 61 | Function.parameters.can.be.decla |
| e3020 | 72 65 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 2d | red.with.<code><span.class="tok- |
| e3040 | 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 69 6e 20 70 6c 61 | kw">anytype</span></code>.in.pla |
| e3060 | 63 65 20 6f 66 20 74 68 65 20 74 79 70 65 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 54 68 65 20 | ce.of.the.type..............The. |
| e3080 | 74 79 70 65 20 77 69 6c 6c 20 62 65 20 69 6e 66 65 72 72 65 64 20 77 68 65 72 65 20 74 68 65 20 | type.will.be.inferred.where.the. |
| e30a0 | 66 75 6e 63 74 69 6f 6e 20 69 73 20 63 61 6c 6c 65 64 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | function.is.called.............. |
| e30c0 | 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. |
| e30e0 | 3c 61 20 68 72 65 66 3d 22 23 46 75 6e 63 74 69 6f 6e 2d 50 61 72 61 6d 65 74 65 72 2d 54 79 70 | <a.href="#Function-Parameter-Typ |
| e3100 | 65 2d 49 6e 66 65 72 65 6e 63 65 22 3e 46 75 6e 63 74 69 6f 6e 20 50 61 72 61 6d 65 74 65 72 20 | e-Inference">Function.Parameter. |
| e3120 | 54 79 70 65 20 49 6e 66 65 72 65 6e 63 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 | Type.Inference</a></li>......... |
| e3140 | 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>....... |
| e3160 | 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>...........< |
| e3180 | 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 |
| e31a0 | 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 73 6d 3c | ><code><span.class="tok-kw">asm< |
| e31c0 | 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>...........</ |
| e31e0 | 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 3c | th>...........<td>.............< |
| e3200 | 63 6f 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 73 6d 3c 2f 73 | code><span.class="tok-kw">asm</s |
| e3220 | 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 62 65 67 69 6e 73 20 61 6e 20 69 6e 6c 69 6e 65 20 61 73 73 | pan></code>.begins.an.inline.ass |
| e3240 | 65 6d 62 6c 79 20 65 78 70 72 65 73 73 69 6f 6e 2e 20 54 68 69 73 20 61 6c 6c 6f 77 73 20 66 6f | embly.expression..This.allows.fo |
| e3260 | 72 20 64 69 72 65 63 74 6c 79 20 63 6f 6e 74 72 6f 6c 6c 69 6e 67 20 74 68 65 20 6d 61 63 68 69 | r.directly.controlling.the.machi |
| e3280 | 6e 65 20 63 6f 64 65 20 67 65 6e 65 72 61 74 65 64 20 6f 6e 20 63 6f 6d 70 69 6c 61 74 69 6f 6e | ne.code.generated.on.compilation |
| e32a0 | 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>.............. |
| e32c0 | 20 3c 6c 69 3e 53 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 41 73 73 65 6d 62 6c 79 | .<li>See.also.<a.href="#Assembly |
| e32e0 | 22 3e 41 73 73 65 6d 62 6c 79 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | ">Assembly</a></li>............. |
| e3300 | 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>.........</ |
| e3320 | 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 |
| e3340 | 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 |
| e3360 | 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 |
| e3380 | 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 |
| e33a0 | 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 |
| e33c0 | 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 |
| e33e0 | 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 63 61 6e 20 62 65 20 75 73 65 64 20 77 69 74 68 20 61 20 62 | pan></code>.can.be.used.with.a.b |
| e3400 | 6c 6f 63 6b 20 6c 61 62 65 6c 20 74 6f 20 72 65 74 75 72 6e 20 61 20 76 61 6c 75 65 20 66 72 6f | lock.label.to.return.a.value.fro |
| e3420 | 6d 20 74 68 65 20 62 6c 6f 63 6b 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 49 74 20 63 61 6e 20 | m.the.block..............It.can. |
| e3440 | 61 6c 73 6f 20 62 65 20 75 73 65 64 20 74 6f 20 65 78 69 74 20 61 20 6c 6f 6f 70 20 62 65 66 6f | also.be.used.to.exit.a.loop.befo |
| e3460 | 72 65 20 69 74 65 72 61 74 69 6f 6e 20 63 6f 6d 70 6c 65 74 65 73 20 6e 61 74 75 72 61 6c 6c 79 | re.iteration.completes.naturally |
| e3480 | 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>.............. |
| e34a0 | 20 3c 6c 69 3e 53 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 42 6c 6f 63 6b 73 22 3e | .<li>See.also.<a.href="#Blocks"> |
| e34c0 | 42 6c 6f 63 6b 73 3c 2f 61 3e 2c 20 3c 61 20 68 72 65 66 3d 22 23 77 68 69 6c 65 22 3e 77 68 69 | Blocks</a>,.<a.href="#while">whi |
| e34e0 | 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></ |
| e3500 | 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>........... |
| e3520 | 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> |
| e3540 | 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">..... |
| e3560 | 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=" |
| e3580 | 74 6f 6b 2d 6b 77 22 3e 63 61 6c 6c 63 6f 6e 76 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f | tok-kw">callconv</span></code></ |
| e35a0 | 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>...........< |
| e35c0 | 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 | td>.............<code><span.clas |
| e35e0 | 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 3c 2f 63 6f 64 65 | s="tok-kw">callconv</span></code |
| e3600 | 3e 20 63 61 6e 20 62 65 20 75 73 65 64 20 74 6f 20 73 70 65 63 69 66 79 20 74 68 65 20 63 61 6c | >.can.be.used.to.specify.the.cal |
| e3620 | 6c 69 6e 67 20 63 6f 6e 76 65 6e 74 69 6f 6e 20 69 6e 20 61 20 66 75 6e 63 74 69 6f 6e 20 74 79 | ling.convention.in.a.function.ty |
| e3640 | 70 65 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 | pe..............<ul>............ |
| e3660 | 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 |
| e3680 | 6f 6e 73 22 3e 46 75 6e 63 74 69 6f 6e 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 | ons">Functions</a></li>......... |
| e36a0 | 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>....... |
| e36c0 | 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>...........< |
| e36e0 | 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 |
| e3700 | 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 61 74 63 | ><code><span.class="tok-kw">catc |
| e3720 | 68 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 20 | h</span></code></pre>........... |
| e3740 | 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>............ |
| e3760 | 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 61 74 63 | .<code><span.class="tok-kw">catc |
| e3780 | 68 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 | h</span></code>.can.be.used.to.e |
| e37a0 | 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 |
| e37c0 | 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 61 | ression.before.it.evaluates.to.a |
| e37e0 | 6e 20 65 72 72 6f 72 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 54 68 65 20 65 78 70 72 65 73 73 | n.error..............The.express |
| e3800 | 69 6f 6e 20 61 66 74 65 72 20 74 68 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ion.after.the.<code><span.class= |
| e3820 | 22 74 6f 6b 2d 6b 77 22 3e 63 61 74 63 68 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 63 61 6e | "tok-kw">catch</span></code>.can |
| e3840 | 20 6f 70 74 69 6f 6e 61 6c 6c 79 20 63 61 70 74 75 72 65 20 74 68 65 20 65 72 72 6f 72 20 76 61 | .optionally.capture.the.error.va |
| e3860 | 6c 75 65 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 | lue..............<ul>........... |
| e3880 | 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 63 61 74 63 68 | ....<li>See.also.<a.href="#catch |
| e38a0 | 22 3e 63 61 74 63 68 3c 2f 61 3e 2c 20 3c 61 20 68 72 65 66 3d 22 23 4f 70 65 72 61 74 6f 72 73 | ">catch</a>,.<a.href="#Operators |
| e38c0 | 22 3e 4f 70 65 72 61 74 6f 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 | ">Operators</a></li>............ |
| e38e0 | 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>.........< |
| e3900 | 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. |
| e3920 | 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 |
| e3940 | 6f 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 |
| e3960 | 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 20 | e</span></code></pre>........... |
| e3980 | 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>............ |
| e39a0 | 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 | .<code><span.class="tok-kw">comp |
| e39c0 | 74 69 6d 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 62 65 66 6f 72 65 20 61 20 64 65 63 6c | time</span></code>.before.a.decl |
| e39e0 | 61 72 61 74 69 6f 6e 20 63 61 6e 20 62 65 20 75 73 65 64 20 74 6f 20 6c 61 62 65 6c 20 76 61 72 | aration.can.be.used.to.label.var |
| e3a00 | 69 61 62 6c 65 73 20 6f 72 20 66 75 6e 63 74 69 6f 6e 20 70 61 72 61 6d 65 74 65 72 73 20 61 73 | iables.or.function.parameters.as |
| e3a20 | 20 6b 6e 6f 77 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 | .known.at.compile.time.......... |
| e3a40 | 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 67 75 61 72 61 | ....It.can.also.be.used.to.guara |
| e3a60 | 6e 74 65 65 20 61 6e 20 65 78 70 72 65 73 73 69 6f 6e 20 69 73 20 72 75 6e 20 61 74 20 63 6f 6d | ntee.an.expression.is.run.at.com |
| e3a80 | 70 69 6c 65 20 74 69 6d 65 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 | pile.time..............<ul>..... |
| e3aa0 | 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=" |
| e3ac0 | 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 20 20 20 | #comptime">comptime</a></li>.... |
| e3ae0 | 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>.. |
| e3b00 | 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>....... |
| e3b20 | 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">............ |
| e3b40 | 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" |
| e3b60 | 3e 63 6f 6e 73 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 | >const</span></code></pre>...... |
| e3b80 | 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>....... |
| e3ba0 | 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" |
| e3bc0 | 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 64 65 63 6c 61 72 65 73 20 61 20 | >const</span></code>.declares.a. |
| e3be0 | 76 61 72 69 61 62 6c 65 20 74 68 61 74 20 63 61 6e 20 6e 6f 74 20 62 65 20 6d 6f 64 69 66 69 65 | variable.that.can.not.be.modifie |
| e3c00 | 64 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 55 73 65 64 20 61 73 20 61 20 70 6f 69 6e 74 65 72 | d..............Used.as.a.pointer |
| e3c20 | 20 61 74 74 72 69 62 75 74 65 2c 20 69 74 20 64 65 6e 6f 74 65 73 20 74 68 65 20 76 61 6c 75 65 | .attribute,.it.denotes.the.value |
| e3c40 | 20 72 65 66 65 72 65 6e 63 65 64 20 62 79 20 74 68 65 20 70 6f 69 6e 74 65 72 20 63 61 6e 6e 6f | .referenced.by.the.pointer.canno |
| e3c60 | 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 3c 75 6c 3e 0a | t.be.modified..............<ul>. |
| e3c80 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 | ..............<li>See.also.<a.hr |
| e3ca0 | 65 66 3d 22 23 56 61 72 69 61 62 6c 65 73 22 3e 56 61 72 69 61 62 6c 65 73 3c 2f 61 3e 3c 2f 6c | ef="#Variables">Variables</a></l |
| e3cc0 | 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>...........< |
| e3ce0 | 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>. |
| e3d00 | 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">...... |
| e3d20 | 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 |
| e3d40 | 6f 6b 2d 6b 77 22 3e 63 6f 6e 74 69 6e 75 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 | ok-kw">continue</span></code></p |
| e3d60 | 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 |
| e3d80 | 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 |
| e3da0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 74 69 6e 75 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e | ="tok-kw">continue</span></code> |
| e3dc0 | 20 63 61 6e 20 62 65 20 75 73 65 64 20 69 6e 20 61 20 6c 6f 6f 70 20 74 6f 20 6a 75 6d 70 20 62 | .can.be.used.in.a.loop.to.jump.b |
| e3de0 | 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 6f 70 | ack.to.the.beginning.of.the.loop |
| e3e00 | 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>.............. |
| e3e20 | 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 |
| e3e40 | 68 69 6c 65 3c 2f 61 3e 2c 20 3c 61 20 68 72 65 66 3d 22 23 66 6f 72 22 3e 66 6f 72 3c 2f 61 3e | hile</a>,.<a.href="#for">for</a> |
| e3e60 | 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>......... |
| e3e80 | 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 |
| e3ea0 | 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">... |
| e3ec0 | 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 |
| e3ee0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 64 65 66 65 72 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 | ="tok-kw">defer</span></code></p |
| e3f00 | 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 |
| e3f20 | 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 |
| e3f40 | 3d 22 74 6f 6b 2d 6b 77 22 3e 64 65 66 65 72 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 77 69 | ="tok-kw">defer</span></code>.wi |
| e3f60 | 6c 6c 20 65 78 65 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 | ll.execute.an.expression.when.co |
| e3f80 | 6e 74 72 6f 6c 20 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 | ntrol.flow.leaves.the.current.bl |
| e3fa0 | 6f 63 6b 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 | ock..............<ul>........... |
| e3fc0 | 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 64 65 66 65 72 | ....<li>See.also.<a.href="#defer |
| e3fe0 | 22 3e 64 65 66 65 72 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 | ">defer</a></li>.............</u |
| e4000 | 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e | l>...........</td>.........</tr> |
| e4020 | 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 70 | .........<tr>...........<th.scop |
| e4040 | 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 3e | e="row">.............<pre><code> |
| e4060 | 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> |
| e4080 | 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>... |
| e40a0 | 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>< |
| e40c0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 3c | span.class="tok-kw">else</span>< |
| e40e0 | 2f 63 6f 64 65 3e 20 63 61 6e 20 62 65 20 75 73 65 64 20 74 6f 20 70 72 6f 76 69 64 65 20 61 6e | /code>.can.be.used.to.provide.an |
| e4100 | 20 61 6c 74 65 72 6e 61 74 65 20 62 72 61 6e 63 68 20 66 6f 72 20 3c 63 6f 64 65 3e 3c 73 70 61 | .alternate.branch.for.<code><spa |
| e4120 | 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 64 65 | n.class="tok-kw">if</span></code |
| e4140 | 3e 2c 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 77 | >,.<code><span.class="tok-kw">sw |
| e4160 | 69 74 63 68 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 | itch</span></code>,............. |
| e4180 | 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 77 68 69 6c 65 | <code><span.class="tok-kw">while |
| e41a0 | 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 61 6e 64 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 | </span></code>,.and.<code><span. |
| e41c0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6f 72 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e | class="tok-kw">for</span></code> |
| e41e0 | 20 65 78 70 72 65 73 73 69 6f 6e 73 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 | .expressions..............<ul>.. |
| e4200 | 20 20 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 | .............<li>If.used.after.a |
| e4220 | 6e 20 69 66 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 | n.if.expression,.the.else.branch |
| e4240 | 20 77 69 6c 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 | .will.be.executed.if.the.test.va |
| e4260 | 6c 75 65 20 72 65 74 75 72 6e 73 20 66 61 6c 73 65 2c 20 6e 75 6c 6c 2c 20 6f 72 20 61 6e 20 65 | lue.returns.false,.null,.or.an.e |
| e4280 | 72 72 6f 72 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 49 66 20 | rror.</li>...............<li>If. |
| e42a0 | 75 73 65 64 20 77 69 74 68 69 6e 20 61 20 73 77 69 74 63 68 20 65 78 70 72 65 73 73 69 6f 6e 2c | used.within.a.switch.expression, |
| e42c0 | 20 74 68 65 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 | .the.else.branch.will.be.execute |
| e42e0 | 64 20 69 66 20 74 68 65 20 74 65 73 74 20 76 61 6c 75 65 20 6d 61 74 63 68 65 73 20 6e 6f 20 6f | d.if.the.test.value.matches.no.o |
| e4300 | 74 68 65 72 20 63 61 73 65 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c | ther.cases.</li>...............< |
| e4320 | 6c 69 3e 49 66 20 75 73 65 64 20 61 66 74 65 72 20 61 20 6c 6f 6f 70 20 65 78 70 72 65 73 73 69 | li>If.used.after.a.loop.expressi |
| e4340 | 6f 6e 2c 20 74 68 65 20 65 6c 73 65 20 62 72 61 6e 63 68 20 77 69 6c 6c 20 62 65 20 65 78 65 63 | on,.the.else.branch.will.be.exec |
| e4360 | 75 74 65 64 20 69 66 20 74 68 65 20 6c 6f 6f 70 20 66 69 6e 69 73 68 65 73 20 77 69 74 68 6f 75 | uted.if.the.loop.finishes.withou |
| e4380 | 74 20 62 72 65 61 6b 69 6e 67 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c | t.breaking.</li>...............< |
| e43a0 | 6c 69 3e 53 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 69 66 22 3e 69 66 3c 2f 61 3e | li>See.also.<a.href="#if">if</a> |
| e43c0 | 2c 20 3c 61 20 68 72 65 66 3d 22 23 73 77 69 74 63 68 22 3e 73 77 69 74 63 68 3c 2f 61 3e 2c 20 | ,.<a.href="#switch">switch</a>,. |
| e43e0 | 3c 61 20 68 72 65 66 3d 22 23 77 68 69 6c 65 22 3e 77 68 69 6c 65 3c 2f 61 3e 2c 20 3c 61 20 68 | <a.href="#while">while</a>,.<a.h |
| e4400 | 72 65 66 3d 22 23 66 6f 72 22 3e 66 6f 72 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 | ref="#for">for</a></li>......... |
| e4420 | 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>....... |
| e4440 | 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>...........< |
| e4460 | 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 |
| e4480 | 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 6e 75 6d | ><code><span.class="tok-kw">enum |
| e44a0 | 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>...........< |
| e44c0 | 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>............. |
| e44e0 | 3c 63 6f 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 6e 75 6d 3c | <code><span.class="tok-kw">enum< |
| e4500 | 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 65 6e 75 6d 20 74 79 | /span></code>.defines.an.enum.ty |
| e4520 | 70 65 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 | pe..............<ul>............ |
| e4540 | 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 65 6e 75 6d 22 3e | ...<li>See.also.<a.href="#enum"> |
| e4560 | 65 6e 75 6d 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a | enum</a></li>.............</ul>. |
| e4580 | 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>... |
| e45a0 | 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=" |
| e45c0 | 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 |
| e45e0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 64 65 66 65 72 3c 2f 73 70 61 6e | an.class="tok-kw">errdefer</span |
| e4600 | 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>.. |
| e4620 | 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> |
| e4640 | 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 73 | <span.class="tok-kw">errdefer</s |
| e4660 | 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 77 69 6c 6c 20 65 78 65 63 75 74 65 20 61 6e 20 65 78 70 72 | pan></code>.will.execute.an.expr |
| e4680 | 65 73 73 69 6f 6e 20 77 68 65 6e 20 63 6f 6e 74 72 6f 6c 20 66 6c 6f 77 20 6c 65 61 76 65 73 20 | ession.when.control.flow.leaves. |
| e46a0 | 74 68 65 20 63 75 72 72 65 6e 74 20 62 6c 6f 63 6b 20 69 66 20 74 68 65 20 66 75 6e 63 74 69 6f | the.current.block.if.the.functio |
| e46c0 | 6e 20 72 65 74 75 72 6e 73 20 61 6e 20 65 72 72 6f 72 2c 20 74 68 65 20 65 72 72 64 65 66 65 72 | n.returns.an.error,.the.errdefer |
| e46e0 | 20 65 78 70 72 65 73 73 69 6f 6e 20 63 61 6e 20 63 61 70 74 75 72 65 20 74 68 65 20 75 6e 77 72 | .expression.can.capture.the.unwr |
| e4700 | 61 70 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 | apped.value..............<ul>... |
| e4720 | 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 | ............<li>See.also.<a.href |
| e4740 | 3d 22 23 65 72 72 64 65 66 65 72 22 3e 65 72 72 64 65 66 65 72 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 | ="#errdefer">errdefer</a></li>.. |
| e4760 | 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> |
| e4780 | 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>..... |
| e47a0 | 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">.......... |
| e47c0 | 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 |
| e47e0 | 77 22 3e 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 | w">error</span></code></pre>.... |
| e4800 | 20 20 20 20 20 20 20 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 | .......</th>...........<td>..... |
| e4820 | 20 20 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | ........<code><span.class="tok-k |
| e4840 | 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 64 65 66 69 6e 65 73 20 61 | w">error</span></code>.defines.a |
| e4860 | 6e 20 65 72 72 6f 72 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 | n.error.type..............<ul>.. |
| e4880 | 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 |
| e48a0 | 66 3d 22 23 45 72 72 6f 72 73 22 3e 45 72 72 6f 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 | f="#Errors">Errors</a></li>..... |
| e48c0 | 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>... |
| e48e0 | 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>........ |
| e4900 | 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">............. |
| e4920 | 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"> |
| e4940 | 65 78 70 6f 72 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 | export</span></code></pre>...... |
| e4960 | 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>....... |
| e4980 | 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" |
| e49a0 | 3e 65 78 70 6f 72 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6d 61 6b 65 73 20 61 20 66 75 | >export</span></code>.makes.a.fu |
| e49c0 | 6e 63 74 69 6f 6e 20 6f 72 20 76 61 72 69 61 62 6c 65 20 65 78 74 65 72 6e 61 6c 6c 79 20 76 69 | nction.or.variable.externally.vi |
| e49e0 | 73 69 62 6c 65 20 69 6e 20 74 68 65 20 67 65 6e 65 72 61 74 65 64 20 6f 62 6a 65 63 74 20 66 69 | sible.in.the.generated.object.fi |
| e4a00 | 6c 65 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 45 78 70 6f 72 74 65 64 20 66 75 6e 63 74 69 6f | le..............Exported.functio |
| e4a20 | 6e 73 20 64 65 66 61 75 6c 74 20 74 6f 20 74 68 65 20 43 20 63 61 6c 6c 69 6e 67 20 63 6f 6e 76 | ns.default.to.the.C.calling.conv |
| e4a40 | 65 6e 74 69 6f 6e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 | ention..............<ul>........ |
| e4a60 | 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 |
| e4a80 | 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>..... |
| e4aa0 | 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>... |
| e4ac0 | 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>........ |
| e4ae0 | 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">............. |
| e4b00 | 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"> |
| e4b20 | 65 78 74 65 72 6e 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 | extern</span></code></pre>...... |
| e4b40 | 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>....... |
| e4b60 | 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" |
| e4b80 | 3e 65 78 74 65 72 6e 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 63 61 6e 20 62 65 20 75 73 65 | >extern</span></code>.can.be.use |
| e4ba0 | 64 20 74 6f 20 64 65 63 6c 61 72 65 20 61 20 66 75 6e 63 74 69 6f 6e 20 6f 72 20 76 61 72 69 61 | d.to.declare.a.function.or.varia |
| e4bc0 | 62 6c 65 20 74 68 61 74 20 77 69 6c 6c 20 62 65 20 72 65 73 6f 6c 76 65 64 20 61 74 20 6c 69 6e | ble.that.will.be.resolved.at.lin |
| e4be0 | 6b 20 74 69 6d 65 2c 20 77 68 65 6e 20 6c 69 6e 6b 69 6e 67 20 73 74 61 74 69 63 61 6c 6c 79 0a | k.time,.when.linking.statically. |
| e4c00 | 20 20 20 20 20 20 20 20 20 20 20 20 6f 72 20 61 74 20 72 75 6e 74 69 6d 65 2c 20 77 68 65 6e 20 | ............or.at.runtime,.when. |
| e4c20 | 6c 69 6e 6b 69 6e 67 20 64 79 6e 61 6d 69 63 61 6c 6c 79 2e 0a 20 20 20 20 20 20 20 20 20 20 20 | linking.dynamically............. |
| e4c40 | 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 65 65 20 61 6c 73 6f | .<ul>...............<li>See.also |
| e4c60 | 20 3c 61 20 68 72 65 66 3d 22 23 46 75 6e 63 74 69 6f 6e 73 22 3e 46 75 6e 63 74 69 6f 6e 73 3c | .<a.href="#Functions">Functions< |
| e4c80 | 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>...... |
| e4ca0 | 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>........ |
| e4cc0 | 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"> |
| e4ce0 | 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 |
| e4d00 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 | ass="tok-kw">fn</span></code></p |
| e4d20 | 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 |
| e4d40 | 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 |
| e4d60 | 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 64 65 63 6c 61 | ="tok-kw">fn</span></code>.decla |
| e4d80 | 72 65 73 20 61 20 66 75 6e 63 74 69 6f 6e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e | res.a.function..............<ul> |
| e4da0 | 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 |
| e4dc0 | 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></ |
| e4de0 | 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>........... |
| e4e00 | 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> |
| e4e20 | 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">..... |
| e4e40 | 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=" |
| e4e60 | 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 3c 2f 70 72 65 3e 0a | tok-kw">for</span></code></pre>. |
| e4e80 | 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>.. |
| e4ea0 | 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 3d 22 | ...........A.<code><span.class=" |
| e4ec0 | 74 6f 6b 2d 6b 77 22 3e 66 6f 72 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 65 78 70 72 65 73 | tok-kw">for</span></code>.expres |
| e4ee0 | 73 69 6f 6e 20 63 61 6e 20 62 65 20 75 73 65 64 20 74 6f 20 69 74 65 72 61 74 65 20 6f 76 65 72 | sion.can.be.used.to.iterate.over |
| e4f00 | 20 74 68 65 20 65 6c 65 6d 65 6e 74 73 20 6f 66 20 61 20 73 6c 69 63 65 2c 20 61 72 72 61 79 2c | .the.elements.of.a.slice,.array, |
| e4f20 | 20 6f 72 20 74 75 70 6c 65 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 | .or.tuple..............<ul>..... |
| e4f40 | 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=" |
| e4f60 | 23 66 6f 72 22 3e 66 6f 72 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c | #for">for</a></li>.............< |
| e4f80 | 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 |
| e4fa0 | 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 |
| e4fc0 | 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 |
| e4fe0 | 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e | e><span.class="tok-kw">if</span> |
| e5000 | 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>... |
| e5020 | 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 41 6e 20 3c 63 6f 64 | ........<td>.............An.<cod |
| e5040 | 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e | e><span.class="tok-kw">if</span> |
| e5060 | 3c 2f 63 6f 64 65 3e 20 65 78 70 72 65 73 73 69 6f 6e 20 63 61 6e 20 74 65 73 74 20 62 6f 6f 6c | </code>.expression.can.test.bool |
| e5080 | 65 61 6e 20 65 78 70 72 65 73 73 69 6f 6e 73 2c 20 6f 70 74 69 6f 6e 61 6c 20 76 61 6c 75 65 73 | ean.expressions,.optional.values |
| e50a0 | 2c 20 6f 72 20 65 72 72 6f 72 20 75 6e 69 6f 6e 73 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 46 | ,.or.error.unions..............F |
| e50c0 | 6f 72 20 6f 70 74 69 6f 6e 61 6c 20 76 61 6c 75 65 73 20 6f 72 20 65 72 72 6f 72 20 75 6e 69 6f | or.optional.values.or.error.unio |
| e50e0 | 6e 73 2c 20 74 68 65 20 69 66 20 65 78 70 72 65 73 73 69 6f 6e 20 63 61 6e 20 63 61 70 74 75 72 | ns,.the.if.expression.can.captur |
| e5100 | 65 20 74 68 65 20 75 6e 77 72 61 70 70 65 64 20 76 61 6c 75 65 2e 0a 20 20 20 20 20 20 20 20 20 | e.the.unwrapped.value........... |
| e5120 | 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 |
| e5140 | 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 69 66 22 3e 69 66 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 | so.<a.href="#if">if</a></li>.... |
| e5160 | 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>.. |
| e5180 | 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>....... |
| e51a0 | 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">............ |
| e51c0 | 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" |
| e51e0 | 3e 69 6e 6c 69 6e 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 | >inline</span></code></pre>..... |
| e5200 | 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>...... |
| e5220 | 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 |
| e5240 | 22 3e 69 6e 6c 69 6e 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 63 61 6e 20 62 65 20 75 73 | ">inline</span></code>.can.be.us |
| e5260 | 65 64 20 74 6f 20 6c 61 62 65 6c 20 61 20 6c 6f 6f 70 20 65 78 70 72 65 73 73 69 6f 6e 20 73 75 | ed.to.label.a.loop.expression.su |
| e5280 | 63 68 20 74 68 61 74 20 69 74 20 77 69 6c 6c 20 62 65 20 75 6e 72 6f 6c 6c 65 64 20 61 74 20 63 | ch.that.it.will.be.unrolled.at.c |
| e52a0 | 6f 6d 70 69 6c 65 20 74 69 6d 65 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 49 74 20 63 61 6e 20 | ompile.time..............It.can. |
| e52c0 | 61 6c 73 6f 20 62 65 20 75 73 65 64 20 74 6f 20 66 6f 72 63 65 20 61 20 66 75 6e 63 74 69 6f 6e | also.be.used.to.force.a.function |
| e52e0 | 20 74 6f 20 62 65 20 69 6e 6c 69 6e 65 64 20 61 74 20 61 6c 6c 20 63 61 6c 6c 20 73 69 74 65 73 | .to.be.inlined.at.all.call.sites |
| e5300 | 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>.............. |
| e5320 | 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 6e 6c 69 6e 65 2d 77 | .<li>See.also.<a.href="#inline-w |
| e5340 | 68 69 6c 65 22 3e 69 6e 6c 69 6e 65 20 77 68 69 6c 65 3c 2f 61 3e 2c 20 3c 61 20 68 72 65 66 3d | hile">inline.while</a>,.<a.href= |
| e5360 | 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 2c 20 3c 61 | "#inline-for">inline.for</a>,.<a |
| e5380 | 20 68 72 65 66 3d 22 23 46 75 6e 63 74 69 6f 6e 73 22 3e 46 75 6e 63 74 69 6f 6e 73 3c 2f 61 3e | .href="#Functions">Functions</a> |
| e53a0 | 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>......... |
| e53c0 | 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 |
| e53e0 | 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">... |
| e5400 | 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 |
| e5420 | 3d 22 74 6f 6b 2d 6b 77 22 3e 6c 69 6e 6b 73 65 63 74 69 6f 6e 3c 2f 73 70 61 6e 3e 3c 2f 63 6f | ="tok-kw">linksection</span></co |
| e5440 | 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 68 3e 0a 20 20 20 20 20 20 | de></pre>...........</th>....... |
| e5460 | 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 3e 3c | ....<td>.............The.<code>< |
| e5480 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 6c 69 6e 6b 73 65 63 74 69 6f 6e 3c | span.class="tok-kw">linksection< |
| e54a0 | 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6b 65 79 77 6f 72 64 20 63 61 6e 20 62 65 20 75 73 65 | /span></code>.keyword.can.be.use |
| e54c0 | 64 20 74 6f 20 73 70 65 63 69 66 79 20 77 68 61 74 20 73 65 63 74 69 6f 6e 20 74 68 65 20 66 75 | d.to.specify.what.section.the.fu |
| e54e0 | 6e 63 74 69 6f 6e 20 6f 72 20 67 6c 6f 62 61 6c 20 76 61 72 69 61 62 6c 65 20 77 69 6c 6c 20 62 | nction.or.global.variable.will.b |
| e5500 | 65 20 70 75 74 20 69 6e 74 6f 20 28 65 2e 67 2e 20 3c 63 6f 64 65 3e 2e 74 65 78 74 3c 2f 63 6f | e.put.into.(e.g..<code>.text</co |
| e5520 | 64 65 3e 29 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 3c 2f | de>)............</td>.........</ |
| e5540 | 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 |
| e5560 | 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 |
| e5580 | 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 61 6c 69 61 73 3c | de><span.class="tok-kw">noalias< |
| e55a0 | 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>...........</ |
| e55c0 | 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 54 | th>...........<td>.............T |
| e55e0 | 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 6e 6f | he.<code><span.class="tok-kw">no |
| e5600 | 61 6c 69 61 73 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6b 65 79 77 6f 72 64 2e 0a 20 20 20 | alias</span></code>.keyword..... |
| e5620 | 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e | .........<ul>...............<li> |
| e5640 | 54 4f 44 4f 20 61 64 64 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 20 66 6f 72 20 6e 6f 61 6c 69 | TODO.add.documentation.for.noali |
| e5660 | 61 73 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 | as</li>.............</ul>....... |
| e5680 | 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>......... |
| e56a0 | 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">. |
| e56c0 | 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 |
| e56e0 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 6e 6f 69 6e 6c 69 6e 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 | ss="tok-kw">noinline</span></cod |
| e5700 | 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>........ |
| e5720 | 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. |
| e5740 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 6e 6f 69 6e 6c 69 6e 65 3c 2f 73 70 61 6e 3e 3c 2f | class="tok-kw">noinline</span></ |
| e5760 | 63 6f 64 65 3e 20 64 69 73 61 6c 6c 6f 77 73 20 66 75 6e 63 74 69 6f 6e 20 74 6f 20 62 65 20 69 | code>.disallows.function.to.be.i |
| e5780 | 6e 6c 69 6e 65 64 20 69 6e 20 61 6c 6c 20 63 61 6c 6c 20 73 69 74 65 73 2e 0a 20 20 20 20 20 20 | nlined.in.all.call.sites........ |
| e57a0 | 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 |
| e57c0 | 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 46 75 6e 63 74 69 6f 6e 73 22 3e 46 75 6e 63 74 | .also.<a.href="#Functions">Funct |
| e57e0 | 69 6f 6e 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a | ions</a></li>.............</ul>. |
| e5800 | 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>... |
| e5820 | 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=" |
| e5840 | 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 |
| e5860 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 6e 6f 73 75 73 70 65 6e 64 3c 2f 73 70 61 | an.class="tok-kw">nosuspend</spa |
| e5880 | 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>. |
| e58a0 | 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 20 3c | ..........<td>.............The.< |
| e58c0 | 63 6f 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 |
| e58e0 | 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 63 61 6e 20 62 65 | end</span></code>.keyword.can.be |
| e5900 | 20 75 73 65 64 20 69 6e 20 66 72 6f 6e 74 20 6f 66 20 61 20 62 6c 6f 63 6b 2c 20 73 74 61 74 65 | .used.in.front.of.a.block,.state |
| e5920 | 6d 65 6e 74 20 6f 72 20 65 78 70 72 65 73 73 69 6f 6e 2c 20 74 6f 20 6d 61 72 6b 20 61 20 73 63 | ment.or.expression,.to.mark.a.sc |
| e5940 | 6f 70 65 20 77 68 65 72 65 20 6e 6f 20 73 75 73 70 65 6e 73 69 6f 6e 20 70 6f 69 6e 74 73 20 61 | ope.where.no.suspension.points.a |
| e5960 | 72 65 20 72 65 61 63 68 65 64 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 49 6e 20 70 61 72 74 69 | re.reached..............In.parti |
| e5980 | 63 75 6c 61 72 2c 20 69 6e 73 69 64 65 20 61 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 | cular,.inside.a.<code><span.clas |
| e59a0 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 6e 6f 73 75 73 70 65 6e 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 | s="tok-kw">nosuspend</span></cod |
| e59c0 | 65 3e 20 73 63 6f 70 65 3a 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 | e>.scope:.............<ul>...... |
| e59e0 | 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 55 73 69 6e 67 20 74 68 65 20 3c 63 6f 64 65 3e 3c 73 70 | .........<li>Using.the.<code><sp |
| e5a00 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 75 73 70 65 6e 64 3c 2f 73 70 61 6e 3e | an.class="tok-kw">suspend</span> |
| e5a20 | 3c 2f 63 6f 64 65 3e 20 6b 65 79 77 6f 72 64 20 72 65 73 75 6c 74 73 20 69 6e 20 61 20 63 6f 6d | </code>.keyword.results.in.a.com |
| e5a40 | 70 69 6c 65 20 65 72 72 6f 72 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c | pile.error.</li>...............< |
| e5a60 | 6c 69 3e 55 73 69 6e 67 20 3c 63 6f 64 65 3e 61 77 61 69 74 3c 2f 63 6f 64 65 3e 20 6f 6e 20 61 | li>Using.<code>await</code>.on.a |
| e5a80 | 20 66 75 6e 63 74 69 6f 6e 20 66 72 61 6d 65 20 77 68 69 63 68 20 68 61 73 6e 27 74 20 63 6f 6d | .function.frame.which.hasn't.com |
| e5aa0 | 70 6c 65 74 65 64 20 79 65 74 20 72 65 73 75 6c 74 73 20 69 6e 20 73 61 66 65 74 79 2d 63 68 65 | pleted.yet.results.in.safety-che |
| e5ac0 | 63 6b 65 64 20 3c 61 20 68 72 65 66 3d 22 23 49 6c 6c 65 67 61 6c 2d 42 65 68 61 76 69 6f 72 22 | cked.<a.href="#Illegal-Behavior" |
| e5ae0 | 3e 49 6c 6c 65 67 61 6c 20 42 65 68 61 76 69 6f 72 3c 2f 61 3e 2e 3c 2f 6c 69 3e 0a 20 20 20 20 | >Illegal.Behavior</a>.</li>..... |
| e5b00 | 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 43 61 6c 6c 69 6e 67 20 61 6e 20 61 73 79 6e 63 20 66 | ..........<li>Calling.an.async.f |
| e5b20 | 75 6e 63 74 69 6f 6e 20 6d 61 79 20 72 65 73 75 6c 74 20 69 6e 20 73 61 66 65 74 79 2d 63 68 65 | unction.may.result.in.safety-che |
| e5b40 | 63 6b 65 64 20 3c 61 20 68 72 65 66 3d 22 23 49 6c 6c 65 67 61 6c 2d 42 65 68 61 76 69 6f 72 22 | cked.<a.href="#Illegal-Behavior" |
| e5b60 | 3e 49 6c 6c 65 67 61 6c 20 42 65 68 61 76 69 6f 72 3c 2f 61 3e 2c 20 62 65 63 61 75 73 65 20 69 | >Illegal.Behavior</a>,.because.i |
| e5b80 | 74 27 73 20 65 71 75 69 76 61 6c 65 6e 74 20 74 6f 20 3c 63 6f 64 65 3e 61 77 61 69 74 20 61 73 | t's.equivalent.to.<code>await.as |
| e5ba0 | 79 6e 63 20 73 6f 6d 65 5f 61 73 79 6e 63 5f 66 6e 28 29 3c 2f 63 6f 64 65 3e 2c 20 77 68 69 63 | ync.some_async_fn()</code>,.whic |
| e5bc0 | 68 20 63 6f 6e 74 61 69 6e 73 20 61 6e 20 3c 63 6f 64 65 3e 61 77 61 69 74 3c 2f 63 6f 64 65 3e | h.contains.an.<code>await</code> |
| e5be0 | 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 20 | .</li>.............</ul>........ |
| e5c00 | 20 20 20 20 20 43 6f 64 65 20 69 6e 73 69 64 65 20 61 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 | .....Code.inside.a.<code><span.c |
| e5c20 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 6e 6f 73 75 73 70 65 6e 64 3c 2f 73 70 61 6e 3e 3c 2f | lass="tok-kw">nosuspend</span></ |
| e5c40 | 63 6f 64 65 3e 20 73 63 6f 70 65 20 64 6f 65 73 20 6e 6f 74 20 63 61 75 73 65 20 74 68 65 20 65 | code>.scope.does.not.cause.the.e |
| e5c60 | 6e 63 6c 6f 73 69 6e 67 20 66 75 6e 63 74 69 6f 6e 20 74 6f 20 62 65 63 6f 6d 65 20 61 6e 20 3c | nclosing.function.to.become.an.< |
| e5c80 | 61 20 68 72 65 66 3d 22 23 41 73 79 6e 63 2d 46 75 6e 63 74 69 6f 6e 73 22 3e 61 73 79 6e 63 20 | a.href="#Async-Functions">async. |
| e5ca0 | 66 75 6e 63 74 69 6f 6e 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 | function</a>..............<ul>.. |
| e5cc0 | 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 |
| e5ce0 | 66 3d 22 23 41 73 79 6e 63 2d 46 75 6e 63 74 69 6f 6e 73 22 3e 41 73 79 6e 63 20 46 75 6e 63 74 | f="#Async-Functions">Async.Funct |
| e5d00 | 69 6f 6e 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a | ions</a></li>.............</ul>. |
| e5d20 | 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>... |
| e5d40 | 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=" |
| e5d60 | 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 |
| e5d80 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 6f 70 61 71 75 65 3c 2f 73 70 61 6e 3e 3c | an.class="tok-kw">opaque</span>< |
| e5da0 | 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 20 | /code></pre>...........</th>.... |
| e5dc0 | 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 73 | .......<td>.............<code><s |
| e5de0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 6f 70 61 71 75 65 3c 2f 73 70 61 6e 3e | pan.class="tok-kw">opaque</span> |
| e5e00 | 3c 2f 63 6f 64 65 3e 20 64 65 66 69 6e 65 73 20 61 6e 20 6f 70 61 71 75 65 20 74 79 70 65 2e 0a | </code>.defines.an.opaque.type.. |
| e5e20 | 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>...............< |
| e5e40 | 6c 69 3e 53 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 6f 70 61 71 75 65 22 3e 6f 70 | li>See.also.<a.href="#opaque">op |
| e5e60 | 61 71 75 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a | aque</a></li>.............</ul>. |
| e5e80 | 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>... |
| e5ea0 | 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=" |
| e5ec0 | 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 |
| e5ee0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 6f 72 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 | an.class="tok-kw">or</span></cod |
| e5f00 | 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>........ |
| e5f20 | 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 54 68 65 20 62 6f 6f 6c 65 61 6e 20 | ...<td>.............The.boolean. |
| e5f40 | 6f 70 65 72 61 74 6f 72 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | operator.<code><span.class="tok- |
| e5f60 | 6b 77 22 3e 6f 72 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 20 20 20 20 | kw">or</span></code>............ |
| e5f80 | 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 65 65 20 61 6c 73 | ..<ul>...............<li>See.als |
| e5fa0 | 6f 20 3c 61 20 68 72 65 66 3d 22 23 4f 70 65 72 61 74 6f 72 73 22 3e 4f 70 65 72 61 74 6f 72 73 | o.<a.href="#Operators">Operators |
| e5fc0 | 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>..... |
| e5fe0 | 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 | ......</td>.........</tr>....... |
| e6000 | 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 72 6f 77 22 | ..<tr>...........<th.scope="row" |
| e6020 | 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 |
| e6040 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 6f 72 65 6c 73 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 | lass="tok-kw">orelse</span></cod |
| e6060 | 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>........ |
| e6080 | 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. |
| e60a0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 6f 72 65 6c 73 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f | class="tok-kw">orelse</span></co |
| e60c0 | 64 65 3e 20 63 61 6e 20 62 65 20 75 73 65 64 20 74 6f 20 65 76 61 6c 75 61 74 65 20 61 6e 20 65 | de>.can.be.used.to.evaluate.an.e |
| e60e0 | 78 70 72 65 73 73 69 6f 6e 20 69 66 20 74 68 65 20 65 78 70 72 65 73 73 69 6f 6e 20 62 65 66 6f | xpression.if.the.expression.befo |
| e6100 | 72 65 20 69 74 20 65 76 61 6c 75 61 74 65 73 20 74 6f 20 6e 75 6c 6c 2e 0a 20 20 20 20 20 20 20 | re.it.evaluates.to.null......... |
| e6120 | 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. |
| e6140 | 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 4f 70 74 69 6f 6e 61 6c 73 22 3e 4f 70 74 69 6f 6e | also.<a.href="#Optionals">Option |
| e6160 | 61 6c 73 3c 2f 61 3e 2c 20 3c 61 20 68 72 65 66 3d 22 23 4f 70 65 72 61 74 6f 72 73 22 3e 4f 70 | als</a>,.<a.href="#Operators">Op |
| e6180 | 65 72 61 74 6f 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 | erators</a></li>.............</u |
| e61a0 | 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e | l>...........</td>.........</tr> |
| e61c0 | 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 70 | .........<tr>...........<th.scop |
| e61e0 | 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 3e | e="row">.............<pre><code> |
| e6200 | 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 70 61 | <span.class="tok-kw">packed</spa |
| e6220 | 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>. |
| e6240 | 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 20 3c | ..........<td>.............The.< |
| e6260 | 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 61 63 6b 65 64 | code><span.class="tok-kw">packed |
| e6280 | 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6b 65 79 77 6f 72 64 20 62 65 66 6f 72 65 20 61 20 | </span></code>.keyword.before.a. |
| e62a0 | 73 74 72 75 63 74 20 64 65 66 69 6e 69 74 69 6f 6e 20 63 68 61 6e 67 65 73 20 74 68 65 20 73 74 | struct.definition.changes.the.st |
| e62c0 | 72 75 63 74 27 73 20 69 6e 2d 6d 65 6d 6f 72 79 20 6c 61 79 6f 75 74 0a 20 20 20 20 20 20 20 20 | ruct's.in-memory.layout......... |
| e62e0 | 20 20 20 20 74 6f 20 74 68 65 20 67 75 61 72 61 6e 74 65 65 64 20 3c 63 6f 64 65 3e 3c 73 70 61 | ....to.the.guaranteed.<code><spa |
| e6300 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 61 63 6b 65 64 3c 2f 73 70 61 6e 3e 3c 2f | n.class="tok-kw">packed</span></ |
| e6320 | 63 6f 64 65 3e 20 6c 61 79 6f 75 74 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 | code>.layout..............<ul>.. |
| e6340 | 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 |
| e6360 | 66 3d 22 23 70 61 63 6b 65 64 2d 73 74 72 75 63 74 22 3e 70 61 63 6b 65 64 20 73 74 72 75 63 74 | f="#packed-struct">packed.struct |
| e6380 | 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>..... |
| e63a0 | 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 | ......</td>.........</tr>....... |
| e63c0 | 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 72 6f 77 22 | ..<tr>...........<th.scope="row" |
| e63e0 | 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 |
| e6400 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c | lass="tok-kw">pub</span></code>< |
| e6420 | 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 | /pre>...........</th>........... |
| e6440 | 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 54 68 65 20 3c 63 6f 64 65 3e 3c 73 70 61 6e | <td>.............The.<code><span |
| e6460 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 | .class="tok-kw">pub</span></code |
| e6480 | 3e 20 69 6e 20 66 72 6f 6e 74 20 6f 66 20 61 20 74 6f 70 20 6c 65 76 65 6c 20 64 65 63 6c 61 72 | >.in.front.of.a.top.level.declar |
| e64a0 | 61 74 69 6f 6e 20 6d 61 6b 65 73 20 74 68 65 20 64 65 63 6c 61 72 61 74 69 6f 6e 20 61 76 61 69 | ation.makes.the.declaration.avai |
| e64c0 | 6c 61 62 6c 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 74 6f 20 72 65 66 65 72 65 6e 63 65 20 66 | lable.............to.reference.f |
| e64e0 | 72 6f 6d 20 61 20 64 69 66 66 65 72 65 6e 74 20 66 69 6c 65 20 74 68 61 6e 20 74 68 65 20 6f 6e | rom.a.different.file.than.the.on |
| e6500 | 65 20 69 74 20 69 73 20 64 65 63 6c 61 72 65 64 20 69 6e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 | e.it.is.declared.in............. |
| e6520 | 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 65 65 20 61 6c 73 6f | .<ul>...............<li>See.also |
| e6540 | 20 3c 61 20 68 72 65 66 3d 22 23 69 6d 70 6f 72 74 22 3e 69 6d 70 6f 72 74 3c 2f 61 3e 3c 2f 6c | .<a.href="#import">import</a></l |
| e6560 | 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>...........< |
| e6580 | 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>. |
| e65a0 | 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">...... |
| e65c0 | 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 |
| e65e0 | 6f 6b 2d 6b 77 22 3e 72 65 73 75 6d 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 | ok-kw">resume</span></code></pre |
| e6600 | 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> |
| e6620 | 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=" |
| e6640 | 74 6f 6b 2d 6b 77 22 3e 72 65 73 75 6d 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 77 69 6c | tok-kw">resume</span></code>.wil |
| e6660 | 6c 20 63 6f 6e 74 69 6e 75 65 20 65 78 65 63 75 74 69 6f 6e 20 6f 66 20 61 20 66 75 6e 63 74 69 | l.continue.execution.of.a.functi |
| e6680 | 6f 6e 20 66 72 61 6d 65 20 61 66 74 65 72 20 74 68 65 20 70 6f 69 6e 74 20 74 68 65 20 66 75 6e | on.frame.after.the.point.the.fun |
| e66a0 | 63 74 69 6f 6e 20 77 61 73 20 73 75 73 70 65 6e 64 65 64 2e 0a 20 20 20 20 20 20 20 20 20 20 3c | ction.was.suspended............< |
| e66c0 | 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>. |
| e66e0 | 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">...... |
| e6700 | 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 |
| e6720 | 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 | ok-kw">return</span></code></pre |
| e6740 | 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> |
| e6760 | 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=" |
| e6780 | 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 65 78 69 | tok-kw">return</span></code>.exi |
| e67a0 | 74 73 20 61 20 66 75 6e 63 74 69 6f 6e 20 77 69 74 68 20 61 20 76 61 6c 75 65 2e 0a 20 20 20 20 | ts.a.function.with.a.value...... |
| e67c0 | 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 |
| e67e0 | 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 |
| e6800 | 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 |
| e6820 | 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>. |
| e6840 | 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 |
| e6860 | 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>< |
| e6880 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 74 72 75 63 74 3c 2f 73 70 61 6e | span.class="tok-kw">struct</span |
| e68a0 | 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>.. |
| e68c0 | 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> |
| e68e0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 74 72 75 63 74 3c 2f 73 70 61 | <span.class="tok-kw">struct</spa |
| e6900 | 6e 3e 3c 2f 63 6f 64 65 3e 20 64 65 66 69 6e 65 73 20 61 20 73 74 72 75 63 74 2e 0a 20 20 20 20 | n></code>.defines.a.struct...... |
| e6920 | 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 |
| e6940 | 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 73 74 72 75 63 74 22 3e 73 74 72 75 63 74 | ee.also.<a.href="#struct">struct |
| e6960 | 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>..... |
| e6980 | 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 | ......</td>.........</tr>....... |
| e69a0 | 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 72 6f 77 22 | ..<tr>...........<th.scope="row" |
| e69c0 | 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 |
| e69e0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 75 73 70 65 6e 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f | lass="tok-kw">suspend</span></co |
| e6a00 | 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 68 3e 0a 20 20 20 20 20 20 | de></pre>...........</th>....... |
| e6a20 | 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 6e | ....<td>.............<code><span |
| e6a40 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 75 73 70 65 6e 64 3c 2f 73 70 61 6e 3e 3c 2f | .class="tok-kw">suspend</span></ |
| e6a60 | 63 6f 64 65 3e 20 77 69 6c 6c 20 63 61 75 73 65 20 63 6f 6e 74 72 6f 6c 20 66 6c 6f 77 20 74 6f | code>.will.cause.control.flow.to |
| e6a80 | 20 72 65 74 75 72 6e 20 74 6f 20 74 68 65 20 63 61 6c 6c 20 73 69 74 65 20 6f 72 20 72 65 73 75 | .return.to.the.call.site.or.resu |
| e6aa0 | 6d 65 72 20 6f 66 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 | mer.of.the.function............. |
| e6ac0 | 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 |
| e6ae0 | 65 6e 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 63 61 6e 20 61 6c 73 6f 20 62 65 20 75 73 | end</span></code>.can.also.be.us |
| e6b00 | 65 64 20 62 65 66 6f 72 65 20 61 20 62 6c 6f 63 6b 20 77 69 74 68 69 6e 20 61 20 66 75 6e 63 74 | ed.before.a.block.within.a.funct |
| e6b20 | 69 6f 6e 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 74 6f 20 61 6c 6c 6f 77 20 74 68 65 20 66 75 | ion,.............to.allow.the.fu |
| e6b40 | 6e 63 74 69 6f 6e 20 61 63 63 65 73 73 20 74 6f 20 69 74 73 20 66 72 61 6d 65 20 62 65 66 6f 72 | nction.access.to.its.frame.befor |
| e6b60 | 65 20 63 6f 6e 74 72 6f 6c 20 66 6c 6f 77 20 72 65 74 75 72 6e 73 20 74 6f 20 74 68 65 20 63 61 | e.control.flow.returns.to.the.ca |
| e6b80 | 6c 6c 20 73 69 74 65 2e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 | ll.site............</td>........ |
| e6ba0 | 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 |
| e6bc0 | 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 3e | h.scope="row">.............<pre> |
| e6be0 | 3c 63 6f 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 |
| e6c00 | 68 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 20 | h</span></code></pre>........... |
| e6c20 | 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>............ |
| e6c40 | 20 41 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 77 | .A.<code><span.class="tok-kw">sw |
| e6c60 | 69 74 63 68 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 65 78 70 72 65 73 73 69 6f 6e 20 63 61 | itch</span></code>.expression.ca |
| e6c80 | 6e 20 62 65 20 75 73 65 64 20 74 6f 20 74 65 73 74 20 76 61 6c 75 65 73 20 6f 66 20 61 20 63 6f | n.be.used.to.test.values.of.a.co |
| e6ca0 | 6d 6d 6f 6e 20 74 79 70 65 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 | mmon.type..............<code><sp |
| e6cc0 | 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>< |
| e6ce0 | 2f 63 6f 64 65 3e 20 63 61 73 65 73 20 63 61 6e 20 63 61 70 74 75 72 65 20 66 69 65 6c 64 20 76 | /code>.cases.can.capture.field.v |
| e6d00 | 61 6c 75 65 73 20 6f 66 20 61 20 3c 61 20 68 72 65 66 3d 22 23 54 61 67 67 65 64 2d 75 6e 69 6f | alues.of.a.<a.href="#Tagged-unio |
| e6d20 | 6e 22 3e 54 61 67 67 65 64 20 75 6e 69 6f 6e 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 | n">Tagged.union</a>............. |
| e6d40 | 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 65 65 20 61 6c 73 6f | .<ul>...............<li>See.also |
| e6d60 | 20 3c 61 20 68 72 65 66 3d 22 23 73 77 69 74 63 68 22 3e 73 77 69 74 63 68 3c 2f 61 3e 3c 2f 6c | .<a.href="#switch">switch</a></l |
| e6d80 | 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>...........< |
| e6da0 | 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>. |
| e6dc0 | 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">...... |
| e6de0 | 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 |
| e6e00 | 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a | ok-kw">test</span></code></pre>. |
| e6e20 | 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>.. |
| e6e40 | 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 |
| e6e60 | 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6b 65 79 | ="tok-kw">test</span></code>.key |
| e6e80 | 77 6f 72 64 20 63 61 6e 20 62 65 20 75 73 65 64 20 74 6f 20 64 65 6e 6f 74 65 20 61 20 74 6f 70 | word.can.be.used.to.denote.a.top |
| e6ea0 | 2d 6c 65 76 65 6c 20 62 6c 6f 63 6b 20 6f 66 20 63 6f 64 65 0a 20 20 20 20 20 20 20 20 20 20 20 | -level.block.of.code............ |
| e6ec0 | 20 75 73 65 64 20 74 6f 20 6d 61 6b 65 20 73 75 72 65 20 62 65 68 61 76 69 6f 72 20 6d 65 65 74 | .used.to.make.sure.behavior.meet |
| e6ee0 | 73 20 65 78 70 65 63 74 61 74 69 6f 6e 73 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e | s.expectations..............<ul> |
| e6f00 | 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 |
| e6f20 | 72 65 66 3d 22 23 5a 69 67 2d 54 65 73 74 22 3e 5a 69 67 20 54 65 73 74 3c 2f 61 3e 3c 2f 6c 69 | ref="#Zig-Test">Zig.Test</a></li |
| e6f40 | 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>...........</ |
| e6f60 | 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>.. |
| e6f80 | 20 20 20 20 20 20 20 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 72 6f 77 22 3e 0a 20 20 20 20 20 20 | .........<th.scope="row">....... |
| e6fa0 | 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 |
| e6fc0 | 6b 2d 6b 77 22 3e 74 68 72 65 61 64 6c 6f 63 61 6c 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c | k-kw">threadlocal</span></code>< |
| e6fe0 | 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 | /pre>...........</th>........... |
| e7000 | 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 | <td>.............<code><span.cla |
| e7020 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 68 72 65 61 64 6c 6f 63 61 6c 3c 2f 73 70 61 6e 3e 3c 2f | ss="tok-kw">threadlocal</span></ |
| e7040 | 63 6f 64 65 3e 20 63 61 6e 20 62 65 20 75 73 65 64 20 74 6f 20 73 70 65 63 69 66 79 20 61 20 76 | code>.can.be.used.to.specify.a.v |
| e7060 | 61 72 69 61 62 6c 65 20 61 73 20 74 68 72 65 61 64 2d 6c 6f 63 61 6c 2e 0a 20 20 20 20 20 20 20 | ariable.as.thread-local......... |
| e7080 | 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. |
| e70a0 | 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 54 68 72 65 61 64 2d 4c 6f 63 61 6c 2d 56 61 72 69 | also.<a.href="#Thread-Local-Vari |
| e70c0 | 61 62 6c 65 73 22 3e 54 68 72 65 61 64 20 4c 6f 63 61 6c 20 56 61 72 69 61 62 6c 65 73 3c 2f 61 | ables">Thread.Local.Variables</a |
| e70e0 | 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>........ |
| e7100 | 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>.........< |
| e7120 | 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">.. |
| e7140 | 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 |
| e7160 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 | s="tok-kw">try</span></code></pr |
| e7180 | 65 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 | e>...........</th>...........<td |
| e71a0 | 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 3d | >.............<code><span.class= |
| e71c0 | 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 65 76 61 6c 75 | "tok-kw">try</span></code>.evalu |
| e71e0 | 61 74 65 73 20 61 6e 20 65 72 72 6f 72 20 75 6e 69 6f 6e 20 65 78 70 72 65 73 73 69 6f 6e 2e 0a | ates.an.error.union.expression.. |
| e7200 | 20 20 20 20 20 20 20 20 20 20 20 20 49 66 20 69 74 20 69 73 20 61 6e 20 65 72 72 6f 72 2c 20 69 | ............If.it.is.an.error,.i |
| e7220 | 74 20 72 65 74 75 72 6e 73 20 66 72 6f 6d 20 74 68 65 20 63 75 72 72 65 6e 74 20 66 75 6e 63 74 | t.returns.from.the.current.funct |
| e7240 | 69 6f 6e 20 77 69 74 68 20 74 68 65 20 73 61 6d 65 20 65 72 72 6f 72 2e 0a 20 20 20 20 20 20 20 | ion.with.the.same.error......... |
| e7260 | 20 20 20 20 20 4f 74 68 65 72 77 69 73 65 2c 20 74 68 65 20 65 78 70 72 65 73 73 69 6f 6e 20 72 | .....Otherwise,.the.expression.r |
| e7280 | 65 73 75 6c 74 73 20 69 6e 20 74 68 65 20 75 6e 77 72 61 70 70 65 64 20 76 61 6c 75 65 2e 0a 20 | esults.in.the.unwrapped.value... |
| e72a0 | 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 |
| e72c0 | 69 3e 53 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 74 72 79 22 3e 74 72 79 3c 2f 61 | i>See.also.<a.href="#try">try</a |
| e72e0 | 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>........ |
| e7300 | 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>.........< |
| e7320 | 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">.. |
| e7340 | 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 |
| e7360 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 69 6f 6e 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f | s="tok-kw">union</span></code></ |
| e7380 | 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>...........< |
| e73a0 | 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 | td>.............<code><span.clas |
| e73c0 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 69 6f 6e 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 64 | s="tok-kw">union</span></code>.d |
| e73e0 | 65 66 69 6e 65 73 20 61 20 75 6e 69 6f 6e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e | efines.a.union..............<ul> |
| e7400 | 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 |
| e7420 | 72 65 66 3d 22 23 75 6e 69 6f 6e 22 3e 75 6e 69 6f 6e 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 | ref="#union">union</a></li>..... |
| e7440 | 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>... |
| e7460 | 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>........ |
| e7480 | 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">............. |
| e74a0 | 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"> |
| e74c0 | 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a | unreachable</span></code></pre>. |
| e74e0 | 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>.. |
| e7500 | 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ...........<code><span.class="to |
| e7520 | 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>. |
| e7540 | 63 61 6e 20 62 65 20 75 73 65 64 20 74 6f 20 61 73 73 65 72 74 20 74 68 61 74 20 63 6f 6e 74 72 | can.be.used.to.assert.that.contr |
| e7560 | 6f 6c 20 66 6c 6f 77 20 77 69 6c 6c 20 6e 65 76 65 72 20 68 61 70 70 65 6e 20 75 70 6f 6e 20 61 | ol.flow.will.never.happen.upon.a |
| e7580 | 20 70 61 72 74 69 63 75 6c 61 72 20 6c 6f 63 61 74 69 6f 6e 2e 0a 20 20 20 20 20 20 20 20 20 20 | .particular.location............ |
| e75a0 | 20 20 44 65 70 65 6e 64 69 6e 67 20 6f 6e 20 74 68 65 20 62 75 69 6c 64 20 6d 6f 64 65 2c 20 3c | ..Depending.on.the.build.mode,.< |
| e75c0 | 63 6f 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 | code><span.class="tok-kw">unreac |
| e75e0 | 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6d 61 79 20 65 6d 69 74 20 61 20 70 | hable</span></code>.may.emit.a.p |
| e7600 | 61 6e 69 63 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 | anic..............<ul>.......... |
| e7620 | 20 20 20 20 20 3c 6c 69 3e 45 6d 69 74 73 20 61 20 70 61 6e 69 63 20 69 6e 20 3c 63 6f 64 65 3e | .....<li>Emits.a.panic.in.<code> |
| e7640 | 44 65 62 75 67 3c 2f 63 6f 64 65 3e 20 61 6e 64 20 3c 63 6f 64 65 3e 52 65 6c 65 61 73 65 53 61 | Debug</code>.and.<code>ReleaseSa |
| e7660 | 66 65 3c 2f 63 6f 64 65 3e 20 6d 6f 64 65 2c 20 6f 72 20 77 68 65 6e 20 75 73 69 6e 67 20 3c 6b | fe</code>.mode,.or.when.using.<k |
| e7680 | 62 64 3e 7a 69 67 20 74 65 73 74 3c 2f 6b 62 64 3e 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 | bd>zig.test</kbd>.</li>......... |
| e76a0 | 20 20 20 20 20 20 3c 6c 69 3e 44 6f 65 73 20 6e 6f 74 20 65 6d 69 74 20 61 20 70 61 6e 69 63 20 | ......<li>Does.not.emit.a.panic. |
| e76c0 | 69 6e 20 3c 63 6f 64 65 3e 52 65 6c 65 61 73 65 46 61 73 74 3c 2f 63 6f 64 65 3e 20 61 6e 64 20 | in.<code>ReleaseFast</code>.and. |
| e76e0 | 3c 63 6f 64 65 3e 52 65 6c 65 61 73 65 53 6d 61 6c 6c 3c 2f 63 6f 64 65 3e 20 6d 6f 64 65 2e 3c | <code>ReleaseSmall</code>.mode.< |
| e7700 | 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. |
| e7720 | 3c 61 20 68 72 65 66 3d 22 23 75 6e 72 65 61 63 68 61 62 6c 65 22 3e 75 6e 72 65 61 63 68 61 62 | <a.href="#unreachable">unreachab |
| e7740 | 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 20 20 | le</a></li>.............</ul>... |
| e7760 | 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>..... |
| e7780 | 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 |
| e77a0 | 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 |
| e77c0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 | .class="tok-kw">var</span></code |
| e77e0 | 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>......... |
| e7800 | 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 |
| e7820 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 | lass="tok-kw">var</span></code>. |
| e7840 | 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 6d 61 79 20 62 65 20 | declares.a.variable.that.may.be. |
| e7860 | 6d 6f 64 69 66 69 65 64 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 | modified..............<ul>...... |
| e7880 | 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 | .........<li>See.also.<a.href="# |
| e78a0 | 56 61 72 69 61 62 6c 65 73 22 3e 56 61 72 69 61 62 6c 65 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 | Variables">Variables</a></li>... |
| e78c0 | 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>. |
| e78e0 | 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>...... |
| e7900 | 20 20 20 20 20 3c 74 68 20 73 63 6f 70 65 3d 22 72 6f 77 22 3e 0a 20 20 20 20 20 20 20 20 20 20 | .....<th.scope="row">........... |
| e7920 | 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | ..<pre><code><span.class="tok-kw |
| e7940 | 22 3e 76 6f 6c 61 74 69 6c 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 | ">volatile</span></code></pre>.. |
| e7960 | 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>... |
| e7980 | 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 |
| e79a0 | 2d 6b 77 22 3e 76 6f 6c 61 74 69 6c 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 63 61 6e 20 | -kw">volatile</span></code>.can. |
| e79c0 | 62 65 20 75 73 65 64 20 74 6f 20 64 65 6e 6f 74 65 20 6c 6f 61 64 73 20 6f 72 20 73 74 6f 72 65 | be.used.to.denote.loads.or.store |
| e79e0 | 73 20 6f 66 20 61 20 70 6f 69 6e 74 65 72 20 68 61 76 65 20 73 69 64 65 20 65 66 66 65 63 74 73 | s.of.a.pointer.have.side.effects |
| e7a00 | 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 6d 6f 64 69 66 79 | ..............It.can.also.modify |
| e7a20 | 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 20 74 | .an.inline.assembly.expression.t |
| e7a40 | 6f 20 64 65 6e 6f 74 65 20 69 74 20 68 61 73 20 73 69 64 65 20 65 66 66 65 63 74 73 2e 0a 20 20 | o.denote.it.has.side.effects.... |
| e7a60 | 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 |
| e7a80 | 3e 53 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 76 6f 6c 61 74 69 6c 65 22 3e 76 6f | >See.also.<a.href="#volatile">vo |
| e7aa0 | 6c 61 74 69 6c 65 3c 2f 61 3e 2c 20 3c 61 20 68 72 65 66 3d 22 23 41 73 73 65 6d 62 6c 79 22 3e | latile</a>,.<a.href="#Assembly"> |
| e7ac0 | 41 73 73 65 6d 62 6c 79 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f | Assembly</a></li>.............</ |
| e7ae0 | 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 |
| e7b00 | 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 |
| e7b20 | 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 |
| e7b40 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 77 68 69 6c 65 3c 2f 73 70 61 | ><span.class="tok-kw">while</spa |
| e7b60 | 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>. |
| e7b80 | 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 41 20 3c 63 6f | ..........<td>.............A.<co |
| e7ba0 | 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 73 | de><span.class="tok-kw">while</s |
| e7bc0 | 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 65 78 70 72 65 73 73 69 6f 6e 20 63 61 6e 20 62 65 20 75 73 | pan></code>.expression.can.be.us |
| e7be0 | 65 64 20 74 6f 20 72 65 70 65 61 74 65 64 6c 79 20 74 65 73 74 20 61 20 62 6f 6f 6c 65 61 6e 2c | ed.to.repeatedly.test.a.boolean, |
| e7c00 | 20 6f 70 74 69 6f 6e 61 6c 2c 20 6f 72 20 65 72 72 6f 72 20 75 6e 69 6f 6e 20 65 78 70 72 65 73 | .optional,.or.error.union.expres |
| e7c20 | 73 69 6f 6e 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 61 6e 64 20 63 65 61 73 65 20 6c 6f 6f 70 | sion,.............and.cease.loop |
| e7c40 | 69 6e 67 20 77 68 65 6e 20 74 68 61 74 20 65 78 70 72 65 73 73 69 6f 6e 20 65 76 61 6c 75 61 74 | ing.when.that.expression.evaluat |
| e7c60 | 65 73 20 74 6f 20 66 61 6c 73 65 2c 20 6e 75 6c 6c 2c 20 6f 72 20 61 6e 20 65 72 72 6f 72 2c 20 | es.to.false,.null,.or.an.error,. |
| e7c80 | 72 65 73 70 65 63 74 69 76 65 6c 79 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 | respectively..............<ul>.. |
| e7ca0 | 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 |
| e7cc0 | 66 3d 22 23 77 68 69 6c 65 22 3e 77 68 69 6c 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | f="#while">while</a></li>....... |
| e7ce0 | 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>..... |
| e7d00 | 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 20 20 | ....</tr>.........</tbody>...... |
| e7d20 | 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 0a 20 | .</table>.......</div>.......... |
| e7d40 | 20 20 20 20 20 3c 68 32 20 69 64 3d 22 41 70 70 65 6e 64 69 78 22 3e 3c 61 20 68 72 65 66 3d 22 | .....<h2.id="Appendix"><a.href=" |
| e7d60 | 23 74 6f 63 2d 41 70 70 65 6e 64 69 78 22 3e 41 70 70 65 6e 64 69 78 3c 2f 61 3e 20 3c 61 20 63 | #toc-Appendix">Appendix</a>.<a.c |
| e7d80 | 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 41 70 70 65 6e 64 69 78 22 3e c2 a7 3c 2f | lass="hdr".href="#Appendix">..</ |
| e7da0 | 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 43 6f 6e 74 61 69 6e 65 72 | a></h2>........<h3.id="Container |
| e7dc0 | 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 43 6f 6e 74 61 69 6e 65 72 73 22 3e 43 6f 6e | s"><a.href="#toc-Containers">Con |
| e7de0 | 74 61 69 6e 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 | tainers</a>.<a.class="hdr".href= |
| e7e00 | 22 23 43 6f 6e 74 61 69 6e 65 72 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 | "#Containers">..</a></h3>....... |
| e7e20 | 20 3c 70 3e 0a 20 20 20 20 20 20 41 20 3c 65 6d 3e 63 6f 6e 74 61 69 6e 65 72 3c 2f 65 6d 3e 20 | .<p>.......A.<em>container</em>. |
| e7e40 | 69 6e 20 5a 69 67 20 69 73 20 61 6e 79 20 73 79 6e 74 61 63 74 69 63 61 6c 20 63 6f 6e 73 74 72 | in.Zig.is.any.syntactical.constr |
| e7e60 | 75 63 74 20 74 68 61 74 20 61 63 74 73 20 61 73 20 61 20 6e 61 6d 65 73 70 61 63 65 20 74 6f 20 | uct.that.acts.as.a.namespace.to. |
| e7e80 | 68 6f 6c 64 20 3c 61 20 68 72 65 66 3d 22 23 43 6f 6e 74 61 69 6e 65 72 2d 4c 65 76 65 6c 2d 56 | hold.<a.href="#Container-Level-V |
| e7ea0 | 61 72 69 61 62 6c 65 73 22 3e 76 61 72 69 61 62 6c 65 3c 2f 61 3e 20 61 6e 64 20 3c 61 20 68 72 | ariables">variable</a>.and.<a.hr |
| e7ec0 | 65 66 3d 22 23 46 75 6e 63 74 69 6f 6e 73 22 3e 66 75 6e 63 74 69 6f 6e 3c 2f 61 3e 20 64 65 63 | ef="#Functions">function</a>.dec |
| e7ee0 | 6c 61 72 61 74 69 6f 6e 73 2e 0a 20 20 20 20 20 20 43 6f 6e 74 61 69 6e 65 72 73 20 61 72 65 20 | larations........Containers.are. |
| e7f00 | 61 6c 73 6f 20 74 79 70 65 20 64 65 66 69 6e 69 74 69 6f 6e 73 20 77 68 69 63 68 20 63 61 6e 20 | also.type.definitions.which.can. |
| e7f20 | 62 65 20 69 6e 73 74 61 6e 74 69 61 74 65 64 2e 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 | be.instantiated........<a.href=" |
| e7f40 | 23 73 74 72 75 63 74 22 3e 53 74 72 75 63 74 73 3c 2f 61 3e 2c 20 3c 61 20 68 72 65 66 3d 22 23 | #struct">Structs</a>,.<a.href="# |
| e7f60 | 65 6e 75 6d 22 3e 65 6e 75 6d 73 3c 2f 61 3e 2c 20 3c 61 20 68 72 65 66 3d 22 23 75 6e 69 6f 6e | enum">enums</a>,.<a.href="#union |
| e7f80 | 22 3e 75 6e 69 6f 6e 73 3c 2f 61 3e 2c 20 3c 61 20 68 72 65 66 3d 22 23 6f 70 61 71 75 65 22 3e | ">unions</a>,.<a.href="#opaque"> |
| e7fa0 | 6f 70 61 71 75 65 73 3c 2f 61 3e 2c 20 61 6e 64 20 65 76 65 6e 20 5a 69 67 20 73 6f 75 72 63 65 | opaques</a>,.and.even.Zig.source |
| e7fc0 | 20 66 69 6c 65 73 20 74 68 65 6d 73 65 6c 76 65 73 20 61 72 65 20 63 6f 6e 74 61 69 6e 65 72 73 | .files.themselves.are.containers |
| e7fe0 | 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 41 6c 74 | ........</p>.......<p>.......Alt |
| e8000 | 68 6f 75 67 68 20 63 6f 6e 74 61 69 6e 65 72 73 20 28 65 78 63 65 70 74 20 5a 69 67 20 73 6f 75 | hough.containers.(except.Zig.sou |
| e8020 | 72 63 65 20 66 69 6c 65 73 29 20 75 73 65 20 63 75 72 6c 79 20 62 72 61 63 65 73 20 74 6f 20 73 | rce.files).use.curly.braces.to.s |
| e8040 | 75 72 72 6f 75 6e 64 20 74 68 65 69 72 20 64 65 66 69 6e 69 74 69 6f 6e 2c 20 74 68 65 79 20 73 | urround.their.definition,.they.s |
| e8060 | 68 6f 75 6c 64 20 6e 6f 74 20 62 65 20 63 6f 6e 66 75 73 65 64 20 77 69 74 68 20 3c 61 20 68 72 | hould.not.be.confused.with.<a.hr |
| e8080 | 65 66 3d 22 23 42 6c 6f 63 6b 73 22 3e 62 6c 6f 63 6b 73 3c 2f 61 3e 20 6f 72 20 66 75 6e 63 74 | ef="#Blocks">blocks</a>.or.funct |
| e80a0 | 69 6f 6e 73 2e 0a 20 20 20 20 20 20 43 6f 6e 74 61 69 6e 65 72 73 20 64 6f 20 6e 6f 74 20 63 6f | ions........Containers.do.not.co |
| e80c0 | 6e 74 61 69 6e 20 73 74 61 74 65 6d 65 6e 74 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 | ntain.statements........</p>.... |
| e80e0 | 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 47 72 61 6d 6d 61 72 22 3e 3c 61 20 68 | ...........<h3.id="Grammar"><a.h |
| e8100 | 72 65 66 3d 22 23 74 6f 63 2d 47 72 61 6d 6d 61 72 22 3e 47 72 61 6d 6d 61 72 3c 2f 61 3e 20 3c | ref="#toc-Grammar">Grammar</a>.< |
| e8120 | 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 47 72 61 6d 6d 61 72 22 3e c2 a7 | a.class="hdr".href="#Grammar">.. |
| e8140 | 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 |
| e8160 | 74 69 6f 6e 20 63 6c 61 73 73 3d 22 70 65 67 2d 63 61 70 22 3e 3c 63 69 74 65 20 63 6c 61 73 73 | tion.class="peg-cap"><cite.class |
| e8180 | 3d 22 66 69 6c 65 22 3e 67 72 61 6d 6d 61 72 2e 79 3c 2f 63 69 74 65 3e 3c 2f 66 69 67 63 61 70 | ="file">grammar.y</cite></figcap |
| e81a0 | 74 69 6f 6e 3e 3c 70 72 65 3e 3c 63 6f 64 65 3e 52 6f 6f 74 20 26 6c 74 3b 2d 20 73 6b 69 70 20 | tion><pre><code>Root.<-.skip. |
| e81c0 | 63 6f 6e 74 61 69 6e 65 72 5f 64 6f 63 5f 63 6f 6d 6d 65 6e 74 3f 20 43 6f 6e 74 61 69 6e 65 72 | container_doc_comment?.Container |
| e81e0 | 4d 65 6d 62 65 72 73 20 65 6f 66 0a 0a 23 20 2a 2a 2a 20 54 6f 70 20 6c 65 76 65 6c 20 2a 2a 2a | Members.eof..#.***.Top.level.*** |
| e8200 | 0a 43 6f 6e 74 61 69 6e 65 72 4d 65 6d 62 65 72 73 20 26 6c 74 3b 2d 20 43 6f 6e 74 61 69 6e 65 | .ContainerMembers.<-.Containe |
| e8220 | 72 44 65 63 6c 61 72 61 74 69 6f 6e 2a 20 28 43 6f 6e 74 61 69 6e 65 72 46 69 65 6c 64 20 43 4f | rDeclaration*.(ContainerField.CO |
| e8240 | 4d 4d 41 29 2a 20 28 43 6f 6e 74 61 69 6e 65 72 46 69 65 6c 64 20 2f 20 43 6f 6e 74 61 69 6e 65 | MMA)*.(ContainerField./.Containe |
| e8260 | 72 44 65 63 6c 61 72 61 74 69 6f 6e 2a 29 0a 0a 43 6f 6e 74 61 69 6e 65 72 44 65 63 6c 61 72 61 | rDeclaration*)..ContainerDeclara |
| e8280 | 74 69 6f 6e 20 26 6c 74 3b 2d 20 54 65 73 74 44 65 63 6c 20 2f 20 43 6f 6d 70 74 69 6d 65 44 65 | tion.<-.TestDecl./.ComptimeDe |
| e82a0 | 63 6c 20 2f 20 64 6f 63 5f 63 6f 6d 6d 65 6e 74 3f 20 4b 45 59 57 4f 52 44 5f 70 75 62 3f 20 44 | cl./.doc_comment?.KEYWORD_pub?.D |
| e82c0 | 65 63 6c 0a 0a 54 65 73 74 44 65 63 6c 20 26 6c 74 3b 2d 20 4b 45 59 57 4f 52 44 5f 74 65 73 74 | ecl..TestDecl.<-.KEYWORD_test |
| e82e0 | 20 28 53 54 52 49 4e 47 4c 49 54 45 52 41 4c 53 49 4e 47 4c 45 20 2f 20 49 44 45 4e 54 49 46 49 | .(STRINGLITERALSINGLE./.IDENTIFI |
| e8300 | 45 52 29 3f 20 42 6c 6f 63 6b 0a 0a 43 6f 6d 70 74 69 6d 65 44 65 63 6c 20 26 6c 74 3b 2d 20 4b | ER)?.Block..ComptimeDecl.<-.K |
| e8320 | 45 59 57 4f 52 44 5f 63 6f 6d 70 74 69 6d 65 20 42 6c 6f 63 6b 0a 0a 44 65 63 6c 0a 20 20 20 20 | EYWORD_comptime.Block..Decl..... |
| e8340 | 26 6c 74 3b 2d 20 28 4b 45 59 57 4f 52 44 5f 65 78 70 6f 72 74 20 2f 20 4b 45 59 57 4f 52 44 5f | <-.(KEYWORD_export./.KEYWORD_ |
| e8360 | 65 78 74 65 72 6e 20 53 54 52 49 4e 47 4c 49 54 45 52 41 4c 53 49 4e 47 4c 45 3f 20 2f 20 4b 45 | extern.STRINGLITERALSINGLE?./.KE |
| e8380 | 59 57 4f 52 44 5f 69 6e 6c 69 6e 65 20 2f 20 4b 45 59 57 4f 52 44 5f 6e 6f 69 6e 6c 69 6e 65 29 | YWORD_inline./.KEYWORD_noinline) |
| e83a0 | 3f 20 46 6e 50 72 6f 74 6f 20 28 53 45 4d 49 43 4f 4c 4f 4e 20 2f 20 42 6c 6f 63 6b 29 0a 20 20 | ?.FnProto.(SEMICOLON./.Block)... |
| e83c0 | 20 20 20 2f 20 28 4b 45 59 57 4f 52 44 5f 65 78 70 6f 72 74 20 2f 20 4b 45 59 57 4f 52 44 5f 65 | .../.(KEYWORD_export./.KEYWORD_e |
| e83e0 | 78 74 65 72 6e 20 53 54 52 49 4e 47 4c 49 54 45 52 41 4c 53 49 4e 47 4c 45 3f 29 3f 20 4b 45 59 | xtern.STRINGLITERALSINGLE?)?.KEY |
| e8400 | 57 4f 52 44 5f 74 68 72 65 61 64 6c 6f 63 61 6c 3f 20 47 6c 6f 62 61 6c 56 61 72 44 65 63 6c 0a | WORD_threadlocal?.GlobalVarDecl. |
| e8420 | 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 4e 54 49 | .FnProto.<-.KEYWORD_fn.IDENTI |
| e8440 | 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 41 52 45 | FIER?.LPAREN.ParamDeclList.RPARE |
| e8460 | 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 65 63 74 | N.ByteAlign?.AddrSpace?.LinkSect |
| e8480 | 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 4b 3f 20 | ion?.CallConv?.EXCLAMATIONMARK?. |
| e84a0 | 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 28 4b 45 | TypeExpr..VarDeclProto.<-.(KE |
| e84c0 | 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 45 4e 54 | YWORD_const./.KEYWORD_var).IDENT |
| e84e0 | 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 6c 69 67 | IFIER.(COLON.TypeExpr)?.ByteAlig |
| e8500 | 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 6c 6f 62 | n?.AddrSpace?.LinkSection?..Glob |
| e8520 | 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 28 45 51 | alVarDecl.<-.VarDeclProto.(EQ |
| e8540 | 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 65 72 46 | UAL.Expr)?.SEMICOLON..ContainerF |
| e8560 | 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 52 44 5f | ield.<-.doc_comment?.KEYWORD_ |
| e8580 | 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 46 49 45 | comptime?.!KEYWORD_fn.(IDENTIFIE |
| e85a0 | 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 20 28 45 | R.COLON)?.TypeExpr.ByteAlign?.(E |
| e85c0 | 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 6c 20 2a | QUAL.Expr)?..#.***.Block.Level.* |
| e85e0 | 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 44 5f 63 | **.Statement.....<-.KEYWORD_c |
| e8600 | 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 20 20 2f | omptime.ComptimeStatement....../ |
| e8620 | 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 74 61 74 | .KEYWORD_nosuspend.BlockExprStat |
| e8640 | 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 42 6c 6f | ement....../.KEYWORD_suspend.Blo |
| e8660 | 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 44 5f 64 | ckExprStatement....../.KEYWORD_d |
| e8680 | 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 2f 20 4b | efer.BlockExprStatement....../.K |
| e86a0 | 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 6b 45 78 | EYWORD_errdefer.Payload?.BlockEx |
| e86c0 | 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 74 0a 20 | prStatement....../.IfStatement.. |
| e86e0 | 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 20 53 77 | ..../.LabeledStatement....../.Sw |
| e8700 | 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 61 74 65 | itchExpr....../.VarDeclExprState |
| e8720 | 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 6c 74 3b | ment..ComptimeStatement.....< |
| e8740 | 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 72 53 74 | -.BlockExpr....../.VarDeclExprSt |
| e8760 | 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 2d 20 49 | atement..IfStatement.....<-.I |
| e8780 | 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 6c 73 65 | fPrefix.BlockExpr.(.KEYWORD_else |
| e87a0 | 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 20 49 66 | .Payload?.Statement.)?....../.If |
| e87c0 | 50 72 65 66 69 78 20 41 73 73 69 67 6e 45 78 70 72 20 28 20 53 45 4d 49 43 4f 4c 4f 4e 20 2f 20 | Prefix.AssignExpr.(.SEMICOLON./. |
| e87e0 | 4b 45 59 57 4f 52 44 5f 65 6c 73 65 20 50 61 79 6c 6f 61 64 3f 20 53 74 61 74 65 6d 65 6e 74 20 | KEYWORD_else.Payload?.Statement. |
| e8800 | 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 63 6b 4c | )..LabeledStatement.<-.BlockL |
| e8820 | 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 0a 0a 4c | abel?.(Block./.LoopStatement)..L |
| e8840 | 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 6c 69 6e | oopStatement.<-.KEYWORD_inlin |
| e8860 | 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 6d 65 6e | e?.(ForStatement./.WhileStatemen |
| e8880 | 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 72 50 72 | t)..ForStatement.....<-.ForPr |
| e88a0 | 65 66 69 78 20 42 6c 6f 63 6b 45 78 70 72 20 28 20 4b 45 59 57 4f 52 44 5f 65 6c 73 65 20 53 74 | efix.BlockExpr.(.KEYWORD_else.St |
| e88c0 | 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 73 73 69 | atement.)?....../.ForPrefix.Assi |
| e88e0 | 67 6e 45 78 70 72 20 28 20 53 45 4d 49 43 4f 4c 4f 4e 20 2f 20 4b 45 59 57 4f 52 44 5f 65 6c 73 | gnExpr.(.SEMICOLON./.KEYWORD_els |
| e8900 | 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 0a 20 20 | e.Statement.)..WhileStatement... |
| e8920 | 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 20 28 20 | ..<-.WhilePrefix.BlockExpr.(. |
| e8940 | 4b 45 59 57 4f 52 44 5f 65 6c 73 65 20 50 61 79 6c 6f 61 64 3f 20 53 74 61 74 65 6d 65 6e 74 20 | KEYWORD_else.Payload?.Statement. |
| e8960 | 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 78 70 72 | )?....../.WhilePrefix.AssignExpr |
| e8980 | 20 28 20 53 45 4d 49 43 4f 4c 4f 4e 20 2f 20 4b 45 59 57 4f 52 44 5f 65 6c 73 65 20 50 61 79 6c | .(.SEMICOLON./.KEYWORD_else.Payl |
| e89a0 | 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 61 74 65 | oad?.Statement.)..BlockExprState |
| e89c0 | 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 20 2f 20 | ment.....<-.BlockExpr....../. |
| e89e0 | 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 70 72 20 | AssignExpr.SEMICOLON..BlockExpr. |
| e8a00 | 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 20 65 78 | <-.BlockLabel?.Block..#.An.ex |
| e8a20 | 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 64 65 73 | pression,.assignment,.or.any.des |
| e8a40 | 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 44 65 63 | tructure,.as.a.statement..VarDec |
| e8a60 | 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 65 63 6c | lExprStatement.....<-.VarDecl |
| e8a80 | 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 45 78 70 | Proto.(COMMA.(VarDeclProto./.Exp |
| e8aa0 | 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 20 20 2f | r))*.EQUAL.Expr.SEMICOLON....../ |
| e8ac0 | 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 20 28 56 | .Expr.(AssignOp.Expr./.(COMMA.(V |
| e8ae0 | 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 78 70 72 | arDeclProto./.Expr))+.EQUAL.Expr |
| e8b00 | 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 6e 20 4c | )?.SEMICOLON..#.***.Expression.L |
| e8b20 | 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 61 20 64 | evel.***..#.An.assignment.or.a.d |
| e8b40 | 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 6c 76 61 | estructure.whose.LHS.are.all.lva |
| e8b60 | 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 6c 74 3b | lue.expressions..AssignExpr.< |
| e8b80 | 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 41 20 45 | -.Expr.(AssignOp.Expr./.(COMMA.E |
| e8ba0 | 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 69 67 6e | xpr)+.EQUAL.Expr)?..SingleAssign |
| e8bc0 | 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 72 29 3f | Expr.<-.Expr.(AssignOp.Expr)? |
| e8be0 | 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 4f 72 45 | ..Expr.<-.BoolOrExpr..BoolOrE |
| e8c00 | 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 44 5f 6f | xpr.<-.BoolAndExpr.(KEYWORD_o |
| e8c20 | 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 26 6c 74 | r.BoolAndExpr)*..BoolAndExpr.< |
| e8c40 | 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 6f 6d 70 | ;-.CompareExpr.(KEYWORD_and.Comp |
| e8c60 | 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 42 69 74 | areExpr)*..CompareExpr.<-.Bit |
| e8c80 | 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 70 72 29 | wiseExpr.(CompareOp.BitwiseExpr) |
| e8ca0 | 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 45 78 70 | ?..BitwiseExpr.<-.BitShiftExp |
| e8cc0 | 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 42 69 74 | r.(BitwiseOp.BitShiftExpr)*..Bit |
| e8ce0 | 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 28 42 69 | ShiftExpr.<-.AdditionExpr.(Bi |
| e8d00 | 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 74 69 6f | tShiftOp.AdditionExpr)*..Additio |
| e8d20 | 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 69 74 69 | nExpr.<-.MultiplyExpr.(Additi |
| e8d40 | 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 45 78 70 | onOp.MultiplyExpr)*..MultiplyExp |
| e8d60 | 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 70 20 50 | r.<-.PrefixExpr.(MultiplyOp.P |
| e8d80 | 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 20 50 72 | refixExpr)*..PrefixExpr.<-.Pr |
| e8da0 | 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 78 70 72 | efixOp*.PrimaryExpr..PrimaryExpr |
| e8dc0 | 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 78 70 72 | .....<-.AsmExpr....../.IfExpr |
| e8de0 | 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 62 65 6c | ....../.KEYWORD_break.BreakLabel |
| e8e00 | 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 6d 65 20 | ?.Expr?....../.KEYWORD_comptime. |
| e8e20 | 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 20 45 78 | Expr....../.KEYWORD_nosuspend.Ex |
| e8e40 | 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 65 61 6b | pr....../.KEYWORD_continue.Break |
| e8e60 | 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 45 78 70 | Label?....../.KEYWORD_resume.Exp |
| e8e80 | 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 0a 20 20 | r....../.KEYWORD_return.Expr?... |
| e8ea0 | 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 20 20 2f | .../.BlockLabel?.LoopExpr....../ |
| e8ec0 | 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 0a 0a 49 | .Block....../.CurlySuffixExpr..I |
| e8ee0 | 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 59 57 4f | fExpr.<-.IfPrefix.Expr.(KEYWO |
| e8f00 | 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 6b 20 26 | RD_else.Payload?.Expr)?..Block.& |
| e8f20 | 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 0a 0a 4c | lt;-.LBRACE.Statement*.RBRACE..L |
| e8f40 | 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 20 28 46 | oopExpr.<-.KEYWORD_inline?.(F |
| e8f60 | 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 26 6c 74 | orExpr./.WhileExpr)..ForExpr.< |
| e8f80 | 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 73 65 20 | ;-.ForPrefix.Expr.(KEYWORD_else. |
| e8fa0 | 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 50 72 65 | Expr)?..WhileExpr.<-.WhilePre |
| e8fc0 | 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 64 3f 20 | fix.Expr.(KEYWORD_else.Payload?. |
| e8fe0 | 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 20 54 79 | Expr)?..CurlySuffixExpr.<-.Ty |
| e9000 | 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 20 20 26 | peExpr.InitList?..InitList.....& |
| e9020 | 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 46 69 65 | lt;-.LBRACE.FieldInit.(COMMA.Fie |
| e9040 | 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 20 4c 42 | ldInit)*.COMMA?.RBRACE....../.LB |
| e9060 | 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 3f 20 52 | RACE.Expr.(COMMA.Expr)*.COMMA?.R |
| e9080 | 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 79 70 65 | BRACE....../.LBRACE.RBRACE..Type |
| e90a0 | 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 72 55 6e | Expr.<-.PrefixTypeOp*.ErrorUn |
| e90c0 | 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 20 53 75 | ionExpr..ErrorUnionExpr.<-.Su |
| e90e0 | 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 65 45 78 | ffixExpr.(EXCLAMATIONMARK.TypeEx |
| e9100 | 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 50 72 69 6d 61 | pr)?..SuffixExpr.....<-.Prima |
| e9120 | 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 72 67 | ryTypeExpr.(SuffixOp./.FnCallArg |
| e9140 | 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 26 6c | uments)*..PrimaryTypeExpr.....&l |
| e9160 | 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 67 75 | t;-.BUILTINIDENTIFIER.FnCallArgu |
| e9180 | 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 20 2f | ments....../.CHAR_LITERAL....../ |
| e91a0 | 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 54 49 | .ContainerDecl....../.DOT.IDENTI |
| e91c0 | 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 2f 20 | FIER....../.DOT.InitList....../. |
| e91e0 | 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 20 2f | ErrorSetDecl....../.FLOAT....../ |
| e9200 | 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 20 20 | .FnProto....../.GroupedExpr..... |
| e9220 | 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 54 49 | ./.LabeledTypeExpr....../.IDENTI |
| e9240 | 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 49 4e | FIER....../.IfTypeExpr....../.IN |
| e9260 | 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 54 79 | TEGER....../.KEYWORD_comptime.Ty |
| e9280 | 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 54 20 | peExpr....../.KEYWORD_error.DOT. |
| e92a0 | 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 72 61 | IDENTIFIER....../.KEYWORD_anyfra |
| e92c0 | 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 20 20 | me....../.KEYWORD_unreachable... |
| e92e0 | 20 20 20 2f 20 53 54 52 49 4e 47 4c 49 54 45 52 41 4c 0a 20 20 20 20 20 2f 20 53 77 69 74 63 68 | .../.STRINGLITERAL....../.Switch |
| e9300 | 45 78 70 72 0a 0a 43 6f 6e 74 61 69 6e 65 72 44 65 63 6c 20 26 6c 74 3b 2d 20 28 4b 45 59 57 4f | Expr..ContainerDecl.<-.(KEYWO |
| e9320 | 52 44 5f 65 78 74 65 72 6e 20 2f 20 4b 45 59 57 4f 52 44 5f 70 61 63 6b 65 64 29 3f 20 43 6f 6e | RD_extern./.KEYWORD_packed)?.Con |
| e9340 | 74 61 69 6e 65 72 44 65 63 6c 41 75 74 6f 0a 0a 45 72 72 6f 72 53 65 74 44 65 63 6c 20 26 6c 74 | tainerDeclAuto..ErrorSetDecl.< |
| e9360 | 3b 2d 20 4b 45 59 57 4f 52 44 5f 65 72 72 6f 72 20 4c 42 52 41 43 45 20 49 64 65 6e 74 69 66 69 | ;-.KEYWORD_error.LBRACE.Identifi |
| e9380 | 65 72 4c 69 73 74 20 52 42 52 41 43 45 0a 0a 47 72 6f 75 70 65 64 45 78 70 72 20 26 6c 74 3b 2d | erList.RBRACE..GroupedExpr.<- |
| e93a0 | 20 4c 50 41 52 45 4e 20 45 78 70 72 20 52 50 41 52 45 4e 0a 0a 49 66 54 79 70 65 45 78 70 72 20 | .LPAREN.Expr.RPAREN..IfTypeExpr. |
| e93c0 | 26 6c 74 3b 2d 20 49 66 50 72 65 66 69 78 20 54 79 70 65 45 78 70 72 20 28 4b 45 59 57 4f 52 44 | <-.IfPrefix.TypeExpr.(KEYWORD |
| e93e0 | 5f 65 6c 73 65 20 50 61 79 6c 6f 61 64 3f 20 54 79 70 65 45 78 70 72 29 3f 0a 0a 4c 61 62 65 6c | _else.Payload?.TypeExpr)?..Label |
| e9400 | 65 64 54 79 70 65 45 78 70 72 0a 20 20 20 20 26 6c 74 3b 2d 20 42 6c 6f 63 6b 4c 61 62 65 6c 20 | edTypeExpr.....<-.BlockLabel. |
| e9420 | 42 6c 6f 63 6b 0a 20 20 20 20 20 2f 20 42 6c 6f 63 6b 4c 61 62 65 6c 3f 20 4c 6f 6f 70 54 79 70 | Block....../.BlockLabel?.LoopTyp |
| e9440 | 65 45 78 70 72 0a 0a 4c 6f 6f 70 54 79 70 65 45 78 70 72 20 26 6c 74 3b 2d 20 4b 45 59 57 4f 52 | eExpr..LoopTypeExpr.<-.KEYWOR |
| e9460 | 44 5f 69 6e 6c 69 6e 65 3f 20 28 46 6f 72 54 79 70 65 45 78 70 72 20 2f 20 57 68 69 6c 65 54 79 | D_inline?.(ForTypeExpr./.WhileTy |
| e9480 | 70 65 45 78 70 72 29 0a 0a 46 6f 72 54 79 70 65 45 78 70 72 20 26 6c 74 3b 2d 20 46 6f 72 50 72 | peExpr)..ForTypeExpr.<-.ForPr |
| e94a0 | 65 66 69 78 20 54 79 70 65 45 78 70 72 20 28 4b 45 59 57 4f 52 44 5f 65 6c 73 65 20 54 79 70 65 | efix.TypeExpr.(KEYWORD_else.Type |
| e94c0 | 45 78 70 72 29 3f 0a 0a 57 68 69 6c 65 54 79 70 65 45 78 70 72 20 26 6c 74 3b 2d 20 57 68 69 6c | Expr)?..WhileTypeExpr.<-.Whil |
| e94e0 | 65 50 72 65 66 69 78 20 54 79 70 65 45 78 70 72 20 28 4b 45 59 57 4f 52 44 5f 65 6c 73 65 20 50 | ePrefix.TypeExpr.(KEYWORD_else.P |
| e9500 | 61 79 6c 6f 61 64 3f 20 54 79 70 65 45 78 70 72 29 3f 0a 0a 53 77 69 74 63 68 45 78 70 72 20 26 | ayload?.TypeExpr)?..SwitchExpr.& |
| e9520 | 6c 74 3b 2d 20 4b 45 59 57 4f 52 44 5f 73 77 69 74 63 68 20 4c 50 41 52 45 4e 20 45 78 70 72 20 | lt;-.KEYWORD_switch.LPAREN.Expr. |
| e9540 | 52 50 41 52 45 4e 20 4c 42 52 41 43 45 20 53 77 69 74 63 68 50 72 6f 6e 67 4c 69 73 74 20 52 42 | RPAREN.LBRACE.SwitchProngList.RB |
| e9560 | 52 41 43 45 0a 0a 23 20 2a 2a 2a 20 41 73 73 65 6d 62 6c 79 20 2a 2a 2a 0a 41 73 6d 45 78 70 72 | RACE..#.***.Assembly.***.AsmExpr |
| e9580 | 20 26 6c 74 3b 2d 20 4b 45 59 57 4f 52 44 5f 61 73 6d 20 4b 45 59 57 4f 52 44 5f 76 6f 6c 61 74 | .<-.KEYWORD_asm.KEYWORD_volat |
| e95a0 | 69 6c 65 3f 20 4c 50 41 52 45 4e 20 45 78 70 72 20 41 73 6d 4f 75 74 70 75 74 3f 20 52 50 41 52 | ile?.LPAREN.Expr.AsmOutput?.RPAR |
| e95c0 | 45 4e 0a 0a 41 73 6d 4f 75 74 70 75 74 20 26 6c 74 3b 2d 20 43 4f 4c 4f 4e 20 41 73 6d 4f 75 74 | EN..AsmOutput.<-.COLON.AsmOut |
| e95e0 | 70 75 74 4c 69 73 74 20 41 73 6d 49 6e 70 75 74 3f 0a 0a 41 73 6d 4f 75 74 70 75 74 49 74 65 6d | putList.AsmInput?..AsmOutputItem |
| e9600 | 20 26 6c 74 3b 2d 20 4c 42 52 41 43 4b 45 54 20 49 44 45 4e 54 49 46 49 45 52 20 52 42 52 41 43 | .<-.LBRACKET.IDENTIFIER.RBRAC |
| e9620 | 4b 45 54 20 53 54 52 49 4e 47 4c 49 54 45 52 41 4c 20 4c 50 41 52 45 4e 20 28 4d 49 4e 55 53 52 | KET.STRINGLITERAL.LPAREN.(MINUSR |
| e9640 | 41 52 52 4f 57 20 54 79 70 65 45 78 70 72 20 2f 20 49 44 45 4e 54 49 46 49 45 52 29 20 52 50 41 | ARROW.TypeExpr./.IDENTIFIER).RPA |
| e9660 | 52 45 4e 0a 0a 41 73 6d 49 6e 70 75 74 20 26 6c 74 3b 2d 20 43 4f 4c 4f 4e 20 41 73 6d 49 6e 70 | REN..AsmInput.<-.COLON.AsmInp |
| e9680 | 75 74 4c 69 73 74 20 41 73 6d 43 6c 6f 62 62 65 72 73 3f 0a 0a 41 73 6d 49 6e 70 75 74 49 74 65 | utList.AsmClobbers?..AsmInputIte |
| e96a0 | 6d 20 26 6c 74 3b 2d 20 4c 42 52 41 43 4b 45 54 20 49 44 45 4e 54 49 46 49 45 52 20 52 42 52 41 | m.<-.LBRACKET.IDENTIFIER.RBRA |
| e96c0 | 43 4b 45 54 20 53 54 52 49 4e 47 4c 49 54 45 52 41 4c 20 4c 50 41 52 45 4e 20 45 78 70 72 20 52 | CKET.STRINGLITERAL.LPAREN.Expr.R |
| e96e0 | 50 41 52 45 4e 0a 0a 41 73 6d 43 6c 6f 62 62 65 72 73 20 26 6c 74 3b 2d 20 43 4f 4c 4f 4e 20 45 | PAREN..AsmClobbers.<-.COLON.E |
| e9700 | 78 70 72 0a 0a 23 20 2a 2a 2a 20 48 65 6c 70 65 72 20 67 72 61 6d 6d 61 72 20 2a 2a 2a 0a 42 72 | xpr..#.***.Helper.grammar.***.Br |
| e9720 | 65 61 6b 4c 61 62 65 6c 20 26 6c 74 3b 2d 20 43 4f 4c 4f 4e 20 49 44 45 4e 54 49 46 49 45 52 0a | eakLabel.<-.COLON.IDENTIFIER. |
| e9740 | 0a 42 6c 6f 63 6b 4c 61 62 65 6c 20 26 6c 74 3b 2d 20 49 44 45 4e 54 49 46 49 45 52 20 43 4f 4c | .BlockLabel.<-.IDENTIFIER.COL |
| e9760 | 4f 4e 0a 0a 46 69 65 6c 64 49 6e 69 74 20 26 6c 74 3b 2d 20 44 4f 54 20 49 44 45 4e 54 49 46 49 | ON..FieldInit.<-.DOT.IDENTIFI |
| e9780 | 45 52 20 45 51 55 41 4c 20 45 78 70 72 0a 0a 57 68 69 6c 65 43 6f 6e 74 69 6e 75 65 45 78 70 72 | ER.EQUAL.Expr..WhileContinueExpr |
| e97a0 | 20 26 6c 74 3b 2d 20 43 4f 4c 4f 4e 20 4c 50 41 52 45 4e 20 41 73 73 69 67 6e 45 78 70 72 20 52 | .<-.COLON.LPAREN.AssignExpr.R |
| e97c0 | 50 41 52 45 4e 0a 0a 4c 69 6e 6b 53 65 63 74 69 6f 6e 20 26 6c 74 3b 2d 20 4b 45 59 57 4f 52 44 | PAREN..LinkSection.<-.KEYWORD |
| e97e0 | 5f 6c 69 6e 6b 73 65 63 74 69 6f 6e 20 4c 50 41 52 45 4e 20 45 78 70 72 20 52 50 41 52 45 4e 0a | _linksection.LPAREN.Expr.RPAREN. |
| e9800 | 0a 41 64 64 72 53 70 61 63 65 20 26 6c 74 3b 2d 20 4b 45 59 57 4f 52 44 5f 61 64 64 72 73 70 61 | .AddrSpace.<-.KEYWORD_addrspa |
| e9820 | 63 65 20 4c 50 41 52 45 4e 20 45 78 70 72 20 52 50 41 52 45 4e 0a 0a 23 20 46 6e 20 73 70 65 63 | ce.LPAREN.Expr.RPAREN..#.Fn.spec |
| e9840 | 69 66 69 63 0a 43 61 6c 6c 43 6f 6e 76 20 26 6c 74 3b 2d 20 4b 45 59 57 4f 52 44 5f 63 61 6c 6c | ific.CallConv.<-.KEYWORD_call |
| e9860 | 63 6f 6e 76 20 4c 50 41 52 45 4e 20 45 78 70 72 20 52 50 41 52 45 4e 0a 0a 50 61 72 61 6d 44 65 | conv.LPAREN.Expr.RPAREN..ParamDe |
| e9880 | 63 6c 0a 20 20 20 20 26 6c 74 3b 2d 20 64 6f 63 5f 63 6f 6d 6d 65 6e 74 3f 20 28 4b 45 59 57 4f | cl.....<-.doc_comment?.(KEYWO |
| e98a0 | 52 44 5f 6e 6f 61 6c 69 61 73 20 2f 20 4b 45 59 57 4f 52 44 5f 63 6f 6d 70 74 69 6d 65 29 3f 20 | RD_noalias./.KEYWORD_comptime)?. |
| e98c0 | 28 49 44 45 4e 54 49 46 49 45 52 20 43 4f 4c 4f 4e 29 3f 20 50 61 72 61 6d 54 79 70 65 0a 20 20 | (IDENTIFIER.COLON)?.ParamType... |
| e98e0 | 20 20 20 2f 20 44 4f 54 33 0a 0a 50 61 72 61 6d 54 79 70 65 0a 20 20 20 20 26 6c 74 3b 2d 20 4b | .../.DOT3..ParamType.....<-.K |
| e9900 | 45 59 57 4f 52 44 5f 61 6e 79 74 79 70 65 0a 20 20 20 20 20 2f 20 54 79 70 65 45 78 70 72 0a 0a | EYWORD_anytype....../.TypeExpr.. |
| e9920 | 23 20 43 6f 6e 74 72 6f 6c 20 66 6c 6f 77 20 70 72 65 66 69 78 65 73 0a 49 66 50 72 65 66 69 78 | #.Control.flow.prefixes.IfPrefix |
| e9940 | 20 26 6c 74 3b 2d 20 4b 45 59 57 4f 52 44 5f 69 66 20 4c 50 41 52 45 4e 20 45 78 70 72 20 52 50 | .<-.KEYWORD_if.LPAREN.Expr.RP |
| e9960 | 41 52 45 4e 20 50 74 72 50 61 79 6c 6f 61 64 3f 0a 0a 57 68 69 6c 65 50 72 65 66 69 78 20 26 6c | AREN.PtrPayload?..WhilePrefix.&l |
| e9980 | 74 3b 2d 20 4b 45 59 57 4f 52 44 5f 77 68 69 6c 65 20 4c 50 41 52 45 4e 20 45 78 70 72 20 52 50 | t;-.KEYWORD_while.LPAREN.Expr.RP |
| e99a0 | 41 52 45 4e 20 50 74 72 50 61 79 6c 6f 61 64 3f 20 57 68 69 6c 65 43 6f 6e 74 69 6e 75 65 45 78 | AREN.PtrPayload?.WhileContinueEx |
| e99c0 | 70 72 3f 0a 0a 46 6f 72 50 72 65 66 69 78 20 26 6c 74 3b 2d 20 4b 45 59 57 4f 52 44 5f 66 6f 72 | pr?..ForPrefix.<-.KEYWORD_for |
| e99e0 | 20 4c 50 41 52 45 4e 20 46 6f 72 41 72 67 75 6d 65 6e 74 73 4c 69 73 74 20 52 50 41 52 45 4e 20 | .LPAREN.ForArgumentsList.RPAREN. |
| e9a00 | 50 74 72 4c 69 73 74 50 61 79 6c 6f 61 64 0a 0a 23 20 50 61 79 6c 6f 61 64 73 0a 50 61 79 6c 6f | PtrListPayload..#.Payloads.Paylo |
| e9a20 | 61 64 20 26 6c 74 3b 2d 20 50 49 50 45 20 49 44 45 4e 54 49 46 49 45 52 20 50 49 50 45 0a 0a 50 | ad.<-.PIPE.IDENTIFIER.PIPE..P |
| e9a40 | 74 72 50 61 79 6c 6f 61 64 20 26 6c 74 3b 2d 20 50 49 50 45 20 41 53 54 45 52 49 53 4b 3f 20 49 | trPayload.<-.PIPE.ASTERISK?.I |
| e9a60 | 44 45 4e 54 49 46 49 45 52 20 50 49 50 45 0a 0a 50 74 72 49 6e 64 65 78 50 61 79 6c 6f 61 64 20 | DENTIFIER.PIPE..PtrIndexPayload. |
| e9a80 | 26 6c 74 3b 2d 20 50 49 50 45 20 41 53 54 45 52 49 53 4b 3f 20 49 44 45 4e 54 49 46 49 45 52 20 | <-.PIPE.ASTERISK?.IDENTIFIER. |
| e9aa0 | 28 43 4f 4d 4d 41 20 49 44 45 4e 54 49 46 49 45 52 29 3f 20 50 49 50 45 0a 0a 50 74 72 4c 69 73 | (COMMA.IDENTIFIER)?.PIPE..PtrLis |
| e9ac0 | 74 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 | tPayload.<-.PIPE.ASTERISK?.ID |
| e9ae0 | 45 4e 54 49 46 49 45 52 20 28 43 4f 4d 4d 41 20 41 53 54 45 52 49 53 4b 3f 20 49 44 45 4e 54 49 | ENTIFIER.(COMMA.ASTERISK?.IDENTI |
| e9b00 | 46 49 45 52 29 2a 20 43 4f 4d 4d 41 3f 20 50 49 50 45 0a 0a 23 20 53 77 69 74 63 68 20 73 70 65 | FIER)*.COMMA?.PIPE..#.Switch.spe |
| e9b20 | 63 69 66 69 63 0a 53 77 69 74 63 68 50 72 6f 6e 67 20 26 6c 74 3b 2d 20 4b 45 59 57 4f 52 44 5f | cific.SwitchProng.<-.KEYWORD_ |
| e9b40 | 69 6e 6c 69 6e 65 3f 20 53 77 69 74 63 68 43 61 73 65 20 45 51 55 41 4c 52 41 52 52 4f 57 20 50 | inline?.SwitchCase.EQUALRARROW.P |
| e9b60 | 74 72 49 6e 64 65 78 50 61 79 6c 6f 61 64 3f 20 53 69 6e 67 6c 65 41 73 73 69 67 6e 45 78 70 72 | trIndexPayload?.SingleAssignExpr |
| e9b80 | 0a 0a 53 77 69 74 63 68 43 61 73 65 0a 20 20 20 20 26 6c 74 3b 2d 20 53 77 69 74 63 68 49 74 65 | ..SwitchCase.....<-.SwitchIte |
| e9ba0 | 6d 20 28 43 4f 4d 4d 41 20 53 77 69 74 63 68 49 74 65 6d 29 2a 20 43 4f 4d 4d 41 3f 0a 20 20 20 | m.(COMMA.SwitchItem)*.COMMA?.... |
| e9bc0 | 20 20 2f 20 4b 45 59 57 4f 52 44 5f 65 6c 73 65 0a 0a 53 77 69 74 63 68 49 74 65 6d 20 26 6c 74 | ../.KEYWORD_else..SwitchItem.< |
| e9be0 | 3b 2d 20 45 78 70 72 20 28 44 4f 54 33 20 45 78 70 72 29 3f 0a 0a 23 20 46 6f 72 20 73 70 65 63 | ;-.Expr.(DOT3.Expr)?..#.For.spec |
| e9c00 | 69 66 69 63 0a 46 6f 72 41 72 67 75 6d 65 6e 74 73 4c 69 73 74 20 26 6c 74 3b 2d 20 46 6f 72 49 | ific.ForArgumentsList.<-.ForI |
| e9c20 | 74 65 6d 20 28 43 4f 4d 4d 41 20 46 6f 72 49 74 65 6d 29 2a 20 43 4f 4d 4d 41 3f 0a 0a 46 6f 72 | tem.(COMMA.ForItem)*.COMMA?..For |
| e9c40 | 49 74 65 6d 20 26 6c 74 3b 2d 20 45 78 70 72 20 28 44 4f 54 32 20 45 78 70 72 3f 29 3f 0a 0a 23 | Item.<-.Expr.(DOT2.Expr?)?..# |
| e9c60 | 20 4f 70 65 72 61 74 6f 72 73 0a 41 73 73 69 67 6e 4f 70 0a 20 20 20 20 26 6c 74 3b 2d 20 41 53 | .Operators.AssignOp.....<-.AS |
| e9c80 | 54 45 52 49 53 4b 45 51 55 41 4c 0a 20 20 20 20 20 2f 20 41 53 54 45 52 49 53 4b 50 49 50 45 45 | TERISKEQUAL....../.ASTERISKPIPEE |
| e9ca0 | 51 55 41 4c 0a 20 20 20 20 20 2f 20 53 4c 41 53 48 45 51 55 41 4c 0a 20 20 20 20 20 2f 20 50 45 | QUAL....../.SLASHEQUAL....../.PE |
| e9cc0 | 52 43 45 4e 54 45 51 55 41 4c 0a 20 20 20 20 20 2f 20 50 4c 55 53 45 51 55 41 4c 0a 20 20 20 20 | RCENTEQUAL....../.PLUSEQUAL..... |
| e9ce0 | 20 2f 20 50 4c 55 53 50 49 50 45 45 51 55 41 4c 0a 20 20 20 20 20 2f 20 4d 49 4e 55 53 45 51 55 | ./.PLUSPIPEEQUAL....../.MINUSEQU |
| e9d00 | 41 4c 0a 20 20 20 20 20 2f 20 4d 49 4e 55 53 50 49 50 45 45 51 55 41 4c 0a 20 20 20 20 20 2f 20 | AL....../.MINUSPIPEEQUAL....../. |
| e9d20 | 4c 41 52 52 4f 57 32 45 51 55 41 4c 0a 20 20 20 20 20 2f 20 4c 41 52 52 4f 57 32 50 49 50 45 45 | LARROW2EQUAL....../.LARROW2PIPEE |
| e9d40 | 51 55 41 4c 0a 20 20 20 20 20 2f 20 52 41 52 52 4f 57 32 45 51 55 41 4c 0a 20 20 20 20 20 2f 20 | QUAL....../.RARROW2EQUAL....../. |
| e9d60 | 41 4d 50 45 52 53 41 4e 44 45 51 55 41 4c 0a 20 20 20 20 20 2f 20 43 41 52 45 54 45 51 55 41 4c | AMPERSANDEQUAL....../.CARETEQUAL |
| e9d80 | 0a 20 20 20 20 20 2f 20 50 49 50 45 45 51 55 41 4c 0a 20 20 20 20 20 2f 20 41 53 54 45 52 49 53 | ....../.PIPEEQUAL....../.ASTERIS |
| e9da0 | 4b 50 45 52 43 45 4e 54 45 51 55 41 4c 0a 20 20 20 20 20 2f 20 50 4c 55 53 50 45 52 43 45 4e 54 | KPERCENTEQUAL....../.PLUSPERCENT |
| e9dc0 | 45 51 55 41 4c 0a 20 20 20 20 20 2f 20 4d 49 4e 55 53 50 45 52 43 45 4e 54 45 51 55 41 4c 0a 20 | EQUAL....../.MINUSPERCENTEQUAL.. |
| e9de0 | 20 20 20 20 2f 20 45 51 55 41 4c 0a 0a 43 6f 6d 70 61 72 65 4f 70 0a 20 20 20 20 26 6c 74 3b 2d | ..../.EQUAL..CompareOp.....<- |
| e9e00 | 20 45 51 55 41 4c 45 51 55 41 4c 0a 20 20 20 20 20 2f 20 45 58 43 4c 41 4d 41 54 49 4f 4e 4d 41 | .EQUALEQUAL....../.EXCLAMATIONMA |
| e9e20 | 52 4b 45 51 55 41 4c 0a 20 20 20 20 20 2f 20 4c 41 52 52 4f 57 0a 20 20 20 20 20 2f 20 52 41 52 | RKEQUAL....../.LARROW....../.RAR |
| e9e40 | 52 4f 57 0a 20 20 20 20 20 2f 20 4c 41 52 52 4f 57 45 51 55 41 4c 0a 20 20 20 20 20 2f 20 52 41 | ROW....../.LARROWEQUAL....../.RA |
| e9e60 | 52 52 4f 57 45 51 55 41 4c 0a 0a 42 69 74 77 69 73 65 4f 70 0a 20 20 20 20 26 6c 74 3b 2d 20 41 | RROWEQUAL..BitwiseOp.....<-.A |
| e9e80 | 4d 50 45 52 53 41 4e 44 0a 20 20 20 20 20 2f 20 43 41 52 45 54 0a 20 20 20 20 20 2f 20 50 49 50 | MPERSAND....../.CARET....../.PIP |
| e9ea0 | 45 0a 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f 6f 72 65 6c 73 65 0a 20 20 20 20 20 2f 20 4b | E....../.KEYWORD_orelse....../.K |
| e9ec0 | 45 59 57 4f 52 44 5f 63 61 74 63 68 20 50 61 79 6c 6f 61 64 3f 0a 0a 42 69 74 53 68 69 66 74 4f | EYWORD_catch.Payload?..BitShiftO |
| e9ee0 | 70 0a 20 20 20 20 26 6c 74 3b 2d 20 4c 41 52 52 4f 57 32 0a 20 20 20 20 20 2f 20 52 41 52 52 4f | p.....<-.LARROW2....../.RARRO |
| e9f00 | 57 32 0a 20 20 20 20 20 2f 20 4c 41 52 52 4f 57 32 50 49 50 45 0a 0a 41 64 64 69 74 69 6f 6e 4f | W2....../.LARROW2PIPE..AdditionO |
| e9f20 | 70 0a 20 20 20 20 26 6c 74 3b 2d 20 50 4c 55 53 0a 20 20 20 20 20 2f 20 4d 49 4e 55 53 0a 20 20 | p.....<-.PLUS....../.MINUS... |
| e9f40 | 20 20 20 2f 20 50 4c 55 53 32 0a 20 20 20 20 20 2f 20 50 4c 55 53 50 45 52 43 45 4e 54 0a 20 20 | .../.PLUS2....../.PLUSPERCENT... |
| e9f60 | 20 20 20 2f 20 4d 49 4e 55 53 50 45 52 43 45 4e 54 0a 20 20 20 20 20 2f 20 50 4c 55 53 50 49 50 | .../.MINUSPERCENT....../.PLUSPIP |
| e9f80 | 45 0a 20 20 20 20 20 2f 20 4d 49 4e 55 53 50 49 50 45 0a 0a 4d 75 6c 74 69 70 6c 79 4f 70 0a 20 | E....../.MINUSPIPE..MultiplyOp.. |
| e9fa0 | 20 20 20 26 6c 74 3b 2d 20 50 49 50 45 32 0a 20 20 20 20 20 2f 20 41 53 54 45 52 49 53 4b 0a 20 | ...<-.PIPE2....../.ASTERISK.. |
| e9fc0 | 20 20 20 20 2f 20 53 4c 41 53 48 0a 20 20 20 20 20 2f 20 50 45 52 43 45 4e 54 0a 20 20 20 20 20 | ..../.SLASH....../.PERCENT...... |
| e9fe0 | 2f 20 41 53 54 45 52 49 53 4b 32 0a 20 20 20 20 20 2f 20 41 53 54 45 52 49 53 4b 50 45 52 43 45 | /.ASTERISK2....../.ASTERISKPERCE |
| ea000 | 4e 54 0a 20 20 20 20 20 2f 20 41 53 54 45 52 49 53 4b 50 49 50 45 0a 0a 50 72 65 66 69 78 4f 70 | NT....../.ASTERISKPIPE..PrefixOp |
| ea020 | 0a 20 20 20 20 26 6c 74 3b 2d 20 45 58 43 4c 41 4d 41 54 49 4f 4e 4d 41 52 4b 0a 20 20 20 20 20 | .....<-.EXCLAMATIONMARK...... |
| ea040 | 2f 20 4d 49 4e 55 53 0a 20 20 20 20 20 2f 20 54 49 4c 44 45 0a 20 20 20 20 20 2f 20 4d 49 4e 55 | /.MINUS....../.TILDE....../.MINU |
| ea060 | 53 50 45 52 43 45 4e 54 0a 20 20 20 20 20 2f 20 41 4d 50 45 52 53 41 4e 44 0a 20 20 20 20 20 2f | SPERCENT....../.AMPERSAND....../ |
| ea080 | 20 4b 45 59 57 4f 52 44 5f 74 72 79 0a 0a 50 72 65 66 69 78 54 79 70 65 4f 70 0a 20 20 20 20 26 | .KEYWORD_try..PrefixTypeOp.....& |
| ea0a0 | 6c 74 3b 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 | lt;-.QUESTIONMARK....../.KEYWORD |
| ea0c0 | 5f 61 6e 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 | _anyframe.MINUSRARROW....../.Sli |
| ea0e0 | 63 65 54 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 | ceTypeStart.(ByteAlign./.AddrSpa |
| ea100 | 63 65 20 2f 20 4b 45 59 57 4f 52 44 5f 63 6f 6e 73 74 20 2f 20 4b 45 59 57 4f 52 44 5f 76 6f 6c | ce./.KEYWORD_const./.KEYWORD_vol |
| ea120 | 61 74 69 6c 65 20 2f 20 4b 45 59 57 4f 52 44 5f 61 6c 6c 6f 77 7a 65 72 6f 29 2a 0a 20 20 20 20 | atile./.KEYWORD_allowzero)*..... |
| ea140 | 20 2f 20 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 | ./.PtrTypeStart.(AddrSpace./.KEY |
| ea160 | 57 4f 52 44 5f 61 6c 69 67 6e 20 4c 50 41 52 45 4e 20 45 78 70 72 20 28 43 4f 4c 4f 4e 20 45 78 | WORD_align.LPAREN.Expr.(COLON.Ex |
| ea180 | 70 72 20 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 | pr.COLON.Expr)?.RPAREN./.KEYWORD |
| ea1a0 | 5f 63 6f 6e 73 74 20 2f 20 4b 45 59 57 4f 52 44 5f 76 6f 6c 61 74 69 6c 65 20 2f 20 4b 45 59 57 | _const./.KEYWORD_volatile./.KEYW |
| ea1c0 | 4f 52 44 5f 61 6c 6c 6f 77 7a 65 72 6f 29 2a 0a 20 20 20 20 20 2f 20 41 72 72 61 79 54 79 70 65 | ORD_allowzero)*....../.ArrayType |
| ea1e0 | 53 74 61 72 74 0a 0a 53 75 66 66 69 78 4f 70 0a 20 20 20 20 26 6c 74 3b 2d 20 4c 42 52 41 43 4b | Start..SuffixOp.....<-.LBRACK |
| ea200 | 45 54 20 45 78 70 72 20 28 44 4f 54 32 20 28 45 78 70 72 3f 20 28 43 4f 4c 4f 4e 20 45 78 70 72 | ET.Expr.(DOT2.(Expr?.(COLON.Expr |
| ea220 | 29 3f 29 3f 29 3f 20 52 42 52 41 43 4b 45 54 0a 20 20 20 20 20 2f 20 44 4f 54 20 49 44 45 4e 54 | )?)?)?.RBRACKET....../.DOT.IDENT |
| ea240 | 49 46 49 45 52 0a 20 20 20 20 20 2f 20 44 4f 54 41 53 54 45 52 49 53 4b 0a 20 20 20 20 20 2f 20 | IFIER....../.DOTASTERISK....../. |
| ea260 | 44 4f 54 51 55 45 53 54 49 4f 4e 4d 41 52 4b 0a 0a 46 6e 43 61 6c 6c 41 72 67 75 6d 65 6e 74 73 | DOTQUESTIONMARK..FnCallArguments |
| ea280 | 20 26 6c 74 3b 2d 20 4c 50 41 52 45 4e 20 45 78 70 72 4c 69 73 74 20 52 50 41 52 45 4e 0a 0a 23 | .<-.LPAREN.ExprList.RPAREN..# |
| ea2a0 | 20 50 74 72 20 73 70 65 63 69 66 69 63 0a 53 6c 69 63 65 54 79 70 65 53 74 61 72 74 20 26 6c 74 | .Ptr.specific.SliceTypeStart.< |
| ea2c0 | 3b 2d 20 4c 42 52 41 43 4b 45 54 20 28 43 4f 4c 4f 4e 20 45 78 70 72 29 3f 20 52 42 52 41 43 4b | ;-.LBRACKET.(COLON.Expr)?.RBRACK |
| ea2e0 | 45 54 0a 0a 50 74 72 54 79 70 65 53 74 61 72 74 0a 20 20 20 20 26 6c 74 3b 2d 20 41 53 54 45 52 | ET..PtrTypeStart.....<-.ASTER |
| ea300 | 49 53 4b 0a 20 20 20 20 20 2f 20 41 53 54 45 52 49 53 4b 32 0a 20 20 20 20 20 2f 20 4c 42 52 41 | ISK....../.ASTERISK2....../.LBRA |
| ea320 | 43 4b 45 54 20 41 53 54 45 52 49 53 4b 20 28 4c 45 54 54 45 52 43 20 2f 20 43 4f 4c 4f 4e 20 45 | CKET.ASTERISK.(LETTERC./.COLON.E |
| ea340 | 78 70 72 29 3f 20 52 42 52 41 43 4b 45 54 0a 0a 41 72 72 61 79 54 79 70 65 53 74 61 72 74 20 26 | xpr)?.RBRACKET..ArrayTypeStart.& |
| ea360 | 6c 74 3b 2d 20 4c 42 52 41 43 4b 45 54 20 45 78 70 72 20 28 43 4f 4c 4f 4e 20 45 78 70 72 29 3f | lt;-.LBRACKET.Expr.(COLON.Expr)? |
| ea380 | 20 52 42 52 41 43 4b 45 54 0a 0a 23 20 43 6f 6e 74 61 69 6e 65 72 44 65 63 6c 20 73 70 65 63 69 | .RBRACKET..#.ContainerDecl.speci |
| ea3a0 | 66 69 63 0a 43 6f 6e 74 61 69 6e 65 72 44 65 63 6c 41 75 74 6f 20 26 6c 74 3b 2d 20 43 6f 6e 74 | fic.ContainerDeclAuto.<-.Cont |
| ea3c0 | 61 69 6e 65 72 44 65 63 6c 54 79 70 65 20 4c 42 52 41 43 45 20 63 6f 6e 74 61 69 6e 65 72 5f 64 | ainerDeclType.LBRACE.container_d |
| ea3e0 | 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 52 42 52 | oc_comment?.ContainerMembers.RBR |
| ea400 | 41 43 45 0a 0a 43 6f 6e 74 61 69 6e 65 72 44 65 63 6c 54 79 70 65 0a 20 20 20 20 26 6c 74 3b 2d | ACE..ContainerDeclType.....<- |
| ea420 | 20 4b 45 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 | .KEYWORD_struct.(LPAREN.Expr.RPA |
| ea440 | 52 45 4e 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 | REN)?....../.KEYWORD_opaque..... |
| ea460 | 20 2f 20 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 | ./.KEYWORD_enum.(LPAREN.Expr.RPA |
| ea480 | 52 45 4e 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 | REN)?....../.KEYWORD_union.(LPAR |
| ea4a0 | 45 4e 20 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 | EN.(KEYWORD_enum.(LPAREN.Expr.RP |
| ea4c0 | 41 52 45 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 | AREN)?./.Expr).RPAREN)?..#.Align |
| ea4e0 | 6d 65 6e 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 | ment.ByteAlign.<-.KEYWORD_ali |
| ea500 | 67 6e 20 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 | gn.LPAREN.Expr.RPAREN..#.Lists.I |
| ea520 | 64 65 6e 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 | dentifierList.<-.(doc_comment |
| ea540 | 3f 20 49 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 | ?.IDENTIFIER.COMMA)*.(doc_commen |
| ea560 | 74 3f 20 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 | t?.IDENTIFIER)?..SwitchProngList |
| ea580 | 20 26 6c 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 | .<-.(SwitchProng.COMMA)*.Swit |
| ea5a0 | 63 68 50 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 | chProng?..AsmOutputList.<-.(A |
| ea5c0 | 73 6d 4f 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 | smOutputItem.COMMA)*.AsmOutputIt |
| ea5e0 | 65 6d 3f 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 | em?..AsmInputList.<-.(AsmInpu |
| ea600 | 74 49 74 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 | tItem.COMMA)*.AsmInputItem?..Str |
| ea620 | 69 6e 67 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 | ingList.<-.(STRINGLITERAL.COM |
| ea640 | 4d 41 29 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 | MA)*.STRINGLITERAL?..ParamDeclLi |
| ea660 | 73 74 20 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 | st.<-.(ParamDecl.COMMA)*.Para |
| ea680 | 6d 44 65 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 | mDecl?..ExprList.<-.(Expr.COM |
| ea6a0 | 4d 41 29 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 | MA)*.Expr?..#.***.Tokens.***.eof |
| ea6c0 | 20 26 6c 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 | .<-.!..bin.<-.[01].bin_.&l |
| ea6e0 | 74 3b 2d 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 | t;-.'_'?.bin.oct.<-.[0-7].oct |
| ea700 | 5f 20 26 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 | _.<-.'_'?.oct.hex.<-.[0-9a |
| ea720 | 2d 66 41 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 | -fA-F].hex_.<-.'_'?.hex.dec.& |
| ea740 | 6c 74 3b 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 | lt;-.[0-9].dec_.<-.'_'?.dec.. |
| ea760 | 62 69 6e 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 | bin_int.<-.bin.bin_*.oct_int. |
| ea780 | 26 6c 74 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 | <-.oct.oct_*.dec_int.<-.de |
| ea7a0 | 63 20 64 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 | c.dec_*.hex_int.<-.hex.hex_*. |
| ea7c0 | 0a 6f 78 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 | .ox80_oxBF.<-.[\200-\277].oxF |
| ea7e0 | 34 20 26 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 | 4.<-.'\364'.ox80_ox8F.<-.[ |
| ea800 | 5c 32 30 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 | \200-\217].oxF1_oxF3.<-.[\361 |
| ea820 | 2d 5c 33 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 | -\363].oxF0.<-.'\360'.ox90_0x |
| ea840 | 42 46 20 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 | BF.<-.[\220-\277].oxEE_oxEF.& |
| ea860 | 6c 74 3b 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 | lt;-.[\356-\357].oxED.<-.'\35 |
| ea880 | 35 27 0a 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 | 5'.ox80_ox9F.<-.[\200-\237].o |
| ea8a0 | 78 45 31 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 | xE1_oxEC.<-.[\341-\354].oxE0. |
| ea8c0 | 26 6c 74 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 | <-.'\340'.oxA0_oxBF.<-.[\2 |
| ea8e0 | 34 30 2d 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 | 40-\277].oxC2_oxDF.<-.[\302-\ |
| ea900 | 33 33 37 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 | 337]..#.From.https://lemire.me/b |
| ea920 | 6c 6f 67 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 | log/2018/05/09/how-quickly-can-y |
| ea940 | 6f 75 2d 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 | ou-check-that-a-string-is-valid- |
| ea960 | 75 6e 69 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 | unicode-utf-8/.#.First.Byte..... |
| ea980 | 20 53 65 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 | .Second.Byte.....Third.Byte..... |
| ea9a0 | 20 46 6f 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 | .Fourth.Byte.#.[0x00,0x7F].#.[0x |
| ea9c0 | 43 32 2c 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 | C2,0xDF].....[0x80,0xBF].#....0x |
| ea9e0 | 45 30 20 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 | E0.........[0xA0,0xBF].....[0x80 |
| eaa00 | 2c 30 78 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 | ,0xBF].#.[0xE1,0xEC].....[0x80,0 |
| eaa20 | 78 42 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 44 20 20 | xBF].....[0x80,0xBF].#....0xED.. |
| eaa40 | 20 20 20 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 | .......[0x80,0x9F].....[0x80,0xB |
| eaa60 | 46 5d 0a 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 | F].#.[0xEE,0xEF].....[0x80,0xBF] |
| eaa80 | 20 20 20 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 | .....[0x80,0xBF].#....0xF0...... |
| eaaa0 | 20 20 20 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 | ...[0x90,0xBF].....[0x80,0xBF].. |
| eaac0 | 20 20 20 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 | ...[0x80,0xBF].#.[0xF1,0xF3].... |
| eaae0 | 20 5b 30 78 38 30 2c 30 78 42 46 5d 20 20 20 20 20 5b 30 78 38 30 2c 30 78 42 46 5d 20 20 20 20 | .[0x80,0xBF].....[0x80,0xBF].... |
| eab00 | 20 5b 30 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 | .[0x80,0xBF].#....0xF4.........[ |
| eab20 | 30 78 38 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 | 0x80,0x8F].....[0x80,0xBF].....[ |
| eab40 | 30 78 38 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 | 0x80,0xBF]..mb_utf8_literal.< |
| eab60 | 2d 0a 20 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 | -........oxF4......ox80_ox8F.ox8 |
| eab80 | 30 5f 6f 78 42 46 20 6f 78 38 30 5f 6f 78 42 46 0a 20 20 20 20 20 2f 20 6f 78 46 31 5f 6f 78 46 | 0_oxBF.ox80_oxBF....../.oxF1_oxF |
| eaba0 | 33 20 6f 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 | 3.ox80_oxBF.ox80_oxBF.ox80_oxBF. |
| eabc0 | 20 20 20 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 | ...../.oxF0......ox90_0xBF.ox80_ |
| eabe0 | 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 45 5f 6f 78 45 46 20 | oxBF.ox80_oxBF....../.oxEE_oxEF. |
| eac00 | 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 2f 20 6f 78 45 44 20 | ox80_oxBF.ox80_oxBF....../.oxED. |
| eac20 | 20 20 20 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 | .....ox80_ox9F.ox80_oxBF....../. |
| eac40 | 6f 78 45 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 | oxE1_oxEC.ox80_oxBF.ox80_oxBF... |
| eac60 | 20 20 20 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 | .../.oxE0......oxA0_oxBF.ox80_ox |
| eac80 | 42 46 0a 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 | BF....../.oxC2_oxDF.ox80_oxBF..a |
| eaca0 | 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 6f 74 65 20 26 6c | scii_char_not_nl_slash_squote.&l |
| eacc0 | 74 3b 2d 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 | t;-.[\000-\011\013-\046\050-\133 |
| eace0 | 5c 31 33 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 | \135-\177]..char_escape.....< |
| ead00 | 2d 20 26 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 | -."\\x".hex.hex....../ |
| ead20 | 20 26 71 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 | ."\\u{".hex+."}&q |
| ead40 | 75 6f 74 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 | uot;....../."\\".[nr\\ |
| ead60 | 74 27 26 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 | t'"].char_char.....<-.mb |
| ead80 | 5f 75 74 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 | _utf8_literal....../.char_escape |
| eada0 | 0a 20 20 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 | ....../.ascii_char_not_nl_slash_ |
| eadc0 | 73 71 75 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 | squote..string_char.....<-.ch |
| eade0 | 61 72 5f 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 | ar_escape....../.[^\\"\n].. |
| eae00 | 63 6f 6e 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 | container_doc_comment.<-.('// |
| eae20 | 21 27 20 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 | !'.[^\n]*.[.\n]*.skip)+.doc_comm |
| eae40 | 65 6e 74 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 | ent.<-.('///'.[^\n]*.[.\n]*.s |
| eae60 | 6b 69 70 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 | kip)+.line_comment.<-.'//'.![ |
| eae80 | 21 2f 5d 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 | !/][^\n]*./.'////'.[^\n]*.line_s |
| eaea0 | 74 72 69 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 | tring.<-.("\\\\".[^ |
| eaec0 | 5c 6e 5d 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 | \n]*.[.\n]*)+.skip.<-.([.\n]. |
| eaee0 | 2f 20 6c 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 | /.line_comment)*..CHAR_LITERAL.& |
| eaf00 | 6c 74 3b 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 | lt;-."'".char_char.&qu |
| eaf20 | 6f 74 3b 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 | ot;'".skip.FLOAT.....<-. |
| eaf40 | 26 71 75 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 | "0x".hex_int.".&q |
| eaf60 | 75 6f 74 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 | uot;.hex_int.([pP].[-+]?.dec_int |
| eaf80 | 29 3f 20 73 6b 69 70 0a 20 20 20 20 20 2f 20 20 20 20 20 20 64 65 63 5f 69 6e 74 20 26 71 75 6f | )?.skip....../......dec_int.&quo |
| eafa0 | 74 3b 2e 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 | t;.".dec_int.([eE].[-+]?.de |
| eafc0 | 63 5f 69 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 | c_int)?.skip....../."0x&quo |
| eafe0 | 74 3b 20 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 | t;.hex_int.[pP].[-+]?.dec_int.sk |
| eb000 | 69 70 0a 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 | ip....../......dec_int.[eE].[-+] |
| eb020 | 3f 20 64 65 63 5f 69 6e 74 20 73 6b 69 70 0a 49 4e 54 45 47 45 52 0a 20 20 20 20 26 6c 74 3b 2d | ?.dec_int.skip.INTEGER.....<- |
| eb040 | 20 26 71 75 6f 74 3b 30 62 26 71 75 6f 74 3b 20 62 69 6e 5f 69 6e 74 20 73 6b 69 70 0a 20 20 20 | ."0b".bin_int.skip.... |
| eb060 | 20 20 2f 20 26 71 75 6f 74 3b 30 6f 26 71 75 6f 74 3b 20 6f 63 74 5f 69 6e 74 20 73 6b 69 70 0a | ../."0o".oct_int.skip. |
| eb080 | 20 20 20 20 20 2f 20 26 71 75 6f 74 3b 30 78 26 71 75 6f 74 3b 20 68 65 78 5f 69 6e 74 20 73 6b | ...../."0x".hex_int.sk |
| eb0a0 | 69 70 0a 20 20 20 20 20 2f 20 20 20 20 20 20 64 65 63 5f 69 6e 74 20 20 20 73 6b 69 70 0a 53 54 | ip....../......dec_int...skip.ST |
| eb0c0 | 52 49 4e 47 4c 49 54 45 52 41 4c 53 49 4e 47 4c 45 20 26 6c 74 3b 2d 20 26 71 75 6f 74 3b 5c 26 | RINGLITERALSINGLE.<-."\& |
| eb0e0 | 71 75 6f 74 3b 26 71 75 6f 74 3b 20 73 74 72 69 6e 67 5f 63 68 61 72 2a 20 26 71 75 6f 74 3b 5c | quot;".string_char*."\ |
| eb100 | 26 71 75 6f 74 3b 26 71 75 6f 74 3b 20 73 6b 69 70 0a 53 54 52 49 4e 47 4c 49 54 45 52 41 4c 0a | "".skip.STRINGLITERAL. |
| eb120 | 20 20 20 20 26 6c 74 3b 2d 20 53 54 52 49 4e 47 4c 49 54 45 52 41 4c 53 49 4e 47 4c 45 0a 20 20 | ....<-.STRINGLITERALSINGLE... |
| eb140 | 20 20 20 2f 20 28 6c 69 6e 65 5f 73 74 72 69 6e 67 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | .../.(line_string............... |
| eb160 | 20 20 73 6b 69 70 29 2b 0a 49 44 45 4e 54 49 46 49 45 52 0a 20 20 20 20 26 6c 74 3b 2d 20 21 6b | ..skip)+.IDENTIFIER.....<-.!k |
| eb180 | 65 79 77 6f 72 64 20 5b 41 2d 5a 61 2d 7a 5f 5d 20 5b 41 2d 5a 61 2d 7a 30 2d 39 5f 5d 2a 20 73 | eyword.[A-Za-z_].[A-Za-z0-9_]*.s |
| eb1a0 | 6b 69 70 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 | kip....../."@".STRINGL |
| eb1c0 | 49 54 45 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 | ITERALSINGLE.BUILTINIDENTIFIER.& |
| eb1e0 | 6c 74 3b 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 | lt;-."@"[A-Za-z_][A-Za |
| eb200 | 2d 7a 30 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 | -z0-9_]*.skip...AMPERSAND....... |
| eb220 | 20 20 20 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 | .....<-.'&'......![=].... |
| eb240 | 20 20 73 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 | ..skip.AMPERSANDEQUAL.......< |
| eb260 | 2d 20 27 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 | -.'&='...............skip.AS |
| eb280 | 54 45 52 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 | TERISK.............<-.'*'.... |
| eb2a0 | 20 20 21 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 | ..![*%=|]...skip.ASTERISK2...... |
| eb2c0 | 20 20 20 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 | ......<-.'**'...............s |
| eb2e0 | 6b 69 70 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 | kip.ASTERISKEQUAL........<-.' |
| eb300 | 2a 3d 27 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 6b 69 70 0a 41 53 54 45 52 49 53 4b 50 | *='...............skip.ASTERISKP |
| eb320 | 45 52 43 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 | ERCENT......<-.'*%'.....![=]. |
| eb340 | 20 20 20 20 20 73 6b 69 70 0a 41 53 54 45 52 49 53 4b 50 45 52 43 45 4e 54 45 51 55 41 4c 20 26 | .....skip.ASTERISKPERCENTEQUAL.& |
| eb360 | 6c 74 3b 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 | lt;-.'*%='..............skip.AST |
| eb380 | 45 52 49 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 | ERISKPIPE.........<-.'*|'.... |
| eb3a0 | 20 21 5b 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 | .![=]......skip.ASTERISKPIPEEQUA |
| eb3c0 | 4c 20 20 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 | L....<-.'*|='..............sk |
| eb3e0 | 69 70 0a 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 | ip.CARET................<-.'^ |
| eb400 | 27 20 20 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 | '......![=]......skip.CARETEQUAL |
| eb420 | 20 20 20 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 | ...........<-.'^='........... |
| eb440 | 20 20 20 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 | ....skip.COLON................&l |
| eb460 | 74 3b 2d 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 | t;-.':'................skip.COMM |
| eb480 | 41 20 20 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 | A................<-.','...... |
| eb4a0 | 20 20 20 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 | ..........skip.DOT.............. |
| eb4c0 | 20 20 20 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 | ....<-.'.'......![*.?]....ski |
| eb4e0 | 70 0a 44 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 | p.DOT2.................<-.'.. |
| eb500 | 27 20 20 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 | '.....![.]......skip.DOT3....... |
| eb520 | 20 20 20 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 | ..........<-.'...'........... |
| eb540 | 20 20 20 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 | ...skip.DOTASTERISK..........< |
| eb560 | 3b 2d 20 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 | ;-.'.*'...............skip.DOTQU |
| eb580 | 45 53 54 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 | ESTIONMARK......<-.'.?'...... |
| eb5a0 | 20 20 20 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 | .........skip.EQUAL............. |
| eb5c0 | 20 20 20 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 | ...<-.'='......![>=].....s |
| eb5e0 | 6b 69 70 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 | kip.EQUALEQUAL...........<-.' |
| eb600 | 3d 3d 27 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 | =='...............skip.EQUALRARR |
| eb620 | 4f 57 20 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 | OW..........<-.'=>'....... |
| eb640 | 20 20 20 20 20 20 20 20 73 6b 69 70 0a 45 58 43 4c 41 4d 41 54 49 4f 4e 4d 41 52 4b 20 20 20 20 | ........skip.EXCLAMATIONMARK.... |
| eb660 | 20 20 26 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 | ..<-.'!'......![=]......skip. |
| eb680 | 45 58 43 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 | EXCLAMATIONMARKEQUAL.<-.'!='. |
| eb6a0 | 20 20 20 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 | ..............skip.LARROW....... |
| eb6c0 | 20 20 20 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 | ........<-.'<'......![< |
| eb6e0 | 3d 5d 20 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 | =].....skip.LARROW2............. |
| eb700 | 20 26 6c 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 | .<-.'<<'.....![=|]..... |
| eb720 | 73 6b 69 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 | skip.LARROW2EQUAL.........<-. |
| eb740 | 27 26 6c 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 | '<<='..............skip.LA |
| eb760 | 52 52 4f 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 | RROW2PIPE..........<-.'<&l |
| eb780 | 74 3b 7c 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 | t;|'....![=]......skip.LARROW2PI |
| eb7a0 | 50 45 45 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 | PEEQUAL.....<-.'<<|='.. |
| eb7c0 | 20 20 20 20 20 20 20 20 20 20 20 73 6b 69 70 0a 4c 41 52 52 4f 57 45 51 55 41 4c 20 20 20 20 20 | ...........skip.LARROWEQUAL..... |
| eb7e0 | 20 20 20 20 20 26 6c 74 3b 2d 20 27 26 6c 74 3b 3d 27 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | .....<-.'<='.............. |
| eb800 | 20 73 6b 69 70 0a 4c 42 52 41 43 45 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d | .skip.LBRACE...............<- |
| eb820 | 20 27 7b 27 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 6b 69 70 0a 4c 42 52 41 43 4b 45 | .'{'................skip.LBRACKE |
| eb840 | 54 20 20 20 20 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 5b 27 20 20 20 20 20 20 20 20 20 | T.............<-.'['......... |
| eb860 | 20 20 20 20 20 20 20 73 6b 69 70 0a 4c 50 41 52 45 4e 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | .......skip.LPAREN.............. |
| eb880 | 20 26 6c 74 3b 2d 20 27 28 27 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 6b 69 70 0a 4d | .<-.'('................skip.M |
| eb8a0 | 49 4e 55 53 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 2d 27 20 20 20 | INUS................<-.'-'... |
| eb8c0 | 20 20 20 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 | ...![%=>|]...skip.MINUSEQUAL. |
| eb8e0 | 20 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 2d 3d 27 20 20 20 20 20 20 20 20 20 20 20 20 | ..........<-.'-='............ |
| eb900 | 20 20 20 73 6b 69 70 0a 4d 49 4e 55 53 50 45 52 43 45 4e 54 20 20 20 20 20 20 20 20 20 26 6c 74 | ...skip.MINUSPERCENT.........< |
| eb920 | 3b 2d 20 27 2d 25 27 20 20 20 20 20 21 5b 3d 5d 20 20 20 20 20 20 73 6b 69 70 0a 4d 49 4e 55 53 | ;-.'-%'.....![=]......skip.MINUS |
| eb940 | 50 45 52 43 45 4e 54 45 51 55 41 4c 20 20 20 20 26 6c 74 3b 2d 20 27 2d 25 3d 27 20 20 20 20 20 | PERCENTEQUAL....<-.'-%='..... |
| eb960 | 20 20 20 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 | .........skip.MINUSPIPE......... |
| eb980 | 20 20 20 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 | ...<-.'-|'.....![=]......skip |
| eb9a0 | 0a 4d 49 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 | .MINUSPIPEEQUAL.......<-.'-|= |
| eb9c0 | 27 20 20 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 | '..............skip.MINUSRARROW. |
| eb9e0 | 20 20 20 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 | .........<-.'->'.......... |
| eba00 | 20 20 20 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 | .....skip.PERCENT..............& |
| eba20 | 6c 74 3b 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 | lt;-.'%'......![=]......skip.PER |
| eba40 | 43 45 4e 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 | CENTEQUAL.........<-.'%='.... |
| eba60 | 20 20 20 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 | ...........skip.PIPE............ |
| eba80 | 20 20 20 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 | .....<-.'|'......![|=].....sk |
| ebaa0 | 69 70 0a 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 | ip.PIPE2................<-.'| |
| ebac0 | 7c 27 20 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 | |'...............skip.PIPEEQUAL. |
| ebae0 | 20 20 20 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 | ...........<-.'|='........... |
| ebb00 | 20 20 20 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 | ....skip.PLUS.................&l |
| ebb20 | 74 3b 2d 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 | t;-.'+'......![%+=|]...skip.PLUS |
| ebb40 | 32 20 20 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 | 2................<-.'++'..... |
| ebb60 | 20 20 20 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 | ..........skip.PLUSEQUAL........ |
| ebb80 | 20 20 20 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 | ....<-.'+='...............ski |
| ebba0 | 70 0a 50 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 | p.PLUSPERCENT..........<-.'+% |
| ebbc0 | 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 45 52 43 45 4e 54 | '.....![=]......skip.PLUSPERCENT |
| ebbe0 | 45 51 55 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 | EQUAL.....<-.'+%='........... |
| ebc00 | 20 20 20 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 | ...skip.PLUSPIPE.............< |
| ebc20 | 3b 2d 20 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 | ;-.'+|'.....![=]......skip.PLUSP |
| ebc40 | 49 50 45 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 | IPEEQUAL........<-.'+|='..... |
| ebc60 | 20 20 20 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 | .........skip.LETTERC........... |
| ebc80 | 20 20 20 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 | ...<-.'c'................skip |
| ebca0 | 0a 51 55 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 | .QUESTIONMARK.........<-.'?'. |
| ebcc0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 6b 69 70 0a 52 41 52 52 4f 57 20 20 20 20 20 20 | ...............skip.RARROW...... |
| ebce0 | 20 20 20 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 | .........<-.'>'......![> |
| ebd00 | 3b 3d 5d 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 | ;=].....skip.RARROW2............ |
| ebd20 | 20 20 26 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 | ..<-.'>>'.....![=]..... |
| ebd40 | 20 73 6b 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 | .skip.RARROW2EQUAL.........<- |
| ebd60 | 20 27 26 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 | .'>>='..............skip.R |
| ebd80 | 41 52 52 4f 57 45 51 55 41 4c 20 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 26 67 74 3b 3d | ARROWEQUAL..........<-.'>= |
| ebda0 | 27 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 6b 69 70 0a 52 42 52 41 43 45 20 20 20 20 20 | '...............skip.RBRACE..... |
| ebdc0 | 20 20 20 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 | ..........<-.'}'............. |
| ebde0 | 20 20 20 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 | ...skip.RBRACKET.............< |
| ebe00 | 3b 2d 20 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 | ;-.']'................skip.RPARE |
| ebe20 | 4e 20 20 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 | N...............<-.')'....... |
| ebe40 | 20 20 20 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 | .........skip.SEMICOLON......... |
| ebe60 | 20 20 20 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 | ...<-.';'................skip |
| ebe80 | 0a 53 4c 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 | .SLASH................<-.'/'. |
| ebea0 | 20 20 20 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 | .....![=]......skip.SLASHEQUAL.. |
| ebec0 | 20 20 20 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 | .........<-.'/='............. |
| ebee0 | 20 20 73 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 | ..skip.TILDE................< |
| ebf00 | 2d 20 27 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 | -.'~'................skip..end_o |
| ebf20 | 66 5f 77 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 | f_word.<-.![a-zA-Z0-9_].skip. |
| ebf40 | 4b 45 59 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 | KEYWORD_addrspace...<-.'addrs |
| ebf60 | 70 61 63 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 | pace'...end_of_word.KEYWORD_alig |
| ebf80 | 6e 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 61 6c 69 67 6e 27 20 20 20 20 20 20 20 65 6e 64 5f | n.......<-.'align'.......end_ |
| ebfa0 | 6f 66 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 61 6c 6c 6f 77 7a 65 72 6f 20 20 20 26 6c 74 3b | of_word.KEYWORD_allowzero...< |
| ebfc0 | 2d 20 27 61 6c 6c 6f 77 7a 65 72 6f 27 20 20 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 57 | -.'allowzero'...end_of_word.KEYW |
| ebfe0 | 4f 52 44 5f 61 6e 64 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 61 6e 64 27 20 20 20 20 20 | ORD_and.........<-.'and'..... |
| ec000 | 20 20 20 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 61 6e 79 66 72 61 6d 65 | ....end_of_word.KEYWORD_anyframe |
| ec020 | 20 20 20 20 26 6c 74 3b 2d 20 27 61 6e 79 66 72 61 6d 65 27 20 20 20 20 65 6e 64 5f 6f 66 5f 77 | ....<-.'anyframe'....end_of_w |
| ec040 | 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 61 6e 79 74 79 70 65 20 20 20 20 20 26 6c 74 3b 2d 20 27 61 | ord.KEYWORD_anytype.....<-.'a |
| ec060 | 6e 79 74 79 70 65 27 20 20 20 20 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f | nytype'.....end_of_word.KEYWORD_ |
| ec080 | 61 73 6d 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 61 73 6d 27 20 20 20 20 20 20 20 20 20 | asm.........<-.'asm'......... |
| ec0a0 | 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 20 20 20 20 20 | end_of_word.KEYWORD_break....... |
| ec0c0 | 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 77 6f 72 64 0a | <-.'break'.......end_of_word. |
| ec0e0 | 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 63 61 6c 6c 63 | KEYWORD_callconv....<-.'callc |
| ec100 | 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 5f 63 61 74 63 | onv'....end_of_word.KEYWORD_catc |
| ec120 | 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 20 65 6e 64 5f | h.......<-.'catch'.......end_ |
| ec140 | 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 20 26 6c 74 3b | of_word.KEYWORD_comptime....< |
| ec160 | 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 0a 4b 45 59 57 | -.'comptime'....end_of_word.KEYW |
| ec180 | 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 74 27 20 20 20 | ORD_const.......<-.'const'... |
| ec1a0 | 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 74 69 6e 75 65 | ....end_of_word.KEYWORD_continue |
| ec1c0 | 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 5f 6f 66 5f 77 | ....<-.'continue'....end_of_w |
| ec1e0 | 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 3b 2d 20 27 64 | ord.KEYWORD_defer.......<-.'d |
| ec200 | 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 57 4f 52 44 5f | efer'.......end_of_word.KEYWORD_ |
| ec220 | 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 20 20 20 20 20 | else........<-.'else'........ |
| ec240 | 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 20 20 20 20 20 | end_of_word.KEYWORD_enum........ |
| ec260 | 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 77 6f 72 64 0a | <-.'enum'........end_of_word. |
| ec280 | 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 65 72 72 64 65 | KEYWORD_errdefer....<-.'errde |
| ec2a0 | 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 5f 65 72 72 6f | fer'....end_of_word.KEYWORD_erro |
| ec2c0 | 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 20 65 6e 64 5f | r.......<-.'error'.......end_ |
| ec2e0 | 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 20 26 6c 74 3b | of_word.KEYWORD_export......< |
| ec300 | 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 0a 4b 45 59 57 | -.'export'......end_of_word.KEYW |
| ec320 | 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 72 6e 27 20 20 | ORD_extern......<-.'extern'.. |
| ec340 | 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 20 20 20 20 20 | ....end_of_word.KEYWORD_fn...... |
| ec360 | 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 5f 6f 66 5f 77 | ....<-.'fn'..........end_of_w |
| ec380 | 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 3b 2d 20 27 66 | ord.KEYWORD_for.........<-.'f |
| ec3a0 | 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 57 4f 52 44 5f | or'.........end_of_word.KEYWORD_ |
| ec3c0 | 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 20 20 20 20 20 | if..........<-.'if'.......... |
| ec3e0 | 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 20 20 20 20 20 | end_of_word.KEYWORD_inline...... |
| ec400 | 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 77 6f 72 64 0a | <-.'inline'......end_of_word. |
| ec420 | 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 6e 6f 61 6c 69 | KEYWORD_noalias.....<-.'noali |
| ec440 | 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 5f 6e 6f 73 75 | as'.....end_of_word.KEYWORD_nosu |
| ec460 | 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 20 65 6e 64 5f | spend...<-.'nosuspend'...end_ |
| ec480 | 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 20 26 6c 74 3b | of_word.KEYWORD_noinline....< |
| ec4a0 | 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 0a 4b 45 59 57 | -.'noinline'....end_of_word.KEYW |
| ec4c0 | 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 75 65 27 20 20 | ORD_opaque......<-.'opaque'.. |
| ec4e0 | 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 20 20 20 20 20 | ....end_of_word.KEYWORD_or...... |
| ec500 | 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 5f 6f 66 5f 77 | ....<-.'or'..........end_of_w |
| ec520 | 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 3b 2d 20 27 6f | ord.KEYWORD_orelse......<-.'o |
| ec540 | 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 57 4f 52 44 5f | relse'......end_of_word.KEYWORD_ |
| ec560 | 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 20 20 20 20 20 | packed......<-.'packed'...... |
| ec580 | 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 20 20 20 20 20 | end_of_word.KEYWORD_pub......... |
| ec5a0 | 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 77 6f 72 64 0a | <-.'pub'.........end_of_word. |
| ec5c0 | 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 72 65 73 75 6d | KEYWORD_resume......<-.'resum |
| ec5e0 | 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 72 65 74 75 | e'......end_of_word.KEYWORD_retu |
| ec600 | 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 20 65 6e 64 5f | rn......<-.'return'......end_ |
| ec620 | 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 20 26 6c 74 3b | of_word.KEYWORD_linksection.< |
| ec640 | 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 0a 4b 45 59 57 | -.'linksection'.end_of_word.KEYW |
| ec660 | 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 63 74 27 20 20 | ORD_struct......<-.'struct'.. |
| ec680 | 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 70 65 6e 64 20 | ....end_of_word.KEYWORD_suspend. |
| ec6a0 | 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 5f 6f 66 5f 77 | ....<-.'suspend'.....end_of_w |
| ec6c0 | 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 3b 2d 20 27 73 | ord.KEYWORD_switch......<-.'s |
| ec6e0 | 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 57 4f 52 44 5f | witch'......end_of_word.KEYWORD_ |
| ec700 | 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 20 20 20 20 20 | test........<-.'test'........ |
| ec720 | 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 6f 63 61 6c 20 | end_of_word.KEYWORD_threadlocal. |
| ec740 | 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 77 6f 72 64 0a | <-.'threadlocal'.end_of_word. |
| ec760 | 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 74 72 79 27 20 | KEYWORD_try.........<-.'try'. |
| ec780 | 20 20 20 20 20 20 20 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 75 6e 69 6f | ........end_of_word.KEYWORD_unio |
| ec7a0 | 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 20 65 6e 64 5f | n.......<-.'union'.......end_ |
| ec7c0 | 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 20 26 6c 74 3b | of_word.KEYWORD_unreachable.< |
| ec7e0 | 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 0a 4b 45 59 57 | -.'unreachable'.end_of_word.KEYW |
| ec800 | 4f 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 | ORD_var.........<-.'var'..... |
| ec820 | 20 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 | ....end_of_word.KEYWORD_volatile |
| ec840 | 20 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 | ....<-.'volatile'....end_of_w |
| ec860 | 6f 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 | ord.KEYWORD_while.......<-.'w |
| ec880 | 68 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 | hile'.......end_of_word..keyword |
| ec8a0 | 20 26 6c 74 3b 2d 20 4b 45 59 57 4f 52 44 5f 61 64 64 72 73 70 61 63 65 20 2f 20 4b 45 59 57 4f | .<-.KEYWORD_addrspace./.KEYWO |
| ec8c0 | 52 44 5f 61 6c 69 67 6e 20 2f 20 4b 45 59 57 4f 52 44 5f 61 6c 6c 6f 77 7a 65 72 6f 20 2f 20 4b | RD_align./.KEYWORD_allowzero./.K |
| ec8e0 | 45 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 | EYWORD_and........../.KEYWORD_an |
| ec900 | 79 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 | yframe./.KEYWORD_anytype./.KEYWO |
| ec920 | 52 44 5f 61 73 6d 0a 20 20 20 20 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f 62 72 65 61 6b 20 | RD_asm........../.KEYWORD_break. |
| ec940 | 2f 20 4b 45 59 57 4f 52 44 5f 63 61 6c 6c 63 6f 6e 76 20 2f 20 4b 45 59 57 4f 52 44 5f 63 61 74 | /.KEYWORD_callconv./.KEYWORD_cat |
| ec960 | 63 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 | ch........../.KEYWORD_comptime./ |
| ec980 | 20 4b 45 59 57 4f 52 44 5f 63 6f 6e 73 74 20 2f 20 4b 45 59 57 4f 52 44 5f 63 6f 6e 74 69 6e 75 | .KEYWORD_const./.KEYWORD_continu |
| ec9a0 | 65 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 | e./.KEYWORD_defer........../.KEY |
| ec9c0 | 57 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 | WORD_else./.KEYWORD_enum./.KEYWO |
| ec9e0 | 52 44 5f 65 72 72 64 65 66 65 72 20 2f 20 4b 45 59 57 4f 52 44 5f 65 72 72 6f 72 20 2f 20 4b 45 | RD_errdefer./.KEYWORD_error./.KE |
| eca00 | 59 57 4f 52 44 5f 65 78 70 6f 72 74 0a 20 20 20 20 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f | YWORD_export........../.KEYWORD_ |
| eca20 | 65 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 | extern./.KEYWORD_fn./.KEYWORD_fo |
| eca40 | 72 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 | r./.KEYWORD_if........../.KEYWOR |
| eca60 | 44 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 | D_inline./.KEYWORD_noalias./.KEY |
| eca80 | 57 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 | WORD_nosuspend./.KEYWORD_noinlin |
| ecaa0 | 65 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 | e........../.KEYWORD_opaque./.KE |
| ecac0 | 59 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 | YWORD_or./.KEYWORD_orelse./.KEYW |
| ecae0 | 4f 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 | ORD_packed........../.KEYWORD_pu |
| ecb00 | 62 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 | b./.KEYWORD_resume./.KEYWORD_ret |
| ecb20 | 75 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 | urn./.KEYWORD_linksection....... |
| ecb40 | 20 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 | .../.KEYWORD_struct./.KEYWORD_su |
| ecb60 | 73 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 | spend./.KEYWORD_switch./.KEYWORD |
| ecb80 | 5f 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 | _test........../.KEYWORD_threadl |
| ecba0 | 6f 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 | ocal./.KEYWORD_try./.KEYWORD_uni |
| ecbc0 | 6f 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 | on./.KEYWORD_unreachable........ |
| ecbe0 | 20 20 2f 20 4b 45 59 57 4f 52 44 5f 76 61 72 20 2f 20 4b 45 59 57 4f 52 44 5f 76 6f 6c 61 74 69 | ../.KEYWORD_var./.KEYWORD_volati |
| ecc00 | 6c 65 20 2f 20 4b 45 59 57 4f 52 44 5f 77 68 69 6c 65 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c | le./.KEYWORD_while</code></pre>< |
| ecc20 | 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 3d 22 5a 65 | /figure>..............<h3.id="Ze |
| ecc40 | 6e 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 5a 65 6e 22 3e 5a 65 6e 3c 2f 61 3e 20 3c 61 | n"><a.href="#toc-Zen">Zen</a>.<a |
| ecc60 | 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 5a 65 6e 22 3e c2 a7 3c 2f 61 3e 3c | .class="hdr".href="#Zen">..</a>< |
| ecc80 | 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 43 6f 6d | /h3>........<ul>.........<li>Com |
| ecca0 | 6d 75 6e 69 63 61 74 65 20 69 6e 74 65 6e 74 20 70 72 65 63 69 73 65 6c 79 2e 3c 2f 6c 69 3e 0a | municate.intent.precisely.</li>. |
| eccc0 | 20 20 20 20 20 20 20 20 3c 6c 69 3e 45 64 67 65 20 63 61 73 65 73 20 6d 61 74 74 65 72 2e 3c 2f | ........<li>Edge.cases.matter.</ |
| ecce0 | 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 46 61 76 6f 72 20 72 65 61 64 69 6e 67 20 63 6f | li>.........<li>Favor.reading.co |
| ecd00 | 64 65 20 6f 76 65 72 20 77 72 69 74 69 6e 67 20 63 6f 64 65 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 | de.over.writing.code.</li>...... |
| ecd20 | 20 20 20 3c 6c 69 3e 4f 6e 6c 79 20 6f 6e 65 20 6f 62 76 69 6f 75 73 20 77 61 79 20 74 6f 20 64 | ...<li>Only.one.obvious.way.to.d |
| ecd40 | 6f 20 74 68 69 6e 67 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 52 75 6e 74 69 | o.things.</li>.........<li>Runti |
| ecd60 | 6d 65 20 63 72 61 73 68 65 73 20 61 72 65 20 62 65 74 74 65 72 20 74 68 61 6e 20 62 75 67 73 2e | me.crashes.are.better.than.bugs. |
| ecd80 | 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 43 6f 6d 70 69 6c 65 20 65 72 72 6f 72 73 | </li>.........<li>Compile.errors |
| ecda0 | 20 61 72 65 20 62 65 74 74 65 72 20 74 68 61 6e 20 72 75 6e 74 69 6d 65 20 63 72 61 73 68 65 73 | .are.better.than.runtime.crashes |
| ecdc0 | 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 49 6e 63 72 65 6d 65 6e 74 61 6c 20 69 | .</li>.........<li>Incremental.i |
| ecde0 | 6d 70 72 6f 76 65 6d 65 6e 74 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 41 76 | mprovements.</li>.........<li>Av |
| ece00 | 6f 69 64 20 6c 6f 63 61 6c 20 6d 61 78 69 6d 75 6d 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 | oid.local.maximums.</li>........ |
| ece20 | 20 3c 6c 69 3e 52 65 64 75 63 65 20 74 68 65 20 61 6d 6f 75 6e 74 20 6f 6e 65 20 6d 75 73 74 20 | .<li>Reduce.the.amount.one.must. |
| ece40 | 72 65 6d 65 6d 62 65 72 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 46 6f 63 75 73 | remember.</li>.........<li>Focus |
| ece60 | 20 6f 6e 20 63 6f 64 65 20 72 61 74 68 65 72 20 74 68 61 6e 20 73 74 79 6c 65 2e 3c 2f 6c 69 3e | .on.code.rather.than.style.</li> |
| ece80 | 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 52 65 73 6f 75 72 63 65 20 61 6c 6c 6f 63 61 74 69 6f 6e | .........<li>Resource.allocation |
| ecea0 | 20 6d 61 79 20 66 61 69 6c 3b 20 72 65 73 6f 75 72 63 65 20 64 65 61 6c 6c 6f 63 61 74 69 6f 6e | .may.fail;.resource.deallocation |
| ecec0 | 20 6d 75 73 74 20 73 75 63 63 65 65 64 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e | .must.succeed.</li>.........<li> |
| ecee0 | 4d 65 6d 6f 72 79 20 69 73 20 61 20 72 65 73 6f 75 72 63 65 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 | Memory.is.a.resource.</li>...... |
| ecf00 | 20 20 20 3c 6c 69 3e 54 6f 67 65 74 68 65 72 20 77 65 20 73 65 72 76 65 20 74 68 65 20 75 73 65 | ...<li>Together.we.serve.the.use |
| ecf20 | 72 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 | rs.</li>.......</ul>............ |
| ecf40 | 20 20 0a 20 20 20 20 20 20 3c 2f 6d 61 69 6e 3e 3c 2f 64 69 76 3e 0a 20 20 20 20 3c 2f 64 69 76 | .........</main></div>.....</div |
| ecf60 | 3e 0a 20 20 3c 2f 62 6f 64 79 3e 0a 3c 2f 68 74 6d 6c 3e 0a 50 4b 01 02 14 00 14 00 00 00 00 00 | >...</body>.</html>.PK.......... |
| ecf80 | 00 00 21 52 6f 61 ab 2c 14 00 00 00 14 00 00 00 08 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ..!Roa.,........................ |
| ecfa0 | 00 00 6d 69 6d 65 74 79 70 65 50 4b 01 02 14 00 14 00 00 00 00 00 00 00 21 52 6f 92 d0 0a fc 00 | ..mimetypePK............!Ro..... |
| ecfc0 | 00 00 fc 00 00 00 16 00 00 00 00 00 00 00 00 00 00 00 00 00 3a 00 00 00 4d 45 54 41 2d 49 4e 46 | ....................:...META-INF |
| ecfe0 | 2f 63 6f 6e 74 61 69 6e 65 72 2e 78 6d 6c 50 4b 01 02 14 00 14 00 00 00 00 00 00 00 21 52 9d d1 | /container.xmlPK............!R.. |
| ed000 | 4b 04 a9 02 00 00 a9 02 00 00 11 00 00 00 00 00 00 00 00 00 00 00 00 00 6a 01 00 00 4f 45 42 50 | K.......................j...OEBP |
| ed020 | 53 2f 63 6f 6e 74 65 6e 74 2e 6f 70 66 50 4b 01 02 14 00 14 00 00 00 00 00 00 00 21 52 0c 6a f4 | S/content.opfPK............!R.j. |
| ed040 | 9d 88 01 00 00 88 01 00 00 0f 00 00 00 00 00 00 00 00 00 00 00 00 00 42 04 00 00 4f 45 42 50 53 | .......................B...OEBPS |
| ed060 | 2f 6e 61 76 2e 78 68 74 6d 6c 50 4b 01 02 14 00 14 00 00 00 00 00 00 00 21 52 8b e8 b0 a5 4e c9 | /nav.xhtmlPK............!R....N. |
| ed080 | 0e 00 4e c9 0e 00 11 00 00 00 00 00 00 00 00 00 00 00 00 00 f7 05 00 00 4f 45 42 50 53 2f 69 6e | ..N.....................OEBPS/in |
| ed0a0 | 64 65 78 2e 78 68 74 6d 6c 50 4b 05 06 00 00 00 00 05 00 05 00 35 01 00 00 74 cf 0e 00 00 00 | dex.xhtmlPK..........5...t..... |