| 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 10 36 a9 69 a7 02 00 00 | ontainer>.PK..........!R.6.i.... |
| 0180 | a7 02 00 00 11 00 00 00 4f 45 42 50 53 2f 63 6f 6e 74 65 6e 74 2e 6f 70 66 3c 3f 78 6d 6c 20 76 | ........OEBPS/content.opf<?xml.v |
| 01a0 | 65 72 73 69 6f 6e 3d 22 31 2e 30 22 20 65 6e 63 6f 64 69 6e 67 3d 22 75 74 66 2d 38 22 3f 3e 0a | ersion="1.0".encoding="utf-8"?>. |
| 01c0 | 3c 70 61 63 6b 61 67 65 20 78 6d 6c 6e 73 3d 22 68 74 74 70 3a 2f 2f 77 77 77 2e 69 64 70 66 2e | <package.xmlns="http://www.idpf. |
| 01e0 | 6f 72 67 2f 32 30 30 37 2f 6f 70 66 22 20 76 65 72 73 69 6f 6e 3d 22 33 2e 30 22 20 75 6e 69 71 | org/2007/opf".version="3.0".uniq |
| 0200 | 75 65 2d 69 64 65 6e 74 69 66 69 65 72 3d 22 70 75 62 2d 69 64 22 3e 0a 20 20 3c 6d 65 74 61 64 | ue-identifier="pub-id">...<metad |
| 0220 | 61 74 61 20 78 6d 6c 6e 73 3a 64 63 3d 22 68 74 74 70 3a 2f 2f 70 75 72 6c 2e 6f 72 67 2f 64 63 | ata.xmlns:dc="http://purl.org/dc |
| 0240 | 2f 65 6c 65 6d 65 6e 74 73 2f 31 2e 31 2f 22 3e 0a 20 20 20 20 3c 64 63 3a 69 64 65 6e 74 69 66 | /elements/1.1/">.....<dc:identif |
| 0260 | 69 65 72 20 69 64 3d 22 70 75 62 2d 69 64 22 3e 75 72 6e 3a 7a 69 67 6c 61 6e 67 2d 64 6f 63 73 | ier.id="pub-id">urn:ziglang-docs |
| 0280 | 3a 30 2e 37 2e 31 3c 2f 64 63 3a 69 64 65 6e 74 69 66 69 65 72 3e 0a 20 20 20 20 3c 64 63 3a 74 | :0.7.1</dc:identifier>.....<dc:t |
| 02a0 | 69 74 6c 65 3e 5a 69 67 20 4c 61 6e 67 75 61 67 65 20 52 65 66 65 72 65 6e 63 65 20 28 30 2e 37 | itle>Zig.Language.Reference.(0.7 |
| 02c0 | 2e 31 29 3c 2f 64 63 3a 74 69 74 6c 65 3e 0a 20 20 20 20 3c 64 63 3a 6c 61 6e 67 75 61 67 65 3e | .1)</dc:title>.....<dc:language> |
| 02e0 | 65 6e 3c 2f 64 63 3a 6c 61 6e 67 75 61 67 65 3e 0a 20 20 20 20 3c 6d 65 74 61 20 70 72 6f 70 65 | en</dc:language>.....<meta.prope |
| 0300 | 72 74 79 3d 22 64 63 74 65 72 6d 73 3a 6d 6f 64 69 66 69 65 64 22 3e 32 30 32 31 2d 30 31 2d 30 | rty="dcterms:modified">2021-01-0 |
| 0320 | 31 54 30 30 3a 30 30 3a 30 30 5a 3c 2f 6d 65 74 61 3e 0a 20 20 3c 2f 6d 65 74 61 64 61 74 61 3e | 1T00:00:00Z</meta>...</metadata> |
| 0340 | 0a 20 20 3c 6d 61 6e 69 66 65 73 74 3e 0a 20 20 20 20 3c 69 74 65 6d 20 69 64 3d 22 6e 61 76 22 | ...<manifest>.....<item.id="nav" |
| 0360 | 20 68 72 65 66 3d 22 6e 61 76 2e 78 68 74 6d 6c 22 20 6d 65 64 69 61 2d 74 79 70 65 3d 22 61 70 | .href="nav.xhtml".media-type="ap |
| 0380 | 70 6c 69 63 61 74 69 6f 6e 2f 78 68 74 6d 6c 2b 78 6d 6c 22 20 70 72 6f 70 65 72 74 69 65 73 3d | plication/xhtml+xml".properties= |
| 03a0 | 22 6e 61 76 22 2f 3e 0a 20 20 20 20 3c 69 74 65 6d 20 69 64 3d 22 69 6e 64 65 78 22 20 68 72 65 | "nav"/>.....<item.id="index".hre |
| 03c0 | 66 3d 22 69 6e 64 65 78 2e 78 68 74 6d 6c 22 20 6d 65 64 69 61 2d 74 79 70 65 3d 22 61 70 70 6c | f="index.xhtml".media-type="appl |
| 03e0 | 69 63 61 74 69 6f 6e 2f 78 68 74 6d 6c 2b 78 6d 6c 22 2f 3e 0a 20 20 3c 2f 6d 61 6e 69 66 65 73 | ication/xhtml+xml"/>...</manifes |
| 0400 | 74 3e 0a 20 20 3c 73 70 69 6e 65 3e 0a 20 20 20 20 3c 69 74 65 6d 72 65 66 20 69 64 72 65 66 3d | t>...<spine>.....<itemref.idref= |
| 0420 | 22 69 6e 64 65 78 22 2f 3e 0a 20 20 3c 2f 73 70 69 6e 65 3e 0a 3c 2f 70 61 63 6b 61 67 65 3e 0a | "index"/>...</spine>.</package>. |
| 0440 | 50 4b 03 04 14 00 00 00 00 00 00 00 21 52 a5 56 90 d3 86 01 00 00 86 01 00 00 0f 00 00 00 4f 45 | PK..........!R.V..............OE |
| 0460 | 42 50 53 2f 6e 61 76 2e 78 68 74 6d 6c 3c 3f 78 6d 6c 20 76 65 72 73 69 6f 6e 3d 22 31 2e 30 22 | BPS/nav.xhtml<?xml.version="1.0" |
| 0480 | 20 65 6e 63 6f 64 69 6e 67 3d 22 75 74 66 2d 38 22 3f 3e 0a 3c 68 74 6d 6c 20 78 6d 6c 6e 73 3d | .encoding="utf-8"?>.<html.xmlns= |
| 04a0 | 22 68 74 74 70 3a 2f 2f 77 77 77 2e 77 33 2e 6f 72 67 2f 31 39 39 39 2f 78 68 74 6d 6c 22 20 78 | "http://www.w3.org/1999/xhtml".x |
| 04c0 | 6d 6c 6e 73 3a 65 70 75 62 3d 22 68 74 74 70 3a 2f 2f 77 77 77 2e 69 64 70 66 2e 6f 72 67 2f 32 | mlns:epub="http://www.idpf.org/2 |
| 04e0 | 30 30 37 2f 6f 70 73 22 20 6c 61 6e 67 3d 22 65 6e 22 3e 0a 20 20 3c 68 65 61 64 3e 3c 74 69 74 | 007/ops".lang="en">...<head><tit |
| 0500 | 6c 65 3e 5a 69 67 20 4c 61 6e 67 75 61 67 65 20 52 65 66 65 72 65 6e 63 65 20 28 30 2e 37 2e 31 | le>Zig.Language.Reference.(0.7.1 |
| 0520 | 29 3c 2f 74 69 74 6c 65 3e 3c 2f 68 65 61 64 3e 0a 20 20 3c 62 6f 64 79 3e 0a 20 20 20 20 3c 6e | )</title></head>...<body>.....<n |
| 0540 | 61 76 20 65 70 75 62 3a 74 79 70 65 3d 22 74 6f 63 22 20 69 64 3d 22 74 6f 63 22 3e 0a 20 20 20 | av.epub:type="toc".id="toc">.... |
| 0560 | 20 20 20 3c 68 31 3e 43 6f 6e 74 65 6e 74 73 3c 2f 68 31 3e 0a 20 20 20 20 20 20 3c 6f 6c 3e 0a | ...<h1>Contents</h1>.......<ol>. |
| 0580 | 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 69 6e 64 65 78 2e 78 68 74 6d 6c | ........<li><a.href="index.xhtml |
| 05a0 | 22 3e 5a 69 67 20 4c 61 6e 67 75 61 67 65 20 52 65 66 65 72 65 6e 63 65 20 28 30 2e 37 2e 31 29 | ">Zig.Language.Reference.(0.7.1) |
| 05c0 | 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 6f 6c 3e 0a 20 20 20 20 3c 2f 6e 61 76 3e | </a></li>.......</ol>.....</nav> |
| 05e0 | 0a 20 20 3c 2f 62 6f 64 79 3e 0a 3c 2f 68 74 6d 6c 3e 0a 50 4b 03 04 14 00 00 00 00 00 00 00 21 | ...</body>.</html>.PK..........! |
| 0600 | 52 e9 d4 57 20 3b 9e 0b 00 3b 9e 0b 00 11 00 00 00 4f 45 42 50 53 2f 69 6e 64 65 78 2e 78 68 74 | R..W.;...;.......OEBPS/index.xht |
| 0620 | 6d 6c 3c 3f 78 6d 6c 20 76 65 72 73 69 6f 6e 3d 22 31 2e 30 22 20 65 6e 63 6f 64 69 6e 67 3d 22 | ml<?xml.version="1.0".encoding=" |
| 0640 | 75 74 66 2d 38 22 3f 3e 0a 0a 3c 68 74 6d 6c 20 78 6d 6c 6e 73 3d 22 68 74 74 70 3a 2f 2f 77 77 | utf-8"?>..<html.xmlns="http://ww |
| 0660 | 77 2e 77 33 2e 6f 72 67 2f 31 39 39 39 2f 78 68 74 6d 6c 22 20 6c 61 6e 67 3d 22 65 6e 22 3e 0a | w.w3.org/1999/xhtml".lang="en">. |
| 0680 | 20 20 3c 68 65 61 64 3e 0a 20 20 20 20 3c 6d 65 74 61 20 63 68 61 72 73 65 74 3d 22 75 74 66 2d | ..<head>.....<meta.charset="utf- |
| 06a0 | 38 22 2f 3e 0a 20 20 20 20 3c 6d 65 74 61 20 6e 61 6d 65 3d 22 76 69 65 77 70 6f 72 74 22 20 63 | 8"/>.....<meta.name="viewport".c |
| 06c0 | 6f 6e 74 65 6e 74 3d 22 77 69 64 74 68 3d 64 65 76 69 63 65 2d 77 69 64 74 68 2c 20 69 6e 69 74 | ontent="width=device-width,.init |
| 06e0 | 69 61 6c 2d 73 63 61 6c 65 3d 31 2e 30 22 2f 3e 0a 20 20 20 20 3c 74 69 74 6c 65 3e 44 6f 63 75 | ial-scale=1.0"/>.....<title>Docu |
| 0700 | 6d 65 6e 74 61 74 69 6f 6e 20 2d 20 54 68 65 20 5a 69 67 20 50 72 6f 67 72 61 6d 6d 69 6e 67 20 | mentation.-.The.Zig.Programming. |
| 0720 | 4c 61 6e 67 75 61 67 65 3c 2f 74 69 74 6c 65 3e 0a 20 20 20 20 3c 6c 69 6e 6b 20 72 65 6c 3d 22 | Language</title>.....<link.rel=" |
| 0740 | 69 63 6f 6e 22 20 68 72 65 66 3d 22 64 61 74 61 3a 69 6d 61 67 65 2f 70 6e 67 3b 62 61 73 65 36 | icon".href="data:image/png;base6 |
| 0760 | 34 2c 69 56 42 4f 52 77 30 4b 47 67 6f 41 41 41 41 4e 53 55 68 45 55 67 41 41 41 42 41 41 41 41 | 4,iVBORw0KGgoAAAANSUhEUgAAABAAAA |
| 0780 | 41 51 43 41 59 41 41 41 41 66 38 2f 39 68 41 41 41 41 67 6b 6c 45 51 56 52 34 41 57 4d 59 57 75 | AQCAYAAAAf8/9hAAAAgklEQVR4AWMYWu |
| 07a0 | 44 37 45 6c 6c 4a 49 4d 34 47 34 67 34 67 35 6f 49 4a 2f 6f 64 68 4f 4a 38 77 54 6f 4f 78 53 54 | D7EllJIM4G4g4g5oIJ/odhOJ8wToOxST |
| 07c0 | 58 67 4e 78 44 48 6f 65 69 42 4d 66 41 34 2b 77 47 53 68 6a 79 59 4f 43 6b 47 2f 49 47 71 57 51 | XgNxDHoeiBMfA4+wGShjyYOCkG/IGqWQ |
| 07e0 | 7a 69 45 7a 59 41 6f 55 41 65 69 46 39 44 35 55 2b 44 78 45 67 31 34 44 52 55 37 6a 57 49 54 35 | ziEzYAoUAeiF9D5U+DxEg14DRU7jWIT5 |
| 0800 | 49 42 49 4f 64 43 78 66 2b 41 2b 43 51 5a 41 41 6f 6f 70 45 42 37 51 4a 77 42 43 42 77 48 69 69 | IBIOdCxf+A+CQZAAoopEB7QJwBCBwHii |
| 0820 | 70 38 55 59 6d 52 64 72 41 6c 44 70 49 4d 67 41 70 77 51 5a 4e 6e 4e 69 69 35 44 71 30 4d 42 67 | p8UYmRdrAlDpIMgApwQZNnNii5Dq0MBg |
| 0840 | 43 78 78 79 63 42 6e 77 45 64 2b 77 41 41 41 41 42 4a 52 55 35 45 72 6b 4a 67 67 67 3d 3d 22 2f | CxxycBnwEd+wAAAABJRU5ErkJggg=="/ |
| 0860 | 3e 0a 20 20 20 20 3c 73 74 79 6c 65 3e 0a 20 20 20 20 20 20 62 6f 64 79 7b 0a 20 20 20 20 20 20 | >.....<style>.......body{....... |
| 0880 | 20 20 66 6f 6e 74 2d 66 61 6d 69 6c 79 3a 20 73 79 73 74 65 6d 2d 75 69 2c 20 2d 61 70 70 6c 65 | ..font-family:.system-ui,.-apple |
| 08a0 | 2d 73 79 73 74 65 6d 2c 20 52 6f 62 6f 74 6f 2c 20 22 53 65 67 6f 65 20 55 49 22 2c 20 73 61 6e | -system,.Roboto,."Segoe.UI",.san |
| 08c0 | 73 2d 73 65 72 69 66 3b 0a 20 20 20 20 20 20 20 20 6d 61 72 67 69 6e 3a 20 30 3b 0a 20 20 20 20 | s-serif;.........margin:.0;..... |
| 08e0 | 20 20 7d 0a 20 20 20 20 20 20 61 3a 6e 6f 74 28 3a 68 6f 76 65 72 29 20 7b 0a 20 20 20 20 20 20 | ..}.......a:not(:hover).{....... |
| 0900 | 20 20 74 65 78 74 2d 64 65 63 6f 72 61 74 69 6f 6e 3a 20 6e 6f 6e 65 3b 0a 20 20 20 20 20 20 7d | ..text-decoration:.none;.......} |
| 0920 | 0a 20 20 20 20 20 20 74 61 62 6c 65 2c 20 74 68 2c 20 74 64 20 7b 0a 20 20 20 20 20 20 20 20 62 | .......table,.th,.td.{.........b |
| 0940 | 6f 72 64 65 72 2d 63 6f 6c 6c 61 70 73 65 3a 20 63 6f 6c 6c 61 70 73 65 3b 0a 20 20 20 20 20 20 | order-collapse:.collapse;....... |
| 0960 | 20 20 62 6f 72 64 65 72 3a 20 31 70 78 20 73 6f 6c 69 64 20 67 72 65 79 3b 0a 20 20 20 20 20 20 | ..border:.1px.solid.grey;....... |
| 0980 | 7d 0a 20 20 20 20 20 20 74 68 2c 20 74 64 20 7b 0a 20 20 20 20 20 20 20 20 70 61 64 64 69 6e 67 | }.......th,.td.{.........padding |
| 09a0 | 3a 20 30 2e 31 65 6d 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 2e 74 30 5f 31 2c 20 2e 74 | :.0.1em;.......}........t0_1,..t |
| 09c0 | 33 37 2c 20 2e 74 33 37 5f 31 20 7b 0a 20 20 20 20 20 20 20 20 66 6f 6e 74 2d 77 65 69 67 68 74 | 37,..t37_1.{.........font-weight |
| 09e0 | 3a 20 62 6f 6c 64 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 2e 74 32 5f 30 20 7b 0a 20 20 | :.bold;.......}........t2_0.{... |
| 0a00 | 20 20 20 20 20 20 63 6f 6c 6f 72 3a 20 67 72 65 79 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 20 | ......color:.grey;.......}...... |
| 0a20 | 20 2e 74 33 31 5f 31 20 7b 0a 20 20 20 20 20 20 20 20 63 6f 6c 6f 72 3a 20 72 65 64 3b 0a 20 20 | ..t31_1.{.........color:.red;... |
| 0a40 | 20 20 20 20 7d 0a 20 20 20 20 20 20 2e 74 33 32 5f 31 20 7b 0a 20 20 20 20 20 20 20 20 63 6f 6c | ....}........t32_1.{.........col |
| 0a60 | 6f 72 3a 20 67 72 65 65 6e 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 2e 74 33 36 5f 31 20 | or:.green;.......}........t36_1. |
| 0a80 | 7b 0a 20 20 20 20 20 20 20 20 63 6f 6c 6f 72 3a 20 23 30 30 38 36 62 33 3b 0a 20 20 20 20 20 20 | {.........color:.#0086b3;....... |
| 0aa0 | 7d 0a 20 20 20 20 20 20 2e 66 69 6c 65 20 7b 0a 20 20 20 20 20 20 20 20 74 65 78 74 2d 64 65 63 | }........file.{.........text-dec |
| 0ac0 | 6f 72 61 74 69 6f 6e 3a 20 75 6e 64 65 72 6c 69 6e 65 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 | oration:.underline;.......}..... |
| 0ae0 | 20 20 70 72 65 2c 63 6f 64 65 20 7b 0a 20 20 20 20 20 20 20 20 66 6f 6e 74 2d 73 69 7a 65 3a 20 | ..pre,code.{.........font-size:. |
| 0b00 | 31 32 70 74 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 70 72 65 20 3e 20 63 6f 64 65 20 7b | 12pt;.......}.......pre.>.code.{ |
| 0b20 | 0a 20 20 20 20 20 20 20 20 64 69 73 70 6c 61 79 3a 20 62 6c 6f 63 6b 3b 0a 20 20 20 20 20 20 20 | .........display:.block;........ |
| 0b40 | 20 6f 76 65 72 66 6c 6f 77 3a 20 61 75 74 6f 3b 0a 20 20 20 20 20 20 20 20 70 61 64 64 69 6e 67 | .overflow:.auto;.........padding |
| 0b60 | 3a 20 30 2e 35 65 6d 3b 0a 20 20 20 20 20 20 20 20 63 6f 6c 6f 72 3a 20 23 33 33 33 3b 0a 20 20 | :.0.5em;.........color:.#333;... |
| 0b80 | 20 20 20 20 20 20 62 61 63 6b 67 72 6f 75 6e 64 3a 20 23 66 38 66 38 66 38 3b 0a 20 20 20 20 20 | ......background:.#f8f8f8;...... |
| 0ba0 | 20 7d 0a 20 20 20 20 20 20 2e 74 61 62 6c 65 2d 77 72 61 70 70 65 72 20 7b 0a 20 20 20 20 20 20 | .}........table-wrapper.{....... |
| 0bc0 | 20 20 77 69 64 74 68 3a 20 31 30 30 25 3b 0a 20 20 20 20 20 20 20 20 6f 76 65 72 66 6c 6f 77 2d | ..width:.100%;.........overflow- |
| 0be0 | 79 3a 20 61 75 74 6f 3b 0a 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 20 20 2e 74 6f 6b 2d 6b 77 20 | y:.auto;.......}.........tok-kw. |
| 0c00 | 7b 0a 20 20 20 20 20 20 20 20 20 20 63 6f 6c 6f 72 3a 20 23 33 33 33 3b 0a 20 20 20 20 20 20 20 | {...........color:.#333;........ |
| 0c20 | 20 20 20 66 6f 6e 74 2d 77 65 69 67 68 74 3a 20 62 6f 6c 64 3b 0a 20 20 20 20 20 20 7d 0a 20 20 | ...font-weight:.bold;.......}... |
| 0c40 | 20 20 20 20 2e 74 6f 6b 2d 73 74 72 20 7b 0a 20 20 20 20 20 20 20 20 20 20 63 6f 6c 6f 72 3a 20 | .....tok-str.{...........color:. |
| 0c60 | 23 64 31 34 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 2e 74 6f 6b 2d 62 75 69 6c 74 69 6e | #d14;.......}........tok-builtin |
| 0c80 | 20 7b 0a 20 20 20 20 20 20 20 20 20 20 63 6f 6c 6f 72 3a 20 23 30 30 38 36 62 33 3b 0a 20 20 20 | .{...........color:.#0086b3;.... |
| 0ca0 | 20 20 20 7d 0a 20 20 20 20 20 20 2e 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 20 7b 0a 20 20 20 20 20 20 | ...}........tok-comment.{....... |
| 0cc0 | 20 20 20 20 63 6f 6c 6f 72 3a 20 23 37 37 37 3b 0a 20 20 20 20 20 20 20 20 20 20 66 6f 6e 74 2d | ....color:.#777;...........font- |
| 0ce0 | 73 74 79 6c 65 3a 20 69 74 61 6c 69 63 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 2e 74 6f | style:.italic;.......}........to |
| 0d00 | 6b 2d 66 6e 20 7b 0a 20 20 20 20 20 20 20 20 20 20 63 6f 6c 6f 72 3a 20 23 39 30 30 3b 0a 20 20 | k-fn.{...........color:.#900;... |
| 0d20 | 20 20 20 20 20 20 20 20 66 6f 6e 74 2d 77 65 69 67 68 74 3a 20 62 6f 6c 64 3b 0a 20 20 20 20 20 | ........font-weight:.bold;...... |
| 0d40 | 20 7d 0a 20 20 20 20 20 20 2e 74 6f 6b 2d 6e 75 6c 6c 20 7b 0a 20 20 20 20 20 20 20 20 20 20 63 | .}........tok-null.{...........c |
| 0d60 | 6f 6c 6f 72 3a 20 23 30 30 38 30 38 30 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 2e 74 6f | olor:.#008080;.......}........to |
| 0d80 | 6b 2d 6e 75 6d 62 65 72 20 7b 0a 20 20 20 20 20 20 20 20 20 20 63 6f 6c 6f 72 3a 20 23 30 30 38 | k-number.{...........color:.#008 |
| 0da0 | 30 38 30 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 2e 74 6f 6b 2d 74 79 70 65 20 7b 0a 20 | 080;.......}........tok-type.{.. |
| 0dc0 | 20 20 20 20 20 20 20 20 20 63 6f 6c 6f 72 3a 20 23 34 35 38 3b 0a 20 20 20 20 20 20 20 20 20 20 | .........color:.#458;........... |
| 0de0 | 66 6f 6e 74 2d 77 65 69 67 68 74 3a 20 62 6f 6c 64 3b 0a 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 | font-weight:.bold;.......}...... |
| 0e00 | 20 20 23 6d 61 69 6e 2d 77 72 61 70 70 65 72 20 7b 0a 20 20 20 20 20 20 20 20 64 69 73 70 6c 61 | ..#main-wrapper.{.........displa |
| 0e20 | 79 3a 20 66 6c 65 78 3b 0a 20 20 20 20 20 20 20 20 66 6c 65 78 2d 64 69 72 65 63 74 69 6f 6e 3a | y:.flex;.........flex-direction: |
| 0e40 | 20 63 6f 6c 75 6d 6e 3b 0a 20 20 20 20 20 20 20 20 68 65 69 67 68 74 3a 20 31 30 30 76 68 3b 0a | .column;.........height:.100vh;. |
| 0e60 | 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 20 20 23 63 6f 6e 74 65 6e 74 73 2d 77 72 61 70 70 65 72 | ......}........#contents-wrapper |
| 0e80 | 20 7b 0a 20 20 20 20 20 20 20 20 66 6c 65 78 2d 67 72 6f 77 3a 20 31 3b 0a 20 20 20 20 20 20 20 | .{.........flex-grow:.1;........ |
| 0ea0 | 20 70 61 64 64 69 6e 67 3a 20 30 20 32 65 6d 3b 0a 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 20 20 | .padding:.0.2em;.......}........ |
| 0ec0 | 23 63 6f 6e 74 65 6e 74 73 20 7b 0a 20 20 20 20 20 20 20 20 6d 61 78 2d 77 69 64 74 68 3a 20 36 | #contents.{.........max-width:.6 |
| 0ee0 | 30 65 6d 3b 0a 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 | 0em;.........margin:.auto;...... |
| 0f00 | 20 7d 0a 0a 20 20 20 20 20 20 23 74 6f 63 20 7b 0a 20 20 20 20 20 20 20 20 70 61 64 64 69 6e 67 | .}........#toc.{.........padding |
| 0f20 | 3a 20 30 20 31 65 6d 3b 0a 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 20 20 40 6d 65 64 69 61 20 73 | :.0.1em;.......}........@media.s |
| 0f40 | 63 72 65 65 6e 20 61 6e 64 20 28 6d 69 6e 2d 77 69 64 74 68 3a 20 31 30 32 35 70 78 29 20 7b 0a | creen.and.(min-width:.1025px).{. |
| 0f60 | 20 20 20 20 20 20 20 20 23 6d 61 69 6e 2d 77 72 61 70 70 65 72 20 7b 0a 20 20 20 20 20 20 20 20 | ........#main-wrapper.{......... |
| 0f80 | 20 20 20 20 66 6c 65 78 2d 64 69 72 65 63 74 69 6f 6e 3a 20 72 6f 77 3b 0a 20 20 20 20 20 20 20 | ....flex-direction:.row;........ |
| 0fa0 | 20 7d 0a 20 20 20 20 20 20 20 20 23 63 6f 6e 74 65 6e 74 73 2d 77 72 61 70 70 65 72 2c 20 23 74 | .}.........#contents-wrapper,.#t |
| 0fc0 | 6f 63 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 6f 76 65 72 66 6c 6f 77 3a 20 61 75 74 6f 3b | oc.{.............overflow:.auto; |
| 0fe0 | 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 20 20 68 31 20 61 2c 20 | .........}.......}........h1.a,. |
| 1000 | 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 20 20 | h2.a,.h3.a,.h4.a,.h5.a.{........ |
| 1020 | 20 74 65 78 74 2d 64 65 63 6f 72 61 74 69 6f 6e 3a 20 6e 6f 6e 65 3b 0a 20 20 20 20 20 20 20 20 | .text-decoration:.none;......... |
| 1040 | 63 6f 6c 6f 72 3a 20 23 33 33 33 3b 0a 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 20 20 61 2e 68 64 | color:.#333;.......}........a.hd |
| 1060 | 72 20 7b 0a 20 20 20 20 20 20 20 20 76 69 73 69 62 69 6c 69 74 79 3a 20 68 69 64 64 65 6e 3b 0a | r.{.........visibility:.hidden;. |
| 1080 | 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 68 31 3a 68 6f 76 65 72 20 3e 20 61 2e 68 64 72 2c 20 | ......}.......h1:hover.>.a.hdr,. |
| 10a0 | 68 32 3a 68 6f 76 65 72 20 3e 20 61 2e 68 64 72 2c 20 68 33 3a 68 6f 76 65 72 20 3e 20 61 2e 68 | h2:hover.>.a.hdr,.h3:hover.>.a.h |
| 10c0 | 64 72 2c 20 68 34 3a 68 6f 76 65 72 20 3e 20 61 2e 68 64 72 2c 20 68 35 3a 68 6f 76 65 72 20 3e | dr,.h4:hover.>.a.hdr,.h5:hover.> |
| 10e0 | 20 61 2e 68 64 72 20 7b 0a 20 20 20 20 20 20 20 20 76 69 73 69 62 69 6c 69 74 79 3a 20 76 69 73 | .a.hdr.{.........visibility:.vis |
| 1100 | 69 62 6c 65 3b 0a 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 20 20 40 6d 65 64 69 61 20 28 70 72 65 | ible;.......}........@media.(pre |
| 1120 | 66 65 72 73 2d 63 6f 6c 6f 72 2d 73 63 68 65 6d 65 3a 20 64 61 72 6b 29 20 7b 0a 20 20 20 20 20 | fers-color-scheme:.dark).{...... |
| 1140 | 20 20 20 62 6f 64 79 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 | ...body{.............background- |
| 1160 | 63 6f 6c 6f 72 3a 23 31 31 31 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6c 6f 72 3a 20 23 | color:#111;.............color:.# |
| 1180 | 62 62 62 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 61 20 7b 0a 20 20 20 20 20 | bbb;.........}.........a.{...... |
| 11a0 | 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 20 20 7d 0a 20 20 | .......color:.#88f;.........}... |
| 11c0 | 20 20 20 20 20 20 74 61 62 6c 65 2c 20 74 68 2c 20 74 64 20 7b 0a 20 20 20 20 20 20 20 20 20 20 | ......table,.th,.td.{........... |
| 11e0 | 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 20 7d 0a | ..border-color:.grey;.........}. |
| 1200 | 20 20 20 20 20 20 20 20 2e 74 32 5f 30 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6c 6f | .........t2_0.{.............colo |
| 1220 | 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 2e 74 33 31 5f | r:.grey;.........}..........t31_ |
| 1240 | 31 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6c 6f 72 3a 20 72 65 64 3b 0a 20 20 20 20 | 1.{.............color:.red;..... |
| 1260 | 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 2e 74 33 32 5f 31 20 7b 0a 20 20 20 20 20 20 20 20 20 | ....}..........t32_1.{.......... |
| 1280 | 20 20 20 63 6f 6c 6f 72 3a 20 67 72 65 65 6e 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 | ...color:.green;.........}...... |
| 12a0 | 20 20 20 2e 74 33 36 5f 31 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6c 6f 72 3a 20 23 | ....t36_1.{.............color:.# |
| 12c0 | 30 30 38 36 62 33 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 70 72 65 20 3e 20 | 0086b3;.........}.........pre.>. |
| 12e0 | 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 23 63 63 63 3b 0a | code.{.............color:.#ccc;. |
| 1300 | 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 32 32 3b 0a 20 20 | ............background:.#222;... |
| 1320 | 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 20 20 20 20 20 | ......}..........tok-kw.{....... |
| 1340 | 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 7d 0a 20 20 20 | ......color:.#eee;.........}.... |
| 1360 | 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 20 63 6f 6c 6f | ......tok-str.{.............colo |
| 1380 | 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 2e 74 6f 6b 2d | r:.#2e5;.........}..........tok- |
| 13a0 | 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 3a 20 23 66 66 | builtin.{.............color:.#ff |
| 13c0 | 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 6b 2d 63 6f 6d | 894c;.........}..........tok-com |
| 13e0 | 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 61 61 37 3b 0a | ment.{.............color:.#aa7;. |
| 1400 | 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 0a 20 20 20 20 | ........}..........tok-fn.{..... |
| 1420 | 20 20 20 20 20 20 20 20 63 6f 6c 6f 72 3a 20 23 65 33 33 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 | ........color:.#e33;.........}.. |
| 1440 | 20 20 20 20 20 20 20 2e 74 6f 6b 2d 6e 75 6c 6c 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 63 | ........tok-null.{.............c |
| 1460 | 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 20 20 20 20 | olor:.#ff8080;.........}........ |
| 1480 | 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 20 20 63 6f 6c 6f 72 | ..tok-number.{.............color |
| 14a0 | 3a 20 23 66 66 38 30 38 30 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 2e 74 6f | :.#ff8080;.........}..........to |
| 14c0 | 6b 2d 74 79 70 65 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6c 6f 72 3a 20 23 36 38 66 | k-type.{.............color:.#68f |
| 14e0 | 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 68 31 20 61 2c 20 68 32 20 61 2c 20 | ;.........}.........h1.a,.h2.a,. |
| 1500 | 68 33 20 61 2c 20 68 34 20 61 2c 20 68 35 20 61 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 63 | h3.a,.h4.a,.h5.a.{.............c |
| 1520 | 6f 6c 6f 72 3a 20 23 61 61 61 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 7d 0a 20 20 | olor:.#aaa;.........}.......}... |
| 1540 | 20 20 3c 2f 73 74 79 6c 65 3e 0a 20 20 3c 2f 68 65 61 64 3e 0a 20 20 3c 62 6f 64 79 3e 0a 20 20 | ..</style>...</head>...<body>... |
| 1560 | 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 20 20 | ..<div.id="main-wrapper">....... |
| 1580 | 3c 64 69 76 20 69 64 3d 22 74 6f 63 22 3e 0a 20 20 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 | <div.id="toc">.........<a.href=" |
| 15a0 | 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 |
| 15c0 | 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 68 72 65 66 3d 22 68 | n/0.1.1/">0.1.1</a>.|.<a.href="h |
| 15e0 | 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 |
| 1600 | 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 72 65 66 3d 22 68 74 | /0.2.0/">0.2.0</a>.|.<a.href="ht |
| 1620 | 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/ |
| 1640 | 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 65 66 3d 22 68 74 74 | 0.3.0/">0.3.0</a>.|.<a.href="htt |
| 1660 | 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 30 | ps://ziglang.org/documentation/0 |
| 1680 | 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 66 3d 22 68 74 74 70 | .4.0/">0.4.0</a>.|.<a.href="http |
| 16a0 | 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 30 2e | s://ziglang.org/documentation/0. |
| 16c0 | 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 3d 22 68 74 74 70 73 | 5.0/">0.5.0</a>.|.<a.href="https |
| 16e0 | 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 30 2e 36 | ://ziglang.org/documentation/0.6 |
| 1700 | 2e 30 2f 22 3e 30 2e 36 2e 30 3c 2f 61 3e 20 7c 0a 30 2e 37 2e 31 20 7c 0a 3c 61 20 68 72 65 66 | .0/">0.6.0</a>.|.0.7.1.|.<a.href |
| 1720 | 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 |
| 1740 | 69 6f 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 | ion/0.8.1/">0.8.1</a>.|.<a.href= |
| 1760 | 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 |
| 1780 | 6f 6e 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 | on/0.9.1/">0.9.1</a>.|.<a.href=" |
| 17a0 | 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 |
| 17c0 | 6e 2f 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 | n/0.10.1/">0.10.1</a>.|.<a.href= |
| 17e0 | 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 |
| 1800 | 6f 6e 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 | on/0.11.0/">0.11.0</a>.|.<a.href |
| 1820 | 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 |
| 1840 | 69 6f 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 | ion/0.12.1/">0.12.1</a>.|.<a.hre |
| 1860 | 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 |
| 1880 | 74 69 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 | tion/0.13.0/">0.13.0</a>.|.<a.hr |
| 18a0 | 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 |
| 18c0 | 61 74 69 6f 6e 2f 30 2e 31 34 2e 31 2f 22 3e 30 2e 31 34 2e 31 3c 2f 61 3e 20 7c 0a 3c 61 20 68 | ation/0.14.1/">0.14.1</a>.|.<a.h |
| 18e0 | 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 |
| 1900 | 74 61 74 69 6f 6e 2f 30 2e 31 35 2e 32 2f 22 3e 30 2e 31 35 2e 32 3c 2f 61 3e 20 7c 0a 3c 61 20 | tation/0.15.2/">0.15.2</a>.|.<a. |
| 1920 | 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 |
| 1940 | 6e 74 61 74 69 6f 6e 2f 30 2e 31 36 2e 30 2f 22 3e 30 2e 31 36 2e 30 3c 2f 61 3e 20 7c 0a 3c 61 | ntation/0.16.0/">0.16.0</a>.|.<a |
| 1960 | 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 |
| 1980 | 65 6e 74 61 74 69 6f 6e 2f 6d 61 73 74 65 72 2f 22 3e 6d 61 73 74 65 72 3c 2f 61 3e 0a 20 20 20 | entation/master/">master</a>.... |
| 19a0 | 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 20 20 0a | .....<h1>Contents</h1>.......... |
| 19c0 | 0a 20 20 20 20 3c 75 6c 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><a.id="toc |
| 19e0 | 2d 49 6e 74 72 6f 64 75 63 74 69 6f 6e 22 20 68 72 65 66 3d 22 23 49 6e 74 72 6f 64 75 63 74 69 | -Introduction".href="#Introducti |
| 1a00 | 6f 6e 22 3e 49 6e 74 72 6f 64 75 63 74 69 6f 6e 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | on">Introduction</a></li>....... |
| 1a20 | 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 48 65 6c 6c 6f 2d 57 6f 72 6c 64 22 20 68 72 | ..<li><a.id="toc-Hello-World".hr |
| 1a40 | 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 3c 2f 61 | ef="#Hello-World">Hello.World</a |
| 1a60 | 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 |
| 1a80 | 6d 6d 65 6e 74 73 22 20 68 72 65 66 3d 22 23 43 6f 6d 6d 65 6e 74 73 22 3e 43 6f 6d 6d 65 6e 74 | mments".href="#Comments">Comment |
| 1aa0 | 73 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c | s</a>.........<ul>.............< |
| 1ac0 | 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 44 6f 63 2d 63 6f 6d 6d 65 6e 74 73 22 20 68 72 65 66 | li><a.id="toc-Doc-comments".href |
| 1ae0 | 3d 22 23 44 6f 63 2d 63 6f 6d 6d 65 6e 74 73 22 3e 44 6f 63 20 63 6f 6d 6d 65 6e 74 73 3c 2f 61 | ="#Doc-comments">Doc.comments</a |
| 1b00 | 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 |
| 1b20 | 63 2d 54 6f 70 2d 4c 65 76 65 6c 2d 44 6f 63 2d 43 6f 6d 6d 65 6e 74 73 22 20 68 72 65 66 3d 22 | c-Top-Level-Doc-Comments".href=" |
| 1b40 | 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 54 6f 70 2d 4c 65 76 | #Top-Level-Doc-Comments">Top-Lev |
| 1b60 | 65 6c 20 44 6f 63 20 43 6f 6d 6d 65 6e 74 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 | el.Doc.Comments</a></li>........ |
| 1b80 | 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 |
| 1ba0 | 6f 63 2d 56 61 6c 75 65 73 22 20 68 72 65 66 3d 22 23 56 61 6c 75 65 73 22 3e 56 61 6c 75 65 73 | oc-Values".href="#Values">Values |
| 1bc0 | 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 |
| 1be0 | 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 50 72 69 6d 69 74 69 76 65 2d 54 79 70 65 73 22 20 68 72 | i><a.id="toc-Primitive-Types".hr |
| 1c00 | 65 66 3d 22 23 50 72 69 6d 69 74 69 76 65 2d 54 79 70 65 73 22 3e 50 72 69 6d 69 74 69 76 65 20 | ef="#Primitive-Types">Primitive. |
| 1c20 | 54 79 70 65 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c | Types</a></li>.............<li>< |
| 1c40 | 61 20 69 64 3d 22 74 6f 63 2d 50 72 69 6d 69 74 69 76 65 2d 56 61 6c 75 65 73 22 20 68 72 65 66 | a.id="toc-Primitive-Values".href |
| 1c60 | 3d 22 23 50 72 69 6d 69 74 69 76 65 2d 56 61 6c 75 65 73 22 3e 50 72 69 6d 69 74 69 76 65 20 56 | ="#Primitive-Values">Primitive.V |
| 1c80 | 61 6c 75 65 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c | alues</a></li>.............<li>< |
| 1ca0 | 61 20 69 64 3d 22 74 6f 63 2d 53 74 72 69 6e 67 2d 4c 69 74 65 72 61 6c 73 2d 61 6e 64 2d 43 68 | a.id="toc-String-Literals-and-Ch |
| 1cc0 | 61 72 61 63 74 65 72 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 | aracter-Literals".href="#String- |
| 1ce0 | 4c 69 74 65 72 61 6c 73 2d 61 6e 64 2d 43 68 61 72 61 63 74 65 72 2d 4c 69 74 65 72 61 6c 73 22 | Literals-and-Character-Literals" |
| 1d00 | 3e 53 74 72 69 6e 67 20 4c 69 74 65 72 61 6c 73 20 61 6e 64 20 43 68 61 72 61 63 74 65 72 20 4c | >String.Literals.and.Character.L |
| 1d20 | 69 74 65 72 61 6c 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 | iterals</a>.............<ul>.... |
| 1d40 | 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 45 73 63 61 | .............<li><a.id="toc-Esca |
| 1d60 | 70 65 2d 53 65 71 75 65 6e 63 65 73 22 20 68 72 65 66 3d 22 23 45 73 63 61 70 65 2d 53 65 71 75 | pe-Sequences".href="#Escape-Sequ |
| 1d80 | 65 6e 63 65 73 22 3e 45 73 63 61 70 65 20 53 65 71 75 65 6e 63 65 73 3c 2f 61 3e 3c 2f 6c 69 3e | ences">Escape.Sequences</a></li> |
| 1da0 | 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- |
| 1dc0 | 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 20 68 72 65 66 3d | Multiline-String-Literals".href= |
| 1de0 | 22 23 4d 75 6c 74 69 6c 69 6e 65 2d 53 74 72 69 6e 67 2d 4c 69 74 65 72 61 6c 73 22 3e 4d 75 6c | "#Multiline-String-Literals">Mul |
| 1e00 | 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 3c 2f 6c 69 3e 0a | tiline.String.Literals</a></li>. |
| 1e20 | 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 20 | ............</ul></li>.......... |
| 1e40 | 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 41 73 73 69 67 6e 6d 65 6e 74 22 20 68 72 | ...<li><a.id="toc-Assignment".hr |
| 1e60 | 65 66 3d 22 23 41 73 73 69 67 6e 6d 65 6e 74 22 3e 41 73 73 69 67 6e 6d 65 6e 74 3c 2f 61 3e 0a | ef="#Assignment">Assignment</a>. |
| 1e80 | 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ............<ul>................ |
| 1ea0 | 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 75 6e 64 65 66 69 6e 65 64 22 20 68 72 65 66 3d | .<li><a.id="toc-undefined".href= |
| 1ec0 | 22 23 75 6e 64 65 66 69 6e 65 64 22 3e 75 6e 64 65 66 69 6e 65 64 3c 2f 61 3e 3c 2f 6c 69 3e 0a | "#undefined">undefined</a></li>. |
| 1ee0 | 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 3c | ............</ul></li>.........< |
| 1f00 | 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 |
| 1f20 | 2d 56 61 72 69 61 62 6c 65 73 22 20 68 72 65 66 3d 22 23 56 61 72 69 61 62 6c 65 73 22 3e 56 61 | -Variables".href="#Variables">Va |
| 1f40 | 72 69 61 62 6c 65 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 | riables</a>.........<ul>........ |
| 1f60 | 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 47 6c 6f 62 61 6c 2d 56 61 72 69 61 | .....<li><a.id="toc-Global-Varia |
| 1f80 | 62 6c 65 73 22 20 68 72 65 66 3d 22 23 47 6c 6f 62 61 6c 2d 56 61 72 69 61 62 6c 65 73 22 3e 47 | bles".href="#Global-Variables">G |
| 1fa0 | 6c 6f 62 61 6c 20 56 61 72 69 61 62 6c 65 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 | lobal.Variables</a></li>........ |
| 1fc0 | 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 54 68 72 65 61 64 2d 4c 6f 63 61 6c | .....<li><a.id="toc-Thread-Local |
| 1fe0 | 2d 56 61 72 69 61 62 6c 65 73 22 20 68 72 65 66 3d 22 23 54 68 72 65 61 64 2d 4c 6f 63 61 6c 2d | -Variables".href="#Thread-Local- |
| 2000 | 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 61 62 6c 65 | Variables">Thread.Local.Variable |
| 2020 | 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 | s</a></li>.............<li><a.id |
| 2040 | 3d 22 74 6f 63 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 4c 6f | ="toc-Local-Variables".href="#Lo |
| 2060 | 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 2f | cal-Variables">Local.Variables</ |
| 2080 | 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>...... |
| 20a0 | 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 49 6e 74 65 67 65 72 73 22 20 68 72 65 66 | ...<li><a.id="toc-Integers".href |
| 20c0 | 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 0a 20 20 20 20 20 20 | ="#Integers">Integers</a>....... |
| 20e0 | 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 |
| 2100 | 63 2d 49 6e 74 65 67 65 72 2d 4c 69 74 65 72 61 6c 73 22 20 68 72 65 66 3d 22 23 49 6e 74 65 67 | c-Integer-Literals".href="#Integ |
| 2120 | 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 3c 2f 61 | er-Literals">Integer.Literals</a |
| 2140 | 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 |
| 2160 | 63 2d 52 75 6e 74 69 6d 65 2d 49 6e 74 65 67 65 72 2d 56 61 6c 75 65 73 22 20 68 72 65 66 3d 22 | c-Runtime-Integer-Values".href=" |
| 2180 | 23 52 75 6e 74 69 6d 65 2d 49 6e 74 65 67 65 72 2d 56 61 6c 75 65 73 22 3e 52 75 6e 74 69 6d 65 | #Runtime-Integer-Values">Runtime |
| 21a0 | 20 49 6e 74 65 67 65 72 20 56 61 6c 75 65 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 | .Integer.Values</a></li>........ |
| 21c0 | 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 |
| 21e0 | 6f 63 2d 46 6c 6f 61 74 73 22 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 73 22 3e 46 6c 6f 61 74 73 | oc-Floats".href="#Floats">Floats |
| 2200 | 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 |
| 2220 | 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 46 6c 6f 61 74 2d 4c 69 74 65 72 61 6c 73 22 20 68 72 65 | i><a.id="toc-Float-Literals".hre |
| 2240 | 66 3d 22 23 46 6c 6f 61 74 2d 4c 69 74 65 72 61 6c 73 22 3e 46 6c 6f 61 74 20 4c 69 74 65 72 61 | f="#Float-Literals">Float.Litera |
| 2260 | 6c 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 | ls</a></li>.............<li><a.i |
| 2280 | 64 3d 22 74 6f 63 2d 46 6c 6f 61 74 69 6e 67 2d 50 6f 69 6e 74 2d 4f 70 65 72 61 74 69 6f 6e 73 | d="toc-Floating-Point-Operations |
| 22a0 | 22 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 69 6e 67 2d 50 6f 69 6e 74 2d 4f 70 65 72 61 74 69 6f | ".href="#Floating-Point-Operatio |
| 22c0 | 6e 73 22 3e 46 6c 6f 61 74 69 6e 67 20 50 6f 69 6e 74 20 4f 70 65 72 61 74 69 6f 6e 73 3c 2f 61 | ns">Floating.Point.Operations</a |
| 22e0 | 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>....... |
| 2300 | 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 4f 70 65 72 61 74 6f 72 73 22 20 68 72 65 66 | ..<li><a.id="toc-Operators".href |
| 2320 | 3d 22 23 4f 70 65 72 61 74 6f 72 73 22 3e 4f 70 65 72 61 74 6f 72 73 3c 2f 61 3e 0a 20 20 20 20 | ="#Operators">Operators</a>..... |
| 2340 | 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 | ....<ul>.............<li><a.id=" |
| 2360 | 74 6f 63 2d 54 61 62 6c 65 2d 6f 66 2d 4f 70 65 72 61 74 6f 72 73 22 20 68 72 65 66 3d 22 23 54 | toc-Table-of-Operators".href="#T |
| 2380 | 61 62 6c 65 2d 6f 66 2d 4f 70 65 72 61 74 6f 72 73 22 3e 54 61 62 6c 65 20 6f 66 20 4f 70 65 72 | able-of-Operators">Table.of.Oper |
| 23a0 | 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 6c 69 3e 3c | ators</a></li>.............<li>< |
| 23c0 | 61 20 69 64 3d 22 74 6f 63 2d 50 72 65 63 65 64 65 6e 63 65 22 20 68 72 65 66 3d 22 23 50 72 65 | a.id="toc-Precedence".href="#Pre |
| 23e0 | 63 65 64 65 6e 63 65 22 3e 50 72 65 63 65 64 65 6e 63 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 | cedence">Precedence</a></li>.... |
| 2400 | 20 20 20 20 20 3c 2f 75 6c 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 | .....</ul></li>.........<li><a.i |
| 2420 | 64 3d 22 74 6f 63 2d 41 72 72 61 79 73 22 20 68 72 65 66 3d 22 23 41 72 72 61 79 73 22 3e 41 72 | d="toc-Arrays".href="#Arrays">Ar |
| 2440 | 72 61 79 73 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 | rays</a>.........<ul>........... |
| 2460 | 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 4c 69 73 74 2d | ..<li><a.id="toc-Anonymous-List- |
| 2480 | 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 4c 69 73 74 2d | Literals".href="#Anonymous-List- |
| 24a0 | 4c 69 74 65 72 61 6c 73 22 3e 41 6e 6f 6e 79 6d 6f 75 73 20 4c 69 73 74 20 4c 69 74 65 72 61 6c | Literals">Anonymous.List.Literal |
| 24c0 | 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 | s</a></li>.............<li><a.id |
| 24e0 | 3d 22 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 20 68 | ="toc-Multidimensional-Arrays".h |
| 2500 | 72 65 66 3d 22 23 4d 75 6c 74 69 64 69 6d 65 6e 73 69 6f 6e 61 6c 2d 41 72 72 61 79 73 22 3e 4d | ref="#Multidimensional-Arrays">M |
| 2520 | 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 3c 2f 6c 69 3e 0a | ultidimensional.Arrays</a></li>. |
| 2540 | 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 53 65 6e 74 69 | ............<li><a.id="toc-Senti |
| 2560 | 6e 65 6c 2d 54 65 72 6d 69 6e 61 74 65 64 2d 41 72 72 61 79 73 22 20 68 72 65 66 3d 22 23 53 65 | nel-Terminated-Arrays".href="#Se |
| 2580 | 6e 74 69 6e 65 6c 2d 54 65 72 6d 69 6e 61 74 65 64 2d 41 72 72 61 79 73 22 3e 53 65 6e 74 69 6e | ntinel-Terminated-Arrays">Sentin |
| 25a0 | 65 6c 2d 54 65 72 6d 69 6e 61 74 65 64 20 41 72 72 61 79 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 | el-Terminated.Arrays</a></li>... |
| 25c0 | 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. |
| 25e0 | 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" |
| 2600 | 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>....... |
| 2620 | 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 53 49 4d 44 22 20 68 72 65 66 3d | ......<li><a.id="toc-SIMD".href= |
| 2640 | 22 23 53 49 4d 44 22 3e 53 49 4d 44 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 2f | "#SIMD">SIMD</a></li>.........</ |
| 2660 | 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- |
| 2680 | 50 6f 69 6e 74 65 72 73 22 20 68 72 65 66 3d 22 23 50 6f 69 6e 74 65 72 73 22 3e 50 6f 69 6e 74 | Pointers".href="#Pointers">Point |
| 26a0 | 65 72 73 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 | ers</a>.........<ul>............ |
| 26c0 | 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 76 6f 6c 61 74 69 6c 65 22 20 68 72 65 66 3d 22 | .<li><a.id="toc-volatile".href=" |
| 26e0 | 23 76 6f 6c 61 74 69 6c 65 22 3e 76 6f 6c 61 74 69 6c 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 | #volatile">volatile</a></li>.... |
| 2700 | 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 41 6c 69 67 6e 6d 65 6e | .........<li><a.id="toc-Alignmen |
| 2720 | 74 22 20 68 72 65 66 3d 22 23 41 6c 69 67 6e 6d 65 6e 74 22 3e 41 6c 69 67 6e 6d 65 6e 74 3c 2f | t".href="#Alignment">Alignment</ |
| 2740 | 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 |
| 2760 | 6f 63 2d 61 6c 6c 6f 77 7a 65 72 6f 22 20 68 72 65 66 3d 22 23 61 6c 6c 6f 77 7a 65 72 6f 22 3e | oc-allowzero".href="#allowzero"> |
| 2780 | 61 6c 6c 6f 77 7a 65 72 6f 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c | allowzero</a></li>.............< |
| 27a0 | 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 53 65 6e 74 69 6e 65 6c 2d 54 65 72 6d 69 6e 61 74 65 | li><a.id="toc-Sentinel-Terminate |
| 27c0 | 64 2d 50 6f 69 6e 74 65 72 73 22 20 68 72 65 66 3d 22 23 53 65 6e 74 69 6e 65 6c 2d 54 65 72 6d | d-Pointers".href="#Sentinel-Term |
| 27e0 | 69 6e 61 74 65 64 2d 50 6f 69 6e 74 65 72 73 22 3e 53 65 6e 74 69 6e 65 6c 2d 54 65 72 6d 69 6e | inated-Pointers">Sentinel-Termin |
| 2800 | 61 74 65 64 20 50 6f 69 6e 74 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c | ated.Pointers</a></li>.........< |
| 2820 | 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 |
| 2840 | 2d 53 6c 69 63 65 73 22 20 68 72 65 66 3d 22 23 53 6c 69 63 65 73 22 3e 53 6c 69 63 65 73 3c 2f | -Slices".href="#Slices">Slices</ |
| 2860 | 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> |
| 2880 | 3c 61 20 69 64 3d 22 74 6f 63 2d 53 65 6e 74 69 6e 65 6c 2d 54 65 72 6d 69 6e 61 74 65 64 2d 53 | <a.id="toc-Sentinel-Terminated-S |
| 28a0 | 6c 69 63 65 73 22 20 68 72 65 66 3d 22 23 53 65 6e 74 69 6e 65 6c 2d 54 65 72 6d 69 6e 61 74 65 | lices".href="#Sentinel-Terminate |
| 28c0 | 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 6c | d-Slices">Sentinel-Terminated.Sl |
| 28e0 | 69 63 65 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 3c 2f 6c 69 3e | ices</a></li>.........</ul></li> |
| 2900 | 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 73 74 72 75 63 74 22 20 | .........<li><a.id="toc-struct". |
| 2920 | 68 72 65 66 3d 22 23 73 74 72 75 63 74 22 3e 73 74 72 75 63 74 3c 2f 61 3e 0a 20 20 20 20 20 20 | href="#struct">struct</a>....... |
| 2940 | 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 |
| 2960 | 63 2d 44 65 66 61 75 6c 74 2d 46 69 65 6c 64 2d 56 61 6c 75 65 73 22 20 68 72 65 66 3d 22 23 44 | c-Default-Field-Values".href="#D |
| 2980 | 65 66 61 75 6c 74 2d 46 69 65 6c 64 2d 56 61 6c 75 65 73 22 3e 44 65 66 61 75 6c 74 20 46 69 65 | efault-Field-Values">Default.Fie |
| 29a0 | 6c 64 20 56 61 6c 75 65 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c | ld.Values</a></li>.............< |
| 29c0 | 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 65 78 74 65 72 6e 2d 73 74 72 75 63 74 22 20 68 72 65 | li><a.id="toc-extern-struct".hre |
| 29e0 | 66 3d 22 23 65 78 74 65 72 6e 2d 73 74 72 75 63 74 22 3e 65 78 74 65 72 6e 20 73 74 72 75 63 74 | f="#extern-struct">extern.struct |
| 2a00 | 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= |
| 2a20 | 22 74 6f 63 2d 70 61 63 6b 65 64 2d 73 74 72 75 63 74 22 20 68 72 65 66 3d 22 23 70 61 63 6b 65 | "toc-packed-struct".href="#packe |
| 2a40 | 64 2d 73 74 72 75 63 74 22 3e 70 61 63 6b 65 64 20 73 74 72 75 63 74 3c 2f 61 3e 3c 2f 6c 69 3e | d-struct">packed.struct</a></li> |
| 2a60 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 53 74 72 75 | .............<li><a.id="toc-Stru |
| 2a80 | 63 74 2d 4e 61 6d 69 6e 67 22 20 68 72 65 66 3d 22 23 53 74 72 75 63 74 2d 4e 61 6d 69 6e 67 22 | ct-Naming".href="#Struct-Naming" |
| 2aa0 | 3e 53 74 72 75 63 74 20 4e 61 6d 69 6e 67 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 | >Struct.Naming</a></li>......... |
| 2ac0 | 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 41 6e 6f 6e 79 6d 6f 75 73 2d 53 74 72 | ....<li><a.id="toc-Anonymous-Str |
| 2ae0 | 75 63 74 2d 4c 69 74 65 72 61 6c 73 22 20 68 72 65 66 3d 22 23 41 6e 6f 6e 79 6d 6f 75 73 2d 53 | uct-Literals".href="#Anonymous-S |
| 2b00 | 74 72 75 63 74 2d 4c 69 74 65 72 61 6c 73 22 3e 41 6e 6f 6e 79 6d 6f 75 73 20 53 74 72 75 63 74 | truct-Literals">Anonymous.Struct |
| 2b20 | 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 3c 2f 75 6c 3e | .Literals</a></li>.........</ul> |
| 2b40 | 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 65 6e 75 | </li>.........<li><a.id="toc-enu |
| 2b60 | 6d 22 20 68 72 65 66 3d 22 23 65 6e 75 6d 22 3e 65 6e 75 6d 3c 2f 61 3e 0a 20 20 20 20 20 20 20 | m".href="#enum">enum</a>........ |
| 2b80 | 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 |
| 2ba0 | 2d 65 78 74 65 72 6e 2d 65 6e 75 6d 22 20 68 72 65 66 3d 22 23 65 78 74 65 72 6e 2d 65 6e 75 6d | -extern-enum".href="#extern-enum |
| 2bc0 | 22 3e 65 78 74 65 72 6e 20 65 6e 75 6d 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 | ">extern.enum</a></li>.......... |
| 2be0 | 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 70 61 63 6b 65 64 2d 65 6e 75 6d 22 20 68 | ...<li><a.id="toc-packed-enum".h |
| 2c00 | 72 65 66 3d 22 23 70 61 63 6b 65 64 2d 65 6e 75 6d 22 3e 70 61 63 6b 65 64 20 65 6e 75 6d 3c 2f | ref="#packed-enum">packed.enum</ |
| 2c20 | 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 |
| 2c40 | 6f 63 2d 45 6e 75 6d 2d 4c 69 74 65 72 61 6c 73 22 20 68 72 65 66 3d 22 23 45 6e 75 6d 2d 4c 69 | oc-Enum-Literals".href="#Enum-Li |
| 2c60 | 74 65 72 61 6c 73 22 3e 45 6e 75 6d 20 4c 69 74 65 72 61 6c 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 | terals">Enum.Literals</a></li>.. |
| 2c80 | 20 20 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 | ...........<li><a.id="toc-Non-ex |
| 2ca0 | 68 61 75 73 74 69 76 65 2d 65 6e 75 6d 22 20 68 72 65 66 3d 22 23 4e 6f 6e 2d 65 78 68 61 75 73 | haustive-enum".href="#Non-exhaus |
| 2cc0 | 74 69 76 65 2d 65 6e 75 6d 22 3e 4e 6f 6e 2d 65 78 68 61 75 73 74 69 76 65 20 65 6e 75 6d 3c 2f | tive-enum">Non-exhaustive.enum</ |
| 2ce0 | 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>...... |
| 2d00 | 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 75 6e 69 6f 6e 22 20 68 72 65 66 3d 22 23 | ...<li><a.id="toc-union".href="# |
| 2d20 | 75 6e 69 6f 6e 22 3e 75 6e 69 6f 6e 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 | union">union</a>.........<ul>... |
| 2d40 | 20 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 | ..........<li><a.id="toc-Tagged- |
| 2d60 | 75 6e 69 6f 6e 22 20 68 72 65 66 3d 22 23 54 61 67 67 65 64 2d 75 6e 69 6f 6e 22 3e 54 61 67 67 | union".href="#Tagged-union">Tagg |
| 2d80 | 65 64 20 75 6e 69 6f 6e 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c | ed.union</a></li>.............<l |
| 2da0 | 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 65 78 74 65 72 6e 2d 75 6e 69 6f 6e 22 20 68 72 65 66 3d | i><a.id="toc-extern-union".href= |
| 2dc0 | 22 23 65 78 74 65 72 6e 2d 75 6e 69 6f 6e 22 3e 65 78 74 65 72 6e 20 75 6e 69 6f 6e 3c 2f 61 3e | "#extern-union">extern.union</a> |
| 2de0 | 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 |
| 2e00 | 2d 70 61 63 6b 65 64 2d 75 6e 69 6f 6e 22 20 68 72 65 66 3d 22 23 70 61 63 6b 65 64 2d 75 6e 69 | -packed-union".href="#packed-uni |
| 2e20 | 6f 6e 22 3e 70 61 63 6b 65 64 20 75 6e 69 6f 6e 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | on">packed.union</a></li>....... |
| 2e40 | 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 41 6e 6f 6e 79 6d 6f 75 73 2d 55 | ......<li><a.id="toc-Anonymous-U |
| 2e60 | 6e 69 6f 6e 2d 4c 69 74 65 72 61 6c 73 22 20 68 72 65 66 3d 22 23 41 6e 6f 6e 79 6d 6f 75 73 2d | nion-Literals".href="#Anonymous- |
| 2e80 | 55 6e 69 6f 6e 2d 4c 69 74 65 72 61 6c 73 22 3e 41 6e 6f 6e 79 6d 6f 75 73 20 55 6e 69 6f 6e 20 | Union-Literals">Anonymous.Union. |
| 2ea0 | 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 3c 2f 75 6c 3e 3c | Literals</a></li>.........</ul>< |
| 2ec0 | 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 6f 70 61 71 | /li>.........<li><a.id="toc-opaq |
| 2ee0 | 75 65 22 20 68 72 65 66 3d 22 23 6f 70 61 71 75 65 22 3e 6f 70 61 71 75 65 3c 2f 61 3e 3c 2f 6c | ue".href="#opaque">opaque</a></l |
| 2f00 | 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 62 6c 6f 63 6b 73 | i>.........<li><a.id="toc-blocks |
| 2f20 | 22 20 68 72 65 66 3d 22 23 62 6c 6f 63 6b 73 22 3e 62 6c 6f 63 6b 73 3c 2f 61 3e 0a 20 20 20 20 | ".href="#blocks">blocks</a>..... |
| 2f40 | 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 | ....<ul>.............<li><a.id=" |
| 2f60 | 74 6f 63 2d 53 68 61 64 6f 77 69 6e 67 22 20 68 72 65 66 3d 22 23 53 68 61 64 6f 77 69 6e 67 22 | toc-Shadowing".href="#Shadowing" |
| 2f80 | 3e 53 68 61 64 6f 77 69 6e 67 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 2f 75 6c | >Shadowing</a></li>.........</ul |
| 2fa0 | 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 73 77 | ></li>.........<li><a.id="toc-sw |
| 2fc0 | 69 74 63 68 22 20 68 72 65 66 3d 22 23 73 77 69 74 63 68 22 3e 73 77 69 74 63 68 3c 2f 61 3e 0a | itch".href="#switch">switch</a>. |
| 2fe0 | 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 | ........<ul>.............<li><a. |
| 3000 | 69 64 3d 22 74 6f 63 2d 45 78 68 61 75 73 74 69 76 65 2d 53 77 69 74 63 68 69 6e 67 22 20 68 72 | id="toc-Exhaustive-Switching".hr |
| 3020 | 65 66 3d 22 23 45 78 68 61 75 73 74 69 76 65 2d 53 77 69 74 63 68 69 6e 67 22 3e 45 78 68 61 75 | ef="#Exhaustive-Switching">Exhau |
| 3040 | 73 74 69 76 65 20 53 77 69 74 63 68 69 6e 67 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 | stive.Switching</a></li>........ |
| 3060 | 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 53 77 69 74 63 68 69 6e 67 2d 77 69 | .....<li><a.id="toc-Switching-wi |
| 3080 | 74 68 2d 45 6e 75 6d 2d 4c 69 74 65 72 61 6c 73 22 20 68 72 65 66 3d 22 23 53 77 69 74 63 68 69 | th-Enum-Literals".href="#Switchi |
| 30a0 | 6e 67 2d 77 69 74 68 2d 45 6e 75 6d 2d 4c 69 74 65 72 61 6c 73 22 3e 53 77 69 74 63 68 69 6e 67 | ng-with-Enum-Literals">Switching |
| 30c0 | 20 77 69 74 68 20 45 6e 75 6d 20 4c 69 74 65 72 61 6c 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 | .with.Enum.Literals</a></li>.... |
| 30e0 | 20 20 20 20 20 3c 2f 75 6c 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 | .....</ul></li>.........<li><a.i |
| 3100 | 64 3d 22 74 6f 63 2d 77 68 69 6c 65 22 20 68 72 65 66 3d 22 23 77 68 69 6c 65 22 3e 77 68 69 6c | d="toc-while".href="#while">whil |
| 3120 | 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>.............< |
| 3140 | 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 4c 61 62 65 6c 65 64 2d 77 68 69 6c 65 22 20 68 72 65 | li><a.id="toc-Labeled-while".hre |
| 3160 | 66 3d 22 23 4c 61 62 65 6c 65 64 2d 77 68 69 6c 65 22 3e 4c 61 62 65 6c 65 64 20 77 68 69 6c 65 | f="#Labeled-while">Labeled.while |
| 3180 | 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= |
| 31a0 | 22 74 6f 63 2d 77 68 69 6c 65 2d 77 69 74 68 2d 4f 70 74 69 6f 6e 61 6c 73 22 20 68 72 65 66 3d | "toc-while-with-Optionals".href= |
| 31c0 | 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 20 77 69 | "#while-with-Optionals">while.wi |
| 31e0 | 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 20 20 | th.Optionals</a></li>........... |
| 3200 | 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 77 68 69 6c 65 2d 77 69 74 68 2d 45 72 72 6f | ..<li><a.id="toc-while-with-Erro |
| 3220 | 72 2d 55 6e 69 6f 6e 73 22 20 68 72 65 66 3d 22 23 77 68 69 6c 65 2d 77 69 74 68 2d 45 72 72 6f | r-Unions".href="#while-with-Erro |
| 3240 | 72 2d 55 6e 69 6f 6e 73 22 3e 77 68 69 6c 65 20 77 69 74 68 20 45 72 72 6f 72 20 55 6e 69 6f 6e | r-Unions">while.with.Error.Union |
| 3260 | 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 | s</a></li>.............<li><a.id |
| 3280 | 3d 22 74 6f 63 2d 69 6e 6c 69 6e 65 2d 77 68 69 6c 65 22 20 68 72 65 66 3d 22 23 69 6e 6c 69 6e | ="toc-inline-while".href="#inlin |
| 32a0 | 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 20 | e-while">inline.while</a></li>.. |
| 32c0 | 20 20 20 20 20 20 20 3c 2f 75 6c 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 | .......</ul></li>.........<li><a |
| 32e0 | 20 69 64 3d 22 74 6f 63 2d 66 6f 72 22 20 68 72 65 66 3d 22 23 66 6f 72 22 3e 66 6f 72 3c 2f 61 | .id="toc-for".href="#for">for</a |
| 3300 | 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>< |
| 3320 | 61 20 69 64 3d 22 74 6f 63 2d 4c 61 62 65 6c 65 64 2d 66 6f 72 22 20 68 72 65 66 3d 22 23 4c 61 | a.id="toc-Labeled-for".href="#La |
| 3340 | 62 65 6c 65 64 2d 66 6f 72 22 3e 4c 61 62 65 6c 65 64 20 66 6f 72 3c 2f 61 3e 3c 2f 6c 69 3e 0a | beled-for">Labeled.for</a></li>. |
| 3360 | 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 69 6e 6c 69 6e | ............<li><a.id="toc-inlin |
| 3380 | 65 2d 66 6f 72 22 20 68 72 65 66 3d 22 23 69 6e 6c 69 6e 65 2d 66 6f 72 22 3e 69 6e 6c 69 6e 65 | e-for".href="#inline-for">inline |
| 33a0 | 20 66 6f 72 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 3c 2f 6c 69 3e | .for</a></li>.........</ul></li> |
| 33c0 | 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 69 66 22 20 68 72 65 66 | .........<li><a.id="toc-if".href |
| 33e0 | 3d 22 23 69 66 22 3e 69 66 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c | ="#if">if</a></li>.........<li>< |
| 3400 | 61 20 69 64 3d 22 74 6f 63 2d 64 65 66 65 72 22 20 68 72 65 66 3d 22 23 64 65 66 65 72 22 3e 64 | a.id="toc-defer".href="#defer">d |
| 3420 | 65 66 65 72 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d | efer</a></li>.........<li><a.id= |
| 3440 | 22 74 6f 63 2d 75 6e 72 65 61 63 68 61 62 6c 65 22 20 68 72 65 66 3d 22 23 75 6e 72 65 61 63 68 | "toc-unreachable".href="#unreach |
| 3460 | 61 62 6c 65 22 3e 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 3c 75 | able">unreachable</a>.........<u |
| 3480 | 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 42 61 | l>.............<li><a.id="toc-Ba |
| 34a0 | 73 69 63 73 22 20 68 72 65 66 3d 22 23 42 61 73 69 63 73 22 3e 42 61 73 69 63 73 3c 2f 61 3e 3c | sics".href="#Basics">Basics</a>< |
| 34c0 | 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- |
| 34e0 | 41 74 2d 43 6f 6d 70 69 6c 65 2d 54 69 6d 65 22 20 68 72 65 66 3d 22 23 41 74 2d 43 6f 6d 70 69 | At-Compile-Time".href="#At-Compi |
| 3500 | 6c 65 2d 54 69 6d 65 22 3e 41 74 20 43 6f 6d 70 69 6c 65 2d 54 69 6d 65 3c 2f 61 3e 3c 2f 6c 69 | le-Time">At.Compile-Time</a></li |
| 3520 | 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 |
| 3540 | 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 6e 6f 72 65 74 75 72 6e 22 20 68 72 65 66 3d 22 23 6e 6f 72 | ><a.id="toc-noreturn".href="#nor |
| 3560 | 65 74 75 72 6e 22 3e 6e 6f 72 65 74 75 72 6e 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 | eturn">noreturn</a></li>........ |
| 3580 | 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 46 75 6e 63 74 69 6f 6e 73 22 20 68 72 65 66 3d | .<li><a.id="toc-Functions".href= |
| 35a0 | 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 0a 20 20 20 20 20 | "#Functions">Functions</a>...... |
| 35c0 | 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 |
| 35e0 | 6f 63 2d 50 61 73 73 2d 62 79 2d 76 61 6c 75 65 2d 50 61 72 61 6d 65 74 65 72 73 22 20 68 72 65 | oc-Pass-by-value-Parameters".hre |
| 3600 | 66 3d 22 23 50 61 73 73 2d 62 79 2d 76 61 6c 75 65 2d 50 61 72 61 6d 65 74 65 72 73 22 3e 50 61 | f="#Pass-by-value-Parameters">Pa |
| 3620 | 73 73 2d 62 79 2d 76 61 6c 75 65 20 50 61 72 61 6d 65 74 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a | ss-by-value.Parameters</a></li>. |
| 3640 | 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 46 75 6e 63 74 | ............<li><a.id="toc-Funct |
| 3660 | 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 20 68 72 | ion-Parameter-Type-Inference".hr |
| 3680 | 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 49 6e 66 | ef="#Function-Parameter-Type-Inf |
| 36a0 | 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 79 70 65 20 | erence">Function.Parameter.Type. |
| 36c0 | 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 20 20 20 20 3c | Inference</a></li>.............< |
| 36e0 | 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 46 75 6e 63 74 69 6f 6e 2d 52 65 66 6c 65 63 74 69 6f | li><a.id="toc-Function-Reflectio |
| 3700 | 6e 22 20 68 72 65 66 3d 22 23 46 75 6e 63 74 69 6f 6e 2d 52 65 66 6c 65 63 74 69 6f 6e 22 3e 46 | n".href="#Function-Reflection">F |
| 3720 | 75 6e 63 74 69 6f 6e 20 52 65 66 6c 65 63 74 69 6f 6e 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 | unction.Reflection</a></li>..... |
| 3740 | 20 20 20 20 3c 2f 75 6c 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 | ....</ul></li>.........<li><a.id |
| 3760 | 3d 22 74 6f 63 2d 45 72 72 6f 72 73 22 20 68 72 65 66 3d 22 23 45 72 72 6f 72 73 22 3e 45 72 72 | ="toc-Errors".href="#Errors">Err |
| 3780 | 6f 72 73 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 | ors</a>.........<ul>............ |
| 37a0 | 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 45 72 72 6f 72 2d 53 65 74 2d 54 79 70 65 22 20 | .<li><a.id="toc-Error-Set-Type". |
| 37c0 | 68 72 65 66 3d 22 23 45 72 72 6f 72 2d 53 65 74 2d 54 79 70 65 22 3e 45 72 72 6f 72 20 53 65 74 | href="#Error-Set-Type">Error.Set |
| 37e0 | 20 54 79 70 65 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 | .Type</a>.............<ul>...... |
| 3800 | 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 54 68 65 2d 47 6c | ...........<li><a.id="toc-The-Gl |
| 3820 | 6f 62 61 6c 2d 45 72 72 6f 72 2d 53 65 74 22 20 68 72 65 66 3d 22 23 54 68 65 2d 47 6c 6f 62 61 | obal-Error-Set".href="#The-Globa |
| 3840 | 6c 2d 45 72 72 6f 72 2d 53 65 74 22 3e 54 68 65 20 47 6c 6f 62 61 6c 20 45 72 72 6f 72 20 53 65 | l-Error-Set">The.Global.Error.Se |
| 3860 | 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 3c 2f 6c 69 | t</a></li>.............</ul></li |
| 3880 | 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 45 72 72 | >.............<li><a.id="toc-Err |
| 38a0 | 6f 72 2d 55 6e 69 6f 6e 2d 54 79 70 65 22 20 68 72 65 66 3d 22 23 45 72 72 6f 72 2d 55 6e 69 6f | or-Union-Type".href="#Error-Unio |
| 38c0 | 6e 2d 54 79 70 65 22 3e 45 72 72 6f 72 20 55 6e 69 6f 6e 20 54 79 70 65 3c 2f 61 3e 0a 20 20 20 | n-Type">Error.Union.Type</a>.... |
| 38e0 | 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 |
| 3900 | 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 63 61 74 63 68 22 20 68 72 65 66 3d 22 23 63 61 74 63 68 | i><a.id="toc-catch".href="#catch |
| 3920 | 22 3e 63 61 74 63 68 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ">catch</a></li>................ |
| 3940 | 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 74 72 79 22 20 68 72 65 66 3d 22 23 74 72 79 22 | .<li><a.id="toc-try".href="#try" |
| 3960 | 3e 74 72 79 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c | >try</a></li>.................<l |
| 3980 | 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 65 72 72 64 65 66 65 72 22 20 68 72 65 66 3d 22 23 65 72 | i><a.id="toc-errdefer".href="#er |
| 39a0 | 72 64 65 66 65 72 22 3e 65 72 72 64 65 66 65 72 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | rdefer">errdefer</a></li>....... |
| 39c0 | 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 4d 65 72 67 69 6e 67 | ..........<li><a.id="toc-Merging |
| 39e0 | 2d 45 72 72 6f 72 2d 53 65 74 73 22 20 68 72 65 66 3d 22 23 4d 65 72 67 69 6e 67 2d 45 72 72 6f | -Error-Sets".href="#Merging-Erro |
| 3a00 | 72 2d 53 65 74 73 22 3e 4d 65 72 67 69 6e 67 20 45 72 72 6f 72 20 53 65 74 73 3c 2f 61 3e 3c 2f | r-Sets">Merging.Error.Sets</a></ |
| 3a20 | 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 |
| 3a40 | 6f 63 2d 49 6e 66 65 72 72 65 64 2d 45 72 72 6f 72 2d 53 65 74 73 22 20 68 72 65 66 3d 22 23 49 | oc-Inferred-Error-Sets".href="#I |
| 3a60 | 6e 66 65 72 72 65 64 2d 45 72 72 6f 72 2d 53 65 74 73 22 3e 49 6e 66 65 72 72 65 64 20 45 72 72 | nferred-Error-Sets">Inferred.Err |
| 3a80 | 6f 72 20 53 65 74 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 | or.Sets</a></li>.............</u |
| 3aa0 | 6c 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 | l></li>.............<li><a.id="t |
| 3ac0 | 6f 63 2d 45 72 72 6f 72 2d 52 65 74 75 72 6e 2d 54 72 61 63 65 73 22 20 68 72 65 66 3d 22 23 45 | oc-Error-Return-Traces".href="#E |
| 3ae0 | 72 72 6f 72 2d 52 65 74 75 72 6e 2d 54 72 61 63 65 73 22 3e 45 72 72 6f 72 20 52 65 74 75 72 6e | rror-Return-Traces">Error.Return |
| 3b00 | 20 54 72 61 63 65 73 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 | .Traces</a>.............<ul>.... |
| 3b20 | 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 49 6d 70 6c | .............<li><a.id="toc-Impl |
| 3b40 | 65 6d 65 6e 74 61 74 69 6f 6e 2d 44 65 74 61 69 6c 73 22 20 68 72 65 66 3d 22 23 49 6d 70 6c 65 | ementation-Details".href="#Imple |
| 3b60 | 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 |
| 3b80 | 6e 20 44 65 74 61 69 6c 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c | n.Details</a></li>.............< |
| 3ba0 | 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 20 | /ul></li>.........</ul></li>.... |
| 3bc0 | 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 4f 70 74 69 6f 6e 61 6c 73 22 20 68 | .....<li><a.id="toc-Optionals".h |
| 3be0 | 72 65 66 3d 22 23 4f 70 74 69 6f 6e 61 6c 73 22 3e 4f 70 74 69 6f 6e 61 6c 73 3c 2f 61 3e 0a 20 | ref="#Optionals">Optionals</a>.. |
| 3c00 | 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 |
| 3c20 | 64 3d 22 74 6f 63 2d 4f 70 74 69 6f 6e 61 6c 2d 54 79 70 65 22 20 68 72 65 66 3d 22 23 4f 70 74 | d="toc-Optional-Type".href="#Opt |
| 3c40 | 69 6f 6e 61 6c 2d 54 79 70 65 22 3e 4f 70 74 69 6f 6e 61 6c 20 54 79 70 65 3c 2f 61 3e 3c 2f 6c | ional-Type">Optional.Type</a></l |
| 3c60 | 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 6e 75 | i>.............<li><a.id="toc-nu |
| 3c80 | 6c 6c 22 20 68 72 65 66 3d 22 23 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 | ll".href="#null">null</a></li>.. |
| 3ca0 | 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 4f 70 74 69 6f 6e | ...........<li><a.id="toc-Option |
| 3cc0 | 61 6c 2d 50 6f 69 6e 74 65 72 73 22 20 68 72 65 66 3d 22 23 4f 70 74 69 6f 6e 61 6c 2d 50 6f 69 | al-Pointers".href="#Optional-Poi |
| 3ce0 | 6e 74 65 72 73 22 3e 4f 70 74 69 6f 6e 61 6c 20 50 6f 69 6e 74 65 72 73 3c 2f 61 3e 3c 2f 6c 69 | nters">Optional.Pointers</a></li |
| 3d00 | 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 |
| 3d20 | 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 43 61 73 74 69 6e 67 22 20 68 72 65 66 3d 22 23 43 61 73 74 | ><a.id="toc-Casting".href="#Cast |
| 3d40 | 69 6e 67 22 3e 43 61 73 74 69 6e 67 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 | ing">Casting</a>.........<ul>... |
| 3d60 | 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 54 79 70 65 2d 43 6f | ..........<li><a.id="toc-Type-Co |
| 3d80 | 65 72 63 69 6f 6e 22 20 68 72 65 66 3d 22 23 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 22 3e 54 79 | ercion".href="#Type-Coercion">Ty |
| 3da0 | 70 65 20 43 6f 65 72 63 69 6f 6e 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e | pe.Coercion</a>.............<ul> |
| 3dc0 | 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- |
| 3de0 | 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 2d 53 74 72 69 63 74 65 72 2d 51 75 61 6c 69 66 69 63 61 | Type-Coercion-Stricter-Qualifica |
| 3e00 | 74 69 6f 6e 22 20 68 72 65 66 3d 22 23 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 2d 53 74 72 69 63 | tion".href="#Type-Coercion-Stric |
| 3e20 | 74 65 72 2d 51 75 61 6c 69 66 69 63 61 74 69 6f 6e 22 3e 54 79 70 65 20 43 6f 65 72 63 69 6f 6e | ter-Qualification">Type.Coercion |
| 3e40 | 3a 20 53 74 72 69 63 74 65 72 20 51 75 61 6c 69 66 69 63 61 74 69 6f 6e 3c 2f 61 3e 3c 2f 6c 69 | :.Stricter.Qualification</a></li |
| 3e60 | 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 |
| 3e80 | 2d 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 2d 49 6e 74 65 67 65 72 2d 61 6e 64 2d 46 6c 6f 61 74 | -Type-Coercion-Integer-and-Float |
| 3ea0 | 2d 57 69 64 65 6e 69 6e 67 22 20 68 72 65 66 3d 22 23 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 2d | -Widening".href="#Type-Coercion- |
| 3ec0 | 49 6e 74 65 67 65 72 2d 61 6e 64 2d 46 6c 6f 61 74 2d 57 69 64 65 6e 69 6e 67 22 3e 54 79 70 65 | Integer-and-Float-Widening">Type |
| 3ee0 | 20 43 6f 65 72 63 69 6f 6e 3a 20 49 6e 74 65 67 65 72 20 61 6e 64 20 46 6c 6f 61 74 20 57 69 64 | .Coercion:.Integer.and.Float.Wid |
| 3f00 | 65 6e 69 6e 67 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c | ening</a></li>.................< |
| 3f20 | 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 43 6f 65 72 | li><a.id="toc-Type-Coercion-Coer |
| 3f40 | 63 69 6f 6e 2d 46 6c 6f 61 74 2d 74 6f 2d 49 6e 74 22 20 68 72 65 66 3d 22 23 54 79 70 65 2d 43 | cion-Float-to-Int".href="#Type-C |
| 3f60 | 6f 65 72 63 69 6f 6e 2d 43 6f 65 72 63 69 6f 6e 2d 46 6c 6f 61 74 2d 74 6f 2d 49 6e 74 22 3e 54 | oercion-Coercion-Float-to-Int">T |
| 3f80 | 79 70 65 20 43 6f 65 72 63 69 6f 6e 3a 20 43 6f 65 72 63 69 6f 6e 20 46 6c 6f 61 74 20 74 6f 20 | ype.Coercion:.Coercion.Float.to. |
| 3fa0 | 49 6e 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 | Int</a></li>.................<li |
| 3fc0 | 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 41 72 72 61 79 73 | ><a.id="toc-Type-Coercion-Arrays |
| 3fe0 | 2d 61 6e 64 2d 50 6f 69 6e 74 65 72 73 22 20 68 72 65 66 3d 22 23 54 79 70 65 2d 43 6f 65 72 63 | -and-Pointers".href="#Type-Coerc |
| 4000 | 69 6f 6e 2d 41 72 72 61 79 73 2d 61 6e 64 2d 50 6f 69 6e 74 65 72 73 22 3e 54 79 70 65 20 43 6f | ion-Arrays-and-Pointers">Type.Co |
| 4020 | 65 72 63 69 6f 6e 3a 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 | ercion:.Arrays.and.Pointers</a>< |
| 4040 | 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 | /li>.................<li><a.id=" |
| 4060 | 74 6f 63 2d 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 2d 4f 70 74 69 6f 6e 61 6c 73 22 20 68 72 65 | toc-Type-Coercion-Optionals".hre |
| 4080 | 66 3d 22 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 | f="#Type-Coercion-Optionals">Typ |
| 40a0 | 65 20 43 6f 65 72 63 69 6f 6e 3a 20 4f 70 74 69 6f 6e 61 6c 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 | e.Coercion:.Optionals</a></li>.. |
| 40c0 | 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 |
| 40e0 | 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 20 68 72 65 66 3d 22 | pe-Coercion-Error-Unions".href=" |
| 4100 | 23 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 2d 45 72 72 6f 72 2d 55 6e 69 6f 6e 73 22 3e 54 79 70 | #Type-Coercion-Error-Unions">Typ |
| 4120 | 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 3c 2f 6c 69 | e.Coercion:.Error.Unions</a></li |
| 4140 | 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 |
| 4160 | 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 |
| 4180 | 6e 2d 4e 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 | n-Numbers".href="#Type-Coercion- |
| 41a0 | 43 6f 6d 70 69 6c 65 2d 54 69 6d 65 2d 4b 6e 6f 77 6e 2d 4e 75 6d 62 65 72 73 22 3e 54 79 70 65 | Compile-Time-Known-Numbers">Type |
| 41c0 | 20 43 6f 65 72 63 69 6f 6e 3a 20 43 6f 6d 70 69 6c 65 2d 54 69 6d 65 20 4b 6e 6f 77 6e 20 4e 75 | .Coercion:.Compile-Time.Known.Nu |
| 41e0 | 6d 62 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 20 20 3c | mbers</a></li>.................< |
| 4200 | 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 2d 75 6e 69 6f | li><a.id="toc-Type-Coercion-unio |
| 4220 | 6e 73 2d 61 6e 64 2d 65 6e 75 6d 73 22 20 68 72 65 66 3d 22 23 54 79 70 65 2d 43 6f 65 72 63 69 | ns-and-enums".href="#Type-Coerci |
| 4240 | 6f 6e 2d 75 6e 69 6f 6e 73 2d 61 6e 64 2d 65 6e 75 6d 73 22 3e 54 79 70 65 20 43 6f 65 72 63 69 | on-unions-and-enums">Type.Coerci |
| 4260 | 6f 6e 3a 20 75 6e 69 6f 6e 73 20 61 6e 64 20 65 6e 75 6d 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 | on:.unions.and.enums</a></li>... |
| 4280 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 54 79 70 | ..............<li><a.id="toc-Typ |
| 42a0 | 65 2d 43 6f 65 72 63 69 6f 6e 2d 5a 65 72 6f 2d 42 69 74 2d 54 79 70 65 73 22 20 68 72 65 66 3d | e-Coercion-Zero-Bit-Types".href= |
| 42c0 | 22 23 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 2d 5a 65 72 6f 2d 42 69 74 2d 54 79 70 65 73 22 3e | "#Type-Coercion-Zero-Bit-Types"> |
| 42e0 | 54 79 70 65 20 43 6f 65 72 63 69 6f 6e 3a 20 5a 65 72 6f 20 42 69 74 20 54 79 70 65 73 3c 2f 61 | Type.Coercion:.Zero.Bit.Types</a |
| 4300 | 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 |
| 4320 | 3d 22 74 6f 63 2d 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 2d 75 6e 64 65 66 69 6e 65 64 22 20 68 | ="toc-Type-Coercion-undefined".h |
| 4340 | 72 65 66 3d 22 23 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 2d 75 6e 64 65 66 69 6e 65 64 22 3e 54 | ref="#Type-Coercion-undefined">T |
| 4360 | 79 70 65 20 43 6f 65 72 63 69 6f 6e 3a 20 75 6e 64 65 66 69 6e 65 64 3c 2f 61 3e 3c 2f 6c 69 3e | ype.Coercion:.undefined</a></li> |
| 4380 | 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>......... |
| 43a0 | 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 45 78 70 6c 69 63 69 74 2d 43 61 73 74 | ....<li><a.id="toc-Explicit-Cast |
| 43c0 | 73 22 20 68 72 65 66 3d 22 23 45 78 70 6c 69 63 69 74 2d 43 61 73 74 73 22 3e 45 78 70 6c 69 63 | s".href="#Explicit-Casts">Explic |
| 43e0 | 69 74 20 43 61 73 74 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c | it.Casts</a></li>.............<l |
| 4400 | 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 50 65 65 72 2d 54 79 70 65 2d 52 65 73 6f 6c 75 74 69 6f | i><a.id="toc-Peer-Type-Resolutio |
| 4420 | 6e 22 20 68 72 65 66 3d 22 23 50 65 65 72 2d 54 79 70 65 2d 52 65 73 6f 6c 75 74 69 6f 6e 22 3e | n".href="#Peer-Type-Resolution"> |
| 4440 | 50 65 65 72 20 54 79 70 65 20 52 65 73 6f 6c 75 74 69 6f 6e 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 | Peer.Type.Resolution</a></li>... |
| 4460 | 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. |
| 4480 | 69 64 3d 22 74 6f 63 2d 5a 65 72 6f 2d 42 69 74 2d 54 79 70 65 73 22 20 68 72 65 66 3d 22 23 5a | id="toc-Zero-Bit-Types".href="#Z |
| 44a0 | 65 72 6f 2d 42 69 74 2d 54 79 70 65 73 22 3e 5a 65 72 6f 20 42 69 74 20 54 79 70 65 73 3c 2f 61 | ero-Bit-Types">Zero.Bit.Types</a |
| 44c0 | 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>< |
| 44e0 | 61 20 69 64 3d 22 74 6f 63 2d 76 6f 69 64 22 20 68 72 65 66 3d 22 23 76 6f 69 64 22 3e 76 6f 69 | a.id="toc-void".href="#void">voi |
| 4500 | 64 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 | d</a></li>.............<li><a.id |
| 4520 | 3d 22 74 6f 63 2d 50 6f 69 6e 74 65 72 73 2d 74 6f 2d 5a 65 72 6f 2d 42 69 74 2d 54 79 70 65 73 | ="toc-Pointers-to-Zero-Bit-Types |
| 4540 | 22 20 68 72 65 66 3d 22 23 50 6f 69 6e 74 65 72 73 2d 74 6f 2d 5a 65 72 6f 2d 42 69 74 2d 54 79 | ".href="#Pointers-to-Zero-Bit-Ty |
| 4560 | 70 65 73 22 3e 50 6f 69 6e 74 65 72 73 20 74 6f 20 5a 65 72 6f 20 42 69 74 20 54 79 70 65 73 3c | pes">Pointers.to.Zero.Bit.Types< |
| 4580 | 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>..... |
| 45a0 | 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 52 65 73 75 6c 74 2d 4c 6f 63 61 74 69 | ....<li><a.id="toc-Result-Locati |
| 45c0 | 6f 6e 2d 53 65 6d 61 6e 74 69 63 73 22 20 68 72 65 66 3d 22 23 52 65 73 75 6c 74 2d 4c 6f 63 61 | on-Semantics".href="#Result-Loca |
| 45e0 | 74 69 6f 6e 2d 53 65 6d 61 6e 74 69 63 73 22 3e 52 65 73 75 6c 74 20 4c 6f 63 61 74 69 6f 6e 20 | tion-Semantics">Result.Location. |
| 4600 | 53 65 6d 61 6e 74 69 63 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c | Semantics</a></li>.........<li>< |
| 4620 | 61 20 69 64 3d 22 74 6f 63 2d 75 73 69 6e 67 6e 61 6d 65 73 70 61 63 65 22 20 68 72 65 66 3d 22 | a.id="toc-usingnamespace".href=" |
| 4640 | 23 75 73 69 6e 67 6e 61 6d 65 73 70 61 63 65 22 3e 75 73 69 6e 67 6e 61 6d 65 73 70 61 63 65 3c | #usingnamespace">usingnamespace< |
| 4660 | 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- |
| 4680 | 63 6f 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 | comptime".href="#comptime">compt |
| 46a0 | 69 6d 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 | ime</a>.........<ul>............ |
| 46c0 | 20 3c 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 | .<li><a.id="toc-Introducing-the- |
| 46e0 | 43 6f 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 | Compile-Time-Concept".href="#Int |
| 4700 | 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 6e 63 65 70 | roducing-the-Compile-Time-Concep |
| 4720 | 74 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 | t">Introducing.the.Compile-Time. |
| 4740 | 43 6f 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 | Concept</a>.............<ul>.... |
| 4760 | 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 70 | .............<li><a.id="toc-Comp |
| 4780 | 69 6c 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 | ile-Time-Parameters".href="#Comp |
| 47a0 | 69 6c 65 2d 54 69 6d 65 2d 50 61 72 61 6d 65 74 65 72 73 22 3e 43 6f 6d 70 69 6c 65 2d 54 69 6d | ile-Time-Parameters">Compile-Tim |
| 47c0 | 65 20 50 61 72 61 6d 65 74 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 | e.Parameters</a></li>........... |
| 47e0 | 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 43 6f 6d 70 69 6c 65 2d 54 69 6d | ......<li><a.id="toc-Compile-Tim |
| 4800 | 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 2d 54 69 6d 65 | e-Variables".href="#Compile-Time |
| 4820 | 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 61 62 6c | -Variables">Compile-Time.Variabl |
| 4840 | 65 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e | es</a></li>.................<li> |
| 4860 | 3c 61 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 | <a.id="toc-Compile-Time-Expressi |
| 4880 | 6f 6e 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 | ons".href="#Compile-Time-Express |
| 48a0 | 69 6f 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 | ions">Compile-Time.Expressions</ |
| 48c0 | 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 3c 2f 6c 69 3e 0a 20 | a></li>.............</ul></li>.. |
| 48e0 | 20 20 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 | ...........<li><a.id="toc-Generi |
| 4900 | 63 2d 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 | c-Data-Structures".href="#Generi |
| 4920 | 63 2d 44 61 74 61 2d 53 74 72 75 63 74 75 72 65 73 22 3e 47 65 6e 65 72 69 63 20 44 61 74 61 20 | c-Data-Structures">Generic.Data. |
| 4940 | 53 74 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 | Structures</a></li>............. |
| 4960 | 3c 6c 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 66 | <li><a.id="toc-Case-Study-printf |
| 4980 | 2d 69 6e 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 | -in-Zig".href="#Case-Study-print |
| 49a0 | 66 2d 69 6e 2d 5a 69 67 22 3e 43 61 73 65 20 53 74 75 64 79 3a 20 70 72 69 6e 74 66 20 69 6e 20 | f-in-Zig">Case.Study:.printf.in. |
| 49c0 | 5a 69 67 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 3c 2f 6c 69 3e 0a | Zig</a></li>.........</ul></li>. |
| 49e0 | 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 41 73 73 65 6d 62 6c 79 22 | ........<li><a.id="toc-Assembly" |
| 4a00 | 20 68 72 65 66 3d 22 23 41 73 73 65 6d 62 6c 79 22 3e 41 73 73 65 6d 62 6c 79 3c 2f 61 3e 0a 20 | .href="#Assembly">Assembly</a>.. |
| 4a20 | 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 |
| 4a40 | 64 3d 22 74 6f 63 2d 4f 75 74 70 75 74 2d 43 6f 6e 73 74 72 61 69 6e 74 73 22 20 68 72 65 66 3d | d="toc-Output-Constraints".href= |
| 4a60 | 22 23 4f 75 74 70 75 74 2d 43 6f 6e 73 74 72 61 69 6e 74 73 22 3e 4f 75 74 70 75 74 20 43 6f 6e | "#Output-Constraints">Output.Con |
| 4a80 | 73 74 72 61 69 6e 74 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c | straints</a></li>.............<l |
| 4aa0 | 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 49 6e 70 75 74 2d 43 6f 6e 73 74 72 61 69 6e 74 73 22 20 | i><a.id="toc-Input-Constraints". |
| 4ac0 | 68 72 65 66 3d 22 23 49 6e 70 75 74 2d 43 6f 6e 73 74 72 61 69 6e 74 73 22 3e 49 6e 70 75 74 20 | href="#Input-Constraints">Input. |
| 4ae0 | 43 6f 6e 73 74 72 61 69 6e 74 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 | Constraints</a></li>............ |
| 4b00 | 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 43 6c 6f 62 62 65 72 73 22 20 68 72 65 66 3d 22 | .<li><a.id="toc-Clobbers".href=" |
| 4b20 | 23 43 6c 6f 62 62 65 72 73 22 3e 43 6c 6f 62 62 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 | #Clobbers">Clobbers</a></li>.... |
| 4b40 | 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 47 6c 6f 62 61 6c 2d 41 | .........<li><a.id="toc-Global-A |
| 4b60 | 73 73 65 6d 62 6c 79 22 20 68 72 65 66 3d 22 23 47 6c 6f 62 61 6c 2d 41 73 73 65 6d 62 6c 79 22 | ssembly".href="#Global-Assembly" |
| 4b80 | 3e 47 6c 6f 62 61 6c 20 41 73 73 65 6d 62 6c 79 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | >Global.Assembly</a></li>....... |
| 4ba0 | 20 20 3c 2f 75 6c 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 | ..</ul></li>.........<li><a.id=" |
| 4bc0 | 74 6f 63 2d 41 74 6f 6d 69 63 73 22 20 68 72 65 66 3d 22 23 41 74 6f 6d 69 63 73 22 3e 41 74 6f | toc-Atomics".href="#Atomics">Ato |
| 4be0 | 6d 69 63 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d | mics</a></li>.........<li><a.id= |
| 4c00 | 22 74 6f 63 2d 41 73 79 6e 63 2d 46 75 6e 63 74 69 6f 6e 73 22 20 68 72 65 66 3d 22 23 41 73 79 | "toc-Async-Functions".href="#Asy |
| 4c20 | 6e 63 2d 46 75 6e 63 74 69 6f 6e 73 22 3e 41 73 79 6e 63 20 46 75 6e 63 74 69 6f 6e 73 3c 2f 61 | nc-Functions">Async.Functions</a |
| 4c40 | 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>< |
| 4c60 | 61 20 69 64 3d 22 74 6f 63 2d 53 75 73 70 65 6e 64 2d 61 6e 64 2d 52 65 73 75 6d 65 22 20 68 72 | a.id="toc-Suspend-and-Resume".hr |
| 4c80 | 65 66 3d 22 23 53 75 73 70 65 6e 64 2d 61 6e 64 2d 52 65 73 75 6d 65 22 3e 53 75 73 70 65 6e 64 | ef="#Suspend-and-Resume">Suspend |
| 4ca0 | 20 61 6e 64 20 52 65 73 75 6d 65 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e | .and.Resume</a>.............<ul> |
| 4cc0 | 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- |
| 4ce0 | 52 65 73 75 6d 69 6e 67 2d 66 72 6f 6d 2d 53 75 73 70 65 6e 64 2d 42 6c 6f 63 6b 73 22 20 68 72 | Resuming-from-Suspend-Blocks".hr |
| 4d00 | 65 66 3d 22 23 52 65 73 75 6d 69 6e 67 2d 66 72 6f 6d 2d 53 75 73 70 65 6e 64 2d 42 6c 6f 63 6b | ef="#Resuming-from-Suspend-Block |
| 4d20 | 73 22 3e 52 65 73 75 6d 69 6e 67 20 66 72 6f 6d 20 53 75 73 70 65 6e 64 20 42 6c 6f 63 6b 73 3c | s">Resuming.from.Suspend.Blocks< |
| 4d40 | 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 3c 2f 6c 69 3e 0a | /a></li>.............</ul></li>. |
| 4d60 | 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 41 73 79 6e 63 | ............<li><a.id="toc-Async |
| 4d80 | 2d 61 6e 64 2d 41 77 61 69 74 22 20 68 72 65 66 3d 22 23 41 73 79 6e 63 2d 61 6e 64 2d 41 77 61 | -and-Await".href="#Async-and-Awa |
| 4da0 | 69 74 22 3e 41 73 79 6e 63 20 61 6e 64 20 41 77 61 69 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 | it">Async.and.Await</a></li>.... |
| 4dc0 | 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 41 73 79 6e 63 2d 46 75 | .........<li><a.id="toc-Async-Fu |
| 4de0 | 6e 63 74 69 6f 6e 2d 45 78 61 6d 70 6c 65 22 20 68 72 65 66 3d 22 23 41 73 79 6e 63 2d 46 75 6e | nction-Example".href="#Async-Fun |
| 4e00 | 63 74 69 6f 6e 2d 45 78 61 6d 70 6c 65 22 3e 41 73 79 6e 63 20 46 75 6e 63 74 69 6f 6e 20 45 78 | ction-Example">Async.Function.Ex |
| 4e20 | 61 6d 70 6c 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 3c 2f 6c 69 | ample</a></li>.........</ul></li |
| 4e40 | 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 |
| 4e60 | 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 |
| 4e80 | 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>..... |
| 4ea0 | 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">..... |
| 4ec0 | 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 61 64 64 57 69 74 68 4f 76 | ........<li><a.id="toc-addWithOv |
| 4ee0 | 65 72 66 6c 6f 77 22 20 68 72 65 66 3d 22 23 61 64 64 57 69 74 68 4f 76 65 72 66 6c 6f 77 22 3e | erflow".href="#addWithOverflow"> |
| 4f00 | 40 61 64 64 57 69 74 68 4f 76 65 72 66 6c 6f 77 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | @addWithOverflow</a></li>....... |
| 4f20 | 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 61 6c 69 67 6e 43 61 73 74 22 20 | ......<li><a.id="toc-alignCast". |
| 4f40 | 68 72 65 66 3d 22 23 61 6c 69 67 6e 43 61 73 74 22 3e 40 61 6c 69 67 6e 43 61 73 74 3c 2f 61 3e | href="#alignCast">@alignCast</a> |
| 4f60 | 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 |
| 4f80 | 2d 61 6c 69 67 6e 4f 66 22 20 68 72 65 66 3d 22 23 61 6c 69 67 6e 4f 66 22 3e 40 61 6c 69 67 6e | -alignOf".href="#alignOf">@align |
| 4fa0 | 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 |
| 4fc0 | 64 3d 22 74 6f 63 2d 61 73 22 20 68 72 65 66 3d 22 23 61 73 22 3e 40 61 73 3c 2f 61 3e 3c 2f 6c | d="toc-as".href="#as">@as</a></l |
| 4fe0 | 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 73 | i>.............<li><a.id="toc-as |
| 5000 | 79 6e 63 43 61 6c 6c 22 20 68 72 65 66 3d 22 23 61 73 79 6e 63 43 61 6c 6c 22 3e 40 61 73 79 6e | yncCall".href="#asyncCall">@asyn |
| 5020 | 63 43 61 6c 6c 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c | cCall</a></li>.............<li>< |
| 5040 | 61 20 69 64 3d 22 74 6f 63 2d 61 74 6f 6d 69 63 4c 6f 61 64 22 20 68 72 65 66 3d 22 23 61 74 6f | a.id="toc-atomicLoad".href="#ato |
| 5060 | 6d 69 63 4c 6f 61 64 22 3e 40 61 74 6f 6d 69 63 4c 6f 61 64 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 | micLoad">@atomicLoad</a></li>... |
| 5080 | 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 61 74 6f 6d 69 63 52 | ..........<li><a.id="toc-atomicR |
| 50a0 | 6d 77 22 20 68 72 65 66 3d 22 23 61 74 6f 6d 69 63 52 6d 77 22 3e 40 61 74 6f 6d 69 63 52 6d 77 | mw".href="#atomicRmw">@atomicRmw |
| 50c0 | 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= |
| 50e0 | 22 74 6f 63 2d 61 74 6f 6d 69 63 53 74 6f 72 65 22 20 68 72 65 66 3d 22 23 61 74 6f 6d 69 63 53 | "toc-atomicStore".href="#atomicS |
| 5100 | 74 6f 72 65 22 3e 40 61 74 6f 6d 69 63 53 74 6f 72 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 | tore">@atomicStore</a></li>..... |
| 5120 | 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 62 69 74 43 61 73 74 22 20 | ........<li><a.id="toc-bitCast". |
| 5140 | 68 72 65 66 3d 22 23 62 69 74 43 61 73 74 22 3e 40 62 69 74 43 61 73 74 3c 2f 61 3e 3c 2f 6c 69 | href="#bitCast">@bitCast</a></li |
| 5160 | 3e 0a 20 20 20 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 | >.............<li><a.id="toc-bit |
| 5180 | 4f 66 66 73 65 74 4f 66 22 20 68 72 65 66 3d 22 23 62 69 74 4f 66 66 73 65 74 4f 66 22 3e 40 62 | OffsetOf".href="#bitOffsetOf">@b |
| 51a0 | 69 74 4f 66 66 73 65 74 4f 66 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | itOffsetOf</a></li>............. |
| 51c0 | 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 62 6f 6f 6c 54 6f 49 6e 74 22 20 68 72 65 66 3d 22 | <li><a.id="toc-boolToInt".href=" |
| 51e0 | 23 62 6f 6f 6c 54 6f 49 6e 74 22 3e 40 62 6f 6f 6c 54 6f 49 6e 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a | #boolToInt">@boolToInt</a></li>. |
| 5200 | 20 20 20 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 |
| 5220 | 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 |
| 5240 | 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 |
| 5260 | 64 3d 22 74 6f 63 2d 62 72 65 61 6b 70 6f 69 6e 74 22 20 68 72 65 66 3d 22 23 62 72 65 61 6b 70 | d="toc-breakpoint".href="#breakp |
| 5280 | 6f 69 6e 74 22 3e 40 62 72 65 61 6b 70 6f 69 6e 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 | oint">@breakpoint</a></li>...... |
| 52a0 | 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 6d 75 6c 41 64 64 22 20 68 72 | .......<li><a.id="toc-mulAdd".hr |
| 52c0 | 65 66 3d 22 23 6d 75 6c 41 64 64 22 3e 40 6d 75 6c 41 64 64 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 | ef="#mulAdd">@mulAdd</a></li>... |
| 52e0 | 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 62 79 74 65 53 77 61 | ..........<li><a.id="toc-byteSwa |
| 5300 | 70 22 20 68 72 65 66 3d 22 23 62 79 74 65 53 77 61 70 22 3e 40 62 79 74 65 53 77 61 70 3c 2f 61 | p".href="#byteSwap">@byteSwap</a |
| 5320 | 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 |
| 5340 | 63 2d 62 69 74 52 65 76 65 72 73 65 22 20 68 72 65 66 3d 22 23 62 69 74 52 65 76 65 72 73 65 22 | c-bitReverse".href="#bitReverse" |
| 5360 | 3e 40 62 69 74 52 65 76 65 72 73 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 | >@bitReverse</a></li>........... |
| 5380 | 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 62 79 74 65 4f 66 66 73 65 74 4f 66 22 20 68 | ..<li><a.id="toc-byteOffsetOf".h |
| 53a0 | 72 65 66 3d 22 23 62 79 74 65 4f 66 66 73 65 74 4f 66 22 3e 40 62 79 74 65 4f 66 66 73 65 74 4f | ref="#byteOffsetOf">@byteOffsetO |
| 53c0 | 66 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 | f</a></li>.............<li><a.id |
| 53e0 | 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 6c 3c 2f | ="toc-call".href="#call">@call</ |
| 5400 | 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 |
| 5420 | 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 63 44 65 | oc-cDefine".href="#cDefine">@cDe |
| 5440 | 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 3e 3c 61 | fine</a></li>.............<li><a |
| 5460 | 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 6f 72 74 | .id="toc-cImport".href="#cImport |
| 5480 | 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 20 20 20 | ">@cImport</a></li>............. |
| 54a0 | 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 3d 22 23 | <li><a.id="toc-cInclude".href="# |
| 54c0 | 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 20 20 20 | cInclude">@cInclude</a></li>.... |
| 54e0 | 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 68 72 65 | .........<li><a.id="toc-clz".hre |
| 5500 | 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 20 20 20 | f="#clz">@clz</a></li>.......... |
| 5520 | 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 6e 67 22 | ...<li><a.id="toc-cmpxchgStrong" |
| 5540 | 20 68 72 65 66 3d 22 23 63 6d 70 78 63 68 67 53 74 72 6f 6e 67 22 3e 40 63 6d 70 78 63 68 67 53 | .href="#cmpxchgStrong">@cmpxchgS |
| 5560 | 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 69 3e 3c | trong</a></li>.............<li>< |
| 5580 | 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 23 63 6d | a.id="toc-cmpxchgWeak".href="#cm |
| 55a0 | 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 3e | pxchgWeak">@cmpxchgWeak</a></li> |
| 55c0 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 63 6f 6d 70 | .............<li><a.id="toc-comp |
| 55e0 | 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 22 3e 40 | ileError".href="#compileError">@ |
| 5600 | 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 20 20 20 | compileError</a></li>........... |
| 5620 | 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 68 72 65 | ..<li><a.id="toc-compileLog".hre |
| 5640 | 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 61 3e 3c | f="#compileLog">@compileLog</a>< |
| 5660 | 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- |
| 5680 | 63 74 7a 22 20 68 72 65 66 3d 22 23 63 74 7a 22 3e 40 63 74 7a 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 | ctz".href="#ctz">@ctz</a></li>.. |
| 56a0 | 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 63 55 6e 64 65 66 | ...........<li><a.id="toc-cUndef |
| 56c0 | 22 20 68 72 65 66 3d 22 23 63 55 6e 64 65 66 22 3e 40 63 55 6e 64 65 66 3c 2f 61 3e 3c 2f 6c 69 | ".href="#cUndef">@cUndef</a></li |
| 56e0 | 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 64 69 76 | >.............<li><a.id="toc-div |
| 5700 | 45 78 61 63 74 22 20 68 72 65 66 3d 22 23 64 69 76 45 78 61 63 74 22 3e 40 64 69 76 45 78 61 63 | Exact".href="#divExact">@divExac |
| 5720 | 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 |
| 5740 | 3d 22 74 6f 63 2d 64 69 76 46 6c 6f 6f 72 22 20 68 72 65 66 3d 22 23 64 69 76 46 6c 6f 6f 72 22 | ="toc-divFloor".href="#divFloor" |
| 5760 | 3e 40 64 69 76 46 6c 6f 6f 72 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | >@divFloor</a></li>............. |
| 5780 | 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 64 69 76 54 72 75 6e 63 22 20 68 72 65 66 3d 22 23 | <li><a.id="toc-divTrunc".href="# |
| 57a0 | 64 69 76 54 72 75 6e 63 22 3e 40 64 69 76 54 72 75 6e 63 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 | divTrunc">@divTrunc</a></li>.... |
| 57c0 | 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 65 6d 62 65 64 46 69 6c | .........<li><a.id="toc-embedFil |
| 57e0 | 65 22 20 68 72 65 66 3d 22 23 65 6d 62 65 64 46 69 6c 65 22 3e 40 65 6d 62 65 64 46 69 6c 65 3c | e".href="#embedFile">@embedFile< |
| 5800 | 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=" |
| 5820 | 74 6f 63 2d 65 6e 75 6d 54 6f 49 6e 74 22 20 68 72 65 66 3d 22 23 65 6e 75 6d 54 6f 49 6e 74 22 | toc-enumToInt".href="#enumToInt" |
| 5840 | 3e 40 65 6e 75 6d 54 6f 49 6e 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 | >@enumToInt</a></li>............ |
| 5860 | 20 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 | .<li><a.id="toc-errorName".href= |
| 5880 | 22 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 | "#errorName">@errorName</a></li> |
| 58a0 | 0a 20 20 20 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 |
| 58c0 | 72 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 | rReturnTrace".href="#errorReturn |
| 58e0 | 54 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 | Trace">@errorReturnTrace</a></li |
| 5900 | 3e 0a 20 20 20 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 | >.............<li><a.id="toc-err |
| 5920 | 6f 72 54 6f 49 6e 74 22 20 68 72 65 66 3d 22 23 65 72 72 6f 72 54 6f 49 6e 74 22 3e 40 65 72 72 | orToInt".href="#errorToInt">@err |
| 5940 | 6f 72 54 6f 49 6e 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 | orToInt</a></li>.............<li |
| 5960 | 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 65 72 72 53 65 74 43 61 73 74 22 20 68 72 65 66 3d 22 23 65 | ><a.id="toc-errSetCast".href="#e |
| 5980 | 72 72 53 65 74 43 61 73 74 22 3e 40 65 72 72 53 65 74 43 61 73 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a | rrSetCast">@errSetCast</a></li>. |
| 59a0 | 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 65 78 70 6f 72 | ............<li><a.id="toc-expor |
| 59c0 | 74 22 20 68 72 65 66 3d 22 23 65 78 70 6f 72 74 22 3e 40 65 78 70 6f 72 74 3c 2f 61 3e 3c 2f 6c | t".href="#export">@export</a></l |
| 59e0 | 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 65 | i>.............<li><a.id="toc-fe |
| 5a00 | 6e 63 65 22 20 68 72 65 66 3d 22 23 66 65 6e 63 65 22 3e 40 66 65 6e 63 65 3c 2f 61 3e 3c 2f 6c | nce".href="#fence">@fence</a></l |
| 5a20 | 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 69 | i>.............<li><a.id="toc-fi |
| 5a40 | 65 6c 64 22 20 68 72 65 66 3d 22 23 66 69 65 6c 64 22 3e 40 66 69 65 6c 64 3c 2f 61 3e 3c 2f 6c | eld".href="#field">@field</a></l |
| 5a60 | 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 69 | i>.............<li><a.id="toc-fi |
| 5a80 | 65 6c 64 50 61 72 65 6e 74 50 74 72 22 20 68 72 65 66 3d 22 23 66 69 65 6c 64 50 61 72 65 6e 74 | eldParentPtr".href="#fieldParent |
| 5aa0 | 50 74 72 22 3e 40 66 69 65 6c 64 50 61 72 65 6e 74 50 74 72 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 | Ptr">@fieldParentPtr</a></li>... |
| 5ac0 | 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 66 6c 6f 61 74 43 61 | ..........<li><a.id="toc-floatCa |
| 5ae0 | 73 74 22 20 68 72 65 66 3d 22 23 66 6c 6f 61 74 43 61 73 74 22 3e 40 66 6c 6f 61 74 43 61 73 74 | st".href="#floatCast">@floatCast |
| 5b00 | 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= |
| 5b20 | 22 74 6f 63 2d 66 6c 6f 61 74 54 6f 49 6e 74 22 20 68 72 65 66 3d 22 23 66 6c 6f 61 74 54 6f 49 | "toc-floatToInt".href="#floatToI |
| 5b40 | 6e 74 22 3e 40 66 6c 6f 61 74 54 6f 49 6e 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 | nt">@floatToInt</a></li>........ |
| 5b60 | 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 22 20 68 72 65 66 3d | .....<li><a.id="toc-frame".href= |
| 5b80 | 22 23 66 72 61 6d 65 22 3e 40 66 72 61 6d 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 | "#frame">@frame</a></li>........ |
| 5ba0 | 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 46 72 61 6d 65 22 20 68 72 65 66 3d | .....<li><a.id="toc-Frame".href= |
| 5bc0 | 22 23 46 72 61 6d 65 22 3e 40 46 72 61 6d 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 | "#Frame">@Frame</a></li>........ |
| 5be0 | 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 73 73 | .....<li><a.id="toc-frameAddress |
| 5c00 | 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 64 64 | ".href="#frameAddress">@frameAdd |
| 5c20 | 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 3c 61 | ress</a></li>.............<li><a |
| 5c40 | 20 69 64 3d 22 74 6f 63 2d 66 72 61 6d 65 53 69 7a 65 22 20 68 72 65 66 3d 22 23 66 72 61 6d 65 | .id="toc-frameSize".href="#frame |
| 5c60 | 53 69 7a 65 22 3e 40 66 72 61 6d 65 53 69 7a 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | Size">@frameSize</a></li>....... |
| 5c80 | 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 68 61 73 44 65 63 6c 22 20 68 72 | ......<li><a.id="toc-hasDecl".hr |
| 5ca0 | 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 69 3e 0a | ef="#hasDecl">@hasDecl</a></li>. |
| 5cc0 | 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 68 61 73 46 69 | ............<li><a.id="toc-hasFi |
| 5ce0 | 65 6c 64 22 20 68 72 65 66 3d 22 23 68 61 73 46 69 65 6c 64 22 3e 40 68 61 73 46 69 65 6c 64 3c | eld".href="#hasField">@hasField< |
| 5d00 | 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=" |
| 5d20 | 74 6f 63 2d 69 6d 70 6f 72 74 22 20 68 72 65 66 3d 22 23 69 6d 70 6f 72 74 22 3e 40 69 6d 70 6f | toc-import".href="#import">@impo |
| 5d40 | 72 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 | rt</a></li>.............<li><a.i |
| 5d60 | 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 61 73 74 22 3e | d="toc-intCast".href="#intCast"> |
| 5d80 | 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 20 20 20 3c 6c | @intCast</a></li>.............<l |
| 5da0 | 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 69 6e 74 54 6f 45 6e 75 6d 22 20 68 72 65 66 3d 22 23 69 | i><a.id="toc-intToEnum".href="#i |
| 5dc0 | 6e 74 54 6f 45 6e 75 6d 22 3e 40 69 6e 74 54 6f 45 6e 75 6d 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 | ntToEnum">@intToEnum</a></li>... |
| 5de0 | 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 69 6e 74 54 6f 45 72 | ..........<li><a.id="toc-intToEr |
| 5e00 | 72 6f 72 22 20 68 72 65 66 3d 22 23 69 6e 74 54 6f 45 72 72 6f 72 22 3e 40 69 6e 74 54 6f 45 72 | ror".href="#intToError">@intToEr |
| 5e20 | 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 20 | ror</a></li>.............<li><a. |
| 5e40 | 69 64 3d 22 74 6f 63 2d 69 6e 74 54 6f 46 6c 6f 61 74 22 20 68 72 65 66 3d 22 23 69 6e 74 54 6f | id="toc-intToFloat".href="#intTo |
| 5e60 | 46 6c 6f 61 74 22 3e 40 69 6e 74 54 6f 46 6c 6f 61 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 | Float">@intToFloat</a></li>..... |
| 5e80 | 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 69 6e 74 54 6f 50 74 72 22 | ........<li><a.id="toc-intToPtr" |
| 5ea0 | 20 68 72 65 66 3d 22 23 69 6e 74 54 6f 50 74 72 22 3e 40 69 6e 74 54 6f 50 74 72 3c 2f 61 3e 3c | .href="#intToPtr">@intToPtr</a>< |
| 5ec0 | 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- |
| 5ee0 | 6d 65 6d 63 70 79 22 20 68 72 65 66 3d 22 23 6d 65 6d 63 70 79 22 3e 40 6d 65 6d 63 70 79 3c 2f | memcpy".href="#memcpy">@memcpy</ |
| 5f00 | 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 |
| 5f20 | 6f 63 2d 6d 65 6d 73 65 74 22 20 68 72 65 66 3d 22 23 6d 65 6d 73 65 74 22 3e 40 6d 65 6d 73 65 | oc-memset".href="#memset">@memse |
| 5f40 | 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 |
| 5f60 | 3d 22 74 6f 63 2d 77 61 73 6d 4d 65 6d 6f 72 79 53 69 7a 65 22 20 68 72 65 66 3d 22 23 77 61 73 | ="toc-wasmMemorySize".href="#was |
| 5f80 | 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> |
| 5fa0 | 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 |
| 5fc0 | 2d 77 61 73 6d 4d 65 6d 6f 72 79 47 72 6f 77 22 20 68 72 65 66 3d 22 23 77 61 73 6d 4d 65 6d 6f | -wasmMemoryGrow".href="#wasmMemo |
| 5fe0 | 72 79 47 72 6f 77 22 3e 40 77 61 73 6d 4d 65 6d 6f 72 79 47 72 6f 77 3c 2f 61 3e 3c 2f 6c 69 3e | ryGrow">@wasmMemoryGrow</a></li> |
| 6000 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 6d 6f 64 22 | .............<li><a.id="toc-mod" |
| 6020 | 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 20 20 20 20 20 | .href="#mod">@mod</a></li>...... |
| 6040 | 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 6d 75 6c 57 69 74 68 4f 76 65 | .......<li><a.id="toc-mulWithOve |
| 6060 | 72 66 6c 6f 77 22 20 68 72 65 66 3d 22 23 6d 75 6c 57 69 74 68 4f 76 65 72 66 6c 6f 77 22 3e 40 | rflow".href="#mulWithOverflow">@ |
| 6080 | 6d 75 6c 57 69 74 68 4f 76 65 72 66 6c 6f 77 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 | mulWithOverflow</a></li>........ |
| 60a0 | 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 70 61 6e 69 63 22 20 68 72 65 66 3d | .....<li><a.id="toc-panic".href= |
| 60c0 | 22 23 70 61 6e 69 63 22 3e 40 70 61 6e 69 63 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 | "#panic">@panic</a></li>........ |
| 60e0 | 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 70 6f 70 43 6f 75 6e 74 22 20 68 72 | .....<li><a.id="toc-popCount".hr |
| 6100 | 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 69 | ef="#popCount">@popCount</a></li |
| 6120 | 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 70 74 72 | >.............<li><a.id="toc-ptr |
| 6140 | 43 61 73 74 22 20 68 72 65 66 3d 22 23 70 74 72 43 61 73 74 22 3e 40 70 74 72 43 61 73 74 3c 2f | Cast".href="#ptrCast">@ptrCast</ |
| 6160 | 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 |
| 6180 | 6f 63 2d 70 74 72 54 6f 49 6e 74 22 20 68 72 65 66 3d 22 23 70 74 72 54 6f 49 6e 74 22 3e 40 70 | oc-ptrToInt".href="#ptrToInt">@p |
| 61a0 | 74 72 54 6f 49 6e 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 | trToInt</a></li>.............<li |
| 61c0 | 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 72 65 6d 22 20 68 72 65 66 3d 22 23 72 65 6d 22 3e 40 72 65 | ><a.id="toc-rem".href="#rem">@re |
| 61e0 | 6d 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 | m</a></li>.............<li><a.id |
| 6200 | 3d 22 74 6f 63 2d 72 65 74 75 72 6e 41 64 64 72 65 73 73 22 20 68 72 65 66 3d 22 23 72 65 74 75 | ="toc-returnAddress".href="#retu |
| 6220 | 72 6e 41 64 64 72 65 73 73 22 3e 40 72 65 74 75 72 6e 41 64 64 72 65 73 73 3c 2f 61 3e 3c 2f 6c | rnAddress">@returnAddress</a></l |
| 6240 | 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 65 | i>.............<li><a.id="toc-se |
| 6260 | 74 41 6c 69 67 6e 53 74 61 63 6b 22 20 68 72 65 66 3d 22 23 73 65 74 41 6c 69 67 6e 53 74 61 63 | tAlignStack".href="#setAlignStac |
| 6280 | 6b 22 3e 40 73 65 74 41 6c 69 67 6e 53 74 61 63 6b 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 | k">@setAlignStack</a></li>...... |
| 62a0 | 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 73 65 74 43 6f 6c 64 22 20 68 | .......<li><a.id="toc-setCold".h |
| 62c0 | 72 65 66 3d 22 23 73 65 74 43 6f 6c 64 22 3e 40 73 65 74 43 6f 6c 64 3c 2f 61 3e 3c 2f 6c 69 3e | ref="#setCold">@setCold</a></li> |
| 62e0 | 0a 20 20 20 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 | .............<li><a.id="toc-setE |
| 6300 | 76 61 6c 42 72 61 6e 63 68 51 75 6f 74 61 22 20 68 72 65 66 3d 22 23 73 65 74 45 76 61 6c 42 72 | valBranchQuota".href="#setEvalBr |
| 6320 | 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</ |
| 6340 | 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 |
| 6360 | 6f 63 2d 73 65 74 46 6c 6f 61 74 4d 6f 64 65 22 20 68 72 65 66 3d 22 23 73 65 74 46 6c 6f 61 74 | oc-setFloatMode".href="#setFloat |
| 6380 | 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 0a 20 20 20 | Mode">@setFloatMode</a></li>.... |
| 63a0 | 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 52 75 6e 74 69 | .........<li><a.id="toc-setRunti |
| 63c0 | 6d 65 53 61 66 65 74 79 22 20 68 72 65 66 3d 22 23 73 65 74 52 75 6e 74 69 6d 65 53 61 66 65 74 | meSafety".href="#setRuntimeSafet |
| 63e0 | 79 22 3e 40 73 65 74 52 75 6e 74 69 6d 65 53 61 66 65 74 79 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 | y">@setRuntimeSafety</a></li>... |
| 6400 | 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 73 68 6c 45 78 61 63 | ..........<li><a.id="toc-shlExac |
| 6420 | 74 22 20 68 72 65 66 3d 22 23 73 68 6c 45 78 61 63 74 22 3e 40 73 68 6c 45 78 61 63 74 3c 2f 61 | t".href="#shlExact">@shlExact</a |
| 6440 | 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f | ></li>.............<li><a.id="to |
| 6460 | 63 2d 73 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 | c-shlWithOverflow".href="#shlWit |
| 6480 | 68 4f 76 65 72 66 6c 6f 77 22 3e 40 73 68 6c 57 69 74 68 4f 76 65 72 66 6c 6f 77 3c 2f 61 3e 3c | hOverflow">@shlWithOverflow</a>< |
| 64a0 | 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- |
| 64c0 | 73 68 72 45 78 61 63 74 22 20 68 72 65 66 3d 22 23 73 68 72 45 78 61 63 74 22 3e 40 73 68 72 45 | shrExact".href="#shrExact">@shrE |
| 64e0 | 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 61 | xact</a></li>.............<li><a |
| 6500 | 20 69 64 3d 22 74 6f 63 2d 73 68 75 66 66 6c 65 22 20 68 72 65 66 3d 22 23 73 68 75 66 66 6c 65 | .id="toc-shuffle".href="#shuffle |
| 6520 | 22 3e 40 73 68 75 66 66 6c 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | ">@shuffle</a></li>............. |
| 6540 | 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 73 69 7a 65 4f 66 22 20 68 72 65 66 3d 22 23 73 69 | <li><a.id="toc-sizeOf".href="#si |
| 6560 | 7a 65 4f 66 22 3e 40 73 69 7a 65 4f 66 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 | zeOf">@sizeOf</a></li>.......... |
| 6580 | 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 73 70 6c 61 74 22 20 68 72 65 66 3d 22 23 | ...<li><a.id="toc-splat".href="# |
| 65a0 | 73 70 6c 61 74 22 3e 40 73 70 6c 61 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 | splat">@splat</a></li>.......... |
| 65c0 | 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 72 65 64 75 63 65 22 20 68 72 65 66 3d 22 | ...<li><a.id="toc-reduce".href=" |
| 65e0 | 23 72 65 64 75 63 65 22 3e 40 72 65 64 75 63 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | #reduce">@reduce</a></li>....... |
| 6600 | 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 73 72 63 22 20 68 72 65 66 3d 22 | ......<li><a.id="toc-src".href=" |
| 6620 | 23 73 72 63 22 3e 40 73 72 63 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | #src">@src</a></li>............. |
| 6640 | 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 73 71 72 74 22 20 68 72 65 66 3d 22 23 73 71 72 74 | <li><a.id="toc-sqrt".href="#sqrt |
| 6660 | 22 3e 40 73 71 72 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 | ">@sqrt</a></li>.............<li |
| 6680 | 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 73 69 6e 22 20 68 72 65 66 3d 22 23 73 69 6e 22 3e 40 73 69 | ><a.id="toc-sin".href="#sin">@si |
| 66a0 | 6e 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 | n</a></li>.............<li><a.id |
| 66c0 | 3d 22 74 6f 63 2d 63 6f 73 22 20 68 72 65 66 3d 22 23 63 6f 73 22 3e 40 63 6f 73 3c 2f 61 3e 3c | ="toc-cos".href="#cos">@cos</a>< |
| 66e0 | 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- |
| 6700 | 65 78 70 22 20 68 72 65 66 3d 22 23 65 78 70 22 3e 40 65 78 70 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 | exp".href="#exp">@exp</a></li>.. |
| 6720 | 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 65 78 70 32 22 20 | ...........<li><a.id="toc-exp2". |
| 6740 | 68 72 65 66 3d 22 23 65 78 70 32 22 3e 40 65 78 70 32 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 | href="#exp2">@exp2</a></li>..... |
| 6760 | 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 6c 6f 67 22 20 68 72 65 66 | ........<li><a.id="toc-log".href |
| 6780 | 3d 22 23 6c 6f 67 22 3e 40 6c 6f 67 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 | ="#log">@log</a></li>........... |
| 67a0 | 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 6c 6f 67 32 22 20 68 72 65 66 3d 22 23 6c 6f | ..<li><a.id="toc-log2".href="#lo |
| 67c0 | 67 32 22 3e 40 6c 6f 67 32 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c | g2">@log2</a></li>.............< |
| 67e0 | 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 6c 6f 67 31 30 22 20 68 72 65 66 3d 22 23 6c 6f 67 31 | li><a.id="toc-log10".href="#log1 |
| 6800 | 30 22 3e 40 6c 6f 67 31 30 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c | 0">@log10</a></li>.............< |
| 6820 | 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 66 61 62 73 22 20 68 72 65 66 3d 22 23 66 61 62 73 22 | li><a.id="toc-fabs".href="#fabs" |
| 6840 | 3e 40 66 61 62 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e | >@fabs</a></li>.............<li> |
| 6860 | 3c 61 20 69 64 3d 22 74 6f 63 2d 66 6c 6f 6f 72 22 20 68 72 65 66 3d 22 23 66 6c 6f 6f 72 22 3e | <a.id="toc-floor".href="#floor"> |
| 6880 | 40 66 6c 6f 6f 72 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e | @floor</a></li>.............<li> |
| 68a0 | 3c 61 20 69 64 3d 22 74 6f 63 2d 63 65 69 6c 22 20 68 72 65 66 3d 22 23 63 65 69 6c 22 3e 40 63 | <a.id="toc-ceil".href="#ceil">@c |
| 68c0 | 65 69 6c 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 | eil</a></li>.............<li><a. |
| 68e0 | 69 64 3d 22 74 6f 63 2d 74 72 75 6e 63 22 20 68 72 65 66 3d 22 23 74 72 75 6e 63 22 3e 40 74 72 | id="toc-trunc".href="#trunc">@tr |
| 6900 | 75 6e 63 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 | unc</a></li>.............<li><a. |
| 6920 | 69 64 3d 22 74 6f 63 2d 72 6f 75 6e 64 22 20 68 72 65 66 3d 22 23 72 6f 75 6e 64 22 3e 40 72 6f | id="toc-round".href="#round">@ro |
| 6940 | 75 6e 64 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 | und</a></li>.............<li><a. |
| 6960 | 69 64 3d 22 74 6f 63 2d 73 75 62 57 69 74 68 4f 76 65 72 66 6c 6f 77 22 20 68 72 65 66 3d 22 23 | id="toc-subWithOverflow".href="# |
| 6980 | 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 6c 6f | subWithOverflow">@subWithOverflo |
| 69a0 | 77 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 | w</a></li>.............<li><a.id |
| 69c0 | 3d 22 74 6f 63 2d 74 61 67 4e 61 6d 65 22 20 68 72 65 66 3d 22 23 74 61 67 4e 61 6d 65 22 3e 40 | ="toc-tagName".href="#tagName">@ |
| 69e0 | 74 61 67 4e 61 6d 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 | tagName</a></li>.............<li |
| 6a00 | 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 54 61 67 54 79 70 65 22 20 68 72 65 66 3d 22 23 54 61 67 54 | ><a.id="toc-TagType".href="#TagT |
| 6a20 | 79 70 65 22 3e 40 54 61 67 54 79 70 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 | ype">@TagType</a></li>.......... |
| 6a40 | 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 54 68 69 73 22 20 68 72 65 66 3d 22 23 54 | ...<li><a.id="toc-This".href="#T |
| 6a60 | 68 69 73 22 3e 40 54 68 69 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | his">@This</a></li>............. |
| 6a80 | 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 74 72 75 6e 63 61 74 65 22 20 68 72 65 66 3d 22 23 | <li><a.id="toc-truncate".href="# |
| 6aa0 | 74 72 75 6e 63 61 74 65 22 3e 40 74 72 75 6e 63 61 74 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 | truncate">@truncate</a></li>.... |
| 6ac0 | 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 22 20 68 72 | .........<li><a.id="toc-Type".hr |
| 6ae0 | 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 20 20 20 20 20 20 | ef="#Type">@Type</a></li>....... |
| 6b00 | 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 74 79 70 65 49 6e 66 6f 22 20 68 | ......<li><a.id="toc-typeInfo".h |
| 6b20 | 72 65 66 3d 22 23 74 79 70 65 49 6e 66 6f 22 3e 40 74 79 70 65 49 6e 66 6f 3c 2f 61 3e 3c 2f 6c | ref="#typeInfo">@typeInfo</a></l |
| 6b40 | 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 74 79 | i>.............<li><a.id="toc-ty |
| 6b60 | 70 65 4e 61 6d 65 22 20 68 72 65 66 3d 22 23 74 79 70 65 4e 61 6d 65 22 3e 40 74 79 70 65 4e 61 | peName".href="#typeName">@typeNa |
| 6b80 | 6d 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 | me</a></li>.............<li><a.i |
| 6ba0 | 64 3d 22 74 6f 63 2d 54 79 70 65 4f 66 22 20 68 72 65 66 3d 22 23 54 79 70 65 4f 66 22 3e 40 54 | d="toc-TypeOf".href="#TypeOf">@T |
| 6bc0 | 79 70 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 3c 6c 69 3e 3c | ypeOf</a></li>.............<li>< |
| 6be0 | 61 20 69 64 3d 22 74 6f 63 2d 75 6e 69 6f 6e 49 6e 69 74 22 20 68 72 65 66 3d 22 23 75 6e 69 6f | a.id="toc-unionInit".href="#unio |
| 6c00 | 6e 49 6e 69 74 22 3e 40 75 6e 69 6f 6e 49 6e 69 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 | nInit">@unionInit</a></li>...... |
| 6c20 | 20 20 20 3c 2f 75 6c 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d | ...</ul></li>.........<li><a.id= |
| 6c40 | 22 74 6f 63 2d 42 75 69 6c 64 2d 4d 6f 64 65 22 20 68 72 65 66 3d 22 23 42 75 69 6c 64 2d 4d 6f | "toc-Build-Mode".href="#Build-Mo |
| 6c60 | 64 65 22 3e 42 75 69 6c 64 20 4d 6f 64 65 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a | de">Build.Mode</a>.........<ul>. |
| 6c80 | 20 20 20 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 62 75 67 | ............<li><a.id="toc-Debug |
| 6ca0 | 22 20 68 72 65 66 3d 22 23 44 65 62 75 67 22 3e 44 65 62 75 67 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 | ".href="#Debug">Debug</a></li>.. |
| 6cc0 | 20 20 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 | ...........<li><a.id="toc-Releas |
| 6ce0 | 65 46 61 73 74 22 20 68 72 65 66 3d 22 23 52 65 6c 65 61 73 65 46 61 73 74 22 3e 52 65 6c 65 61 | eFast".href="#ReleaseFast">Relea |
| 6d00 | 73 65 46 61 73 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e | seFast</a></li>.............<li> |
| 6d20 | 3c 61 20 69 64 3d 22 74 6f 63 2d 52 65 6c 65 61 73 65 53 61 66 65 22 20 68 72 65 66 3d 22 23 52 | <a.id="toc-ReleaseSafe".href="#R |
| 6d40 | 65 6c 65 61 73 65 53 61 66 65 22 3e 52 65 6c 65 61 73 65 53 61 66 65 3c 2f 61 3e 3c 2f 6c 69 3e | eleaseSafe">ReleaseSafe</a></li> |
| 6d60 | 0a 20 20 20 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 | .............<li><a.id="toc-Rele |
| 6d80 | 61 73 65 53 6d 61 6c 6c 22 20 68 72 65 66 3d 22 23 52 65 6c 65 61 73 65 53 6d 61 6c 6c 22 3e 52 | aseSmall".href="#ReleaseSmall">R |
| 6da0 | 65 6c 65 61 73 65 53 6d 61 6c 6c 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 2f 75 | eleaseSmall</a></li>.........</u |
| 6dc0 | 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 53 | l></li>.........<li><a.id="toc-S |
| 6de0 | 69 6e 67 6c 65 2d 54 68 72 65 61 64 65 64 2d 42 75 69 6c 64 73 22 20 68 72 65 66 3d 22 23 53 69 | ingle-Threaded-Builds".href="#Si |
| 6e00 | 6e 67 6c 65 2d 54 68 72 65 61 64 65 64 2d 42 75 69 6c 64 73 22 3e 53 69 6e 67 6c 65 20 54 68 72 | ngle-Threaded-Builds">Single.Thr |
| 6e20 | 65 61 64 65 64 20 42 75 69 6c 64 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c | eaded.Builds</a></li>.........<l |
| 6e40 | 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 55 6e 64 65 66 69 6e 65 64 2d 42 65 68 61 76 69 6f 72 22 | i><a.id="toc-Undefined-Behavior" |
| 6e60 | 20 68 72 65 66 3d 22 23 55 6e 64 65 66 69 6e 65 64 2d 42 65 68 61 76 69 6f 72 22 3e 55 6e 64 65 | .href="#Undefined-Behavior">Unde |
| 6e80 | 66 69 6e 65 64 20 42 65 68 61 76 69 6f 72 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a | fined.Behavior</a>.........<ul>. |
| 6ea0 | 20 20 20 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 61 63 68 | ............<li><a.id="toc-Reach |
| 6ec0 | 69 6e 67 2d 55 6e 72 65 61 63 68 61 62 6c 65 2d 43 6f 64 65 22 20 68 72 65 66 3d 22 23 52 65 61 | ing-Unreachable-Code".href="#Rea |
| 6ee0 | 63 68 69 6e 67 2d 55 6e 72 65 61 63 68 61 62 6c 65 2d 43 6f 64 65 22 3e 52 65 61 63 68 69 6e 67 | ching-Unreachable-Code">Reaching |
| 6f00 | 20 55 6e 72 65 61 63 68 61 62 6c 65 20 43 6f 64 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 | .Unreachable.Code</a></li>...... |
| 6f20 | 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 49 6e 64 65 78 2d 6f 75 74 2d | .......<li><a.id="toc-Index-out- |
| 6f40 | 6f 66 2d 42 6f 75 6e 64 73 22 20 68 72 65 66 3d 22 23 49 6e 64 65 78 2d 6f 75 74 2d 6f 66 2d 42 | of-Bounds".href="#Index-out-of-B |
| 6f60 | 6f 75 6e 64 73 22 3e 49 6e 64 65 78 20 6f 75 74 20 6f 66 20 42 6f 75 6e 64 73 3c 2f 61 3e 3c 2f | ounds">Index.out.of.Bounds</a></ |
| 6f80 | 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 43 | li>.............<li><a.id="toc-C |
| 6fa0 | 61 73 74 2d 4e 65 67 61 74 69 76 65 2d 4e 75 6d 62 65 72 2d 74 6f 2d 55 6e 73 69 67 6e 65 64 2d | ast-Negative-Number-to-Unsigned- |
| 6fc0 | 49 6e 74 65 67 65 72 22 20 68 72 65 66 3d 22 23 43 61 73 74 2d 4e 65 67 61 74 69 76 65 2d 4e 75 | Integer".href="#Cast-Negative-Nu |
| 6fe0 | 6d 62 65 72 2d 74 6f 2d 55 6e 73 69 67 6e 65 64 2d 49 6e 74 65 67 65 72 22 3e 43 61 73 74 20 4e | mber-to-Unsigned-Integer">Cast.N |
| 7000 | 65 67 61 74 69 76 65 20 4e 75 6d 62 65 72 20 74 6f 20 55 6e 73 69 67 6e 65 64 20 49 6e 74 65 67 | egative.Number.to.Unsigned.Integ |
| 7020 | 65 72 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 | er</a></li>.............<li><a.i |
| 7040 | 64 3d 22 74 6f 63 2d 43 61 73 74 2d 54 72 75 6e 63 61 74 65 73 2d 44 61 74 61 22 20 68 72 65 66 | d="toc-Cast-Truncates-Data".href |
| 7060 | 3d 22 23 43 61 73 74 2d 54 72 75 6e 63 61 74 65 73 2d 44 61 74 61 22 3e 43 61 73 74 20 54 72 75 | ="#Cast-Truncates-Data">Cast.Tru |
| 7080 | 6e 63 61 74 65 73 20 44 61 74 61 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 | ncates.Data</a></li>............ |
| 70a0 | 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 49 6e 74 65 67 65 72 2d 4f 76 65 72 66 6c 6f 77 | .<li><a.id="toc-Integer-Overflow |
| 70c0 | 22 20 68 72 65 66 3d 22 23 49 6e 74 65 67 65 72 2d 4f 76 65 72 66 6c 6f 77 22 3e 49 6e 74 65 67 | ".href="#Integer-Overflow">Integ |
| 70e0 | 65 72 20 4f 76 65 72 66 6c 6f 77 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e | er.Overflow</a>.............<ul> |
| 7100 | 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- |
| 7120 | 44 65 66 61 75 6c 74 2d 4f 70 65 72 61 74 69 6f 6e 73 22 20 68 72 65 66 3d 22 23 44 65 66 61 75 | Default-Operations".href="#Defau |
| 7140 | 6c 74 2d 4f 70 65 72 61 74 69 6f 6e 73 22 3e 44 65 66 61 75 6c 74 20 4f 70 65 72 61 74 69 6f 6e | lt-Operations">Default.Operation |
| 7160 | 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c | s</a></li>.................<li>< |
| 7180 | 61 20 69 64 3d 22 74 6f 63 2d 53 74 61 6e 64 61 72 64 2d 4c 69 62 72 61 72 79 2d 4d 61 74 68 2d | a.id="toc-Standard-Library-Math- |
| 71a0 | 46 75 6e 63 74 69 6f 6e 73 22 20 68 72 65 66 3d 22 23 53 74 61 6e 64 61 72 64 2d 4c 69 62 72 61 | Functions".href="#Standard-Libra |
| 71c0 | 72 79 2d 4d 61 74 68 2d 46 75 6e 63 74 69 6f 6e 73 22 3e 53 74 61 6e 64 61 72 64 20 4c 69 62 72 | ry-Math-Functions">Standard.Libr |
| 71e0 | 61 72 79 20 4d 61 74 68 20 46 75 6e 63 74 69 6f 6e 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 | ary.Math.Functions</a></li>..... |
| 7200 | 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 42 75 69 6c 74 | ............<li><a.id="toc-Built |
| 7220 | 69 6e 2d 4f 76 65 72 66 6c 6f 77 2d 46 75 6e 63 74 69 6f 6e 73 22 20 68 72 65 66 3d 22 23 42 75 | in-Overflow-Functions".href="#Bu |
| 7240 | 69 6c 74 69 6e 2d 4f 76 65 72 66 6c 6f 77 2d 46 75 6e 63 74 69 6f 6e 73 22 3e 42 75 69 6c 74 69 | iltin-Overflow-Functions">Builti |
| 7260 | 6e 20 4f 76 65 72 66 6c 6f 77 20 46 75 6e 63 74 69 6f 6e 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 | n.Overflow.Functions</a></li>... |
| 7280 | 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 57 72 61 | ..............<li><a.id="toc-Wra |
| 72a0 | 70 70 69 6e 67 2d 4f 70 65 72 61 74 69 6f 6e 73 22 20 68 72 65 66 3d 22 23 57 72 61 70 70 69 6e | pping-Operations".href="#Wrappin |
| 72c0 | 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 |
| 72e0 | 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 3c 2f 6c 69 | s</a></li>.............</ul></li |
| 7300 | 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 45 78 61 | >.............<li><a.id="toc-Exa |
| 7320 | 63 74 2d 4c 65 66 74 2d 53 68 69 66 74 2d 4f 76 65 72 66 6c 6f 77 22 20 68 72 65 66 3d 22 23 45 | ct-Left-Shift-Overflow".href="#E |
| 7340 | 78 61 63 74 2d 4c 65 66 74 2d 53 68 69 66 74 2d 4f 76 65 72 66 6c 6f 77 22 3e 45 78 61 63 74 20 | xact-Left-Shift-Overflow">Exact. |
| 7360 | 4c 65 66 74 20 53 68 69 66 74 20 4f 76 65 72 66 6c 6f 77 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 | Left.Shift.Overflow</a></li>.... |
| 7380 | 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 45 78 61 63 74 2d 52 69 | .........<li><a.id="toc-Exact-Ri |
| 73a0 | 67 68 74 2d 53 68 69 66 74 2d 4f 76 65 72 66 6c 6f 77 22 20 68 72 65 66 3d 22 23 45 78 61 63 74 | ght-Shift-Overflow".href="#Exact |
| 73c0 | 2d 52 69 67 68 74 2d 53 68 69 66 74 2d 4f 76 65 72 66 6c 6f 77 22 3e 45 78 61 63 74 20 52 69 67 | -Right-Shift-Overflow">Exact.Rig |
| 73e0 | 68 74 20 53 68 69 66 74 20 4f 76 65 72 66 6c 6f 77 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 | ht.Shift.Overflow</a></li>...... |
| 7400 | 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 44 69 76 69 73 69 6f 6e 2d 62 | .......<li><a.id="toc-Division-b |
| 7420 | 79 2d 5a 65 72 6f 22 20 68 72 65 66 3d 22 23 44 69 76 69 73 69 6f 6e 2d 62 79 2d 5a 65 72 6f 22 | y-Zero".href="#Division-by-Zero" |
| 7440 | 3e 44 69 76 69 73 69 6f 6e 20 62 79 20 5a 65 72 6f 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 | >Division.by.Zero</a></li>...... |
| 7460 | 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 52 65 6d 61 69 6e 64 65 72 2d | .......<li><a.id="toc-Remainder- |
| 7480 | 44 69 76 69 73 69 6f 6e 2d 62 79 2d 5a 65 72 6f 22 20 68 72 65 66 3d 22 23 52 65 6d 61 69 6e 64 | Division-by-Zero".href="#Remaind |
| 74a0 | 65 72 2d 44 69 76 69 73 69 6f 6e 2d 62 79 2d 5a 65 72 6f 22 3e 52 65 6d 61 69 6e 64 65 72 20 44 | er-Division-by-Zero">Remainder.D |
| 74c0 | 69 76 69 73 69 6f 6e 20 62 79 20 5a 65 72 6f 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 | ivision.by.Zero</a></li>........ |
| 74e0 | 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 45 78 61 63 74 2d 44 69 76 69 73 69 | .....<li><a.id="toc-Exact-Divisi |
| 7500 | 6f 6e 2d 52 65 6d 61 69 6e 64 65 72 22 20 68 72 65 66 3d 22 23 45 78 61 63 74 2d 44 69 76 69 73 | on-Remainder".href="#Exact-Divis |
| 7520 | 69 6f 6e 2d 52 65 6d 61 69 6e 64 65 72 22 3e 45 78 61 63 74 20 44 69 76 69 73 69 6f 6e 20 52 65 | ion-Remainder">Exact.Division.Re |
| 7540 | 6d 61 69 6e 64 65 72 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 | mainder</a></li>.............<li |
| 7560 | 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 41 74 74 65 6d 70 74 2d 74 6f 2d 55 6e 77 72 61 70 2d 4e 75 | ><a.id="toc-Attempt-to-Unwrap-Nu |
| 7580 | 6c 6c 22 20 68 72 65 66 3d 22 23 41 74 74 65 6d 70 74 2d 74 6f 2d 55 6e 77 72 61 70 2d 4e 75 6c | ll".href="#Attempt-to-Unwrap-Nul |
| 75a0 | 6c 22 3e 41 74 74 65 6d 70 74 20 74 6f 20 55 6e 77 72 61 70 20 4e 75 6c 6c 3c 2f 61 3e 3c 2f 6c | l">Attempt.to.Unwrap.Null</a></l |
| 75c0 | 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 41 74 | i>.............<li><a.id="toc-At |
| 75e0 | 74 65 6d 70 74 2d 74 6f 2d 55 6e 77 72 61 70 2d 45 72 72 6f 72 22 20 68 72 65 66 3d 22 23 41 74 | tempt-to-Unwrap-Error".href="#At |
| 7600 | 74 65 6d 70 74 2d 74 6f 2d 55 6e 77 72 61 70 2d 45 72 72 6f 72 22 3e 41 74 74 65 6d 70 74 20 74 | tempt-to-Unwrap-Error">Attempt.t |
| 7620 | 6f 20 55 6e 77 72 61 70 20 45 72 72 6f 72 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 | o.Unwrap.Error</a></li>......... |
| 7640 | 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 49 6e 76 61 6c 69 64 2d 45 72 72 6f 72 | ....<li><a.id="toc-Invalid-Error |
| 7660 | 2d 43 6f 64 65 22 20 68 72 65 66 3d 22 23 49 6e 76 61 6c 69 64 2d 45 72 72 6f 72 2d 43 6f 64 65 | -Code".href="#Invalid-Error-Code |
| 7680 | 22 3e 49 6e 76 61 6c 69 64 20 45 72 72 6f 72 20 43 6f 64 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 | ">Invalid.Error.Code</a></li>... |
| 76a0 | 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 49 6e 76 61 6c 69 64 | ..........<li><a.id="toc-Invalid |
| 76c0 | 2d 45 6e 75 6d 2d 43 61 73 74 22 20 68 72 65 66 3d 22 23 49 6e 76 61 6c 69 64 2d 45 6e 75 6d 2d | -Enum-Cast".href="#Invalid-Enum- |
| 76e0 | 43 61 73 74 22 3e 49 6e 76 61 6c 69 64 20 45 6e 75 6d 20 43 61 73 74 3c 2f 61 3e 3c 2f 6c 69 3e | Cast">Invalid.Enum.Cast</a></li> |
| 7700 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 49 6e 76 61 | .............<li><a.id="toc-Inva |
| 7720 | 6c 69 64 2d 45 72 72 6f 72 2d 53 65 74 2d 43 61 73 74 22 20 68 72 65 66 3d 22 23 49 6e 76 61 6c | lid-Error-Set-Cast".href="#Inval |
| 7740 | 69 64 2d 45 72 72 6f 72 2d 53 65 74 2d 43 61 73 74 22 3e 49 6e 76 61 6c 69 64 20 45 72 72 6f 72 | id-Error-Set-Cast">Invalid.Error |
| 7760 | 20 53 65 74 20 43 61 73 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c | .Set.Cast</a></li>.............< |
| 7780 | 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 49 6e 63 6f 72 72 65 63 74 2d 50 6f 69 6e 74 65 72 2d | li><a.id="toc-Incorrect-Pointer- |
| 77a0 | 41 6c 69 67 6e 6d 65 6e 74 22 20 68 72 65 66 3d 22 23 49 6e 63 6f 72 72 65 63 74 2d 50 6f 69 6e | Alignment".href="#Incorrect-Poin |
| 77c0 | 74 65 72 2d 41 6c 69 67 6e 6d 65 6e 74 22 3e 49 6e 63 6f 72 72 65 63 74 20 50 6f 69 6e 74 65 72 | ter-Alignment">Incorrect.Pointer |
| 77e0 | 20 41 6c 69 67 6e 6d 65 6e 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | .Alignment</a></li>............. |
| 7800 | 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 57 72 6f 6e 67 2d 55 6e 69 6f 6e 2d 46 69 65 6c 64 | <li><a.id="toc-Wrong-Union-Field |
| 7820 | 2d 41 63 63 65 73 73 22 20 68 72 65 66 3d 22 23 57 72 6f 6e 67 2d 55 6e 69 6f 6e 2d 46 69 65 6c | -Access".href="#Wrong-Union-Fiel |
| 7840 | 64 2d 41 63 63 65 73 73 22 3e 57 72 6f 6e 67 20 55 6e 69 6f 6e 20 46 69 65 6c 64 20 41 63 63 65 | d-Access">Wrong.Union.Field.Acce |
| 7860 | 73 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 | ss</a></li>.............<li><a.i |
| 7880 | 64 3d 22 74 6f 63 2d 4f 75 74 2d 6f 66 2d 42 6f 75 6e 64 73 2d 46 6c 6f 61 74 2d 74 6f 2d 49 6e | d="toc-Out-of-Bounds-Float-to-In |
| 78a0 | 74 65 67 65 72 2d 43 61 73 74 22 20 68 72 65 66 3d 22 23 4f 75 74 2d 6f 66 2d 42 6f 75 6e 64 73 | teger-Cast".href="#Out-of-Bounds |
| 78c0 | 2d 46 6c 6f 61 74 2d 74 6f 2d 49 6e 74 65 67 65 72 2d 43 61 73 74 22 3e 4f 75 74 20 6f 66 20 42 | -Float-to-Integer-Cast">Out.of.B |
| 78e0 | 6f 75 6e 64 73 20 46 6c 6f 61 74 20 74 6f 20 49 6e 74 65 67 65 72 20 43 61 73 74 3c 2f 61 3e 3c | ounds.Float.to.Integer.Cast</a>< |
| 7900 | 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- |
| 7920 | 50 6f 69 6e 74 65 72 2d 43 61 73 74 2d 49 6e 76 61 6c 69 64 2d 4e 75 6c 6c 22 20 68 72 65 66 3d | Pointer-Cast-Invalid-Null".href= |
| 7940 | 22 23 50 6f 69 6e 74 65 72 2d 43 61 73 74 2d 49 6e 76 61 6c 69 64 2d 4e 75 6c 6c 22 3e 50 6f 69 | "#Pointer-Cast-Invalid-Null">Poi |
| 7960 | 6e 74 65 72 20 43 61 73 74 20 49 6e 76 61 6c 69 64 20 4e 75 6c 6c 3c 2f 61 3e 3c 2f 6c 69 3e 0a | nter.Cast.Invalid.Null</a></li>. |
| 7980 | 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c | ........</ul></li>.........<li>< |
| 79a0 | 61 20 69 64 3d 22 74 6f 63 2d 4d 65 6d 6f 72 79 22 20 68 72 65 66 3d 22 23 4d 65 6d 6f 72 79 22 | a.id="toc-Memory".href="#Memory" |
| 79c0 | 3e 4d 65 6d 6f 72 79 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 | >Memory</a>.........<ul>........ |
| 79e0 | 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 43 68 6f 6f 73 69 6e 67 2d 61 6e 2d | .....<li><a.id="toc-Choosing-an- |
| 7a00 | 41 6c 6c 6f 63 61 74 6f 72 22 20 68 72 65 66 3d 22 23 43 68 6f 6f 73 69 6e 67 2d 61 6e 2d 41 6c | Allocator".href="#Choosing-an-Al |
| 7a20 | 6c 6f 63 61 74 6f 72 22 3e 43 68 6f 6f 73 69 6e 67 20 61 6e 20 41 6c 6c 6f 63 61 74 6f 72 3c 2f | locator">Choosing.an.Allocator</ |
| 7a40 | 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 |
| 7a60 | 6f 63 2d 57 68 65 72 65 2d 61 72 65 2d 74 68 65 2d 62 79 74 65 73 22 20 68 72 65 66 3d 22 23 57 | oc-Where-are-the-bytes".href="#W |
| 7a80 | 68 65 72 65 2d 61 72 65 2d 74 68 65 2d 62 79 74 65 73 22 3e 57 68 65 72 65 20 61 72 65 20 74 68 | here-are-the-bytes">Where.are.th |
| 7aa0 | 65 20 62 79 74 65 73 3f 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c | e.bytes?</a></li>.............<l |
| 7ac0 | 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 49 6d 70 6c 65 6d 65 6e 74 69 6e 67 2d 61 6e 2d 41 6c 6c | i><a.id="toc-Implementing-an-All |
| 7ae0 | 6f 63 61 74 6f 72 22 20 68 72 65 66 3d 22 23 49 6d 70 6c 65 6d 65 6e 74 69 6e 67 2d 61 6e 2d 41 | ocator".href="#Implementing-an-A |
| 7b00 | 6c 6c 6f 63 61 74 6f 72 22 3e 49 6d 70 6c 65 6d 65 6e 74 69 6e 67 20 61 6e 20 41 6c 6c 6f 63 61 | llocator">Implementing.an.Alloca |
| 7b20 | 74 6f 72 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 | tor</a></li>.............<li><a. |
| 7b40 | 69 64 3d 22 74 6f 63 2d 48 65 61 70 2d 41 6c 6c 6f 63 61 74 69 6f 6e 2d 46 61 69 6c 75 72 65 22 | id="toc-Heap-Allocation-Failure" |
| 7b60 | 20 68 72 65 66 3d 22 23 48 65 61 70 2d 41 6c 6c 6f 63 61 74 69 6f 6e 2d 46 61 69 6c 75 72 65 22 | .href="#Heap-Allocation-Failure" |
| 7b80 | 3e 48 65 61 70 20 41 6c 6c 6f 63 61 74 69 6f 6e 20 46 61 69 6c 75 72 65 3c 2f 61 3e 3c 2f 6c 69 | >Heap.Allocation.Failure</a></li |
| 7ba0 | 3e 0a 20 20 20 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 63 | >.............<li><a.id="toc-Rec |
| 7bc0 | 75 72 73 69 6f 6e 22 20 68 72 65 66 3d 22 23 52 65 63 75 72 73 69 6f 6e 22 3e 52 65 63 75 72 73 | ursion".href="#Recursion">Recurs |
| 7be0 | 69 6f 6e 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 | ion</a></li>.............<li><a. |
| 7c00 | 69 64 3d 22 74 6f 63 2d 4c 69 66 65 74 69 6d 65 2d 61 6e 64 2d 4f 77 6e 65 72 73 68 69 70 22 20 | id="toc-Lifetime-and-Ownership". |
| 7c20 | 68 72 65 66 3d 22 23 4c 69 66 65 74 69 6d 65 2d 61 6e 64 2d 4f 77 6e 65 72 73 68 69 70 22 3e 4c | href="#Lifetime-and-Ownership">L |
| 7c40 | 69 66 65 74 69 6d 65 20 61 6e 64 20 4f 77 6e 65 72 73 68 69 70 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 | ifetime.and.Ownership</a></li>.. |
| 7c60 | 20 20 20 20 20 20 20 3c 2f 75 6c 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 | .......</ul></li>.........<li><a |
| 7c80 | 20 69 64 3d 22 74 6f 63 2d 43 6f 6d 70 69 6c 65 2d 56 61 72 69 61 62 6c 65 73 22 20 68 72 65 66 | .id="toc-Compile-Variables".href |
| 7ca0 | 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 65 20 56 61 | ="#Compile-Variables">Compile.Va |
| 7cc0 | 72 69 61 62 6c 65 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 | riables</a></li>.........<li><a. |
| 7ce0 | 69 64 3d 22 74 6f 63 2d 52 6f 6f 74 2d 53 6f 75 72 63 65 2d 46 69 6c 65 22 20 68 72 65 66 3d 22 | id="toc-Root-Source-File".href=" |
| 7d00 | 23 52 6f 6f 74 2d 53 6f 75 72 63 65 2d 46 69 6c 65 22 3e 52 6f 6f 74 20 53 6f 75 72 63 65 20 46 | #Root-Source-File">Root.Source.F |
| 7d20 | 69 6c 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 | ile</a></li>.........<li><a.id=" |
| 7d40 | 74 6f 63 2d 5a 69 67 2d 54 65 73 74 22 20 68 72 65 66 3d 22 23 5a 69 67 2d 54 65 73 74 22 3e 5a | toc-Zig-Test".href="#Zig-Test">Z |
| 7d60 | 69 67 20 54 65 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 | ig.Test</a></li>.........<li><a. |
| 7d80 | 69 64 3d 22 74 6f 63 2d 5a 69 67 2d 42 75 69 6c 64 2d 53 79 73 74 65 6d 22 20 68 72 65 66 3d 22 | id="toc-Zig-Build-System".href=" |
| 7da0 | 23 5a 69 67 2d 42 75 69 6c 64 2d 53 79 73 74 65 6d 22 3e 5a 69 67 20 42 75 69 6c 64 20 53 79 73 | #Zig-Build-System">Zig.Build.Sys |
| 7dc0 | 74 65 6d 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 | tem</a>.........<ul>............ |
| 7de0 | 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 42 75 69 6c 64 69 6e 67 2d 61 6e 2d 45 78 65 63 | .<li><a.id="toc-Building-an-Exec |
| 7e00 | 75 74 61 62 6c 65 22 20 68 72 65 66 3d 22 23 42 75 69 6c 64 69 6e 67 2d 61 6e 2d 45 78 65 63 75 | utable".href="#Building-an-Execu |
| 7e20 | 74 61 62 6c 65 22 3e 42 75 69 6c 64 69 6e 67 20 61 6e 20 45 78 65 63 75 74 61 62 6c 65 3c 2f 61 | table">Building.an.Executable</a |
| 7e40 | 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 |
| 7e60 | 63 2d 42 75 69 6c 64 69 6e 67 2d 61 2d 4c 69 62 72 61 72 79 22 20 68 72 65 66 3d 22 23 42 75 69 | c-Building-a-Library".href="#Bui |
| 7e80 | 6c 64 69 6e 67 2d 61 2d 4c 69 62 72 61 72 79 22 3e 42 75 69 6c 64 69 6e 67 20 61 20 4c 69 62 72 | lding-a-Library">Building.a.Libr |
| 7ea0 | 61 72 79 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 | ary</a></li>.............<li><a. |
| 7ec0 | 69 64 3d 22 74 6f 63 2d 43 6f 6d 70 69 6c 69 6e 67 2d 43 2d 53 6f 75 72 63 65 2d 43 6f 64 65 22 | id="toc-Compiling-C-Source-Code" |
| 7ee0 | 20 68 72 65 66 3d 22 23 43 6f 6d 70 69 6c 69 6e 67 2d 43 2d 53 6f 75 72 63 65 2d 43 6f 64 65 22 | .href="#Compiling-C-Source-Code" |
| 7f00 | 3e 43 6f 6d 70 69 6c 69 6e 67 20 43 20 53 6f 75 72 63 65 20 43 6f 64 65 3c 2f 61 3e 3c 2f 6c 69 | >Compiling.C.Source.Code</a></li |
| 7f20 | 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 |
| 7f40 | 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 2f 61 3e 0a 20 | ><a.id="toc-C".href="#C">C</a>.. |
| 7f60 | 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 |
| 7f80 | 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 72 65 66 3d 22 | d="toc-C-Type-Primitives".href=" |
| 7fa0 | 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 50 72 69 6d 69 | #C-Type-Primitives">C.Type.Primi |
| 7fc0 | 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 3c 6c 69 3e 3c | tives</a></li>.............<li>< |
| 7fe0 | 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 64 65 72 2d 46 | a.id="toc-Import-from-C-Header-F |
| 8000 | 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 65 61 64 65 72 | ile".href="#Import-from-C-Header |
| 8020 | 2d 46 69 6c 65 22 3e 49 6d 70 6f 72 74 20 66 72 6f 6d 20 43 20 48 65 61 64 65 72 20 46 69 6c 65 | -File">Import.from.C.Header.File |
| 8040 | 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= |
| 8060 | 22 74 6f 63 2d 43 2d 50 6f 69 6e 74 65 72 73 22 20 68 72 65 66 3d 22 23 43 2d 50 6f 69 6e 74 65 | "toc-C-Pointers".href="#C-Pointe |
| 8080 | 72 73 22 3e 43 20 50 6f 69 6e 74 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 | rs">C.Pointers</a></li>......... |
| 80a0 | 20 20 20 20 3c 6c 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 | ....<li><a.id="toc-Exporting-a-C |
| 80c0 | 2d 4c 69 62 72 61 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 | -Library".href="#Exporting-a-C-L |
| 80e0 | 69 62 72 61 72 79 22 3e 45 78 70 6f 72 74 69 6e 67 20 61 20 43 20 4c 69 62 72 61 72 79 3c 2f 61 | ibrary">Exporting.a.C.Library</a |
| 8100 | 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 |
| 8120 | 63 2d 4d 69 78 69 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 | c-Mixing-Object-Files".href="#Mi |
| 8140 | 78 69 6e 67 2d 4f 62 6a 65 63 74 2d 46 69 6c 65 73 22 3e 4d 69 78 69 6e 67 20 4f 62 6a 65 63 74 | xing-Object-Files">Mixing.Object |
| 8160 | 20 46 69 6c 65 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 3c 2f 6c | .Files</a></li>.........</ul></l |
| 8180 | 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 57 65 62 41 73 73 | i>.........<li><a.id="toc-WebAss |
| 81a0 | 65 6d 62 6c 79 22 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 | embly".href="#WebAssembly">WebAs |
| 81c0 | 73 65 6d 62 6c 79 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 | sembly</a>.........<ul>......... |
| 81e0 | 20 20 20 20 3c 6c 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 | ....<li><a.id="toc-Freestanding" |
| 8200 | 20 68 72 65 66 3d 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 | .href="#Freestanding">Freestandi |
| 8220 | 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 |
| 8240 | 64 3d 22 74 6f 63 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 | d="toc-WASI".href="#WASI">WASI</ |
| 8260 | 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>...... |
| 8280 | 20 20 20 3c 6c 69 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 | ...<li><a.id="toc-Targets".href= |
| 82a0 | 22 23 54 61 72 67 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 | "#Targets">Targets</a></li>..... |
| 82c0 | 20 20 20 20 3c 6c 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 | ....<li><a.id="toc-Style-Guide". |
| 82e0 | 68 72 65 66 3d 22 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 | href="#Style-Guide">Style.Guide< |
| 8300 | 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 |
| 8320 | 3e 3c 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 | ><a.id="toc-Whitespace".href="#W |
| 8340 | 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 3c 2f 6c 69 3e 0a 20 | hitespace">Whitespace</a></li>.. |
| 8360 | 20 20 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 | ...........<li><a.id="toc-Names" |
| 8380 | 20 68 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 | .href="#Names">Names</a></li>... |
| 83a0 | 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 45 78 61 6d 70 6c 65 | ..........<li><a.id="toc-Example |
| 83c0 | 73 22 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 | s".href="#Examples">Examples</a> |
| 83e0 | 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>........ |
| 8400 | 20 3c 6c 69 3e 3c 61 20 69 64 3d 22 74 6f 63 2d 53 6f 75 72 63 65 2d 45 6e 63 6f 64 69 6e 67 22 | .<li><a.id="toc-Source-Encoding" |
| 8420 | 20 68 72 65 66 3d 22 23 53 6f 75 72 63 65 2d 45 6e 63 6f 64 69 6e 67 22 3e 53 6f 75 72 63 65 20 | .href="#Source-Encoding">Source. |
| 8440 | 45 6e 63 6f 64 69 6e 67 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 | Encoding</a></li>.........<li><a |
| 8460 | 20 69 64 3d 22 74 6f 63 2d 4b 65 79 77 6f 72 64 2d 52 65 66 65 72 65 6e 63 65 22 20 68 72 65 66 | .id="toc-Keyword-Reference".href |
| 8480 | 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 65 | ="#Keyword-Reference">Keyword.Re |
| 84a0 | 66 65 72 65 6e 63 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 | ference</a></li>.........<li><a. |
| 84c0 | 69 64 3d 22 74 6f 63 2d 47 72 61 6d 6d 61 72 22 20 68 72 65 66 3d 22 23 47 72 61 6d 6d 61 72 22 | id="toc-Grammar".href="#Grammar" |
| 84e0 | 3e 47 72 61 6d 6d 61 72 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 | >Grammar</a></li>.........<li><a |
| 8500 | 20 69 64 3d 22 74 6f 63 2d 5a 65 6e 22 20 68 72 65 66 3d 22 23 5a 65 6e 22 3e 5a 65 6e 3c 2f 61 | .id="toc-Zen".href="#Zen">Zen</a |
| 8520 | 3e 3c 2f 6c 69 3e 0a 20 20 20 20 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 3c 2f 64 69 76 3e 0a 20 | ></li>.....</ul>........</div>.. |
| 8540 | 20 20 20 20 20 3c 64 69 76 20 69 64 3d 22 63 6f 6e 74 65 6e 74 73 2d 77 72 61 70 70 65 72 22 3e | .....<div.id="contents-wrapper"> |
| 8560 | 3c 64 69 76 20 69 64 3d 22 63 6f 6e 74 65 6e 74 73 22 3e 0a 20 20 20 20 20 20 3c 68 31 20 69 64 | <div.id="contents">.......<h1.id |
| 8580 | 3d 22 49 6e 74 72 6f 64 75 63 74 69 6f 6e 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 49 6e | ="Introduction"><a.href="#toc-In |
| 85a0 | 74 72 6f 64 75 63 74 69 6f 6e 22 3e 49 6e 74 72 6f 64 75 63 74 69 6f 6e 3c 2f 61 3e 20 3c 61 20 | troduction">Introduction</a>.<a. |
| 85c0 | 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 49 6e 74 72 6f 64 75 63 74 69 6f 6e 22 | class="hdr".href="#Introduction" |
| 85e0 | 3e c2 a7 3c 2f 61 3e 3c 2f 68 31 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 5a 69 | >..</a></h1>........<p>.......Zi |
| 8600 | 67 20 69 73 20 61 20 67 65 6e 65 72 61 6c 2d 70 75 72 70 6f 73 65 20 70 72 6f 67 72 61 6d 6d 69 | g.is.a.general-purpose.programmi |
| 8620 | 6e 67 20 6c 61 6e 67 75 61 67 65 20 61 6e 64 20 74 6f 6f 6c 63 68 61 69 6e 20 66 6f 72 20 6d 61 | ng.language.and.toolchain.for.ma |
| 8640 | 69 6e 74 61 69 6e 69 6e 67 0a 20 20 20 20 20 20 3c 73 74 72 6f 6e 67 3e 72 6f 62 75 73 74 3c 2f | intaining.......<strong>robust</ |
| 8660 | 73 74 72 6f 6e 67 3e 2c 20 3c 73 74 72 6f 6e 67 3e 6f 70 74 69 6d 61 6c 3c 2f 73 74 72 6f 6e 67 | strong>,.<strong>optimal</strong |
| 8680 | 3e 2c 20 61 6e 64 20 3c 73 74 72 6f 6e 67 3e 72 65 75 73 61 62 6c 65 3c 2f 73 74 72 6f 6e 67 3e | >,.and.<strong>reusable</strong> |
| 86a0 | 20 73 6f 66 74 77 61 72 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e | .software........</p>.......<ul> |
| 86c0 | 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 73 74 72 6f 6e 67 3e 52 6f 62 75 73 74 3c 2f 73 74 72 | .........<li><strong>Robust</str |
| 86e0 | 6f 6e 67 3e 20 2d 20 62 65 68 61 76 69 6f 72 20 69 73 20 63 6f 72 72 65 63 74 20 65 76 65 6e 20 | ong>.-.behavior.is.correct.even. |
| 8700 | 66 6f 72 20 65 64 67 65 20 63 61 73 65 73 20 73 75 63 68 20 61 73 20 6f 75 74 20 6f 66 20 6d 65 | for.edge.cases.such.as.out.of.me |
| 8720 | 6d 6f 72 79 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 73 74 72 6f 6e 67 3e 4f | mory.</li>.........<li><strong>O |
| 8740 | 70 74 69 6d 61 6c 3c 2f 73 74 72 6f 6e 67 3e 20 2d 20 77 72 69 74 65 20 70 72 6f 67 72 61 6d 73 | ptimal</strong>.-.write.programs |
| 8760 | 20 74 68 65 20 62 65 73 74 20 77 61 79 20 74 68 65 79 20 63 61 6e 20 62 65 68 61 76 65 20 61 6e | .the.best.way.they.can.behave.an |
| 8780 | 64 20 70 65 72 66 6f 72 6d 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 73 74 72 | d.perform.</li>.........<li><str |
| 87a0 | 6f 6e 67 3e 52 65 75 73 61 62 6c 65 3c 2f 73 74 72 6f 6e 67 3e 20 2d 20 74 68 65 20 73 61 6d 65 | ong>Reusable</strong>.-.the.same |
| 87c0 | 20 63 6f 64 65 20 77 6f 72 6b 73 20 69 6e 20 6d 61 6e 79 20 65 6e 76 69 72 6f 6e 6d 65 6e 74 73 | .code.works.in.many.environments |
| 87e0 | 20 77 68 69 63 68 20 68 61 76 65 20 64 69 66 66 65 72 65 6e 74 0a 20 20 20 20 20 20 20 20 20 20 | .which.have.different........... |
| 8800 | 63 6f 6e 73 74 72 61 69 6e 74 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 73 | constraints.</li>.........<li><s |
| 8820 | 74 72 6f 6e 67 3e 4d 61 69 6e 74 61 69 6e 61 62 6c 65 3c 2f 73 74 72 6f 6e 67 3e 20 2d 20 70 72 | trong>Maintainable</strong>.-.pr |
| 8840 | 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 74 6f 20 74 68 | ecisely.communicate.intent.to.th |
| 8860 | 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 68 65 72 20 70 | e.compiler.and...........other.p |
| 8880 | 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 70 6f 73 65 73 | rogrammers..The.language.imposes |
| 88a0 | 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 63 6f 64 65 20 | .a.low.overhead.to.reading.code. |
| 88c0 | 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 74 6f 20 63 68 | and.is...........resilient.to.ch |
| 88e0 | 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 69 72 6f 6e 6d | anging.requirements.and.environm |
| 8900 | 65 6e 74 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c 70 3e | ents.</li>.......</ul>.......<p> |
| 8920 | 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 69 65 6e 74 20 | .......Often.the.most.efficient. |
| 8940 | 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 69 73 20 74 6f | way.to.learn.something.new.is.to |
| 8960 | 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 73 20 64 6f 63 | .see.examples,.so.......this.doc |
| 8980 | 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 20 65 61 63 68 | umentation.shows.how.to.use.each |
| 89a0 | 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 20 20 20 20 20 | .of.Zig's.features..It.is....... |
| 89c0 | 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 73 65 61 72 63 | all.on.one.page.so.you.can.searc |
| 89e0 | 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 68 20 74 6f 6f | h.with.your.browser's.search.too |
| 8a00 | 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 54 68 | l........</p>.......<p>.......Th |
| 8a20 | 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 6d 65 6e 74 20 | e.code.samples.in.this.document. |
| 8a40 | 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 70 61 72 74 20 | are.compiled.and.tested.as.part. |
| 8a60 | 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 69 67 2e 0a 20 | of.the.main.test.suite.of.Zig... |
| 8a80 | 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 48 | .....</p>.......<p>.......This.H |
| 8aa0 | 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 65 78 74 65 72 | TML.document.depends.on.no.exter |
| 8ac0 | 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 74 20 6f 66 66 | nal.files,.so.you.can.use.it.off |
| 8ae0 | 6c 69 6e 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 | line........</p>.......<p>...... |
| 8b00 | 20 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 7a 69 67 | .<a.href="https://github.com/zig |
| 8b20 | 6c 61 6e 67 2f 7a 69 67 2f 77 69 6b 69 2f 46 41 51 23 77 68 65 72 65 2d 69 73 2d 74 68 65 2d 64 | lang/zig/wiki/FAQ#where-is-the-d |
| 8b40 | 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 2d 66 6f 72 2d 74 68 65 2d 7a 69 67 2d 73 74 61 6e 64 61 72 | ocumentation-for-the-zig-standar |
| 8b60 | 64 2d 6c 69 62 72 61 72 79 22 3e 57 68 65 72 65 20 69 73 20 74 68 65 20 64 6f 63 75 6d 65 6e 74 | d-library">Where.is.the.document |
| 8b80 | 61 74 69 6f 6e 20 66 6f 72 20 74 68 65 20 5a 69 67 20 73 74 61 6e 64 61 72 64 20 6c 69 62 72 61 | ation.for.the.Zig.standard.libra |
| 8ba0 | 72 79 3f 3c 2f 61 3e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 | ry?</a>.......</p>.............. |
| 8bc0 | 20 3c 68 31 20 69 64 3d 22 48 65 6c 6c 6f 2d 57 6f 72 6c 64 22 3e 3c 61 20 68 72 65 66 3d 22 23 | .<h1.id="Hello-World"><a.href="# |
| 8be0 | 74 6f 63 2d 48 65 6c 6c 6f 2d 57 6f 72 6c 64 22 3e 48 65 6c 6c 6f 20 57 6f 72 6c 64 3c 2f 61 3e | toc-Hello-World">Hello.World</a> |
| 8c00 | 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 48 65 6c 6c 6f 2d 57 6f 72 | .<a.class="hdr".href="#Hello-Wor |
| 8c20 | 6c 64 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 31 3e 0a 0a 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 | ld">..</a></h1>.........<p.class |
| 8c40 | 3d 22 66 69 6c 65 22 3e 68 65 6c 6c 6f 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 | ="file">hello.zig</p><pre><code. |
| 8c60 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | class="zig"><span.class="tok-kw" |
| 8c80 | 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= |
| 8ca0 | 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 |
| 8cc0 | 61 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 |
| 8ce0 | 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 |
| 8d00 | 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 |
| 8d20 | 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" |
| 8d40 | 3e 6d 61 69 6e 3c 2f 73 70 61 6e 3e 28 29 20 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | >main</span>().!<span.class="tok |
| 8d60 | 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 | -type">void</span>.{.....<span.c |
| 8d80 | 6c 61 73 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 6f 75 | lass="tok-kw">const</span>.stdou |
| 8da0 | 74 20 3d 20 73 74 64 2e 69 6f 2e 67 65 74 53 74 64 4f 75 74 28 29 2e 77 72 69 74 65 72 28 29 3b | t.=.std.io.getStdOut().writer(); |
| 8dc0 | 0a 20 20 20 20 3c 73 70 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 |
| 8de0 | 70 61 6e 3e 20 73 74 64 6f 75 74 2e 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | pan>.stdout.print(<span.class="t |
| 8e00 | 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 48 65 6c 6c 6f 2c 20 7b 7d 21 5c 6e 26 71 75 6f 74 3b | ok-str">"Hello,.{}!\n" |
| 8e20 | 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 | </span>,..{<span.class="tok-str" |
| 8e40 | 3e 26 71 75 6f 74 3b 77 6f 72 6c 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 7d 29 3b 0a 7d 3c 2f | >"world"</span>});.}</ |
| 8e60 | 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 | code></pre><pre><code.class="she |
| 8e80 | 6c 6c 22 3e 24 20 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 68 65 6c 6c 6f 2e 7a 69 67 0a 24 20 | ll">$.zig.build-exe.hello.zig.$. |
| 8ea0 | 2e 2f 68 65 6c 6c 6f 0a 48 65 6c 6c 6f 2c 20 77 6f 72 6c 64 21 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 | ./hello.Hello,.world!.</code></p |
| 8ec0 | 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 20 20 54 68 65 20 5a 69 67 20 63 | re>........<p>.........The.Zig.c |
| 8ee0 | 6f 64 65 20 73 61 6d 70 6c 65 20 61 62 6f 76 65 20 64 65 6d 6f 6e 73 74 72 61 74 65 73 20 6f 6e | ode.sample.above.demonstrates.on |
| 8f00 | 65 20 77 61 79 20 74 6f 20 63 72 65 61 74 65 20 61 20 70 72 6f 67 72 61 6d 20 74 68 61 74 20 77 | e.way.to.create.a.program.that.w |
| 8f20 | 69 6c 6c 20 6f 75 74 70 75 74 20 3c 63 6f 64 65 3e 48 65 6c 6c 6f 2c 20 77 6f 72 6c 64 21 3c 2f | ill.output.<code>Hello,.world!</ |
| 8f40 | 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>..... |
| 8f60 | 20 20 20 20 54 68 65 20 63 6f 64 65 20 73 61 6d 70 6c 65 20 73 68 6f 77 73 20 74 68 65 20 63 6f | ....The.code.sample.shows.the.co |
| 8f80 | 6e 74 65 6e 74 73 20 6f 66 20 61 20 66 69 6c 65 20 6e 61 6d 65 64 20 3c 63 6f 64 65 3e 68 65 6c | ntents.of.a.file.named.<code>hel |
| 8fa0 | 6c 6f 2e 7a 69 67 3c 2f 63 6f 64 65 3e 2e 20 46 69 6c 65 73 20 73 74 6f 72 69 6e 67 20 5a 69 67 | lo.zig</code>..Files.storing.Zig |
| 8fc0 | 0a 20 20 20 20 20 20 20 20 73 6f 75 72 63 65 20 63 6f 64 65 20 61 72 65 20 3c 61 20 68 72 65 66 | .........source.code.are.<a.href |
| 8fe0 | 3d 22 23 53 6f 75 72 63 65 2d 45 6e 63 6f 64 69 6e 67 22 3e 55 54 46 2d 38 20 65 6e 63 6f 64 65 | ="#Source-Encoding">UTF-8.encode |
| 9000 | 64 3c 2f 61 3e 20 74 65 78 74 20 66 69 6c 65 73 2e 20 54 68 65 20 66 69 6c 65 73 20 73 74 6f 72 | d</a>.text.files..The.files.stor |
| 9020 | 69 6e 67 0a 20 20 20 20 20 20 20 20 5a 69 67 20 73 6f 75 72 63 65 20 63 6f 64 65 20 61 72 65 20 | ing.........Zig.source.code.are. |
| 9040 | 75 73 75 61 6c 6c 79 20 6e 61 6d 65 64 20 77 69 74 68 20 74 68 65 20 3c 63 6f 64 65 3e 2e 7a 69 | usually.named.with.the.<code>.zi |
| 9060 | 67 3c 2f 63 6f 64 65 3e 20 65 78 74 65 6e 73 69 6f 6e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 | g</code>.extension........</p>.. |
| 9080 | 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 20 20 46 6f 6c 6c 6f 77 69 6e 67 20 74 68 65 20 3c | .....<p>.........Following.the.< |
| 90a0 | 63 6f 64 65 3e 68 65 6c 6c 6f 2e 7a 69 67 3c 2f 63 6f 64 65 3e 20 5a 69 67 20 63 6f 64 65 20 73 | code>hello.zig</code>.Zig.code.s |
| 90c0 | 61 6d 70 6c 65 2c 20 74 68 65 20 3c 61 20 68 72 65 66 3d 22 23 5a 69 67 2d 42 75 69 6c 64 2d 53 | ample,.the.<a.href="#Zig-Build-S |
| 90e0 | 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 20 69 73 20 75 | ystem">Zig.Build.System</a>.is.u |
| 9100 | 73 65 64 0a 20 20 20 20 20 20 20 20 74 6f 20 62 75 69 6c 64 20 61 6e 20 65 78 65 63 75 74 61 62 | sed.........to.build.an.executab |
| 9120 | 6c 65 20 70 72 6f 67 72 61 6d 20 66 72 6f 6d 20 74 68 65 20 3c 63 6f 64 65 3e 68 65 6c 6c 6f 2e | le.program.from.the.<code>hello. |
| 9140 | 7a 69 67 3c 2f 63 6f 64 65 3e 20 73 6f 75 72 63 65 20 63 6f 64 65 2e 20 54 68 65 6e 2c 20 74 68 | zig</code>.source.code..Then,.th |
| 9160 | 65 0a 20 20 20 20 20 20 20 20 3c 63 6f 64 65 3e 68 65 6c 6c 6f 3c 2f 63 6f 64 65 3e 20 70 72 6f | e.........<code>hello</code>.pro |
| 9180 | 67 72 61 6d 20 69 73 20 65 78 65 63 75 74 65 64 20 73 68 6f 77 69 6e 67 20 69 74 73 20 6f 75 74 | gram.is.executed.showing.its.out |
| 91a0 | 70 75 74 20 3c 63 6f 64 65 3e 48 65 6c 6c 6f 2c 20 77 6f 72 6c 64 21 3c 2f 63 6f 64 65 3e 2e 20 | put.<code>Hello,.world!</code>.. |
| 91c0 | 54 68 65 0a 20 20 20 20 20 20 20 20 6c 69 6e 65 73 20 62 65 67 69 6e 6e 69 6e 67 20 77 69 74 68 | The.........lines.beginning.with |
| 91e0 | 20 3c 63 6f 64 65 3e 24 3c 2f 63 6f 64 65 3e 20 72 65 70 72 65 73 65 6e 74 20 63 6f 6d 6d 61 6e | .<code>$</code>.represent.comman |
| 9200 | 64 20 6c 69 6e 65 20 70 72 6f 6d 70 74 73 20 61 6e 64 20 61 20 63 6f 6d 6d 61 6e 64 2e 0a 20 20 | d.line.prompts.and.a.command.... |
| 9220 | 20 20 20 20 20 20 45 76 65 72 79 74 68 69 6e 67 20 65 6c 73 65 20 69 73 20 70 72 6f 67 72 61 6d | ......Everything.else.is.program |
| 9240 | 20 6f 75 74 70 75 74 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 | .output........</p>.......<p>... |
| 9260 | 20 20 20 20 20 20 54 68 65 20 63 6f 64 65 20 73 61 6d 70 6c 65 20 62 65 67 69 6e 73 20 62 79 20 | ......The.code.sample.begins.by. |
| 9280 | 61 64 64 69 6e 67 20 5a 69 67 27 73 20 53 74 61 6e 64 61 72 64 20 4c 69 62 72 61 72 79 20 74 6f | adding.Zig's.Standard.Library.to |
| 92a0 | 20 74 68 65 20 62 75 69 6c 64 20 75 73 69 6e 67 20 74 68 65 20 3c 61 20 68 72 65 66 3d 22 23 69 | .the.build.using.the.<a.href="#i |
| 92c0 | 6d 70 6f 72 74 22 3e 40 69 6d 70 6f 72 74 3c 2f 61 3e 20 62 75 69 6c 74 69 6e 20 66 75 6e 63 74 | mport">@import</a>.builtin.funct |
| 92e0 | 69 6f 6e 2e 0a 20 20 20 20 20 20 20 20 54 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | ion..........The.<code.class="zi |
| 9300 | 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d | g"><span.class="tok-builtin">@im |
| 9320 | 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 |
| 9340 | 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 65 3e | ">"std"</span>)</code> |
| 9360 | 20 66 75 6e 63 74 69 6f 6e 20 63 61 6c 6c 20 63 72 65 61 74 65 73 20 61 20 73 74 72 75 63 74 75 | .function.call.creates.a.structu |
| 9380 | 72 65 20 74 6f 20 72 65 70 72 65 73 65 6e 74 20 74 68 65 20 53 74 61 6e 64 61 72 64 20 4c 69 62 | re.to.represent.the.Standard.Lib |
| 93a0 | 72 61 72 79 2e 0a 20 20 20 20 20 20 20 20 54 68 65 20 63 6f 64 65 20 74 68 65 6e 20 6d 61 6b 65 | rary..........The.code.then.make |
| 93c0 | 73 20 61 20 3c 61 20 68 72 65 66 3d 22 23 47 6c 6f 62 61 6c 2d 56 61 72 69 61 62 6c 65 73 22 3e | s.a.<a.href="#Global-Variables"> |
| 93e0 | 74 6f 70 2d 6c 65 76 65 6c 20 64 65 63 6c 61 72 61 74 69 6f 6e 3c 2f 61 3e 20 6f 66 20 61 0a 20 | top-level.declaration</a>.of.a.. |
| 9400 | 20 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 41 73 73 69 67 6e 6d 65 6e 74 22 3e 63 6f 6e | .......<a.href="#Assignment">con |
| 9420 | 73 74 61 6e 74 20 69 64 65 6e 74 69 66 69 65 72 3c 2f 61 3e 2c 20 6e 61 6d 65 64 20 3c 63 6f 64 | stant.identifier</a>,.named.<cod |
| 9440 | 65 3e 73 74 64 3c 2f 63 6f 64 65 3e 2c 20 66 6f 72 20 65 61 73 79 20 61 63 63 65 73 73 20 74 6f | e>std</code>,.for.easy.access.to |
| 9460 | 0a 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 67 69 74 68 75 62 | .........<a.href="https://github |
| 9480 | 2e 63 6f 6d 2f 7a 69 67 6c 61 6e 67 2f 7a 69 67 2f 77 69 6b 69 2f 46 41 51 23 77 68 65 72 65 2d | .com/ziglang/zig/wiki/FAQ#where- |
| 94a0 | 69 73 2d 74 68 65 2d 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 2d 66 6f 72 2d 74 68 65 2d 7a 69 67 | is-the-documentation-for-the-zig |
| 94c0 | 2d 73 74 61 6e 64 61 72 64 2d 6c 69 62 72 61 72 79 22 3e 5a 69 67 27 73 20 73 74 61 6e 64 61 72 | -standard-library">Zig's.standar |
| 94e0 | 64 20 6c 69 62 72 61 72 79 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 | d.library</a>........</p>....... |
| 9500 | 3c 70 3e 0a 20 20 20 20 20 20 20 20 4e 65 78 74 2c 20 61 20 3c 61 20 68 72 65 66 3d 22 23 46 75 | <p>.........Next,.a.<a.href="#Fu |
| 9520 | 6e 63 74 69 6f 6e 73 22 3e 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 3c 2f 61 3e 2c 20 3c 63 | nctions">public.function</a>,.<c |
| 9540 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ode.class="zig"><span.class="tok |
| 9560 | 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 |
| 9580 | 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 6e 61 6d 65 64 20 3c 63 6f | -kw">fn</span></code>,.named.<co |
| 95a0 | 64 65 3e 6d 61 69 6e 3c 2f 63 6f 64 65 3e 0a 20 20 20 20 20 20 20 20 69 73 20 64 65 63 6c 61 72 | de>main</code>.........is.declar |
| 95c0 | 65 64 2e 20 54 68 65 20 3c 63 6f 64 65 3e 6d 61 69 6e 3c 2f 63 6f 64 65 3e 20 66 75 6e 63 74 69 | ed..The.<code>main</code>.functi |
| 95e0 | 6f 6e 20 69 73 20 6e 65 63 65 73 73 61 72 79 20 62 65 63 61 75 73 65 20 69 74 20 74 65 6c 6c 73 | on.is.necessary.because.it.tells |
| 9600 | 20 74 68 65 20 5a 69 67 20 63 6f 6d 70 69 6c 65 72 20 77 68 65 72 65 20 74 68 65 20 73 74 61 72 | .the.Zig.compiler.where.the.star |
| 9620 | 74 20 6f 66 0a 20 20 20 20 20 20 20 20 74 68 65 20 70 72 6f 67 72 61 6d 20 65 78 69 73 74 73 2e | t.of.........the.program.exists. |
| 9640 | 20 50 72 6f 67 72 61 6d 73 20 64 65 73 69 67 6e 65 64 20 74 6f 20 62 65 20 65 78 65 63 75 74 65 | .Programs.designed.to.be.execute |
| 9660 | 64 20 77 69 6c 6c 20 6e 65 65 64 20 61 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e | d.will.need.a.<code.class="zig"> |
| 9680 | 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>. |
| 96a0 | 3c 73 70 61 6e 20 63 6c 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>.< |
| 96c0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 6d 61 69 6e 3c 2f 73 70 61 6e 3e 3c | span.class="tok-fn">main</span>< |
| 96e0 | 2f 63 6f 64 65 3e 20 66 75 6e 63 74 69 6f 6e 2e 0a 20 20 20 20 20 20 20 20 46 6f 72 20 6d 6f 72 | /code>.function..........For.mor |
| 9700 | 65 20 61 64 76 61 6e 63 65 64 20 75 73 65 20 63 61 73 65 73 2c 20 5a 69 67 20 6f 66 66 65 72 73 | e.advanced.use.cases,.Zig.offers |
| 9720 | 20 6f 74 68 65 72 20 66 65 61 74 75 72 65 73 20 74 6f 20 69 6e 66 6f 72 6d 20 74 68 65 20 63 6f | .other.features.to.inform.the.co |
| 9740 | 6d 70 69 6c 65 72 20 77 68 65 72 65 20 74 68 65 20 73 74 61 72 74 20 6f 66 0a 20 20 20 20 20 20 | mpiler.where.the.start.of....... |
| 9760 | 20 20 74 68 65 20 70 72 6f 67 72 61 6d 20 65 78 69 73 74 73 2e 20 4c 69 62 72 61 72 69 65 73 2c | ..the.program.exists..Libraries, |
| 9780 | 20 6f 6e 20 74 68 65 20 6f 74 68 65 72 20 68 61 6e 64 2c 20 64 6f 20 6e 6f 74 20 6e 65 65 64 20 | .on.the.other.hand,.do.not.need. |
| 97a0 | 61 20 3c 63 6f 64 65 3e 6d 61 69 6e 3c 2f 63 6f 64 65 3e 20 66 75 6e 63 74 69 6f 6e 20 62 65 63 | a.<code>main</code>.function.bec |
| 97c0 | 61 75 73 65 0a 20 20 20 20 20 20 20 20 6c 69 62 72 61 72 79 20 63 6f 64 65 20 69 73 20 75 73 75 | ause.........library.code.is.usu |
| 97e0 | 61 6c 6c 79 20 63 61 6c 6c 65 64 20 62 79 20 6f 74 68 65 72 20 70 72 6f 67 72 61 6d 73 2e 0a 20 | ally.called.by.other.programs... |
| 9800 | 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 20 66 75 | .....</p>.......<p>.........A.fu |
| 9820 | 6e 63 74 69 6f 6e 20 69 73 20 61 20 62 6c 6f 63 6b 20 6f 66 20 61 6e 79 20 6e 75 6d 62 65 72 20 | nction.is.a.block.of.any.number. |
| 9840 | 6f 66 20 73 74 61 74 65 6d 65 6e 74 73 20 61 6e 64 20 65 78 70 72 65 73 73 69 6f 6e 73 20 74 68 | of.statements.and.expressions.th |
| 9860 | 61 74 2c 20 61 73 20 61 20 77 68 6f 6c 65 2c 20 70 65 72 66 6f 72 6d 20 61 20 74 61 73 6b 2e 0a | at,.as.a.whole,.perform.a.task.. |
| 9880 | 20 20 20 20 20 20 20 20 46 75 6e 63 74 69 6f 6e 73 20 6d 61 79 20 6f 72 20 6d 61 79 20 6e 6f 74 | ........Functions.may.or.may.not |
| 98a0 | 20 72 65 74 75 72 6e 20 64 61 74 61 20 61 66 74 65 72 20 74 68 65 79 20 61 72 65 20 64 6f 6e 65 | .return.data.after.they.are.done |
| 98c0 | 20 70 65 72 66 6f 72 6d 69 6e 67 20 74 68 65 69 72 20 74 61 73 6b 2e 20 49 66 20 61 20 66 75 6e | .performing.their.task..If.a.fun |
| 98e0 | 63 74 69 6f 6e 0a 20 20 20 20 20 20 20 20 63 61 6e 6e 6f 74 20 70 65 72 66 6f 72 6d 20 69 74 73 | ction.........cannot.perform.its |
| 9900 | 20 74 61 73 6b 2c 20 69 74 20 6d 69 67 68 74 20 72 65 74 75 72 6e 20 61 6e 20 65 72 72 6f 72 2e | .task,.it.might.return.an.error. |
| 9920 | 20 5a 69 67 20 6d 61 6b 65 73 20 61 6c 6c 20 6f 66 20 74 68 69 73 20 65 78 70 6c 69 63 69 74 2e | .Zig.makes.all.of.this.explicit. |
| 9940 | 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 49 6e | .......</p>.......<p>.........In |
| 9960 | 20 74 68 65 20 3c 63 6f 64 65 3e 68 65 6c 6c 6f 2e 7a 69 67 3c 2f 63 6f 64 65 3e 20 63 6f 64 65 | .the.<code>hello.zig</code>.code |
| 9980 | 20 73 61 6d 70 6c 65 2c 20 74 68 65 20 3c 63 6f 64 65 3e 6d 61 69 6e 3c 2f 63 6f 64 65 3e 20 66 | .sample,.the.<code>main</code>.f |
| 99a0 | 75 6e 63 74 69 6f 6e 20 69 73 20 64 65 63 6c 61 72 65 64 0a 20 20 20 20 20 20 20 20 77 69 74 68 | unction.is.declared.........with |
| 99c0 | 20 74 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 21 3c 73 70 61 6e 20 63 6c | .the.<code.class="zig">!<span.cl |
| 99e0 | 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 |
| 9a00 | 3e 20 72 65 74 75 72 6e 20 74 79 70 65 2e 20 54 68 69 73 20 72 65 74 75 72 6e 20 74 79 70 65 20 | >.return.type..This.return.type. |
| 9a20 | 69 73 20 6b 6e 6f 77 6e 20 61 73 20 61 6e 20 3c 61 20 68 72 65 66 3d 22 23 45 72 72 6f 72 2d 55 | is.known.as.an.<a.href="#Error-U |
| 9a40 | 6e 69 6f 6e 2d 54 79 70 65 22 3e 45 72 72 6f 72 20 55 6e 69 6f 6e 20 54 79 70 65 3c 2f 61 3e 2e | nion-Type">Error.Union.Type</a>. |
| 9a60 | 0a 20 20 20 20 20 20 20 20 54 68 69 73 20 73 79 6e 74 61 78 20 74 65 6c 6c 73 20 74 68 65 20 5a | .........This.syntax.tells.the.Z |
| 9a80 | 69 67 20 63 6f 6d 70 69 6c 65 72 20 74 68 61 74 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 77 69 | ig.compiler.that.the.function.wi |
| 9aa0 | 6c 6c 20 65 69 74 68 65 72 20 72 65 74 75 72 6e 20 61 6e 0a 20 20 20 20 20 20 20 20 65 72 72 6f | ll.either.return.an.........erro |
| 9ac0 | 72 20 6f 72 20 61 20 76 61 6c 75 65 2e 20 41 6e 20 65 72 72 6f 72 20 75 6e 69 6f 6e 20 74 79 70 | r.or.a.value..An.error.union.typ |
| 9ae0 | 65 20 63 6f 6d 62 69 6e 65 73 20 61 6e 20 3c 61 20 68 72 65 66 3d 22 23 45 72 72 6f 72 2d 53 65 | e.combines.an.<a.href="#Error-Se |
| 9b00 | 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 20 61 6e 64 20 61 | t-Type">Error.Set.Type</a>.and.a |
| 9b20 | 20 3c 61 20 68 72 65 66 3d 22 23 50 72 69 6d 69 74 69 76 65 2d 54 79 70 65 73 22 3e 50 72 69 6d | .<a.href="#Primitive-Types">Prim |
| 9b40 | 69 74 69 76 65 20 54 79 70 65 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 20 20 54 68 65 20 66 75 6c 6c | itive.Type</a>..........The.full |
| 9b60 | 20 66 6f 72 6d 20 6f 66 20 61 6e 20 65 72 72 6f 72 20 75 6e 69 6f 6e 20 74 79 70 65 20 69 73 0a | .form.of.an.error.union.type.is. |
| 9b80 | 20 20 20 20 20 20 20 20 3c 63 6f 64 65 3e 26 6c 74 3b 65 72 72 6f 72 20 73 65 74 20 74 79 70 65 | ........<code><error.set.type |
| 9ba0 | 26 67 74 3b 3c 2f 63 6f 64 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 21 3c 2f | ></code><code.class="zig">!</ |
| 9bc0 | 63 6f 64 65 3e 3c 63 6f 64 65 3e 26 6c 74 3b 70 72 69 6d 69 74 69 76 65 20 74 79 70 65 26 67 74 | code><code><primitive.type> |
| 9be0 | 3b 3c 2f 63 6f 64 65 3e 2e 20 49 6e 20 74 68 65 20 63 6f 64 65 0a 20 20 20 20 20 20 20 20 73 61 | ;</code>..In.the.code.........sa |
| 9c00 | 6d 70 6c 65 2c 20 74 68 65 20 65 72 72 6f 72 20 73 65 74 20 74 79 70 65 20 69 73 20 6e 6f 74 20 | mple,.the.error.set.type.is.not. |
| 9c20 | 65 78 70 6c 69 63 69 74 6c 79 20 77 72 69 74 74 65 6e 20 6f 6e 20 74 68 65 20 6c 65 66 74 20 73 | explicitly.written.on.the.left.s |
| 9c40 | 69 64 65 20 6f 66 20 74 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 21 3c 2f | ide.of.the.<code.class="zig">!</ |
| 9c60 | 63 6f 64 65 3e 20 6f 70 65 72 61 74 6f 72 2e 0a 20 20 20 20 20 20 20 20 57 68 65 6e 20 77 72 69 | code>.operator..........When.wri |
| 9c80 | 74 74 65 6e 20 74 68 69 73 20 77 61 79 2c 20 74 68 65 20 65 72 72 6f 72 20 73 65 74 20 74 79 70 | tten.this.way,.the.error.set.typ |
| 9ca0 | 65 20 69 73 20 61 20 73 70 65 63 69 61 6c 20 6b 69 6e 64 20 6f 66 20 65 72 72 6f 72 20 75 6e 69 | e.is.a.special.kind.of.error.uni |
| 9cc0 | 6f 6e 20 74 79 70 65 20 74 68 61 74 20 68 61 73 20 61 6e 0a 20 20 20 20 20 20 20 20 3c 61 20 68 | on.type.that.has.an.........<a.h |
| 9ce0 | 72 65 66 3d 22 23 49 6e 66 65 72 72 65 64 2d 45 72 72 6f 72 2d 53 65 74 73 22 3e 69 6e 66 65 72 | ref="#Inferred-Error-Sets">infer |
| 9d00 | 72 65 64 20 65 72 72 6f 72 20 73 65 74 20 74 79 70 65 3c 2f 61 3e 2e 20 54 68 65 20 3c 63 6f 64 | red.error.set.type</a>..The.<cod |
| 9d20 | 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | e.class="zig"><span.class="tok-t |
| 9d40 | 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 61 66 74 65 72 20 74 68 | ype">void</span></code>.after.th |
| 9d60 | 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 21 3c 2f 63 6f 64 65 3e 20 6f 70 65 | e.<code.class="zig">!</code>.ope |
| 9d80 | 72 61 74 6f 72 0a 20 20 20 20 20 20 20 20 74 65 6c 6c 73 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 | rator.........tells.the.compiler |
| 9da0 | 20 74 68 61 74 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 77 69 6c 6c 20 6e 6f 74 20 72 65 74 75 | .that.the.function.will.not.retu |
| 9dc0 | 72 6e 20 61 20 76 61 6c 75 65 20 75 6e 64 65 72 20 6e 6f 72 6d 61 6c 20 63 69 72 63 75 6d 73 74 | rn.a.value.under.normal.circumst |
| 9de0 | 61 6e 63 65 73 20 28 69 2e 65 2e 20 6e 6f 20 65 72 72 6f 72 73 20 6f 63 63 75 72 29 2e 0a 20 20 | ances.(i.e..no.errors.occur).... |
| 9e00 | 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 4e 6f 74 65 20 | ....</p>.......<p>.........Note. |
| 9e20 | 74 6f 20 65 78 70 65 72 69 65 6e 63 65 64 20 70 72 6f 67 72 61 6d 6d 65 72 73 3a 20 5a 69 67 20 | to.experienced.programmers:.Zig. |
| 9e40 | 61 6c 73 6f 20 68 61 73 20 74 68 65 20 62 6f 6f 6c 65 61 6e 20 3c 61 20 68 72 65 66 3d 22 23 4f | also.has.the.boolean.<a.href="#O |
| 9e60 | 70 65 72 61 74 6f 72 73 22 3e 6f 70 65 72 61 74 6f 72 3c 2f 61 3e 20 3c 63 6f 64 65 20 63 6c 61 | perators">operator</a>.<code.cla |
| 9e80 | 73 73 3d 22 7a 69 67 22 3e 21 61 3c 2f 63 6f 64 65 3e 0a 20 20 20 20 20 20 20 20 77 68 65 72 65 | ss="zig">!a</code>.........where |
| 9ea0 | 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 61 3c 2f 63 6f 64 65 3e 20 69 73 20 61 | .<code.class="zig">a</code>.is.a |
| 9ec0 | 20 76 61 6c 75 65 20 6f 66 20 74 79 70 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | .value.of.type.<code.class="zig" |
| 9ee0 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 | ><span.class="tok-type">bool</sp |
| 9f00 | 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 20 45 72 72 6f 72 20 75 6e 69 6f 6e 20 74 79 70 65 73 20 63 6f | an></code>..Error.union.types.co |
| 9f20 | 6e 74 61 69 6e 20 74 68 65 0a 20 20 20 20 20 20 20 20 6e 61 6d 65 20 6f 66 20 74 68 65 20 74 79 | ntain.the.........name.of.the.ty |
| 9f40 | 70 65 20 69 6e 20 74 68 65 20 73 79 6e 74 61 78 3a 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a | pe.in.the.syntax:.<code.class="z |
| 9f60 | 69 67 22 3e 21 3c 2f 63 6f 64 65 3e 3c 63 6f 64 65 3e 26 6c 74 3b 70 72 69 6d 69 74 69 76 65 20 | ig">!</code><code><primitive. |
| 9f80 | 74 79 70 65 26 67 74 3b 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 | type></code>........</p>..... |
| 9fa0 | 20 20 3c 70 3e 0a 20 20 20 20 20 20 20 20 49 6e 20 5a 69 67 2c 20 61 20 66 75 6e 63 74 69 6f 6e | ..<p>.........In.Zig,.a.function |
| 9fc0 | 27 73 20 62 6c 6f 63 6b 20 6f 66 20 73 74 61 74 65 6d 65 6e 74 73 20 61 6e 64 20 65 78 70 72 65 | 's.block.of.statements.and.expre |
| 9fe0 | 73 73 69 6f 6e 73 20 61 72 65 20 73 75 72 72 6f 75 6e 64 65 64 20 62 79 20 3c 63 6f 64 65 3e 7b | ssions.are.surrounded.by.<code>{ |
| a000 | 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 7d 3c 2f 63 6f 64 | </code>.and.........<code>}</cod |
| a020 | 65 3e 20 63 75 72 6c 79 2d 62 72 61 63 65 73 2e 20 49 6e 73 69 64 65 20 6f 66 20 74 68 65 20 3c | e>.curly-braces..Inside.of.the.< |
| a040 | 63 6f 64 65 3e 6d 61 69 6e 3c 2f 63 6f 64 65 3e 20 66 75 6e 63 74 69 6f 6e 20 61 72 65 20 65 78 | code>main</code>.function.are.ex |
| a060 | 70 72 65 73 73 69 6f 6e 73 20 74 68 61 74 20 70 65 72 66 6f 72 6d 0a 20 20 20 20 20 20 20 20 74 | pressions.that.perform.........t |
| a080 | 68 65 20 74 61 73 6b 20 6f 66 20 6f 75 74 70 75 74 74 69 6e 67 20 3c 63 6f 64 65 3e 48 65 6c 6c | he.task.of.outputting.<code>Hell |
| a0a0 | 6f 2c 20 77 6f 72 6c 64 21 3c 2f 63 6f 64 65 3e 20 74 6f 20 73 74 61 6e 64 61 72 64 20 6f 75 74 | o,.world!</code>.to.standard.out |
| a0c0 | 70 75 74 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 | put........</p>.......<p>....... |
| a0e0 | 20 20 46 69 72 73 74 2c 20 61 20 63 6f 6e 73 74 61 6e 74 20 69 64 65 6e 74 69 66 69 65 72 2c 20 | ..First,.a.constant.identifier,. |
| a100 | 3c 63 6f 64 65 3e 73 74 64 6f 75 74 3c 2f 63 6f 64 65 3e 2c 20 69 73 20 69 6e 69 74 69 61 6c 69 | <code>stdout</code>,.is.initiali |
| a120 | 7a 65 64 20 74 6f 20 72 65 70 72 65 73 65 6e 74 20 73 74 61 6e 64 61 72 64 20 6f 75 74 70 75 74 | zed.to.represent.standard.output |
| a140 | 27 73 0a 20 20 20 20 20 20 20 20 77 72 69 74 65 72 2e 20 54 68 65 6e 2c 20 74 68 65 20 70 72 6f | 's.........writer..Then,.the.pro |
| a160 | 67 72 61 6d 20 74 72 69 65 73 20 74 6f 20 70 72 69 6e 74 20 74 68 65 20 3c 63 6f 64 65 3e 48 65 | gram.tries.to.print.the.<code>He |
| a180 | 6c 6c 6f 2c 20 77 6f 72 6c 64 21 3c 2f 63 6f 64 65 3e 0a 20 20 20 20 20 20 20 20 6d 65 73 73 61 | llo,.world!</code>.........messa |
| a1a0 | 67 65 20 74 6f 20 73 74 61 6e 64 61 72 64 20 6f 75 74 70 75 74 2e 0a 20 20 20 20 20 20 3c 2f 70 | ge.to.standard.output........</p |
| a1c0 | 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 20 20 46 75 6e 63 74 69 6f 6e 73 20 73 6f | >.......<p>.........Functions.so |
| a1e0 | 6d 65 74 69 6d 65 73 20 6e 65 65 64 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 74 6f 20 70 65 72 66 | metimes.need.information.to.perf |
| a200 | 6f 72 6d 20 74 68 65 69 72 20 74 61 73 6b 2e 20 49 6e 20 5a 69 67 2c 20 69 6e 66 6f 72 6d 61 74 | orm.their.task..In.Zig,.informat |
| a220 | 69 6f 6e 20 69 73 20 70 61 73 73 65 64 0a 20 20 20 20 20 20 20 20 74 6f 20 66 75 6e 63 74 69 6f | ion.is.passed.........to.functio |
| a240 | 6e 73 20 62 65 74 77 65 65 6e 20 6f 70 65 6e 20 3c 63 6f 64 65 3e 28 3c 2f 63 6f 64 65 3e 20 61 | ns.between.open.<code>(</code>.a |
| a260 | 6e 64 20 63 6c 6f 73 65 20 3c 63 6f 64 65 3e 29 3c 2f 63 6f 64 65 3e 20 70 61 72 65 6e 74 68 65 | nd.close.<code>)</code>.parenthe |
| a280 | 73 69 73 20 70 6c 61 63 65 64 20 61 66 74 65 72 0a 20 20 20 20 20 20 20 20 74 68 65 20 66 75 6e | sis.placed.after.........the.fun |
| a2a0 | 63 74 69 6f 6e 27 73 20 6e 61 6d 65 2e 20 54 68 69 73 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 69 | ction's.name..This.information.i |
| a2c0 | 73 20 61 6c 73 6f 20 6b 6e 6f 77 6e 20 61 73 20 61 72 67 75 6d 65 6e 74 73 2e 20 57 68 65 6e 20 | s.also.known.as.arguments..When. |
| a2e0 | 74 68 65 72 65 20 61 72 65 0a 20 20 20 20 20 20 20 20 6d 75 6c 74 69 70 6c 65 20 61 72 67 75 6d | there.are.........multiple.argum |
| a300 | 65 6e 74 73 20 70 61 73 73 65 64 20 74 6f 20 61 20 66 75 6e 63 74 69 6f 6e 2c 20 74 68 65 79 20 | ents.passed.to.a.function,.they. |
| a320 | 61 72 65 20 73 65 70 61 72 61 74 65 64 20 62 79 20 63 6f 6d 6d 61 73 20 3c 63 6f 64 65 3e 2c 3c | are.separated.by.commas.<code>,< |
| a340 | 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 | /code>........</p>.......<p>.... |
| a360 | 20 20 20 20 20 54 68 65 20 74 77 6f 20 61 72 67 75 6d 65 6e 74 73 20 70 61 73 73 65 64 20 74 6f | .....The.two.arguments.passed.to |
| a380 | 20 74 68 65 20 3c 63 6f 64 65 3e 73 74 64 6f 75 74 2e 70 72 69 6e 74 28 29 3c 2f 63 6f 64 65 3e | .the.<code>stdout.print()</code> |
| a3a0 | 20 66 75 6e 63 74 69 6f 6e 2c 20 3c 63 6f 64 65 3e 22 48 65 6c 6c 6f 2c 20 7b 7d 21 5c 6e 22 3c | .function,.<code>"Hello,.{}!\n"< |
| a3c0 | 2f 63 6f 64 65 3e 0a 20 20 20 20 20 20 20 20 61 6e 64 20 3c 63 6f 64 65 3e 2e 7b 22 77 6f 72 6c | /code>.........and.<code>.{"worl |
| a3e0 | 64 22 7d 3c 2f 63 6f 64 65 3e 2c 20 61 72 65 20 65 76 61 6c 75 61 74 65 64 20 61 74 20 3c 61 20 | d"}</code>,.are.evaluated.at.<a. |
| a400 | 68 72 65 66 3d 22 23 63 6f 6d 70 74 69 6d 65 22 3e 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 3c 2f 61 | href="#comptime">compile-time</a |
| a420 | 3e 2e 20 54 68 65 20 63 6f 64 65 20 73 61 6d 70 6c 65 20 69 73 0a 20 20 20 20 20 20 20 20 70 75 | >..The.code.sample.is.........pu |
| a440 | 72 70 6f 73 65 6c 79 20 77 72 69 74 74 65 6e 20 74 6f 20 73 68 6f 77 20 68 6f 77 20 74 6f 20 70 | rposely.written.to.show.how.to.p |
| a460 | 65 72 66 6f 72 6d 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 | erform.<a.href="#String-Literals |
| a480 | 2d 61 6e 64 2d 43 68 61 72 61 63 74 65 72 2d 4c 69 74 65 72 61 6c 73 22 3e 73 74 72 69 6e 67 3c | -and-Character-Literals">string< |
| a4a0 | 2f 61 3e 0a 20 20 20 20 20 20 20 20 73 75 62 73 74 69 74 75 74 69 6f 6e 20 69 6e 20 74 68 65 20 | /a>.........substitution.in.the. |
| a4c0 | 3c 63 6f 64 65 3e 70 72 69 6e 74 3c 2f 63 6f 64 65 3e 20 66 75 6e 63 74 69 6f 6e 2e 20 54 68 65 | <code>print</code>.function..The |
| a4e0 | 20 63 75 72 6c 79 2d 62 72 61 63 65 73 20 69 6e 73 69 64 65 20 6f 66 20 74 68 65 20 66 69 72 73 | .curly-braces.inside.of.the.firs |
| a500 | 74 20 61 72 67 75 6d 65 6e 74 0a 20 20 20 20 20 20 20 20 61 72 65 20 73 75 62 73 74 69 74 75 74 | t.argument.........are.substitut |
| a520 | 65 64 20 77 69 74 68 20 74 68 65 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 6b 6e 6f 77 6e 20 76 | ed.with.the.compile-time.known.v |
| a540 | 61 6c 75 65 20 69 6e 73 69 64 65 20 6f 66 20 74 68 65 20 73 65 63 6f 6e 64 20 61 72 67 75 6d 65 | alue.inside.of.the.second.argume |
| a560 | 6e 74 0a 20 20 20 20 20 20 20 20 28 6b 6e 6f 77 6e 20 61 73 20 61 6e 20 3c 61 20 68 72 65 66 3d | nt.........(known.as.an.<a.href= |
| a580 | 22 23 41 6e 6f 6e 79 6d 6f 75 73 2d 53 74 72 75 63 74 2d 4c 69 74 65 72 61 6c 73 22 3e 61 6e 6f | "#Anonymous-Struct-Literals">ano |
| a5a0 | 6e 79 6d 6f 75 73 20 73 74 72 75 63 74 20 6c 69 74 65 72 61 6c 3c 2f 61 3e 29 2e 20 54 68 65 20 | nymous.struct.literal</a>)..The. |
| a5c0 | 3c 63 6f 64 65 3e 5c 6e 3c 2f 63 6f 64 65 3e 0a 20 20 20 20 20 20 20 20 69 6e 73 69 64 65 20 6f | <code>\n</code>.........inside.o |
| a5e0 | 66 20 74 68 65 20 64 6f 75 62 6c 65 2d 71 75 6f 74 65 73 20 6f 66 20 74 68 65 20 66 69 72 73 74 | f.the.double-quotes.of.the.first |
| a600 | 20 61 72 67 75 6d 65 6e 74 20 69 73 20 74 68 65 20 3c 61 20 68 72 65 66 3d 22 23 45 73 63 61 70 | .argument.is.the.<a.href="#Escap |
| a620 | 65 2d 53 65 71 75 65 6e 63 65 73 22 3e 65 73 63 61 70 65 20 73 65 71 75 65 6e 63 65 3c 2f 61 3e | e-Sequences">escape.sequence</a> |
| a640 | 20 66 6f 72 20 74 68 65 0a 20 20 20 20 20 20 20 20 6e 65 77 6c 69 6e 65 20 63 68 61 72 61 63 74 | .for.the.........newline.charact |
| a660 | 65 72 2e 20 54 68 65 20 3c 61 20 68 72 65 66 3d 22 23 74 72 79 22 3e 74 72 79 3c 2f 61 3e 20 65 | er..The.<a.href="#try">try</a>.e |
| a680 | 78 70 72 65 73 73 69 6f 6e 20 65 76 61 6c 75 61 74 65 73 20 74 68 65 20 72 65 73 75 6c 74 20 6f | xpression.evaluates.the.result.o |
| a6a0 | 66 20 3c 63 6f 64 65 3e 73 74 64 6f 75 74 2e 70 72 69 6e 74 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 | f.<code>stdout.print</code>..... |
| a6c0 | 20 20 20 20 20 49 66 20 74 68 65 20 72 65 73 75 6c 74 20 69 73 20 61 6e 20 65 72 72 6f 72 2c 20 | .....If.the.result.is.an.error,. |
| a6e0 | 74 68 65 6e 20 74 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e | then.the.<code.class="zig"><span |
| a700 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 | .class="tok-kw">try</span></code |
| a720 | 3e 20 65 78 70 72 65 73 73 69 6f 6e 20 77 69 6c 6c 20 72 65 74 75 72 6e 20 66 72 6f 6d 0a 20 20 | >.expression.will.return.from... |
| a740 | 20 20 20 20 20 20 3c 63 6f 64 65 3e 6d 61 69 6e 3c 2f 63 6f 64 65 3e 20 77 69 74 68 20 74 68 65 | ......<code>main</code>.with.the |
| a760 | 20 65 72 72 6f 72 2e 20 4f 74 68 65 72 77 69 73 65 2c 20 74 68 65 20 70 72 6f 67 72 61 6d 20 77 | .error..Otherwise,.the.program.w |
| a780 | 69 6c 6c 20 63 6f 6e 74 69 6e 75 65 2e 20 49 6e 20 74 68 69 73 20 63 61 73 65 2c 20 74 68 65 72 | ill.continue..In.this.case,.ther |
| a7a0 | 65 20 61 72 65 20 6e 6f 0a 20 20 20 20 20 20 20 20 6d 6f 72 65 20 73 74 61 74 65 6d 65 6e 74 73 | e.are.no.........more.statements |
| a7c0 | 20 6f 72 20 65 78 70 72 65 73 73 69 6f 6e 73 20 6c 65 66 74 20 74 6f 20 65 78 65 63 75 74 65 20 | .or.expressions.left.to.execute. |
| a7e0 | 69 6e 20 74 68 65 20 3c 63 6f 64 65 3e 6d 61 69 6e 3c 2f 63 6f 64 65 3e 20 66 75 6e 63 74 69 6f | in.the.<code>main</code>.functio |
| a800 | 6e 2c 20 73 6f 20 74 68 65 20 70 72 6f 67 72 61 6d 20 65 78 69 74 73 2e 0a 20 20 20 20 20 20 3c | n,.so.the.program.exits........< |
| a820 | 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 20 20 49 6e 20 5a 69 67 2c 20 74 68 | /p>.......<p>.........In.Zig,.th |
| a840 | 65 20 73 74 61 6e 64 61 72 64 20 6f 75 74 70 75 74 20 77 72 69 74 65 72 27 73 20 3c 63 6f 64 65 | e.standard.output.writer's.<code |
| a860 | 3e 70 72 69 6e 74 3c 2f 63 6f 64 65 3e 20 66 75 6e 63 74 69 6f 6e 20 69 73 20 61 6c 6c 6f 77 65 | >print</code>.function.is.allowe |
| a880 | 64 20 74 6f 20 66 61 69 6c 20 62 65 63 61 75 73 65 0a 20 20 20 20 20 20 20 20 69 74 20 69 73 20 | d.to.fail.because.........it.is. |
| a8a0 | 61 63 74 75 61 6c 6c 79 20 61 20 66 75 6e 63 74 69 6f 6e 20 64 65 66 69 6e 65 64 20 61 73 20 70 | actually.a.function.defined.as.p |
| a8c0 | 61 72 74 20 6f 66 20 61 20 67 65 6e 65 72 69 63 20 57 72 69 74 65 72 2e 20 43 6f 6e 73 69 64 65 | art.of.a.generic.Writer..Conside |
| a8e0 | 72 20 61 20 67 65 6e 65 72 69 63 20 57 72 69 74 65 72 20 74 68 61 74 0a 20 20 20 20 20 20 20 20 | r.a.generic.Writer.that......... |
| a900 | 72 65 70 72 65 73 65 6e 74 73 20 77 72 69 74 69 6e 67 20 64 61 74 61 20 74 6f 20 61 20 66 69 6c | represents.writing.data.to.a.fil |
| a920 | 65 2e 20 57 68 65 6e 20 74 68 65 20 64 69 73 6b 20 69 73 20 66 75 6c 6c 2c 20 61 20 77 72 69 74 | e..When.the.disk.is.full,.a.writ |
| a940 | 65 20 74 6f 20 74 68 65 20 66 69 6c 65 20 77 69 6c 6c 20 66 61 69 6c 2e 0a 20 20 20 20 20 20 20 | e.to.the.file.will.fail......... |
| a960 | 20 48 6f 77 65 76 65 72 2c 20 77 65 20 74 79 70 69 63 61 6c 6c 79 20 64 6f 20 6e 6f 74 20 65 78 | .However,.we.typically.do.not.ex |
| a980 | 70 65 63 74 20 77 72 69 74 69 6e 67 20 74 65 78 74 20 74 6f 20 74 68 65 20 73 74 61 6e 64 61 72 | pect.writing.text.to.the.standar |
| a9a0 | 64 20 6f 75 74 70 75 74 20 74 6f 20 66 61 69 6c 2e 20 54 6f 20 61 76 6f 69 64 20 68 61 76 69 6e | d.output.to.fail..To.avoid.havin |
| a9c0 | 67 0a 20 20 20 20 20 20 20 20 74 6f 20 68 61 6e 64 6c 65 20 74 68 65 20 66 61 69 6c 75 72 65 20 | g.........to.handle.the.failure. |
| a9e0 | 63 61 73 65 20 6f 66 20 70 72 69 6e 74 69 6e 67 20 74 6f 20 73 74 61 6e 64 61 72 64 20 6f 75 74 | case.of.printing.to.standard.out |
| aa00 | 70 75 74 2c 20 79 6f 75 20 63 61 6e 20 75 73 65 20 61 6c 74 65 72 6e 61 74 65 20 66 75 6e 63 74 | put,.you.can.use.alternate.funct |
| aa20 | 69 6f 6e 73 3a 20 74 68 65 0a 20 20 20 20 20 20 20 20 66 75 6e 63 74 69 6f 6e 73 20 69 6e 20 3c | ions:.the.........functions.in.< |
| aa40 | 63 6f 64 65 3e 73 74 64 2e 6c 6f 67 3c 2f 63 6f 64 65 3e 20 66 6f 72 20 70 72 6f 70 65 72 20 6c | code>std.log</code>.for.proper.l |
| aa60 | 6f 67 67 69 6e 67 20 6f 72 20 74 68 65 20 3c 63 6f 64 65 3e 73 74 64 2e 64 65 62 75 67 2e 70 72 | ogging.or.the.<code>std.debug.pr |
| aa80 | 69 6e 74 3c 2f 63 6f 64 65 3e 20 66 75 6e 63 74 69 6f 6e 2e 0a 20 20 20 20 20 20 20 20 54 68 69 | int</code>.function..........Thi |
| aaa0 | 73 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 20 77 69 6c 6c 20 75 73 65 20 74 68 65 20 6c 61 74 | s.documentation.will.use.the.lat |
| aac0 | 74 65 72 20 6f 70 74 69 6f 6e 20 74 6f 20 70 72 69 6e 74 20 74 6f 20 73 74 61 6e 64 61 72 64 20 | ter.option.to.print.to.standard. |
| aae0 | 65 72 72 6f 72 20 28 73 74 64 65 72 72 29 20 61 6e 64 20 73 69 6c 65 6e 74 6c 79 20 72 65 74 75 | error.(stderr).and.silently.retu |
| ab00 | 72 6e 0a 20 20 20 20 20 20 20 20 6f 6e 20 66 61 69 6c 75 72 65 2e 20 54 68 65 20 6e 65 78 74 20 | rn.........on.failure..The.next. |
| ab20 | 63 6f 64 65 20 73 61 6d 70 6c 65 2c 20 3c 63 6f 64 65 3e 68 65 6c 6c 6f 5f 61 67 61 69 6e 2e 7a | code.sample,.<code>hello_again.z |
| ab40 | 69 67 3c 2f 63 6f 64 65 3e 20 64 65 6d 6f 6e 73 74 72 61 74 65 73 20 74 68 65 20 75 73 65 20 6f | ig</code>.demonstrates.the.use.o |
| ab60 | 66 0a 20 20 20 20 20 20 20 20 3c 63 6f 64 65 3e 73 74 64 2e 64 65 62 75 67 2e 70 72 69 6e 74 3c | f.........<code>std.debug.print< |
| ab80 | 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 20 63 6c 61 73 | /code>........</p>.......<p.clas |
| aba0 | 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 70 3e 3c 70 72 65 | s="file">hello_again.zig</p><pre |
| abc0 | 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ><code.class="zig"><span.class=" |
| abe0 | 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 |
| ac00 | 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</ |
| ac20 | 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 |
| ac40 | 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; |
| ac60 | 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 |
| ac80 | 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> |
| aca0 | 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 |
| acc0 | 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< |
| ace0 | 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | /span>.{.....print(<span.class=" |
| ad00 | 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 48 65 6c 6c 6f 2c 20 77 6f 72 6c 64 21 5c 6e 26 71 | tok-str">"Hello,.world!\n&q |
| ad20 | 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 7d 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 | uot;</span>,..{});.}</code></pre |
| ad40 | 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 | ><pre><code.class="shell">$.zig. |
| ad60 | 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 0a 24 20 2e 2f 68 65 | build-exe.hello_again.zig.$../he |
| ad80 | 6c 6c 6f 5f 61 67 61 69 6e 0a 48 65 6c 6c 6f 2c 20 77 6f 72 6c 64 21 0a 3c 2f 63 6f 64 65 3e 3c | llo_again.Hello,.world!.</code>< |
| ada0 | 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 4e 6f 74 65 20 74 68 61 74 | /pre>........<p>.......Note.that |
| adc0 | 20 79 6f 75 20 63 61 6e 20 6c 65 61 76 65 20 6f 66 66 20 74 68 65 20 3c 63 6f 64 65 20 63 6c 61 | .you.can.leave.off.the.<code.cla |
| ade0 | 73 73 3d 22 7a 69 67 22 3e 21 3c 2f 63 6f 64 65 3e 20 66 72 6f 6d 20 74 68 65 20 72 65 74 75 72 | ss="zig">!</code>.from.the.retur |
| ae00 | 6e 20 74 79 70 65 20 62 65 63 61 75 73 65 20 3c 63 6f 64 65 3e 73 74 64 2e 64 65 62 75 67 2e 70 | n.type.because.<code>std.debug.p |
| ae20 | 72 69 6e 74 3c 2f 63 6f 64 65 3e 20 63 61 6e 6e 6f 74 20 66 61 69 6c 2e 0a 20 20 20 20 20 20 3c | rint</code>.cannot.fail........< |
| ae40 | 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>.< |
| ae60 | 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 56 61 6c 75 65 73 22 3e 56 61 6c 75 65 73 3c 2f 61 3e 3c | li><a.href="#Values">Values</a>< |
| ae80 | 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 69 6d 70 6f 72 74 22 3e 40 69 6d 70 6f | /li>.<li><a.href="#import">@impo |
| aea0 | 72 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 45 72 72 6f 72 73 | rt</a></li>.<li><a.href="#Errors |
| aec0 | 22 3e 45 72 72 6f 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 | ">Errors</a></li>.<li><a.href="# |
| aee0 | 52 6f 6f 74 2d 53 6f 75 72 63 65 2d 46 69 6c 65 22 3e 52 6f 6f 74 20 53 6f 75 72 63 65 20 46 69 | Root-Source-File">Root.Source.Fi |
| af00 | 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 53 6f 75 72 63 65 | le</a></li>.<li><a.href="#Source |
| af20 | 2d 45 6e 63 6f 64 69 6e 67 22 3e 53 6f 75 72 63 65 20 45 6e 63 6f 64 69 6e 67 3c 2f 61 3e 3c 2f | -Encoding">Source.Encoding</a></ |
| af40 | 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 31 20 69 64 3d 22 | li>.</ul>...............<h1.id=" |
| af60 | 43 6f 6d 6d 65 6e 74 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 43 6f 6d 6d 65 6e 74 73 | Comments"><a.href="#toc-Comments |
| af80 | 22 3e 43 6f 6d 6d 65 6e 74 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 | ">Comments</a>.<a.class="hdr".hr |
| afa0 | 65 66 3d 22 23 43 6f 6d 6d 65 6e 74 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 31 3e 0a 0a 20 20 20 20 | ef="#Comments">..</a></h1>...... |
| afc0 | 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 63 6f 6d 6d 65 6e 74 73 2e 7a 69 67 3c 2f | ..<p.class="file">comments.zig</ |
| afe0 | 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 | p><pre><code.class="zig"><span.c |
| b000 | 6c 61 73 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 |
| b020 | 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 |
| b040 | 6d 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 |
| b060 | 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 |
| b080 | 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" |
| b0a0 | 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 |
| b0c0 | 72 22 3e 26 71 75 6f 74 3b 63 6f 6d 6d 65 6e 74 73 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b | r">"comments"</span>.{ |
| b0e0 | 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">/ |
| b100 | 2f 20 43 6f 6d 6d 65 6e 74 73 20 69 6e 20 5a 69 67 20 73 74 61 72 74 20 77 69 74 68 20 26 71 75 | /.Comments.in.Zig.start.with.&qu |
| b120 | 6f 74 3b 2f 2f 26 71 75 6f 74 3b 20 61 6e 64 20 65 6e 64 20 61 74 20 74 68 65 20 6e 65 78 74 20 | ot;//".and.end.at.the.next. |
| b140 | 4c 46 20 62 79 74 65 20 28 65 6e 64 20 6f 66 20 6c 69 6e 65 29 2e 3c 2f 73 70 61 6e 3e 0a 20 20 | LF.byte.(end.of.line).</span>... |
| b160 | 20 20 3c 73 70 61 6e 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 |
| b180 | 68 65 20 62 65 6c 6f 77 20 6c 69 6e 65 20 69 73 20 61 20 63 6f 6d 6d 65 6e 74 2c 20 61 6e 64 20 | he.below.line.is.a.comment,.and. |
| b1a0 | 77 6f 6e 27 74 20 62 65 20 65 78 65 63 75 74 65 64 2e 3c 2f 73 70 61 6e 3e 0a 0a 20 20 20 20 3c | won't.be.executed.</span>......< |
| b1c0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 65 78 70 65 63 | span.class="tok-comment">//expec |
| b1e0 | 74 28 66 61 6c 73 65 29 3b 3c 2f 73 70 61 6e 3e 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | t(false);</span>......<span.clas |
| b200 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 78 20 3d 20 3c 73 70 61 | s="tok-kw">const</span>.x.=.<spa |
| b220 | 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 20 | n.class="tok-null">true</span>;. |
| b240 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 61 6e | .<span.class="tok-comment">//.an |
| b260 | 6f 74 68 65 72 20 63 6f 6d 6d 65 6e 74 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 65 78 70 65 63 74 28 | other.comment</span>.....expect( |
| b280 | 78 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 | x);.}</code></pre><pre><code.cla |
| b2a0 | 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 63 6f 6d 6d 65 6e 74 73 2e 7a | ss="shell">$.zig.test.comments.z |
| b2c0 | 69 67 0a 31 2f 31 20 74 65 73 74 20 26 71 75 6f 74 3b 63 6f 6d 6d 65 6e 74 73 26 71 75 6f 74 3b | ig.1/1.test."comments" |
| b2e0 | 2e 2e 2e 20 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 | ....OK.All.1.tests.passed..</cod |
| b300 | 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 72 65 20 | e></pre>........<p>.......There. |
| b320 | 61 72 65 20 6e 6f 20 6d 75 6c 74 69 6c 69 6e 65 20 63 6f 6d 6d 65 6e 74 73 20 69 6e 20 5a 69 67 | are.no.multiline.comments.in.Zig |
| b340 | 20 28 65 2e 67 2e 20 6c 69 6b 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 63 22 3e 2f 2a 20 2a | .(e.g..like.<code.class="c">/*.* |
| b360 | 2f 3c 2f 63 6f 64 65 3e 0a 20 20 20 20 20 20 63 6f 6d 6d 65 6e 74 73 20 69 6e 20 43 29 2e 20 20 | /</code>.......comments.in.C)... |
| b380 | 54 68 69 73 20 68 65 6c 70 73 20 61 6c 6c 6f 77 20 5a 69 67 20 74 6f 20 68 61 76 65 20 74 68 65 | This.helps.allow.Zig.to.have.the |
| b3a0 | 20 70 72 6f 70 65 72 74 79 20 74 68 61 74 20 65 61 63 68 20 6c 69 6e 65 0a 20 20 20 20 20 20 6f | .property.that.each.line.......o |
| b3c0 | 66 20 63 6f 64 65 20 63 61 6e 20 62 65 20 74 6f 6b 65 6e 69 7a 65 64 20 6f 75 74 20 6f 66 20 63 | f.code.can.be.tokenized.out.of.c |
| b3e0 | 6f 6e 74 65 78 74 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d | ontext........</p>.......<h2.id= |
| b400 | 22 44 6f 63 2d 63 6f 6d 6d 65 6e 74 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 44 6f 63 | "Doc-comments"><a.href="#toc-Doc |
| b420 | 2d 63 6f 6d 6d 65 6e 74 73 22 3e 44 6f 63 20 63 6f 6d 6d 65 6e 74 73 3c 2f 61 3e 20 3c 61 20 63 | -comments">Doc.comments</a>.<a.c |
| b440 | 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 44 6f 63 2d 63 6f 6d 6d 65 6e 74 73 22 3e | lass="hdr".href="#Doc-comments"> |
| b460 | c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 41 20 64 | ..</a></h2>........<p>.......A.d |
| b480 | 6f 63 20 63 6f 6d 6d 65 6e 74 20 69 73 20 6f 6e 65 20 74 68 61 74 20 62 65 67 69 6e 73 20 77 69 | oc.comment.is.one.that.begins.wi |
| b4a0 | 74 68 20 65 78 61 63 74 6c 79 20 74 68 72 65 65 20 73 6c 61 73 68 65 73 20 28 69 2e 65 2e 0a 20 | th.exactly.three.slashes.(i.e... |
| b4c0 | 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 | .....<code.class="zig"><span.cla |
| b4e0 | 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 | ss="tok-comment">///</span></cod |
| b500 | 65 3e 20 62 75 74 20 6e 6f 74 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 | e>.but.not.<code.class="zig"><sp |
| b520 | 61 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 2f 3c 2f 73 70 61 | an.class="tok-comment">////</spa |
| b540 | 6e 3e 3c 2f 63 6f 64 65 3e 29 3b 0a 20 20 20 20 20 20 6d 75 6c 74 69 70 6c 65 20 64 6f 63 20 63 | n></code>);.......multiple.doc.c |
| b560 | 6f 6d 6d 65 6e 74 73 20 69 6e 20 61 20 72 6f 77 20 61 72 65 20 6d 65 72 67 65 64 20 74 6f 67 65 | omments.in.a.row.are.merged.toge |
| b580 | 74 68 65 72 20 74 6f 20 66 6f 72 6d 20 61 20 6d 75 6c 74 69 6c 69 6e 65 0a 20 20 20 20 20 20 64 | ther.to.form.a.multiline.......d |
| b5a0 | 6f 63 20 63 6f 6d 6d 65 6e 74 2e 20 20 54 68 65 20 64 6f 63 20 63 6f 6d 6d 65 6e 74 20 64 6f 63 | oc.comment...The.doc.comment.doc |
| b5c0 | 75 6d 65 6e 74 73 20 77 68 61 74 65 76 65 72 20 69 6d 6d 65 64 69 61 74 65 6c 79 20 66 6f 6c 6c | uments.whatever.immediately.foll |
| b5e0 | 6f 77 73 20 69 74 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 | ows.it........</p>.......<pre><c |
| b600 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ode.class="zig"><span.class="tok |
| b620 | 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 |
| b640 | 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 |
| b660 | 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>.< |
| b680 | 73 70 61 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 |
| b6a0 | 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 |
| b6c0 | 6e 20 63 6c 61 73 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 |
| b6e0 | 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 |
| b700 | 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=" |
| b720 | 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 |
| b740 | 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. |
| b760 | 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>..... |
| b780 | 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"> |
| b7a0 | 69 36 34 3c 2f 73 70 61 6e 3e 2c 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f | i64</span>,..<span.class="tok-co |
| b7c0 | 6d 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 | mment">//.signed.so.we.can.repre |
| b7e0 | 73 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 | sent.pre-1970.(not.a.doc.comment |
| b800 | 29 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 |
| b820 | 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 6e 61 6e 6f 73 65 63 | mment">///.The.number.of.nanosec |
| b840 | 6f 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 | onds.past.the.second.(doc.commen |
| b860 | 74 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 | t.again).</span>.....nanos:.<spa |
| b880 | 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 0a | n.class="tok-type">u32</span>,.. |
| b8a0 | 20 20 20 20 3c 73 70 61 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">// |
| b8c0 | 2f 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 | /.Returns.a.`Timestamp`.struct.r |
| b8e0 | 65 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 | epresenting.the.Unix.epoch;.that |
| b900 | 20 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 | .is,.the</span>.....<span.class= |
| b920 | 22 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 | "tok-comment">///.moment.of.1970 |
| b940 | 20 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 | .Jan.1.00:00:00.UTC.(this.is.a.d |
| b960 | 6f 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 | oc.comment.too).</span>.....<spa |
| b980 | 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 |
| b9a0 | 6e 20 63 6c 61 73 73 3d 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 |
| b9c0 | 20 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 | .class="tok-fn">unixEpoch</span> |
| b9e0 | 28 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 | ().Timestamp.{.........<span.cla |
| ba00 | 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 54 69 6d 65 73 74 | ss="tok-kw">return</span>.Timest |
| ba20 | 61 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 | amp{..............seconds.=.<spa |
| ba40 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 2c 0a 20 | n.class="tok-number">0</span>,.. |
| ba60 | 20 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 | ............nanos.=.<span.class= |
| ba80 | 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 7d | "tok-number">0</span>,.........} |
| baa0 | 3b 0a 20 20 20 20 7d 0a 7d 3b 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 | ;.....}.};</code></pre>.......<p |
| bac0 | 3e 0a 20 20 20 20 20 20 44 6f 63 20 63 6f 6d 6d 65 6e 74 73 20 61 72 65 20 6f 6e 6c 79 20 61 6c | >.......Doc.comments.are.only.al |
| bae0 | 6c 6f 77 65 64 20 69 6e 20 63 65 72 74 61 69 6e 20 70 6c 61 63 65 73 3b 20 65 76 65 6e 74 75 61 | lowed.in.certain.places;.eventua |
| bb00 | 6c 6c 79 2c 20 69 74 20 77 69 6c 6c 0a 20 20 20 20 20 20 62 65 63 6f 6d 65 20 61 20 63 6f 6d 70 | lly,.it.will.......become.a.comp |
| bb20 | 69 6c 65 20 65 72 72 6f 72 20 74 6f 20 68 61 76 65 20 61 20 64 6f 63 20 63 6f 6d 6d 65 6e 74 20 | ile.error.to.have.a.doc.comment. |
| bb40 | 69 6e 20 61 6e 20 75 6e 65 78 70 65 63 74 65 64 20 70 6c 61 63 65 2c 20 73 75 63 68 20 61 73 0a | in.an.unexpected.place,.such.as. |
| bb60 | 20 20 20 20 20 20 69 6e 20 74 68 65 20 6d 69 64 64 6c 65 20 6f 66 20 61 6e 20 65 78 70 72 65 73 | ......in.the.middle.of.an.expres |
| bb80 | 73 69 6f 6e 2c 20 6f 72 20 6a 75 73 74 20 62 65 66 6f 72 65 20 61 20 6e 6f 6e 2d 64 6f 63 20 63 | sion,.or.just.before.a.non-doc.c |
| bba0 | 6f 6d 6d 65 6e 74 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 | omment........</p>.............. |
| bbc0 | 3c 68 32 20 69 64 3d 22 54 6f 70 2d 4c 65 76 65 6c 2d 44 6f 63 2d 43 6f 6d 6d 65 6e 74 73 22 3e | <h2.id="Top-Level-Doc-Comments"> |
| bbe0 | 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 54 6f 70 2d 4c 65 76 65 6c 2d 44 6f 63 2d 43 6f 6d 6d | <a.href="#toc-Top-Level-Doc-Comm |
| bc00 | 65 6e 74 73 22 3e 54 6f 70 2d 4c 65 76 65 6c 20 44 6f 63 20 43 6f 6d 6d 65 6e 74 73 3c 2f 61 3e | ents">Top-Level.Doc.Comments</a> |
| bc20 | 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 54 6f 70 2d 4c 65 76 65 6c | .<a.class="hdr".href="#Top-Level |
| bc40 | 2d 44 6f 63 2d 43 6f 6d 6d 65 6e 74 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 | -Doc-Comments">..</a></h2>...... |
| bc60 | 20 20 3c 70 3e 55 73 65 72 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 20 74 68 61 74 20 64 6f 65 | ..<p>User.documentation.that.doe |
| bc80 | 73 6e 27 74 20 62 65 6c 6f 6e 67 20 74 6f 20 77 68 61 74 65 76 65 72 0a 20 20 20 20 20 20 69 6d | sn't.belong.to.whatever.......im |
| bca0 | 6d 65 64 69 61 74 65 6c 79 20 66 6f 6c 6c 6f 77 73 20 69 74 2c 20 6c 69 6b 65 20 70 61 63 6b 61 | mediately.follows.it,.like.packa |
| bcc0 | 67 65 2d 6c 65 76 65 6c 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 2c 20 67 6f 65 73 0a 20 20 20 | ge-level.documentation,.goes.... |
| bce0 | 20 20 20 69 6e 20 74 6f 70 2d 6c 65 76 65 6c 20 64 6f 63 20 63 6f 6d 6d 65 6e 74 73 2e 20 41 20 | ...in.top-level.doc.comments..A. |
| bd00 | 74 6f 70 2d 6c 65 76 65 6c 20 64 6f 63 20 63 6f 6d 6d 65 6e 74 20 69 73 20 6f 6e 65 20 74 68 61 | top-level.doc.comment.is.one.tha |
| bd20 | 74 0a 20 20 20 20 20 20 62 65 67 69 6e 73 20 77 69 74 68 20 74 77 6f 20 73 6c 61 73 68 65 73 20 | t.......begins.with.two.slashes. |
| bd40 | 61 6e 64 20 61 6e 20 65 78 63 6c 61 6d 61 74 69 6f 6e 20 70 6f 69 6e 74 3a 0a 20 20 20 20 20 20 | and.an.exclamation.point:....... |
| bd60 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | <code.class="zig"><span.class="t |
| bd80 | 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 21 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 3c 2f | ok-comment">//!</span></code>.</ |
| bda0 | 70 3e 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e | p>.......<pre><code.class="zig"> |
| bdc0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 21 20 54 68 | <span.class="tok-comment">//!.Th |
| bde0 | 69 73 20 6d 6f 64 75 6c 65 20 70 72 6f 76 69 64 65 73 20 66 75 6e 63 74 69 6f 6e 73 20 66 6f 72 | is.module.provides.functions.for |
| be00 | 20 72 65 74 72 69 65 76 69 6e 67 20 74 68 65 20 63 75 72 72 65 6e 74 20 64 61 74 65 20 61 6e 64 | .retrieving.the.current.date.and |
| be20 | 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 |
| be40 | 22 3e 2f 2f 21 20 74 69 6d 65 20 77 69 74 68 20 76 61 72 79 69 6e 67 20 64 65 67 72 65 65 73 20 | ">//!.time.with.varying.degrees. |
| be60 | 6f 66 20 70 72 65 63 69 73 69 6f 6e 20 61 6e 64 20 61 63 63 75 72 61 63 79 2e 20 49 74 20 64 6f | of.precision.and.accuracy..It.do |
| be80 | 65 73 20 6e 6f 74 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 | es.not</span>.<span.class="tok-c |
| bea0 | 6f 6d 6d 65 6e 74 22 3e 2f 2f 21 20 64 65 70 65 6e 64 20 6f 6e 20 6c 69 62 63 2c 20 62 75 74 20 | omment">//!.depend.on.libc,.but. |
| bec0 | 77 69 6c 6c 20 75 73 65 20 66 75 6e 63 74 69 6f 6e 73 20 66 72 6f 6d 20 69 74 20 69 66 20 61 76 | will.use.functions.from.it.if.av |
| bee0 | 61 69 6c 61 62 6c 65 2e 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 | ailable.</span></code></pre>.... |
| bf00 | 20 20 20 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 31 20 69 64 3d 22 56 61 6c 75 65 73 22 | .................<h1.id="Values" |
| bf20 | 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 56 61 6c 75 65 73 22 3e 56 61 6c 75 65 73 3c 2f 61 | ><a.href="#toc-Values">Values</a |
| bf40 | 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 56 61 6c 75 65 73 22 3e | >.<a.class="hdr".href="#Values"> |
| bf60 | c2 a7 3c 2f 61 3e 3c 2f 68 31 3e 0a 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c | ..</a></h1>........<p.class="fil |
| bf80 | 65 22 3e 76 61 6c 75 65 73 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 | e">values.zig</p><pre><code.clas |
| bfa0 | 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 | s="zig"><span.class="tok-comment |
| bfc0 | 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 61 72 65 20 | ">//.Top-level.declarations.are. |
| bfe0 | 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 70 61 6e 20 | order-independent:</span>.<span. |
| c000 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 70 72 69 6e | class="tok-kw">const</span>.prin |
| c020 | 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 6c 61 73 73 | t.=.std.debug.print;.<span.class |
| c040 | 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 |
| c060 | 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</ |
| c080 | 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 |
| c0a0 | 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 |
| c0c0 | 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 73 74 64 2e | ="tok-kw">const</span>.os.=.std. |
| c0e0 | 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 73 74 3c 2f | os;.<span.class="tok-kw">const</ |
| c100 | 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 65 72 74 3b | span>.assert.=.std.debug.assert; |
| c120 | 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 |
| c140 | 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> |
| c160 | 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 |
| c180 | 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< |
| c1a0 | 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f | /span>.{.....<span.class="tok-co |
| c1c0 | 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 20 20 3c 73 | mment">//.integers</span>.....<s |
| c1e0 | 70 61 6e 20 63 6c 61 73 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>. |
| c200 | 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 6f 6b 2d 74 | one_plus_one:.<span.class="tok-t |
| c220 | 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 |
| c240 | 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 63 6c 61 73 | ok-number">1</span>.+.<span.clas |
| c260 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 70 72 69 | s="tok-number">1</span>;.....pri |
| c280 | 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 |
| c2a0 | 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 6f 6e 65 5f | .+.1.=.{}\n"</span>,..{one_ |
| c2c0 | 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 3d 22 74 6f | plus_one});......<span.class="to |
| c2e0 | 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 20 20 20 20 | k-comment">//.floats</span>..... |
| c300 | 3c 73 70 61 6e 20 63 6c 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 |
| c320 | 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 73 73 3d 22 | >.seven_div_three:.<span.class=" |
| c340 | 74 6f 6b 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 | tok-type">f32</span>.=.<span.cla |
| c360 | 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 20 3c 73 70 | ss="tok-number">7.0</span>./.<sp |
| c380 | 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 70 61 6e 3e | an.class="tok-number">3.0</span> |
| c3a0 | 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 73 74 72 | ;.....print(<span.class="tok-str |
| c3c0 | 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 74 3b 3c 2f | ">"7.0./.3.0.=.{}\n"</ |
| c3e0 | 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 0a 20 20 20 | span>,..{seven_div_three});..... |
| c400 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 62 6f | .<span.class="tok-comment">//.bo |
| c420 | 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 20 63 6c 61 | olean</span>.....print(<span.cla |
| c440 | 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 7d 5c 6e 26 | ss="tok-str">"{}\n{}\n{}\n& |
| c460 | 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 | quot;</span>,..{.........<span.c |
| c480 | 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 3c 73 70 61 | lass="tok-null">true</span>.<spa |
| c4a0 | 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 3c 73 70 61 | n.class="tok-kw">and</span>.<spa |
| c4c0 | 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>, |
| c4e0 | 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 6c 6c 22 3e | .........<span.class="tok-null"> |
| c500 | 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 2d 6b 77 22 | true</span>.<span.class="tok-kw" |
| c520 | 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 6e 75 6c 6c | >or</span>.<span.class="tok-null |
| c540 | 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 61 6e 20 63 | ">false</span>,.........!<span.c |
| c560 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 | lass="tok-null">true</span>,.... |
| c580 | 20 7d 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 | .});......<span.class="tok-comme |
| c5a0 | 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 73 70 61 6e | nt">//.optional</span>.....<span |
| c5c0 | 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 74 69 6f | .class="tok-kw">var</span>.optio |
| c5e0 | 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 6f 6b 2d 6b | nal_value:.?[]<span.class="tok-k |
| c600 | 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 |
| c620 | 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | -type">u8</span>.=.<span.class=" |
| c640 | 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 73 73 65 72 | tok-null">null</span>;.....asser |
| c660 | 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 61 73 73 3d | t(optional_value.==.<span.class= |
| c680 | 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 72 | "tok-null">null</span>);......pr |
| c6a0 | 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">" |
| c6c0 | 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 65 3a 20 7b | \noptional.1\ntype:.{}\nvalue:.{ |
| c6e0 | 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 |
| c700 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 74 79 70 65 4e 61 6d 65 | an.class="tok-builtin">@typeName |
| c720 | 3c 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 |
| c740 | 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 6f 70 74 69 6f 6e 61 6c 5f 76 61 6c 75 65 29 | ">@TypeOf</span>(optional_value) |
| c760 | 29 2c 0a 20 20 20 20 20 20 20 20 6f 70 74 69 6f 6e 61 6c 5f 76 61 6c 75 65 2c 0a 20 20 20 20 7d | ),.........optional_value,.....} |
| c780 | 29 3b 0a 0a 20 20 20 20 6f 70 74 69 6f 6e 61 6c 5f 76 61 6c 75 65 20 3d 20 3c 73 70 61 6e 20 63 | );......optional_value.=.<span.c |
| c7a0 | 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 68 69 26 71 75 6f 74 3b 3c 2f 73 | lass="tok-str">"hi"</s |
| c7c0 | 70 61 6e 3e 3b 0a 20 20 20 20 61 73 73 65 72 74 28 6f 70 74 69 6f 6e 61 6c 5f 76 61 6c 75 65 20 | pan>;.....assert(optional_value. |
| c7e0 | 21 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f | !=.<span.class="tok-null">null</ |
| c800 | 73 70 61 6e 3e 29 3b 0a 0a 20 20 20 20 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | span>);......print(<span.class=" |
| c820 | 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 5c 6e 6f 70 74 69 6f 6e 61 6c 20 32 5c 6e 74 79 70 | tok-str">"\noptional.2\ntyp |
| c840 | 65 3a 20 7b 7d 5c 6e 76 61 6c 75 65 3a 20 7b 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c | e:.{}\nvalue:.{}\n"</span>, |
| c860 | 20 2e 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 | ..{.........<span.class="tok-bui |
| c880 | 6c 74 69 6e 22 3e 40 74 79 70 65 4e 61 6d 65 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 | ltin">@typeName</span>(<span.cla |
| c8a0 | 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 | ss="tok-builtin">@TypeOf</span>( |
| c8c0 | 6f 70 74 69 6f 6e 61 6c 5f 76 61 6c 75 65 29 29 2c 0a 20 20 20 20 20 20 20 20 6f 70 74 69 6f 6e | optional_value)),.........option |
| c8e0 | 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 |
| c900 | 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< |
| c920 | 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"> |
| c940 | 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 |
| c960 | 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 |
| c980 | 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 |
| c9a0 | 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 |
| c9c0 | 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 |
| c9e0 | 28 3c 73 70 61 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 |
| ca00 | 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:.{ |
| ca20 | 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 |
| ca40 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 74 79 70 65 4e 61 6d 65 | an.class="tok-builtin">@typeName |
| ca60 | 3c 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 |
| ca80 | 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 6e 75 6d 62 65 72 5f 6f 72 5f 65 72 72 6f 72 | ">@TypeOf</span>(number_or_error |
| caa0 | 29 29 2c 0a 20 20 20 20 20 20 20 20 6e 75 6d 62 65 72 5f 6f 72 5f 65 72 72 6f 72 2c 0a 20 20 20 | )),.........number_or_error,.... |
| cac0 | 20 7d 29 3b 0a 0a 20 20 20 20 6e 75 6d 62 65 72 5f 6f 72 5f 65 72 72 6f 72 20 3d 20 3c 73 70 61 | .});......number_or_error.=.<spa |
| cae0 | 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> |
| cb00 | 3b 0a 0a 20 20 20 20 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 | ;......print(<span.class="tok-st |
| cb20 | 72 22 3e 26 71 75 6f 74 3b 5c 6e 65 72 72 6f 72 20 75 6e 69 6f 6e 20 32 5c 6e 74 79 70 65 3a 20 | r">"\nerror.union.2\ntype:. |
| cb40 | 7b 7d 5c 6e 76 61 6c 75 65 3a 20 7b 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b | {}\nvalue:.{}\n"</span>,..{ |
| cb60 | 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 |
| cb80 | 6e 22 3e 40 74 79 70 65 4e 61 6d 65 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d | n">@typeName</span>(<span.class= |
| cba0 | 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 6e 75 6d | "tok-builtin">@TypeOf</span>(num |
| cbc0 | 62 65 72 5f 6f 72 5f 65 72 72 6f 72 29 29 2c 0a 20 20 20 20 20 20 20 20 6e 75 6d 62 65 72 5f 6f | ber_or_error)),.........number_o |
| cbe0 | 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 3e 3c | r_error,.....});.}</code></pre>< |
| cc00 | 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 62 75 | pre><code.class="shell">$.zig.bu |
| cc20 | 69 6c 64 2d 65 78 65 20 76 61 6c 75 65 73 2e 7a 69 67 0a 24 20 2e 2f 76 61 6c 75 65 73 0a 31 20 | ild-exe.values.zig.$../values.1. |
| cc40 | 2b 20 31 20 3d 20 32 0a 37 2e 30 20 2f 20 33 2e 30 20 3d 20 32 2e 33 33 33 33 33 33 32 35 65 2b | +.1.=.2.7.0./.3.0.=.2.33333325e+ |
| cc60 | 30 30 0a 66 61 6c 73 65 0a 74 72 75 65 0a 66 61 6c 73 65 0a 0a 6f 70 74 69 6f 6e 61 6c 20 31 0a | 00.false.true.false..optional.1. |
| cc80 | 74 79 70 65 3a 20 3f 5b 5d 63 6f 6e 73 74 20 75 38 0a 76 61 6c 75 65 3a 20 6e 75 6c 6c 0a 0a 6f | type:.?[]const.u8.value:.null..o |
| cca0 | 70 74 69 6f 6e 61 6c 20 32 0a 74 79 70 65 3a 20 3f 5b 5d 63 6f 6e 73 74 20 75 38 0a 76 61 6c 75 | ptional.2.type:.?[]const.u8.valu |
| ccc0 | 65 3a 20 68 69 0a 0a 65 72 72 6f 72 20 75 6e 69 6f 6e 20 31 0a 74 79 70 65 3a 20 61 6e 79 65 72 | e:.hi..error.union.1.type:.anyer |
| cce0 | 72 6f 72 21 69 33 32 0a 76 61 6c 75 65 3a 20 65 72 72 6f 72 2e 41 72 67 4e 6f 74 46 6f 75 6e 64 | ror!i32.value:.error.ArgNotFound |
| cd00 | 0a 0a 65 72 72 6f 72 20 75 6e 69 6f 6e 20 32 0a 74 79 70 65 3a 20 61 6e 79 65 72 72 6f 72 21 69 | ..error.union.2.type:.anyerror!i |
| cd20 | 33 32 0a 76 61 6c 75 65 3a 20 31 32 33 34 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 | 32.value:.1234.</code></pre>.... |
| cd40 | 20 20 20 20 3c 68 32 20 69 64 3d 22 50 72 69 6d 69 74 69 76 65 2d 54 79 70 65 73 22 3e 3c 61 20 | ....<h2.id="Primitive-Types"><a. |
| cd60 | 68 72 65 66 3d 22 23 74 6f 63 2d 50 72 69 6d 69 74 69 76 65 2d 54 79 70 65 73 22 3e 50 72 69 6d | href="#toc-Primitive-Types">Prim |
| cd80 | 69 74 69 76 65 20 54 79 70 65 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 | itive.Types</a>.<a.class="hdr".h |
| cda0 | 72 65 66 3d 22 23 50 72 69 6d 69 74 69 76 65 2d 54 79 70 65 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 | ref="#Primitive-Types">..</a></h |
| cdc0 | 32 3e 0a 0a 20 20 20 20 20 20 3c 64 69 76 20 63 6c 61 73 73 3d 22 74 61 62 6c 65 2d 77 72 61 70 | 2>........<div.class="table-wrap |
| cde0 | 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 72 3e | per">.......<table>.........<tr> |
| ce00 | 0a 20 20 20 20 20 20 20 20 20 20 3c 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 4e 61 6d 65 | ...........<th>.............Name |
| ce20 | 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 68 3e 0a | ...........</th>...........<th>. |
| ce40 | 20 20 20 20 20 20 20 20 20 20 20 20 43 20 45 71 75 69 76 61 6c 65 6e 74 0a 20 20 20 20 20 20 20 | ............C.Equivalent........ |
| ce60 | 20 20 20 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 68 3e 0a 20 20 20 20 20 20 20 20 | ...</th>...........<th>......... |
| ce80 | 20 20 20 20 44 65 73 63 72 69 70 74 69 6f 6e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 68 3e 0a | ....Description...........</th>. |
| cea0 | 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>...... |
| cec0 | 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 | .......<td><code.class="zig"><sp |
| cee0 | 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 3c 2f 63 | an.class="tok-type">i8</span></c |
| cf00 | 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 20 63 6c | ode></td>...........<td><code.cl |
| cf20 | 61 73 73 3d 22 63 22 3e 69 6e 74 38 5f 74 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 | ass="c">int8_t</code></td>...... |
| cf40 | 20 20 20 20 20 3c 74 64 3e 73 69 67 6e 65 64 20 38 2d 62 69 74 20 69 6e 74 65 67 65 72 3c 2f 74 | .....<td>signed.8-bit.integer</t |
| cf60 | 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>... |
| cf80 | 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e | ..........<td><code.class="zig"> |
| cfa0 | 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> |
| cfc0 | 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 | </code></td>...........<td><code |
| cfe0 | 20 63 6c 61 73 73 3d 22 63 22 3e 75 69 6e 74 38 5f 74 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 | .class="c">uint8_t</code></td>.. |
| d000 | 20 20 20 20 20 20 20 20 20 3c 74 64 3e 75 6e 73 69 67 6e 65 64 20 38 2d 62 69 74 20 69 6e 74 65 | .........<td>unsigned.8-bit.inte |
| d020 | 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>.........< |
| d040 | 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d | tr>.............<td><code.class= |
| d060 | 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 31 36 | "zig"><span.class="tok-type">i16 |
| d080 | 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 | </span></code></td>...........<t |
| d0a0 | 64 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 63 22 3e 69 6e 74 31 36 5f 74 3c 2f 63 6f 64 65 3e | d><code.class="c">int16_t</code> |
| d0c0 | 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 36 2d 62 69 | </td>...........<td>signed.16-bi |
| d0e0 | 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>.... |
| d100 | 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 20 | .....<tr>.............<td><code. |
| d120 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | class="zig"><span.class="tok-typ |
| d140 | 65 22 3e 75 31 36 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 | e">u16</span></code></td>....... |
| d160 | 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 31 36 5f 74 | ....<td><code.class="c">uint16_t |
| d180 | 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 |
| d1a0 | 6e 65 64 20 31 36 2d 62 69 74 20 69 6e 74 65 67 65 72 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 | ned.16-bit.integer</td>......... |
| d1c0 | 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>.............< |
| d1e0 | 74 64 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | td><code.class="zig"><span.class |
| d200 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 | ="tok-type">i32</span></code></t |
| d220 | 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 63 22 | d>...........<td><code.class="c" |
| d240 | 3e 69 6e 74 33 32 5f 74 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c | >int32_t</code></td>...........< |
| d260 | 74 64 3e 73 69 67 6e 65 64 20 33 32 2d 62 69 74 20 69 6e 74 65 67 65 72 3c 2f 74 64 3e 0a 20 20 | td>signed.32-bit.integer</td>... |
| d280 | 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>........ |
| d2a0 | 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e | .....<td><code.class="zig"><span |
| d2c0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 3c 2f 63 6f | .class="tok-type">u32</span></co |
| d2e0 | 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 20 63 6c 61 | de></td>...........<td><code.cla |
| d300 | 73 73 3d 22 63 22 3e 75 69 6e 74 33 32 5f 74 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 | ss="c">uint32_t</code></td>..... |
| d320 | 20 20 20 20 20 20 3c 74 64 3e 75 6e 73 69 67 6e 65 64 20 33 32 2d 62 69 74 20 69 6e 74 65 67 65 | ......<td>unsigned.32-bit.intege |
| d340 | 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 |
| d360 | 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a | >.............<td><code.class="z |
| d380 | 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 36 34 3c 2f | ig"><span.class="tok-type">i64</ |
| d3a0 | 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e | span></code></td>...........<td> |
| d3c0 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 63 22 3e 69 6e 74 36 34 5f 74 3c 2f 63 6f 64 65 3e 3c 2f | <code.class="c">int64_t</code></ |
| d3e0 | 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 73 69 67 6e 65 64 20 36 34 2d 62 69 74 20 | td>...........<td>signed.64-bit. |
| d400 | 69 6e 74 65 67 65 72 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 | integer</td>.........</tr>...... |
| d420 | 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 20 63 6c | ...<tr>.............<td><code.cl |
| d440 | 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 | ass="zig"><span.class="tok-type" |
| d460 | 3e 75 36 34 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 | >u64</span></code></td>......... |
| d480 | 20 20 3c 74 64 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 63 22 3e 75 69 6e 74 36 34 5f 74 3c 2f | ..<td><code.class="c">uint64_t</ |
| d4a0 | 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 75 6e 73 69 67 6e 65 | code></td>...........<td>unsigne |
| d4c0 | 64 20 36 34 2d 62 69 74 20 69 6e 74 65 67 65 72 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f | d.64-bit.integer</td>.........</ |
| d4e0 | 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 64 | tr>.........<tr>.............<td |
| d500 | 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ><code.class="zig"><span.class=" |
| d520 | 74 6f 6b 2d 74 79 70 65 22 3e 69 31 32 38 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 64 | tok-type">i128</span></code></td |
| d540 | 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"> |
| d560 | 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 20 20 3c | __int128</code></td>...........< |
| d580 | 74 64 3e 73 69 67 6e 65 64 20 31 32 38 2d 62 69 74 20 69 6e 74 65 67 65 72 3c 2f 74 64 3e 0a 20 | td>signed.128-bit.integer</td>.. |
| d5a0 | 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>....... |
| d5c0 | 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 | ......<td><code.class="zig"><spa |
| d5e0 | 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 6e 3e 3c 2f | n.class="tok-type">u128</span></ |
| d600 | 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 20 63 | code></td>...........<td><code.c |
| d620 | 6c 61 73 73 3d 22 63 22 3e 75 6e 73 69 67 6e 65 64 20 5f 5f 69 6e 74 31 32 38 3c 2f 63 6f 64 65 | lass="c">unsigned.__int128</code |
| d640 | 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 75 6e 73 69 67 6e 65 64 20 31 32 | ></td>...........<td>unsigned.12 |
| d660 | 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 3e | 8-bit.integer</td>.........</tr> |
| d680 | 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 | .........<tr>.............<td><c |
| d6a0 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ode.class="zig"><span.class="tok |
| d6c0 | 2d 74 79 70 65 22 3e 69 73 69 7a 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a | -type">isize</span></code></td>. |
| d6e0 | 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 63 22 3e 69 6e | ..........<td><code.class="c">in |
| d700 | 74 70 74 72 5f 74 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 | tptr_t</code></td>...........<td |
| d720 | 3e 73 69 67 6e 65 64 20 70 6f 69 6e 74 65 72 20 73 69 7a 65 64 20 69 6e 74 65 67 65 72 3c 2f 74 | >signed.pointer.sized.integer</t |
| d740 | 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>... |
| d760 | 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e | ..........<td><code.class="zig"> |
| d780 | 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 |
| d7a0 | 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 | an></code></td>...........<td><c |
| d7c0 | 6f 64 65 20 63 6c 61 73 73 3d 22 63 22 3e 75 69 6e 74 70 74 72 5f 74 3c 2f 63 6f 64 65 3e 3c 2f | ode.class="c">uintptr_t</code></ |
| d7e0 | 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 75 6e 73 69 67 6e 65 64 20 70 6f 69 6e 74 | td>...........<td>unsigned.point |
| d800 | 65 72 20 73 69 7a 65 64 20 69 6e 74 65 67 65 72 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f | er.sized.integer</td>.........</ |
| d820 | 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 20 3c 74 | tr>..........<tr>.............<t |
| d840 | 64 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | d><code.class="zig"><span.class= |
| d860 | 22 74 6f 6b 2d 74 79 70 65 22 3e 63 5f 73 68 6f 72 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e | "tok-type">c_short</span></code> |
| d880 | 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d | </td>...........<td><code.class= |
| d8a0 | 22 63 22 3e 73 68 6f 72 74 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 | "c">short</code></td>........... |
| d8c0 | 3c 74 64 3e 66 6f 72 20 41 42 49 20 63 6f 6d 70 61 74 69 62 69 6c 69 74 79 20 77 69 74 68 20 43 | <td>for.ABI.compatibility.with.C |
| d8e0 | 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> |
| d900 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | .............<td><code.class="zi |
| d920 | 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 63 5f 75 73 68 6f | g"><span.class="tok-type">c_usho |
| d940 | 72 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 | rt</span></code></td>........... |
| d960 | 3c 74 64 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 63 22 3e 75 6e 73 69 67 6e 65 64 20 73 68 6f | <td><code.class="c">unsigned.sho |
| d980 | 72 74 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 66 6f 72 | rt</code></td>...........<td>for |
| d9a0 | 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>.. |
| d9c0 | 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>....... |
| d9e0 | 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 | ......<td><code.class="zig"><spa |
| da00 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 63 5f 69 6e 74 3c 2f 73 70 61 6e 3e 3c | n.class="tok-type">c_int</span>< |
| da20 | 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 20 | /code></td>...........<td><code. |
| da40 | 63 6c 61 73 73 3d 22 63 22 3e 69 6e 74 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 | class="c">int</code></td>....... |
| da60 | 20 20 20 20 3c 74 64 3e 66 6f 72 20 41 42 49 20 63 6f 6d 70 61 74 69 62 69 6c 69 74 79 20 77 69 | ....<td>for.ABI.compatibility.wi |
| da80 | 74 68 20 43 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 | th.C</td>.........</tr>......... |
| daa0 | 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 20 63 6c 61 73 73 | <tr>.............<td><code.class |
| dac0 | 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 63 5f | ="zig"><span.class="tok-type">c_ |
| dae0 | 75 69 6e 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 | uint</span></code></td>......... |
| db00 | 20 20 3c 74 64 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 63 22 3e 75 6e 73 69 67 6e 65 64 20 69 | ..<td><code.class="c">unsigned.i |
| db20 | 6e 74 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 66 6f 72 | nt</code></td>...........<td>for |
| db40 | 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>.. |
| db60 | 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>....... |
| db80 | 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 | ......<td><code.class="zig"><spa |
| dba0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 63 5f 6c 6f 6e 67 3c 2f 73 70 61 6e 3e | n.class="tok-type">c_long</span> |
| dbc0 | 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 | </code></td>...........<td><code |
| dbe0 | 20 63 6c 61 73 73 3d 22 63 22 3e 6c 6f 6e 67 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 | .class="c">long</code></td>..... |
| dc00 | 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. |
| dc20 | 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>....... |
| dc40 | 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 20 63 6c 61 | ..<tr>.............<td><code.cla |
| dc60 | 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | ss="zig"><span.class="tok-type"> |
| dc80 | 63 5f 75 6c 6f 6e 67 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 | c_ulong</span></code></td>...... |
| dca0 | 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 65 | .....<td><code.class="c">unsigne |
| dcc0 | 64 20 6c 6f 6e 67 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 | d.long</code></td>...........<td |
| dce0 | 3e 66 6f 72 20 41 42 49 20 63 6f 6d 70 61 74 69 62 69 6c 69 74 79 20 77 69 74 68 20 43 3c 2f 74 | >for.ABI.compatibility.with.C</t |
| dd00 | 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>... |
| dd20 | 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e | ..........<td><code.class="zig"> |
| dd40 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 63 5f 6c 6f 6e 67 6c 6f 6e | <span.class="tok-type">c_longlon |
| dd60 | 67 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c | g</span></code></td>...........< |
| dd80 | 74 64 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 63 22 3e 6c 6f 6e 67 20 6c 6f 6e 67 3c 2f 63 6f | td><code.class="c">long.long</co |
| dda0 | 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 |
| ddc0 | 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>........ |
| dde0 | 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>............. |
| de00 | 3c 74 64 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 | <td><code.class="zig"><span.clas |
| de20 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 63 5f 75 6c 6f 6e 67 6c 6f 6e 67 3c 2f 73 70 61 6e 3e 3c | s="tok-type">c_ulonglong</span>< |
| de40 | 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 20 | /code></td>...........<td><code. |
| de60 | 63 6c 61 73 73 3d 22 63 22 3e 75 6e 73 69 67 6e 65 64 20 6c 6f 6e 67 20 6c 6f 6e 67 3c 2f 63 6f | class="c">unsigned.long.long</co |
| de80 | 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 |
| dea0 | 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>........ |
| dec0 | 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>............. |
| dee0 | 3c 74 64 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 | <td><code.class="zig"><span.clas |
| df00 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 63 5f 6c 6f 6e 67 64 6f 75 62 6c 65 3c 2f 73 70 61 6e 3e | s="tok-type">c_longdouble</span> |
| df20 | 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 | </code></td>...........<td><code |
| df40 | 20 63 6c 61 73 73 3d 22 63 22 3e 6c 6f 6e 67 20 64 6f 75 62 6c 65 3c 2f 63 6f 64 65 3e 3c 2f 74 | .class="c">long.double</code></t |
| df60 | 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 66 6f 72 20 41 42 49 20 63 6f 6d 70 61 74 69 | d>...........<td>for.ABI.compati |
| df80 | 62 69 6c 69 74 79 20 77 69 74 68 20 43 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e | bility.with.C</td>.........</tr> |
| dfa0 | 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 | .........<tr>.............<td><c |
| dfc0 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ode.class="zig"><span.class="tok |
| dfe0 | 2d 74 79 70 65 22 3e 63 5f 76 6f 69 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e | -type">c_void</span></code></td> |
| e000 | 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 76 | ...........<td><code.class="c">v |
| e020 | 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 66 6f | oid</code></td>...........<td>fo |
| e040 | 72 20 41 42 49 20 63 6f 6d 70 61 74 69 62 69 6c 69 74 79 20 77 69 74 68 20 43 3c 2f 74 64 3e 0a | r.ABI.compatibility.with.C</td>. |
| e060 | 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 | ........</tr>..........<tr>..... |
| e080 | 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 | ........<td><code.class="zig"><s |
| e0a0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 31 36 3c 2f 73 70 61 6e 3e 3c | pan.class="tok-type">f16</span>< |
| e0c0 | 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 20 | /code></td>...........<td><code. |
| e0e0 | 63 6c 61 73 73 3d 22 63 22 3e 5f 46 6c 6f 61 74 31 36 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 | class="c">_Float16</code></td>.. |
| e100 | 20 20 20 20 20 20 20 20 20 3c 74 64 3e 31 36 2d 62 69 74 20 66 6c 6f 61 74 69 6e 67 20 70 6f 69 | .........<td>16-bit.floating.poi |
| e120 | 6e 74 20 28 31 30 2d 62 69 74 20 6d 61 6e 74 69 73 73 61 29 20 49 45 45 45 2d 37 35 34 2d 32 30 | nt.(10-bit.mantissa).IEEE-754-20 |
| e140 | 30 38 20 62 69 6e 61 72 79 31 36 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 | 08.binary16</td>.........</tr>.. |
| e160 | 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 | .......<tr>.............<td><cod |
| e180 | 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | e.class="zig"><span.class="tok-t |
| e1a0 | 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 | ype">f32</span></code></td>..... |
| e1c0 | 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 63 22 3e 66 6c 6f 61 74 3c | ......<td><code.class="c">float< |
| e1e0 | 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 33 32 2d 62 69 74 | /code></td>...........<td>32-bit |
| e200 | 20 66 6c 6f 61 74 69 6e 67 20 70 6f 69 6e 74 20 28 32 33 2d 62 69 74 20 6d 61 6e 74 69 73 73 61 | .floating.point.(23-bit.mantissa |
| e220 | 29 20 49 45 45 45 2d 37 35 34 2d 32 30 30 38 20 62 69 6e 61 72 79 33 32 3c 2f 74 64 3e 0a 20 20 | ).IEEE-754-2008.binary32</td>... |
| e240 | 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>........ |
| e260 | 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e | .....<td><code.class="zig"><span |
| e280 | 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 3c 2f 63 6f | .class="tok-type">f64</span></co |
| e2a0 | 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 20 63 6c 61 | de></td>...........<td><code.cla |
| e2c0 | 73 73 3d 22 63 22 3e 64 6f 75 62 6c 65 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 | ss="c">double</code></td>....... |
| e2e0 | 20 20 20 20 3c 74 64 3e 36 34 2d 62 69 74 20 66 6c 6f 61 74 69 6e 67 20 70 6f 69 6e 74 20 28 35 | ....<td>64-bit.floating.point.(5 |
| e300 | 32 2d 62 69 74 20 6d 61 6e 74 69 73 73 61 29 20 49 45 45 45 2d 37 35 34 2d 32 30 30 38 20 62 69 | 2-bit.mantissa).IEEE-754-2008.bi |
| e320 | 6e 61 72 79 36 34 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 | nary64</td>.........</tr>....... |
| e340 | 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 20 63 6c 61 | ..<tr>.............<td><code.cla |
| e360 | 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | ss="zig"><span.class="tok-type"> |
| e380 | 66 31 32 38 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 | f128</span></code></td>......... |
| e3a0 | 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 63 22 3e 5f 46 6c 6f 61 74 31 32 | ....<td><code.class="c">_Float12 |
| e3c0 | 38 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 31 32 38 2d | 8</code></td>...........<td>128- |
| e3e0 | 62 69 74 20 66 6c 6f 61 74 69 6e 67 20 70 6f 69 6e 74 20 28 31 31 32 2d 62 69 74 20 6d 61 6e 74 | bit.floating.point.(112-bit.mant |
| e400 | 69 73 73 61 29 20 49 45 45 45 2d 37 35 34 2d 32 30 30 38 20 62 69 6e 61 72 79 31 32 38 3c 2f 74 | issa).IEEE-754-2008.binary128</t |
| e420 | 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>... |
| e440 | 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e | ..........<td><code.class="zig"> |
| e460 | 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 |
| e480 | 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f | n></code></td>...........<td><co |
| e4a0 | 64 65 20 63 6c 61 73 73 3d 22 63 22 3e 62 6f 6f 6c 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 | de.class="c">bool</code></td>... |
| e4c0 | 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 | ........<td><code.class="zig"><s |
| e4e0 | 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> |
| e500 | 3c 2f 63 6f 64 65 3e 20 6f 72 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 | </code>.or.<code.class="zig"><sp |
| e520 | 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> |
| e540 | 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 20 | </code></td>.........</tr>...... |
| e560 | 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 20 63 6c | ...<tr>.............<td><code.cl |
| e580 | 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 | ass="zig"><span.class="tok-type" |
| e5a0 | 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 | >void</span></code></td>........ |
| e5c0 | 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 |
| e5e0 | 3e 30 20 62 69 74 20 74 79 70 65 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 | >0.bit.type</td>.........</tr>.. |
| e600 | 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 | .......<tr>.............<td><cod |
| e620 | 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | e.class="zig"><span.class="tok-t |
| e640 | 79 70 65 22 3e 6e 6f 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e | ype">noreturn</span></code></td> |
| e660 | 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 28 6e 6f 6e 65 29 3c 2f 74 64 3e 0a 20 20 20 20 20 | ...........<td>(none)</td>...... |
| e680 | 20 20 20 20 20 3c 74 64 3e 74 68 65 20 74 79 70 65 20 6f 66 20 3c 63 6f 64 65 20 63 6c 61 73 73 | .....<td>the.type.of.<code.class |
| e6a0 | 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 62 72 65 61 | ="zig"><span.class="tok-kw">brea |
| e6c0 | 6b 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | k</span></code>,.<code.class="zi |
| e6e0 | 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 74 69 6e 75 65 | g"><span.class="tok-kw">continue |
| e700 | 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | </span></code>,.<code.class="zig |
| e720 | 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 | "><span.class="tok-kw">return</s |
| e740 | 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c | pan></code>,.<code.class="zig">< |
| e760 | 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< |
| e780 | 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 61 6e 64 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | /span></code>,.and.<code.class=" |
| e7a0 | 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 77 68 69 6c 65 3c | zig"><span.class="tok-kw">while< |
| e7c0 | 2f 73 70 61 6e 3e 20 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 | /span>.(<span.class="tok-null">t |
| e7e0 | 72 75 65 3c 2f 73 70 61 6e 3e 29 20 7b 7d 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 | rue</span>).{}</code></td>...... |
| e800 | 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 | ...</tr>.........<tr>........... |
| e820 | 20 20 3c 74 64 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c | ..<td><code.class="zig"><span.cl |
| e840 | 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 |
| e860 | 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 28 6e 6f 6e 65 29 3c 2f 74 64 3e | ></td>...........<td>(none)</td> |
| e880 | 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 74 68 65 20 74 79 70 65 20 6f 66 20 74 79 70 65 73 | ...........<td>the.type.of.types |
| e8a0 | 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> |
| e8c0 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | .............<td><code.class="zi |
| e8e0 | 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 61 6e 79 65 72 72 | g"><span.class="tok-type">anyerr |
| e900 | 6f 72 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 | or</span></code></td>........... |
| e920 | 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 61 6e | <td>(none)</td>...........<td>an |
| e940 | 20 65 72 72 6f 72 20 63 6f 64 65 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 | .error.code</td>.........</tr>.. |
| e960 | 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 | .......<tr>.............<td><cod |
| e980 | 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | e.class="zig"><span.class="tok-t |
| e9a0 | 79 70 65 22 3e 63 6f 6d 70 74 69 6d 65 5f 69 6e 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c | ype">comptime_int</span></code>< |
| e9c0 | 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 28 6e 6f 6e 65 29 3c 2f 74 64 3e 0a 20 | /td>...........<td>(none)</td>.. |
| e9e0 | 20 20 20 20 20 20 20 20 20 3c 74 64 3e 4f 6e 6c 79 20 61 6c 6c 6f 77 65 64 20 66 6f 72 20 3c 61 | .........<td>Only.allowed.for.<a |
| ea00 | 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 6b | .href="#comptime">comptime</a>-k |
| ea20 | 6e 6f 77 6e 20 76 61 6c 75 65 73 2e 20 54 68 65 20 74 79 70 65 20 6f 66 20 69 6e 74 65 67 65 72 | nown.values..The.type.of.integer |
| ea40 | 20 6c 69 74 65 72 61 6c 73 2e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 | .literals.</td>.........</tr>... |
| ea60 | 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 | ......<tr>.............<td><code |
| ea80 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | .class="zig"><span.class="tok-ty |
| eaa0 | 70 65 22 3e 63 6f 6d 70 74 69 6d 65 5f 66 6c 6f 61 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e | pe">comptime_float</span></code> |
| eac0 | 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 28 6e 6f 6e 65 29 3c 2f 74 64 3e 0a | </td>...........<td>(none)</td>. |
| eae0 | 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 4f 6e 6c 79 20 61 6c 6c 6f 77 65 64 20 66 6f 72 20 3c | ..........<td>Only.allowed.for.< |
| eb00 | 61 20 68 72 65 66 3d 22 23 63 6f 6d 70 74 69 6d 65 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 61 3e 2d | a.href="#comptime">comptime</a>- |
| eb20 | 6b 6e 6f 77 6e 20 76 61 6c 75 65 73 2e 20 54 68 65 20 74 79 70 65 20 6f 66 20 66 6c 6f 61 74 20 | known.values..The.type.of.float. |
| eb40 | 6c 69 74 65 72 61 6c 73 2e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 | literals.</td>.........</tr>.... |
| eb60 | 20 20 20 3c 2f 74 61 62 6c 65 3e 0a 20 20 20 20 20 20 3c 2f 64 69 76 3e 0a 20 20 20 20 20 20 3c | ...</table>.......</div>.......< |
| eb80 | 70 3e 0a 20 20 20 20 20 20 49 6e 20 61 64 64 69 74 69 6f 6e 20 74 6f 20 74 68 65 20 69 6e 74 65 | p>.......In.addition.to.the.inte |
| eba0 | 67 65 72 20 74 79 70 65 73 20 61 62 6f 76 65 2c 20 61 72 62 69 74 72 61 72 79 20 62 69 74 2d 77 | ger.types.above,.arbitrary.bit-w |
| ebc0 | 69 64 74 68 20 69 6e 74 65 67 65 72 73 20 63 61 6e 20 62 65 20 72 65 66 65 72 65 6e 63 65 64 20 | idth.integers.can.be.referenced. |
| ebe0 | 62 79 20 75 73 69 6e 67 0a 20 20 20 20 20 20 61 6e 20 69 64 65 6e 74 69 66 69 65 72 20 6f 66 20 | by.using.......an.identifier.of. |
| ec00 | 3c 63 6f 64 65 3e 69 3c 2f 63 6f 64 65 3e 20 6f 72 20 3c 63 6f 64 65 3e 75 3c 2f 63 6f 64 65 3e | <code>i</code>.or.<code>u</code> |
| ec20 | 20 66 6f 6c 6c 6f 77 65 64 20 62 79 20 64 69 67 69 74 73 2e 20 46 6f 72 20 65 78 61 6d 70 6c 65 | .followed.by.digits..For.example |
| ec40 | 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 20 63 6c 61 | ,.the.identifier.......<code.cla |
| ec60 | 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | ss="zig"><span.class="tok-type"> |
| ec80 | 69 37 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 72 65 66 65 72 73 20 74 6f 20 61 20 73 69 67 | i7</span></code>.refers.to.a.sig |
| eca0 | 6e 65 64 20 37 2d 62 69 74 20 69 6e 74 65 67 65 72 2e 20 54 68 65 20 6d 61 78 69 6d 75 6d 20 61 | ned.7-bit.integer..The.maximum.a |
| ecc0 | 6c 6c 6f 77 65 64 20 62 69 74 2d 77 69 64 74 68 20 6f 66 20 61 6e 0a 20 20 20 20 20 20 69 6e 74 | llowed.bit-width.of.an.......int |
| ece0 | 65 67 65 72 20 74 79 70 65 20 69 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c | eger.type.is.<code.class="zig">< |
| ed00 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 36 35 35 33 35 3c 2f 73 | span.class="tok-number">65535</s |
| ed20 | 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 |
| ed40 | 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=" |
| ed60 | 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 3c 6c 69 | #Integers">Integers</a></li>.<li |
| ed80 | 3e 3c 61 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 73 22 3e 46 6c 6f 61 74 73 3c 2f 61 3e 3c 2f 6c | ><a.href="#Floats">Floats</a></l |
| eda0 | 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>< |
| edc0 | 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 45 72 72 6f 72 73 22 3e 45 72 72 6f 72 | /li>.<li><a.href="#Errors">Error |
| ede0 | 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 54 79 70 65 22 3e 40 | s</a></li>.<li><a.href="#Type">@ |
| ee00 | 54 79 70 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 | Type</a></li>.</ul>............. |
| ee20 | 20 20 3c 68 32 20 69 64 3d 22 50 72 69 6d 69 74 69 76 65 2d 56 61 6c 75 65 73 22 3e 3c 61 20 68 | ..<h2.id="Primitive-Values"><a.h |
| ee40 | 72 65 66 3d 22 23 74 6f 63 2d 50 72 69 6d 69 74 69 76 65 2d 56 61 6c 75 65 73 22 3e 50 72 69 6d | ref="#toc-Primitive-Values">Prim |
| ee60 | 69 74 69 76 65 20 56 61 6c 75 65 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 | itive.Values</a>.<a.class="hdr". |
| ee80 | 68 72 65 66 3d 22 23 50 72 69 6d 69 74 69 76 65 2d 56 61 6c 75 65 73 22 3e c2 a7 3c 2f 61 3e 3c | href="#Primitive-Values">..</a>< |
| eea0 | 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 64 69 76 20 63 6c 61 73 73 3d 22 74 61 62 6c 65 2d 77 72 | /h2>........<div.class="table-wr |
| eec0 | 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 |
| eee0 | 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 4e 61 | r>...........<th>.............Na |
| ef00 | 6d 65 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 68 | me...........</th>...........<th |
| ef20 | 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 44 65 73 63 72 69 70 74 69 6f 6e 0a 20 20 20 20 20 20 | >.............Description....... |
| ef40 | 20 20 20 20 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 | ....</th>.........</tr>......... |
| ef60 | 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 20 63 6c 61 73 73 | <tr>.............<td><code.class |
| ef80 | 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 | ="zig"><span.class="tok-null">tr |
| efa0 | 75 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 61 6e 64 20 3c 63 6f 64 65 20 63 6c 61 73 73 | ue</span></code>.and.<code.class |
| efc0 | 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 | ="zig"><span.class="tok-null">fa |
| efe0 | 6c 73 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 | lse</span></code></td>.......... |
| f000 | 20 20 20 3c 74 64 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 | ...<td><code.class="zig"><span.c |
| f020 | 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 |
| f040 | 65 3e 20 76 61 6c 75 65 73 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 | e>.values</td>.........</tr>.... |
| f060 | 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 20 | .....<tr>.............<td><code. |
| f080 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c | class="zig"><span.class="tok-nul |
| f0a0 | 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 | l">null</span></code></td>...... |
| f0c0 | 20 20 20 20 20 20 20 3c 74 64 3e 75 73 65 64 20 74 6f 20 73 65 74 20 61 6e 20 6f 70 74 69 6f 6e | .......<td>used.to.set.an.option |
| f0e0 | 61 6c 20 74 79 70 65 20 74 6f 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 | al.type.to.<code.class="zig"><sp |
| f100 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 3c | an.class="tok-null">null</span>< |
| f120 | 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 20 20 | /code></td>.........</tr>....... |
| f140 | 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 20 63 6c 61 | ..<tr>.............<td><code.cla |
| f160 | 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e | ss="zig"><span.class="tok-null"> |
| f180 | 75 6e 64 65 66 69 6e 65 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 | undefined</span></code></td>.... |
| f1a0 | 20 20 20 20 20 20 20 3c 74 64 3e 75 73 65 64 20 74 6f 20 6c 65 61 76 65 20 61 20 76 61 6c 75 65 | .......<td>used.to.leave.a.value |
| f1c0 | 20 75 6e 73 70 65 63 69 66 69 65 64 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a | .unspecified</td>.........</tr>. |
| f1e0 | 20 20 20 20 20 20 3c 2f 74 61 62 6c 65 3e 0a 20 20 20 20 20 20 3c 2f 64 69 76 3e 0a 20 20 20 20 | ......</table>.......</div>..... |
| f200 | 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 |
| f220 | 65 66 3d 22 23 4f 70 74 69 6f 6e 61 6c 73 22 3e 4f 70 74 69 6f 6e 61 6c 73 3c 2f 61 3e 3c 2f 6c | ef="#Optionals">Optionals</a></l |
| f240 | 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 75 6e 64 65 66 69 6e 65 64 22 3e 75 6e 64 65 | i>.<li><a.href="#undefined">unde |
| f260 | 66 69 6e 65 64 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 | fined</a></li>.</ul>............ |
| f280 | 20 20 20 3c 68 32 20 69 64 3d 22 53 74 72 69 6e 67 2d 4c 69 74 65 72 61 6c 73 2d 61 6e 64 2d 43 | ...<h2.id="String-Literals-and-C |
| f2a0 | 68 61 72 61 63 74 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 | haracter-Literals"><a.href="#toc |
| f2c0 | 2d 53 74 72 69 6e 67 2d 4c 69 74 65 72 61 6c 73 2d 61 6e 64 2d 43 68 61 72 61 63 74 65 72 2d 4c | -String-Literals-and-Character-L |
| f2e0 | 69 74 65 72 61 6c 73 22 3e 53 74 72 69 6e 67 20 4c 69 74 65 72 61 6c 73 20 61 6e 64 20 43 68 61 | iterals">String.Literals.and.Cha |
| f300 | 72 61 63 74 65 72 20 4c 69 74 65 72 61 6c 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 | racter.Literals</a>.<a.class="hd |
| f320 | 72 22 20 68 72 65 66 3d 22 23 53 74 72 69 6e 67 2d 4c 69 74 65 72 61 6c 73 2d 61 6e 64 2d 43 68 | r".href="#String-Literals-and-Ch |
| f340 | 61 72 61 63 74 65 72 2d 4c 69 74 65 72 61 6c 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 | aracter-Literals">..</a></h2>... |
| f360 | 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 20 61 | .....<p>.......String.literals.a |
| f380 | 72 65 20 73 69 6e 67 6c 65 2d 69 74 65 6d 20 63 6f 6e 73 74 61 6e 74 20 3c 61 20 68 72 65 66 3d | re.single-item.constant.<a.href= |
| f3a0 | 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 6c 6c | "#Pointers">Pointers</a>.to.null |
| f3c0 | 2d 74 65 72 6d 69 6e 61 74 65 64 20 55 54 46 2d 38 20 65 6e 63 6f 64 65 64 20 62 79 74 65 20 61 | -terminated.UTF-8.encoded.byte.a |
| f3e0 | 72 72 61 79 73 2e 0a 20 20 20 20 20 20 54 68 65 20 74 79 70 65 20 6f 66 20 73 74 72 69 6e 67 20 | rrays........The.type.of.string. |
| f400 | 6c 69 74 65 72 61 6c 73 20 65 6e 63 6f 64 65 73 20 62 6f 74 68 20 74 68 65 20 6c 65 6e 67 74 68 | literals.encodes.both.the.length |
| f420 | 2c 20 61 6e 64 20 74 68 65 20 66 61 63 74 20 74 68 61 74 20 74 68 65 79 20 61 72 65 20 6e 75 6c | ,.and.the.fact.that.they.are.nul |
| f440 | 6c 2d 74 65 72 6d 69 6e 61 74 65 64 2c 0a 20 20 20 20 20 20 61 6e 64 20 74 68 75 73 20 74 68 65 | l-terminated,.......and.thus.the |
| f460 | 79 20 63 61 6e 20 62 65 20 3c 61 20 68 72 65 66 3d 22 23 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e | y.can.be.<a.href="#Type-Coercion |
| f480 | 22 3e 63 6f 65 72 63 65 64 3c 2f 61 3e 20 74 6f 20 62 6f 74 68 20 3c 61 20 68 72 65 66 3d 22 23 | ">coerced</a>.to.both.<a.href="# |
| f4a0 | 53 6c 69 63 65 73 22 3e 53 6c 69 63 65 73 3c 2f 61 3e 20 61 6e 64 0a 20 20 20 20 20 20 3c 61 20 | Slices">Slices</a>.and.......<a. |
| f4c0 | 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 |
| f4e0 | 65 72 73 22 3e 4e 75 6c 6c 2d 54 65 72 6d 69 6e 61 74 65 64 20 50 6f 69 6e 74 65 72 73 3c 2f 61 | ers">Null-Terminated.Pointers</a |
| f500 | 3e 2e 0a 20 20 20 20 20 20 44 65 72 65 66 65 72 65 6e 63 69 6e 67 20 73 74 72 69 6e 67 20 6c 69 | >........Dereferencing.string.li |
| f520 | 74 65 72 61 6c 73 20 63 6f 6e 76 65 72 74 73 20 74 68 65 6d 20 74 6f 20 3c 61 20 68 72 65 66 3d | terals.converts.them.to.<a.href= |
| f540 | 22 23 41 72 72 61 79 73 22 3e 41 72 72 61 79 73 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e | "#Arrays">Arrays</a>........</p> |
| f560 | 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 43 68 61 72 61 63 74 65 72 20 6c 69 74 65 72 | .......<p>.......Character.liter |
| f580 | 61 6c 73 20 68 61 76 65 20 74 79 70 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e | als.have.type.<code.class="zig"> |
| f5a0 | 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_ |
| f5c0 | 69 6e 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 74 68 65 20 73 61 6d 65 20 61 73 0a 20 | int</span></code>,.the.same.as.. |
| f5e0 | 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 49 6e 74 65 67 65 72 2d 4c 69 74 65 72 61 6c 73 22 | .....<a.href="#Integer-Literals" |
| f600 | 3e 49 6e 74 65 67 65 72 20 4c 69 74 65 72 61 6c 73 3c 2f 61 3e 2e 20 41 6c 6c 20 3c 61 20 68 72 | >Integer.Literals</a>..All.<a.hr |
| f620 | 65 66 3d 22 23 45 73 63 61 70 65 2d 53 65 71 75 65 6e 63 65 73 22 3e 45 73 63 61 70 65 20 53 65 | ef="#Escape-Sequences">Escape.Se |
| f640 | 71 75 65 6e 63 65 73 3c 2f 61 3e 20 61 72 65 20 76 61 6c 69 64 20 69 6e 20 62 6f 74 68 20 73 74 | quences</a>.are.valid.in.both.st |
| f660 | 72 69 6e 67 20 6c 69 74 65 72 61 6c 73 0a 20 20 20 20 20 20 61 6e 64 20 63 68 61 72 61 63 74 65 | ring.literals.......and.characte |
| f680 | 72 20 6c 69 74 65 72 61 6c 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 | r.literals........</p>.......<p. |
| f6a0 | 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 | class="file">test.zig</p><pre><c |
| f6c0 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ode.class="zig"><span.class="tok |
| f6e0 | 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 |
| f700 | 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 |
| f720 | 61 6e 3e 28 3c 73 70 61 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">" |
| f740 | 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 |
| f760 | 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 |
| f780 | 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 74 | an>.mem.=.<span.class="tok-built |
| f7a0 | 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=" |
| f7c0 | 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>) |
| f7e0 | 2e 6d 65 6d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 | .mem;..<span.class="tok-kw">test |
| f800 | 3c 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 |
| f820 | 75 6f 74 3b 73 74 72 69 6e 67 20 6c 69 74 65 72 61 6c 73 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e | uot;string.literals"</span> |
| f840 | 20 7b 0a 20 20 20 20 3c 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 |
| f860 | 74 3c 2f 73 70 61 6e 3e 20 62 79 74 65 73 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | t</span>.bytes.=.<span.class="to |
| f880 | 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 68 65 6c 6c 6f 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 3b | k-str">"hello"</span>; |
| f8a0 | 0a 20 20 20 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 | .....expect(<span.class="tok-bui |
| f8c0 | 6c 74 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 20 3d 3d 20 2a | ltin">@TypeOf</span>(bytes).==.* |
| f8e0 | 3c 73 70 61 6e 20 63 6c 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 |
| f900 | 3e 20 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 | >.[<span.class="tok-number">5</s |
| f920 | 70 61 6e 3e 3a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c | pan>:<span.class="tok-number">0< |
| f940 | 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 |
| f960 | 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 65 78 70 65 63 74 28 62 79 74 65 73 2e 6c 65 6e 20 3d | </span>);.....expect(bytes.len.= |
| f980 | 3d 20 3c 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 |
| f9a0 | 61 6e 3e 29 3b 0a 20 20 20 20 65 78 70 65 63 74 28 62 79 74 65 73 5b 3c 73 70 61 6e 20 63 6c 61 | an>);.....expect(bytes[<span.cla |
| f9c0 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 5d 20 3d 3d 20 3c 73 70 | ss="tok-number">1</span>].==.<sp |
| f9e0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 65 27 3c 2f 73 70 61 6e 3e 29 3b 0a | an.class="tok-str">'e'</span>);. |
| fa00 | 20 20 20 20 65 78 70 65 63 74 28 62 79 74 65 73 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ....expect(bytes[<span.class="to |
| fa20 | 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 5d 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 | k-number">5</span>].==.<span.cla |
| fa40 | 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 65 | ss="tok-number">0</span>);.....e |
| fa60 | 78 70 65 63 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 65 27 3c | xpect(<span.class="tok-str">'e'< |
| fa80 | 2f 73 70 61 6e 3e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e | /span>.==.<span.class="tok-str"> |
| faa0 | 27 5c 78 36 35 27 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 65 78 70 65 63 74 28 3c 73 70 61 6e | '\x65'</span>);.....expect(<span |
| fac0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 5c 75 7b 31 66 34 61 39 7d 27 3c 2f 73 70 | .class="tok-str">'\u{1f4a9}'</sp |
| fae0 | 61 6e 3e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e | an>.==.<span.class="tok-number"> |
| fb00 | 31 32 38 31 36 39 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 65 78 70 65 63 74 28 3c 73 70 61 6e | 128169</span>);.....expect(<span |
| fb20 | 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 20 3d | .class="tok-str">'....'</span>.= |
| fb40 | 3d 20 3c 73 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 31 37 | =.<span.class="tok-number">12817 |
| fb60 | 35 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 65 78 70 65 63 74 28 6d 65 6d 2e 65 71 6c 28 3c 73 | 5</span>);.....expect(mem.eql(<s |
| fb80 | 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>,. |
| fba0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 68 65 6c 6c | <span.class="tok-str">"hell |
| fbc0 | 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 |
| fbe0 | 2d 73 74 72 22 3e 26 71 75 6f 74 3b 68 5c 78 36 35 6c 6c 6f 26 71 75 6f 74 3b 3c 2f 73 70 61 6e | -str">"h\x65llo"</span |
| fc00 | 3e 29 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c | >));.}</code></pre><pre><code.cl |
| fc20 | 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a | ass="shell">$.zig.test.test.zig. |
| fc40 | 31 2f 31 20 74 65 73 74 20 26 71 75 6f 74 3b 73 74 72 69 6e 67 20 6c 69 74 65 72 61 6c 73 26 71 | 1/1.test."string.literals&q |
| fc60 | 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c | uot;....OK.All.1.tests.passed..< |
| fc80 | 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a | /code></pre>........<p>See.also: |
| fca0 | 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 22 3e 41 | </p><ul>.<li><a.href="#Arrays">A |
| fcc0 | 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 5a 69 67 | rrays</a></li>.<li><a.href="#Zig |
| fce0 | 2d 54 65 73 74 22 3e 5a 69 67 20 54 65 73 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 | -Test">Zig.Test</a></li>.<li><a. |
| fd00 | 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 |
| fd20 | 6e 63 6f 64 69 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 3c 68 | ncoding</a></li>.</ul>........<h |
| fd40 | 33 20 69 64 3d 22 45 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 | 3.id="Escape-Sequences"><a.href= |
| fd60 | 22 23 74 6f 63 2d 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 | "#toc-Escape-Sequences">Escape.S |
| fd80 | 65 71 75 65 6e 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 | equences</a>.<a.class="hdr".href |
| fda0 | 3d 22 23 45 73 63 61 70 65 2d 53 65 71 75 65 6e 63 65 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e | ="#Escape-Sequences">..</a></h3> |
| fdc0 | 0a 0a 20 20 20 20 20 20 3c 64 69 76 20 63 6c 61 73 73 3d 22 74 61 62 6c 65 2d 77 72 61 70 70 65 | ........<div.class="table-wrappe |
| fde0 | 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 72 3e 0a 20 | r">.......<table>.........<tr>.. |
| fe00 | 20 20 20 20 20 20 20 20 20 3c 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 45 73 63 61 70 65 | .........<th>.............Escape |
| fe20 | 20 53 65 71 75 65 6e 63 65 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 68 3e 0a 20 20 20 20 20 20 | .Sequence...........</th>....... |
| fe40 | 20 20 20 20 3c 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 4e 61 6d 65 0a 20 20 20 20 20 20 | ....<th>.............Name....... |
| fe60 | 20 20 20 20 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 | ....</th>.........</tr>......... |
| fe80 | 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 3e 5c 6e 3c 2f 63 | <tr>.............<td><code>\n</c |
| fea0 | 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 4e 65 77 6c 69 6e 65 3c | ode></td>...........<td>Newline< |
| fec0 | 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>. |
| fee0 | 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 3e 5c 72 3c 2f 63 6f 64 65 3e 3c | ............<td><code>\r</code>< |
| ff00 | 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 43 61 72 72 69 61 67 65 20 52 65 74 75 | /td>...........<td>Carriage.Retu |
| ff20 | 72 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 74 | rn</td>.........</tr>.........<t |
| ff40 | 72 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 3e 5c 74 3c 2f 63 6f 64 | r>.............<td><code>\t</cod |
| ff60 | 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 54 61 62 3c 2f 74 64 3e 0a 20 | e></td>...........<td>Tab</td>.. |
| ff80 | 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>....... |
| ffa0 | 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 3e 5c 5c 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 | ......<td><code>\\</code></td>.. |
| ffc0 | 20 20 20 20 20 20 20 20 20 3c 74 64 3e 42 61 63 6b 73 6c 61 73 68 3c 2f 74 64 3e 0a 20 20 20 20 | .........<td>Backslash</td>..... |
| ffe0 | 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>.......... |
| 10000 | 20 20 20 3c 74 64 3e 3c 63 6f 64 65 3e 5c 27 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 | ...<td><code>\'</code></td>..... |
| 10020 | 20 20 20 20 20 20 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 | ......<td>Single.Quote</td>..... |
| 10040 | 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>.......... |
| 10060 | 20 20 20 3c 74 64 3e 3c 63 6f 64 65 3e 5c 22 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 | ...<td><code>\"</code></td>..... |
| 10080 | 20 20 20 20 20 20 3c 74 64 3e 44 6f 75 62 6c 65 20 51 75 6f 74 65 3c 2f 74 64 3e 0a 20 20 20 20 | ......<td>Double.Quote</td>..... |
| 100a0 | 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>.......... |
| 100c0 | 20 20 20 3c 74 64 3e 3c 63 6f 64 65 3e 5c 78 4e 4e 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 | ...<td><code>\xNN</code></td>... |
| 100e0 | 20 20 20 20 20 20 20 20 3c 74 64 3e 68 65 78 61 64 65 63 69 6d 61 6c 20 38 2d 62 69 74 20 63 68 | ........<td>hexadecimal.8-bit.ch |
| 10100 | 61 72 61 63 74 65 72 20 63 6f 64 65 20 28 32 20 64 69 67 69 74 73 29 3c 2f 74 64 3e 0a 20 20 20 | aracter.code.(2.digits)</td>.... |
| 10120 | 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>......... |
| 10140 | 20 20 20 20 3c 74 64 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 | ....<td><code>\u{NNNNNN}</code>< |
| 10160 | 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 68 65 78 61 64 65 63 69 6d 61 6c 20 55 | /td>...........<td>hexadecimal.U |
| 10180 | 6e 69 63 6f 64 65 20 63 68 61 72 61 63 74 65 72 20 63 6f 64 65 20 55 54 46 2d 38 20 65 6e 63 6f | nicode.character.code.UTF-8.enco |
| 101a0 | 64 65 64 20 28 31 20 6f 72 20 6d 6f 72 65 20 64 69 67 69 74 73 29 3c 2f 74 64 3e 0a 20 20 20 20 | ded.(1.or.more.digits)</td>..... |
| 101c0 | 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 3c 2f 74 61 62 6c 65 3e 0a 20 20 20 20 20 20 3c | ....</tr>.......</table>.......< |
| 101e0 | 2f 64 69 76 3e 0a 20 20 20 20 20 20 3c 70 3e 4e 6f 74 65 20 74 68 61 74 20 74 68 65 20 6d 61 78 | /div>.......<p>Note.that.the.max |
| 10200 | 69 6d 75 6d 20 76 61 6c 69 64 20 55 6e 69 63 6f 64 65 20 70 6f 69 6e 74 20 69 73 20 3c 63 6f 64 | imum.valid.Unicode.point.is.<cod |
| 10220 | 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | e.class="zig"><span.class="tok-n |
| 10240 | 75 6d 62 65 72 22 3e 30 78 31 30 66 66 66 66 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 3c 2f | umber">0x10ffff</span></code>.</ |
| 10260 | 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 4d 75 6c 74 69 6c 69 6e | p>..............<h3.id="Multilin |
| 10280 | 65 2d 53 74 72 69 6e 67 2d 4c 69 74 65 72 61 6c 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 | e-String-Literals"><a.href="#toc |
| 102a0 | 2d 4d 75 6c 74 69 6c 69 6e 65 2d 53 74 72 69 6e 67 2d 4c 69 74 65 72 61 6c 73 22 3e 4d 75 6c 74 | -Multiline-String-Literals">Mult |
| 102c0 | 69 6c 69 6e 65 20 53 74 72 69 6e 67 20 4c 69 74 65 72 61 6c 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 | iline.String.Literals</a>.<a.cla |
| 102e0 | 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 4d 75 6c 74 69 6c 69 6e 65 2d 53 74 72 69 6e 67 | ss="hdr".href="#Multiline-String |
| 10300 | 2d 4c 69 74 65 72 61 6c 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 | -Literals">..</a></h3>........<p |
| 10320 | 3e 0a 20 20 20 20 20 20 4d 75 6c 74 69 6c 69 6e 65 20 73 74 72 69 6e 67 20 6c 69 74 65 72 61 6c | >.......Multiline.string.literal |
| 10340 | 73 20 68 61 76 65 20 6e 6f 20 65 73 63 61 70 65 73 20 61 6e 64 20 63 61 6e 20 73 70 61 6e 20 61 | s.have.no.escapes.and.can.span.a |
| 10360 | 63 72 6f 73 73 20 6d 75 6c 74 69 70 6c 65 20 6c 69 6e 65 73 2e 0a 20 20 20 20 20 20 54 6f 20 73 | cross.multiple.lines........To.s |
| 10380 | 74 61 72 74 20 61 20 6d 75 6c 74 69 6c 69 6e 65 20 73 74 72 69 6e 67 20 6c 69 74 65 72 61 6c 2c | tart.a.multiline.string.literal, |
| 103a0 | 20 75 73 65 20 74 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e | .use.the.<code.class="zig"><span |
| 103c0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 5c 5c 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 | .class="tok-str">\\</span></code |
| 103e0 | 3e 20 74 6f 6b 65 6e 2e 20 4a 75 73 74 20 6c 69 6b 65 20 61 20 63 6f 6d 6d 65 6e 74 2c 0a 20 20 | >.token..Just.like.a.comment,... |
| 10400 | 20 20 20 20 74 68 65 20 73 74 72 69 6e 67 20 6c 69 74 65 72 61 6c 20 67 6f 65 73 20 75 6e 74 69 | ....the.string.literal.goes.unti |
| 10420 | 6c 20 74 68 65 20 65 6e 64 20 6f 66 20 74 68 65 20 6c 69 6e 65 2e 20 54 68 65 20 65 6e 64 20 6f | l.the.end.of.the.line..The.end.o |
| 10440 | 66 20 74 68 65 20 6c 69 6e 65 20 69 73 0a 20 20 20 20 20 20 6e 6f 74 20 69 6e 63 6c 75 64 65 64 | f.the.line.is.......not.included |
| 10460 | 20 69 6e 20 74 68 65 20 73 74 72 69 6e 67 20 6c 69 74 65 72 61 6c 2e 0a 20 20 20 20 20 20 48 6f | .in.the.string.literal........Ho |
| 10480 | 77 65 76 65 72 2c 20 69 66 20 74 68 65 20 6e 65 78 74 20 6c 69 6e 65 20 62 65 67 69 6e 73 20 77 | wever,.if.the.next.line.begins.w |
| 104a0 | 69 74 68 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 | ith.<code.class="zig"><span.clas |
| 104c0 | 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 5c 5c 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 74 68 65 | s="tok-str">\\</span></code>.the |
| 104e0 | 6e 20 61 20 6e 65 77 6c 69 6e 65 20 69 73 20 61 70 70 65 6e 64 65 64 20 61 6e 64 0a 20 20 20 20 | n.a.newline.is.appended.and..... |
| 10500 | 20 20 74 68 65 20 73 74 72 69 6e 67 20 6c 69 74 65 72 61 6c 20 63 6f 6e 74 69 6e 75 65 73 2e 0a | ..the.string.literal.continues.. |
| 10520 | 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 |
| 10540 | 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e | s="zig"><span.class="tok-kw">con |
| 10560 | 73 74 3c 2f 73 70 61 6e 3e 20 68 65 6c 6c 6f 5f 77 6f 72 6c 64 5f 69 6e 5f 63 20 3d 0a 20 20 20 | st</span>.hello_world_in_c.=.... |
| 10580 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 5c 5c 23 69 6e 63 6c 75 64 | .<span.class="tok-str">\\#includ |
| 105a0 | 65 20 26 6c 74 3b 73 74 64 69 6f 2e 68 26 67 74 3b 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 3c 73 70 | e.<stdio.h>.</span>....<sp |
| 105c0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 5c 5c 0a 3c 2f 73 70 61 6e 3e 20 20 20 | an.class="tok-str">\\.</span>... |
| 105e0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 5c 5c 69 6e 74 20 6d 61 69 | .<span.class="tok-str">\\int.mai |
| 10600 | 6e 28 69 6e 74 20 61 72 67 63 2c 20 63 68 61 72 20 2a 2a 61 72 67 76 29 20 7b 0a 3c 2f 73 70 61 | n(int.argc,.char.**argv).{.</spa |
| 10620 | 6e 3e 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 5c 5c 20 20 | n>....<span.class="tok-str">\\.. |
| 10640 | 20 20 70 72 69 6e 74 66 28 26 71 75 6f 74 3b 68 65 6c 6c 6f 20 77 6f 72 6c 64 5c 6e 26 71 75 6f | ..printf("hello.world\n&quo |
| 10660 | 74 3b 29 3b 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | t;);.</span>....<span.class="tok |
| 10680 | 2d 73 74 72 22 3e 5c 5c 20 20 20 20 72 65 74 75 72 6e 20 30 3b 0a 3c 2f 73 70 61 6e 3e 20 20 20 | -str">\\....return.0;.</span>... |
| 106a0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 5c 5c 7d 0a 3c 2f 73 70 61 | .<span.class="tok-str">\\}.</spa |
| 106c0 | 6e 3e 3b 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c | n>;</code></pre>.......<p>See.al |
| 106e0 | 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 6d 62 65 64 46 | so:</p><ul>.<li><a.href="#embedF |
| 10700 | 69 6c 65 22 3e 40 65 6d 62 65 64 46 69 6c 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a | ile">@embedFile</a></li>.</ul>.. |
| 10720 | 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 41 73 73 69 | ....................<h2.id="Assi |
| 10740 | 67 6e 6d 65 6e 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 41 73 73 69 67 6e 6d 65 6e 74 | gnment"><a.href="#toc-Assignment |
| 10760 | 22 3e 41 73 73 69 67 6e 6d 65 6e 74 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 | ">Assignment</a>.<a.class="hdr". |
| 10780 | 68 72 65 66 3d 22 23 41 73 73 69 67 6e 6d 65 6e 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a | href="#Assignment">..</a></h2>.. |
| 107a0 | 20 20 20 20 20 20 3c 70 3e 55 73 65 20 74 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | ......<p>Use.the.<code.class="zi |
| 107c0 | 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 | g"><span.class="tok-kw">const</s |
| 107e0 | 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6b 65 79 77 6f 72 64 20 74 6f 20 61 73 73 69 67 6e 20 61 20 | pan></code>.keyword.to.assign.a. |
| 10800 | 76 61 6c 75 65 20 74 6f 20 61 6e 20 69 64 65 6e 74 69 66 69 65 72 3a 3c 2f 70 3e 0a 20 20 20 20 | value.to.an.identifier:</p>..... |
| 10820 | 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 | ..<p.class="file">test.zig</p><p |
| 10840 | 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | re><code.class="zig"><span.class |
| 10860 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 78 20 3d 20 3c 73 70 61 6e | ="tok-kw">const</span>.x.=.<span |
| 10880 | 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>; |
| 108a0 | 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> |
| 108c0 | 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> |
| 108e0 | 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f | ().<span.class="tok-type">void</ |
| 10900 | 73 70 61 6e 3e 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 |
| 10920 | 6d 65 6e 74 22 3e 2f 2f 20 49 74 20 77 6f 72 6b 73 20 61 74 20 67 6c 6f 62 61 6c 20 73 63 6f 70 | ment">//.It.works.at.global.scop |
| 10940 | 65 20 61 73 20 77 65 6c 6c 20 61 73 20 69 6e 73 69 64 65 20 66 75 6e 63 74 69 6f 6e 73 2e 3c 2f | e.as.well.as.inside.functions.</ |
| 10960 | 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 |
| 10980 | 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 79 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | onst</span>.y.=.<span.class="tok |
| 109a0 | 2d 6e 75 6d 62 65 72 22 3e 35 36 37 38 3c 2f 73 70 61 6e 3e 3b 0a 0a 20 20 20 20 3c 73 70 61 6e | -number">5678</span>;......<span |
| 109c0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 4f 6e 63 65 20 61 73 73 | .class="tok-comment">//.Once.ass |
| 109e0 | 69 67 6e 65 64 2c 20 61 6e 20 69 64 65 6e 74 69 66 69 65 72 20 63 61 6e 6e 6f 74 20 62 65 20 63 | igned,.an.identifier.cannot.be.c |
| 10a00 | 68 61 6e 67 65 64 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 79 20 2b 3d 20 3c 73 70 61 6e 20 63 6c | hanged.</span>.....y.+=.<span.cl |
| 10a20 | 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 0a 3c 73 | ass="tok-number">1</span>;.}..<s |
| 10a40 | 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>.< |
| 10a60 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 61 73 73 69 67 | span.class="tok-str">"assig |
| 10a80 | 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 66 6f 6f 28 29 3b 0a | nment"</span>.{.....foo();. |
| 10aa0 | 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | }</code></pre><pre><code.class=" |
| 10ac0 | 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 3c 73 70 61 6e | shell">$.zig.test.test.zig.<span |
| 10ae0 | 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e | .class="t0_1">./docgen_tmp/test. |
| 10b00 | 7a 69 67 3a 38 3a 37 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 31 | zig:8:7:.</span><span.class="t31 |
| 10b20 | 5f 31 22 3e 65 72 72 6f 72 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | _1">error:.</span><span.class="t |
| 10b40 | 30 5f 31 22 3e 63 61 6e 6e 6f 74 20 61 73 73 69 67 6e 20 74 6f 20 63 6f 6e 73 74 61 6e 74 3c 2f | 0_1">cannot.assign.to.constant</ |
| 10b60 | 73 70 61 6e 3e 0a 20 20 20 20 79 20 2b 3d 20 31 3b 0a 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c | span>.....y.+=.1;.......<span.cl |
| 10b80 | 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 | ass="t32_1">^</span>.</code></pr |
| 10ba0 | 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c | e>........<p><code.class="zig">< |
| 10bc0 | 73 70 61 6e 20 63 6c 61 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> |
| 10be0 | 3c 2f 63 6f 64 65 3e 20 61 70 70 6c 69 65 73 20 74 6f 20 61 6c 6c 20 6f 66 20 74 68 65 20 62 79 | </code>.applies.to.all.of.the.by |
| 10c00 | 74 65 73 20 74 68 61 74 20 74 68 65 20 69 64 65 6e 74 69 66 69 65 72 20 69 6d 6d 65 64 69 61 74 | tes.that.the.identifier.immediat |
| 10c20 | 65 6c 79 20 61 64 64 72 65 73 73 65 73 2e 20 3c 61 20 68 72 65 66 3d 22 23 50 6f 69 6e 74 65 72 | ely.addresses..<a.href="#Pointer |
| 10c40 | 73 22 3e 50 6f 69 6e 74 65 72 73 3c 2f 61 3e 20 68 61 76 65 20 74 68 65 69 72 20 6f 77 6e 20 63 | s">Pointers</a>.have.their.own.c |
| 10c60 | 6f 6e 73 74 2d 6e 65 73 73 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 49 66 20 79 6f 75 20 6e | onst-ness.</p>.......<p>If.you.n |
| 10c80 | 65 65 64 20 61 20 76 61 72 69 61 62 6c 65 20 74 68 61 74 20 79 6f 75 20 63 61 6e 20 6d 6f 64 69 | eed.a.variable.that.you.can.modi |
| 10ca0 | 66 79 2c 20 75 73 65 20 74 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 | fy,.use.the.<code.class="zig"><s |
| 10cc0 | 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 2f 63 | pan.class="tok-kw">var</span></c |
| 10ce0 | 6f 64 65 3e 20 6b 65 79 77 6f 72 64 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 | ode>.keyword:</p>.......<p.class |
| 10d00 | 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 | ="file">test.zig</p><pre><code.c |
| 10d20 | 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | lass="zig"><span.class="tok-kw"> |
| 10d40 | 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 |
| 10d60 | 73 3d 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>(< |
| 10d80 | 73 70 61 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 |
| 10da0 | 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 |
| 10dc0 | 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>.< |
| 10de0 | 73 70 61 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 72 26 71 | span.class="tok-str">"var&q |
| 10e00 | 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 |
| 10e20 | 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 73 73 | ok-kw">var</span>.y:.<span.class |
| 10e40 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 | ="tok-type">i32</span>.=.<span.c |
| 10e60 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 36 37 38 3c 2f 73 70 61 6e 3e 3b 0a 0a | lass="tok-number">5678</span>;.. |
| 10e80 | 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 |
| 10ea0 | 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 0a 20 20 20 20 65 78 70 65 63 74 28 79 20 3d 3d 20 3c 73 70 | ">1</span>;......expect(y.==.<sp |
| 10ec0 | 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 39 3c 2f 73 70 61 6e | an.class="tok-number">5679</span |
| 10ee0 | 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 | >);.}</code></pre><pre><code.cla |
| 10f00 | 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 31 | ss="shell">$.zig.test.test.zig.1 |
| 10f20 | 2f 31 20 74 65 73 74 20 26 71 75 6f 74 3b 76 61 72 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 41 6c | /1.test."var"....OK.Al |
| 10f40 | 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a | l.1.tests.passed..</code></pre>. |
| 10f60 | 0a 20 20 20 20 20 20 3c 70 3e 56 61 72 69 61 62 6c 65 73 20 6d 75 73 74 20 62 65 20 69 6e 69 74 | .......<p>Variables.must.be.init |
| 10f80 | 69 61 6c 69 7a 65 64 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c | ialized:</p>.......<p.class="fil |
| 10fa0 | 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d | e">test.zig</p><pre><code.class= |
| 10fc0 | 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c | "zig"><span.class="tok-kw">test< |
| 10fe0 | 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 |
| 11000 | 6f 74 3b 69 6e 69 74 69 61 6c 69 7a 61 74 69 6f 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b | ot;initialization"</span>.{ |
| 11020 | 0a 20 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 |
| 11040 | 70 61 6e 3e 20 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 | pan>.x:.<span.class="tok-type">i |
| 11060 | 33 32 3c 2f 73 70 61 6e 3e 3b 0a 0a 20 20 20 20 78 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | 32</span>;......x.=.<span.class= |
| 11080 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c | "tok-number">1</span>;.}</code>< |
| 110a0 | 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 | /pre><pre><code.class="shell">$. |
| 110c0 | 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | zig.test.test.zig.<span.class="t |
| 110e0 | 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 32 3a 35 3a 20 | 0_1">./docgen_tmp/test.zig:2:5:. |
| 11100 | 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 31 5f 31 22 3e 65 72 72 6f 72 | </span><span.class="t31_1">error |
| 11120 | 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 76 61 72 69 | :.</span><span.class="t0_1">vari |
| 11140 | 61 62 6c 65 73 20 6d 75 73 74 20 62 65 20 69 6e 69 74 69 61 6c 69 7a 65 64 3c 2f 73 70 61 6e 3e | ables.must.be.initialized</span> |
| 11160 | 0a 20 20 20 20 76 61 72 20 78 3a 20 69 33 32 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | .....var.x:.i32;.....<span.class |
| 11180 | 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a | ="t32_1">^</span>.</code></pre>. |
| 111a0 | 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 75 6e 64 65 66 69 6e 65 64 22 3e 3c 61 20 68 72 65 | .......<h3.id="undefined"><a.hre |
| 111c0 | 66 3d 22 23 74 6f 63 2d 75 6e 64 65 66 69 6e 65 64 22 3e 75 6e 64 65 66 69 6e 65 64 3c 2f 61 3e | f="#toc-undefined">undefined</a> |
| 111e0 | 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 64 65 66 69 6e 65 64 | .<a.class="hdr".href="#undefined |
| 11200 | 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 3c 63 6f 64 | ">..</a></h3>........<p>Use.<cod |
| 11220 | 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | e.class="zig"><span.class="tok-n |
| 11240 | 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. |
| 11260 | 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:</ |
| 11280 | 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 | p>.......<p.class="file">test.zi |
| 112a0 | 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 | g</p><pre><code.class="zig"><spa |
| 112c0 | 6e 20 63 6c 61 73 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 |
| 112e0 | 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" |
| 11300 | 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 |
| 11320 | 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 |
| 11340 | 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- |
| 11360 | 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 |
| 11380 | 2d 73 74 72 22 3e 26 71 75 6f 74 3b 69 6e 69 74 20 77 69 74 68 20 75 6e 64 65 66 69 6e 65 64 26 | -str">"init.with.undefined& |
| 113a0 | 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=" |
| 113c0 | 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 | tok-kw">var</span>.x:.<span.clas |
| 113e0 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 | s="tok-type">i32</span>.=.<span. |
| 11400 | 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 |
| 11420 | 3e 3b 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 75 6d 62 | >;.....x.=.<span.class="tok-numb |
| 11440 | 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 65 78 70 65 63 74 28 78 20 3d 3d 20 3c 73 | er">1</span>;.....expect(x.==.<s |
| 11460 | 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>) |
| 11480 | 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 | ;.}</code></pre><pre><code.class |
| 114a0 | 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 31 2f 31 | ="shell">$.zig.test.test.zig.1/1 |
| 114c0 | 20 74 65 73 74 20 26 71 75 6f 74 3b 69 6e 69 74 20 77 69 74 68 20 75 6e 64 65 66 69 6e 65 64 26 | .test."init.with.undefined& |
| 114e0 | 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a | quot;....OK.All.1.tests.passed.. |
| 11500 | 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 3c | </code></pre>........<p>.......< |
| 11520 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | code.class="zig"><span.class="to |
| 11540 | 6b 2d 6e 75 6c 6c 22 3e 75 6e 64 65 66 69 6e 65 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 | k-null">undefined</span></code>. |
| 11560 | 63 61 6e 20 62 65 20 3c 61 20 68 72 65 66 3d 22 23 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 22 3e | can.be.<a.href="#Type-Coercion"> |
| 11580 | 63 6f 65 72 63 65 64 3c 2f 61 3e 20 74 6f 20 61 6e 79 20 74 79 70 65 2e 0a 20 20 20 20 20 20 20 | coerced</a>.to.any.type......... |
| 115a0 | 20 20 20 4f 6e 63 65 20 74 68 69 73 20 68 61 70 70 65 6e 73 2c 20 69 74 20 69 73 20 6e 6f 20 6c | ...Once.this.happens,.it.is.no.l |
| 115c0 | 6f 6e 67 65 72 20 70 6f 73 73 69 62 6c 65 20 74 6f 20 64 65 74 65 63 74 20 74 68 61 74 20 74 68 | onger.possible.to.detect.that.th |
| 115e0 | 65 20 76 61 6c 75 65 20 69 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 | e.value.is.<code.class="zig"><sp |
| 11600 | 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 |
| 11620 | 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 63 6f 64 65 | pan></code>................<code |
| 11640 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | .class="zig"><span.class="tok-nu |
| 11660 | 6c 6c 22 3e 75 6e 64 65 66 69 6e 65 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6d 65 61 6e | ll">undefined</span></code>.mean |
| 11680 | 73 20 74 68 65 20 76 61 6c 75 65 20 63 6f 75 6c 64 20 62 65 20 61 6e 79 74 68 69 6e 67 2c 20 65 | s.the.value.could.be.anything,.e |
| 116a0 | 76 65 6e 20 73 6f 6d 65 74 68 69 6e 67 20 74 68 61 74 20 69 73 20 6e 6f 6e 73 65 6e 73 65 0a 20 | ven.something.that.is.nonsense.. |
| 116c0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 61 63 63 6f 72 64 69 6e 67 20 74 6f 20 74 68 | .................according.to.th |
| 116e0 | 65 20 74 79 70 65 2e 20 54 72 61 6e 73 6c 61 74 65 64 20 69 6e 74 6f 20 45 6e 67 6c 69 73 68 2c | e.type..Translated.into.English, |
| 11700 | 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | .<code.class="zig"><span.class=" |
| 11720 | 74 6f 6b 2d 6e 75 6c 6c 22 3e 75 6e 64 65 66 69 6e 65 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 | tok-null">undefined</span></code |
| 11740 | 3e 20 6d 65 61 6e 73 20 22 4e 6f 74 20 61 20 6d 65 61 6e 69 6e 67 66 75 6c 0a 20 20 20 20 20 20 | >.means."Not.a.meaningful....... |
| 11760 | 76 61 6c 75 65 2e 20 55 73 69 6e 67 20 74 68 69 73 20 76 61 6c 75 65 20 77 6f 75 6c 64 20 62 65 | value..Using.this.value.would.be |
| 11780 | 20 61 20 62 75 67 2e 20 54 68 65 20 76 61 6c 75 65 20 77 69 6c 6c 20 62 65 20 75 6e 75 73 65 64 | .a.bug..The.value.will.be.unused |
| 117a0 | 2c 20 6f 72 20 6f 76 65 72 77 72 69 74 74 65 6e 20 62 65 66 6f 72 65 20 62 65 69 6e 67 20 75 73 | ,.or.overwritten.before.being.us |
| 117c0 | 65 64 2e 22 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 | ed.".......</p>.......<p>....... |
| 117e0 | 49 6e 20 3c 61 20 68 72 65 66 3d 22 23 44 65 62 75 67 22 3e 44 65 62 75 67 3c 2f 61 3e 20 6d 6f | In.<a.href="#Debug">Debug</a>.mo |
| 11800 | 64 65 2c 20 5a 69 67 20 77 72 69 74 65 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | de,.Zig.writes.<code.class="zig" |
| 11820 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 61 61 3c 2f | ><span.class="tok-number">0xaa</ |
| 11840 | 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 62 79 74 65 73 20 74 6f 20 75 6e 64 65 66 69 6e 65 64 20 | span></code>.bytes.to.undefined. |
| 11860 | 6d 65 6d 6f 72 79 2e 20 54 68 69 73 20 69 73 20 74 6f 20 63 61 74 63 68 0a 20 20 20 20 20 20 62 | memory..This.is.to.catch.......b |
| 11880 | 75 67 73 20 65 61 72 6c 79 2c 20 61 6e 64 20 74 6f 20 68 65 6c 70 20 64 65 74 65 63 74 20 75 73 | ugs.early,.and.to.help.detect.us |
| 118a0 | 65 20 6f 66 20 75 6e 64 65 66 69 6e 65 64 20 6d 65 6d 6f 72 79 20 69 6e 20 61 20 64 65 62 75 67 | e.of.undefined.memory.in.a.debug |
| 118c0 | 67 65 72 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 | ger........</p>................. |
| 118e0 | 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 31 20 69 64 3d 22 56 61 72 69 61 62 6c 65 73 22 3e 3c | ............<h1.id="Variables">< |
| 11900 | 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 69 61 62 6c 65 | a.href="#toc-Variables">Variable |
| 11920 | 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 56 61 72 69 | s</a>.<a.class="hdr".href="#Vari |
| 11940 | 61 62 6c 65 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 31 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 | ables">..</a></h1>........<p>... |
| 11960 | 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 20 3c 61 20 68 | ....A.variable.is.a.unit.of.<a.h |
| 11980 | 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 6f 72 61 67 65 | ref="#Memory">Memory</a>.storage |
| 119a0 | 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 56 61 72 | ........</p>.......<p>.......Var |
| 119c0 | 69 61 62 6c 65 73 20 61 72 65 20 6e 65 76 65 72 20 61 6c 6c 6f 77 65 64 20 74 6f 20 73 68 61 64 | iables.are.never.allowed.to.shad |
| 119e0 | 6f 77 20 69 64 65 6e 74 69 66 69 65 72 73 20 66 72 6f 6d 20 61 6e 20 6f 75 74 65 72 20 73 63 6f | ow.identifiers.from.an.outer.sco |
| 11a00 | 70 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 | pe........</p>.......<p>.......I |
| 11a20 | 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 75 73 65 | t.is.generally.preferable.to.use |
| 11a40 | 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | .<code.class="zig"><span.class=" |
| 11a60 | 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 72 61 74 68 | tok-kw">const</span></code>.rath |
| 11a80 | 65 72 20 74 68 61 6e 0a 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e | er.than.......<code.class="zig"> |
| 11aa0 | 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>< |
| 11ac0 | 2f 63 6f 64 65 3e 20 77 68 65 6e 20 64 65 63 6c 61 72 69 6e 67 20 61 20 76 61 72 69 61 62 6c 65 | /code>.when.declaring.a.variable |
| 11ae0 | 2e 20 54 68 69 73 20 63 61 75 73 65 73 20 6c 65 73 73 20 77 6f 72 6b 20 66 6f 72 20 62 6f 74 68 | ..This.causes.less.work.for.both |
| 11b00 | 0a 20 20 20 20 20 20 68 75 6d 61 6e 73 20 61 6e 64 20 63 6f 6d 70 75 74 65 72 73 20 74 6f 20 64 | .......humans.and.computers.to.d |
| 11b20 | 6f 20 77 68 65 6e 20 72 65 61 64 69 6e 67 20 63 6f 64 65 2c 20 61 6e 64 20 63 72 65 61 74 65 73 | o.when.reading.code,.and.creates |
| 11b40 | 20 6d 6f 72 65 20 6f 70 74 69 6d 69 7a 61 74 69 6f 6e 20 6f 70 70 6f 72 74 75 6e 69 74 69 65 73 | .more.optimization.opportunities |
| 11b60 | 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 47 6c 6f 62 61 | ........</p>.......<h2.id="Globa |
| 11b80 | 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 47 6c 6f 62 61 | l-Variables"><a.href="#toc-Globa |
| 11ba0 | 6c 2d 56 61 72 69 61 62 6c 65 73 22 3e 47 6c 6f 62 61 6c 20 56 61 72 69 61 62 6c 65 73 3c 2f 61 | l-Variables">Global.Variables</a |
| 11bc0 | 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 47 6c 6f 62 61 6c 2d 56 | >.<a.class="hdr".href="#Global-V |
| 11be0 | 61 72 69 61 62 6c 65 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e | ariables">..</a></h2>........<p> |
| 11c00 | 0a 20 20 20 20 20 20 47 6c 6f 62 61 6c 20 76 61 72 69 61 62 6c 65 73 20 61 72 65 20 63 6f 6e 73 | .......Global.variables.are.cons |
| 11c20 | 69 64 65 72 65 64 20 74 6f 20 62 65 20 61 20 74 6f 70 20 6c 65 76 65 6c 20 64 65 63 6c 61 72 61 | idered.to.be.a.top.level.declara |
| 11c40 | 74 69 6f 6e 2c 20 77 68 69 63 68 20 6d 65 61 6e 73 20 74 68 61 74 20 74 68 65 79 20 61 72 65 0a | tion,.which.means.that.they.are. |
| 11c60 | 20 20 20 20 20 20 6f 72 64 65 72 2d 69 6e 64 65 70 65 6e 64 65 6e 74 20 61 6e 64 20 6c 61 7a 69 | ......order-independent.and.lazi |
| 11c80 | 6c 79 20 61 6e 61 6c 79 7a 65 64 2e 20 54 68 65 20 69 6e 69 74 69 61 6c 69 7a 61 74 69 6f 6e 20 | ly.analyzed..The.initialization. |
| 11ca0 | 76 61 6c 75 65 20 6f 66 20 67 6c 6f 62 61 6c 20 76 61 72 69 61 62 6c 65 73 20 69 73 20 69 6d 70 | value.of.global.variables.is.imp |
| 11cc0 | 6c 69 63 69 74 6c 79 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 63 6f 6d 70 74 69 6d 65 | licitly.......<a.href="#comptime |
| 11ce0 | 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 61 3e 2e 20 49 66 20 61 20 67 6c 6f 62 61 6c 20 76 61 72 69 | ">comptime</a>..If.a.global.vari |
| 11d00 | 61 62 6c 65 20 69 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 | able.is.<code.class="zig"><span. |
| 11d20 | 63 6c 61 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 |
| 11d40 | 65 3e 20 74 68 65 6e 20 69 74 73 20 76 61 6c 75 65 20 69 73 0a 20 20 20 20 20 20 3c 63 6f 64 65 | e>.then.its.value.is.......<code |
| 11d60 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | .class="zig"><span.class="tok-kw |
| 11d80 | 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2d 6b 6e 6f 77 6e 2c 20 | ">comptime</span></code>-known,. |
| 11da0 | 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 77 6e 2e 0a 20 | otherwise.it.is.runtime-known... |
| 11dc0 | 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e | .....</p>.......<p.class="file"> |
| 11de0 | 67 6c 6f 62 61 6c 5f 76 61 72 69 61 62 6c 65 73 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f | global_variables.zig</p><pre><co |
| 11e00 | 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | de.class="zig"><span.class="tok- |
| 11e20 | 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 73 73 3d 22 74 | kw">var</span>.y:.<span.class="t |
| 11e40 | 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 61 64 64 28 3c 73 70 61 6e 20 | ok-type">i32</span>.=.add(<span. |
| 11e60 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 3c 2f 73 70 61 6e 3e 2c 20 78 29 | class="tok-number">10</span>,.x) |
| 11e80 | 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 |
| 11ea0 | 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 |
| 11ec0 | 32 3c 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 | 2</span>.=.add(<span.class="tok- |
| 11ee0 | 6e 75 6d 62 65 72 22 3e 31 32 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | number">12</span>,.<span.class=" |
| 11f00 | 74 6f 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 | tok-number">34</span>);..<span.c |
| 11f20 | 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. |
| 11f40 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 67 6c 6f 62 61 6c 20 76 61 72 | class="tok-str">"global.var |
| 11f60 | 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 20 65 78 70 65 63 74 | iables"</span>.{.....expect |
| 11f80 | 28 78 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 | (x.==.<span.class="tok-number">4 |
| 11fa0 | 36 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 65 78 70 65 63 74 28 79 20 3d 3d 20 3c 73 70 61 6e | 6</span>);.....expect(y.==.<span |
| 11fc0 | 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 70 61 6e 3e 29 3b 0a | .class="tok-number">56</span>);. |
| 11fe0 | 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 |
| 12000 | 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 61 64 64 3c 2f 73 70 61 6e | >.<span.class="tok-fn">add</span |
| 12020 | 3e 28 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c | >(a:.<span.class="tok-type">i32< |
| 12040 | 2f 73 70 61 6e 3e 2c 20 62 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | /span>,.b:.<span.class="tok-type |
| 12060 | 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 |
| 12080 | 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 |
| 120a0 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 61 20 2b 20 62 3b 0a | s="tok-kw">return</span>.a.+.b;. |
| 120c0 | 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 74 3c 2f 73 | }..<span.class="tok-kw">const</s |
| 120e0 | 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 |
| 12100 | 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= |
| 12120 | 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> |
| 12140 | 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 |
| 12160 | 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 |
| 12180 | 3b 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | ;</code></pre><pre><code.class=" |
| 121a0 | 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 67 6c 6f 62 61 6c 5f 76 61 72 69 61 62 6c | shell">$.zig.test.global_variabl |
| 121c0 | 65 73 2e 7a 69 67 0a 31 2f 31 20 74 65 73 74 20 26 71 75 6f 74 3b 67 6c 6f 62 61 6c 20 76 61 72 | es.zig.1/1.test."global.var |
| 121e0 | 69 61 62 6c 65 73 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 | iables"....OK.All.1.tests.p |
| 12200 | 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a | assed..</code></pre>........<p>. |
| 12220 | 20 20 20 20 20 20 47 6c 6f 62 61 6c 20 76 61 72 69 61 62 6c 65 73 20 6d 61 79 20 62 65 20 64 65 | ......Global.variables.may.be.de |
| 12240 | 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 |
| 12260 | 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 |
| 12280 | 6e 69 6f 6e 3c 2f 61 3e 2c 20 6f 72 20 3c 61 20 68 72 65 66 3d 22 23 65 6e 75 6d 22 3e 65 6e 75 | nion</a>,.or.<a.href="#enum">enu |
| 122a0 | 6d 3c 2f 61 3e 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 | m</a>:.......</p>.......<p.class |
| 122c0 | 3d 22 66 69 6c 65 22 3e 6e 61 6d 65 73 70 61 63 65 64 5f 67 6c 6f 62 61 6c 2e 7a 69 67 3c 2f 70 | ="file">namespaced_global.zig</p |
| 122e0 | 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c | ><pre><code.class="zig"><span.cl |
| 12300 | 61 73 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.=. |
| 12320 | 3c 73 70 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 |
| 12340 | 74 3c 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">& |
| 12360 | 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 |
| 12380 | 61 73 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 |
| 123a0 | 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 |
| 123c0 | 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 |
| 123e0 | 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. |
| 12400 | 67 6c 6f 62 61 6c 20 76 61 72 69 61 62 6c 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 | global.variable"</span>.{.. |
| 12420 | 20 20 20 65 78 70 65 63 74 28 66 6f 6f 28 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ...expect(foo().==.<span.class=" |
| 12440 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 35 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 65 78 | tok-number">1235</span>);.....ex |
| 12460 | 70 65 63 74 28 66 6f 6f 28 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | pect(foo().==.<span.class="tok-n |
| 12480 | 75 6d 62 65 72 22 3e 31 32 33 36 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c | umber">1236</span>);.}..<span.cl |
| 124a0 | 61 73 73 3d 22 74 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 |
| 124c0 | 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 |
| 124e0 | 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>.{.... |
| 12500 | 20 3c 73 70 61 6e 20 63 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 |
| 12520 | 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 |
| 12540 | 63 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ct</span>.{.........<span.class= |
| 12560 | 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 |
| 12580 | 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 |
| 125a0 | 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>; |
| 125c0 | 0a 20 20 20 20 7d 3b 0a 20 20 20 20 53 2e 78 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | .....};.....S.x.+=.<span.class=" |
| 125e0 | 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. |
| 12600 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 53 2e 78 | class="tok-kw">return</span>.S.x |
| 12620 | 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 | ;.}</code></pre><pre><code.class |
| 12640 | 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 6e 61 6d 65 73 70 61 63 65 64 5f 67 | ="shell">$.zig.test.namespaced_g |
| 12660 | 6c 6f 62 61 6c 2e 7a 69 67 0a 31 2f 31 20 74 65 73 74 20 26 71 75 6f 74 3b 6e 61 6d 65 73 70 61 | lobal.zig.1/1.test."namespa |
| 12680 | 63 65 64 20 67 6c 6f 62 61 6c 20 76 61 72 69 61 62 6c 65 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a | ced.global.variable"....OK. |
| 126a0 | 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 | All.1.tests.passed..</code></pre |
| 126c0 | 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 20 3c 63 6f 64 65 20 63 6c 61 | >........<p>.......The.<code.cla |
| 126e0 | 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 78 | ss="zig"><span.class="tok-kw">ex |
| 12700 | 74 65 72 6e 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 | tern</span></code>.keyword.can.b |
| 12720 | 65 20 75 73 65 64 20 74 6f 20 6c 69 6e 6b 20 61 67 61 69 6e 73 74 20 61 20 76 61 72 69 61 62 6c | e.used.to.link.against.a.variabl |
| 12740 | 65 20 74 68 61 74 20 69 73 20 65 78 70 6f 72 74 65 64 0a 20 20 20 20 20 20 66 72 6f 6d 20 61 6e | e.that.is.exported.......from.an |
| 12760 | 6f 74 68 65 72 20 6f 62 6a 65 63 74 2e 20 54 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a | other.object..The.<code.class="z |
| 12780 | 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 78 70 6f 72 74 3c | ig"><span.class="tok-kw">export< |
| 127a0 | 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6b 65 79 77 6f 72 64 20 6f 72 20 3c 61 20 68 72 65 66 | /span></code>.keyword.or.<a.href |
| 127c0 | 3d 22 23 65 78 70 6f 72 74 22 3e 40 65 78 70 6f 72 74 3c 2f 61 3e 20 62 75 69 6c 74 69 6e 20 66 | ="#export">@export</a>.builtin.f |
| 127e0 | 75 6e 63 74 69 6f 6e 0a 20 20 20 20 20 20 63 61 6e 20 62 65 20 75 73 65 64 20 74 6f 20 6d 61 6b | unction.......can.be.used.to.mak |
| 12800 | 65 20 61 20 76 61 72 69 61 62 6c 65 20 61 76 61 69 6c 61 62 6c 65 20 74 6f 20 6f 74 68 65 72 20 | e.a.variable.available.to.other. |
| 12820 | 6f 62 6a 65 63 74 73 20 61 74 20 6c 69 6e 6b 20 74 69 6d 65 2e 20 49 6e 20 62 6f 74 68 20 63 61 | objects.at.link.time..In.both.ca |
| 12840 | 73 65 73 2c 0a 20 20 20 20 20 20 74 68 65 20 74 79 70 65 20 6f 66 20 74 68 65 20 76 61 72 69 61 | ses,.......the.type.of.the.varia |
| 12860 | 62 6c 65 20 6d 75 73 74 20 62 65 20 43 20 41 42 49 20 63 6f 6d 70 61 74 69 62 6c 65 2e 0a 20 20 | ble.must.be.C.ABI.compatible.... |
| 12880 | 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>< |
| 128a0 | 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 45 78 70 6f 72 74 69 6e 67 2d 61 2d 43 2d | ul>.<li><a.href="#Exporting-a-C- |
| 128c0 | 4c 69 62 72 61 72 79 22 3e 45 78 70 6f 72 74 69 6e 67 20 61 20 43 20 4c 69 62 72 61 72 79 3c 2f | Library">Exporting.a.C.Library</ |
| 128e0 | 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 32 | a></li>.</ul>................<h2 |
| 12900 | 20 69 64 3d 22 54 68 72 65 61 64 2d 4c 6f 63 61 6c 2d 56 61 72 69 61 62 6c 65 73 22 3e 3c 61 20 | .id="Thread-Local-Variables"><a. |
| 12920 | 68 72 65 66 3d 22 23 74 6f 63 2d 54 68 72 65 61 64 2d 4c 6f 63 61 6c 2d 56 61 72 69 61 62 6c 65 | href="#toc-Thread-Local-Variable |
| 12940 | 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 3e 20 3c 61 | s">Thread.Local.Variables</a>.<a |
| 12960 | 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 54 68 72 65 61 64 2d 4c 6f 63 61 6c | .class="hdr".href="#Thread-Local |
| 12980 | 2d 56 61 72 69 61 62 6c 65 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c | -Variables">..</a></h2>........< |
| 129a0 | 70 3e 41 20 76 61 72 69 61 62 6c 65 20 6d 61 79 20 62 65 20 73 70 65 63 69 66 69 65 64 20 74 6f | p>A.variable.may.be.specified.to |
| 129c0 | 20 62 65 20 61 20 74 68 72 65 61 64 2d 6c 6f 63 61 6c 20 76 61 72 69 61 62 6c 65 20 75 73 69 6e | .be.a.thread-local.variable.usin |
| 129e0 | 67 20 74 68 65 0a 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 | g.the.......<code.class="zig"><s |
| 12a00 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 68 72 65 61 64 6c 6f 63 61 6c 3c 2f | pan.class="tok-kw">threadlocal</ |
| 12a20 | 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6b 65 79 77 6f 72 64 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 | span></code>.keyword:</p>....... |
| 12a40 | 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 6c 73 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e | <p.class="file">tls.zig</p><pre> |
| 12a60 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | <code.class="zig"><span.class="t |
| 12a80 | 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. |
| 12aa0 | 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 |
| 12ac0 | 6e 3e 28 3c 73 70 61 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 |
| 12ae0 | 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 |
| 12b00 | 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 |
| 12b20 | 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 |
| 12b40 | 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 |
| 12b60 | 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 |
| 12b80 | 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>.=.< |
| 12ba0 | 73 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 |
| 12bc0 | 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< |
| 12be0 | 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 |
| 12c00 | 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 |
| 12c20 | 70 61 6e 3e 20 7b 0a 20 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"> |
| 12c40 | 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 |
| 12c60 | 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 |
| 12c80 | 64 2e 73 70 61 77 6e 28 7b 7d 2c 20 74 65 73 74 54 6c 73 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 | d.spawn({},.testTls);.....<span. |
| 12ca0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 74 68 72 65 | class="tok-kw">const</span>.thre |
| 12cc0 | 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 3e 74 72 79 3c 2f | ad2.=.<span.class="tok-kw">try</ |
| 12ce0 | 73 70 61 6e 3e 20 73 74 64 2e 54 68 72 65 61 64 2e 73 70 61 77 6e 28 7b 7d 2c 20 74 65 73 74 54 | span>.std.Thread.spawn({},.testT |
| 12d00 | 6c 73 29 3b 0a 20 20 20 20 74 65 73 74 54 6c 73 28 7b 7d 29 3b 0a 20 20 20 20 74 68 72 65 61 64 | ls);.....testTls({});.....thread |
| 12d20 | 31 2e 77 61 69 74 28 29 3b 0a 20 20 20 20 74 68 72 65 61 64 32 2e 77 61 69 74 28 29 3b 0a 7d 0a | 1.wait();.....thread2.wait();.}. |
| 12d40 | 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>. |
| 12d60 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 74 65 73 74 54 6c 73 3c 2f 73 70 | <span.class="tok-fn">testTls</sp |
| 12d80 | 61 6e 3e 28 63 6f 6e 74 65 78 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | an>(context:.<span.class="tok-ty |
| 12da0 | 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | pe">void</span>).<span.class="to |
| 12dc0 | 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 61 73 73 65 72 74 | k-type">void</span>.{.....assert |
| 12de0 | 28 78 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 | (x.==.<span.class="tok-number">1 |
| 12e00 | 32 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 | 234</span>);.....x.+=.<span.clas |
| 12e20 | 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 61 73 73 | s="tok-number">1</span>;.....ass |
| 12e40 | 65 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 | ert(x.==.<span.class="tok-number |
| 12e60 | 22 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 70 | ">1235</span>);.}</code></pre><p |
| 12e80 | 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 | re><code.class="shell">$.zig.tes |
| 12ea0 | 74 20 74 6c 73 2e 7a 69 67 0a 31 2f 31 20 74 65 73 74 20 26 71 75 6f 74 3b 74 68 72 65 61 64 20 | t.tls.zig.1/1.test."thread. |
| 12ec0 | 6c 6f 63 61 6c 20 73 74 6f 72 61 67 65 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 41 6c 6c 20 31 20 | local.storage"....OK.All.1. |
| 12ee0 | 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 | tests.passed..</code></pre>..... |
| 12f00 | 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 46 6f 72 20 3c 61 20 68 72 65 66 3d 22 23 53 69 6e 67 6c | ...<p>.......For.<a.href="#Singl |
| 12f20 | 65 2d 54 68 72 65 61 64 65 64 2d 42 75 69 6c 64 73 22 3e 53 69 6e 67 6c 65 20 54 68 72 65 61 64 | e-Threaded-Builds">Single.Thread |
| 12f40 | 65 64 20 42 75 69 6c 64 73 3c 2f 61 3e 2c 20 61 6c 6c 20 74 68 72 65 61 64 20 6c 6f 63 61 6c 20 | ed.Builds</a>,.all.thread.local. |
| 12f60 | 76 61 72 69 61 62 6c 65 73 20 61 72 65 20 74 72 65 61 74 65 64 20 61 73 20 3c 61 20 68 72 65 66 | variables.are.treated.as.<a.href |
| 12f80 | 3d 22 23 47 6c 6f 62 61 6c 2d 56 61 72 69 61 62 6c 65 73 22 3e 47 6c 6f 62 61 6c 20 56 61 72 69 | ="#Global-Variables">Global.Vari |
| 12fa0 | 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 20 20 20 3c 70 3e 0a | ables</a>........</p>.......<p>. |
| 12fc0 | 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 6c 65 73 20 6d 61 79 | ......Thread.local.variables.may |
| 12fe0 | 20 6e 6f 74 20 62 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 | .not.be.<code.class="zig"><span. |
| 13000 | 63 6c 61 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 |
| 13020 | 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 | e>........</p>...............<h2 |
| 13040 | 20 69 64 3d 22 4c 6f 63 61 6c 2d 56 61 72 69 61 62 6c 65 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 | .id="Local-Variables"><a.href="# |
| 13060 | 74 6f 63 2d 4c 6f 63 61 6c 2d 56 61 72 69 61 62 6c 65 73 22 3e 4c 6f 63 61 6c 20 56 61 72 69 61 | toc-Local-Variables">Local.Varia |
| 13080 | 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 4c | bles</a>.<a.class="hdr".href="#L |
| 130a0 | 6f 63 61 6c 2d 56 61 72 69 61 62 6c 65 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 | ocal-Variables">..</a></h2>..... |
| 130c0 | 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 4c 6f 63 61 6c 20 76 61 72 69 61 62 6c 65 73 20 6f 63 63 | ...<p>.......Local.variables.occ |
| 130e0 | 75 72 20 69 6e 73 69 64 65 20 3c 61 20 68 72 65 66 3d 22 23 46 75 6e 63 74 69 6f 6e 73 22 3e 46 | ur.inside.<a.href="#Functions">F |
| 13100 | 75 6e 63 74 69 6f 6e 73 3c 2f 61 3e 2c 20 3c 61 20 68 72 65 66 3d 22 23 63 6f 6d 70 74 69 6d 65 | unctions</a>,.<a.href="#comptime |
| 13120 | 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 61 3e 20 62 6c 6f 63 6b 73 2c 20 61 6e 64 20 3c 61 20 68 72 | ">comptime</a>.blocks,.and.<a.hr |
| 13140 | 65 66 3d 22 23 63 49 6d 70 6f 72 74 22 3e 40 63 49 6d 70 6f 72 74 3c 2f 61 3e 20 62 6c 6f 63 6b | ef="#cImport">@cImport</a>.block |
| 13160 | 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 57 68 | s........</p>.......<p>.......Wh |
| 13180 | 65 6e 20 61 20 6c 6f 63 61 6c 20 76 61 72 69 61 62 6c 65 20 69 73 20 3c 63 6f 64 65 20 63 6c 61 | en.a.local.variable.is.<code.cla |
| 131a0 | 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f | ss="zig"><span.class="tok-kw">co |
| 131c0 | 6e 73 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 69 74 20 6d 65 61 6e 73 20 74 68 61 74 | nst</span></code>,.it.means.that |
| 131e0 | 20 61 66 74 65 72 20 69 6e 69 74 69 61 6c 69 7a 61 74 69 6f 6e 2c 20 74 68 65 20 76 61 72 69 61 | .after.initialization,.the.varia |
| 13200 | 62 6c 65 27 73 0a 20 20 20 20 20 20 76 61 6c 75 65 20 77 69 6c 6c 20 6e 6f 74 20 63 68 61 6e 67 | ble's.......value.will.not.chang |
| 13220 | 65 2e 20 49 66 20 74 68 65 20 69 6e 69 74 69 61 6c 69 7a 61 74 69 6f 6e 20 76 61 6c 75 65 20 6f | e..If.the.initialization.value.o |
| 13240 | 66 20 61 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 | f.a.<code.class="zig"><span.clas |
| 13260 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 76 | s="tok-kw">const</span></code>.v |
| 13280 | 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 6d 70 74 | ariable.is.......<a.href="#compt |
| 132a0 | 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 20 74 68 | ime">comptime</a>-known,.then.th |
| 132c0 | 65 20 76 61 72 69 61 62 6c 65 20 69 73 20 61 6c 73 6f 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | e.variable.is.also.<code.class=" |
| 132e0 | 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 | zig"><span.class="tok-kw">compti |
| 13300 | 6d 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2d 6b 6e 6f 77 6e 2e 0a 20 20 20 20 20 20 3c 2f | me</span></code>-known........</ |
| 13320 | 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 41 20 6c 6f 63 61 6c 20 76 61 72 69 61 | p>.......<p>.......A.local.varia |
| 13340 | 62 6c 65 20 6d 61 79 20 62 65 20 71 75 61 6c 69 66 69 65 64 20 77 69 74 68 20 74 68 65 20 3c 63 | ble.may.be.qualified.with.the.<c |
| 13360 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ode.class="zig"><span.class="tok |
| 13380 | 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6b 65 79 77 | -kw">comptime</span></code>.keyw |
| 133a0 | 6f 72 64 2e 20 54 68 69 73 20 63 61 75 73 65 73 0a 20 20 20 20 20 20 74 68 65 20 76 61 72 69 61 | ord..This.causes.......the.varia |
| 133c0 | 62 6c 65 27 73 20 76 61 6c 75 65 20 74 6f 20 62 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a | ble's.value.to.be.<code.class="z |
| 133e0 | 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d | ig"><span.class="tok-kw">comptim |
| 13400 | 65 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 | e</span></code>-known,.and.all.l |
| 13420 | 6f 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 | oads.and.stores.of.the.......var |
| 13440 | 69 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 | iable.to.happen.during.semantic. |
| 13460 | 61 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 | analysis.of.the.program,.rather. |
| 13480 | 74 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 | than.at.runtime........All.varia |
| 134a0 | 62 6c 65 73 20 64 65 63 6c 61 72 65 64 20 69 6e 20 61 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | bles.declared.in.a.<code.class=" |
| 134c0 | 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 | zig"><span.class="tok-kw">compti |
| 134e0 | 6d 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 65 78 70 72 65 73 73 69 6f 6e 20 61 72 65 20 | me</span></code>.expression.are. |
| 13500 | 69 6d 70 6c 69 63 69 74 6c 79 0a 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | implicitly.......<code.class="zi |
| 13520 | 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 | g"><span.class="tok-kw">comptime |
| 13540 | 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 0a 20 20 20 20 20 20 | </span></code>.variables........ |
| 13560 | 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 63 6f 6d 70 74 | </p>.......<p.class="file">compt |
| 13580 | 69 6d 65 5f 76 61 72 73 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 | ime_vars.zig</p><pre><code.class |
| 135a0 | 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 | ="zig"><span.class="tok-kw">cons |
| 135c0 | 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- |
| 135e0 | 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 |
| 13600 | 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 |
| 13620 | 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 |
| 13640 | 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 |
| 13660 | 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 |
| 13680 | 3c 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 |
| 136a0 | 75 6f 74 3b 63 6f 6d 70 74 69 6d 65 20 76 61 72 73 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b | uot;comptime.vars"</span>.{ |
| 136c0 | 0a 20 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 |
| 136e0 | 70 61 6e 3e 20 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 | pan>.x:.<span.class="tok-type">i |
| 13700 | 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 |
| 13720 | 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ber">1</span>;.....<span.class=" |
| 13740 | 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 |
| 13760 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 79 3a 20 3c 73 70 61 6e | ass="tok-kw">var</span>.y:.<span |
| 13780 | 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>.=.< |
| 137a0 | 73 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> |
| 137c0 | 3b 0a 0a 20 20 20 20 78 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | ;......x.+=.<span.class="tok-num |
| 137e0 | 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 79 20 2b 3d 20 3c 73 70 61 6e 20 63 6c | ber">1</span>;.....y.+=.<span.cl |
| 13800 | 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 20 20 20 | ass="tok-number">1</span>;...... |
| 13820 | 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 6d | expect(x.==.<span.class="tok-num |
| 13840 | 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 65 78 70 65 63 74 28 79 20 3d 3d 20 | ber">2</span>);.....expect(y.==. |
| 13860 | 3c 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 |
| 13880 | 3e 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 | >);......<span.class="tok-kw">if |
| 138a0 | 3c 2f 73 70 61 6e 3e 20 28 79 20 21 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | </span>.(y.!=.<span.class="tok-n |
| 138c0 | 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e | umber">2</span>).{.........<span |
| 138e0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 69 73 20 63 6f 6d | .class="tok-comment">//.This.com |
| 13900 | 70 69 6c 65 20 65 72 72 6f 72 20 6e 65 76 65 72 20 74 72 69 67 67 65 72 73 20 62 65 63 61 75 73 | pile.error.never.triggers.becaus |
| 13920 | 65 20 79 20 69 73 20 61 20 63 6f 6d 70 74 69 6d 65 20 76 61 72 69 61 62 6c 65 2c 3c 2f 73 70 61 | e.y.is.a.comptime.variable,</spa |
| 13940 | 6e 3e 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d | n>.........<span.class="tok-comm |
| 13960 | 65 6e 74 22 3e 2f 2f 20 61 6e 64 20 73 6f 20 60 79 20 21 3d 20 32 60 20 69 73 20 61 20 63 6f 6d | ent">//.and.so.`y.!=.2`.is.a.com |
| 13980 | 70 74 69 6d 65 20 76 61 6c 75 65 2c 20 61 6e 64 20 74 68 69 73 20 69 66 20 69 73 20 73 74 61 74 | ptime.value,.and.this.if.is.stat |
| 139a0 | 69 63 61 6c 6c 79 20 65 76 61 6c 75 61 74 65 64 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 | ically.evaluated.</span>........ |
| 139c0 | 20 3c 73 70 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 |
| 139e0 | 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 6f 6b | ileError</span>(<span.class="tok |
| 13a00 | 2d 73 74 72 22 3e 26 71 75 6f 74 3b 77 72 6f 6e 67 20 79 20 76 61 6c 75 65 26 71 75 6f 74 3b 3c | -str">"wrong.y.value"< |
| 13a20 | 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 7d 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 | /span>);.....}.}</code></pre><pr |
| 13a40 | 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 | e><code.class="shell">$.zig.test |
| 13a60 | 20 63 6f 6d 70 74 69 6d 65 5f 76 61 72 73 2e 7a 69 67 0a 31 2f 31 20 74 65 73 74 20 26 71 75 6f | .comptime_vars.zig.1/1.test.&quo |
| 13a80 | 74 3b 63 6f 6d 70 74 69 6d 65 20 76 61 72 73 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 41 6c 6c 20 | t;comptime.vars"....OK.All. |
| 13aa0 | 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 | 1.tests.passed..</code></pre>... |
| 13ac0 | 20 20 20 20 20 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 31 20 69 64 3d 22 49 6e 74 65 | ....................<h1.id="Inte |
| 13ae0 | 67 65 72 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 49 6e 74 65 67 65 72 73 22 3e 49 6e | gers"><a.href="#toc-Integers">In |
| 13b00 | 74 65 67 65 72 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 | tegers</a>.<a.class="hdr".href=" |
| 13b20 | 23 49 6e 74 65 67 65 72 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 31 3e 0a 0a 20 20 20 20 20 20 3c 68 | #Integers">..</a></h1>........<h |
| 13b40 | 32 20 69 64 3d 22 49 6e 74 65 67 65 72 2d 4c 69 74 65 72 61 6c 73 22 3e 3c 61 20 68 72 65 66 3d | 2.id="Integer-Literals"><a.href= |
| 13b60 | 22 23 74 6f 63 2d 49 6e 74 65 67 65 72 2d 4c 69 74 65 72 61 6c 73 22 3e 49 6e 74 65 67 65 72 20 | "#toc-Integer-Literals">Integer. |
| 13b80 | 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 |
| 13ba0 | 3d 22 23 49 6e 74 65 67 65 72 2d 4c 69 74 65 72 61 6c 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e | ="#Integer-Literals">..</a></h2> |
| 13bc0 | 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c | ........<pre><code.class="zig">< |
| 13be0 | 73 70 61 6e 20 63 6c 61 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> |
| 13c00 | 20 64 65 63 69 6d 61 6c 5f 69 6e 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | .decimal_int.=.<span.class="tok- |
| 13c20 | 6e 75 6d 62 65 72 22 3e 39 38 32 32 32 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 | number">98222</span>;.<span.clas |
| 13c40 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 68 65 78 5f 69 6e 74 20 | s="tok-kw">const</span>.hex_int. |
| 13c60 | 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 66 66 3c | =.<span.class="tok-number">0xff< |
| 13c80 | 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e | /span>;.<span.class="tok-kw">con |
| 13ca0 | 73 74 3c 2f 73 70 61 6e 3e 20 61 6e 6f 74 68 65 72 5f 68 65 78 5f 69 6e 74 20 3d 20 3c 73 70 61 | st</span>.another_hex_int.=.<spa |
| 13cc0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 46 46 3c 2f 73 70 61 6e 3e | n.class="tok-number">0xFF</span> |
| 13ce0 | 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 |
| 13d00 | 61 6e 3e 20 6f 63 74 61 6c 5f 69 6e 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | an>.octal_int.=.<span.class="tok |
| 13d20 | 2d 6e 75 6d 62 65 72 22 3e 30 6f 37 35 35 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 | -number">0o755</span>;.<span.cla |
| 13d40 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 62 69 6e 61 72 79 5f | ss="tok-kw">const</span>.binary_ |
| 13d60 | 69 6e 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 | int.=.<span.class="tok-number">0 |
| 13d80 | 62 31 31 31 31 30 30 30 30 3c 2f 73 70 61 6e 3e 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | b11110000</span>;..<span.class=" |
| 13da0 | 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 75 6e 64 65 72 73 63 6f 72 65 73 20 6d 61 79 20 | tok-comment">//.underscores.may. |
| 13dc0 | 62 65 20 70 6c 61 63 65 64 20 62 65 74 77 65 65 6e 20 74 77 6f 20 64 69 67 69 74 73 20 61 73 20 | be.placed.between.two.digits.as. |
| 13de0 | 61 20 76 69 73 75 61 6c 20 73 65 70 61 72 61 74 6f 72 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 | a.visual.separator</span>.<span. |
| 13e00 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6f 6e 65 5f | class="tok-kw">const</span>.one_ |
| 13e20 | 62 69 6c 6c 69 6f 6e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | billion.=.<span.class="tok-numbe |
| 13e40 | 72 22 3e 31 5f 30 30 30 5f 30 30 30 5f 30 30 30 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 | r">1_000_000_000</span>;.<span.c |
| 13e60 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 62 69 6e 61 72 | lass="tok-kw">const</span>.binar |
| 13e80 | 79 5f 6d 61 73 6b 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | y_mask.=.<span.class="tok-number |
| 13ea0 | 22 3e 30 62 31 5f 31 31 31 31 5f 31 31 31 31 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c | ">0b1_1111_1111</span>;.<span.cl |
| 13ec0 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 70 65 72 6d 69 73 | ass="tok-kw">const</span>.permis |
| 13ee0 | 73 69 6f 6e 73 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 | sions.=.<span.class="tok-number" |
| 13f00 | 3e 30 6f 37 5f 35 5f 35 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | >0o7_5_5</span>;.<span.class="to |
| 13f20 | 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 62 69 67 5f 61 64 64 72 65 73 73 20 3d | k-kw">const</span>.big_address.= |
| 13f40 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 46 46 38 30 | .<span.class="tok-number">0xFF80 |
| 13f60 | 5f 30 30 30 30 5f 30 30 30 30 5f 30 30 30 30 3c 2f 73 70 61 6e 3e 3b 3c 2f 63 6f 64 65 3e 3c 2f | _0000_0000_0000</span>;</code></ |
| 13f80 | 70 72 65 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 52 75 6e 74 69 6d | pre>..............<h2.id="Runtim |
| 13fa0 | 65 2d 49 6e 74 65 67 65 72 2d 56 61 6c 75 65 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d | e-Integer-Values"><a.href="#toc- |
| 13fc0 | 52 75 6e 74 69 6d 65 2d 49 6e 74 65 67 65 72 2d 56 61 6c 75 65 73 22 3e 52 75 6e 74 69 6d 65 20 | Runtime-Integer-Values">Runtime. |
| 13fe0 | 49 6e 74 65 67 65 72 20 56 61 6c 75 65 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 | Integer.Values</a>.<a.class="hdr |
| 14000 | 22 20 68 72 65 66 3d 22 23 52 75 6e 74 69 6d 65 2d 49 6e 74 65 67 65 72 2d 56 61 6c 75 65 73 22 | ".href="#Runtime-Integer-Values" |
| 14020 | 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 6e | >..</a></h2>........<p>.......In |
| 14040 | 74 65 67 65 72 20 6c 69 74 65 72 61 6c 73 20 68 61 76 65 20 6e 6f 20 73 69 7a 65 20 6c 69 6d 69 | teger.literals.have.no.size.limi |
| 14060 | 74 61 74 69 6f 6e 2c 20 61 6e 64 20 69 66 20 61 6e 79 20 75 6e 64 65 66 69 6e 65 64 20 62 65 68 | tation,.and.if.any.undefined.beh |
| 14080 | 61 76 69 6f 72 20 6f 63 63 75 72 73 2c 0a 20 20 20 20 20 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 | avior.occurs,.......the.compiler |
| 140a0 | 20 63 61 74 63 68 65 73 20 69 74 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 | .catches.it........</p>.......<p |
| 140c0 | 3e 0a 20 20 20 20 20 20 48 6f 77 65 76 65 72 2c 20 6f 6e 63 65 20 61 6e 20 69 6e 74 65 67 65 72 | >.......However,.once.an.integer |
| 140e0 | 20 76 61 6c 75 65 20 69 73 20 6e 6f 20 6c 6f 6e 67 65 72 20 6b 6e 6f 77 6e 20 61 74 20 63 6f 6d | .value.is.no.longer.known.at.com |
| 14100 | 70 69 6c 65 2d 74 69 6d 65 2c 20 69 74 20 6d 75 73 74 20 68 61 76 65 20 61 0a 20 20 20 20 20 20 | pile-time,.it.must.have.a....... |
| 14120 | 6b 6e 6f 77 6e 20 73 69 7a 65 2c 20 61 6e 64 20 69 73 20 76 75 6c 6e 65 72 61 62 6c 65 20 74 6f | known.size,.and.is.vulnerable.to |
| 14140 | 20 75 6e 64 65 66 69 6e 65 64 20 62 65 68 61 76 69 6f 72 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a | .undefined.behavior........</p>. |
| 14160 | 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 | ......<pre><code.class="zig"><sp |
| 14180 | 61 6e 20 63 6c 61 73 73 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 |
| 141a0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 64 69 76 69 64 65 3c 2f 73 70 61 6e 3e 28 61 | n.class="tok-fn">divide</span>(a |
| 141c0 | 3a 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 |
| 141e0 | 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 69 | an>,.b:.<span.class="tok-type">i |
| 14200 | 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 |
| 14220 | 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 22 | ">i32</span>.{.....<span.class=" |
| 14240 | 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 61 20 2f 20 62 3b 0a 7d 3c 2f | tok-kw">return</span>.a./.b;.}</ |
| 14260 | 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 6e 20 74 | code></pre>.......<p>.......In.t |
| 14280 | 68 69 73 20 66 75 6e 63 74 69 6f 6e 2c 20 76 61 6c 75 65 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 | his.function,.values.<code.class |
| 142a0 | 3d 22 7a 69 67 22 3e 61 3c 2f 63 6f 64 65 3e 20 61 6e 64 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d | ="zig">a</code>.and.<code.class= |
| 142c0 | 22 7a 69 67 22 3e 62 3c 2f 63 6f 64 65 3e 20 61 72 65 20 6b 6e 6f 77 6e 20 6f 6e 6c 79 20 61 74 | "zig">b</code>.are.known.only.at |
| 142e0 | 20 72 75 6e 74 69 6d 65 2c 0a 20 20 20 20 20 20 61 6e 64 20 74 68 75 73 20 74 68 69 73 20 64 69 | .runtime,.......and.thus.this.di |
| 14300 | 76 69 73 69 6f 6e 20 6f 70 65 72 61 74 69 6f 6e 20 69 73 20 76 75 6c 6e 65 72 61 62 6c 65 20 74 | vision.operation.is.vulnerable.t |
| 14320 | 6f 20 62 6f 74 68 20 3c 61 20 68 72 65 66 3d 22 23 49 6e 74 65 67 65 72 2d 4f 76 65 72 66 6c 6f | o.both.<a.href="#Integer-Overflo |
| 14340 | 77 22 3e 49 6e 74 65 67 65 72 20 4f 76 65 72 66 6c 6f 77 3c 2f 61 3e 20 61 6e 64 0a 20 20 20 20 | w">Integer.Overflow</a>.and..... |
| 14360 | 20 20 3c 61 20 68 72 65 66 3d 22 23 44 69 76 69 73 69 6f 6e 2d 62 79 2d 5a 65 72 6f 22 3e 44 69 | ..<a.href="#Division-by-Zero">Di |
| 14380 | 76 69 73 69 6f 6e 20 62 79 20 5a 65 72 6f 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 | vision.by.Zero</a>........</p>.. |
| 143a0 | 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 4f 70 65 72 61 74 6f 72 73 20 73 75 63 68 20 61 73 | .....<p>.......Operators.such.as |
| 143c0 | 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 2b 3c 2f 63 6f 64 65 3e 20 61 6e 64 20 | .<code.class="zig">+</code>.and. |
| 143e0 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 2d 3c 2f 63 6f 64 65 3e 20 63 61 75 73 65 | <code.class="zig">-</code>.cause |
| 14400 | 20 75 6e 64 65 66 69 6e 65 64 20 62 65 68 61 76 69 6f 72 20 6f 6e 0a 20 20 20 20 20 20 20 20 20 | .undefined.behavior.on.......... |
| 14420 | 20 20 20 20 20 69 6e 74 65 67 65 72 20 6f 76 65 72 66 6c 6f 77 2e 20 41 6c 73 6f 20 61 76 61 69 | .....integer.overflow..Also.avai |
| 14440 | 6c 61 62 6c 65 20 61 72 65 20 6f 70 65 72 61 74 69 6f 6e 73 20 73 75 63 68 20 61 73 20 3c 63 6f | lable.are.operations.such.as.<co |
| 14460 | 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 2b 25 3c 2f 63 6f 64 65 3e 20 61 6e 64 0a 20 20 20 | de.class="zig">+%</code>.and.... |
| 14480 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | ...............<code.class="zig" |
| 144a0 | 3e 2d 25 3c 2f 63 6f 64 65 3e 20 77 68 69 63 68 20 61 72 65 20 64 65 66 69 6e 65 64 20 74 6f 20 | >-%</code>.which.are.defined.to. |
| 144c0 | 68 61 76 65 20 77 72 61 70 70 69 6e 67 20 61 72 69 74 68 6d 65 74 69 63 20 6f 6e 20 61 6c 6c 20 | have.wrapping.arithmetic.on.all. |
| 144e0 | 74 61 72 67 65 74 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 | targets........</p>.......<p>... |
| 14500 | 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 74 2d 77 | ....Zig.supports.arbitrary.bit-w |
| 14520 | 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 75 73 69 | idth.integers,.referenced.by.usi |
| 14540 | 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 64 65 3e | ng.......an.identifier.of.<code> |
| 14560 | 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 6c 6c 6f | i</code>.or.<code>u</code>.follo |
| 14580 | 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 68 65 20 | wed.by.digits..For.example,.the. |
| 145a0 | 69 64 65 6e 74 69 66 69 65 72 0a 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | identifier.......<code.class="zi |
| 145c0 | 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 37 3c 2f 73 70 | g"><span.class="tok-type">i7</sp |
| 145e0 | 61 6e 3e 3c 2f 63 6f 64 65 3e 20 72 65 66 65 72 73 20 74 6f 20 61 20 73 69 67 6e 65 64 20 37 2d | an></code>.refers.to.a.signed.7- |
| 14600 | 62 69 74 20 69 6e 74 65 67 65 72 2e 20 54 68 65 20 6d 61 78 69 6d 75 6d 20 61 6c 6c 6f 77 65 64 | bit.integer..The.maximum.allowed |
| 14620 | 20 62 69 74 2d 77 69 64 74 68 20 6f 66 20 61 6e 0a 20 20 20 20 20 20 69 6e 74 65 67 65 72 20 74 | .bit-width.of.an.......integer.t |
| 14640 | 79 70 65 20 69 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 | ype.is.<code.class="zig"><span.c |
| 14660 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 36 35 35 33 35 3c 2f 73 70 61 6e 3e 3c 2f | lass="tok-number">65535</span></ |
| 14680 | 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 |
| 146a0 | 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 57 72 61 70 70 | lso:</p><ul>.<li><a.href="#Wrapp |
| 146c0 | 69 6e 67 2d 4f 70 65 72 61 74 69 6f 6e 73 22 3e 57 72 61 70 70 69 6e 67 20 4f 70 65 72 61 74 69 | ing-Operations">Wrapping.Operati |
| 146e0 | 6f 6e 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 | ons</a></li>.</ul>.............. |
| 14700 | 20 0a 20 20 20 20 20 20 3c 68 31 20 69 64 3d 22 46 6c 6f 61 74 73 22 3e 3c 61 20 68 72 65 66 3d | ........<h1.id="Floats"><a.href= |
| 14720 | 22 23 74 6f 63 2d 46 6c 6f 61 74 73 22 3e 46 6c 6f 61 74 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 | "#toc-Floats">Floats</a>.<a.clas |
| 14740 | 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 | s="hdr".href="#Floats">..</a></h |
| 14760 | 31 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 5a 69 67 20 68 61 73 20 74 68 65 20 66 6f 6c 6c 6f 77 69 | 1>........<p>Zig.has.the.followi |
| 14780 | 6e 67 20 66 6c 6f 61 74 69 6e 67 20 70 6f 69 6e 74 20 74 79 70 65 73 3a 3c 2f 70 3e 0a 20 20 20 | ng.floating.point.types:</p>.... |
| 147a0 | 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 | ...<ul>...........<li><code.clas |
| 147c0 | 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 | s="zig"><span.class="tok-type">f |
| 147e0 | 31 36 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 2d 20 49 45 45 45 2d 37 35 34 2d 32 30 30 38 | 16</span></code>.-.IEEE-754-2008 |
| 14800 | 20 62 69 6e 61 72 79 31 36 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f | .binary16</li>...........<li><co |
| 14820 | 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | de.class="zig"><span.class="tok- |
| 14840 | 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 2d 20 49 45 45 45 2d 37 | type">f32</span></code>.-.IEEE-7 |
| 14860 | 35 34 2d 32 30 30 38 20 62 69 6e 61 72 79 33 32 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 | 54-2008.binary32</li>........... |
| 14880 | 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 | <li><code.class="zig"><span.clas |
| 148a0 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 36 34 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 2d | s="tok-type">f64</span></code>.- |
| 148c0 | 20 49 45 45 45 2d 37 35 34 2d 32 30 30 38 20 62 69 6e 61 72 79 36 34 3c 2f 6c 69 3e 0a 20 20 20 | .IEEE-754-2008.binary64</li>.... |
| 148e0 | 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 | .......<li><code.class="zig"><sp |
| 14900 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 31 32 38 3c 2f 73 70 61 6e 3e 3c | an.class="tok-type">f128</span>< |
| 14920 | 2f 63 6f 64 65 3e 20 2d 20 49 45 45 45 2d 37 35 34 2d 32 30 30 38 20 62 69 6e 61 72 79 31 32 38 | /code>.-.IEEE-754-2008.binary128 |
| 14940 | 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d | </li>...........<li><code.class= |
| 14960 | 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 63 5f 6c | "zig"><span.class="tok-type">c_l |
| 14980 | 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 74 63 68 65 | ongdouble</span></code>.-.matche |
| 149a0 | 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 65 3c 2f 63 | s.<code.class="c">long.double</c |
| 149c0 | 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 69 3e 0a 20 | ode>.for.the.target.C.ABI</li>.. |
| 149e0 | 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 46 6c 6f 61 74 2d 4c | .....</ul>.......<h2.id="Float-L |
| 14a00 | 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 2d 4c 69 74 | iterals"><a.href="#toc-Float-Lit |
| 14a20 | 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 20 63 6c 61 | erals">Float.Literals</a>.<a.cla |
| 14a40 | 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 6c 73 22 3e | ss="hdr".href="#Float-Literals"> |
| 14a60 | 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 46 6c 6f | ..</a></h2>........<p>.......Flo |
| 14a80 | 61 74 20 6c 69 74 65 72 61 6c 73 20 68 61 76 65 20 74 79 70 65 20 3c 63 6f 64 65 20 63 6c 61 73 | at.literals.have.type.<code.clas |
| 14aa0 | 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 63 | s="zig"><span.class="tok-type">c |
| 14ac0 | 6f 6d 70 74 69 6d 65 5f 66 6c 6f 61 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 77 68 69 63 | omptime_float</span></code>.whic |
| 14ae0 | 68 20 69 73 20 67 75 61 72 61 6e 74 65 65 64 20 74 6f 20 68 61 76 65 0a 20 20 20 20 20 20 74 68 | h.is.guaranteed.to.have.......th |
| 14b00 | 65 20 73 61 6d 65 20 70 72 65 63 69 73 69 6f 6e 20 61 6e 64 20 6f 70 65 72 61 74 69 6f 6e 73 20 | e.same.precision.and.operations. |
| 14b20 | 6f 66 20 74 68 65 20 6c 61 72 67 65 73 74 20 6f 74 68 65 72 20 66 6c 6f 61 74 69 6e 67 20 70 6f | of.the.largest.other.floating.po |
| 14b40 | 69 6e 74 20 74 79 70 65 2c 20 77 68 69 63 68 20 69 73 0a 20 20 20 20 20 20 3c 63 6f 64 65 20 63 | int.type,.which.is.......<code.c |
| 14b60 | 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | lass="zig"><span.class="tok-type |
| 14b80 | 22 3e 66 31 32 38 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e | ">f128</span></code>........</p> |
| 14ba0 | 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 46 6c 6f 61 74 20 6c 69 74 65 72 61 6c 73 20 | .......<p>.......Float.literals. |
| 14bc0 | 3c 61 20 68 72 65 66 3d 22 23 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 22 3e 63 6f 65 72 63 65 3c | <a.href="#Type-Coercion">coerce< |
| 14be0 | 2f 61 3e 20 74 6f 20 61 6e 79 20 66 6c 6f 61 74 69 6e 67 20 70 6f 69 6e 74 20 74 79 70 65 2c 0a | /a>.to.any.floating.point.type,. |
| 14c00 | 20 20 20 20 20 20 61 6e 64 20 74 6f 20 61 6e 79 20 3c 61 20 68 72 65 66 3d 22 23 49 6e 74 65 67 | ......and.to.any.<a.href="#Integ |
| 14c20 | 65 72 73 22 3e 69 6e 74 65 67 65 72 3c 2f 61 3e 20 74 79 70 65 20 77 68 65 6e 20 74 68 65 72 65 | ers">integer</a>.type.when.there |
| 14c40 | 20 69 73 20 6e 6f 20 66 72 61 63 74 69 6f 6e 61 6c 20 63 6f 6d 70 6f 6e 65 6e 74 2e 0a 20 20 20 | .is.no.fractional.component..... |
| 14c60 | 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | ...</p>.......<pre><code.class=" |
| 14c80 | 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c | zig"><span.class="tok-kw">const< |
| 14ca0 | 2f 73 70 61 6e 3e 20 66 6c 6f 61 74 69 6e 67 5f 70 6f 69 6e 74 20 3d 20 3c 73 70 61 6e 20 63 6c | /span>.floating_point.=.<span.cl |
| 14cc0 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 2e 30 45 2b 37 37 3c 2f 73 70 61 6e | ass="tok-number">123.0E+77</span |
| 14ce0 | 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 |
| 14d00 | 70 61 6e 3e 20 61 6e 6f 74 68 65 72 5f 66 6c 6f 61 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | pan>.another_float.=.<span.class |
| 14d20 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 2e 30 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 | ="tok-number">123.0</span>;.<spa |
| 14d40 | 6e 20 63 6c 61 73 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 | n.class="tok-kw">const</span>.ye |
| 14d60 | 74 5f 61 6e 6f 74 68 65 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | t_another.=.<span.class="tok-num |
| 14d80 | 62 65 72 22 3e 31 32 33 2e 30 65 2b 37 37 3c 2f 73 70 61 6e 3e 3b 0a 0a 3c 73 70 61 6e 20 63 6c | ber">123.0e+77</span>;..<span.cl |
| 14da0 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 68 65 78 5f 66 6c | ass="tok-kw">const</span>.hex_fl |
| 14dc0 | 6f 61 74 69 6e 67 5f 70 6f 69 6e 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | oating_point.=.<span.class="tok- |
| 14de0 | 6e 75 6d 62 65 72 22 3e 30 78 31 30 33 2e 37 30 70 2d 35 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 | number">0x103.70p-5</span>;.<spa |
| 14e00 | 6e 20 63 6c 61 73 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 | n.class="tok-kw">const</span>.an |
| 14e20 | 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 74 | other_hex_float.=.<span.class="t |
| 14e40 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 31 30 33 2e 37 30 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 | ok-number">0x103.70</span>;.<spa |
| 14e60 | 6e 20 63 6c 61 73 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 | n.class="tok-kw">const</span>.ye |
| 14e80 | 74 5f 61 6e 6f 74 68 65 72 5f 68 65 78 5f 66 6c 6f 61 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | t_another_hex_float.=.<span.clas |
| 14ea0 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 31 30 33 2e 37 30 50 2d 35 3c 2f 73 70 61 6e | s="tok-number">0x103.70P-5</span |
| 14ec0 | 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">// |
| 14ee0 | 20 75 6e 64 65 72 73 63 6f 72 65 73 20 6d 61 79 20 62 65 20 70 6c 61 63 65 64 20 62 65 74 77 65 | .underscores.may.be.placed.betwe |
| 14f00 | 65 6e 20 74 77 6f 20 64 69 67 69 74 73 20 61 73 20 61 20 76 69 73 75 61 6c 20 73 65 70 61 72 61 | en.two.digits.as.a.visual.separa |
| 14f20 | 74 6f 72 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | tor</span>.<span.class="tok-kw"> |
| 14f40 | 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6c 69 67 68 74 73 70 65 65 64 20 3d 20 3c 73 70 61 6e 20 | const</span>.lightspeed.=.<span. |
| 14f60 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 39 39 5f 37 39 32 5f 34 35 38 2e 30 | class="tok-number">299_792_458.0 |
| 14f80 | 30 30 5f 30 30 30 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | 00_000</span>;.<span.class="tok- |
| 14fa0 | 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6e 61 6e 6f 73 65 63 6f 6e 64 20 3d 20 3c 73 | kw">const</span>.nanosecond.=.<s |
| 14fc0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 2e 30 30 30 5f 30 30 30 | pan.class="tok-number">0.000_000 |
| 14fe0 | 5f 30 30 31 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | _001</span>;.<span.class="tok-kw |
| 15000 | 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6d 6f 72 65 5f 68 65 78 20 3d 20 3c 73 70 61 6e 20 | ">const</span>.more_hex.=.<span. |
| 15020 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 31 32 33 34 5f 35 36 37 38 2e 39 | class="tok-number">0x1234_5678.9 |
| 15040 | 41 42 43 5f 43 44 45 46 70 2d 31 30 3c 2f 73 70 61 6e 3e 3b 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 | ABC_CDEFp-10</span>;</code></pre |
| 15060 | 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 72 65 20 69 73 20 6e 6f 20 73 79 | >.......<p>.......There.is.no.sy |
| 15080 | 6e 74 61 78 20 66 6f 72 20 4e 61 4e 2c 20 69 6e 66 69 6e 69 74 79 2c 20 6f 72 20 6e 65 67 61 74 | ntax.for.NaN,.infinity,.or.negat |
| 150a0 | 69 76 65 20 69 6e 66 69 6e 69 74 79 2e 20 46 6f 72 20 74 68 65 73 65 20 73 70 65 63 69 61 6c 20 | ive.infinity..For.these.special. |
| 150c0 | 76 61 6c 75 65 73 2c 0a 20 20 20 20 20 20 6f 6e 65 20 6d 75 73 74 20 75 73 65 20 74 68 65 20 73 | values,.......one.must.use.the.s |
| 150e0 | 74 61 6e 64 61 72 64 20 6c 69 62 72 61 72 79 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 | tandard.library:.......</p>..... |
| 15100 | 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 | ..<pre><code.class="zig"><span.c |
| 15120 | 6c 61 73 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.= |
| 15140 | 20 3c 73 70 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 |
| 15160 | 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"> |
| 15180 | 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. |
| 151a0 | 63 6c 61 73 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 | class="tok-kw">const</span>.inf. |
| 151c0 | 3d 20 73 74 64 2e 6d 61 74 68 2e 69 6e 66 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | =.std.math.inf(<span.class="tok- |
| 151e0 | 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 29 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | type">f32</span>);.<span.class=" |
| 15200 | 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6e 65 67 61 74 69 76 65 5f 69 6e | tok-kw">const</span>.negative_in |
| 15220 | 66 20 3d 20 2d 73 74 64 2e 6d 61 74 68 2e 69 6e 66 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | f.=.-std.math.inf(<span.class="t |
| 15240 | 6f 6b 2d 74 79 70 65 22 3e 66 36 34 3c 2f 73 70 61 6e 3e 29 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 | ok-type">f64</span>);.<span.clas |
| 15260 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6e 61 6e 20 3d 20 73 74 | s="tok-kw">const</span>.nan.=.st |
| 15280 | 64 2e 6d 61 74 68 2e 6e 61 6e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | d.math.nan(<span.class="tok-type |
| 152a0 | 22 3e 66 31 32 38 3c 2f 73 70 61 6e 3e 29 3b 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 | ">f128</span>);</code></pre>.... |
| 152c0 | 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 46 6c 6f 61 74 69 6e 67 2d 50 6f 69 6e 74 | ..........<h2.id="Floating-Point |
| 152e0 | 2d 4f 70 65 72 61 74 69 6f 6e 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 46 6c 6f 61 74 | -Operations"><a.href="#toc-Float |
| 15300 | 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 50 | ing-Point-Operations">Floating.P |
| 15320 | 6f 69 6e 74 20 4f 70 65 72 61 74 69 6f 6e 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 | oint.Operations</a>.<a.class="hd |
| 15340 | 72 22 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 69 6e 67 2d 50 6f 69 6e 74 2d 4f 70 65 72 61 74 69 | r".href="#Floating-Point-Operati |
| 15360 | 6f 6e 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 42 79 20 64 65 | ons">..</a></h2>........<p>By.de |
| 15380 | 66 61 75 6c 74 20 66 6c 6f 61 74 69 6e 67 20 70 6f 69 6e 74 20 6f 70 65 72 61 74 69 6f 6e 73 20 | fault.floating.point.operations. |
| 153a0 | 75 73 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 53 74 72 69 63 74 3c 2f 63 6f | use.<code.class="zig">Strict</co |
| 153c0 | 64 65 3e 20 6d 6f 64 65 2c 0a 20 20 20 20 20 20 20 20 20 20 62 75 74 20 79 6f 75 20 63 61 6e 20 | de>.mode,...........but.you.can. |
| 153e0 | 73 77 69 74 63 68 20 74 6f 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 4f 70 74 69 | switch.to.<code.class="zig">Opti |
| 15400 | 6d 69 7a 65 64 3c 2f 63 6f 64 65 3e 20 6d 6f 64 65 20 6f 6e 20 61 20 70 65 72 2d 62 6c 6f 63 6b | mized</code>.mode.on.a.per-block |
| 15420 | 20 62 61 73 69 73 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 | .basis:</p>.......<p.class="file |
| 15440 | 22 3e 66 6f 6f 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a | ">foo.zig</p><pre><code.class="z |
| 15460 | 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f | ig"><span.class="tok-kw">const</ |
| 15480 | 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 |
| 154a0 | 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 |
| 154c0 | 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 |
| 154e0 | 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</ |
| 15500 | 73 70 61 6e 3e 20 62 75 69 6c 74 69 6e 20 3d 20 73 74 64 2e 62 75 69 6c 74 69 6e 3b 0a 3c 73 70 | span>.builtin.=.std.builtin;.<sp |
| 15520 | 61 6e 20 63 6c 61 73 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 |
| 15540 | 69 67 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 | ig.=.<span.class="tok-builtin">@ |
| 15560 | 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" |
| 15580 | 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 75 | >f64</span>,.<span.class="tok-nu |
| 155a0 | 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 20 26 6c 74 3b 26 6c 74 3b 20 3c 73 70 61 6e 20 63 6c | mber">1</span>.<<.<span.cl |
| 155c0 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 30 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 3c 73 | ass="tok-number">40</span>);..<s |
| 155e0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 78 70 6f 72 74 3c 2f 73 70 61 6e 3e | pan.class="tok-kw">export</span> |
| 15600 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 | .<span.class="tok-kw">fn</span>. |
| 15620 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 66 6f 6f 5f 73 74 72 69 63 74 3c | <span.class="tok-fn">foo_strict< |
| 15640 | 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 22 | /span>(x:.<span.class="tok-type" |
| 15660 | 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 79 | >f64</span>).<span.class="tok-ty |
| 15680 | 70 65 22 3e 66 36 34 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | pe">f64</span>.{.....<span.class |
| 156a0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 78 20 2b 20 62 69 67 20 | ="tok-kw">return</span>.x.+.big. |
| 156c0 | 2d 20 62 69 67 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 | -.big;.}..<span.class="tok-kw">e |
| 156e0 | 78 70 6f 72 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | xport</span>.<span.class="tok-kw |
| 15700 | 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" |
| 15720 | 3e 66 6f 6f 5f 6f 70 74 69 6d 69 7a 65 64 3c 2f 73 70 61 6e 3e 28 78 3a 20 3c 73 70 61 6e 20 63 | >foo_optimized</span>(x:.<span.c |
| 15740 | 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 36 34 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 | lass="tok-type">f64</span>).<spa |
| 15760 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 36 34 3c 2f 73 70 61 6e 3e 20 7b 0a | n.class="tok-type">f64</span>.{. |
| 15780 | 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 73 | ....<span.class="tok-builtin">@s |
| 157a0 | 65 74 46 6c 6f 61 74 4d 6f 64 65 3c 2f 73 70 61 6e 3e 28 2e 4f 70 74 69 6d 69 7a 65 64 29 3b 0a | etFloatMode</span>(.Optimized);. |
| 157c0 | 20 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< |
| 157e0 | 2f 73 70 61 6e 3e 20 78 20 2b 20 62 69 67 20 2d 20 62 69 67 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f | /span>.x.+.big.-.big;.}</code></ |
| 15800 | 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a | pre><pre><code.class="shell">$.z |
| 15820 | 69 67 20 62 75 69 6c 64 2d 6f 62 6a 20 66 6f 6f 2e 7a 69 67 20 2d 4f 20 52 65 6c 65 61 73 65 46 | ig.build-obj.foo.zig.-O.ReleaseF |
| 15840 | 61 73 74 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 46 6f 72 20 74 | ast</code></pre>........<p>For.t |
| 15860 | 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 |
| 15880 | 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.-....... |
| 158a0 | 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. |
| 158c0 | 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 |
| 158e0 | 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 |
| 15900 | 63 74 20 6d 6f 64 65 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c | ct.mode.</p>.......<p.class="fil |
| 15920 | 65 22 3e 66 6c 6f 61 74 5f 6d 6f 64 65 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 | e">float_mode.zig</p><pre><code. |
| 15940 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | class="zig"><span.class="tok-kw" |
| 15960 | 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 |
| 15980 | 73 3d 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>(< |
| 159a0 | 73 70 61 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 |
| 159c0 | 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 64 65 62 75 67 2e 70 72 69 6e 74 3b 0a 0a 3c 73 70 61 6e | uot;</span>).debug.print;..<span |
| 159e0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 78 74 65 72 6e 3c 2f 73 70 61 6e 3e 20 3c 73 | .class="tok-kw">extern</span>.<s |
| 15a00 | 70 61 6e 20 63 6c 61 73 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 |
| 15a20 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 66 6f 6f 5f 73 74 72 69 63 74 3c 2f 73 70 | an.class="tok-fn">foo_strict</sp |
| 15a40 | 61 6e 3e 28 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 36 | an>(x:.<span.class="tok-type">f6 |
| 15a60 | 34 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 | 4</span>).<span.class="tok-type" |
| 15a80 | 3e 66 36 34 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | >f64</span>;.<span.class="tok-kw |
| 15aa0 | 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 6f 6b | ">extern</span>.<span.class="tok |
| 15ac0 | 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- |
| 15ae0 | 66 6e 22 3e 66 6f 6f 5f 6f 70 74 69 6d 69 7a 65 64 3c 2f 73 70 61 6e 3e 28 78 3a 20 3c 73 70 61 | fn">foo_optimized</span>(x:.<spa |
| 15b00 | 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 3c | n.class="tok-type">f64</span>).< |
| 15b20 | 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> |
| 15b40 | 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 |
| 15b60 | 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 |
| 15b80 | 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 |
| 15ba0 | 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 |
| 15bc0 | 3c 2f 73 70 61 6e 3e 20 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 |
| 15be0 | 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 78 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | w">const</span>.x.=.<span.class= |
| 15c00 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 2e 30 30 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 70 | "tok-number">0.001</span>;.....p |
| 15c20 | 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">" |
| 15c40 | 3b 6f 70 74 69 6d 69 7a 65 64 20 3d 20 7b 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 | ;optimized.=.{}\n"</span>,. |
| 15c60 | 2e 7b 66 6f 6f 5f 6f 70 74 69 6d 69 7a 65 64 28 78 29 7d 29 3b 0a 20 20 20 20 70 72 69 6e 74 28 | .{foo_optimized(x)});.....print( |
| 15c80 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 72 69 | <span.class="tok-str">"stri |
| 15ca0 | 63 74 20 3d 20 7b 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 66 6f 6f 5f 73 74 | ct.=.{}\n"</span>,..{foo_st |
| 15cc0 | 72 69 63 74 28 78 29 7d 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 | rict(x)});.}</code></pre><pre><c |
| 15ce0 | 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 62 75 69 6c 64 2d 65 78 | ode.class="shell">$.zig.build-ex |
| 15d00 | 65 20 66 6c 6f 61 74 5f 6d 6f 64 65 2e 7a 69 67 20 66 6f 6f 2e 6f 0a 24 20 2e 2f 66 6c 6f 61 74 | e.float_mode.zig.foo.o.$../float |
| 15d20 | 5f 6d 6f 64 65 0a 6f 70 74 69 6d 69 7a 65 64 20 3d 20 31 2e 30 65 2d 30 33 0a 73 74 72 69 63 74 | _mode.optimized.=.1.0e-03.strict |
| 15d40 | 20 3d 20 39 2e 37 36 35 36 32 35 65 2d 30 34 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 | .=.9.765625e-04.</code></pre>... |
| 15d60 | 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 |
| 15d80 | 20 68 72 65 66 3d 22 23 73 65 74 46 6c 6f 61 74 4d 6f 64 65 22 3e 40 73 65 74 46 6c 6f 61 74 4d | .href="#setFloatMode">@setFloatM |
| 15da0 | 6f 64 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 44 69 76 69 73 | ode</a></li>.<li><a.href="#Divis |
| 15dc0 | 69 6f 6e 2d 62 79 2d 5a 65 72 6f 22 3e 44 69 76 69 73 69 6f 6e 20 62 79 20 5a 65 72 6f 3c 2f 61 | ion-by-Zero">Division.by.Zero</a |
| 15de0 | 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 0a 20 20 20 20 | ></li>.</ul>.................... |
| 15e00 | 20 20 3c 68 31 20 69 64 3d 22 4f 70 65 72 61 74 6f 72 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 | ..<h1.id="Operators"><a.href="#t |
| 15e20 | 6f 63 2d 4f 70 65 72 61 74 6f 72 73 22 3e 4f 70 65 72 61 74 6f 72 73 3c 2f 61 3e 20 3c 61 20 63 | oc-Operators">Operators</a>.<a.c |
| 15e40 | 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 4f 70 65 72 61 74 6f 72 73 22 3e c2 a7 3c | lass="hdr".href="#Operators">..< |
| 15e60 | 2f 61 3e 3c 2f 68 31 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 72 65 20 | /a></h1>........<p>.......There. |
| 15e80 | 69 73 20 6e 6f 20 6f 70 65 72 61 74 6f 72 20 6f 76 65 72 6c 6f 61 64 69 6e 67 2e 20 57 68 65 6e | is.no.operator.overloading..When |
| 15ea0 | 20 79 6f 75 20 73 65 65 20 61 6e 20 6f 70 65 72 61 74 6f 72 20 69 6e 20 5a 69 67 2c 20 79 6f 75 | .you.see.an.operator.in.Zig,.you |
| 15ec0 | 20 6b 6e 6f 77 20 74 68 61 74 0a 20 20 20 20 20 20 69 74 20 69 73 20 64 6f 69 6e 67 20 73 6f 6d | .know.that.......it.is.doing.som |
| 15ee0 | 65 74 68 69 6e 67 20 66 72 6f 6d 20 74 68 69 73 20 74 61 62 6c 65 2c 20 61 6e 64 20 6e 6f 74 68 | ething.from.this.table,.and.noth |
| 15f00 | 69 6e 67 20 65 6c 73 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 68 32 20 69 | ing.else........</p>.......<h2.i |
| 15f20 | 64 3d 22 54 61 62 6c 65 2d 6f 66 2d 4f 70 65 72 61 74 6f 72 73 22 3e 3c 61 20 68 72 65 66 3d 22 | d="Table-of-Operators"><a.href=" |
| 15f40 | 23 74 6f 63 2d 54 61 62 6c 65 2d 6f 66 2d 4f 70 65 72 61 74 6f 72 73 22 3e 54 61 62 6c 65 20 6f | #toc-Table-of-Operators">Table.o |
| 15f60 | 66 20 4f 70 65 72 61 74 6f 72 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 | f.Operators</a>.<a.class="hdr".h |
| 15f80 | 72 65 66 3d 22 23 54 61 62 6c 65 2d 6f 66 2d 4f 70 65 72 61 74 6f 72 73 22 3e c2 a7 3c 2f 61 3e | ref="#Table-of-Operators">..</a> |
| 15fa0 | 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 64 69 76 20 63 6c 61 73 73 3d 22 74 61 62 6c 65 2d 77 | </h2>........<div.class="table-w |
| 15fc0 | 72 61 70 70 65 72 22 3e 0a 20 20 20 20 20 20 3c 74 61 62 6c 65 3e 0a 20 20 20 20 20 20 20 20 3c | rapper">.......<table>.........< |
| 15fe0 | 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 53 | tr>...........<th>.............S |
| 16000 | 79 6e 74 61 78 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 | yntax...........</th>........... |
| 16020 | 3c 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 52 65 6c 65 76 61 6e 74 20 54 79 70 65 73 0a | <th>.............Relevant.Types. |
| 16040 | 20 20 20 20 20 20 20 20 20 20 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 68 3e 0a 20 | ..........</th>...........<th>.. |
| 16060 | 20 20 20 20 20 20 20 20 20 20 20 44 65 73 63 72 69 70 74 69 6f 6e 0a 20 20 20 20 20 20 20 20 20 | ...........Description.......... |
| 16080 | 20 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 | .</th>...........<th>........... |
| 160a0 | 20 20 45 78 61 6d 70 6c 65 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 68 3e 0a 20 20 20 20 20 20 | ..Example...........</th>....... |
| 160c0 | 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>...........< |
| 160e0 | 74 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 61 20 2b 20 62 0a | td><pre><code.class="zig">a.+.b. |
| 16100 | 61 20 2b 3d 20 62 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 | a.+=.b</code></pre></td>........ |
| 16120 | 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>........ |
| 16140 | 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 49 6e 74 65 67 65 72 73 22 3e 49 | .......<li><a.href="#Integers">I |
| 16160 | 6e 74 65 67 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c | ntegers</a></li>...............< |
| 16180 | 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 73 22 3e 46 6c 6f 61 74 73 3c 2f 61 3e 3c | li><a.href="#Floats">Floats</a>< |
| 161a0 | 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>.......... |
| 161c0 | 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 41 64 64 69 74 69 6f 6e 2e 0a 20 | .</td>...........<td>Addition... |
| 161e0 | 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 |
| 16200 | 69 3e 43 61 6e 20 63 61 75 73 65 20 3c 61 20 68 72 65 66 3d 22 23 44 65 66 61 75 6c 74 2d 4f 70 | i>Can.cause.<a.href="#Default-Op |
| 16220 | 65 72 61 74 69 6f 6e 73 22 3e 6f 76 65 72 66 6c 6f 77 3c 2f 61 3e 20 66 6f 72 20 69 6e 74 65 67 | erations">overflow</a>.for.integ |
| 16240 | 65 72 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 49 6e 76 6f | ers.</li>...............<li>Invo |
| 16260 | 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 |
| 16280 | 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 |
| 162a0 | 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>............. |
| 162c0 | 20 20 3c 6c 69 3e 53 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 61 64 64 57 69 74 68 | ..<li>See.also.<a.href="#addWith |
| 162e0 | 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 2e 3c | Overflow">@addWithOverflow</a>.< |
| 16300 | 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>.......... |
| 16320 | 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>........... |
| 16340 | 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 | ..<pre><code.class="zig"><span.c |
| 16360 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 20 2b 20 3c 73 70 | lass="tok-number">2</span>.+.<sp |
| 16380 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 20 3d | an.class="tok-number">5</span>.= |
| 163a0 | 3d 20 3c 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 | =.<span.class="tok-number">7</sp |
| 163c0 | 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> |
| 163e0 | 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>..... |
| 16400 | 20 20 20 20 20 20 3c 74 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | ......<td><pre><code.class="zig" |
| 16420 | 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 |
| 16440 | 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 |
| 16460 | 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 |
| 16480 | 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>....... |
| 164a0 | 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>..... |
| 164c0 | 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 6f 6e 2e 0a 20 20 20 | ......<td>Wrapping.Addition..... |
| 164e0 | 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> |
| 16500 | 47 75 61 72 61 6e 74 65 65 64 20 74 6f 20 68 61 76 65 20 74 77 6f 73 2d 63 6f 6d 70 6c 65 6d 65 | Guaranteed.to.have.twos-compleme |
| 16520 | 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 20 20 | nt.wrapping.behavior.</li>...... |
| 16540 | 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 49 6e 76 6f 6b 65 73 20 3c 61 20 68 72 65 66 3d 22 23 50 | .........<li>Invokes.<a.href="#P |
| 16560 | 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 |
| 16580 | 65 73 6f 6c 75 74 69 6f 6e 3c 2f 61 3e 20 66 6f 72 20 74 68 65 20 6f 70 65 72 61 6e 64 73 2e 3c | esolution</a>.for.the.operands.< |
| 165a0 | 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. |
| 165c0 | 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 64 57 | <a.href="#addWithOverflow">@addW |
| 165e0 | 69 74 68 4f 76 65 72 66 6c 6f 77 3c 2f 61 3e 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 | ithOverflow</a>.</li>........... |
| 16600 | 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>......... |
| 16620 | 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c | ..<td>.............<pre><code.cl |
| 16640 | 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 | ass="zig"><span.class="tok-built |
| 16660 | 69 6e 22 3e 40 61 73 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | in">@as</span>(<span.class="tok- |
| 16680 | 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 2c 20 73 74 64 2e 6d 61 74 68 2e 6d 61 78 49 6e | type">u32</span>,.std.math.maxIn |
| 166a0 | 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 | t(<span.class="tok-type">u32</sp |
| 166c0 | 61 6e 3e 29 29 20 2b 25 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | an>)).+%.<span.class="tok-number |
| 166e0 | 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 |
| 16700 | 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 | umber">0</span></code></pre>.... |
| 16720 | 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>...... |
| 16740 | 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 | ...<tr>...........<td><pre><code |
| 16760 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 61 20 2d 20 62 0a 61 20 2d 3d 20 62 3c 2f 63 6f 64 65 3e | .class="zig">a.-.b.a.-=.b</code> |
| 16780 | 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>...... |
| 167a0 | 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 |
| 167c0 | 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></ |
| 167e0 | 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="# |
| 16800 | 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>......... |
| 16820 | 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>....... |
| 16840 | 20 20 20 20 3c 74 64 3e 53 75 62 74 72 61 63 74 69 6f 6e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 | ....<td>Subtraction............. |
| 16860 | 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 43 61 6e 20 63 61 75 73 | .<ul>...............<li>Can.caus |
| 16880 | 65 20 3c 61 20 68 72 65 66 3d 22 23 44 65 66 61 75 6c 74 2d 4f 70 65 72 61 74 69 6f 6e 73 22 3e | e.<a.href="#Default-Operations"> |
| 168a0 | 6f 76 65 72 66 6c 6f 77 3c 2f 61 3e 20 66 6f 72 20 69 6e 74 65 67 65 72 73 2e 3c 2f 6c 69 3e 0a | overflow</a>.for.integers.</li>. |
| 168c0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 49 6e 76 6f 6b 65 73 20 3c 61 20 68 72 65 | ..............<li>Invokes.<a.hre |
| 168e0 | 66 3d 22 23 50 65 65 72 2d 54 79 70 65 2d 52 65 73 6f 6c 75 74 69 6f 6e 22 3e 50 65 65 72 20 54 | f="#Peer-Type-Resolution">Peer.T |
| 16900 | 79 70 65 20 52 65 73 6f 6c 75 74 69 6f 6e 3c 2f 61 3e 20 66 6f 72 20 74 68 65 20 6f 70 65 72 61 | ype.Resolution</a>.for.the.opera |
| 16920 | 6e 64 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 65 65 20 | nds.</li>...............<li>See. |
| 16940 | 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 73 75 62 57 69 74 68 4f 76 65 72 66 6c 6f 77 22 3e | also.<a.href="#subWithOverflow"> |
| 16960 | 40 73 75 62 57 69 74 68 4f 76 65 72 66 6c 6f 77 3c 2f 61 3e 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 | @subWithOverflow</a>.</li>...... |
| 16980 | 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>.... |
| 169a0 | 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 |
| 169c0 | 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | de.class="zig"><span.class="tok- |
| 169e0 | 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 63 6c 61 73 73 3d 22 | number">2</span>.-.<span.class=" |
| 16a00 | 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 3c 73 70 61 6e 20 63 | tok-number">5</span>.==.-<span.c |
| 16a20 | 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 3c 2f 63 6f 64 65 | lass="tok-number">3</span></code |
| 16a40 | 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>......... |
| 16a60 | 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 |
| 16a80 | 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 61 20 2d 25 20 62 0a 61 | ><pre><code.class="zig">a.-%.b.a |
| 16aa0 | 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 20 20 20 | .-%=.b</code></pre></td>........ |
| 16ac0 | 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>........ |
| 16ae0 | 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 49 6e 74 65 67 65 72 73 22 3e 49 | .......<li><a.href="#Integers">I |
| 16b00 | 6e 74 65 67 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 | ntegers</a></li>.............</u |
| 16b20 | 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 |
| 16b40 | 3e 57 72 61 70 70 69 6e 67 20 53 75 62 74 72 61 63 74 69 6f 6e 2e 0a 20 20 20 20 20 20 20 20 20 | >Wrapping.Subtraction........... |
| 16b60 | 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 47 75 61 72 61 6e | ...<ul>...............<li>Guaran |
| 16b80 | 74 65 65 64 20 74 6f 20 68 61 76 65 20 74 77 6f 73 2d 63 6f 6d 70 6c 65 6d 65 6e 74 20 77 72 61 | teed.to.have.twos-complement.wra |
| 16ba0 | 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 20 | pping.behavior.</li>............ |
| 16bc0 | 20 20 20 3c 6c 69 3e 49 6e 76 6f 6b 65 73 20 3c 61 20 68 72 65 66 3d 22 23 50 65 65 72 2d 54 79 | ...<li>Invokes.<a.href="#Peer-Ty |
| 16be0 | 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 |
| 16c00 | 69 6f 6e 3c 2f 61 3e 20 66 6f 72 20 74 68 65 20 6f 70 65 72 61 6e 64 73 2e 3c 2f 6c 69 3e 0a 20 | ion</a>.for.the.operands.</li>.. |
| 16c20 | 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 |
| 16c40 | 66 3d 22 23 73 75 62 57 69 74 68 4f 76 65 72 66 6c 6f 77 22 3e 40 73 75 62 57 69 74 68 4f 76 65 | f="#subWithOverflow">@subWithOve |
| 16c60 | 72 66 6c 6f 77 3c 2f 61 3e 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c | rflow</a>.</li>.............</ul |
| 16c80 | 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> |
| 16ca0 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a | .............<pre><code.class="z |
| 16cc0 | 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 61 | ig"><span.class="tok-builtin">@a |
| 16ce0 | 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"> |
| 16d00 | 75 33 32 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | u32</span>,.<span.class="tok-num |
| 16d20 | 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 29 20 2d 25 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ber">0</span>).-%.<span.class="t |
| 16d40 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 20 3d 3d 20 73 74 64 2e 6d 61 74 68 2e | ok-number">1</span>.==.std.math. |
| 16d60 | 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 75 33 | maxInt(<span.class="tok-type">u3 |
| 16d80 | 32 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 20 20 | 2</span>)</code></pre>.......... |
| 16da0 | 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 | .</td>.........</tr>.........<tr |
| 16dc0 | 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 | >...........<td><pre><code.class |
| 16de0 | 3d 22 7a 69 67 22 3e 2d 61 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 | ="zig">-a</code></pre></td>..... |
| 16e00 | 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>..... |
| 16e20 | 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 |
| 16e40 | 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>............. |
| 16e60 | 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</ |
| 16e80 | 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>....... |
| 16ea0 | 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>........ |
| 16ec0 | 20 20 20 20 20 4e 65 67 61 74 69 6f 6e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a | .....Negation..............<ul>. |
| 16ee0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 43 61 6e 20 63 61 75 73 65 20 3c 61 20 68 | ..............<li>Can.cause.<a.h |
| 16f00 | 72 65 66 3d 22 23 44 65 66 61 75 6c 74 2d 4f 70 65 72 61 74 69 6f 6e 73 22 3e 6f 76 65 72 66 6c | ref="#Default-Operations">overfl |
| 16f20 | 6f 77 3c 2f 61 3e 20 66 6f 72 20 69 6e 74 65 67 65 72 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | ow</a>.for.integers.</li>....... |
| 16f40 | 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>..... |
| 16f60 | 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 | ......<td>.............<pre><cod |
| 16f80 | 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 2d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | e.class="zig">-<span.class="tok- |
| 16fa0 | 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | number">1</span>.==.<span.class= |
| 16fc0 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 20 2d 20 3c 73 70 61 6e 20 63 6c | "tok-number">0</span>.-.<span.cl |
| 16fe0 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e | ass="tok-number">1</span></code> |
| 17000 | 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c | </pre>...........</td>.........< |
| 17020 | 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e | /tr>.........<tr>...........<td> |
| 17040 | 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 2d 25 61 3c 2f 63 6f 64 65 | <pre><code.class="zig">-%a</code |
| 17060 | 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>..... |
| 17080 | 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>< |
| 170a0 | 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>< |
| 170c0 | 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>.......... |
| 170e0 | 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>........... |
| 17100 | 20 20 57 72 61 70 70 69 6e 67 20 4e 65 67 61 74 69 6f 6e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 | ..Wrapping.Negation............. |
| 17120 | 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 47 75 61 72 61 6e 74 65 | .<ul>...............<li>Guarante |
| 17140 | 65 64 20 74 6f 20 68 61 76 65 20 74 77 6f 73 2d 63 6f 6d 70 6c 65 6d 65 6e 74 20 77 72 61 70 70 | ed.to.have.twos-complement.wrapp |
| 17160 | 69 6e 67 20 62 65 68 61 76 69 6f 72 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c | ing.behavior.</li>.............< |
| 17180 | 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>...........< |
| 171a0 | 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 | td>.............<pre><code.class |
| 171c0 | 3d 22 7a 69 67 22 3e 2d 25 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 | ="zig">-%<span.class="tok-builti |
| 171e0 | 6e 22 3e 40 61 73 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | n">@as</span>(<span.class="tok-t |
| 17200 | 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 2c 20 73 74 64 2e 6d 61 74 68 2e 6d 69 6e 49 6e 74 | ype">i32</span>,.std.math.minInt |
| 17220 | 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 |
| 17240 | 6e 3e 29 29 20 3d 3d 20 73 74 64 2e 6d 61 74 68 2e 6d 69 6e 49 6e 74 28 3c 73 70 61 6e 20 63 6c | n>)).==.std.math.minInt(<span.cl |
| 17260 | 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 3c 2f 63 6f 64 65 | ass="tok-type">i32</span>)</code |
| 17280 | 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>......... |
| 172a0 | 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 |
| 172c0 | 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 61 20 2a 20 62 0a 61 20 | ><pre><code.class="zig">a.*.b.a. |
| 172e0 | 2a 3d 20 62 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 | *=.b</code></pre></td>.......... |
| 17300 | 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>.......... |
| 17320 | 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 |
| 17340 | 65 67 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 | egers</a></li>...............<li |
| 17360 | 3e 3c 61 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 73 22 3e 46 6c 6f 61 74 73 3c 2f 61 3e 3c 2f 6c | ><a.href="#Floats">Floats</a></l |
| 17380 | 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>...........< |
| 173a0 | 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 4d 75 6c 74 69 70 6c 69 63 61 74 69 6f | /td>...........<td>Multiplicatio |
| 173c0 | 6e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | n..............<ul>............. |
| 173e0 | 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 6c | ..<li>Can.cause.<a.href="#Defaul |
| 17400 | 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 69 | t-Operations">overflow</a>.for.i |
| 17420 | 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 3e | ntegers.</li>...............<li> |
| 17440 | 49 6e 76 6f 6b 65 73 20 3c 61 20 68 72 65 66 3d 22 23 50 65 65 72 2d 54 79 70 65 2d 52 65 73 6f | Invokes.<a.href="#Peer-Type-Reso |
| 17460 | 6c 75 74 69 6f 6e 22 3e 50 65 65 72 20 54 79 70 65 20 52 65 73 6f 6c 75 74 69 6f 6e 3c 2f 61 3e | lution">Peer.Type.Resolution</a> |
| 17480 | 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 20 | .for.the.operands.</li>......... |
| 174a0 | 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 6d 75 6c | ......<li>See.also.<a.href="#mul |
| 174c0 | 57 69 74 68 4f 76 65 72 66 6c 6f 77 22 3e 40 6d 75 6c 57 69 74 68 4f 76 65 72 66 6c 6f 77 3c 2f | WithOverflow">@mulWithOverflow</ |
| 174e0 | 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 20 20 | a>.</li>.............</ul>...... |
| 17500 | 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>....... |
| 17520 | 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 | ......<pre><code.class="zig"><sp |
| 17540 | 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 2a | an.class="tok-number">2</span>.* |
| 17560 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 | .<span.class="tok-number">5</spa |
| 17580 | 6e 3e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 | n>.==.<span.class="tok-number">1 |
| 175a0 | 30 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 20 | 0</span></code></pre>........... |
| 175c0 | 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> |
| 175e0 | 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d | ...........<td><pre><code.class= |
| 17600 | 22 7a 69 67 22 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 72 65 | "zig">a.*%.b.a.*%=.b</code></pre |
| 17620 | 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>........... |
| 17640 | 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 |
| 17660 | 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>.. |
| 17680 | 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> |
| 176a0 | 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 70 6c 69 | ...........<td>Wrapping.Multipli |
| 176c0 | 63 61 74 69 6f 6e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 | cation..............<ul>........ |
| 176e0 | 20 20 20 20 20 20 20 3c 6c 69 3e 47 75 61 72 61 6e 74 65 65 64 20 74 6f 20 68 61 76 65 20 74 77 | .......<li>Guaranteed.to.have.tw |
| 17700 | 6f 73 2d 63 6f 6d 70 6c 65 6d 65 6e 74 20 77 72 61 70 70 69 6e 67 20 62 65 68 61 76 69 6f 72 2e | os-complement.wrapping.behavior. |
| 17720 | 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 49 6e 76 6f 6b 65 73 20 | </li>...............<li>Invokes. |
| 17740 | 3c 61 20 68 72 65 66 3d 22 23 50 65 65 72 2d 54 79 70 65 2d 52 65 73 6f 6c 75 74 69 6f 6e 22 3e | <a.href="#Peer-Type-Resolution"> |
| 17760 | 50 65 65 72 20 54 79 70 65 20 52 65 73 6f 6c 75 74 69 6f 6e 3c 2f 61 3e 20 66 6f 72 20 74 68 65 | Peer.Type.Resolution</a>.for.the |
| 17780 | 20 6f 70 65 72 61 6e 64 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c | .operands.</li>...............<l |
| 177a0 | 69 3e 53 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 6d 75 6c 57 69 74 68 4f 76 65 72 | i>See.also.<a.href="#mulWithOver |
| 177c0 | 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 2e 3c 2f 6c 69 3e | flow">@mulWithOverflow</a>.</li> |
| 177e0 | 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 |
| 17800 | 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 |
| 17820 | 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | re><code.class="zig"><span.class |
| 17840 | 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 61 73 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 | ="tok-builtin">@as</span>(<span. |
| 17860 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 | class="tok-type">u8</span>,.<spa |
| 17880 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 30 30 3c 2f 73 70 61 6e 3e 29 | n.class="tok-number">200</span>) |
| 178a0 | 20 2a 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 32 3c 2f | .*%.<span.class="tok-number">2</ |
| 178c0 | 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 |
| 178e0 | 22 3e 31 34 34 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 | ">144</span></code></pre>....... |
| 17900 | 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>......... |
| 17920 | 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c | <tr>...........<td><pre><code.cl |
| 17940 | 61 73 73 3d 22 7a 69 67 22 3e 61 20 2f 20 62 0a 61 20 2f 3d 20 62 3c 2f 63 6f 64 65 3e 3c 2f 70 | ass="zig">a./.b.a./=.b</code></p |
| 17960 | 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>......... |
| 17980 | 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 |
| 179a0 | 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> |
| 179c0 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 46 6c 6f | ...............<li><a.href="#Flo |
| 179e0 | 61 74 73 22 3e 46 6c 6f 61 74 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 | ats">Floats</a></li>............ |
| 17a00 | 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 | .</ul>...........</td>.......... |
| 17a20 | 20 3c 74 64 3e 44 69 76 69 73 69 6f 6e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a | .<td>Division..............<ul>. |
| 17a40 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 43 61 6e 20 63 61 75 73 65 20 3c 61 20 68 | ..............<li>Can.cause.<a.h |
| 17a60 | 72 65 66 3d 22 23 44 65 66 61 75 6c 74 2d 4f 70 65 72 61 74 69 6f 6e 73 22 3e 6f 76 65 72 66 6c | ref="#Default-Operations">overfl |
| 17a80 | 6f 77 3c 2f 61 3e 20 66 6f 72 20 69 6e 74 65 67 65 72 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | ow</a>.for.integers.</li>....... |
| 17aa0 | 20 20 20 20 20 20 20 20 3c 6c 69 3e 43 61 6e 20 63 61 75 73 65 20 3c 61 20 68 72 65 66 3d 22 23 | ........<li>Can.cause.<a.href="# |
| 17ac0 | 44 69 76 69 73 69 6f 6e 2d 62 79 2d 5a 65 72 6f 22 3e 44 69 76 69 73 69 6f 6e 20 62 79 20 5a 65 | Division-by-Zero">Division.by.Ze |
| 17ae0 | 72 6f 3c 2f 61 3e 20 66 6f 72 20 69 6e 74 65 67 65 72 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | ro</a>.for.integers.</li>....... |
| 17b00 | 20 20 20 20 20 20 20 20 3c 6c 69 3e 43 61 6e 20 63 61 75 73 65 20 3c 61 20 68 72 65 66 3d 22 23 | ........<li>Can.cause.<a.href="# |
| 17b20 | 44 69 76 69 73 69 6f 6e 2d 62 79 2d 5a 65 72 6f 22 3e 44 69 76 69 73 69 6f 6e 20 62 79 20 5a 65 | Division-by-Zero">Division.by.Ze |
| 17b40 | 72 6f 3c 2f 61 3e 20 66 6f 72 20 66 6c 6f 61 74 73 20 69 6e 20 3c 61 20 68 72 65 66 3d 22 23 46 | ro</a>.for.floats.in.<a.href="#F |
| 17b60 | 6c 6f 61 74 69 6e 67 2d 50 6f 69 6e 74 2d 4f 70 65 72 61 74 69 6f 6e 73 22 3e 46 6c 6f 61 74 4d | loating-Point-Operations">FloatM |
| 17b80 | 6f 64 65 2e 4f 70 74 69 6d 69 7a 65 64 20 4d 6f 64 65 3c 2f 61 3e 2e 3c 2f 6c 69 3e 0a 20 20 20 | ode.Optimized.Mode</a>.</li>.... |
| 17ba0 | 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 46 6f 72 20 6e 6f 6e 2d 63 6f 6d 70 69 6c 65 2d 74 | ...........<li>For.non-compile-t |
| 17bc0 | 69 6d 65 2d 6b 6e 6f 77 6e 20 73 69 67 6e 65 64 20 69 6e 74 65 67 65 72 73 2c 20 6d 75 73 74 20 | ime-known.signed.integers,.must. |
| 17be0 | 75 73 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 64 69 | use.................<a.href="#di |
| 17c00 | 76 54 72 75 6e 63 22 3e 40 64 69 76 54 72 75 6e 63 3c 2f 61 3e 2c 0a 20 20 20 20 20 20 20 20 20 | vTrunc">@divTrunc</a>,.......... |
| 17c20 | 20 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 64 69 76 46 6c 6f 6f 72 22 3e 40 64 69 76 46 | .......<a.href="#divFloor">@divF |
| 17c40 | 6c 6f 6f 72 3c 2f 61 3e 2c 20 6f 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 61 20 | loor</a>,.or.................<a. |
| 17c60 | 68 72 65 66 3d 22 23 64 69 76 45 78 61 63 74 22 3e 40 64 69 76 45 78 61 63 74 3c 2f 61 3e 20 69 | href="#divExact">@divExact</a>.i |
| 17c80 | 6e 73 74 65 61 64 20 6f 66 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 2f 3c 2f 63 | nstead.of.<code.class="zig">/</c |
| 17ca0 | 6f 64 65 3e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | ode>................</li>....... |
| 17cc0 | 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 |
| 17ce0 | 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 |
| 17d00 | 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.</ |
| 17d20 | 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>........... |
| 17d40 | 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>............ |
| 17d60 | 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c | .<pre><code.class="zig"><span.cl |
| 17d80 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 3c 2f 73 70 61 6e 3e 20 2f 20 3c 73 70 | ass="tok-number">10</span>./.<sp |
| 17da0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 20 3d | an.class="tok-number">5</span>.= |
| 17dc0 | 3d 20 3c 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 |
| 17de0 | 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> |
| 17e00 | 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>..... |
| 17e20 | 20 20 20 20 20 20 3c 74 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | ......<td><pre><code.class="zig" |
| 17e40 | 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 0a | >a.%.b.a.%=.b</code></pre></td>. |
| 17e60 | 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>. |
| 17e80 | 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 |
| 17ea0 | 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>......... |
| 17ec0 | 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 |
| 17ee0 | 74 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 | ts</a></li>.............</ul>... |
| 17f00 | 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 52 65 6d 61 | ........</td>...........<td>Rema |
| 17f20 | 69 6e 64 65 72 20 44 69 76 69 73 69 6f 6e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e | inder.Division..............<ul> |
| 17f40 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 43 61 6e 20 63 61 75 73 65 20 3c 61 20 | ...............<li>Can.cause.<a. |
| 17f60 | 68 72 65 66 3d 22 23 44 69 76 69 73 69 6f 6e 2d 62 79 2d 5a 65 72 6f 22 3e 44 69 76 69 73 69 6f | href="#Division-by-Zero">Divisio |
| 17f80 | 6e 20 62 79 20 5a 65 72 6f 3c 2f 61 3e 20 66 6f 72 20 69 6e 74 65 67 65 72 73 2e 3c 2f 6c 69 3e | n.by.Zero</a>.for.integers.</li> |
| 17fa0 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 43 61 6e 20 63 61 75 73 65 20 3c 61 20 | ...............<li>Can.cause.<a. |
| 17fc0 | 68 72 65 66 3d 22 23 44 69 76 69 73 69 6f 6e 2d 62 79 2d 5a 65 72 6f 22 3e 44 69 76 69 73 69 6f | href="#Division-by-Zero">Divisio |
| 17fe0 | 6e 20 62 79 20 5a 65 72 6f 3c 2f 61 3e 20 66 6f 72 20 66 6c 6f 61 74 73 20 69 6e 20 3c 61 20 68 | n.by.Zero</a>.for.floats.in.<a.h |
| 18000 | 72 65 66 3d 22 23 46 6c 6f 61 74 69 6e 67 2d 50 6f 69 6e 74 2d 4f 70 65 72 61 74 69 6f 6e 73 22 | ref="#Floating-Point-Operations" |
| 18020 | 3e 46 6c 6f 61 74 4d 6f 64 65 2e 4f 70 74 69 6d 69 7a 65 64 20 4d 6f 64 65 3c 2f 61 3e 2e 3c 2f | >FloatMode.Optimized.Mode</a>.</ |
| 18040 | 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 46 6f 72 20 6e 6f 6e 2d 63 6f | li>...............<li>For.non-co |
| 18060 | 6d 70 69 6c 65 2d 74 69 6d 65 2d 6b 6e 6f 77 6e 20 73 69 67 6e 65 64 20 69 6e 74 65 67 65 72 73 | mpile-time-known.signed.integers |
| 18080 | 2c 20 6d 75 73 74 20 75 73 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 61 20 68 72 | ,.must.use.................<a.hr |
| 180a0 | 65 66 3d 22 23 72 65 6d 22 3e 40 72 65 6d 3c 2f 61 3e 20 6f 72 0a 20 20 20 20 20 20 20 20 20 20 | ef="#rem">@rem</a>.or........... |
| 180c0 | 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 6d 6f 64 22 3e 40 6d 6f 64 3c 2f 61 3e 20 69 6e | ......<a.href="#mod">@mod</a>.in |
| 180e0 | 73 74 65 61 64 20 6f 66 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 25 3c 2f 63 6f | stead.of.<code.class="zig">%</co |
| 18100 | 64 65 3e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 | de>................</li>........ |
| 18120 | 20 20 20 20 20 20 20 3c 6c 69 3e 49 6e 76 6f 6b 65 73 20 3c 61 20 68 72 65 66 3d 22 23 50 65 65 | .......<li>Invokes.<a.href="#Pee |
| 18140 | 72 2d 54 79 70 65 2d 52 65 73 6f 6c 75 74 69 6f 6e 22 3e 50 65 65 72 20 54 79 70 65 20 52 65 73 | r-Type-Resolution">Peer.Type.Res |
| 18160 | 6f 6c 75 74 69 6f 6e 3c 2f 61 3e 20 66 6f 72 20 74 68 65 20 6f 70 65 72 61 6e 64 73 2e 3c 2f 6c | olution</a>.for.the.operands.</l |
| 18180 | 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>...........< |
| 181a0 | 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>............. |
| 181c0 | 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 | <pre><code.class="zig"><span.cla |
| 181e0 | 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 25 20 3c 73 70 61 | ss="tok-number">10</span>.%.<spa |
| 18200 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 20 3d 3d | n.class="tok-number">3</span>.== |
| 18220 | 20 3c 73 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 |
| 18240 | 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>. |
| 18260 | 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>...... |
| 18280 | 20 20 20 20 20 3c 74 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e | .....<td><pre><code.class="zig"> |
| 182a0 | 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 |
| 182c0 | 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>..... |
| 182e0 | 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>< |
| 18300 | 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>< |
| 18320 | 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>.......... |
| 18340 | 20 3c 2f 74 64 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 | .</td>...........<td>Bit.Shift.L |
| 18360 | 65 66 74 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 | eft..............<ul>........... |
| 18380 | 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 62 3c 2f 63 | ......<li><code.class="zig">b</c |
| 183a0 | 6f 64 65 3e 20 6d 75 73 74 20 62 65 20 3c 61 20 68 72 65 66 3d 22 23 63 6f 6d 70 74 69 6d 65 22 | ode>.must.be.<a.href="#comptime" |
| 183c0 | 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 20 61 20 74 79 | >comptime-known</a>.or.have.a.ty |
| 183e0 | 70 65 20 77 69 74 68 20 6c 6f 67 32 20 6e 75 6d 62 65 72 20 6f 66 20 62 69 74 73 20 61 73 20 3c | pe.with.log2.number.of.bits.as.< |
| 18400 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 61 3c 2f 63 6f 64 65 3e 2e 3c 2f 6c 69 3e 0a | code.class="zig">a</code>.</li>. |
| 18420 | 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 |
| 18440 | 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 2e 3c 2f 6c | ef="#shlExact">@shlExact</a>.</l |
| 18460 | 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 65 65 20 61 6c 73 6f 20 3c 61 | i>...............<li>See.also.<a |
| 18480 | 20 68 72 65 66 3d 22 23 73 68 6c 57 69 74 68 4f 76 65 72 66 6c 6f 77 22 3e 40 73 68 6c 57 69 74 | .href="#shlWithOverflow">@shlWit |
| 184a0 | 68 4f 76 65 72 66 6c 6f 77 3c 2f 61 3e 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | hOverflow</a>.</li>............. |
| 184c0 | 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>........... |
| 184e0 | 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 | <td>.............<pre><code.clas |
| 18500 | 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 | s="zig"><span.class="tok-number" |
| 18520 | 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 22 | >1</span>.<<.<span.class=" |
| 18540 | 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 61 6e 20 63 6c | tok-number">8</span>.==.<span.cl |
| 18560 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 35 36 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 | ass="tok-number">256</span></cod |
| 18580 | 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>........ |
| 185a0 | 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 |
| 185c0 | 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 61 20 26 67 74 3b 26 | d><pre><code.class="zig">a.>& |
| 185e0 | 67 74 3b 20 62 0a 61 20 26 67 74 3b 26 67 74 3b 3d 20 62 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e | gt;.b.a.>>=.b</code></pre> |
| 18600 | 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>............ |
| 18620 | 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d | .<ul>...............<li><a.href= |
| 18640 | 22 23 49 6e 74 65 67 65 72 73 22 3e 49 6e 74 65 67 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 | "#Integers">Integers</a></li>... |
| 18660 | 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>. |
| 18680 | 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 42 69 74 20 53 68 69 66 74 20 52 69 67 68 74 2e 0a 20 | ..........<td>Bit.Shift.Right... |
| 186a0 | 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>................. |
| 186c0 | 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 62 3c 2f 63 6f 64 65 3e 20 6d | <li><code.class="zig">b</code>.m |
| 186e0 | 75 73 74 20 62 65 20 3c 61 20 68 72 65 66 3d 22 23 63 6f 6d 70 74 69 6d 65 22 3e 63 6f 6d 70 74 | ust.be.<a.href="#comptime">compt |
| 18700 | 69 6d 65 2d 6b 6e 6f 77 6e 3c 2f 61 3e 20 6f 72 20 68 61 76 65 20 61 20 74 79 70 65 20 77 69 74 | ime-known</a>.or.have.a.type.wit |
| 18720 | 68 20 6c 6f 67 32 20 6e 75 6d 62 65 72 20 6f 66 20 62 69 74 73 20 61 73 20 3c 63 6f 64 65 20 63 | h.log2.number.of.bits.as.<code.c |
| 18740 | 6c 61 73 73 3d 22 7a 69 67 22 3e 61 3c 2f 63 6f 64 65 3e 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | lass="zig">a</code>.</li>....... |
| 18760 | 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 |
| 18780 | 68 72 45 78 61 63 74 22 3e 40 73 68 72 45 78 61 63 74 3c 2f 61 3e 2e 3c 2f 6c 69 3e 0a 20 20 20 | hrExact">@shrExact</a>.</li>.... |
| 187a0 | 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>.. |
| 187c0 | 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c | .........<td>.............<pre>< |
| 187e0 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | code.class="zig"><span.class="to |
| 18800 | 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 3c 2f 73 70 61 6e 3e 20 26 67 74 3b 26 67 74 3b 20 3c 73 70 | k-number">10</span>.>>.<sp |
| 18820 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 20 3d | an.class="tok-number">1</span>.= |
| 18840 | 3d 20 3c 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 |
| 18860 | 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> |
| 18880 | 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>..... |
| 188a0 | 20 20 20 20 20 20 3c 74 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | ......<td><pre><code.class="zig" |
| 188c0 | 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 2f 70 72 | >a.&.b.a.&=.b</code></pr |
| 188e0 | 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>.......... |
| 18900 | 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 |
| 18920 | 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>. |
| 18940 | 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 | ............</ul>...........</td |
| 18960 | 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 42 69 74 77 69 73 65 20 41 4e 44 2e 0a 20 20 20 | >...........<td>Bitwise.AND..... |
| 18980 | 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> |
| 189a0 | 49 6e 76 6f 6b 65 73 20 3c 61 20 68 72 65 66 3d 22 23 50 65 65 72 2d 54 79 70 65 2d 52 65 73 6f | Invokes.<a.href="#Peer-Type-Reso |
| 189c0 | 6c 75 74 69 6f 6e 22 3e 50 65 65 72 20 54 79 70 65 20 52 65 73 6f 6c 75 74 69 6f 6e 3c 2f 61 3e | lution">Peer.Type.Resolution</a> |
| 189e0 | 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 20 | .for.the.operands.</li>......... |
| 18a00 | 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>....... |
| 18a20 | 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 20 | ....<td>.............<pre><code. |
| 18a40 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | class="zig"><span.class="tok-num |
| 18a60 | 62 65 72 22 3e 30 62 30 31 31 3c 2f 73 70 61 6e 3e 20 26 61 6d 70 3b 20 3c 73 70 61 6e 20 63 6c | ber">0b011</span>.&.<span.cl |
| 18a80 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 62 31 30 31 3c 2f 73 70 61 6e 3e 20 3d 3d | ass="tok-number">0b101</span>.== |
| 18aa0 | 20 3c 73 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 30 31 3c | .<span.class="tok-number">0b001< |
| 18ac0 | 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>...........</ |
| 18ae0 | 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>.. |
| 18b00 | 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a | .........<td><pre><code.class="z |
| 18b20 | 69 67 22 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 | ig">a.|.b.a.|=.b</code></pre></t |
| 18b40 | 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 |
| 18b60 | 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 49 | l>...............<li><a.href="#I |
| 18b80 | 6e 74 65 67 65 72 73 22 3e 49 6e 74 65 67 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 | ntegers">Integers</a></li>...... |
| 18ba0 | 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>.... |
| 18bc0 | 20 20 20 20 20 20 20 3c 74 64 3e 42 69 74 77 69 73 65 20 4f 52 2e 0a 20 20 20 20 20 20 20 20 20 | .......<td>Bitwise.OR........... |
| 18be0 | 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 6b 65 | ...<ul>...............<li>Invoke |
| 18c00 | 73 20 3c 61 20 68 72 65 66 3d 22 23 50 65 65 72 2d 54 79 70 65 2d 52 65 73 6f 6c 75 74 69 6f 6e | s.<a.href="#Peer-Type-Resolution |
| 18c20 | 22 3e 50 65 65 72 20 54 79 70 65 20 52 65 73 6f 6c 75 74 69 6f 6e 3c 2f 61 3e 20 66 6f 72 20 74 | ">Peer.Type.Resolution</a>.for.t |
| 18c40 | 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 3c 2f | he.operands.</li>.............</ |
| 18c60 | 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 |
| 18c80 | 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d | d>.............<pre><code.class= |
| 18ca0 | 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 | "zig"><span.class="tok-number">0 |
| 18cc0 | 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 22 74 6f 6b 2d 6e | b010</span>.|.<span.class="tok-n |
| 18ce0 | 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 61 6e 20 63 6c 61 | umber">0b100</span>.==.<span.cla |
| 18d00 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 62 31 31 30 3c 2f 73 70 61 6e 3e 3c 2f 63 6f | ss="tok-number">0b110</span></co |
| 18d20 | 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>....... |
| 18d40 | 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>...........< |
| 18d60 | 74 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 61 20 5e 20 62 0a | td><pre><code.class="zig">a.^.b. |
| 18d80 | 61 20 5e 3d 20 62 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 | a.^=.b</code></pre></td>........ |
| 18da0 | 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>........ |
| 18dc0 | 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 49 6e 74 65 67 65 72 73 22 3e 49 | .......<li><a.href="#Integers">I |
| 18de0 | 6e 74 65 67 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 | ntegers</a></li>.............</u |
| 18e00 | 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 |
| 18e20 | 3e 42 69 74 77 69 73 65 20 58 4f 52 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 | >Bitwise.XOR..............<ul>.. |
| 18e40 | 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 |
| 18e60 | 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 |
| 18e80 | 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 |
| 18ea0 | 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>...... |
| 18ec0 | 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>....... |
| 18ee0 | 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 | ......<pre><code.class="zig"><sp |
| 18f00 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 62 30 31 31 3c 2f 73 70 61 | an.class="tok-number">0b011</spa |
| 18f20 | 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 62 | n>.^.<span.class="tok-number">0b |
| 18f40 | 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 6e | 101</span>.==.<span.class="tok-n |
| 18f60 | 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 3e | umber">0b110</span></code></pre> |
| 18f80 | 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>.. |
| 18fa0 | 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 70 72 65 3e 3c | .......<tr>...........<td><pre>< |
| 18fc0 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 7e 61 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e | code.class="zig">~a</code></pre> |
| 18fe0 | 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>............ |
| 19000 | 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d | .<ul>...............<li><a.href= |
| 19020 | 22 23 49 6e 74 65 67 65 72 73 22 3e 49 6e 74 65 67 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 | "#Integers">Integers</a></li>... |
| 19040 | 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>. |
| 19060 | 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 42 69 74 77 69 | ..........<td>.............Bitwi |
| 19080 | 73 65 20 4e 4f 54 2e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 | se.NOT............</td>......... |
| 190a0 | 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c | ..<td>.............<pre><code.cl |
| 190c0 | 61 73 73 3d 22 7a 69 67 22 3e 7e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c | ass="zig">~<span.class="tok-buil |
| 190e0 | 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 |
| 19100 | 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | -type">u8</span>,.<span.class="t |
| 19120 | 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 29 20 3d 3d | ok-number">0b10101111</span>).== |
| 19140 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 62 30 31 30 31 | .<span.class="tok-number">0b0101 |
| 19160 | 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 20 20 20 20 | 0000</span></code></pre>........ |
| 19180 | 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>.........< |
| 191a0 | 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 | tr>...........<td><pre><code.cla |
| 191c0 | 73 73 3d 22 7a 69 67 22 3e 61 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | ss="zig">a.<span.class="tok-kw"> |
| 191e0 | 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 65 3e 3c 2f 74 64 | orelse</span>.b</code></pre></td |
| 19200 | 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 |
| 19220 | 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 4f 70 | >...............<li><a.href="#Op |
| 19240 | 74 69 6f 6e 61 6c 73 22 3e 4f 70 74 69 6f 6e 61 6c 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 | tionals">Optionals</a></li>..... |
| 19260 | 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>... |
| 19280 | 20 20 20 20 20 20 20 20 3c 74 64 3e 49 66 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | ........<td>If.<code.class="zig" |
| 192a0 | 3e 61 3c 2f 63 6f 64 65 3e 20 69 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c | >a</code>.is.<code.class="zig">< |
| 192c0 | 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 |
| 192e0 | 3e 3c 2f 63 6f 64 65 3e 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ></code>,....................... |
| 19300 | 72 65 74 75 72 6e 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 62 3c 2f 63 6f 64 | returns.<code.class="zig">b</cod |
| 19320 | 65 3e 20 28 22 64 65 66 61 75 6c 74 20 76 61 6c 75 65 22 29 2c 0a 20 20 20 20 20 20 20 20 20 20 | e>.("default.value"),........... |
| 19340 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6f 74 68 65 72 77 69 73 65 20 72 65 74 75 72 6e | ................otherwise.return |
| 19360 | 73 20 74 68 65 20 75 6e 77 72 61 70 70 65 64 20 76 61 6c 75 65 20 6f 66 20 3c 63 6f 64 65 20 63 | s.the.unwrapped.value.of.<code.c |
| 19380 | 6c 61 73 73 3d 22 7a 69 67 22 3e 61 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 | lass="zig">a</code>............. |
| 193a0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 4e 6f 74 65 20 74 68 61 74 20 3c 63 6f | ...................Note.that.<co |
| 193c0 | 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 62 3c 2f 63 6f 64 65 3e 20 6d 61 79 20 62 65 20 61 | de.class="zig">b</code>.may.be.a |
| 193e0 | 20 76 61 6c 75 65 20 6f 66 20 74 79 70 65 20 3c 61 20 68 72 65 66 3d 22 23 6e 6f 72 65 74 75 72 | .value.of.type.<a.href="#noretur |
| 19400 | 6e 22 3e 6e 6f 72 65 74 75 72 6e 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e | n">noreturn</a>............</td> |
| 19420 | 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 | ...........<td>.............<pre |
| 19440 | 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ><code.class="zig"><span.class=" |
| 19460 | 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 76 61 6c 75 65 3a 20 3f 3c 73 70 | tok-kw">const</span>.value:.?<sp |
| 19480 | 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>.= |
| 194a0 | 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 |
| 194c0 | 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< |
| 194e0 | 2f 73 70 61 6e 3e 20 75 6e 77 72 61 70 70 65 64 20 3d 20 76 61 6c 75 65 20 3c 73 70 61 6e 20 63 | /span>.unwrapped.=.value.<span.c |
| 19500 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 6f 72 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 | lass="tok-kw">orelse</span>.<spa |
| 19520 | 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> |
| 19540 | 3b 0a 75 6e 77 72 61 70 70 65 64 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ;.unwrapped.==.<span.class="tok- |
| 19560 | 6e 75 6d 62 65 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e | number">1234</span></code></pre> |
| 19580 | 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>.. |
| 195a0 | 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 70 72 65 3e 3c | .......<tr>...........<td><pre>< |
| 195c0 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 61 2e 3f 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 | code.class="zig">a.?</code></pre |
| 195e0 | 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>........... |
| 19600 | 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 |
| 19620 | 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> |
| 19640 | 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 |
| 19660 | 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 45 71 | d>...........<td>.............Eq |
| 19680 | 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 72 65 3e 3c 63 | uivalent.to:.............<pre><c |
| 196a0 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 61 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ode.class="zig">a.<span.class="t |
| 196c0 | 6f 6b 2d 6b 77 22 3e 6f 72 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ok-kw">orelse</span>.<span.class |
| 196e0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f | ="tok-kw">unreachable</span></co |
| 19700 | 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>....... |
| 19720 | 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 20 | ....<td>.............<pre><code. |
| 19740 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | class="zig"><span.class="tok-kw" |
| 19760 | 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 76 61 6c 75 65 3a 20 3f 3c 73 70 61 6e 20 63 6c 61 73 | >const</span>.value:.?<span.clas |
| 19780 | 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. |
| 197a0 | 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 3b 0a | class="tok-number">5678</span>;. |
| 197c0 | 76 61 6c 75 65 2e 3f 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | value.?.==.<span.class="tok-numb |
| 197e0 | 65 72 22 3e 35 36 37 38 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 | er">5678</span></code></pre>.... |
| 19800 | 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>...... |
| 19820 | 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 | ...<tr>...........<td><pre><code |
| 19840 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 61 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | .class="zig">a.<span.class="tok- |
| 19860 | 6b 77 22 3e 63 61 74 63 68 3c 2f 73 70 61 6e 3e 20 62 0a 61 20 3c 73 70 61 6e 20 63 6c 61 73 73 | kw">catch</span>.b.a.<span.class |
| 19880 | 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 20 62 3c 2f | ="tok-kw">catch</span>.|err|.b</ |
| 198a0 | 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a | code></pre></td>...........<td>. |
| 198c0 | 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>...............< |
| 198e0 | 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 20 55 6e 69 6f 6e | li><a.href="#Errors">Error.Union |
| 19900 | 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>.... |
| 19920 | 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 49 66 20 3c 63 | .......</td>...........<td>If.<c |
| 19940 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 61 3c 2f 63 6f 64 65 3e 20 69 73 20 61 6e 20 3c | ode.class="zig">a</code>.is.an.< |
| 19960 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | code.class="zig"><span.class="to |
| 19980 | 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 0a 20 20 20 20 20 | k-kw">error</span></code>,...... |
| 199a0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 73 20 3c 63 6f 64 65 20 63 | .................returns.<code.c |
| 199c0 | 6c 61 73 73 3d 22 7a 69 67 22 3e 62 3c 2f 63 6f 64 65 3e 20 28 22 64 65 66 61 75 6c 74 20 76 61 | lass="zig">b</code>.("default.va |
| 199e0 | 6c 75 65 22 29 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | lue"),.......................... |
| 19a00 | 20 6f 74 68 65 72 77 69 73 65 20 72 65 74 75 72 6e 73 20 74 68 65 20 75 6e 77 72 61 70 70 65 64 | .otherwise.returns.the.unwrapped |
| 19a20 | 20 76 61 6c 75 65 20 6f 66 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 61 3c 2f 63 | .value.of.<code.class="zig">a</c |
| 19a40 | 6f 64 65 3e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ode>............................ |
| 19a60 | 20 20 20 20 4e 6f 74 65 20 74 68 61 74 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e | ....Note.that.<code.class="zig"> |
| 19a80 | 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. |
| 19aa0 | 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> |
| 19ac0 | 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ................................ |
| 19ae0 | 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 65 72 72 3c 2f 63 6f 64 65 3e | ....<code.class="zig">err</code> |
| 19b00 | 20 69 73 20 74 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 | .is.the.<code.class="zig"><span. |
| 19b20 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 | class="tok-kw">error</span></cod |
| 19b40 | 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 65 78 70 72 65 73 | e>.and.is.in.scope.of.the.expres |
| 19b60 | 73 69 6f 6e 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 62 3c 2f 63 6f 64 65 3e 2e | sion.<code.class="zig">b</code>. |
| 19b80 | 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>. |
| 19ba0 | 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | ............<pre><code.class="zi |
| 19bc0 | 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 | g"><span.class="tok-kw">const</s |
| 19be0 | 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 79 70 | pan>.value:.<span.class="tok-typ |
| 19c00 | 65 22 3e 61 6e 79 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | e">anyerror</span>!<span.class=" |
| 19c20 | 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 |
| 19c40 | 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 72 6f 6b 65 6e 3b | ss="tok-kw">error</span>.Broken; |
| 19c60 | 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 |
| 19c80 | 6e 3e 20 75 6e 77 72 61 70 70 65 64 20 3d 20 76 61 6c 75 65 20 3c 73 70 61 6e 20 63 6c 61 73 73 | n>.unwrapped.=.value.<span.class |
| 19ca0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 61 74 63 68 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 | ="tok-kw">catch</span>.<span.cla |
| 19cc0 | 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 75 6e 77 | ss="tok-number">1234</span>;.unw |
| 19ce0 | 72 61 70 70 65 64 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | rapped.==.<span.class="tok-numbe |
| 19d00 | 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 | r">1234</span></code></pre>..... |
| 19d20 | 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>....... |
| 19d40 | 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 | ..<tr>...........<td><pre><code. |
| 19d60 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 61 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | class="zig">a.<span.class="tok-k |
| 19d80 | 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 64 | w">and</span>.b</code></pre></td |
| 19da0 | 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 |
| 19dc0 | 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 72 | >...............<li><a.href="#Pr |
| 19de0 | 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 20 | imitive-Types">bool</a></li>.... |
| 19e00 | 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>.. |
| 19e20 | 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 49 66 20 3c | .........<td>...............If.< |
| 19e40 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 61 3c 2f 63 6f 64 65 3e 20 69 73 20 3c 63 6f | code.class="zig">a</code>.is.<co |
| 19e60 | 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | de.class="zig"><span.class="tok- |
| 19e80 | 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 72 65 74 75 72 | null">false</span></code>,.retur |
| 19ea0 | 6e 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | ns.<code.class="zig"><span.class |
| 19ec0 | 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 0a | ="tok-null">false</span></code>. |
| 19ee0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 77 69 74 68 6f 75 | ..........................withou |
| 19f00 | 74 20 65 76 61 6c 75 61 74 69 6e 67 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 62 | t.evaluating.<code.class="zig">b |
| 19f20 | 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 20 3c 63 6f 64 | </code>..Otherwise,.returns.<cod |
| 19f40 | 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 62 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 20 20 | e.class="zig">b</code>.......... |
| 19f60 | 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>.......... |
| 19f80 | 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 28 3c 73 70 61 6e | ...<pre><code.class="zig">(<span |
| 19fa0 | 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 3c | .class="tok-null">false</span>.< |
| 19fc0 | 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 3c | span.class="tok-kw">and</span>.< |
| 19fe0 | 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 |
| 1a000 | 3e 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c | >).==.<span.class="tok-null">fal |
| 1a020 | 73 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 | se</span></code></pre>.......... |
| 1a040 | 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 | .</td>.........</tr>.........<tr |
| 1a060 | 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 | >...........<td><pre><code.class |
| 1a080 | 3d 22 7a 69 67 22 3e 61 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 6f 72 | ="zig">a.<span.class="tok-kw">or |
| 1a0a0 | 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 64 3e 0a 20 20 20 20 | </span>.b</code></pre></td>..... |
| 1a0c0 | 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>..... |
| 1a0e0 | 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 50 72 69 6d 69 74 69 76 | ..........<li><a.href="#Primitiv |
| 1a100 | 65 2d 54 79 70 65 73 22 3e 62 6f 6f 6c 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 | e-Types">bool</a></li>.......... |
| 1a120 | 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>........ |
| 1a140 | 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 49 66 20 3c 63 6f 64 65 20 63 | ...<td>...............If.<code.c |
| 1a160 | 6c 61 73 73 3d 22 7a 69 67 22 3e 61 3c 2f 63 6f 64 65 3e 20 69 73 20 3c 63 6f 64 65 20 63 6c 61 | lass="zig">a</code>.is.<code.cla |
| 1a180 | 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e | ss="zig"><span.class="tok-null"> |
| 1a1a0 | 74 72 75 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 72 65 74 75 72 6e 73 20 3c 63 6f 64 | true</span></code>,.returns.<cod |
| 1a1c0 | 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | e.class="zig"><span.class="tok-n |
| 1a1e0 | 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 0a 20 20 20 20 20 20 20 20 | ull">true</span></code>......... |
| 1a200 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 77 69 74 68 6f 75 74 20 65 76 61 6c 75 61 | ..................without.evalua |
| 1a220 | 74 69 6e 67 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 62 3c 2f 63 6f 64 65 3e 2e | ting.<code.class="zig">b</code>. |
| 1a240 | 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 20 63 6c 61 73 73 3d | .Otherwise,.returns.<code.class= |
| 1a260 | 22 7a 69 67 22 3e 62 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a | "zig">b</code>............</td>. |
| 1a280 | 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> |
| 1a2a0 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | <code.class="zig"><span.class="t |
| 1a2c0 | 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 |
| 1a2e0 | 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 |
| 1a300 | 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 20 3d 3d 20 3c 73 70 61 6e | ="tok-null">true</span>.==.<span |
| 1a320 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 3c 2f 63 | .class="tok-null">true</span></c |
| 1a340 | 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 | ode></pre>...........</td>...... |
| 1a360 | 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 | ...</tr>.........<tr>........... |
| 1a380 | 3c 74 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 21 61 3c 2f 63 | <td><pre><code.class="zig">!a</c |
| 1a3a0 | 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>.. |
| 1a3c0 | 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 |
| 1a3e0 | 69 3e 3c 61 20 68 72 65 66 3d 22 23 50 72 69 6d 69 74 69 76 65 2d 54 79 70 65 73 22 3e 62 6f 6f | i><a.href="#Primitive-Types">boo |
| 1a400 | 6c 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 | l</a></li>.............</ul>.... |
| 1a420 | 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>..... |
| 1a440 | 20 20 20 20 20 20 20 20 42 6f 6f 6c 65 61 6e 20 4e 4f 54 2e 0a 20 20 20 20 20 20 20 20 20 20 3c | ........Boolean.NOT............< |
| 1a460 | 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>............. |
| 1a480 | 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 21 3c 73 70 61 6e 20 63 6c | <pre><code.class="zig">!<span.cl |
| 1a4a0 | 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 3d 3d 20 3c | ass="tok-null">false</span>.==.< |
| 1a4c0 | 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 |
| 1a4e0 | 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>.. |
| 1a500 | 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>....... |
| 1a520 | 20 20 20 20 3c 74 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 61 | ....<td><pre><code.class="zig">a |
| 1a540 | 20 3d 3d 20 62 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 | .==.b</code></pre></td>......... |
| 1a560 | 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 | ..<td>.............<ul>......... |
| 1a580 | 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 49 6e 74 65 67 65 72 73 22 3e 49 6e | ......<li><a.href="#Integers">In |
| 1a5a0 | 74 65 67 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c | tegers</a></li>...............<l |
| 1a5c0 | 69 3e 3c 61 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 73 22 3e 46 6c 6f 61 74 73 3c 2f 61 3e 3c 2f | i><a.href="#Floats">Floats</a></ |
| 1a5e0 | 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="# |
| 1a600 | 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>.. |
| 1a620 | 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 50 72 69 6d 69 | .............<li><a.href="#Primi |
| 1a640 | 74 69 76 65 2d 54 79 70 65 73 22 3e 74 79 70 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | tive-Types">type</a></li>....... |
| 1a660 | 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>..... |
| 1a680 | 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 75 72 6e 73 | ......<td>...............Returns |
| 1a6a0 | 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | .<code.class="zig"><span.class=" |
| 1a6c0 | 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 69 66 20 | tok-null">true</span></code>.if. |
| 1a6e0 | 61 20 61 6e 64 20 62 20 61 72 65 20 65 71 75 61 6c 2c 20 6f 74 68 65 72 77 69 73 65 20 72 65 74 | a.and.b.are.equal,.otherwise.ret |
| 1a700 | 75 72 6e 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 | urns.<code.class="zig"><span.cla |
| 1a720 | 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 | ss="tok-null">false</span></code |
| 1a740 | 3e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 49 6e 76 6f 6b 65 73 20 3c 61 20 68 72 65 66 3d 22 | >..............Invokes.<a.href=" |
| 1a760 | 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 |
| 1a780 | 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 |
| 1a7a0 | 2e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e | ............</td>...........<td> |
| 1a7c0 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a | .............<pre><code.class="z |
| 1a7e0 | 69 67 22 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c | ig">(<span.class="tok-number">1< |
| 1a800 | 2f 73 70 61 6e 3e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | /span>.==.<span.class="tok-numbe |
| 1a820 | 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | r">1</span>).==.<span.class="tok |
| 1a840 | 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a | -null">true</span></code></pre>. |
| 1a860 | 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>... |
| 1a880 | 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 70 72 65 3e 3c 63 | ......<tr>...........<td><pre><c |
| 1a8a0 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 61 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ode.class="zig">a.==.<span.class |
| 1a8c0 | 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f | ="tok-null">null</span></code></ |
| 1a8e0 | 70 72 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 | pre></td>...........<td>........ |
| 1a900 | 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 | .....<ul>...............<li><a.h |
| 1a920 | 72 65 66 3d 22 23 4f 70 74 69 6f 6e 61 6c 73 22 3e 4f 70 74 69 6f 6e 61 6c 73 3c 2f 61 3e 3c 2f | ref="#Optionals">Optionals</a></ |
| 1a940 | 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>........... |
| 1a960 | 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>............ |
| 1a980 | 20 20 20 52 65 74 75 72 6e 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 | ...Returns.<code.class="zig"><sp |
| 1a9a0 | 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>< |
| 1a9c0 | 2f 63 6f 64 65 3e 20 69 66 20 61 20 69 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | /code>.if.a.is.<code.class="zig" |
| 1a9e0 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 | ><span.class="tok-null">null</sp |
| 1aa00 | 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 73 20 3c 63 | an></code>,.otherwise.returns.<c |
| 1aa20 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ode.class="zig"><span.class="tok |
| 1aa40 | 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>...... |
| 1aa60 | 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>...... |
| 1aa80 | 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 | .......<pre><code.class="zig"><s |
| 1aaa0 | 70 61 6e 20 63 6c 61 73 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>. |
| 1aac0 | 76 61 6c 75 65 3a 20 3f 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 | value:.?<span.class="tok-type">u |
| 1aae0 | 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c | 32</span>.=.<span.class="tok-nul |
| 1ab00 | 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 3b 0a 76 61 6c 75 65 20 3d 3d 20 3c 73 70 61 6e 20 63 | l">null</span>;.value.==.<span.c |
| 1ab20 | 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 |
| 1ab40 | 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>........ |
| 1ab60 | 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 |
| 1ab80 | 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 61 20 21 3d 20 62 3c | d><pre><code.class="zig">a.!=.b< |
| 1aba0 | 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> |
| 1abc0 | 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>............... |
| 1abe0 | 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 |
| 1ac00 | 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 |
| 1ac20 | 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>... |
| 1ac40 | 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 50 72 69 6d 69 74 | ............<li><a.href="#Primit |
| 1ac60 | 69 76 65 2d 54 79 70 65 73 22 3e 62 6f 6f 6c 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 | ive-Types">bool</a></li>........ |
| 1ac80 | 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 50 72 69 6d 69 74 69 76 65 2d 54 | .......<li><a.href="#Primitive-T |
| 1aca0 | 79 70 65 73 22 3e 74 79 70 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | ypes">type</a></li>............. |
| 1acc0 | 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>........... |
| 1ace0 | 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 52 65 74 75 72 6e 73 20 3c 63 6f 64 65 | <td>...............Returns.<code |
| 1ad00 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | .class="zig"><span.class="tok-nu |
| 1ad20 | 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 6e 64 | ll">false</span></code>.if.a.and |
| 1ad40 | 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 73 20 | .b.are.equal,.otherwise.returns. |
| 1ad60 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | <code.class="zig"><span.class="t |
| 1ad80 | 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 | ok-null">true</span></code>..... |
| 1ada0 | 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- |
| 1adc0 | 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 |
| 1ade0 | 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...... |
| 1ae00 | 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>...... |
| 1ae20 | 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 28 3c | .......<pre><code.class="zig">(< |
| 1ae40 | 73 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> |
| 1ae60 | 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 3c 2f | .!=.<span.class="tok-number">1</ |
| 1ae80 | 73 70 61 6e 3e 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 | span>).==.<span.class="tok-null" |
| 1aea0 | 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 20 | >false</span></code></pre>...... |
| 1aec0 | 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>........ |
| 1aee0 | 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 | .<tr>...........<td><pre><code.c |
| 1af00 | 6c 61 73 73 3d 22 7a 69 67 22 3e 61 20 26 67 74 3b 20 62 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e | lass="zig">a.>.b</code></pre> |
| 1af20 | 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>............ |
| 1af40 | 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d | .<ul>...............<li><a.href= |
| 1af60 | 22 23 49 6e 74 65 67 65 72 73 22 3e 49 6e 74 65 67 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 | "#Integers">Integers</a></li>... |
| 1af80 | 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 73 | ............<li><a.href="#Floats |
| 1afa0 | 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 2f | ">Floats</a></li>.............</ |
| 1afc0 | 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 |
| 1afe0 | 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 52 65 74 75 72 6e 73 20 3c 63 6f 64 65 20 63 | d>...............Returns.<code.c |
| 1b000 | 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c | lass="zig"><span.class="tok-null |
| 1b020 | 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 |
| 1b040 | 61 74 65 72 20 74 68 61 6e 20 62 2c 20 6f 74 68 65 72 77 69 73 65 20 72 65 74 75 72 6e 73 20 3c | ater.than.b,.otherwise.returns.< |
| 1b060 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | code.class="zig"><span.class="to |
| 1b080 | 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>..... |
| 1b0a0 | 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- |
| 1b0c0 | 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 |
| 1b0e0 | 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...... |
| 1b100 | 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>...... |
| 1b120 | 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 28 3c | .......<pre><code.class="zig">(< |
| 1b140 | 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> |
| 1b160 | 20 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 | .>.<span.class="tok-number">1 |
| 1b180 | 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 |
| 1b1a0 | 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>..... |
| 1b1c0 | 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>....... |
| 1b1e0 | 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 | ..<tr>...........<td><pre><code. |
| 1b200 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 61 20 26 67 74 3b 3d 20 62 3c 2f 63 6f 64 65 3e 3c 2f 70 72 | class="zig">a.>=.b</code></pr |
| 1b220 | 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>.......... |
| 1b240 | 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 |
| 1b260 | 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>. |
| 1b280 | 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 |
| 1b2a0 | 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>............. |
| 1b2c0 | 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>........... |
| 1b2e0 | 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 52 65 74 75 72 6e 73 20 3c 63 6f 64 65 | <td>...............Returns.<code |
| 1b300 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | .class="zig"><span.class="tok-nu |
| 1b320 | 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 69 66 20 61 20 69 73 20 67 | ll">true</span></code>.if.a.is.g |
| 1b340 | 72 65 61 74 65 72 20 74 68 61 6e 20 6f 72 20 65 71 75 61 6c 20 74 6f 20 62 2c 20 6f 74 68 65 72 | reater.than.or.equal.to.b,.other |
| 1b360 | 77 69 73 65 20 72 65 74 75 72 6e 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c | wise.returns.<code.class="zig">< |
| 1b380 | 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 |
| 1b3a0 | 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 49 6e 76 6f 6b 65 73 20 3c | n></code>..............Invokes.< |
| 1b3c0 | 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 |
| 1b3e0 | 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. |
| 1b400 | 6f 70 65 72 61 6e 64 73 2e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 | operands............</td>....... |
| 1b420 | 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 20 | ....<td>.............<pre><code. |
| 1b440 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | class="zig">(<span.class="tok-nu |
| 1b460 | 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 20 63 6c 61 73 73 | mber">2</span>.>=.<span.class |
| 1b480 | 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 |
| 1b4a0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 3c 2f 63 | .class="tok-null">true</span></c |
| 1b4c0 | 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 | ode></pre>...........</td>...... |
| 1b4e0 | 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 | ...</tr>.........<tr>........... |
| 1b500 | 3c 74 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 61 20 26 6c 74 | <td><pre><code.class="zig">a.< |
| 1b520 | 3b 20 62 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 | ;.b</code></pre></td>........... |
| 1b540 | 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>........... |
| 1b560 | 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 49 6e 74 65 67 65 72 73 22 3e 49 6e 74 65 | ....<li><a.href="#Integers">Inte |
| 1b580 | 67 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e | gers</a></li>...............<li> |
| 1b5a0 | 3c 61 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 73 22 3e 46 6c 6f 61 74 73 3c 2f 61 3e 3c 2f 6c 69 | <a.href="#Floats">Floats</a></li |
| 1b5c0 | 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>...........</ |
| 1b5e0 | 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>.............. |
| 1b600 | 20 52 65 74 75 72 6e 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e | .Returns.<code.class="zig"><span |
| 1b620 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 3c 2f 63 | .class="tok-null">true</span></c |
| 1b640 | 6f 64 65 3e 20 69 66 20 61 20 69 73 20 6c 65 73 73 20 74 68 61 6e 20 62 2c 20 6f 74 68 65 72 77 | ode>.if.a.is.less.than.b,.otherw |
| 1b660 | 69 73 65 20 72 65 74 75 72 6e 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 | ise.returns.<code.class="zig"><s |
| 1b680 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e | pan.class="tok-null">false</span |
| 1b6a0 | 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 49 6e 76 6f 6b 65 73 20 3c 61 | ></code>..............Invokes.<a |
| 1b6c0 | 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 65 | .href="#Peer-Type-Resolution">Pe |
| 1b6e0 | 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 6f | er.Type.Resolution</a>.for.the.o |
| 1b700 | 70 65 72 61 6e 64 73 2e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 | perands............</td>........ |
| 1b720 | 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 | ...<td>.............<pre><code.c |
| 1b740 | 6c 61 73 73 3d 22 7a 69 67 22 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | lass="zig">(<span.class="tok-num |
| 1b760 | 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 20 26 6c 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ber">1</span>.<.<span.class=" |
| 1b780 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 3c 73 70 61 6e 20 63 | tok-number">2</span>).==.<span.c |
| 1b7a0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 | lass="tok-null">true</span></cod |
| 1b7c0 | 65 3e 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 | e>></pre>...........</td>....... |
| 1b7e0 | 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>...........< |
| 1b800 | 74 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 61 20 26 6c 74 3b | td><pre><code.class="zig">a.< |
| 1b820 | 3d 20 62 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 | =.b</code></pre></td>........... |
| 1b840 | 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>........... |
| 1b860 | 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 49 6e 74 65 67 65 72 73 22 3e 49 6e 74 65 | ....<li><a.href="#Integers">Inte |
| 1b880 | 67 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e | gers</a></li>...............<li> |
| 1b8a0 | 3c 61 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 73 22 3e 46 6c 6f 61 74 73 3c 2f 61 3e 3c 2f 6c 69 | <a.href="#Floats">Floats</a></li |
| 1b8c0 | 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>...........</ |
| 1b8e0 | 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>.............. |
| 1b900 | 20 52 65 74 75 72 6e 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e | .Returns.<code.class="zig"><span |
| 1b920 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 3c 2f 63 | .class="tok-null">true</span></c |
| 1b940 | 6f 64 65 3e 20 69 66 20 61 20 69 73 20 6c 65 73 73 20 74 68 61 6e 20 6f 72 20 65 71 75 61 6c 20 | ode>.if.a.is.less.than.or.equal. |
| 1b960 | 74 6f 20 62 2c 20 6f 74 68 65 72 77 69 73 65 20 72 65 74 75 72 6e 73 20 3c 63 6f 64 65 20 63 6c | to.b,.otherwise.returns.<code.cl |
| 1b980 | 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 | ass="zig"><span.class="tok-null" |
| 1b9a0 | 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 20 20 20 20 | >false</span></code>............ |
| 1b9c0 | 20 20 49 6e 76 6f 6b 65 73 20 3c 61 20 68 72 65 66 3d 22 23 50 65 65 72 2d 54 79 70 65 2d 52 65 | ..Invokes.<a.href="#Peer-Type-Re |
| 1b9e0 | 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</ |
| 1ba00 | 61 3e 20 66 6f 72 20 74 68 65 20 6f 70 65 72 61 6e 64 73 2e 0a 20 20 20 20 20 20 20 20 20 20 3c | a>.for.the.operands............< |
| 1ba20 | 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>............. |
| 1ba40 | 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 28 3c 73 70 61 6e 20 63 6c | <pre><code.class="zig">(<span.cl |
| 1ba60 | 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 3d 20 | ass="tok-number">1</span>.<=. |
| 1ba80 | 3c 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 |
| 1baa0 | 3e 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 | >).==.<span.class="tok-null">tru |
| 1bac0 | 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>........... |
| 1bae0 | 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> |
| 1bb00 | 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d | ...........<td><pre><code.class= |
| 1bb20 | 22 7a 69 67 22 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 | "zig">a.++.b</code></pre></td>.. |
| 1bb40 | 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>.. |
| 1bb60 | 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 |
| 1bb80 | 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>.............< |
| 1bba0 | 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>...........< |
| 1bbc0 | 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 41 72 72 61 79 20 63 6f 6e 63 61 74 65 6e 61 74 | td>.............Array.concatenat |
| 1bbe0 | 69 6f 6e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 | ion..............<ul>........... |
| 1bc00 | 20 20 20 20 20 20 3c 6c 69 3e 4f 6e 6c 79 20 61 76 61 69 6c 61 62 6c 65 20 77 68 65 6e 20 3c 63 | ......<li>Only.available.when.<c |
| 1bc20 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 61 3c 2f 63 6f 64 65 3e 20 61 6e 64 20 3c 63 6f | ode.class="zig">a</code>.and.<co |
| 1bc40 | 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 62 3c 2f 63 6f 64 65 3e 20 61 72 65 20 3c 61 20 68 | de.class="zig">b</code>.are.<a.h |
| 1bc60 | 72 65 66 3d 22 23 63 6f 6d 70 74 69 6d 65 22 3e 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 6b 6e 6f | ref="#comptime">compile-time.kno |
| 1bc80 | 77 6e 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 | wn</a>..............</ul>....... |
| 1bca0 | 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>........ |
| 1bcc0 | 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 | .....<pre><code.class="zig"><spa |
| 1bce0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6d 65 | n.class="tok-kw">const</span>.me |
| 1bd00 | 6d 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 | m.=.<span.class="tok-builtin">@i |
| 1bd20 | 6d 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 |
| 1bd40 | 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 6d 65 6d 3b 0a | r">"std"</span>).mem;. |
| 1bd60 | 3c 73 70 61 6e 20 63 6c 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 |
| 1bd80 | 3e 20 61 72 72 61 79 31 20 3d 20 5b 5f 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | >.array1.=.[_]<span.class="tok-t |
| 1bda0 | 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 7b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ype">u32</span>{<span.class="tok |
| 1bdc0 | 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 2c 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | -number">1</span>,<span.class="t |
| 1bde0 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 7d 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 | ok-number">2</span>};.<span.clas |
| 1be00 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 72 72 61 79 32 20 3d | s="tok-kw">const</span>.array2.= |
| 1be20 | 20 5b 5f 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f | .[_]<span.class="tok-type">u32</ |
| 1be40 | 73 70 61 6e 3e 7b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 | span>{<span.class="tok-number">3 |
| 1be60 | 3c 2f 73 70 61 6e 3e 2c 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 | </span>,<span.class="tok-number" |
| 1be80 | 3e 34 3c 2f 73 70 61 6e 3e 7d 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | >4</span>};.<span.class="tok-kw" |
| 1bea0 | 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 74 6f 67 65 74 68 65 72 20 3d 20 61 72 72 61 79 31 20 | >const</span>.together.=.array1. |
| 1bec0 | 2b 2b 20 61 72 72 61 79 32 3b 0a 6d 65 6d 2e 65 71 6c 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ++.array2;.mem.eql(<span.class=" |
| 1bee0 | 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 2c 20 26 61 6d 70 3b 74 6f 67 65 74 | tok-type">u32</span>,.&toget |
| 1bf00 | 68 65 72 2c 20 26 61 6d 70 3b 5b 5f 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | her,.&[_]<span.class="tok-ty |
| 1bf20 | 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 7b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | pe">u32</span>{<span.class="tok- |
| 1bf40 | 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 2c 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | number">1</span>,<span.class="to |
| 1bf60 | 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 2c 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | k-number">2</span>,<span.class=" |
| 1bf80 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 2c 3c 73 70 61 6e 20 63 6c 61 73 73 | tok-number">3</span>,<span.class |
| 1bfa0 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 7d 29 3c 2f 63 6f 64 65 3e 3c | ="tok-number">4</span>})</code>< |
| 1bfc0 | 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f | /pre>...........</td>.........</ |
| 1bfe0 | 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c | tr>.........<tr>...........<td>< |
| 1c000 | 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 61 20 2a 2a 20 62 3c 2f 63 6f | pre><code.class="zig">a.**.b</co |
| 1c020 | 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>... |
| 1c040 | 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 |
| 1c060 | 3e 3c 61 20 68 72 65 66 3d 22 23 41 72 72 61 79 73 22 3e 41 72 72 61 79 73 3c 2f 61 3e 3c 2f 6c | ><a.href="#Arrays">Arrays</a></l |
| 1c080 | 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>...........< |
| 1c0a0 | 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>............. |
| 1c0c0 | 41 72 72 61 79 20 6d 75 6c 74 69 70 6c 69 63 61 74 69 6f 6e 2e 0a 20 20 20 20 20 20 20 20 20 20 | Array.multiplication............ |
| 1c0e0 | 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 4f 6e 6c 79 20 | ..<ul>.................<li>Only. |
| 1c100 | 61 76 61 69 6c 61 62 6c 65 20 77 68 65 6e 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | available.when.<code.class="zig" |
| 1c120 | 3e 61 3c 2f 63 6f 64 65 3e 20 61 6e 64 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e | >a</code>.and.<code.class="zig"> |
| 1c140 | 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" |
| 1c160 | 3e 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 6b 6e 6f 77 6e 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 20 | >compile-time.known</a>......... |
| 1c180 | 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>...... |
| 1c1a0 | 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 |
| 1c1c0 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | .class="zig"><span.class="tok-kw |
| 1c1e0 | 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6d 65 6d 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ">const</span>.mem.=.<span.class |
| 1c200 | 3d 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 |
| 1c220 | 70 61 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 |
| 1c240 | 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 6d 65 6d 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ot;</span>).mem;.<span.class="to |
| 1c260 | 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 70 61 74 74 65 72 6e 20 3d 20 3c 73 70 | k-kw">const</span>.pattern.=.<sp |
| 1c280 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 61 62 26 71 75 6f 74 | an.class="tok-str">"ab" |
| 1c2a0 | 3b 3c 2f 73 70 61 6e 3e 20 2a 2a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | ;</span>.**.<span.class="tok-num |
| 1c2c0 | 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 3b 0a 6d 65 6d 2e 65 71 6c 28 3c 73 70 61 6e 20 63 6c 61 | ber">3</span>;.mem.eql(<span.cla |
| 1c2e0 | 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 70 61 74 74 65 72 6e | ss="tok-type">u8</span>,.pattern |
| 1c300 | 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 62 | ,.<span.class="tok-str">"ab |
| 1c320 | 61 62 61 62 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a | abab"</span>)</code></pre>. |
| 1c340 | 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>... |
| 1c360 | 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 70 72 65 3e 3c 63 | ......<tr>...........<td><pre><c |
| 1c380 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 61 2e 2a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e | ode.class="zig">a.*</code></pre> |
| 1c3a0 | 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>............ |
| 1c3c0 | 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d | .<ul>...............<li><a.href= |
| 1c3e0 | 22 23 50 6f 69 6e 74 65 72 73 22 3e 50 6f 69 6e 74 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 | "#Pointers">Pointers</a></li>... |
| 1c400 | 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>. |
| 1c420 | 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 50 6f 69 6e 74 | ..........<td>.............Point |
| 1c440 | 65 72 20 64 65 72 65 66 65 72 65 6e 63 65 2e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a | er.dereference............</td>. |
| 1c460 | 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> |
| 1c480 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | <code.class="zig"><span.class="t |
| 1c4a0 | 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 78 3a 20 3c 73 70 61 6e 20 63 6c 61 | ok-kw">const</span>.x:.<span.cla |
| 1c4c0 | 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 |
| 1c4e0 | 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>; |
| 1c500 | 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 |
| 1c520 | 6e 3e 20 70 74 72 20 3d 20 26 61 6d 70 3b 78 3b 0a 70 74 72 2e 2a 20 3d 3d 20 3c 73 70 61 6e 20 | n>.ptr.=.&x;.ptr.*.==.<span. |
| 1c540 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 3c 2f | class="tok-number">1234</span></ |
| 1c560 | 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>..... |
| 1c580 | 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>.......... |
| 1c5a0 | 20 3c 74 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 26 61 6d 70 | .<td><pre><code.class="zig">& |
| 1c5c0 | 3b 61 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c | ;a</code></pre></td>...........< |
| 1c5e0 | 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 41 6c 6c 20 74 79 70 65 73 0a 20 20 20 20 20 20 | td>.............All.types....... |
| 1c600 | 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>........ |
| 1c620 | 20 20 20 20 20 41 64 64 72 65 73 73 20 6f 66 2e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e | .....Address.of............</td> |
| 1c640 | 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 | ...........<td>.............<pre |
| 1c660 | 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ><code.class="zig"><span.class=" |
| 1c680 | 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 6c | tok-kw">const</span>.x:.<span.cl |
| 1c6a0 | 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 |
| 1c6c0 | 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> |
| 1c6e0 | 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 |
| 1c700 | 61 6e 3e 20 70 74 72 20 3d 20 26 61 6d 70 3b 78 3b 0a 70 74 72 2e 2a 20 3d 3d 20 3c 73 70 61 6e | an>.ptr.=.&x;.ptr.*.==.<span |
| 1c720 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 3c | .class="tok-number">1234</span>< |
| 1c740 | 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 | /code></pre>...........</td>.... |
| 1c760 | 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>......... |
| 1c780 | 20 20 3c 74 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 61 20 7c | ..<td><pre><code.class="zig">a.| |
| 1c7a0 | 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 20 20 20 20 20 20 20 | |.b</code></pre></td>........... |
| 1c7c0 | 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>........... |
| 1c7e0 | 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 45 72 72 6f 72 2d 53 65 74 2d 54 79 70 65 | ....<li><a.href="#Error-Set-Type |
| 1c800 | 22 3e 45 72 72 6f 72 20 53 65 74 20 54 79 70 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | ">Error.Set.Type</a></li>....... |
| 1c820 | 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>..... |
| 1c840 | 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 3c 61 20 68 72 65 66 | ......<td>...............<a.href |
| 1c860 | 3d 22 23 4d 65 72 67 69 6e 67 2d 45 72 72 6f 72 2d 53 65 74 73 22 3e 4d 65 72 67 69 6e 67 20 45 | ="#Merging-Error-Sets">Merging.E |
| 1c880 | 72 72 6f 72 20 53 65 74 73 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 | rror.Sets</a>...........</td>... |
| 1c8a0 | 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 |
| 1c8c0 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ode.class="zig"><span.class="tok |
| 1c8e0 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 41 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | -kw">const</span>.A.=.<span.clas |
| 1c900 | 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 73 | s="tok-kw">error</span>{One};.<s |
| 1c920 | 70 61 6e 20 63 6c 61 73 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>. |
| 1c940 | 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 2f | B.=.<span.class="tok-kw">error</ |
| 1c960 | 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 6c | span>{Two};.(A.||.B).==.<span.cl |
| 1c980 | 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 54 | ass="tok-kw">error</span>{One,.T |
| 1c9a0 | 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 3e | wo}</code></pre>...........</td> |
| 1c9c0 | 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 3c 2f 74 61 62 6c 65 3e 0a 20 20 | .........</tr>.......</table>... |
| 1c9e0 | 20 20 20 20 3c 2f 64 69 76 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 | ....</div>..............<h2.id=" |
| 1ca00 | 50 72 65 63 65 64 65 6e 63 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 50 72 65 63 65 64 | Precedence"><a.href="#toc-Preced |
| 1ca20 | 65 6e 63 65 22 3e 50 72 65 63 65 64 65 6e 63 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 | ence">Precedence</a>.<a.class="h |
| 1ca40 | 64 72 22 20 68 72 65 66 3d 22 23 50 72 65 63 65 64 65 6e 63 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 | dr".href="#Precedence">..</a></h |
| 1ca60 | 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | 2>........<pre><code.class="zig" |
| 1ca80 | 3e 78 28 29 20 78 5b 5d 20 78 2e 79 0a 61 21 62 0a 78 7b 7d 20 78 2e 2a 20 78 2e 3f 0a 21 78 20 | >x().x[].x.y.a!b.x{}.x.*.x.?.!x. |
| 1caa0 | 2d 78 20 2d 25 78 20 7e 78 20 26 61 6d 70 3b 78 20 3f 78 0a 21 20 2a 20 2f 20 25 20 2a 2a 20 2a | -x.-%x.~x.&x.?x.!.*./.%.**.* |
| 1cac0 | 25 20 7c 7c 0a 2b 20 2d 20 2b 2b 20 2b 25 20 2d 25 0a 26 6c 74 3b 26 6c 74 3b 20 26 67 74 3b 26 | %.||.+.-.++.+%.-%.<<.>& |
| 1cae0 | 67 74 3b 0a 26 61 6d 70 3b 20 5e 20 7c 0a 3d 3d 20 21 3d 20 26 6c 74 3b 20 26 67 74 3b 20 26 6c | gt;.&.^.|.==.!=.<.>.&l |
| 1cb00 | 74 3b 3d 20 26 67 74 3b 3d 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 | t;=.>=.<span.class="tok-kw">a |
| 1cb20 | 6e 64 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 6f | nd</span>.<span.class="tok-kw">o |
| 1cb40 | 72 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 6f 72 | r</span>.<span.class="tok-kw">or |
| 1cb60 | 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" |
| 1cb80 | 3e 63 61 74 63 68 3c 2f 73 70 61 6e 3e 0a 3d 20 2a 3d 20 2f 3d 20 25 3d 20 2b 3d 20 2d 3d 20 26 | >catch</span>.=.*=./=.%=.+=.-=.& |
| 1cba0 | 6c 74 3b 26 6c 74 3b 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 | lt;<=.>>=.&=.^=.|=< |
| 1cbc0 | 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 0a 20 20 20 20 20 | /code></pre>.................... |
| 1cbe0 | 20 3c 68 31 20 69 64 3d 22 41 72 72 61 79 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 41 | .<h1.id="Arrays"><a.href="#toc-A |
| 1cc00 | 72 72 61 79 73 22 3e 41 72 72 61 79 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 | rrays">Arrays</a>.<a.class="hdr" |
| 1cc20 | 20 68 72 65 66 3d 22 23 41 72 72 61 79 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 31 3e 0a 0a 20 20 20 | .href="#Arrays">..</a></h1>..... |
| 1cc40 | 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 61 72 72 61 79 73 2e 7a 69 67 3c 2f 70 | ...<p.class="file">arrays.zig</p |
| 1cc60 | 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c | ><pre><code.class="zig"><span.cl |
| 1cc80 | 61 73 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 |
| 1cca0 | 20 3d 20 3c 73 70 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 |
| 1ccc0 | 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 |
| 1cce0 | 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 74 65 73 74 69 6e | ">"std"</span>).testin |
| 1cd00 | 67 2e 65 78 70 65 63 74 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 | g.expect;.<span.class="tok-kw">c |
| 1cd20 | 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6d 65 6d 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | onst</span>.mem.=.<span.class="t |
| 1cd40 | 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 |
| 1cd60 | 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" |
| 1cd80 | 3c 2f 73 70 61 6e 3e 29 2e 6d 65 6d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | </span>).mem;..<span.class="tok- |
| 1cda0 | 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 61 72 72 61 79 20 6c 69 74 65 72 61 6c 3c 2f 73 70 61 6e 3e | comment">//.array.literal</span> |
| 1cdc0 | 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 |
| 1cde0 | 6e 3e 20 6d 65 73 73 61 67 65 20 3d 20 5b 5f 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | n>.message.=.[_]<span.class="tok |
| 1ce00 | 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 |
| 1ce20 | 6f 6b 2d 73 74 72 22 3e 27 68 27 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ok-str">'h'</span>,.<span.class= |
| 1ce40 | 22 74 6f 6b 2d 73 74 72 22 3e 27 65 27 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 | "tok-str">'e'</span>,.<span.clas |
| 1ce60 | 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 6c 27 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c | s="tok-str">'l'</span>,.<span.cl |
| 1ce80 | 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 6c 27 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 | ass="tok-str">'l'</span>,.<span. |
| 1cea0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 6f 27 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 0a 3c | class="tok-str">'o'</span>.};..< |
| 1cec0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 67 65 74 20 | span.class="tok-comment">//.get. |
| 1cee0 | 74 68 65 20 73 69 7a 65 20 6f 66 20 61 6e 20 61 72 72 61 79 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 | the.size.of.an.array</span>.<spa |
| 1cf00 | 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> |
| 1cf20 | 20 7b 0a 20 20 20 20 65 78 70 65 63 74 28 6d 65 73 73 61 67 65 2e 6c 65 6e 20 3d 3d 20 3c 73 70 | .{.....expect(message.len.==.<sp |
| 1cf40 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 29 3b | an.class="tok-number">5</span>); |
| 1cf60 | 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f | .}..<span.class="tok-comment">// |
| 1cf80 | 20 41 20 73 74 72 69 6e 67 20 6c 69 74 65 72 61 6c 20 69 73 20 61 20 70 6f 69 6e 74 65 72 20 74 | .A.string.literal.is.a.pointer.t |
| 1cfa0 | 6f 20 61 6e 20 61 72 72 61 79 20 6c 69 74 65 72 61 6c 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e | o.an.array.literal.</span>.<span |
| 1cfc0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 61 6d | .class="tok-kw">const</span>.sam |
| 1cfe0 | 65 5f 6d 65 73 73 61 67 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 | e_message.=.<span.class="tok-str |
| 1d000 | 22 3e 26 71 75 6f 74 3b 68 65 6c 6c 6f 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 3b 0a 0a 3c 73 70 | ">"hello"</span>;..<sp |
| 1d020 | 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 |
| 1d040 | 3e 20 7b 0a 20 20 20 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 | >.{.....expect(mem.eql(<span.cla |
| 1d060 | 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 3b 6d 65 | ss="tok-type">u8</span>,.&me |
| 1d080 | 73 73 61 67 65 2c 20 73 61 6d 65 5f 6d 65 73 73 61 67 65 29 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 | ssage,.same_message));.}..<span. |
| 1d0a0 | 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 |
| 1d0c0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 69 74 65 72 61 74 65 20 6f | .class="tok-str">"iterate.o |
| 1d0e0 | 76 65 72 20 61 6e 20 61 72 72 61 79 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 | ver.an.array"</span>.{..... |
| 1d100 | 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>. |
| 1d120 | 73 75 6d 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a | sum:.<span.class="tok-type">usiz |
| 1d140 | 65 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | e</span>.=.<span.class="tok-numb |
| 1d160 | 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | er">0</span>;.....<span.class="t |
| 1d180 | 6f 6b 2d 6b 77 22 3e 66 6f 72 3c 2f 73 70 61 6e 3e 20 28 6d 65 73 73 61 67 65 29 20 7c 62 79 74 | ok-kw">for</span>.(message).|byt |
| 1d1a0 | 65 7c 20 7b 0a 20 20 20 20 20 20 20 20 73 75 6d 20 2b 3d 20 62 79 74 65 3b 0a 20 20 20 20 7d 0a | e|.{.........sum.+=.byte;.....}. |
| 1d1c0 | 20 20 20 20 65 78 70 65 63 74 28 73 75 6d 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ....expect(sum.==.<span.class="t |
| 1d1e0 | 6f 6b 2d 73 74 72 22 3e 27 68 27 3c 2f 73 70 61 6e 3e 20 2b 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ok-str">'h'</span>.+.<span.class |
| 1d200 | 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 65 27 3c 2f 73 70 61 6e 3e 20 2b 20 3c 73 70 61 6e 20 63 6c | ="tok-str">'e'</span>.+.<span.cl |
| 1d220 | 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 6c 27 3c 2f 73 70 61 6e 3e 20 2a 20 3c 73 70 61 6e | ass="tok-str">'l'</span>.*.<span |
| 1d240 | 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 2b 20 3c | .class="tok-number">2</span>.+.< |
| 1d260 | 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 29 | span.class="tok-str">'o'</span>) |
| 1d280 | 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">/ |
| 1d2a0 | 2f 20 6d 6f 64 69 66 69 61 62 6c 65 20 61 72 72 61 79 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 | /.modifiable.array</span>.<span. |
| 1d2c0 | 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 6f 6d 65 5f 69 | class="tok-kw">var</span>.some_i |
| 1d2e0 | 6e 74 65 67 65 72 73 3a 20 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | ntegers:.[<span.class="tok-numbe |
| 1d300 | 72 22 3e 31 30 30 3c 2f 73 70 61 6e 3e 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | r">100</span>]<span.class="tok-t |
| 1d320 | 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 |
| 1d340 | 6f 6b 2d 6e 75 6c 6c 22 3e 75 6e 64 65 66 69 6e 65 64 3c 2f 73 70 61 6e 3e 3b 0a 0a 3c 73 70 61 | ok-null">undefined</span>;..<spa |
| 1d360 | 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 |
| 1d380 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 6d 6f 64 69 66 79 20 | an.class="tok-str">"modify. |
| 1d3a0 | 61 6e 20 61 72 72 61 79 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 | an.array"</span>.{.....<spa |
| 1d3c0 | 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 73 6f 6d | n.class="tok-kw">for</span>.(som |
| 1d3e0 | 65 5f 69 6e 74 65 67 65 72 73 29 20 7c 2a 69 74 65 6d 2c 20 69 7c 20 7b 0a 20 20 20 20 20 20 20 | e_integers).|*item,.i|.{........ |
| 1d400 | 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 69 6c 74 | .item.*.=.<span.class="tok-built |
| 1d420 | 69 6e 22 3e 40 69 6e 74 43 61 73 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d | in">@intCast</span>(<span.class= |
| 1d440 | 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 2c 20 69 29 3b 0a 20 20 20 20 7d | "tok-type">i32</span>,.i);.....} |
| 1d460 | 0a 20 20 20 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 | .....expect(some_integers[<span. |
| 1d480 | 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>].== |
| 1d4a0 | 20 3c 73 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 |
| 1d4c0 | 61 6e 3e 29 3b 0a 20 20 20 20 65 78 70 65 63 74 28 73 6f 6d 65 5f 69 6e 74 65 67 65 72 73 5b 3c | an>);.....expect(some_integers[< |
| 1d4e0 | 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 |
| 1d500 | 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 |
| 1d520 | 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 |
| 1d540 | 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 |
| 1d560 | 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 |
| 1d580 | 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">// |
| 1d5a0 | 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 |
| 1d5c0 | 61 73 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 |
| 1d5e0 | 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 |
| 1d600 | 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 |
| 1d620 | 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 |
| 1d640 | 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 |
| 1d660 | 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= |
| 1d680 | 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 |
| 1d6a0 | 6c 61 73 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_ |
| 1d6c0 | 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"> |
| 1d6e0 | 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 |
| 1d700 | 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- |
| 1d720 | 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 |
| 1d740 | 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 |
| 1d760 | 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. |
| 1d780 | 63 6c 61 73 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_ |
| 1d7a0 | 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 |
| 1d7c0 | 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 |
| 1d7e0 | 6e 3e 20 7b 0a 20 20 20 20 65 78 70 65 63 74 28 6d 65 6d 2e 65 71 6c 28 3c 73 70 61 6e 20 63 6c | n>.{.....expect(mem.eql(<span.cl |
| 1d800 | 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>,.& |
| 1d820 | 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=" |
| 1d840 | 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 |
| 1d860 | 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 |
| 1d880 | 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 |
| 1d8a0 | 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>,.< |
| 1d8c0 | 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> |
| 1d8e0 | 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 |
| 1d900 | 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< |
| 1d920 | 2f 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" |
| 1d940 | 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 |
| 1d960 | 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 |
| 1d980 | 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. |
| 1d9a0 | 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 |
| 1d9c0 | 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 |
| 1d9e0 | 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 |
| 1da00 | 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 |
| 1da20 | 6e 20 63 6c 61 73 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 |
| 1da40 | 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 |
| 1da60 | 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 |
| 1da80 | 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 |
| 1daa0 | 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- |
| 1dac0 | 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 |
| 1dae0 | 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 |
| 1db00 | 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 65 78 70 65 63 74 28 6d 65 6d 2e 65 71 6c 28 3c 73 | e</span>.{.....expect(mem.eql(<s |
| 1db20 | 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>,. |
| 1db40 | 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 |
| 1db60 | 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 |
| 1db80 | 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 |
| 1dba0 | 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< |
| 1dbc0 | 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 |
| 1dbe0 | 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=" |
| 1dc00 | 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>.* |
| 1dc20 | 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 |
| 1dc40 | 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 |
| 1dc60 | 6d 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 65 78 70 65 63 74 28 6d 65 6d 2e 65 71 6c 28 3c | me</span>.{.....expect(mem.eql(< |
| 1dc80 | 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>, |
| 1dca0 | 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"> |
| 1dcc0 | 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>));.}.. |
| 1dce0 | 3c 73 70 61 6e 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 |
| 1dd00 | 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>. |
| 1dd20 | 3c 73 70 61 6e 20 63 6c 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 |
| 1dd40 | 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 |
| 1dd60 | 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 |
| 1dd80 | 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 |
| 1dda0 | 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 |
| 1ddc0 | 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 |
| 1dde0 | 3e 20 7b 0a 20 20 20 20 65 78 70 65 63 74 28 61 6c 6c 5f 7a 65 72 6f 2e 6c 65 6e 20 3d 3d 20 3c | >.{.....expect(all_zero.len.==.< |
| 1de00 | 73 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 |
| 1de20 | 3e 29 3b 0a 20 20 20 20 65 78 70 65 63 74 28 61 6c 6c 5f 7a 65 72 6f 5b 3c 73 70 61 6e 20 63 6c | >);.....expect(all_zero[<span.cl |
| 1de40 | 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 |
| 1de60 | 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>) |
| 1de80 | 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">/ |
| 1dea0 | 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 |
| 1dec0 | 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 |
| 1dee0 | 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 |
| 1df00 | 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 |
| 1df20 | 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:.[ |
| 1df40 | 3c 73 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 |
| 1df60 | 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 |
| 1df80 | 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 |
| 1dfa0 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6f 72 3c 2f 73 70 61 6e 3e 20 28 69 6e 69 74 69 61 6c | ass="tok-kw">for</span>.(initial |
| 1dfc0 | 5f 76 61 6c 75 65 29 20 7c 2a 70 74 2c 20 69 7c 20 7b 0a 20 20 20 20 20 20 20 20 70 74 2e 2a 20 | _value).|*pt,.i|.{.........pt.*. |
| 1dfe0 | 3d 20 50 6f 69 6e 74 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 2e 78 20 3d 20 3c 73 70 61 6e 20 | =.Point{..............x.=.<span. |
| 1e000 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6e 74 43 61 73 74 3c 2f 73 70 | class="tok-builtin">@intCast</sp |
| 1e020 | 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f | an>(<span.class="tok-type">i32</ |
| 1e040 | 73 70 61 6e 3e 2c 20 69 29 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 2e 79 20 3d 20 3c 73 70 61 | span>,.i),..............y.=.<spa |
| 1e060 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6e 74 43 61 73 74 3c 2f | n.class="tok-builtin">@intCast</ |
| 1e080 | 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 | span>(<span.class="tok-type">i32 |
| 1e0a0 | 3c 2f 73 70 61 6e 3e 2c 20 69 29 20 2a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | </span>,.i).*.<span.class="tok-n |
| 1e0c0 | 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 7d 3b 0a 20 20 20 20 | umber">2</span>,.........};..... |
| 1e0e0 | 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 72 65 61 6b | }.....<span.class="tok-kw">break |
| 1e100 | 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 0a 7d 3b 0a | </span>.:init.initial_value;.};. |
| 1e120 | 3c 73 70 61 6e 20 63 6c 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 |
| 1e140 | 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 |
| 1e160 | 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 |
| 1e180 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 79 3a 20 | s="tok-type">i32</span>,.....y:. |
| 1e1a0 | 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 |
| 1e1c0 | 3e 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 | >,.};..<span.class="tok-kw">test |
| 1e1e0 | 3c 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 |
| 1e200 | 75 6f 74 3b 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 61 72 72 61 79 20 69 6e 69 74 69 61 6c 69 7a | uot;compile-time.array.initializ |
| 1e220 | 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 65 78 70 65 63 74 28 | ation"</span>.{.....expect( |
| 1e240 | 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 2d 6e 75 6d | fancy_array[<span.class="tok-num |
| 1e260 | 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 61 73 73 3d | ber">4</span>].x.==.<span.class= |
| 1e280 | 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 65 78 70 65 | "tok-number">4</span>);.....expe |
| 1e2a0 | 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 2d | ct(fancy_array[<span.class="tok- |
| 1e2c0 | 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 20 63 6c 61 | number">4</span>].y.==.<span.cla |
| 1e2e0 | 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 0a 0a 3c 73 | ss="tok-number">8</span>);.}..<s |
| 1e300 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 63 61 6c 6c 20 | pan.class="tok-comment">//.call. |
| 1e320 | 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 61 72 72 61 | a.function.to.initialize.an.arra |
| 1e340 | 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 22 3e 76 61 | y</span>.<span.class="tok-kw">va |
| 1e360 | 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 69 6e 74 7b | r</span>.more_points.=.[_]Point{ |
| 1e380 | 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 75 6d 62 65 | makePoint(<span.class="tok-numbe |
| 1e3a0 | 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 3d 22 74 6f | r">3</span>)}.**.<span.class="to |
| 1e3c0 | 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 6c 61 73 73 | k-number">10</span>;.<span.class |
| 1e3e0 | 3d 22 74 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= |
| 1e400 | 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 20 3c 73 70 | "tok-fn">makePoint</span>(x:.<sp |
| 1e420 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 20 | an.class="tok-type">i32</span>). |
| 1e440 | 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 2d 6b 77 22 | Point.{.....<span.class="tok-kw" |
| 1e460 | 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 20 20 2e 78 | >return</span>.Point{..........x |
| 1e480 | 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 20 63 6c 61 | .=.x,..........y.=.x.*.<span.cla |
| 1e4a0 | 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 7d 3b | ss="tok-number">2</span>,.....}; |
| 1e4c0 | 0a 7d 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 | .}.<span.class="tok-kw">test</sp |
| 1e4e0 | 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">" |
| 1e500 | 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 6e 63 74 69 | array.initialization.with.functi |
| 1e520 | 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 65 78 70 65 | on.calls"</span>.{.....expe |
| 1e540 | 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 74 6f 6b 2d | ct(more_points[<span.class="tok- |
| 1e560 | 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 61 | number">4</span>].x.==.<span.cla |
| 1e580 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 65 | ss="tok-number">3</span>);.....e |
| 1e5a0 | 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 74 | xpect(more_points[<span.class="t |
| 1e5c0 | 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 20 | ok-number">4</span>].y.==.<span. |
| 1e5e0 | 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 20 | class="tok-number">6</span>);... |
| 1e600 | 20 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 3c 73 70 61 | ..expect(more_points.len.==.<spa |
| 1e620 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 3c 2f 73 70 61 6e 3e 29 3b | n.class="tok-number">10</span>); |
| 1e640 | 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d | .}</code></pre><pre><code.class= |
| 1e660 | 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 61 72 72 61 79 73 2e 7a 69 67 0a 31 2f | "shell">$.zig.test.arrays.zig.1/ |
| 1e680 | 34 20 74 65 73 74 20 26 71 75 6f 74 3b 69 74 65 72 61 74 65 20 6f 76 65 72 20 61 6e 20 61 72 72 | 4.test."iterate.over.an.arr |
| 1e6a0 | 61 79 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 32 2f 34 20 74 65 73 74 20 26 71 75 6f 74 3b 6d 6f | ay"....OK.2/4.test."mo |
| 1e6c0 | 64 69 66 79 20 61 6e 20 61 72 72 61 79 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 33 2f 34 20 74 65 | dify.an.array"....OK.3/4.te |
| 1e6e0 | 73 74 20 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 | st."compile-time.array.init |
| 1e700 | 69 61 6c 69 7a 61 74 69 6f 6e 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 34 2f 34 20 74 65 73 74 20 | ialization"....OK.4/4.test. |
| 1e720 | 26 71 75 6f 74 3b 61 72 72 61 79 20 69 6e 69 74 69 61 6c 69 7a 61 74 69 6f 6e 20 77 69 74 68 20 | "array.initialization.with. |
| 1e740 | 66 75 6e 63 74 69 6f 6e 20 63 61 6c 6c 73 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 41 6c 6c 20 34 | function.calls"....OK.All.4 |
| 1e760 | 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 | .tests.passed..</code></pre>.... |
| 1e780 | 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. |
| 1e7a0 | 68 72 65 66 3d 22 23 66 6f 72 22 3e 66 6f 72 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 | href="#for">for</a></li>.<li><a. |
| 1e7c0 | 68 72 65 66 3d 22 23 53 6c 69 63 65 73 22 3e 53 6c 69 63 65 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c | href="#Slices">Slices</a></li>.< |
| 1e7e0 | 2f 75 6c 3e 0a 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 41 6e 6f 6e 79 6d 6f 75 73 2d 4c | /ul>.........<h2.id="Anonymous-L |
| 1e800 | 69 73 74 2d 4c 69 74 65 72 61 6c 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 41 6e 6f 6e | ist-Literals"><a.href="#toc-Anon |
| 1e820 | 79 6d 6f 75 73 2d 4c 69 73 74 2d 4c 69 74 65 72 61 6c 73 22 3e 41 6e 6f 6e 79 6d 6f 75 73 20 4c | ymous-List-Literals">Anonymous.L |
| 1e840 | 69 73 74 20 4c 69 74 65 72 61 6c 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 | ist.Literals</a>.<a.class="hdr". |
| 1e860 | 68 72 65 66 3d 22 23 41 6e 6f 6e 79 6d 6f 75 73 2d 4c 69 73 74 2d 4c 69 74 65 72 61 6c 73 22 3e | href="#Anonymous-List-Literals"> |
| 1e880 | c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 53 69 6d 69 6c 61 72 20 74 6f | ..</a></h2>........<p>Similar.to |
| 1e8a0 | 20 3c 61 20 68 72 65 66 3d 22 23 45 6e 75 6d 2d 4c 69 74 65 72 61 6c 73 22 3e 45 6e 75 6d 20 4c | .<a.href="#Enum-Literals">Enum.L |
| 1e8c0 | 69 74 65 72 61 6c 73 3c 2f 61 3e 20 61 6e 64 20 3c 61 20 68 72 65 66 3d 22 23 41 6e 6f 6e 79 6d | iterals</a>.and.<a.href="#Anonym |
| 1e8e0 | 6f 75 73 2d 53 74 72 75 63 74 2d 4c 69 74 65 72 61 6c 73 22 3e 41 6e 6f 6e 79 6d 6f 75 73 20 53 | ous-Struct-Literals">Anonymous.S |
| 1e900 | 74 72 75 63 74 20 4c 69 74 65 72 61 6c 73 3c 2f 61 3e 0a 20 20 20 20 20 20 74 68 65 20 74 79 70 | truct.Literals</a>.......the.typ |
| 1e920 | 65 20 63 61 6e 20 62 65 20 6f 6d 69 74 74 65 64 20 66 72 6f 6d 20 61 72 72 61 79 20 6c 69 74 65 | e.can.be.omitted.from.array.lite |
| 1e940 | 72 61 6c 73 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e | rals:</p>.......<p.class="file"> |
| 1e960 | 61 6e 6f 6e 5f 6c 69 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 | anon_list.zig</p><pre><code.clas |
| 1e980 | 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e | s="zig"><span.class="tok-kw">con |
| 1e9a0 | 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 |
| 1e9c0 | 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 |
| 1e9e0 | 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"</ |
| 1ea00 | 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 |
| 1ea20 | 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 |
| 1ea40 | 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 |
| 1ea60 | 74 3c 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">& |
| 1ea80 | 71 75 6f 74 3b 61 6e 6f 6e 79 6d 6f 75 73 20 6c 69 73 74 20 6c 69 74 65 72 61 6c 20 73 79 6e 74 | quot;anonymous.list.literal.synt |
| 1eaa0 | 61 78 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | ax"</span>.{.....<span.clas |
| 1eac0 | 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 |
| 1eae0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 5d | pan.class="tok-number">4</span>] |
| 1eb00 | 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> |
| 1eb20 | 20 3d 20 2e 7b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 31 | .=..{<span.class="tok-number">11 |
| 1eb40 | 3c 2f 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 |
| 1eb60 | 22 3e 32 32 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | ">22</span>,.<span.class="tok-nu |
| 1eb80 | 6d 62 65 72 22 3e 33 33 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | mber">33</span>,.<span.class="to |
| 1eba0 | 6b 2d 6e 75 6d 62 65 72 22 3e 34 34 3c 2f 73 70 61 6e 3e 7d 3b 0a 20 20 20 20 65 78 70 65 63 74 | k-number">44</span>};.....expect |
| 1ebc0 | 28 61 72 72 61 79 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e | (array[<span.class="tok-number"> |
| 1ebe0 | 30 3c 2f 73 70 61 6e 3e 5d 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | 0</span>].==.<span.class="tok-nu |
| 1ec00 | 6d 62 65 72 22 3e 31 31 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 65 78 70 65 63 74 28 61 72 72 | mber">11</span>);.....expect(arr |
| 1ec20 | 61 79 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 | ay[<span.class="tok-number">1</s |
| 1ec40 | 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 |
| 1ec60 | 22 3e 32 32 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 65 78 70 65 63 74 28 61 72 72 61 79 5b 3c | ">22</span>);.....expect(array[< |
| 1ec80 | 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> |
| 1eca0 | 5d 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 33 | ].==.<span.class="tok-number">33 |
| 1ecc0 | 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 65 78 70 65 63 74 28 61 72 72 61 79 5b 3c 73 70 61 6e | </span>);.....expect(array[<span |
| 1ece0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 5d 20 3d 3d | .class="tok-number">3</span>].== |
| 1ed00 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 34 3c 2f 73 70 | .<span.class="tok-number">44</sp |
| 1ed20 | 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 | an>);.}</code></pre><pre><code.c |
| 1ed40 | 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 61 6e 6f 6e 5f 6c 69 73 | lass="shell">$.zig.test.anon_lis |
| 1ed60 | 74 2e 7a 69 67 0a 31 2f 31 20 74 65 73 74 20 26 71 75 6f 74 3b 61 6e 6f 6e 79 6d 6f 75 73 20 6c | t.zig.1/1.test."anonymous.l |
| 1ed80 | 69 73 74 20 6c 69 74 65 72 61 6c 20 73 79 6e 74 61 78 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 41 | ist.literal.syntax"....OK.A |
| 1eda0 | 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e | ll.1.tests.passed..</code></pre> |
| 1edc0 | 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 66 20 74 68 65 72 65 20 69 73 20 6e 6f | ........<p>.......If.there.is.no |
| 1ede0 | 20 74 79 70 65 20 69 6e 20 74 68 65 20 72 65 73 75 6c 74 20 6c 6f 63 61 74 69 6f 6e 20 74 68 65 | .type.in.the.result.location.the |
| 1ee00 | 6e 20 61 6e 20 61 6e 6f 6e 79 6d 6f 75 73 20 6c 69 73 74 20 6c 69 74 65 72 61 6c 20 61 63 74 75 | n.an.anonymous.list.literal.actu |
| 1ee20 | 61 6c 6c 79 0a 20 20 20 20 20 20 74 75 72 6e 73 20 69 6e 74 6f 20 61 20 3c 61 20 68 72 65 66 3d | ally.......turns.into.a.<a.href= |
| 1ee40 | 22 23 73 74 72 75 63 74 22 3e 73 74 72 75 63 74 3c 2f 61 3e 20 77 69 74 68 20 6e 75 6d 62 65 72 | "#struct">struct</a>.with.number |
| 1ee60 | 65 64 20 66 69 65 6c 64 20 6e 61 6d 65 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 | ed.field.names:.......</p>...... |
| 1ee80 | 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 69 6e 66 65 72 5f 6c 69 73 74 5f 6c 69 74 65 | .<p.class="file">infer_list_lite |
| 1eea0 | 72 61 6c 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | ral.zig</p><pre><code.class="zig |
| 1eec0 | 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 | "><span.class="tok-kw">const</sp |
| 1eee0 | 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 |
| 1ef00 | 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=" |
| 1ef20 | 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>) |
| 1ef40 | 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 |
| 1ef60 | 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; |
| 1ef80 | 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 |
| 1efa0 | 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 |
| 1efc0 | 75 6c 6c 79 20 61 6e 6f 6e 79 6d 6f 75 73 20 6c 69 73 74 20 6c 69 74 65 72 61 6c 26 71 75 6f 74 | ully.anonymous.list.literal" |
| 1efe0 | 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 64 75 6d 70 28 2e 7b 20 3c 73 70 61 6e 20 63 6c 61 | ;</span>.{.....dump(.{.<span.cla |
| 1f000 | 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 61 73 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 | ss="tok-builtin">@as</span>(<spa |
| 1f020 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 2c 20 3c | n.class="tok-type">u32</span>,.< |
| 1f040 | 73 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 |
| 1f060 | 61 6e 3e 29 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e | an>),.<span.class="tok-builtin"> |
| 1f080 | 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 |
| 1f0a0 | 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 |
| 1f0c0 | 75 6d 62 65 72 22 3e 31 32 2e 33 34 3c 2f 73 70 61 6e 3e 29 2c 20 3c 73 70 61 6e 20 63 6c 61 73 | umber">12.34</span>),.<span.clas |
| 1f0e0 | 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 20 | s="tok-null">true</span>,.<span. |
| 1f100 | 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 2f | class="tok-str">"hi"</ |
| 1f120 | 73 70 61 6e 3e 7d 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | span>});.}..<span.class="tok-kw" |
| 1f140 | 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"> |
| 1f160 | 64 75 6d 70 3c 2f 73 70 61 6e 3e 28 61 72 67 73 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | dump</span>(args:.<span.class="t |
| 1f180 | 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 |
| 1f1a0 | 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>.{..... |
| 1f1c0 | 65 78 70 65 63 74 28 61 72 67 73 2e 40 26 71 75 6f 74 3b 30 26 71 75 6f 74 3b 20 3d 3d 20 3c 73 | expect(args.@"0".==.<s |
| 1f1e0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 34 3c 2f 73 70 61 | pan.class="tok-number">1234</spa |
| 1f200 | 6e 3e 29 3b 0a 20 20 20 20 65 78 70 65 63 74 28 61 72 67 73 2e 40 26 71 75 6f 74 3b 31 26 71 75 | n>);.....expect(args.@"1&qu |
| 1f220 | 6f 74 3b 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e | ot;.==.<span.class="tok-number"> |
| 1f240 | 31 32 2e 33 34 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 65 78 70 65 63 74 28 61 72 67 73 2e 40 | 12.34</span>);.....expect(args.@ |
| 1f260 | 26 71 75 6f 74 3b 32 26 71 75 6f 74 3b 29 3b 0a 20 20 20 20 65 78 70 65 63 74 28 61 72 67 73 2e | "2");.....expect(args. |
| 1f280 | 40 26 71 75 6f 74 3b 33 26 71 75 6f 74 3b 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | @"3"[<span.class="tok- |
| 1f2a0 | 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 |
| 1f2c0 | 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 68 27 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 65 78 70 65 | ="tok-str">'h'</span>);.....expe |
| 1f2e0 | 63 74 28 61 72 67 73 2e 40 26 71 75 6f 74 3b 33 26 71 75 6f 74 3b 5b 3c 73 70 61 6e 20 63 6c 61 | ct(args.@"3"[<span.cla |
| 1f300 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 5d 20 3d 3d 20 3c 73 70 | ss="tok-number">1</span>].==.<sp |
| 1f320 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 69 27 3c 2f 73 70 61 6e 3e 29 3b 0a | an.class="tok-str">'i'</span>);. |
| 1f340 | 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | }</code></pre><pre><code.class=" |
| 1f360 | 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 69 6e 66 65 72 5f 6c 69 73 74 5f 6c 69 74 | shell">$.zig.test.infer_list_lit |
| 1f380 | 65 72 61 6c 2e 7a 69 67 0a 31 2f 31 20 74 65 73 74 20 26 71 75 6f 74 3b 66 75 6c 6c 79 20 61 6e | eral.zig.1/1.test."fully.an |
| 1f3a0 | 6f 6e 79 6d 6f 75 73 20 6c 69 73 74 20 6c 69 74 65 72 61 6c 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b | onymous.list.literal"....OK |
| 1f3c0 | 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 | .All.1.tests.passed..</code></pr |
| 1f3e0 | 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 4d 75 6c 74 69 64 | e>................<h2.id="Multid |
| 1f400 | 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 66 3d 22 23 74 6f 63 | imensional-Arrays"><a.href="#toc |
| 1f420 | 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 3e 4d 75 6c 74 69 64 | -Multidimensional-Arrays">Multid |
| 1f440 | 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 63 6c 61 73 73 3d 22 | imensional.Arrays</a>.<a.class=" |
| 1f460 | 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 6e 61 6c 2d 41 72 72 | hdr".href="#Multidimensional-Arr |
| 1f480 | 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 70 3e 0a 20 20 20 20 | ays">..</a></h2>........<p>..... |
| 1f4a0 | 20 20 4d 75 74 6c 69 64 69 6d 65 6e 73 69 6f 6e 61 6c 20 61 72 72 61 79 73 20 63 61 6e 20 62 65 | ..Mutlidimensional.arrays.can.be |
| 1f4c0 | 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 73 3a 0a 20 20 20 20 | .created.by.nesting.arrays:..... |
| 1f4e0 | 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 6d 75 6c | ..</p>.......<p.class="file">mul |
| 1f500 | 74 69 64 69 6d 65 6e 73 69 6f 6e 61 6c 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 | tidimensional.zig</p><pre><code. |
| 1f520 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | class="zig"><span.class="tok-kw" |
| 1f540 | 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= |
| 1f560 | 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 |
| 1f580 | 61 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 |
| 1f5a0 | 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" |
| 1f5c0 | 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 |
| 1f5e0 | 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" |
| 1f600 | 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6d 61 74 34 78 34 20 3d 20 5b 3c 73 70 61 6e 20 63 6c | >const</span>.mat4x4.=.[<span.cl |
| 1f620 | 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 73 70 61 6e | ass="tok-number">4</span>][<span |
| 1f640 | 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 3c 73 70 | .class="tok-number">4</span>]<sp |
| 1f660 | 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 0a | an.class="tok-type">f32</span>{. |
| 1f680 | 20 20 20 20 5b 5f 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 33 | ....[_]<span.class="tok-type">f3 |
| 1f6a0 | 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 |
| 1f6c0 | 72 22 3e 31 2e 30 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | r">1.0</span>,.<span.class="tok- |
| 1f6e0 | 6e 75 6d 62 65 72 22 3e 30 2e 30 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | number">0.0</span>,.<span.class= |
| 1f700 | 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 20 63 | "tok-number">0.0</span>,.<span.c |
| 1f720 | 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 20 7d 2c 0a | lass="tok-number">0.0</span>.},. |
| 1f740 | 20 20 20 20 5b 5f 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 33 | ....[_]<span.class="tok-type">f3 |
| 1f760 | 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 |
| 1f780 | 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- |
| 1f7a0 | 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= |
| 1f7c0 | 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 20 63 | "tok-number">0.0</span>,.<span.c |
| 1f7e0 | 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 20 7d 2c 0a | lass="tok-number">1.0</span>.},. |
| 1f800 | 20 20 20 20 5b 5f 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 33 | ....[_]<span.class="tok-type">f3 |
| 1f820 | 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 |
| 1f840 | 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- |
| 1f860 | 6e 75 6d 62 65 72 22 3e 30 2e 30 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | number">0.0</span>,.<span.class= |
| 1f880 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 2e 30 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 | "tok-number">1.0</span>,.<span.c |
| 1f8a0 | 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 20 7d 2c 0a | lass="tok-number">0.0</span>.},. |
| 1f8c0 | 20 20 20 20 5b 5f 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 33 | ....[_]<span.class="tok-type">f3 |
| 1f8e0 | 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 |
| 1f900 | 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- |
| 1f920 | 6e 75 6d 62 65 72 22 3e 30 2e 30 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | number">0.0</span>,.<span.class= |
| 1f940 | 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 20 63 | "tok-number">0.0</span>,.<span.c |
| 1f960 | 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 20 7d 2c 0a | lass="tok-number">1.0</span>.},. |
| 1f980 | 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 |
| 1f9a0 | 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">" |
| 1f9c0 | 6d 75 6c 74 69 64 69 6d 65 6e 73 69 6f 6e 61 6c 20 61 72 72 61 79 73 26 71 75 6f 74 3b 3c 2f 73 | multidimensional.arrays"</s |
| 1f9e0 | 70 61 6e 3e 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 |
| 1fa00 | 65 6e 74 22 3e 2f 2f 20 41 63 63 65 73 73 20 74 68 65 20 32 44 20 61 72 72 61 79 20 62 79 20 69 | ent">//.Access.the.2D.array.by.i |
| 1fa20 | 6e 64 65 78 69 6e 67 20 74 68 65 20 6f 75 74 65 72 20 61 72 72 61 79 2c 20 61 6e 64 20 74 68 65 | ndexing.the.outer.array,.and.the |
| 1fa40 | 6e 20 74 68 65 20 69 6e 6e 65 72 20 61 72 72 61 79 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 65 78 | n.the.inner.array.</span>.....ex |
| 1fa60 | 70 65 63 74 28 6d 61 74 34 78 34 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | pect(mat4x4[<span.class="tok-num |
| 1fa80 | 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 5d 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ber">1</span>][<span.class="tok- |
| 1faa0 | 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 5d 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | number">1</span>].==.<span.class |
| 1fac0 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 2e 30 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 20 20 20 20 | ="tok-number">1.0</span>);...... |
| 1fae0 | 3c 73 70 61 6e 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 |
| 1fb00 | 65 20 77 65 20 69 74 65 72 61 74 65 20 77 69 74 68 20 66 6f 72 20 6c 6f 6f 70 73 2e 3c 2f 73 70 | e.we.iterate.with.for.loops.</sp |
| 1fb20 | 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 72 | an>.....<span.class="tok-kw">for |
| 1fb40 | 3c 2f 73 70 61 6e 3e 20 28 6d 61 74 34 78 34 29 20 7c 72 6f 77 2c 20 72 6f 77 5f 69 6e 64 65 78 | </span>.(mat4x4).|row,.row_index |
| 1fb60 | 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" |
| 1fb80 | 3e 66 6f 72 3c 2f 73 70 61 6e 3e 20 28 72 6f 77 29 20 7c 63 65 6c 6c 2c 20 63 6f 6c 75 6d 6e 5f | >for</span>.(row).|cell,.column_ |
| 1fba0 | 69 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 | index|.{.............<span.class |
| 1fbc0 | 3d 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 | ="tok-kw">if</span>.(row_index.= |
| 1fbe0 | 3d 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 | =.column_index).{............... |
| 1fc00 | 20 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 | ..expect(cell.==.<span.class="to |
| 1fc20 | 6b 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 | k-number">1.0</span>);.......... |
| 1fc40 | 20 20 20 7d 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 7d 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 | ...}.........}.....}.}</code></p |
| 1fc60 | 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 | re><pre><code.class="shell">$.zi |
| 1fc80 | 67 20 74 65 73 74 20 6d 75 6c 74 69 64 69 6d 65 6e 73 69 6f 6e 61 6c 2e 7a 69 67 0a 31 2f 31 20 | g.test.multidimensional.zig.1/1. |
| 1fca0 | 74 65 73 74 20 26 71 75 6f 74 3b 6d 75 6c 74 69 64 69 6d 65 6e 73 69 6f 6e 61 6c 20 61 72 72 61 | test."multidimensional.arra |
| 1fcc0 | 79 73 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 | ys"....OK.All.1.tests.passe |
| 1fce0 | 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 | d..</code></pre>................ |
| 1fd00 | 3c 68 32 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 41 72 72 61 | <h2.id="Sentinel-Terminated-Arra |
| 1fd20 | 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 6c 2d 54 65 72 6d 69 | ys"><a.href="#toc-Sentinel-Termi |
| 1fd40 | 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 |
| 1fd60 | 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 72 22 20 68 72 65 66 | d.Arrays</a>.<a.class="hdr".href |
| 1fd80 | 3d 22 23 53 65 6e 74 69 6e 65 6c 2d 54 65 72 6d 69 6e 61 74 65 64 2d 41 72 72 61 79 73 22 3e c2 | ="#Sentinel-Terminated-Arrays">. |
| 1fda0 | a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 20 | .</a></h2>........<p>.......The. |
| 1fdc0 | 73 79 6e 74 61 78 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 5b 4e 3a 78 5d 54 3c | syntax.<code.class="zig">[N:x]T< |
| 1fde0 | 2f 63 6f 64 65 3e 20 64 65 73 63 72 69 62 65 73 20 61 6e 20 61 72 72 61 79 20 77 68 69 63 68 20 | /code>.describes.an.array.which. |
| 1fe00 | 68 61 73 20 61 20 73 65 6e 74 69 6e 65 6c 20 65 6c 65 6d 65 6e 74 20 6f 66 20 76 61 6c 75 65 20 | has.a.sentinel.element.of.value. |
| 1fe20 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 78 3c 2f 63 6f 64 65 3e 20 61 74 20 74 68 | <code.class="zig">x</code>.at.th |
| 1fe40 | 65 0a 20 20 20 20 20 20 69 6e 64 65 78 20 63 6f 72 72 65 73 70 6f 6e 64 69 6e 67 20 74 6f 20 3c | e.......index.corresponding.to.< |
| 1fe60 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 6c 65 6e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 | code.class="zig">len</code>..... |
| 1fe80 | 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 6e 75 | ...</p>.......<p.class="file">nu |
| 1fea0 | 6c 6c 5f 74 65 72 6d 69 6e 61 74 65 64 5f 61 72 72 61 79 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e | ll_terminated_array.zig</p><pre> |
| 1fec0 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | <code.class="zig"><span.class="t |
| 1fee0 | 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. |
| 1ff00 | 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 |
| 1ff20 | 6e 3e 28 3c 73 70 61 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 |
| 1ff40 | 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 |
| 1ff60 | 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 |
| 1ff80 | 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 |
| 1ffa0 | 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=" |
| 1ffc0 | 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 6e 75 6c 6c 20 74 65 72 6d 69 6e 61 74 65 64 20 61 | tok-str">"null.terminated.a |
| 1ffe0 | 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 6c | rray"</span>.{.....<span.cl |
| 20000 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 72 72 61 79 20 | ass="tok-kw">const</span>.array. |
| 20020 | 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 30 3c | =.[_:<span.class="tok-number">0< |
| 20040 | 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 |
| 20060 | 3c 2f 73 70 61 6e 3e 20 7b 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 |
| 20080 | 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 |
| 200a0 | 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- |
| 200c0 | 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 |
| 200e0 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 7d 3b 0a 0a 20 20 20 20 65 78 70 65 63 | ok-number">4</span>};......expec |
| 20100 | 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 70 | t(<span.class="tok-builtin">@Typ |
| 20120 | 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 6c 61 73 | eOf</span>(array).==.[<span.clas |
| 20140 | 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 20 63 6c | s="tok-number">4</span>:<span.cl |
| 20160 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 5d 3c 73 70 61 6e 20 | ass="tok-number">0</span>]<span. |
| 20180 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 | class="tok-type">u8</span>);.... |
| 201a0 | 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 61 73 73 | .expect(array.len.==.<span.class |
| 201c0 | 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 65 78 70 | ="tok-number">4</span>);.....exp |
| 201e0 | 65 63 74 28 61 72 72 61 79 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | ect(array[<span.class="tok-numbe |
| 20200 | 72 22 3e 34 3c 2f 73 70 61 6e 3e 5d 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | r">4</span>].==.<span.class="tok |
| 20220 | 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 | -number">0</span>);.}</code></pr |
| 20240 | 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 | e><pre><code.class="shell">$.zig |
| 20260 | 20 74 65 73 74 20 6e 75 6c 6c 5f 74 65 72 6d 69 6e 61 74 65 64 5f 61 72 72 61 79 2e 7a 69 67 0a | .test.null_terminated_array.zig. |
| 20280 | 31 2f 31 20 74 65 73 74 20 26 71 75 6f 74 3b 6e 75 6c 6c 20 74 65 72 6d 69 6e 61 74 65 64 20 61 | 1/1.test."null.terminated.a |
| 202a0 | 72 72 61 79 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 | rray"....OK.All.1.tests.pas |
| 202c0 | 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 | sed..</code></pre>........<p>See |
| 202e0 | 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 53 65 6e | .also:</p><ul>.<li><a.href="#Sen |
| 20300 | 74 69 6e 65 6c 2d 54 65 72 6d 69 6e 61 74 65 64 2d 50 6f 69 6e 74 65 72 73 22 3e 53 65 6e 74 69 | tinel-Terminated-Pointers">Senti |
| 20320 | 6e 65 6c 2d 54 65 72 6d 69 6e 61 74 65 64 20 50 6f 69 6e 74 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e | nel-Terminated.Pointers</a></li> |
| 20340 | 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 53 65 6e 74 69 6e 65 6c 2d 54 65 72 6d 69 6e 61 74 | .<li><a.href="#Sentinel-Terminat |
| 20360 | 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 |
| 20380 | 6c 69 63 65 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 | lices</a></li>.</ul>............ |
| 203a0 | 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 31 20 69 64 3d 22 56 65 63 74 6f 72 73 22 3e 3c 61 20 68 | ...........<h1.id="Vectors"><a.h |
| 203c0 | 72 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 | ref="#toc-Vectors">Vectors</a>.< |
| 203e0 | 61 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 | a.class="hdr".href="#Vectors">.. |
| 20400 | 3c 2f 61 3e 3c 2f 68 31 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 41 20 76 65 63 | </a></h1>........<p>.......A.vec |
| 20420 | 74 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 | tor.is.a.group.of.booleans,.<a.h |
| 20440 | 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 2c 20 3c 61 | ref="#Integers">Integers</a>,.<a |
| 20460 | 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 73 22 3e 46 6c 6f 61 74 73 3c 2f 61 3e 2c 20 6f 72 20 3c | .href="#Floats">Floats</a>,.or.< |
| 20480 | 61 20 68 72 65 66 3d 22 23 50 6f 69 6e 74 65 72 73 22 3e 50 6f 69 6e 74 65 72 73 3c 2f 61 3e 20 | a.href="#Pointers">Pointers</a>. |
| 204a0 | 77 68 69 63 68 20 61 72 65 20 6f 70 65 72 61 74 65 64 20 6f 6e 0a 20 20 20 20 20 20 69 6e 20 70 | which.are.operated.on.......in.p |
| 204c0 | 61 72 61 6c 6c 65 6c 20 75 73 69 6e 67 20 61 20 73 69 6e 67 6c 65 20 69 6e 73 74 72 75 63 74 69 | arallel.using.a.single.instructi |
| 204e0 | 6f 6e 20 28 3c 61 20 68 72 65 66 3d 22 23 53 49 4d 44 22 3e 53 49 4d 44 3c 2f 61 3e 29 2e 20 56 | on.(<a.href="#SIMD">SIMD</a>)..V |
| 20500 | 65 63 74 6f 72 20 74 79 70 65 73 20 61 72 65 20 63 72 65 61 74 65 64 20 77 69 74 68 20 74 68 65 | ector.types.are.created.with.the |
| 20520 | 20 62 75 69 6c 74 69 6e 20 66 75 6e 63 74 69 6f 6e 20 3c 61 20 68 72 65 66 3d 22 23 54 79 70 65 | .builtin.function.<a.href="#Type |
| 20540 | 22 3e 40 54 79 70 65 3c 2f 61 3e 2c 0a 20 20 20 20 20 20 6f 72 20 75 73 69 6e 67 20 74 68 65 20 | ">@Type</a>,.......or.using.the. |
| 20560 | 73 68 6f 72 74 68 61 6e 64 20 61 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 73 | shorthand.as.<code.class="zig">s |
| 20580 | 74 64 2e 6d 65 74 61 2e 56 65 63 74 6f 72 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 | td.meta.Vector</code>........</p |
| 205a0 | 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 4f 44 4f 20 74 61 6c 6b 20 61 62 6f 75 | >.......<p>.......TODO.talk.abou |
| 205c0 | 74 20 43 20 41 42 49 20 69 6e 74 65 72 6f 70 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 | t.C.ABI.interop.......</p>...... |
| 205e0 | 20 3c 68 32 20 69 64 3d 22 53 49 4d 44 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 53 49 4d | .<h2.id="SIMD"><a.href="#toc-SIM |
| 20600 | 44 22 3e 53 49 4d 44 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d | D">SIMD</a>.<a.class="hdr".href= |
| 20620 | 22 23 53 49 4d 44 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 | "#SIMD">..</a></h2>........<p>.. |
| 20640 | 20 20 20 20 20 54 4f 44 4f 20 5a 69 67 27 73 20 53 49 4d 44 20 61 62 69 6c 69 74 69 65 73 20 61 | .....TODO.Zig's.SIMD.abilities.a |
| 20660 | 72 65 20 6a 75 73 74 20 62 65 67 69 6e 6e 69 6e 67 20 74 6f 20 62 65 20 66 6c 65 73 68 65 64 20 | re.just.beginning.to.be.fleshed. |
| 20680 | 6f 75 74 2e 20 48 65 72 65 20 61 72 65 20 73 6f 6d 65 20 74 61 6c 6b 69 6e 67 20 70 6f 69 6e 74 | out..Here.are.some.talking.point |
| 206a0 | 73 20 74 6f 20 75 70 64 61 74 65 20 74 68 65 0a 20 20 20 20 20 20 64 6f 63 73 20 77 69 74 68 3a | s.to.update.the.......docs.with: |
| 206c0 | 0a 20 20 20 20 20 20 2a 20 57 68 61 74 20 6b 69 6e 64 20 6f 66 20 6f 70 65 72 61 74 69 6f 6e 73 | .......*.What.kind.of.operations |
| 206e0 | 20 63 61 6e 20 79 6f 75 20 64 6f 3f 20 41 6c 6c 20 74 68 65 20 6f 70 65 72 61 74 69 6f 6e 73 20 | .can.you.do?.All.the.operations. |
| 20700 | 6f 6e 20 69 6e 74 65 67 65 72 73 20 61 6e 64 20 66 6c 6f 61 74 73 3f 20 57 68 61 74 20 61 62 6f | on.integers.and.floats?.What.abo |
| 20720 | 75 74 20 6d 69 78 69 6e 67 20 73 63 61 6c 61 72 20 61 6e 64 20 76 65 63 74 6f 72 3f 0a 20 20 20 | ut.mixing.scalar.and.vector?.... |
| 20740 | 20 20 20 2a 20 48 6f 77 20 74 6f 20 63 6f 6e 76 65 72 74 20 74 6f 2f 66 72 6f 6d 20 76 65 63 74 | ...*.How.to.convert.to/from.vect |
| 20760 | 6f 72 73 2f 61 72 72 61 79 73 0a 20 20 20 20 20 20 2a 20 48 6f 77 20 74 6f 20 61 63 63 65 73 73 | ors/arrays.......*.How.to.access |
| 20780 | 20 69 6e 64 69 76 69 64 75 61 6c 20 65 6c 65 6d 65 6e 74 73 20 66 72 6f 6d 20 76 65 63 74 6f 72 | .individual.elements.from.vector |
| 207a0 | 73 2c 20 68 6f 77 20 74 6f 20 6c 6f 6f 70 20 6f 76 65 72 20 74 68 65 20 65 6c 65 6d 65 6e 74 73 | s,.how.to.loop.over.the.elements |
| 207c0 | 0a 20 20 20 20 20 20 2a 20 22 73 68 75 66 66 6c 65 22 0a 20 20 20 20 20 20 2a 20 41 64 76 69 63 | .......*."shuffle".......*.Advic |
| 207e0 | 65 20 6f 6e 20 77 72 69 74 69 6e 67 20 68 69 67 68 20 70 65 72 66 20 73 6f 66 74 77 61 72 65 2c | e.on.writing.high.perf.software, |
| 20800 | 20 68 6f 77 20 74 6f 20 61 62 73 74 72 61 63 74 20 74 68 65 20 62 65 73 74 20 77 61 79 0a 20 20 | .how.to.abstract.the.best.way... |
| 20820 | 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 | ....</p>......................<h |
| 20840 | 31 20 69 64 3d 22 50 6f 69 6e 74 65 72 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 50 6f | 1.id="Pointers"><a.href="#toc-Po |
| 20860 | 69 6e 74 65 72 73 22 3e 50 6f 69 6e 74 65 72 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 | inters">Pointers</a>.<a.class="h |
| 20880 | 64 72 22 20 68 72 65 66 3d 22 23 50 6f 69 6e 74 65 72 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 31 3e | dr".href="#Pointers">..</a></h1> |
| 208a0 | 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 5a 69 67 20 68 61 73 20 74 77 6f 20 6b 69 | ........<p>.......Zig.has.two.ki |
| 208c0 | 6e 64 73 20 6f 66 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 | nds.of.pointers:.......</p>..... |
| 208e0 | 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 | ..<ul>...........<li><code.class |
| 20900 | 3d 22 7a 69 67 22 3e 2a 54 3c 2f 63 6f 64 65 3e 20 2d 20 70 6f 69 6e 74 65 72 20 74 6f 20 65 78 | ="zig">*T</code>.-.pointer.to.ex |
| 20920 | 61 63 74 6c 79 20 6f 6e 65 20 69 74 65 6d 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e | actly.one.item..............<ul> |
| 20940 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 75 70 70 6f 72 74 73 20 64 65 72 65 | ...............<li>Supports.dere |
| 20960 | 66 20 73 79 6e 74 61 78 3a 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 70 74 72 2e | f.syntax:.<code.class="zig">ptr. |
| 20980 | 2a 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a | *</code></li>.............</ul>. |
| 209a0 | 20 20 20 20 20 20 20 20 20 20 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 | ..........</li>...........<li><c |
| 209c0 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 5b 2a 5d 54 3c 2f 63 6f 64 65 3e 20 2d 20 70 6f | ode.class="zig">[*]T</code>.-.po |
| 209e0 | 69 6e 74 65 72 20 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 | inter.to.unknown.number.of.items |
| 20a00 | 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>.............. |
| 20a20 | 20 3c 6c 69 3e 53 75 70 70 6f 72 74 73 20 69 6e 64 65 78 20 73 79 6e 74 61 78 3a 20 3c 63 6f 64 | .<li>Supports.index.syntax:.<cod |
| 20a40 | 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 70 74 72 5b 69 5d 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e | e.class="zig">ptr[i]</code></li> |
| 20a60 | 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 73 6c 69 63 | ...............<li>Supports.slic |
| 20a80 | 65 20 73 79 6e 74 61 78 3a 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 70 74 72 5b | e.syntax:.<code.class="zig">ptr[ |
| 20aa0 | 73 74 61 72 74 2e 2e 65 6e 64 5d 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 | start..end]</code></li>......... |
| 20ac0 | 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 61 72 69 74 68 | ......<li>Supports.pointer.arith |
| 20ae0 | 6d 65 74 69 63 3a 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 70 74 72 20 2b 20 78 | metic:.<code.class="zig">ptr.+.x |
| 20b00 | 3c 2f 63 6f 64 65 3e 2c 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 70 74 72 20 2d | </code>,.<code.class="zig">ptr.- |
| 20b20 | 20 78 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 | .x</code></li>...............<li |
| 20b40 | 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 54 3c 2f 63 6f 64 65 3e 20 6d 75 73 74 | ><code.class="zig">T</code>.must |
| 20b60 | 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. |
| 20b80 | 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 20 20 | that.it.cannot.be............... |
| 20ba0 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | <code.class="zig"><span.class="t |
| 20bc0 | 6f 6b 2d 74 79 70 65 22 3e 63 5f 76 6f 69 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6f 72 | ok-type">c_void</span></code>.or |
| 20be0 | 20 61 6e 79 20 6f 74 68 65 72 20 3c 61 20 68 72 65 66 3d 22 23 6f 70 61 71 75 65 22 3e 6f 70 61 | .any.other.<a.href="#opaque">opa |
| 20c00 | 71 75 65 20 74 79 70 65 3c 2f 61 3e 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c | que.type</a>.</li>.............< |
| 20c20 | 2f 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e | /ul>...........</li>.......</ul> |
| 20c40 | 0a 20 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 | .......<p>These.types.are.closel |
| 20c60 | 79 20 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 | y.related.to.<a.href="#Arrays">A |
| 20c80 | 72 72 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 | rrays</a>.and.<a.href="#Slices"> |
| 20ca0 | 53 6c 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 | Slices</a>:</p>.........<ul>.... |
| 20cc0 | 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 2a | .........<li><code.class="zig">* |
| 20ce0 | 5b 4e 5d 54 3c 2f 63 6f 64 65 3e 20 2d 20 70 6f 69 6e 74 65 72 20 74 6f 20 4e 20 69 74 65 6d 73 | [N]T</code>.-.pointer.to.N.items |
| 20d00 | 2c 20 73 61 6d 65 20 61 73 20 73 69 6e 67 6c 65 2d 69 74 65 6d 20 70 6f 69 6e 74 65 72 20 74 6f | ,.same.as.single-item.pointer.to |
| 20d20 | 20 61 72 72 61 79 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 | .array..............<ul>........ |
| 20d40 | 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 75 70 70 6f 72 74 73 20 69 6e 64 65 78 20 73 79 6e 74 | .........<li>Supports.index.synt |
| 20d60 | 61 78 3a 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 61 72 72 61 79 5f 70 74 72 5b | ax:.<code.class="zig">array_ptr[ |
| 20d80 | 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 20 20 3c | i]</code></li>.................< |
| 20da0 | 6c 69 3e 53 75 70 70 6f 72 74 73 20 73 6c 69 63 65 20 73 79 6e 74 61 78 3a 20 3c 63 6f 64 65 20 | li>Supports.slice.syntax:.<code. |
| 20dc0 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 61 72 72 61 79 5f 70 74 72 5b 73 74 61 72 74 2e 2e 65 6e 64 | class="zig">array_ptr[start..end |
| 20de0 | 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 20 20 3c 6c | ]</code></li>.................<l |
| 20e00 | 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 3c 63 6f 64 65 20 63 | i>Supports.len.property:.<code.c |
| 20e20 | 6c 61 73 73 3d 22 7a 69 67 22 3e 61 72 72 61 79 5f 70 74 72 2e 6c 65 6e 3c 2f 63 6f 64 65 3e 3c | lass="zig">array_ptr.len</code>< |
| 20e40 | 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>.......... |
| 20e60 | 20 20 20 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 20 20 3c | ...</li>.........</ul>.........< |
| 20e80 | 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d | ul>.............<li><code.class= |
| 20ea0 | 22 7a 69 67 22 3e 5b 5d 54 3c 2f 63 6f 64 65 3e 20 2d 20 70 6f 69 6e 74 65 72 20 74 6f 20 72 75 | "zig">[]T</code>.-.pointer.to.ru |
| 20ec0 | 6e 74 69 6d 65 2d 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 | ntime-known.number.of.items..... |
| 20ee0 | 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 |
| 20f00 | 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 20 63 | i>Supports.index.syntax:.<code.c |
| 20f20 | 6c 61 73 73 3d 22 7a 69 67 22 3e 73 6c 69 63 65 5b 69 5d 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a | lass="zig">slice[i]</code></li>. |
| 20f40 | 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 73 6c 69 | ................<li>Supports.sli |
| 20f60 | 63 65 20 73 79 6e 74 61 78 3a 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 73 6c 69 | ce.syntax:.<code.class="zig">sli |
| 20f80 | 63 65 5b 73 74 61 72 74 2e 2e 65 6e 64 5d 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 | ce[start..end]</code></li>...... |
| 20fa0 | 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 75 70 70 6f 72 74 73 20 6c 65 6e 20 70 72 6f 70 | ...........<li>Supports.len.prop |
| 20fc0 | 65 72 74 79 3a 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 73 6c 69 63 65 2e 6c 65 | erty:.<code.class="zig">slice.le |
| 20fe0 | 6e 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a | n</code></li>.............</ul>. |
| 21000 | 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 3e 0a | ............</li>.........</ul>. |
| 21020 | 20 20 20 20 20 20 20 20 3c 70 3e 55 73 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | ........<p>Use.<code.class="zig" |
| 21040 | 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 67 6c | >&x</code>.to.obtain.a.singl |
| 21060 | 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 20 20 3c 70 20 63 | e-item.pointer:</p>.........<p.c |
| 21080 | 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f | lass="file">test.zig</p><pre><co |
| 210a0 | 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | de.class="zig"><span.class="tok- |
| 210c0 | 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. |
| 210e0 | 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 |
| 21100 | 6e 3e 28 3c 73 70 61 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 |
| 21120 | 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; |
| 21140 | 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 |
| 21160 | 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 61 | n>.<span.class="tok-str">"a |
| 21180 | 64 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 | ddress.of.syntax"</span>.{. |
| 211a0 | 20 20 20 20 3c 73 70 61 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">// |
| 211c0 | 20 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 | .Get.the.address.of.a.variable:< |
| 211e0 | 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"> |
| 21200 | 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | const</span>.x:.<span.class="tok |
| 21220 | 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= |
| 21240 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 | "tok-number">1234</span>;.....<s |
| 21260 | 70 61 6e 20 63 6c 61 73 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>. |
| 21280 | 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 6e 20 63 6c 61 73 73 | x_ptr.=.&x;......<span.class |
| 212a0 | 3d 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 | ="tok-comment">//.Dereference.a. |
| 212c0 | 70 6f 69 6e 74 65 72 3a 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 65 78 70 65 63 74 28 78 5f 70 74 72 | pointer:</span>.....expect(x_ptr |
| 212e0 | 2e 2a 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 | .*.==.<span.class="tok-number">1 |
| 21300 | 32 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 | 234</span>);......<span.class="t |
| 21320 | 6f 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 | ok-comment">//.When.you.get.the. |
| 21340 | 61 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 | address.of.a.const.variable,.you |
| 21360 | 20 67 65 74 20 61 20 63 6f 6e 73 74 20 70 6f 69 6e 74 65 72 20 74 6f 20 61 20 73 69 6e 67 6c 65 | .get.a.const.pointer.to.a.single |
| 21380 | 20 69 74 65 6d 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 65 78 70 65 63 74 28 3c 73 70 61 6e 20 63 | .item.</span>.....expect(<span.c |
| 213a0 | 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 |
| 213c0 | 3e 28 78 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 6b 77 | >(x_ptr).==.*<span.class="tok-kw |
| 213e0 | 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- |
| 21400 | 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | type">i32</span>);......<span.cl |
| 21420 | 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 49 66 20 79 6f 75 20 77 61 6e 74 | ass="tok-comment">//.If.you.want |
| 21440 | 20 74 6f 20 6d 75 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 | .to.mutate.the.value,.you'd.need |
| 21460 | 20 61 6e 20 61 64 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 | .an.address.of.a.mutable.variabl |
| 21480 | 65 3a 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | e:</span>.....<span.class="tok-k |
| 214a0 | 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 79 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | w">var</span>.y:.<span.class="to |
| 214c0 | 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 |
| 214e0 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 36 37 38 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c | ="tok-number">5678</span>;.....< |
| 21500 | 73 70 61 6e 20 63 6c 61 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> |
| 21520 | 20 79 5f 70 74 72 20 3d 20 26 61 6d 70 3b 79 3b 0a 20 20 20 20 65 78 70 65 63 74 28 3c 73 70 61 | .y_ptr.=.&y;.....expect(<spa |
| 21540 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 | n.class="tok-builtin">@TypeOf</s |
| 21560 | 70 61 6e 3e 28 79 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 | pan>(y_ptr).==.*<span.class="tok |
| 21580 | 2d 74 79 70 65 22 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 | -type">i32</span>);.....y_ptr.*. |
| 215a0 | 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 |
| 215c0 | 70 61 6e 3e 3b 0a 20 20 20 20 65 78 70 65 63 74 28 79 5f 70 74 72 2e 2a 20 3d 3d 20 3c 73 70 61 | pan>;.....expect(y_ptr.*.==.<spa |
| 215e0 | 6e 20 63 6c 61 73 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 | n.class="tok-number">5679</span> |
| 21600 | 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< |
| 21620 | 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 |
| 21640 | 6f 74 3b 70 6f 69 6e 74 65 72 20 61 72 72 61 79 20 61 63 63 65 73 73 26 71 75 6f 74 3b 3c 2f 73 | ot;pointer.array.access"</s |
| 21660 | 70 61 6e 3e 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 |
| 21680 | 65 6e 74 22 3e 2f 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 | ent">//.Taking.an.address.of.an. |
| 216a0 | 69 6e 64 69 76 69 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 | individual.element.gives.a</span |
| 216c0 | 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"> |
| 216e0 | 2f 2f 20 70 6f 69 6e 74 65 72 20 74 6f 20 61 20 73 69 6e 67 6c 65 20 69 74 65 6d 2e 20 54 68 69 | //.pointer.to.a.single.item..Thi |
| 21700 | 73 20 6b 69 6e 64 20 6f 66 20 70 6f 69 6e 74 65 72 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 | s.kind.of.pointer</span>.....<sp |
| 21720 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 64 6f 65 73 20 6e | an.class="tok-comment">//.does.n |
| 21740 | 6f 74 20 73 75 70 70 6f 72 74 20 70 6f 69 6e 74 65 72 20 61 72 69 74 68 6d 65 74 69 63 2e 3c 2f | ot.support.pointer.arithmetic.</ |
| 21760 | 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 |
| 21780 | 61 72 3c 2f 73 70 61 6e 3e 20 61 72 72 61 79 20 3d 20 5b 5f 5d 3c 73 70 61 6e 20 63 6c 61 73 73 | ar</span>.array.=.[_]<span.class |
| 217a0 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 7b 20 3c 73 70 61 6e 20 63 6c 61 | ="tok-type">u8</span>{.<span.cla |
| 217c0 | 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. |
| 217e0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 | class="tok-number">2</span>,.<sp |
| 21800 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 2c 20 | an.class="tok-number">3</span>,. |
| 21820 | 3c 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 |
| 21840 | 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 |
| 21860 | 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 36 | pan>,.<span.class="tok-number">6 |
| 21880 | 3c 2f 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 |
| 218a0 | 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 6e 75 6d | ">7</span>,.<span.class="tok-num |
| 218c0 | 62 65 72 22 3e 38 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ber">8</span>,.<span.class="tok- |
| 218e0 | 6e 75 6d 62 65 72 22 3e 39 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | number">9</span>,.<span.class="t |
| 21900 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 20 20 20 20 3c 73 70 61 | ok-number">10</span>.};.....<spa |
| 21920 | 6e 20 63 6c 61 73 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 |
| 21940 | 72 20 3d 20 26 61 6d 70 3b 61 72 72 61 79 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | r.=.&array[<span.class="tok- |
| 21960 | 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 5d 3b 0a 20 20 20 20 65 78 70 65 63 74 28 3c 73 | number">2</span>];.....expect(<s |
| 21980 | 70 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< |
| 219a0 | 2f 73 70 61 6e 3e 28 70 74 72 29 20 3d 3d 20 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | /span>(ptr).==.*<span.class="tok |
| 219c0 | 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 20 20 20 20 65 78 70 65 63 74 28 61 | -type">u8</span>);......expect(a |
| 219e0 | 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< |
| 21a00 | 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 |
| 21a20 | 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 70 74 72 2e 2a 20 2b 3d 20 3c 73 70 61 | er">3</span>);.....ptr.*.+=.<spa |
| 21a40 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 20 | n.class="tok-number">1</span>;.. |
| 21a60 | 20 20 20 65 78 70 65 63 74 28 61 72 72 61 79 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ...expect(array[<span.class="tok |
| 21a80 | 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 5d 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | -number">2</span>].==.<span.clas |
| 21aa0 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 | s="tok-number">4</span>);.}</cod |
| 21ac0 | 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 | e></pre><pre><code.class="shell" |
| 21ae0 | 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 31 2f 32 20 74 65 73 74 20 26 71 | >$.zig.test.test.zig.1/2.test.&q |
| 21b00 | 75 6f 74 3b 61 64 64 72 65 73 73 20 6f 66 20 73 79 6e 74 61 78 26 71 75 6f 74 3b 2e 2e 2e 20 4f | uot;address.of.syntax"....O |
| 21b20 | 4b 0a 32 2f 32 20 74 65 73 74 20 26 71 75 6f 74 3b 70 6f 69 6e 74 65 72 20 61 72 72 61 79 20 61 | K.2/2.test."pointer.array.a |
| 21b40 | 63 63 65 73 73 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 41 6c 6c 20 32 20 74 65 73 74 73 20 70 61 | ccess"....OK.All.2.tests.pa |
| 21b60 | 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 | ssed..</code></pre>........<p>.. |
| 21b80 | 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 72 65 66 | .......In.Zig,.we.generally.pref |
| 21ba0 | 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 61 3e 20 | er.<a.href="#Slices">Slices</a>. |
| 21bc0 | 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 6c 2d 54 | rather.than.<a.href="#Sentinel-T |
| 21be0 | 65 72 6d 69 6e 61 74 65 64 2d 50 6f 69 6e 74 65 72 73 22 3e 53 65 6e 74 69 6e 65 6c 2d 54 65 72 | erminated-Pointers">Sentinel-Ter |
| 21c00 | 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 20 59 6f | minated.Pointers</a>..........Yo |
| 21c20 | 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 72 20 69 | u.can.turn.an.array.or.pointer.i |
| 21c40 | 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 78 2e 0a | nto.a.slice.using.slice.syntax.. |
| 21c60 | 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 53 6c 69 | ......</p>.......<p>.........Sli |
| 21c80 | 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 61 72 65 | ces.have.bounds.checking.and.are |
| 21ca0 | 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 61 67 61 | .therefore.protected.........aga |
| 21cc0 | 69 6e 73 74 20 74 68 69 73 20 6b 69 6e 64 20 6f 66 20 75 6e 64 65 66 69 6e 65 64 20 62 65 68 61 | inst.this.kind.of.undefined.beha |
| 21ce0 | 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 20 | vior..This.is.one.reason........ |
| 21d00 | 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 20 | .we.prefer.slices.to.pointers... |
| 21d20 | 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e | .....</p>.......<p.class="file"> |
| 21d40 | 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | test.zig</p><pre><code.class="zi |
| 21d60 | 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 | g"><span.class="tok-kw">const</s |
| 21d80 | 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 |
| 21da0 | 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 |
| 21dc0 | 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 |
| 21de0 | 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 |
| 21e00 | 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 |
| 21e20 | 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 73 6c 69 63 69 | ss="tok-str">"pointer.slici |
| 21e40 | 6e 67 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | ng"</span>.{.....<span.clas |
| 21e60 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 61 72 72 61 79 20 3d 20 5b 5f | s="tok-kw">var</span>.array.=.[_ |
| 21e80 | 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 |
| 21ea0 | 3e 7b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 | >{.<span.class="tok-number">1</s |
| 21ec0 | 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 | pan>,.<span.class="tok-number">2 |
| 21ee0 | 3c 2f 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 |
| 21f00 | 22 3e 33 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | ">3</span>,.<span.class="tok-num |
| 21f20 | 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ber">4</span>,.<span.class="tok- |
| 21f40 | 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | number">5</span>,.<span.class="t |
| 21f60 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 36 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ok-number">6</span>,.<span.class |
| 21f80 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 37 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c | ="tok-number">7</span>,.<span.cl |
| 21fa0 | 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 70 61 6e | ass="tok-number">8</span>,.<span |
| 21fc0 | 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 20 3c 73 | .class="tok-number">9</span>,.<s |
| 21fe0 | 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> |
| 22000 | 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 |
| 22020 | 73 74 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 | st</span>.slice.=.array[<span.cl |
| 22040 | 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 3c 73 70 61 6e | ass="tok-number">2</span>..<span |
| 22060 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 5d 3b 0a 20 | .class="tok-number">4</span>];.. |
| 22080 | 20 20 20 65 78 70 65 63 74 28 73 6c 69 63 65 2e 6c 65 6e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 | ...expect(slice.len.==.<span.cla |
| 220a0 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 20 20 20 20 | ss="tok-number">2</span>);...... |
| 220c0 | 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 |
| 220e0 | 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 5d 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | mber">3</span>].==.<span.class=" |
| 22100 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 73 6c 69 63 65 | tok-number">4</span>);.....slice |
| 22120 | 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 |
| 22140 | 6e 3e 5d 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e | n>].+=.<span.class="tok-number"> |
| 22160 | 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 65 78 70 65 63 74 28 61 72 72 61 79 5b 3c 73 70 61 6e | 1</span>;.....expect(array[<span |
| 22180 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 5d 20 3d 3d | .class="tok-number">3</span>].== |
| 221a0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 | .<span.class="tok-number">5</spa |
| 221c0 | 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c | n>);.}</code></pre><pre><code.cl |
| 221e0 | 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a | ass="shell">$.zig.test.test.zig. |
| 22200 | 31 2f 31 20 74 65 73 74 20 26 71 75 6f 74 3b 70 6f 69 6e 74 65 72 20 73 6c 69 63 69 6e 67 26 71 | 1/1.test."pointer.slicing&q |
| 22220 | 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c | uot;....OK.All.1.tests.passed..< |
| 22240 | 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 50 6f 69 6e 74 65 72 73 20 | /code></pre>........<p>Pointers. |
| 22260 | 77 6f 72 6b 20 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 74 6f 6f 2c 20 61 73 20 6c 6f 6e | work.at.compile-time.too,.as.lon |
| 22280 | 67 20 61 73 20 74 68 65 20 63 6f 64 65 20 64 6f 65 73 20 6e 6f 74 20 64 65 70 65 6e 64 20 6f 6e | g.as.the.code.does.not.depend.on |
| 222a0 | 0a 20 20 20 20 20 20 61 6e 20 75 6e 64 65 66 69 6e 65 64 20 6d 65 6d 6f 72 79 20 6c 61 79 6f 75 | .......an.undefined.memory.layou |
| 222c0 | 74 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 | t:</p>.......<p.class="file">tes |
| 222e0 | 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e | t.zig</p><pre><code.class="zig"> |
| 22300 | 3c 73 70 61 6e 20 63 6c 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 |
| 22320 | 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 |
| 22340 | 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= |
| 22360 | 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> |
| 22380 | 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=" |
| 223a0 | 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= |
| 223c0 | 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 63 6f 6d 70 74 69 6d 65 20 70 6f 69 6e 74 65 72 | "tok-str">"comptime.pointer |
| 223e0 | 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 |
| 22400 | 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>.{..... |
| 22420 | 20 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 |
| 22440 | 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 |
| 22460 | 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 |
| 22480 | 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | er">1</span>;.........<span.clas |
| 224a0 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 70 74 72 20 3d 20 26 61 | s="tok-kw">const</span>.ptr.=.&a |
| 224c0 | 6d 70 3b 78 3b 0a 20 20 20 20 20 20 20 20 70 74 72 2e 2a 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 | mp;x;.........ptr.*.+=.<span.cla |
| 224e0 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 20 20 | ss="tok-number">1</span>;....... |
| 22500 | 20 20 78 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e | ..x.+=.<span.class="tok-number"> |
| 22520 | 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 20 20 20 20 65 78 70 65 63 74 28 70 74 72 2e 2a 20 3d | 1</span>;.........expect(ptr.*.= |
| 22540 | 3d 20 3c 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 |
| 22560 | 61 6e 3e 29 3b 0a 20 20 20 20 7d 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c | an>);.....}.}</code></pre><pre>< |
| 22580 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 | code.class="shell">$.zig.test.te |
| 225a0 | 73 74 2e 7a 69 67 0a 31 2f 31 20 74 65 73 74 20 26 71 75 6f 74 3b 63 6f 6d 70 74 69 6d 65 20 70 | st.zig.1/1.test."comptime.p |
| 225c0 | 6f 69 6e 74 65 72 73 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 | ointers"....OK.All.1.tests. |
| 225e0 | 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e | passed..</code></pre>........<p> |
| 22600 | 54 6f 20 63 6f 6e 76 65 72 74 20 61 6e 20 69 6e 74 65 67 65 72 20 61 64 64 72 65 73 73 20 69 6e | To.convert.an.integer.address.in |
| 22620 | 74 6f 20 61 20 70 6f 69 6e 74 65 72 2c 20 75 73 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a | to.a.pointer,.use.<code.class="z |
| 22640 | 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 | ig"><span.class="tok-builtin">@i |
| 22660 | 6e 74 54 6f 50 74 72 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 54 6f 20 | ntToPtr</span></code>........To. |
| 22680 | 63 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 | convert.a.pointer.to.an.integer, |
| 226a0 | 20 75 73 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 | .use.<code.class="zig"><span.cla |
| 226c0 | 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 70 74 72 54 6f 49 6e 74 3c 2f 73 70 61 6e | ss="tok-builtin">@ptrToInt</span |
| 226e0 | 3e 3c 2f 63 6f 64 65 3e 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 | ></code>:</p>.......<p.class="fi |
| 22700 | 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 | le">test.zig</p><pre><code.class |
| 22720 | 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 | ="zig"><span.class="tok-kw">cons |
| 22740 | 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 |
| 22760 | 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 |
| 22780 | 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" |
| 227a0 | 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. |
| 227c0 | 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 |
| 227e0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 40 70 74 72 54 6f 49 6e 74 | .class="tok-str">"@ptrToInt |
| 22800 | 20 61 6e 64 20 40 69 6e 74 54 6f 50 74 72 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 | .and.@intToPtr"</span>.{... |
| 22820 | 20 20 3c 73 70 61 6e 20 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 |
| 22840 | 61 6e 3e 20 70 74 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 | an>.ptr.=.<span.class="tok-built |
| 22860 | 69 6e 22 3e 40 69 6e 74 54 6f 50 74 72 3c 2f 73 70 61 6e 3e 28 2a 3c 73 70 61 6e 20 63 6c 61 73 | in">@intToPtr</span>(*<span.clas |
| 22880 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 | s="tok-type">i32</span>,.<span.c |
| 228a0 | 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 70 | lass="tok-number">0xdeadbee0</sp |
| 228c0 | 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 | an>);.....<span.class="tok-kw">c |
| 228e0 | 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 22 | onst</span>.addr.=.<span.class=" |
| 22900 | 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 70 74 72 54 6f 49 6e 74 3c 2f 73 70 61 6e 3e 28 70 74 | tok-builtin">@ptrToInt</span>(pt |
| 22920 | 72 29 3b 0a 20 20 20 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 | r);.....expect(<span.class="tok- |
| 22940 | 62 75 69 6c 74 69 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 61 64 64 72 29 20 3d 3d | builtin">@TypeOf</span>(addr).== |
| 22960 | 20 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 |
| 22980 | 70 61 6e 3e 29 3b 0a 20 20 20 20 65 78 70 65 63 74 28 61 64 64 72 20 3d 3d 20 3c 73 70 61 6e 20 | pan>);.....expect(addr.==.<span. |
| 229a0 | 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 |
| 229c0 | 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 | pan>);.}</code></pre><pre><code. |
| 229e0 | 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 | class="shell">$.zig.test.test.zi |
| 22a00 | 67 0a 31 2f 31 20 74 65 73 74 20 26 71 75 6f 74 3b 40 70 74 72 54 6f 49 6e 74 20 61 6e 64 20 40 | g.1/1.test."@ptrToInt.and.@ |
| 22a20 | 69 6e 74 54 6f 50 74 72 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 | intToPtr"....OK.All.1.tests |
| 22a40 | 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 | .passed..</code></pre>........<p |
| 22a60 | 3e 5a 69 67 20 69 73 20 61 62 6c 65 20 74 6f 20 70 72 65 73 65 72 76 65 20 6d 65 6d 6f 72 79 20 | >Zig.is.able.to.preserve.memory. |
| 22a80 | 61 64 64 72 65 73 73 65 73 20 69 6e 20 63 6f 6d 70 74 69 6d 65 20 63 6f 64 65 2c 20 61 73 20 6c | addresses.in.comptime.code,.as.l |
| 22aa0 | 6f 6e 67 20 61 73 0a 20 20 20 20 20 20 74 68 65 20 70 6f 69 6e 74 65 72 20 69 73 20 6e 65 76 65 | ong.as.......the.pointer.is.neve |
| 22ac0 | 72 20 64 65 72 65 66 65 72 65 6e 63 65 64 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 | r.dereferenced:</p>.......<p.cla |
| 22ae0 | 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 | ss="file">test.zig</p><pre><code |
| 22b00 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | .class="zig"><span.class="tok-kw |
| 22b20 | 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 |
| 22b40 | 61 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> |
| 22b60 | 28 3c 73 70 61 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 |
| 22b80 | 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;.. |
| 22ba0 | 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> |
| 22bc0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 63 6f 6d | .<span.class="tok-str">"com |
| 22be0 | 70 74 69 6d 65 20 40 69 6e 74 54 6f 50 74 72 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 | ptime.@intToPtr"</span>.{.. |
| 22c00 | 20 20 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 |
| 22c20 | 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 |
| 22c40 | 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 5a 69 67 20 69 73 20 61 62 6c 65 20 74 6f 20 64 6f | ok-comment">//.Zig.is.able.to.do |
| 22c60 | 20 74 68 69 73 20 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 2c 20 61 73 20 6c 6f 6e 67 20 61 | .this.at.compile-time,.as.long.a |
| 22c80 | 73 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | s</span>.........<span.class="to |
| 22ca0 | 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 70 74 72 20 69 73 20 6e 65 76 65 72 20 64 65 72 65 66 | k-comment">//.ptr.is.never.deref |
| 22cc0 | 65 72 65 6e 63 65 64 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c | erenced.</span>.........<span.cl |
| 22ce0 | 61 73 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.=. |
| 22d00 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6e 74 54 6f | <span.class="tok-builtin">@intTo |
| 22d20 | 50 74 72 3c 2f 73 70 61 6e 3e 28 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | Ptr</span>(*<span.class="tok-typ |
| 22d40 | 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | e">i32</span>,.<span.class="tok- |
| 22d60 | 6e 75 6d 62 65 72 22 3e 30 78 64 65 61 64 62 65 65 30 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 | number">0xdeadbee0</span>);..... |
| 22d80 | 20 20 20 20 3c 73 70 61 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</ |
| 22da0 | 73 70 61 6e 3e 20 61 64 64 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 | span>.addr.=.<span.class="tok-bu |
| 22dc0 | 69 6c 74 69 6e 22 3e 40 70 74 72 54 6f 49 6e 74 3c 2f 73 70 61 6e 3e 28 70 74 72 29 3b 0a 20 20 | iltin">@ptrToInt</span>(ptr);... |
| 22de0 | 20 20 20 20 20 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 | ......expect(<span.class="tok-bu |
| 22e00 | 69 6c 74 69 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 61 64 64 72 29 20 3d 3d 20 3c | iltin">@TypeOf</span>(addr).==.< |
| 22e20 | 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 |
| 22e40 | 6e 3e 29 3b 0a 20 20 20 20 20 20 20 20 65 78 70 65 63 74 28 61 64 64 72 20 3d 3d 20 3c 73 70 61 | n>);.........expect(addr.==.<spa |
| 22e60 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 64 65 61 64 62 65 65 30 3c | n.class="tok-number">0xdeadbee0< |
| 22e80 | 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 7d 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 | /span>);.....}.}</code></pre><pr |
| 22ea0 | 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 | e><code.class="shell">$.zig.test |
| 22ec0 | 20 74 65 73 74 2e 7a 69 67 0a 31 2f 31 20 74 65 73 74 20 26 71 75 6f 74 3b 63 6f 6d 70 74 69 6d | .test.zig.1/1.test."comptim |
| 22ee0 | 65 20 40 69 6e 74 54 6f 50 74 72 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 41 6c 6c 20 31 20 74 65 | e.@intToPtr"....OK.All.1.te |
| 22f00 | 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 | sts.passed..</code></pre>....... |
| 22f20 | 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 |
| 22f40 | 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. |
| 22f60 | 50 6f 69 6e 74 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 | Pointers</a></li>.<li><a.href="# |
| 22f80 | 69 6e 74 54 6f 50 74 72 22 3e 40 69 6e 74 54 6f 50 74 72 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 | intToPtr">@intToPtr</a></li>.<li |
| 22fa0 | 3e 3c 61 20 68 72 65 66 3d 22 23 70 74 72 54 6f 49 6e 74 22 3e 40 70 74 72 54 6f 49 6e 74 3c 2f | ><a.href="#ptrToInt">@ptrToInt</ |
| 22fc0 | 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 |
| 22fe0 | 22 3e 43 20 50 6f 69 6e 74 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 | ">C.Pointers</a></li>.<li><a.hre |
| 23000 | 66 3d 22 23 50 6f 69 6e 74 65 72 73 2d 74 6f 2d 5a 65 72 6f 2d 42 69 74 2d 54 79 70 65 73 22 3e | f="#Pointers-to-Zero-Bit-Types"> |
| 23020 | 50 6f 69 6e 74 65 72 73 20 74 6f 20 5a 65 72 6f 20 42 69 74 20 54 79 70 65 73 3c 2f 61 3e 3c 2f | Pointers.to.Zero.Bit.Types</a></ |
| 23040 | 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 76 6f 6c 61 74 69 6c | li>.</ul>........<h2.id="volatil |
| 23060 | 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 76 6f 6c 61 74 69 6c 65 22 3e 76 6f 6c 61 74 | e"><a.href="#toc-volatile">volat |
| 23080 | 69 6c 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 76 6f | ile</a>.<a.class="hdr".href="#vo |
| 230a0 | 6c 61 74 69 6c 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 4c 6f | latile">..</a></h2>........<p>Lo |
| 230c0 | 61 64 73 20 61 6e 64 20 73 74 6f 72 65 73 20 61 72 65 20 61 73 73 75 6d 65 64 20 74 6f 20 6e 6f | ads.and.stores.are.assumed.to.no |
| 230e0 | 74 20 68 61 76 65 20 73 69 64 65 20 65 66 66 65 63 74 73 2e 20 49 66 20 61 20 67 69 76 65 6e 20 | t.have.side.effects..If.a.given. |
| 23100 | 6c 6f 61 64 20 6f 72 20 73 74 6f 72 65 0a 20 20 20 20 20 20 73 68 6f 75 6c 64 20 68 61 76 65 20 | load.or.store.......should.have. |
| 23120 | 73 69 64 65 20 65 66 66 65 63 74 73 2c 20 73 75 63 68 20 61 73 20 4d 65 6d 6f 72 79 20 4d 61 70 | side.effects,.such.as.Memory.Map |
| 23140 | 70 65 64 20 49 6e 70 75 74 2f 4f 75 74 70 75 74 20 28 4d 4d 49 4f 29 2c 20 75 73 65 20 3c 63 6f | ped.Input/Output.(MMIO),.use.<co |
| 23160 | 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | de.class="zig"><span.class="tok- |
| 23180 | 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 2e 0a 20 20 20 20 | kw">volatile</span></code>...... |
| 231a0 | 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 6f 61 64 73 20 61 | ..In.the.following.code,.loads.a |
| 231c0 | 6e 64 20 73 74 6f 72 65 73 20 77 69 74 68 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | nd.stores.with.<code.class="zig" |
| 231e0 | 3e 6d 6d 69 6f 5f 70 74 72 3c 2f 63 6f 64 65 3e 20 61 72 65 20 67 75 61 72 61 6e 74 65 65 64 20 | >mmio_ptr</code>.are.guaranteed. |
| 23200 | 74 6f 20 61 6c 6c 20 68 61 70 70 65 6e 0a 20 20 20 20 20 20 61 6e 64 20 69 6e 20 74 68 65 20 73 | to.all.happen.......and.in.the.s |
| 23220 | 61 6d 65 20 6f 72 64 65 72 20 61 73 20 69 6e 20 73 6f 75 72 63 65 20 63 6f 64 65 3a 3c 2f 70 3e | ame.order.as.in.source.code:</p> |
| 23240 | 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c | .......<p.class="file">test.zig< |
| 23260 | 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 | /p><pre><code.class="zig"><span. |
| 23280 | 63 6c 61 73 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 |
| 232a0 | 63 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 | ct.=.<span.class="tok-builtin">@ |
| 232c0 | 69 6d 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 |
| 232e0 | 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 74 65 73 74 | tr">"std"</span>).test |
| 23300 | 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 |
| 23320 | 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 |
| 23340 | 74 72 22 3e 26 71 75 6f 74 3b 76 6f 6c 61 74 69 6c 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 | tr">"volatile"</span>. |
| 23360 | 7b 0a 20 20 20 20 3c 73 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 |
| 23380 | 3c 2f 73 70 61 6e 3e 20 6d 6d 69 6f 5f 70 74 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | </span>.mmio_ptr.=.<span.class=" |
| 233a0 | 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6e 74 54 6f 50 74 72 3c 2f 73 70 61 6e 3e 28 2a 3c | tok-builtin">@intToPtr</span>(*< |
| 233c0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 6f 6c 61 74 69 6c 65 3c 2f 73 70 | span.class="tok-kw">volatile</sp |
| 233e0 | 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 | an>.<span.class="tok-type">u8</s |
| 23400 | 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 |
| 23420 | 78 31 32 33 34 35 36 37 38 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 65 78 70 65 63 74 28 3c 73 | x12345678</span>);.....expect(<s |
| 23440 | 70 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< |
| 23460 | 2f 73 70 61 6e 3e 28 6d 6d 69 6f 5f 70 74 72 29 20 3d 3d 20 2a 3c 73 70 61 6e 20 63 6c 61 73 73 | /span>(mmio_ptr).==.*<span.class |
| 23480 | 3d 22 74 6f 6b 2d 6b 77 22 3e 76 6f 6c 61 74 69 6c 65 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 | ="tok-kw">volatile</span>.<span. |
| 234a0 | 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>);.}</ |
| 234c0 | 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 | code></pre><pre><code.class="she |
| 234e0 | 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 31 2f 31 20 74 65 73 74 | ll">$.zig.test.test.zig.1/1.test |
| 23500 | 20 26 71 75 6f 74 3b 76 6f 6c 61 74 69 6c 65 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 41 6c 6c 20 | ."volatile"....OK.All. |
| 23520 | 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 | 1.tests.passed..</code></pre>... |
| 23540 | 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 20 63 | .....<p>.......Note.that.<code.c |
| 23560 | 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | lass="zig"><span.class="tok-kw"> |
| 23580 | 76 6f 6c 61 74 69 6c 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 69 73 20 75 6e 72 65 6c 61 | volatile</span></code>.is.unrela |
| 235a0 | 74 65 64 20 74 6f 20 63 6f 6e 63 75 72 72 65 6e 63 79 20 61 6e 64 20 3c 61 20 68 72 65 66 3d 22 | ted.to.concurrency.and.<a.href=" |
| 235c0 | 23 41 74 6f 6d 69 63 73 22 3e 41 74 6f 6d 69 63 73 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 49 66 20 | #Atomics">Atomics</a>........If. |
| 235e0 | 79 6f 75 20 73 65 65 20 63 6f 64 65 20 74 68 61 74 20 69 73 20 75 73 69 6e 67 20 3c 63 6f 64 65 | you.see.code.that.is.using.<code |
| 23600 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | .class="zig"><span.class="tok-kw |
| 23620 | 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 66 6f 72 20 73 6f 6d | ">volatile</span></code>.for.som |
| 23640 | 65 74 68 69 6e 67 20 6f 74 68 65 72 20 74 68 61 6e 20 4d 65 6d 6f 72 79 20 4d 61 70 70 65 64 0a | ething.other.than.Memory.Mapped. |
| 23660 | 20 20 20 20 20 20 49 6e 70 75 74 2f 4f 75 74 70 75 74 2c 20 69 74 20 69 73 20 70 72 6f 62 61 62 | ......Input/Output,.it.is.probab |
| 23680 | 6c 79 20 61 20 62 75 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 | ly.a.bug........</p>............ |
| 236a0 | 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 6f 20 63 6f 6e 76 65 72 74 20 6f 6e 65 20 70 6f 69 6e 74 | ..<p>.......To.convert.one.point |
| 236c0 | 65 72 20 74 79 70 65 20 74 6f 20 61 6e 6f 74 68 65 72 2c 20 75 73 65 20 3c 61 20 68 72 65 66 3d | er.type.to.another,.use.<a.href= |
| 236e0 | 22 23 70 74 72 43 61 73 74 22 3e 40 70 74 72 43 61 73 74 3c 2f 61 3e 2e 20 54 68 69 73 20 69 73 | "#ptrCast">@ptrCast</a>..This.is |
| 23700 | 20 61 6e 20 75 6e 73 61 66 65 0a 20 20 20 20 20 20 6f 70 65 72 61 74 69 6f 6e 20 74 68 61 74 20 | .an.unsafe.......operation.that. |
| 23720 | 5a 69 67 20 63 61 6e 6e 6f 74 20 70 72 6f 74 65 63 74 20 79 6f 75 20 61 67 61 69 6e 73 74 2e 20 | Zig.cannot.protect.you.against.. |
| 23740 | 55 73 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 | Use.<code.class="zig"><span.clas |
| 23760 | 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>< |
| 23780 | 2f 63 6f 64 65 3e 20 6f 6e 6c 79 20 77 68 65 6e 20 6f 74 68 65 72 0a 20 20 20 20 20 20 63 6f 6e | /code>.only.when.other.......con |
| 237a0 | 76 65 72 73 69 6f 6e 73 20 61 72 65 20 6e 6f 74 20 70 6f 73 73 69 62 6c 65 2e 0a 20 20 20 20 20 | versions.are.not.possible....... |
| 237c0 | 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 | .</p>.......<p.class="file">test |
| 237e0 | 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c | .zig</p><pre><code.class="zig">< |
| 23800 | 73 70 61 6e 20 63 6c 61 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> |
| 23820 | 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" |
| 23840 | 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 |
| 23860 | 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>);.< |
| 23880 | 73 70 61 6e 20 63 6c 61 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> |
| 238a0 | 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;..< |
| 238c0 | 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>. |
| 238e0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 70 6f 69 6e | <span.class="tok-str">"poin |
| 23900 | 74 65 72 20 63 61 73 74 69 6e 67 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c | ter.casting"</span>.{.....< |
| 23920 | 73 70 61 6e 20 63 6c 61 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> |
| 23940 | 20 62 79 74 65 73 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6c 69 67 | .bytes.<span.class="tok-kw">alig |
| 23960 | 6e 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 | n</span>(<span.class="tok-builti |
| 23980 | 6e 22 3e 40 61 6c 69 67 6e 4f 66 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | n">@alignOf</span>(<span.class=" |
| 239a0 | 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 29 29 20 3d 20 5b 5f 5d 3c 73 70 61 | tok-type">u32</span>)).=.[_]<spa |
| 239c0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 7b 20 3c 73 | n.class="tok-type">u8</span>{.<s |
| 239e0 | 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 |
| 23a00 | 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 |
| 23a20 | 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 |
| 23a40 | 72 22 3e 30 78 31 32 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | r">0x12</span>,.<span.class="tok |
| 23a60 | 2d 6e 75 6d 62 65 72 22 3e 30 78 31 32 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 20 20 20 20 3c 73 70 61 | -number">0x12</span>.};.....<spa |
| 23a80 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 75 33 | n.class="tok-kw">const</span>.u3 |
| 23aa0 | 32 5f 70 74 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e | 2_ptr.=.<span.class="tok-builtin |
| 23ac0 | 22 3e 40 70 74 72 43 61 73 74 3c 2f 73 70 61 6e 3e 28 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ">@ptrCast</span>(*<span.class=" |
| 23ae0 | 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 |
| 23b00 | 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 62 79 74 | ="tok-type">u32</span>,.&byt |
| 23b20 | 65 73 29 3b 0a 20 20 20 20 65 78 70 65 63 74 28 75 33 32 5f 70 74 72 2e 2a 20 3d 3d 20 3c 73 70 | es);.....expect(u32_ptr.*.==.<sp |
| 23b40 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 31 32 31 32 31 32 31 32 | an.class="tok-number">0x12121212 |
| 23b60 | 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- |
| 23b80 | 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 45 76 65 6e 20 74 68 69 73 20 65 78 61 6d 70 6c 65 20 69 73 | comment">//.Even.this.example.is |
| 23ba0 | 20 63 6f 6e 74 72 69 76 65 64 20 2d 20 74 68 65 72 65 20 61 72 65 20 62 65 74 74 65 72 20 77 61 | .contrived.-.there.are.better.wa |
| 23bc0 | 79 73 20 74 6f 20 64 6f 20 74 68 65 20 61 62 6f 76 65 20 74 68 61 6e 3c 2f 73 70 61 6e 3e 0a 20 | ys.to.do.the.above.than</span>.. |
| 23be0 | 20 20 20 3c 73 70 61 6e 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">//. |
| 23c00 | 70 6f 69 6e 74 65 72 20 63 61 73 74 69 6e 67 2e 20 46 6f 72 20 65 78 61 6d 70 6c 65 2c 20 75 73 | pointer.casting..For.example,.us |
| 23c20 | 69 6e 67 20 61 20 73 6c 69 63 65 20 6e 61 72 72 6f 77 69 6e 67 20 63 61 73 74 3a 3c 2f 73 70 61 | ing.a.slice.narrowing.cast:</spa |
| 23c40 | 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 |
| 23c60 | 74 3c 2f 73 70 61 6e 3e 20 75 33 32 5f 76 61 6c 75 65 20 3d 20 73 74 64 2e 6d 65 6d 2e 62 79 74 | t</span>.u32_value.=.std.mem.byt |
| 23c80 | 65 73 41 73 53 6c 69 63 65 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 | esAsSlice(<span.class="tok-type" |
| 23ca0 | 3e 75 33 32 3c 2f 73 70 61 6e 3e 2c 20 62 79 74 65 73 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | >u32</span>,.bytes[<span.class=" |
| 23cc0 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 2e 2e 5d 29 5b 3c 73 70 61 6e 20 63 | tok-number">0</span>..])[<span.c |
| 23ce0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 5d 3b 0a 20 20 20 | lass="tok-number">0</span>];.... |
| 23d00 | 20 65 78 70 65 63 74 28 75 33 32 5f 76 61 6c 75 65 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | .expect(u32_value.==.<span.class |
| 23d20 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 31 32 31 32 31 32 31 32 3c 2f 73 70 61 6e 3e 29 | ="tok-number">0x12121212</span>) |
| 23d40 | 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" |
| 23d60 | 3e 2f 2f 20 41 6e 64 20 65 76 65 6e 20 61 6e 6f 74 68 65 72 20 77 61 79 2c 20 74 68 65 20 6d 6f | >//.And.even.another.way,.the.mo |
| 23d80 | 73 74 20 73 74 72 61 69 67 68 74 66 6f 72 77 61 72 64 20 77 61 79 20 74 6f 20 64 6f 20 69 74 3a | st.straightforward.way.to.do.it: |
| 23da0 | 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 65 78 70 65 63 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | </span>.....expect(<span.class=" |
| 23dc0 | 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 62 69 74 43 61 73 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 | tok-builtin">@bitCast</span>(<sp |
| 23de0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 2c 20 | an.class="tok-type">u32</span>,. |
| 23e00 | 62 79 74 65 73 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | bytes).==.<span.class="tok-numbe |
| 23e20 | 72 22 3e 30 78 31 32 31 32 31 32 31 32 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 | r">0x12121212</span>);.}..<span. |
| 23e40 | 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 |
| 23e60 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 70 6f 69 6e 74 65 72 20 63 | .class="tok-str">"pointer.c |
| 23e80 | 68 69 6c 64 20 74 79 70 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 | hild.type"</span>.{.....<sp |
| 23ea0 | 61 6e 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 6f 69 6e 74 65 | an.class="tok-comment">//.pointe |
| 23ec0 | 72 20 74 79 70 65 73 20 68 61 76 65 20 61 20 60 63 68 69 6c 64 60 20 66 69 65 6c 64 20 77 68 69 | r.types.have.a.`child`.field.whi |
| 23ee0 | 63 68 20 74 65 6c 6c 73 20 79 6f 75 20 74 68 65 20 74 79 70 65 20 74 68 65 79 20 70 6f 69 6e 74 | ch.tells.you.the.type.they.point |
| 23f00 | 20 74 6f 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 65 78 70 65 63 74 28 3c 73 70 61 6e 20 63 6c 61 | .to.</span>.....expect(<span.cla |
| 23f20 | 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 |
| 23f40 | 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 75 33 32 3c 2f 73 | >(*<span.class="tok-type">u32</s |
| 23f60 | 70 61 6e 3e 29 2e 50 6f 69 6e 74 65 72 2e 63 68 69 6c 64 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 | pan>).Pointer.child.==.<span.cla |
| 23f80 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f | ss="tok-type">u32</span>);.}</co |
| 23fa0 | 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c | de></pre><pre><code.class="shell |
| 23fc0 | 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 31 2f 32 20 74 65 73 74 20 26 | ">$.zig.test.test.zig.1/2.test.& |
| 23fe0 | 71 75 6f 74 3b 70 6f 69 6e 74 65 72 20 63 61 73 74 69 6e 67 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b | quot;pointer.casting"....OK |
| 24000 | 0a 32 2f 32 20 74 65 73 74 20 26 71 75 6f 74 3b 70 6f 69 6e 74 65 72 20 63 68 69 6c 64 20 74 79 | .2/2.test."pointer.child.ty |
| 24020 | 70 65 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 41 6c 6c 20 32 20 74 65 73 74 73 20 70 61 73 73 65 | pe"....OK.All.2.tests.passe |
| 24040 | 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 | d..</code></pre>........<h2.id=" |
| 24060 | 41 6c 69 67 6e 6d 65 6e 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 41 6c 69 67 6e 6d 65 | Alignment"><a.href="#toc-Alignme |
| 24080 | 6e 74 22 3e 41 6c 69 67 6e 6d 65 6e 74 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 | nt">Alignment</a>.<a.class="hdr" |
| 240a0 | 20 68 72 65 66 3d 22 23 41 6c 69 67 6e 6d 65 6e 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a | .href="#Alignment">..</a></h2>.. |
| 240c0 | 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 45 61 63 68 20 74 79 70 65 20 68 61 73 20 61 6e | ......<p>.......Each.type.has.an |
| 240e0 | 20 3c 73 74 72 6f 6e 67 3e 61 6c 69 67 6e 6d 65 6e 74 3c 2f 73 74 72 6f 6e 67 3e 20 2d 20 61 20 | .<strong>alignment</strong>.-.a. |
| 24100 | 6e 75 6d 62 65 72 20 6f 66 20 62 79 74 65 73 20 73 75 63 68 20 74 68 61 74 2c 0a 20 20 20 20 20 | number.of.bytes.such.that,...... |
| 24120 | 20 77 68 65 6e 20 61 20 76 61 6c 75 65 20 6f 66 20 74 68 65 20 74 79 70 65 20 69 73 20 6c 6f 61 | .when.a.value.of.the.type.is.loa |
| 24140 | 64 65 64 20 66 72 6f 6d 20 6f 72 20 73 74 6f 72 65 64 20 74 6f 20 6d 65 6d 6f 72 79 2c 0a 20 20 | ded.from.or.stored.to.memory,... |
| 24160 | 20 20 20 20 74 68 65 20 6d 65 6d 6f 72 79 20 61 64 64 72 65 73 73 20 6d 75 73 74 20 62 65 20 65 | ....the.memory.address.must.be.e |
| 24180 | 76 65 6e 6c 79 20 64 69 76 69 73 69 62 6c 65 20 62 79 20 74 68 69 73 20 6e 75 6d 62 65 72 2e 20 | venly.divisible.by.this.number.. |
| 241a0 | 59 6f 75 20 63 61 6e 20 75 73 65 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 61 6c 69 67 | You.can.use.......<a.href="#alig |
| 241c0 | 6e 4f 66 22 3e 40 61 6c 69 67 6e 4f 66 3c 2f 61 3e 20 74 6f 20 66 69 6e 64 20 6f 75 74 20 74 68 | nOf">@alignOf</a>.to.find.out.th |
| 241e0 | 69 73 20 76 61 6c 75 65 20 66 6f 72 20 61 6e 79 20 74 79 70 65 2e 0a 20 20 20 20 20 20 3c 2f 70 | is.value.for.any.type........</p |
| 24200 | 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 41 6c 69 67 6e 6d 65 6e 74 20 64 65 70 65 | >.......<p>.......Alignment.depe |
| 24220 | 6e 64 73 20 6f 6e 20 74 68 65 20 43 50 55 20 61 72 63 68 69 74 65 63 74 75 72 65 2c 20 62 75 74 | nds.on.the.CPU.architecture,.but |
| 24240 | 20 69 73 20 61 6c 77 61 79 73 20 61 20 70 6f 77 65 72 20 6f 66 20 74 77 6f 2c 20 61 6e 64 0a 20 | .is.always.a.power.of.two,.and.. |
| 24260 | 20 20 20 20 20 6c 65 73 73 20 74 68 61 6e 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | .....less.than.<code.class="zig" |
| 24280 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 | ><span.class="tok-number">1</spa |
| 242a0 | 6e 3e 20 26 6c 74 3b 26 6c 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | n>.<<.<span.class="tok-num |
| 242c0 | 62 65 72 22 3e 32 39 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 | ber">29</span></code>........</p |
| 242e0 | 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 6e 20 5a 69 67 2c 20 61 20 70 6f 69 6e | >.......<p>.......In.Zig,.a.poin |
| 24300 | 74 65 72 20 74 79 70 65 20 68 61 73 20 61 6e 20 61 6c 69 67 6e 6d 65 6e 74 20 76 61 6c 75 65 2e | ter.type.has.an.alignment.value. |
| 24320 | 20 49 66 20 74 68 65 20 76 61 6c 75 65 20 69 73 20 65 71 75 61 6c 20 74 6f 20 74 68 65 0a 20 20 | .If.the.value.is.equal.to.the... |
| 24340 | 20 20 20 20 61 6c 69 67 6e 6d 65 6e 74 20 6f 66 20 74 68 65 20 75 6e 64 65 72 6c 79 69 6e 67 20 | ....alignment.of.the.underlying. |
| 24360 | 74 79 70 65 2c 20 69 74 20 63 61 6e 20 62 65 20 6f 6d 69 74 74 65 64 20 66 72 6f 6d 20 74 68 65 | type,.it.can.be.omitted.from.the |
| 24380 | 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 70 20 63 6c 61 73 73 | .type:.......</p>.......<p.class |
| 243a0 | 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 | ="file">test.zig</p><pre><code.c |
| 243c0 | 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | lass="zig"><span.class="tok-kw"> |
| 243e0 | 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=" |
| 24400 | 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 |
| 24420 | 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" |
| 24440 | 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"> |
| 24460 | 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 |
| 24480 | 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"> |
| 244a0 | 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 |
| 244c0 | 22 3e 26 71 75 6f 74 3b 76 61 72 69 61 62 6c 65 20 61 6c 69 67 6e 6d 65 6e 74 26 71 75 6f 74 3b | ">"variable.alignment" |
| 244e0 | 3c 2f 73 70 61 6e 3e 20 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 |
| 24500 | 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 |
| 24520 | 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 |
| 24540 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c | ="tok-number">1234</span>;.....< |
| 24560 | 73 70 61 6e 20 63 6c 61 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> |
| 24580 | 20 61 6c 69 67 6e 5f 6f 66 5f 69 33 32 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | .align_of_i32.=.<span.class="tok |
| 245a0 | 2d 62 75 69 6c 74 69 6e 22 3e 40 61 6c 69 67 6e 4f 66 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 | -builtin">@alignOf</span>(<span. |
| 245c0 | 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 |
| 245e0 | 6e 3e 28 78 29 29 3b 0a 20 20 20 20 65 78 70 65 63 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | n>(x));.....expect(<span.class=" |
| 24600 | 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>(& |
| 24620 | 3b 78 29 20 3d 3d 20 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 | ;x).==.*<span.class="tok-type">i |
| 24640 | 33 32 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 65 78 70 65 63 74 28 2a 3c 73 70 61 6e 20 63 6c | 32</span>);.....expect(*<span.cl |
| 24660 | 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 3d 20 2a 3c 73 | ass="tok-type">i32</span>.==.*<s |
| 24680 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6c 69 67 6e 3c 2f 73 70 61 6e 3e 28 | pan.class="tok-kw">align</span>( |
| 246a0 | 61 6c 69 67 6e 5f 6f 66 5f 69 33 32 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | align_of_i32).<span.class="tok-t |
| 246c0 | 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | ype">i32</span>);.....<span.clas |
| 246e0 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 73 74 64 2e 54 61 72 67 65 74 | s="tok-kw">if</span>.(std.Target |
| 24700 | 2e 63 75 72 72 65 6e 74 2e 63 70 75 2e 61 72 63 68 20 3d 3d 20 2e 78 38 36 5f 36 34 29 20 7b 0a | .current.cpu.arch.==..x86_64).{. |
| 24720 | 20 20 20 20 20 20 20 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 | ........expect(<span.class="tok- |
| 24740 | 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 61 6e | builtin">@typeInfo</span>(*<span |
| 24760 | 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 2e 50 6f | .class="tok-type">i32</span>).Po |
| 24780 | 69 6e 74 65 72 2e 61 6c 69 67 6e 6d 65 6e 74 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | inter.alignment.==.<span.class=" |
| 247a0 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 7d 0a 7d 3c 2f | tok-number">4</span>);.....}.}</ |
| 247c0 | 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 | code></pre><pre><code.class="she |
| 247e0 | 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 31 2f 31 20 74 65 73 74 | ll">$.zig.test.test.zig.1/1.test |
| 24800 | 20 26 71 75 6f 74 3b 76 61 72 69 61 62 6c 65 20 61 6c 69 67 6e 6d 65 6e 74 26 71 75 6f 74 3b 2e | ."variable.alignment". |
| 24820 | 2e 2e 20 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 | ...OK.All.1.tests.passed..</code |
| 24840 | 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 49 6e 20 74 68 65 20 73 61 6d 65 20 77 61 | ></pre>........<p>In.the.same.wa |
| 24860 | 79 20 74 68 61 74 20 61 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 2a 3c 73 70 61 | y.that.a.<code.class="zig">*<spa |
| 24880 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 3c 2f 63 | n.class="tok-type">i32</span></c |
| 248a0 | 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 65 72 63 | ode>.can.be.<a.href="#Type-Coerc |
| 248c0 | 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 20 20 20 | ion">coerced</a>.to.a........... |
| 248e0 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | <code.class="zig">*<span.class=" |
| 24900 | 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 |
| 24920 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 61 | ="tok-type">i32</span></code>,.a |
| 24940 | 20 70 6f 69 6e 74 65 72 20 77 69 74 68 20 61 20 6c 61 72 67 65 72 20 61 6c 69 67 6e 6d 65 6e 74 | .pointer.with.a.larger.alignment |
| 24960 | 20 63 61 6e 20 62 65 20 69 6d 70 6c 69 63 69 74 6c 79 0a 20 20 20 20 20 20 63 61 73 74 20 74 6f | .can.be.implicitly.......cast.to |
| 24980 | 20 61 20 70 6f 69 6e 74 65 72 20 77 69 74 68 20 61 20 73 6d 61 6c 6c 65 72 20 61 6c 69 67 6e 6d | .a.pointer.with.a.smaller.alignm |
| 249a0 | 65 6e 74 2c 20 62 75 74 20 6e 6f 74 20 76 69 63 65 20 76 65 72 73 61 2e 0a 20 20 20 20 20 20 3c | ent,.but.not.vice.versa........< |
| 249c0 | 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 70 65 63 | /p>.......<p>.......You.can.spec |
| 249e0 | 69 66 79 20 61 6c 69 67 6e 6d 65 6e 74 20 6f 6e 20 76 61 72 69 61 62 6c 65 73 20 61 6e 64 20 66 | ify.alignment.on.variables.and.f |
| 24a00 | 75 6e 63 74 69 6f 6e 73 2e 20 49 66 20 79 6f 75 20 64 6f 20 74 68 69 73 2c 20 74 68 65 6e 0a 20 | unctions..If.you.do.this,.then.. |
| 24a20 | 20 20 20 20 20 70 6f 69 6e 74 65 72 73 20 74 6f 20 74 68 65 6d 20 67 65 74 20 74 68 65 20 73 70 | .....pointers.to.them.get.the.sp |
| 24a40 | 65 63 69 66 69 65 64 20 61 6c 69 67 6e 6d 65 6e 74 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 | ecified.alignment:.......</p>... |
| 24a60 | 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e | ....<p.class="file">test.zig</p> |
| 24a80 | 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 | <pre><code.class="zig"><span.cla |
| 24aa0 | 73 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. |
| 24ac0 | 3d 20 3c 73 70 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 |
| 24ae0 | 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" |
| 24b00 | 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 74 65 73 74 69 6e 67 | >"std"</span>).testing |
| 24b20 | 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 76 | .expect;..<span.class="tok-kw">v |
| 24b40 | 61 72 3c 2f 73 70 61 6e 3e 20 66 6f 6f 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ar</span>.foo:.<span.class="tok- |
| 24b60 | 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | type">u8</span>.<span.class="tok |
| 24b80 | 2d 6b 77 22 3e 61 6c 69 67 6e 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | -kw">align</span>(<span.class="t |
| 24ba0 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 29 20 3d 20 3c 73 70 61 6e 20 63 6c 61 | ok-number">4</span>).=.<span.cla |
| 24bc0 | 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 3b 0a 0a 3c 73 70 | ss="tok-number">100</span>;..<sp |
| 24be0 | 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 |
| 24c00 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 67 6c 6f 62 61 6c | pan.class="tok-str">"global |
| 24c20 | 20 76 61 72 69 61 62 6c 65 20 61 6c 69 67 6e 6d 65 6e 74 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e | .variable.alignment"</span> |
| 24c40 | 20 7b 0a 20 20 20 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 | .{.....expect(<span.class="tok-b |
| 24c60 | 75 69 6c 74 69 6e 22 3e 40 74 79 70 65 49 6e 66 6f 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 | uiltin">@typeInfo</span>(<span.c |
| 24c80 | 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 |
| 24ca0 | 3e 28 26 61 6d 70 3b 66 6f 6f 29 29 2e 50 6f 69 6e 74 65 72 2e 61 6c 69 67 6e 6d 65 6e 74 20 3d | >(&foo)).Pointer.alignment.= |
| 24cc0 | 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 | =.<span.class="tok-number">4</sp |
| 24ce0 | 61 6e 3e 29 3b 0a 20 20 20 20 65 78 70 65 63 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | an>);.....expect(<span.class="to |
| 24d00 | 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 26 61 6d 70 3b 66 | k-builtin">@TypeOf</span>(&f |
| 24d20 | 6f 6f 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 | oo).==.*<span.class="tok-kw">ali |
| 24d40 | 67 6e 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | gn</span>(<span.class="tok-numbe |
| 24d60 | 72 22 3e 34 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | r">4</span>).<span.class="tok-ty |
| 24d80 | 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | pe">u8</span>);.....<span.class= |
| 24da0 | 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 73 5f 70 6f 69 6e 74 65 72 | "tok-kw">const</span>.as_pointer |
| 24dc0 | 5f 74 6f 5f 61 72 72 61 79 3a 20 2a 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | _to_array:.*[<span.class="tok-nu |
| 24de0 | 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | mber">1</span>]<span.class="tok- |
| 24e00 | 74 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 | type">u8</span>.=.&foo;..... |
| 24e20 | 3c 73 70 61 6e 20 63 6c 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 |
| 24e40 | 3e 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 74 | >.as_slice:.[]<span.class="tok-t |
| 24e60 | 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 74 6f 5f 61 | ype">u8</span>.=.as_pointer_to_a |
| 24e80 | 72 72 61 79 3b 0a 20 20 20 20 65 78 70 65 63 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | rray;.....expect(<span.class="to |
| 24ea0 | 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 73 5f 73 6c 69 | k-builtin">@TypeOf</span>(as_sli |
| 24ec0 | 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 6b 77 22 3e 61 6c | ce).==.[]<span.class="tok-kw">al |
| 24ee0 | 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 |
| 24f00 | 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | er">4</span>).<span.class="tok-t |
| 24f20 | 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ype">u8</span>);.}..<span.class= |
| 24f40 | 22 74 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=" |
| 24f60 | 74 6f 6b 2d 66 6e 22 3e 64 65 72 70 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 | tok-fn">derp</span>().<span.clas |
| 24f80 | 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 |
| 24fa0 | 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 3e | ass="tok-builtin">@sizeOf</span> |
| 24fc0 | 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 | (<span.class="tok-type">usize</s |
| 24fe0 | 70 61 6e 3e 29 20 2a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 | pan>).*.<span.class="tok-number" |
| 25000 | 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 74 79 70 65 | >2</span>).<span.class="tok-type |
| 25020 | 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 7b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ">i32</span>.{.<span.class="tok- |
| 25040 | 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 |
| 25060 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 3b 20 7d 0a 3c 73 70 61 6e 20 | ok-number">1234</span>;.}.<span. |
| 25080 | 63 6c 61 73 73 3d 22 74 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 |
| 250a0 | 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 6e 6f 6f 70 31 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 | lass="tok-fn">noop1</span>().<sp |
| 250c0 | 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>(< |
| 250e0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e | span.class="tok-number">1</span> |
| 25100 | 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 |
| 25120 | 70 61 6e 3e 20 7b 7d 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c | pan>.{}.<span.class="tok-kw">fn< |
| 25140 | 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 6e 6f 6f 70 | /span>.<span.class="tok-fn">noop |
| 25160 | 34 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | 4</span>().<span.class="tok-kw"> |
| 25180 | 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 |
| 251a0 | 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | mber">4</span>).<span.class="tok |
| 251c0 | 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 | -type">void</span>.{}..<span.cla |
| 251e0 | 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 |
| 25200 | 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 66 75 6e 63 74 69 6f 6e 20 61 6c 69 | ass="tok-str">"function.ali |
| 25220 | 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 65 78 70 65 63 74 | gnment"</span>.{.....expect |
| 25240 | 28 64 65 72 70 28 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | (derp().==.<span.class="tok-numb |
| 25260 | 65 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 65 78 70 65 63 74 28 3c 73 70 | er">1234</span>);.....expect(<sp |
| 25280 | 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</ |
| 252a0 | 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 6b | span>(noop1).==.<span.class="tok |
| 252c0 | 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | -kw">fn</span>().<span.class="to |
| 252e0 | 6b 2d 6b 77 22 3e 61 6c 69 67 6e 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | k-kw">align</span>(<span.class=" |
| 25300 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 | tok-number">1</span>).<span.clas |
| 25320 | 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 20 65 | s="tok-type">void</span>);.....e |
| 25340 | 78 70 65 63 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e | xpect(<span.class="tok-builtin"> |
| 25360 | 40 54 79 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 | @TypeOf</span>(noop4).==.<span.c |
| 25380 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 | lass="tok-kw">fn</span>().<span. |
| 253a0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6c 69 67 6e 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 | class="tok-kw">align</span>(<spa |
| 253c0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 29 20 3c | n.class="tok-number">4</span>).< |
| 253e0 | 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 |
| 25400 | 3e 29 3b 0a 20 20 20 20 6e 6f 6f 70 31 28 29 3b 0a 20 20 20 20 6e 6f 6f 70 34 28 29 3b 0a 7d 3c | >);.....noop1();.....noop4();.}< |
| 25420 | 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 | /code></pre><pre><code.class="sh |
| 25440 | 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 31 2f 32 20 74 65 73 | ell">$.zig.test.test.zig.1/2.tes |
| 25460 | 74 20 26 71 75 6f 74 3b 67 6c 6f 62 61 6c 20 76 61 72 69 61 62 6c 65 20 61 6c 69 67 6e 6d 65 6e | t."global.variable.alignmen |
| 25480 | 74 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 32 2f 32 20 74 65 73 74 20 26 71 75 6f 74 3b 66 75 6e | t"....OK.2/2.test."fun |
| 254a0 | 63 74 69 6f 6e 20 61 6c 69 67 6e 6d 65 6e 74 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 41 6c 6c 20 | ction.alignment"....OK.All. |
| 254c0 | 32 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 | 2.tests.passed..</code></pre>... |
| 254e0 | 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 66 20 79 6f 75 20 68 61 76 65 20 61 20 70 6f 69 | .....<p>.......If.you.have.a.poi |
| 25500 | 6e 74 65 72 20 6f 72 20 61 20 73 6c 69 63 65 20 74 68 61 74 20 68 61 73 20 61 20 73 6d 61 6c 6c | nter.or.a.slice.that.has.a.small |
| 25520 | 20 61 6c 69 67 6e 6d 65 6e 74 2c 20 62 75 74 20 79 6f 75 20 6b 6e 6f 77 20 74 68 61 74 20 69 74 | .alignment,.but.you.know.that.it |
| 25540 | 20 61 63 74 75 61 6c 6c 79 0a 20 20 20 20 20 20 68 61 73 20 61 20 62 69 67 67 65 72 20 61 6c 69 | .actually.......has.a.bigger.ali |
| 25560 | 67 6e 6d 65 6e 74 2c 20 75 73 65 20 3c 61 20 68 72 65 66 3d 22 23 61 6c 69 67 6e 43 61 73 74 22 | gnment,.use.<a.href="#alignCast" |
| 25580 | 3e 40 61 6c 69 67 6e 43 61 73 74 3c 2f 61 3e 20 74 6f 20 63 68 61 6e 67 65 20 74 68 65 0a 20 20 | >@alignCast</a>.to.change.the... |
| 255a0 | 20 20 20 20 70 6f 69 6e 74 65 72 20 69 6e 74 6f 20 61 20 6d 6f 72 65 20 61 6c 69 67 6e 65 64 20 | ....pointer.into.a.more.aligned. |
| 255c0 | 70 6f 69 6e 74 65 72 2e 20 54 68 69 73 20 69 73 20 61 20 6e 6f 2d 6f 70 20 61 74 20 72 75 6e 74 | pointer..This.is.a.no-op.at.runt |
| 255e0 | 69 6d 65 2c 20 62 75 74 20 69 6e 73 65 72 74 73 20 61 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 | ime,.but.inserts.a.......<a.href |
| 25600 | 3d 22 23 49 6e 63 6f 72 72 65 63 74 2d 50 6f 69 6e 74 65 72 2d 41 6c 69 67 6e 6d 65 6e 74 22 3e | ="#Incorrect-Pointer-Alignment"> |
| 25620 | 73 61 66 65 74 79 20 63 68 65 63 6b 3c 2f 61 3e 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 | safety.check</a>:.......</p>.... |
| 25640 | 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c | ...<p.class="file">test.zig</p>< |
| 25660 | 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 | pre><code.class="zig"><span.clas |
| 25680 | 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 |
| 256a0 | 70 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< |
| 256c0 | 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 |
| 256e0 | 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 |
| 25700 | 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 |
| 25720 | 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 6c 69 67 | ass="tok-str">"pointer.alig |
| 25740 | 6e 6d 65 6e 74 20 73 61 66 65 74 79 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 | nment.safety"</span>.{..... |
| 25760 | 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>. |
| 25780 | 61 72 72 61 79 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6c 69 67 6e | array.<span.class="tok-kw">align |
| 257a0 | 3c 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" |
| 257c0 | 3e 34 3c 2f 73 70 61 6e 3e 29 20 3d 20 5b 5f 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | >4</span>).=.[_]<span.class="tok |
| 257e0 | 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 7b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | -type">u32</span>{.<span.class=" |
| 25800 | 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 2c 20 3c | tok-number">0x11111111</span>,.< |
| 25820 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 31 31 31 31 31 31 | span.class="tok-number">0x111111 |
| 25840 | 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 3d 22 74 6f | 11</span>.};.....<span.class="to |
| 25860 | 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 73 74 64 2e 6d | k-kw">const</span>.bytes.=.std.m |
| 25880 | 65 6d 2e 73 6c 69 63 65 41 73 42 79 74 65 73 28 61 72 72 61 79 5b 3c 73 70 61 6e 20 63 6c 61 73 | em.sliceAsBytes(array[<span.clas |
| 258a0 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 2e 2e 5d 29 3b 0a 20 20 20 | s="tok-number">0</span>..]);.... |
| 258c0 | 20 73 74 64 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 28 66 6f 6f 28 62 79 74 65 73 29 20 3d | .std.testing.expect(foo(bytes).= |
| 258e0 | 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 31 31 31 | =.<span.class="tok-number">0x111 |
| 25900 | 31 31 31 31 31 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | 11111</span>);.}.<span.class="to |
| 25920 | 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 |
| 25940 | 2d 66 6e 22 3e 66 6f 6f 3c 2f 73 70 61 6e 3e 28 62 79 74 65 73 3a 20 5b 5d 3c 73 70 61 6e 20 63 | -fn">foo</span>(bytes:.[]<span.c |
| 25960 | 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 |
| 25980 | 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>.{.. |
| 259a0 | 20 20 20 3c 73 70 61 6e 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 |
| 259c0 | 70 61 6e 3e 20 73 6c 69 63 65 34 20 3d 20 62 79 74 65 73 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d | pan>.slice4.=.bytes[<span.class= |
| 259e0 | 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 |
| 25a00 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 5d 3b 0a 20 20 20 20 3c | ss="tok-number">5</span>];.....< |
| 25a20 | 73 70 61 6e 20 63 6c 61 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> |
| 25a40 | 20 69 6e 74 5f 73 6c 69 63 65 20 3d 20 73 74 64 2e 6d 65 6d 2e 62 79 74 65 73 41 73 53 6c 69 63 | .int_slice.=.std.mem.bytesAsSlic |
| 25a60 | 65 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 | e(<span.class="tok-type">u32</sp |
| 25a80 | 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">@ |
| 25aa0 | 61 6c 69 67 6e 43 61 73 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | alignCast</span>(<span.class="to |
| 25ac0 | 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 2c 20 73 6c 69 63 65 34 29 29 3b 0a 20 20 | k-number">4</span>,.slice4));... |
| 25ae0 | 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 |
| 25b00 | 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 6f 6b 2d | pan>.int_slice[<span.class="tok- |
| 25b20 | 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 70 72 65 | number">0</span>];.}</code></pre |
| 25b40 | 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 | ><pre><code.class="shell">$.zig. |
| 25b60 | 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 31 2f 31 20 74 65 73 74 20 26 71 75 6f 74 3b 70 6f 69 | test.test.zig.1/1.test."poi |
| 25b80 | 6e 74 65 72 20 61 6c 69 67 6e 6d 65 6e 74 20 73 61 66 65 74 79 26 71 75 6f 74 3b 2e 2e 2e 20 69 | nter.alignment.safety"....i |
| 25ba0 | 6e 63 6f 72 72 65 63 74 20 61 6c 69 67 6e 6d 65 6e 74 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ncorrect.alignment.<span.class=" |
| 25bc0 | 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f | t37_1">/home/andy/Downloads/zig/ |
| 25be0 | 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 31 30 3a 36 33 3c 2f 73 70 61 6e 3e | docgen_tmp/test.zig:10:63</span> |
| 25c00 | 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 30 36 66 32 62 20 69 6e | :.<span.class="t2_0">0x206f2b.in |
| 25c20 | 20 66 6f 6f 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 63 6f 6e 73 74 20 69 6e 74 | .foo.(test)</span>.....const.int |
| 25c40 | 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 75 33 | _slice.=.std.mem.bytesAsSlice(u3 |
| 25c60 | 32 2c 20 40 61 6c 69 67 6e 43 61 73 74 28 34 2c 20 73 6c 69 63 65 34 29 29 3b 0a 20 20 20 20 20 | 2,.@alignCast(4,.slice4));...... |
| 25c80 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ................................ |
| 25ca0 | 20 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 |
| 25cc0 | 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 | lass="t32_1">^</span>.<span.clas |
| 25ce0 | 73 3d 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a | s="t37_1">/home/andy/Downloads/z |
| 25d00 | 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 36 3a 32 37 3c 2f 73 70 61 | ig/docgen_tmp/test.zig:6:27</spa |
| 25d20 | 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 30 35 39 62 61 20 | n>:.<span.class="t2_0">0x2059ba. |
| 25d40 | 69 6e 20 74 65 73 74 20 26 71 75 6f 74 3b 70 6f 69 6e 74 65 72 20 61 6c 69 67 6e 6d 65 6e 74 20 | in.test."pointer.alignment. |
| 25d60 | 73 61 66 65 74 79 26 71 75 6f 74 3b 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 73 | safety".(test)</span>.....s |
| 25d80 | 74 64 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 28 66 6f 6f 28 62 79 74 65 73 29 20 3d 3d 20 | td.testing.expect(foo(bytes).==. |
| 25da0 | 30 78 31 31 31 31 31 31 31 31 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | 0x11111111);.................... |
| 25dc0 | 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 | .......<span.class="t32_1">^</sp |
| 25de0 | 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e | an>.<span.class="t37_1">/home/an |
| 25e00 | 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 70 65 63 69 61 6c | dy/Downloads/zig/lib/std/special |
| 25e20 | 2f 74 65 73 74 5f 72 75 6e 6e 65 72 2e 7a 69 67 3a 36 31 3a 32 38 3c 2f 73 70 61 6e 3e 3a 20 3c | /test_runner.zig:61:28</span>:.< |
| 25e40 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 64 64 33 31 20 69 6e 20 73 74 | span.class="t2_0">0x22dd31.in.st |
| 25e60 | 64 2e 73 70 65 63 69 61 6c 2e 6d 61 69 6e 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 | d.special.main.(test)</span>.... |
| 25e80 | 20 20 20 20 20 7d 20 65 6c 73 65 20 74 65 73 74 5f 66 6e 2e 66 75 6e 63 28 29 3b 0a 20 20 20 20 | .....}.else.test_fn.func();..... |
| 25ea0 | 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 |
| 25ec0 | 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ss="t32_1">^</span>.<span.class= |
| 25ee0 | 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 | "t37_1">/home/andy/Downloads/zig |
| 25f00 | 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 33 33 34 3a 33 37 3c 2f 73 70 61 6e 3e | /lib/std/start.zig:334:37</span> |
| 25f20 | 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 30 37 34 38 64 20 69 6e | :.<span.class="t2_0">0x20748d.in |
| 25f40 | 20 73 74 64 2e 73 74 61 72 74 2e 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 20 | .std.start.posixCallMainAndExit. |
| 25f60 | 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 73 74 20 | (test)</span>.............const. |
| 25f80 | 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 7c | result.=.root.main().catch.|err| |
| 25fa0 | 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 20 | .{.............................. |
| 25fc0 | 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 | .......<span.class="t32_1">^</sp |
| 25fe0 | 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e | an>.<span.class="t37_1">/home/an |
| 26000 | 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a | dy/Downloads/zig/lib/std/start.z |
| 26020 | 69 67 3a 31 36 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 74 32 | ig:162:5</span>:.<span.class="t2 |
| 26040 | 5f 30 22 3e 30 78 32 30 37 31 63 32 20 69 6e 20 73 74 64 2e 73 74 61 72 74 2e 5f 73 74 61 72 74 | _0">0x2071c2.in.std.start._start |
| 26060 | 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 40 63 61 6c 6c 28 2e 7b 20 2e 6d 6f 64 | .(test)</span>.....@call(.{..mod |
| 26080 | 69 66 69 65 72 20 3d 20 2e 6e 65 76 65 72 5f 69 6e 6c 69 6e 65 20 7d 2c 20 70 6f 73 69 78 43 61 | ifier.=..never_inline.},.posixCa |
| 260a0 | 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 2c 20 2e 7b 7d 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 | llMainAndExit,..{});.....<span.c |
| 260c0 | 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 65 72 72 6f 72 3a 20 74 68 65 | lass="t32_1">^</span>.error:.the |
| 260e0 | 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: |
| 26100 | 0a 64 6f 63 67 65 6e 5f 74 6d 70 2f 7a 69 67 2d 63 61 63 68 65 2f 6f 2f 38 66 65 38 30 31 32 38 | .docgen_tmp/zig-cache/o/8fe80128 |
| 26120 | 61 39 34 63 31 36 31 33 65 34 38 33 31 37 32 39 35 66 63 37 36 63 66 63 2f 74 65 73 74 0a 3c 2f | a94c1613e48317295fc76cfc/test.</ |
| 26140 | 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 | code></pre>................<h2.i |
| 26160 | 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 61 6c 6c 6f | d="allowzero"><a.href="#toc-allo |
| 26180 | 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 73 3d 22 68 | wzero">allowzero</a>.<a.class="h |
| 261a0 | 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 3c 2f 68 32 | dr".href="#allowzero">..</a></h2 |
| 261c0 | 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 74 65 72 20 | >........<p>.......This.pointer. |
| 261e0 | 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 6f 20 68 61 | attribute.allows.a.pointer.to.ha |
| 26200 | 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 79 20 65 76 | ve.address.zero..This.is.only.ev |
| 26220 | 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 74 61 6e 64 | er.needed.on.the.......freestand |
| 26240 | 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 72 65 73 73 | ing.OS.target,.where.the.address |
| 26260 | 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 6e 74 20 74 | .zero.is.mappable..If.you.want.t |
| 26280 | 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 73 65 0a 20 | o.represent.null.pointers,.use.. |
| 262a0 | 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 4f 70 74 69 6f 6e 61 6c 2d 50 6f 69 6e 74 65 72 73 | .....<a.href="#Optional-Pointers |
| 262c0 | 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 65 61 64 2e | ">Optional.Pointers</a>.instead. |
| 262e0 | 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 |
| 26300 | 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 64 65 20 63 | tional.Pointers</a>.with.<code.c |
| 26320 | 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | lass="zig"><span.class="tok-kw"> |
| 26340 | 61 6c 6c 6f 77 7a 65 72 6f 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 0a 20 20 20 20 20 20 61 72 | allowzero</span></code>.......ar |
| 26360 | 65 20 6e 6f 74 20 74 68 65 20 73 61 6d 65 20 73 69 7a 65 20 61 73 20 70 6f 69 6e 74 65 72 73 2e | e.not.the.same.size.as.pointers. |
| 26380 | 20 49 6e 20 74 68 69 73 20 63 6f 64 65 20 65 78 61 6d 70 6c 65 2c 20 69 66 20 74 68 65 20 70 6f | .In.this.code.example,.if.the.po |
| 263a0 | 69 6e 74 65 72 0a 20 20 20 20 20 20 64 69 64 20 6e 6f 74 20 68 61 76 65 20 74 68 65 20 3c 63 6f | inter.......did.not.have.the.<co |
| 263c0 | 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | de.class="zig"><span.class="tok- |
| 263e0 | 6b 77 22 3e 61 6c 6c 6f 77 7a 65 72 6f 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 61 74 74 72 | kw">allowzero</span></code>.attr |
| 26400 | 69 62 75 74 65 2c 20 74 68 69 73 20 77 6f 75 6c 64 20 62 65 20 61 0a 20 20 20 20 20 20 3c 61 20 | ibute,.this.would.be.a.......<a. |
| 26420 | 68 72 65 66 3d 22 23 50 6f 69 6e 74 65 72 2d 43 61 73 74 2d 49 6e 76 61 6c 69 64 2d 4e 75 6c 6c | href="#Pointer-Cast-Invalid-Null |
| 26440 | 22 3e 50 6f 69 6e 74 65 72 20 43 61 73 74 20 49 6e 76 61 6c 69 64 20 4e 75 6c 6c 3c 2f 61 3e 20 | ">Pointer.Cast.Invalid.Null</a>. |
| 26460 | 70 61 6e 69 63 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 | panic:.......</p>.......<p.class |
| 26480 | 3d 22 66 69 6c 65 22 3e 61 6c 6c 6f 77 7a 65 72 6f 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 | ="file">allowzero.zig</p><pre><c |
| 264a0 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ode.class="zig"><span.class="tok |
| 264c0 | 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 |
| 264e0 | 61 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> |
| 26500 | 28 3c 73 70 61 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 |
| 26520 | 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 |
| 26540 | 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 |
| 26560 | 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 |
| 26580 | 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 |
| 265a0 | 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 61 6c 6c 6f 77 7a 65 72 6f 26 71 75 6f 74 3b 3c 2f 73 70 | k-str">"allowzero"</sp |
| 265c0 | 61 6e 3e 20 7b 0a 20 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 |
| 265e0 | 61 72 3c 2f 73 70 61 6e 3e 20 7a 65 72 6f 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ar</span>.zero:.<span.class="tok |
| 26600 | 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 |
| 26620 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 | s="tok-number">0</span>;.....<sp |
| 26640 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 70 74 72 | an.class="tok-kw">var</span>.ptr |
| 26660 | 20 3d 20 3c 73 70 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 |
| 26680 | 74 54 6f 50 74 72 3c 2f 73 70 61 6e 3e 28 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | tToPtr</span>(*<span.class="tok- |
| 266a0 | 6b 77 22 3e 61 6c 6c 6f 77 7a 65 72 6f 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 | kw">allowzero</span>.<span.class |
| 266c0 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 2c 20 7a 65 72 6f 29 3b 0a 20 | ="tok-type">i32</span>,.zero);.. |
| 266e0 | 20 20 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 | ...expect(<span.class="tok-built |
| 26700 | 69 6e 22 3e 40 70 74 72 54 6f 49 6e 74 3c 2f 73 70 61 6e 3e 28 70 74 72 29 20 3d 3d 20 3c 73 70 | in">@ptrToInt</span>(ptr).==.<sp |
| 26720 | 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>); |
| 26740 | 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d | .}</code></pre><pre><code.class= |
| 26760 | 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 61 6c 6c 6f 77 7a 65 72 6f 2e 7a 69 67 | "shell">$.zig.test.allowzero.zig |
| 26780 | 0a 31 2f 31 20 74 65 73 74 20 26 71 75 6f 74 3b 61 6c 6c 6f 77 7a 65 72 6f 26 71 75 6f 74 3b 2e | .1/1.test."allowzero". |
| 267a0 | 2e 2e 20 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 | ...OK.All.1.tests.passed..</code |
| 267c0 | 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 53 | ></pre>................<h2.id="S |
| 267e0 | 65 6e 74 69 6e 65 6c 2d 54 65 72 6d 69 6e 61 74 65 64 2d 50 6f 69 6e 74 65 72 73 22 3e 3c 61 20 | entinel-Terminated-Pointers"><a. |
| 26800 | 68 72 65 66 3d 22 23 74 6f 63 2d 53 65 6e 74 69 6e 65 6c 2d 54 65 72 6d 69 6e 61 74 65 64 2d 50 | href="#toc-Sentinel-Terminated-P |
| 26820 | 6f 69 6e 74 65 72 73 22 3e 53 65 6e 74 69 6e 65 6c 2d 54 65 72 6d 69 6e 61 74 65 64 20 50 6f 69 | ointers">Sentinel-Terminated.Poi |
| 26840 | 6e 74 65 72 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 | nters</a>.<a.class="hdr".href="# |
| 26860 | 53 65 6e 74 69 6e 65 6c 2d 54 65 72 6d 69 6e 61 74 65 64 2d 50 6f 69 6e 74 65 72 73 22 3e c2 a7 | Sentinel-Terminated-Pointers">.. |
| 26880 | 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 20 73 | </a></h2>........<p>.......The.s |
| 268a0 | 79 6e 74 61 78 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 5b 2a 3a 78 5d 54 3c 2f | yntax.<code.class="zig">[*:x]T</ |
| 268c0 | 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 0a 20 | code>.describes.a.pointer.that.. |
| 268e0 | 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 79 20 | .....has.a.length.determined.by. |
| 26900 | 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 73 20 | a.sentinel.value..This.provides. |
| 26920 | 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 72 20 | protection.......against.buffer. |
| 26940 | 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 3c 2f | overflow.and.overreads........</ |
| 26960 | 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 | p>.......<p.class="file">test.zi |
| 26980 | 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 | g</p><pre><code.class="zig"><spa |
| 269a0 | 6e 20 63 6c 61 73 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 |
| 269c0 | 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 |
| 269e0 | 6d 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 |
| 26a00 | 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 |
| 26a20 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 69 73 20 69 | an.class="tok-comment">//.This.i |
| 26a40 | 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 72 69 6e 74 | s.also.available.as.`std.c.print |
| 26a60 | 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 6b 77 22 3e | f`.</span>.<span.class="tok-kw"> |
| 26a80 | 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"> |
| 26aa0 | 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 73 | extern</span>.<span.class="tok-s |
| 26ac0 | 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 61 6e 20 63 | tr">"c"</span>.<span.c |
| 26ae0 | 6c 61 73 73 3d 22 74 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 |
| 26b00 | 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 6f 72 6d 61 | ass="tok-fn">printf</span>(forma |
| 26b20 | 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 72 22 3e 30 | t:.[*:<span.class="tok-number">0 |
| 26b40 | 3c 2f 73 70 61 6e 3e 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e | </span>]<span.class="tok-kw">con |
| 26b60 | 73 74 3c 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" |
| 26b80 | 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 3d 22 74 6f | >u8</span>,....).<span.class="to |
| 26ba0 | 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 20 63 6c 61 | k-type">c_int</span>;..<span.cla |
| 26bc0 | 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 |
| 26be0 | 73 73 3d 22 74 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 |
| 26c00 | 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 |
| 26c20 | 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>! |
| 26c40 | 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 |
| 26c60 | 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 61 73 73 3d | n>.{....._.=.printf(<span.class= |
| 26c80 | 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 48 65 6c 6c 6f 2c 20 77 6f 72 6c 64 21 5c 6e 26 | "tok-str">"Hello,.world!\n& |
| 26ca0 | 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 6b 2d | quot;</span>);.<span.class="tok- |
| 26cc0 | 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 73 70 61 6e | comment">//.OK</span>......<span |
| 26ce0 | 20 63 6c 61 73 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 73 67 | .class="tok-kw">const</span>.msg |
| 26d00 | 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 48 | .=.<span.class="tok-str">"H |
| 26d20 | 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 0a 20 20 20 | ello,.world!\n"</span>;.... |
| 26d40 | 20 3c 73 70 61 6e 20 63 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 |
| 26d60 | 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 5b 6d 73 67 | n>.non_null_terminated_msg:.[msg |
| 26d80 | 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 75 38 3c 2f | .len]<span.class="tok-type">u8</ |
| 26da0 | 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 66 28 26 61 | span>.=.msg.*;....._.=.printf(&a |
| 26dc0 | 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 7d 3c 2f | mp;non_null_terminated_msg);.}</ |
| 26de0 | 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 | code></pre><pre><code.class="she |
| 26e00 | 6c 6c 22 3e 24 20 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 74 65 73 74 2e 7a 69 67 20 2d 6c 63 | ll">$.zig.build-exe.test.zig.-lc |
| 26e20 | 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 | .<span.class="t0_1">./docgen_tmp |
| 26e40 | 2f 74 65 73 74 2e 7a 69 67 3a 31 31 3a 31 37 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c | /test.zig:11:17:.</span><span.cl |
| 26e60 | 61 73 73 3d 22 74 33 31 5f 31 22 3e 65 72 72 6f 72 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 | ass="t31_1">error:.</span><span. |
| 26e80 | 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 65 78 70 65 63 74 65 64 20 74 79 70 65 20 27 5b 2a 3a 30 | class="t0_1">expected.type.'[*:0 |
| 26ea0 | 5d 63 6f 6e 73 74 20 75 38 27 2c 20 66 6f 75 6e 64 20 27 2a 63 6f 6e 73 74 20 5b 31 34 5d 75 38 | ]const.u8',.found.'*const.[14]u8 |
| 26ec0 | 27 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 5f 20 3d 20 70 72 69 6e 74 66 28 26 61 6d 70 3b 6e 6f 6e | '</span>....._.=.printf(&non |
| 26ee0 | 5f 6e 75 6c 6c 5f 74 65 72 6d 69 6e 61 74 65 64 5f 6d 73 67 29 3b 0a 20 20 20 20 20 20 20 20 20 | _null_terminated_msg);.......... |
| 26f00 | 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 | .......<span.class="t32_1">^</sp |
| 26f20 | 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f | an>.<span.class="t0_1">./docgen_ |
| 26f40 | 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 31 31 3a 31 37 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e | tmp/test.zig:11:17:.</span><span |
| 26f60 | 20 63 6c 61 73 73 3d 22 74 33 36 5f 31 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 | .class="t36_1">note:.</span><spa |
| 26f80 | 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 64 65 73 74 69 6e 61 74 69 6f 6e 20 70 6f 69 6e 74 | n.class="t0_1">destination.point |
| 26fa0 | 65 72 20 72 65 71 75 69 72 65 73 20 61 20 74 65 72 6d 69 6e 61 74 69 6e 67 20 27 30 27 20 73 65 | er.requires.a.terminating.'0'.se |
| 26fc0 | 6e 74 69 6e 65 6c 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 5f 20 3d 20 70 72 69 6e 74 66 28 26 61 6d | ntinel</span>....._.=.printf(&am |
| 26fe0 | 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 20 20 20 | p;non_null_terminated_msg);..... |
| 27000 | 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e | ............<span.class="t32_1"> |
| 27020 | 5e 3c 2f 73 70 61 6e 3e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 | ^</span>.</code></pre>........<p |
| 27040 | 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=" |
| 27060 | 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 |
| 27080 | 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> |
| 270a0 | 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 53 65 6e 74 69 6e 65 6c 2d 54 65 72 6d 69 6e 61 74 | .<li><a.href="#Sentinel-Terminat |
| 270c0 | 65 64 2d 41 72 72 61 79 73 22 3e 53 65 6e 74 69 6e 65 6c 2d 54 65 72 6d 69 6e 61 74 65 64 20 41 | ed-Arrays">Sentinel-Terminated.A |
| 270e0 | 72 72 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 | rrays</a></li>.</ul>............ |
| 27100 | 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 31 20 69 64 3d 22 53 6c 69 63 65 73 22 3e 3c 61 20 68 72 | ...........<h1.id="Slices"><a.hr |
| 27120 | 65 66 3d 22 23 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 | ef="#toc-Slices">Slices</a>.<a.c |
| 27140 | 6c 61 73 73 3d 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 | lass="hdr".href="#Slices">..</a> |
| 27160 | 3c 2f 68 31 3e 0a 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 | </h1>........<p.class="file">tes |
| 27180 | 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e | t.zig</p><pre><code.class="zig"> |
| 271a0 | 3c 73 70 61 6e 20 63 6c 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 |
| 271c0 | 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 |
| 271e0 | 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= |
| 27200 | 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> |
| 27220 | 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=" |
| 27240 | 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= |
| 27260 | 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 62 61 73 69 63 20 73 6c 69 63 65 73 26 71 75 6f | "tok-str">"basic.slices&quo |
| 27280 | 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 |
| 272a0 | 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 61 72 72 61 79 20 3d 20 5b 5f 5d 3c 73 70 61 6e | -kw">var</span>.array.=.[_]<span |
| 272c0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 7b 20 3c 73 | .class="tok-type">i32</span>{.<s |
| 272e0 | 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>, |
| 27300 | 20 3c 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 |
| 27320 | 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f | n>,.<span.class="tok-number">3</ |
| 27340 | 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"> |
| 27360 | 34 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | 4</span>.};.....<span.class="tok |
| 27380 | 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 41 20 73 6c 69 63 65 20 69 73 20 61 20 70 6f 69 6e 74 65 | -comment">//.A.slice.is.a.pointe |
| 273a0 | 72 20 61 6e 64 20 61 20 6c 65 6e 67 74 68 2e 20 54 68 65 20 64 69 66 66 65 72 65 6e 63 65 20 62 | r.and.a.length..The.difference.b |
| 273c0 | 65 74 77 65 65 6e 20 61 6e 20 61 72 72 61 79 20 61 6e 64 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c | etween.an.array.and</span>.....< |
| 273e0 | 73 70 61 6e 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 6c | span.class="tok-comment">//.a.sl |
| 27400 | 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 68 20 69 | ice.is.that.the.array's.length.i |
| 27420 | 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 61 74 3c | s.part.of.the.type.and.known.at< |
| 27440 | 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 |
| 27460 | 65 6e 74 22 3e 2f 2f 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 2c 20 77 68 65 72 65 61 73 20 74 68 | ent">//.compile-time,.whereas.th |
| 27480 | 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 6e | e.slice's.length.is.known.at.run |
| 274a0 | 74 69 6d 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 | time.</span>.....<span.class="to |
| 274c0 | 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 42 6f 74 68 20 63 61 6e 20 62 65 20 61 63 63 65 73 73 | k-comment">//.Both.can.be.access |
| 274e0 | 65 64 20 77 69 74 68 20 74 68 65 20 60 6c 65 6e 60 20 66 69 65 6c 64 2e 3c 2f 73 70 61 6e 3e 0a | ed.with.the.`len`.field.</span>. |
| 27500 | 20 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 |
| 27520 | 61 6e 3e 20 6b 6e 6f 77 6e 5f 61 74 5f 72 75 6e 74 69 6d 65 5f 7a 65 72 6f 3a 20 3c 73 70 61 6e | an>.known_at_runtime_zero:.<span |
| 27540 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 20 3d | .class="tok-type">usize</span>.= |
| 27560 | 20 3c 73 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 |
| 27580 | 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 |
| 275a0 | 73 74 3c 2f 73 70 61 6e 3e 20 73 6c 69 63 65 20 3d 20 61 72 72 61 79 5b 6b 6e 6f 77 6e 5f 61 74 | st</span>.slice.=.array[known_at |
| 275c0 | 5f 72 75 6e 74 69 6d 65 5f 7a 65 72 6f 2e 2e 61 72 72 61 79 2e 6c 65 6e 5d 3b 0a 20 20 20 20 65 | _runtime_zero..array.len];.....e |
| 275e0 | 78 70 65 63 74 28 26 61 6d 70 3b 73 6c 69 63 65 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | xpect(&slice[<span.class="to |
| 27600 | 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 5d 20 3d 3d 20 26 61 6d 70 3b 61 72 72 61 | k-number">0</span>].==.&arra |
| 27620 | 79 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 | y[<span.class="tok-number">0</sp |
| 27640 | 61 6e 3e 5d 29 3b 0a 20 20 20 20 65 78 70 65 63 74 28 73 6c 69 63 65 2e 6c 65 6e 20 3d 3d 20 61 | an>]);.....expect(slice.len.==.a |
| 27660 | 72 72 61 79 2e 6c 65 6e 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | rray.len);......<span.class="tok |
| 27680 | 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 55 73 69 6e 67 20 74 68 65 20 61 64 64 72 65 73 73 2d 6f | -comment">//.Using.the.address-o |
| 276a0 | 66 20 6f 70 65 72 61 74 6f 72 20 6f 6e 20 61 20 73 6c 69 63 65 20 67 69 76 65 73 20 61 20 70 6f | f.operator.on.a.slice.gives.a.po |
| 276c0 | 69 6e 74 65 72 20 74 6f 20 61 20 73 69 6e 67 6c 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 | inter.to.a.single</span>.....<sp |
| 276e0 | 61 6e 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 65 6d 2c 20 | an.class="tok-comment">//.item,. |
| 27700 | 77 68 69 6c 65 20 75 73 69 6e 67 20 74 68 65 20 60 70 74 72 60 20 66 69 65 6c 64 20 67 69 76 65 | while.using.the.`ptr`.field.give |
| 27720 | 73 20 61 6e 20 75 6e 6b 6e 6f 77 6e 20 6c 65 6e 67 74 68 20 70 6f 69 6e 74 65 72 2e 3c 2f 73 70 | s.an.unknown.length.pointer.</sp |
| 27740 | 61 6e 3e 0a 20 20 20 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 | an>.....expect(<span.class="tok- |
| 27760 | 62 75 69 6c 74 69 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 73 6c 69 63 65 2e 70 74 | builtin">@TypeOf</span>(slice.pt |
| 27780 | 72 29 20 3d 3d 20 5b 2a 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | r).==.[*]<span.class="tok-type"> |
| 277a0 | 69 33 32 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 65 78 70 65 63 74 28 3c 73 70 61 6e 20 63 6c | i32</span>);.....expect(<span.cl |
| 277c0 | 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> |
| 277e0 | 28 26 61 6d 70 3b 73 6c 69 63 65 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | (&slice[<span.class="tok-num |
| 27800 | 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 5d 29 20 3d 3d 20 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ber">0</span>]).==.*<span.class= |
| 27820 | 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 65 78 70 65 | "tok-type">i32</span>);.....expe |
| 27840 | 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 70 74 | ct(<span.class="tok-builtin">@pt |
| 27860 | 72 54 6f 49 6e 74 3c 2f 73 70 61 6e 3e 28 73 6c 69 63 65 2e 70 74 72 29 20 3d 3d 20 3c 73 70 61 | rToInt</span>(slice.ptr).==.<spa |
| 27880 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 70 74 72 54 6f 49 6e 74 3c | n.class="tok-builtin">@ptrToInt< |
| 278a0 | 2f 73 70 61 6e 3e 28 26 61 6d 70 3b 73 6c 69 63 65 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | /span>(&slice[<span.class="t |
| 278c0 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 5d 29 29 3b 0a 0a 20 20 20 20 3c 73 70 | ok-number">0</span>]));......<sp |
| 278e0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 53 6c 69 63 65 73 | an.class="tok-comment">//.Slices |
| 27900 | 20 68 61 76 65 20 61 72 72 61 79 20 62 6f 75 6e 64 73 20 63 68 65 63 6b 69 6e 67 2e 20 49 66 20 | .have.array.bounds.checking..If. |
| 27920 | 79 6f 75 20 74 72 79 20 74 6f 20 61 63 63 65 73 73 20 73 6f 6d 65 74 68 69 6e 67 20 6f 75 74 3c | you.try.to.access.something.out< |
| 27940 | 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 |
| 27960 | 65 6e 74 22 3e 2f 2f 20 6f 66 20 62 6f 75 6e 64 73 2c 20 79 6f 75 27 6c 6c 20 67 65 74 20 61 20 | ent">//.of.bounds,.you'll.get.a. |
| 27980 | 73 61 66 65 74 79 20 63 68 65 63 6b 20 66 61 69 6c 75 72 65 3a 3c 2f 73 70 61 6e 3e 0a 20 20 20 | safety.check.failure:</span>.... |
| 279a0 | 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"> |
| 279c0 | 31 30 3c 2f 73 70 61 6e 3e 5d 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | 10</span>].+=.<span.class="tok-n |
| 279e0 | 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | umber">1</span>;......<span.clas |
| 27a00 | 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 4e 6f 74 65 20 74 68 61 74 20 60 73 6c | s="tok-comment">//.Note.that.`sl |
| 27a20 | 69 63 65 2e 70 74 72 60 20 64 6f 65 73 20 6e 6f 74 20 69 6e 76 6f 6b 65 20 73 61 66 65 74 79 20 | ice.ptr`.does.not.invoke.safety. |
| 27a40 | 63 68 65 63 6b 69 6e 67 2c 20 77 68 69 6c 65 20 60 26 61 6d 70 3b 73 6c 69 63 65 5b 30 5d 60 3c | checking,.while.`&slice[0]`< |
| 27a60 | 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 |
| 27a80 | 65 6e 74 22 3e 2f 2f 20 61 73 73 65 72 74 73 20 74 68 61 74 20 74 68 65 20 73 6c 69 63 65 20 68 | ent">//.asserts.that.the.slice.h |
| 27aa0 | 61 73 20 6c 65 6e 20 26 67 74 3b 3d 20 31 2e 3c 2f 73 70 61 6e 3e 0a 7d 3c 2f 63 6f 64 65 3e 3c | as.len.>=.1.</span>.}</code>< |
| 27ac0 | 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 | /pre><pre><code.class="shell">$. |
| 27ae0 | 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 31 2f 31 20 74 65 73 74 20 26 71 75 6f 74 | zig.test.test.zig.1/1.test." |
| 27b00 | 3b 62 61 73 69 63 20 73 6c 69 63 65 73 26 71 75 6f 74 3b 2e 2e 2e 20 69 6e 64 65 78 20 6f 75 74 | ;basic.slices"....index.out |
| 27b20 | 20 6f 66 20 62 6f 75 6e 64 73 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 37 5f 31 22 3e 2f | .of.bounds.<span.class="t37_1">/ |
| 27b40 | 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 | home/andy/Downloads/zig/docgen_t |
| 27b60 | 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 32 32 3a 31 30 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 | mp/test.zig:22:10</span>:.<span. |
| 27b80 | 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 30 35 62 30 36 20 69 6e 20 74 65 73 74 20 26 71 | class="t2_0">0x205b06.in.test.&q |
| 27ba0 | 75 6f 74 3b 62 61 73 69 63 20 73 6c 69 63 65 73 26 71 75 6f 74 3b 20 28 74 65 73 74 29 3c 2f 73 | uot;basic.slices".(test)</s |
| 27bc0 | 70 61 6e 3e 0a 20 20 20 20 73 6c 69 63 65 5b 31 30 5d 20 2b 3d 20 31 3b 0a 20 20 20 20 20 20 20 | pan>.....slice[10].+=.1;........ |
| 27be0 | 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c | ..<span.class="t32_1">^</span>.< |
| 27c00 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f | span.class="t37_1">/home/andy/Do |
| 27c20 | 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 70 65 63 69 61 6c 2f 74 65 73 74 | wnloads/zig/lib/std/special/test |
| 27c40 | 5f 72 75 6e 6e 65 72 2e 7a 69 67 3a 36 31 3a 32 38 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 | _runner.zig:61:28</span>:.<span. |
| 27c60 | 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 64 63 37 31 20 69 6e 20 73 74 64 2e 73 70 65 | class="t2_0">0x22dc71.in.std.spe |
| 27c80 | 63 69 61 6c 2e 6d 61 69 6e 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 | cial.main.(test)</span>......... |
| 27ca0 | 7d 20 65 6c 73 65 20 74 65 73 74 5f 66 6e 2e 66 75 6e 63 28 29 3b 0a 20 20 20 20 20 20 20 20 20 | }.else.test_fn.func();.......... |
| 27cc0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ..................<span.class="t |
| 27ce0 | 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 37 5f | 32_1">^</span>.<span.class="t37_ |
| 27d00 | 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f | 1">/home/andy/Downloads/zig/lib/ |
| 27d20 | 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 33 33 34 3a 33 37 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 | std/start.zig:334:37</span>:.<sp |
| 27d40 | 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 30 37 34 35 64 20 69 6e 20 73 74 64 2e | an.class="t2_0">0x20745d.in.std. |
| 27d60 | 73 74 61 72 74 2e 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 20 28 74 65 73 74 | start.posixCallMainAndExit.(test |
| 27d80 | 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 73 74 20 72 65 73 75 6c | )</span>.............const.resul |
| 27da0 | 74 20 3d 20 72 6f 6f 74 2e 6d 61 69 6e 28 29 20 63 61 74 63 68 20 7c 65 72 72 7c 20 7b 0a 20 20 | t.=.root.main().catch.|err|.{... |
| 27dc0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ................................ |
| 27de0 | 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c | ..<span.class="t32_1">^</span>.< |
| 27e00 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f | span.class="t37_1">/home/andy/Do |
| 27e20 | 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 31 36 | wnloads/zig/lib/std/start.zig:16 |
| 27e40 | 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 74 32 5f 30 22 3e 30 | 2:5</span>:.<span.class="t2_0">0 |
| 27e60 | 78 32 30 37 31 39 32 20 69 6e 20 73 74 64 2e 73 74 61 72 74 2e 5f 73 74 61 72 74 20 28 74 65 73 | x207192.in.std.start._start.(tes |
| 27e80 | 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 40 63 61 6c 6c 28 2e 7b 20 2e 6d 6f 64 69 66 69 65 72 | t)</span>.....@call(.{..modifier |
| 27ea0 | 20 3d 20 2e 6e 65 76 65 72 5f 69 6e 6c 69 6e 65 20 7d 2c 20 70 6f 73 69 78 43 61 6c 6c 4d 61 69 | .=..never_inline.},.posixCallMai |
| 27ec0 | 6e 41 6e 64 45 78 69 74 2c 20 2e 7b 7d 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | nAndExit,..{});.....<span.class= |
| 27ee0 | 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 65 72 72 6f 72 3a 20 74 68 65 20 66 6f 6c 6c | "t32_1">^</span>.error:.the.foll |
| 27f00 | 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 64 6f 63 67 | owing.test.command.crashed:.docg |
| 27f20 | 65 6e 5f 74 6d 70 2f 7a 69 67 2d 63 61 63 68 65 2f 6f 2f 38 66 65 38 30 31 32 38 61 39 34 63 31 | en_tmp/zig-cache/o/8fe80128a94c1 |
| 27f40 | 36 31 33 65 34 38 33 31 37 32 39 35 66 63 37 36 63 66 63 2f 74 65 73 74 0a 3c 2f 63 6f 64 65 3e | 613e48317295fc76cfc/test.</code> |
| 27f60 | 3c 2f 70 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 | </pre>........<p>This.is.one.rea |
| 27f80 | 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 |
| 27fa0 | 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 73 6c 69 63 | .</p>.......<p.class="file">slic |
| 27fc0 | 65 73 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | es.zig</p><pre><code.class="zig" |
| 27fe0 | 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 |
| 28000 | 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 |
| 28020 | 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 |
| 28040 | 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>); |
| 28060 | 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 |
| 28080 | 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;. |
| 280a0 | 3c 73 70 61 6e 20 63 6c 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 |
| 280c0 | 3e 20 6d 65 6d 20 3d 20 73 74 64 2e 6d 65 6d 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | >.mem.=.std.mem;.<span.class="to |
| 280e0 | 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 66 6d 74 20 3d 20 73 74 64 2e 66 6d 74 | k-kw">const</span>.fmt.=.std.fmt |
| 28100 | 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 |
| 28120 | 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">" |
| 28140 | 75 73 69 6e 67 20 73 6c 69 63 65 73 20 66 6f 72 20 73 74 72 69 6e 67 73 26 71 75 6f 74 3b 3c 2f | using.slices.for.strings"</ |
| 28160 | 73 70 61 6e 3e 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 |
| 28180 | 6d 65 6e 74 22 3e 2f 2f 20 5a 69 67 20 68 61 73 20 6e 6f 20 63 6f 6e 63 65 70 74 20 6f 66 20 73 | ment">//.Zig.has.no.concept.of.s |
| 281a0 | 74 72 69 6e 67 73 2e 20 53 74 72 69 6e 67 20 6c 69 74 65 72 61 6c 73 20 61 72 65 20 63 6f 6e 73 | trings..String.literals.are.cons |
| 281c0 | 74 20 70 6f 69 6e 74 65 72 73 20 74 6f 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 | t.pointers.to</span>.....<span.c |
| 281e0 | 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 61 72 72 61 79 73 20 6f 66 20 | lass="tok-comment">//.arrays.of. |
| 28200 | 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 |
| 28220 | 20 74 68 61 74 20 61 72 65 20 26 71 75 6f 74 3b 73 74 72 69 6e 67 73 26 71 75 6f 74 3b 20 61 72 | .that.are."strings".ar |
| 28240 | 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f | e</span>.....<span.class="tok-co |
| 28260 | 6d 6d 65 6e 74 22 3e 2f 2f 20 65 78 70 65 63 74 65 64 20 74 6f 20 62 65 20 55 54 46 2d 38 20 65 | mment">//.expected.to.be.UTF-8.e |
| 28280 | 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>..... |
| 282a0 | 3c 73 70 61 6e 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 |
| 282c0 | 65 20 77 65 20 63 6f 65 72 63 65 20 5b 35 5d 75 38 20 74 6f 20 5b 5d 63 6f 6e 73 74 20 75 38 3c | e.we.coerce.[5]u8.to.[]const.u8< |
| 282e0 | 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"> |
| 28300 | 63 6f 6e 73 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 | const</span>.hello:.[]<span.clas |
| 28320 | 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 |
| 28340 | 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 |
| 28360 | 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 |
| 28380 | 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- |
| 283a0 | 6b 77 22 3e 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 | kw">const</span>.world:.[]<span. |
| 283c0 | 63 6c 61 73 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 |
| 283e0 | 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>.=.< |
| 28400 | 73 70 61 6e 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 | span.class="tok-str">"..... |
| 28420 | 8c 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ."</span>;......<span.class |
| 28440 | 3d 22 74 6f 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 | ="tok-kw">var</span>.all_togethe |
| 28460 | 72 3a 20 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 30 | r:.[<span.class="tok-number">100 |
| 28480 | 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 |
| 284a0 | 38 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c | 8</span>.=.<span.class="tok-null |
| 284c0 | 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 |
| 284e0 | 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 73 65 | ass="tok-comment">//.You.can.use |
| 28500 | 20 73 6c 69 63 65 20 73 79 6e 74 61 78 20 6f 6e 20 61 6e 20 61 72 72 61 79 20 74 6f 20 63 6f 6e | .slice.syntax.on.an.array.to.con |
| 28520 | 76 65 72 74 20 61 6e 20 61 72 72 61 79 20 69 6e 74 6f 20 61 20 73 6c 69 63 65 2e 3c 2f 73 70 61 | vert.an.array.into.a.slice.</spa |
| 28540 | 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 |
| 28560 | 74 3c 2f 73 70 61 6e 3e 20 61 6c 6c 5f 74 6f 67 65 74 68 65 72 5f 73 6c 69 63 65 20 3d 20 61 6c | t</span>.all_together_slice.=.al |
| 28580 | 6c 5f 74 6f 67 65 74 68 65 72 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | l_together[<span.class="tok-numb |
| 285a0 | 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 2e 2e 5d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | er">0</span>..];.....<span.class |
| 285c0 | 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 53 74 72 69 6e 67 20 63 6f 6e 63 61 74 65 | ="tok-comment">//.String.concate |
| 285e0 | 6e 61 74 69 6f 6e 20 65 78 61 6d 70 6c 65 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e | nation.example.</span>.....<span |
| 28600 | 20 63 6c 61 73 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 | .class="tok-kw">const</span>.hel |
| 28620 | 6c 6f 5f 77 6f 72 6c 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | lo_world.=.<span.class="tok-kw"> |
| 28640 | 74 72 79 3c 2f 73 70 61 6e 3e 20 66 6d 74 2e 62 75 66 50 72 69 6e 74 28 61 6c 6c 5f 74 6f 67 65 | try</span>.fmt.bufPrint(all_toge |
| 28660 | 74 68 65 72 5f 73 6c 69 63 65 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 | ther_slice,.<span.class="tok-str |
| 28680 | 22 3e 26 71 75 6f 74 3b 7b 7d 20 7b 7d 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 20 68 | ">"{}.{}"</span>,..{.h |
| 286a0 | 65 6c 6c 6f 2c 20 77 6f 72 6c 64 20 7d 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ello,.world.});......<span.class |
| 286c0 | 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 47 65 6e 65 72 61 6c 6c 79 2c 20 79 6f 75 | ="tok-comment">//.Generally,.you |
| 286e0 | 20 63 61 6e 20 75 73 65 20 55 54 46 2d 38 20 61 6e 64 20 6e 6f 74 20 77 6f 72 72 79 20 61 62 6f | .can.use.UTF-8.and.not.worry.abo |
| 28700 | 75 74 20 77 68 65 74 68 65 72 20 73 6f 6d 65 74 68 69 6e 67 20 69 73 20 61 3c 2f 73 70 61 6e 3e | ut.whether.something.is.a</span> |
| 28720 | 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">/ |
| 28740 | 2f 20 73 74 72 69 6e 67 2e 20 49 66 20 79 6f 75 20 64 6f 6e 27 74 20 6e 65 65 64 20 74 6f 20 64 | /.string..If.you.don't.need.to.d |
| 28760 | 65 61 6c 20 77 69 74 68 20 69 6e 64 69 76 69 64 75 61 6c 20 63 68 61 72 61 63 74 65 72 73 2c 20 | eal.with.individual.characters,. |
| 28780 | 6e 6f 20 6e 65 65 64 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | no.need</span>.....<span.class=" |
| 287a0 | 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 74 6f 20 64 65 63 6f 64 65 2e 3c 2f 73 70 61 6e | tok-comment">//.to.decode.</span |
| 287c0 | 3e 0a 20 20 20 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 | >.....expect(mem.eql(<span.class |
| 287e0 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 68 65 6c 6c 6f 5f 77 6f 72 | ="tok-type">u8</span>,.hello_wor |
| 28800 | 6c 64 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b | ld,.<span.class="tok-str">" |
| 28820 | 68 65 6c 6c 6f 20 e4 b8 96 e7 95 8c 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 29 3b 0a 7d 0a 0a | hello......."</span>));.}.. |
| 28840 | 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> |
| 28860 | 20 3c 73 70 61 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 6c 69 | .<span.class="tok-str">"sli |
| 28880 | 63 65 20 70 6f 69 6e 74 65 72 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 | ce.pointer"</span>.{.....<s |
| 288a0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 61 72 | pan.class="tok-kw">var</span>.ar |
| 288c0 | 72 61 79 3a 20 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 | ray:.[<span.class="tok-number">1 |
| 288e0 | 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"> |
| 28900 | 75 38 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c | u8</span>.=.<span.class="tok-nul |
| 28920 | 6c 22 3e 75 6e 64 65 66 69 6e 65 64 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 | l">undefined</span>;.....<span.c |
| 28940 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 70 74 72 20 3d | lass="tok-kw">const</span>.ptr.= |
| 28960 | 20 26 61 6d 70 3b 61 72 72 61 79 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | .&array;......<span.class="t |
| 28980 | 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 63 69 | ok-comment">//.You.can.use.slici |
| 289a0 | 6e 67 20 73 79 6e 74 61 78 20 74 6f 20 63 6f 6e 76 65 72 74 20 61 20 70 6f 69 6e 74 65 72 20 69 | ng.syntax.to.convert.a.pointer.i |
| 289c0 | 6e 74 6f 20 61 20 73 6c 69 63 65 3a 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | nto.a.slice:</span>.....<span.cl |
| 289e0 | 61 73 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 | ass="tok-kw">const</span>.slice. |
| 28a00 | 3d 20 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 | =.ptr[<span.class="tok-number">0 |
| 28a20 | 3c 2f 73 70 61 6e 3e 2e 2e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | </span>..<span.class="tok-number |
| 28a40 | 22 3e 35 3c 2f 73 70 61 6e 3e 5d 3b 0a 20 20 20 20 73 6c 69 63 65 5b 3c 73 70 61 6e 20 63 6c 61 | ">5</span>];.....slice[<span.cla |
| 28a60 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 5d 20 3d 20 3c 73 70 61 | ss="tok-number">2</span>].=.<spa |
| 28a80 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 3b 0a 20 | n.class="tok-number">3</span>;.. |
| 28aa0 | 20 20 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 | ...expect(slice[<span.class="tok |
| 28ac0 | 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 5d 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | -number">2</span>].==.<span.clas |
| 28ae0 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 | s="tok-number">3</span>);.....<s |
| 28b00 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 65 20 73 | pan.class="tok-comment">//.The.s |
| 28b20 | 6c 69 63 65 20 69 73 20 6d 75 74 61 62 6c 65 20 62 65 63 61 75 73 65 20 77 65 20 73 6c 69 63 65 | lice.is.mutable.because.we.slice |
| 28b40 | 64 20 61 20 6d 75 74 61 62 6c 65 20 70 6f 69 6e 74 65 72 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 | d.a.mutable.pointer.</span>..... |
| 28b60 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 46 75 72 | <span.class="tok-comment">//.Fur |
| 28b80 | 74 68 65 72 6d 6f 72 65 2c 20 69 74 20 69 73 20 61 63 74 75 61 6c 6c 79 20 61 20 70 6f 69 6e 74 | thermore,.it.is.actually.a.point |
| 28ba0 | 65 72 20 74 6f 20 61 6e 20 61 72 72 61 79 2c 20 73 69 6e 63 65 20 74 68 65 20 73 74 61 72 74 3c | er.to.an.array,.since.the.start< |
| 28bc0 | 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 |
| 28be0 | 65 6e 74 22 3e 2f 2f 20 61 6e 64 20 65 6e 64 20 69 6e 64 65 78 65 73 20 77 65 72 65 20 62 6f 74 | ent">//.and.end.indexes.were.bot |
| 28c00 | 68 20 63 6f 6d 70 74 69 6d 65 2d 6b 6e 6f 77 6e 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 65 78 70 | h.comptime-known.</span>.....exp |
| 28c20 | 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 |
| 28c40 | 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 73 6c 69 63 65 29 20 3d 3d 20 2a 5b 3c 73 70 61 6e 20 63 | ypeOf</span>(slice).==.*[<span.c |
| 28c60 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 5d 3c 73 70 61 6e | lass="tok-number">5</span>]<span |
| 28c80 | 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 0a 20 | .class="tok-type">u8</span>);... |
| 28ca0 | 20 20 20 3c 73 70 61 6e 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">//. |
| 28cc0 | 59 6f 75 20 63 61 6e 20 61 6c 73 6f 20 73 6c 69 63 65 20 61 20 73 6c 69 63 65 3a 3c 2f 73 70 61 | You.can.also.slice.a.slice:</spa |
| 28ce0 | 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 |
| 28d00 | 74 3c 2f 73 70 61 6e 3e 20 73 6c 69 63 65 32 20 3d 20 73 6c 69 63 65 5b 3c 73 70 61 6e 20 63 6c | t</span>.slice2.=.slice[<span.cl |
| 28d20 | 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 3c 73 70 61 6e | ass="tok-number">2</span>..<span |
| 28d40 | 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 3b 0a 20 | .class="tok-number">3</span>];.. |
| 28d60 | 20 20 20 65 78 70 65 63 74 28 73 6c 69 63 65 32 2e 6c 65 6e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c | ...expect(slice2.len.==.<span.cl |
| 28d80 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 | ass="tok-number">1</span>);..... |
| 28da0 | 65 78 70 65 63 74 28 73 6c 69 63 65 32 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | expect(slice2[<span.class="tok-n |
| 28dc0 | 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 5d 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | umber">0</span>].==.<span.class= |
| 28de0 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e | "tok-number">3</span>);.}</code> |
| 28e00 | 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 | </pre><pre><code.class="shell">$ |
| 28e20 | 20 7a 69 67 20 74 65 73 74 20 73 6c 69 63 65 73 2e 7a 69 67 0a 31 2f 32 20 74 65 73 74 20 26 71 | .zig.test.slices.zig.1/2.test.&q |
| 28e40 | 75 6f 74 3b 75 73 69 6e 67 20 73 6c 69 63 65 73 20 66 6f 72 20 73 74 72 69 6e 67 73 26 71 75 6f | uot;using.slices.for.strings&quo |
| 28e60 | 74 3b 2e 2e 2e 20 4f 4b 0a 32 2f 32 20 74 65 73 74 20 26 71 75 6f 74 3b 73 6c 69 63 65 20 70 6f | t;....OK.2/2.test."slice.po |
| 28e80 | 69 6e 74 65 72 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 41 6c 6c 20 32 20 74 65 73 74 73 20 70 61 | inter"....OK.All.2.tests.pa |
| 28ea0 | 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 53 65 | ssed..</code></pre>........<p>Se |
| 28ec0 | 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 50 6f | e.also:</p><ul>.<li><a.href="#Po |
| 28ee0 | 69 6e 74 65 72 73 22 3e 50 6f 69 6e 74 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 | inters">Pointers</a></li>.<li><a |
| 28f00 | 20 68 72 65 66 3d 22 23 66 6f 72 22 3e 66 6f 72 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 | .href="#for">for</a></li>.<li><a |
| 28f20 | 20 68 72 65 66 3d 22 23 41 72 72 61 79 73 22 3e 41 72 72 61 79 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a | .href="#Arrays">Arrays</a></li>. |
| 28f40 | 3c 2f 75 6c 3e 0a 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 53 65 6e 74 69 6e 65 6c 2d 54 | </ul>.........<h2.id="Sentinel-T |
| 28f60 | 65 72 6d 69 6e 61 74 65 64 2d 53 6c 69 63 65 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d | erminated-Slices"><a.href="#toc- |
| 28f80 | 53 65 6e 74 69 6e 65 6c 2d 54 65 72 6d 69 6e 61 74 65 64 2d 53 6c 69 63 65 73 22 3e 53 65 6e 74 | Sentinel-Terminated-Slices">Sent |
| 28fa0 | 69 6e 65 6c 2d 54 65 72 6d 69 6e 61 74 65 64 20 53 6c 69 63 65 73 3c 2f 61 3e 20 3c 61 20 63 6c | inel-Terminated.Slices</a>.<a.cl |
| 28fc0 | 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 53 65 6e 74 69 6e 65 6c 2d 54 65 72 6d 69 6e | ass="hdr".href="#Sentinel-Termin |
| 28fe0 | 61 74 65 64 2d 53 6c 69 63 65 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 | ated-Slices">..</a></h2>........ |
| 29000 | 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 20 73 79 6e 74 61 78 20 3c 63 6f 64 65 20 63 6c 61 73 73 | <p>.......The.syntax.<code.class |
| 29020 | 3d 22 7a 69 67 22 3e 5b 3a 78 5d 54 3c 2f 63 6f 64 65 3e 20 69 73 20 61 20 73 6c 69 63 65 20 77 | ="zig">[:x]T</code>.is.a.slice.w |
| 29040 | 68 69 63 68 20 68 61 73 20 61 20 72 75 6e 74 69 6d 65 20 6b 6e 6f 77 6e 20 6c 65 6e 67 74 68 0a | hich.has.a.runtime.known.length. |
| 29060 | 20 20 20 20 20 20 61 6e 64 20 61 6c 73 6f 20 67 75 61 72 61 6e 74 65 65 73 20 61 20 73 65 6e 74 | ......and.also.guarantees.a.sent |
| 29080 | 69 6e 65 6c 20 76 61 6c 75 65 20 61 74 20 74 68 65 20 65 6c 65 6d 65 6e 74 20 69 6e 64 65 78 65 | inel.value.at.the.element.indexe |
| 290a0 | 64 20 62 79 20 74 68 65 20 6c 65 6e 67 74 68 2e 20 54 68 65 20 74 79 70 65 20 64 6f 65 73 20 6e | d.by.the.length..The.type.does.n |
| 290c0 | 6f 74 0a 20 20 20 20 20 20 67 75 61 72 61 6e 74 65 65 20 74 68 61 74 20 74 68 65 72 65 20 61 72 | ot.......guarantee.that.there.ar |
| 290e0 | 65 20 6e 6f 20 73 65 6e 74 69 6e 65 6c 20 65 6c 65 6d 65 6e 74 73 20 62 65 66 6f 72 65 20 74 68 | e.no.sentinel.elements.before.th |
| 29100 | 61 74 2e 20 53 65 6e 74 69 6e 65 6c 2d 74 65 72 6d 69 6e 61 74 65 64 20 73 6c 69 63 65 73 20 61 | at..Sentinel-terminated.slices.a |
| 29120 | 6c 6c 6f 77 20 65 6c 65 6d 65 6e 74 0a 20 20 20 20 20 20 61 63 63 65 73 73 20 74 6f 20 74 68 65 | llow.element.......access.to.the |
| 29140 | 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 6c 65 6e 3c 2f 63 6f 64 65 3e 20 69 6e | .<code.class="zig">len</code>.in |
| 29160 | 64 65 78 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 | dex........</p>.......<p.class=" |
| 29180 | 66 69 6c 65 22 3e 6e 75 6c 6c 5f 74 65 72 6d 69 6e 61 74 65 64 5f 73 6c 69 63 65 2e 7a 69 67 3c | file">null_terminated_slice.zig< |
| 291a0 | 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 | /p><pre><code.class="zig"><span. |
| 291c0 | 63 6c 61 73 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. |
| 291e0 | 3d 20 3c 73 70 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 |
| 29200 | 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" |
| 29220 | 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. |
| 29240 | 63 6c 61 73 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 |
| 29260 | 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. |
| 29280 | 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 |
| 292a0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 6e 75 6c 6c 20 74 65 72 6d | .class="tok-str">"null.term |
| 292c0 | 69 6e 61 74 65 64 20 73 6c 69 63 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 | inated.slice"</span>.{..... |
| 292e0 | 3c 73 70 61 6e 20 63 6c 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 |
| 29300 | 3e 20 73 6c 69 63 65 3a 20 5b 3a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | >.slice:.[:<span.class="tok-numb |
| 29320 | 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | er">0</span>]<span.class="tok-kw |
| 29340 | 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- |
| 29360 | 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 |
| 29380 | 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 68 65 6c 6c 6f 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e | ok-str">"hello"</span> |
| 293a0 | 3b 0a 0a 20 20 20 20 65 78 70 65 63 74 28 73 6c 69 63 65 2e 6c 65 6e 20 3d 3d 20 3c 73 70 61 6e | ;......expect(slice.len.==.<span |
| 293c0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 29 3b 0a 20 | .class="tok-number">5</span>);.. |
| 293e0 | 20 20 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 | ...expect(slice[<span.class="tok |
| 29400 | 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 5d 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | -number">5</span>].==.<span.clas |
| 29420 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 | s="tok-number">0</span>);.}</cod |
| 29440 | 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 | e></pre><pre><code.class="shell" |
| 29460 | 3e 24 20 7a 69 67 20 74 65 73 74 20 6e 75 6c 6c 5f 74 65 72 6d 69 6e 61 74 65 64 5f 73 6c 69 63 | >$.zig.test.null_terminated_slic |
| 29480 | 65 2e 7a 69 67 0a 31 2f 31 20 74 65 73 74 20 26 71 75 6f 74 3b 6e 75 6c 6c 20 74 65 72 6d 69 6e | e.zig.1/1.test."null.termin |
| 294a0 | 61 74 65 64 20 73 6c 69 63 65 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 | ated.slice"....OK.All.1.tes |
| 294c0 | 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 | ts.passed..</code></pre>........ |
| 294e0 | 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 |
| 29500 | 3d 22 23 53 65 6e 74 69 6e 65 6c 2d 54 65 72 6d 69 6e 61 74 65 64 2d 50 6f 69 6e 74 65 72 73 22 | ="#Sentinel-Terminated-Pointers" |
| 29520 | 3e 53 65 6e 74 69 6e 65 6c 2d 54 65 72 6d 69 6e 61 74 65 64 20 50 6f 69 6e 74 65 72 73 3c 2f 61 | >Sentinel-Terminated.Pointers</a |
| 29540 | 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 6c 2d 54 65 | ></li>.<li><a.href="#Sentinel-Te |
| 29560 | 72 6d 69 6e 61 74 65 64 2d 41 72 72 61 79 73 22 3e 53 65 6e 74 69 6e 65 6c 2d 54 65 72 6d 69 6e | rminated-Arrays">Sentinel-Termin |
| 29580 | 61 74 65 64 20 41 72 72 61 79 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 | ated.Arrays</a></li>.</ul>...... |
| 295a0 | 20 20 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 31 20 69 64 3d 22 73 74 72 75 63 74 22 | .................<h1.id="struct" |
| 295c0 | 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 73 74 72 75 63 74 22 3e 73 74 72 75 63 74 3c 2f 61 | ><a.href="#toc-struct">struct</a |
| 295e0 | 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 74 72 75 63 74 22 3e | >.<a.class="hdr".href="#struct"> |
| 29600 | c2 a7 3c 2f 61 3e 3c 2f 68 31 3e 0a 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c | ..</a></h1>........<p.class="fil |
| 29620 | 65 22 3e 73 74 72 75 63 74 73 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 | e">structs.zig</p><pre><code.cla |
| 29640 | 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e | ss="zig"><span.class="tok-commen |
| 29660 | 74 22 3e 2f 2f 20 44 65 63 6c 61 72 65 20 61 20 73 74 72 75 63 74 2e 3c 2f 73 70 61 6e 3e 0a 3c | t">//.Declare.a.struct.</span>.< |
| 29680 | 73 70 61 6e 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 | span.class="tok-comment">//.Zig. |
| 296a0 | 67 69 76 65 73 20 6e 6f 20 67 75 61 72 61 6e 74 65 65 73 20 61 62 6f 75 74 20 74 68 65 20 6f 72 | gives.no.guarantees.about.the.or |
| 296c0 | 64 65 72 20 6f 66 20 66 69 65 6c 64 73 20 61 6e 64 20 74 68 65 20 73 69 7a 65 20 6f 66 3c 2f 73 | der.of.fields.and.the.size.of</s |
| 296e0 | 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">/ |
| 29700 | 2f 20 74 68 65 20 73 74 72 75 63 74 20 62 75 74 20 74 68 65 20 66 69 65 6c 64 73 20 61 72 65 20 | /.the.struct.but.the.fields.are. |
| 29720 | 67 75 61 72 61 6e 74 65 65 64 20 74 6f 20 62 65 20 41 42 49 2d 61 6c 69 67 6e 65 64 2e 3c 2f 73 | guaranteed.to.be.ABI-aligned.</s |
| 29740 | 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< |
| 29760 | 2f 73 70 61 6e 3e 20 50 6f 69 6e 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | /span>.Point.=.<span.class="tok- |
| 29780 | 6b 77 22 3e 73 74 72 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 78 3a 20 3c 73 70 61 6e | kw">struct</span>.{.....x:.<span |
| 297a0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 2c 0a 20 20 | .class="tok-type">f32</span>,... |
| 297c0 | 20 20 79 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 33 32 3c | ..y:.<span.class="tok-type">f32< |
| 297e0 | 2f 73 70 61 6e 3e 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d | /span>,.};..<span.class="tok-com |
| 29800 | 6d 65 6e 74 22 3e 2f 2f 20 4d 61 79 62 65 20 77 65 20 77 61 6e 74 20 74 6f 20 70 61 73 73 20 69 | ment">//.Maybe.we.want.to.pass.i |
| 29820 | 74 20 74 6f 20 4f 70 65 6e 47 4c 20 73 6f 20 77 65 20 77 61 6e 74 20 74 6f 20 62 65 20 70 61 72 | t.to.OpenGL.so.we.want.to.be.par |
| 29840 | 74 69 63 75 6c 61 72 20 61 62 6f 75 74 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | ticular.about</span>.<span.class |
| 29860 | 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 68 6f 77 20 74 68 65 20 62 79 74 65 73 20 | ="tok-comment">//.how.the.bytes. |
| 29880 | 61 72 65 20 61 72 72 61 6e 67 65 64 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | are.arranged.</span>.<span.class |
| 298a0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 50 6f 69 6e 74 32 20 3d 20 | ="tok-kw">const</span>.Point2.=. |
| 298c0 | 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 |
| 298e0 | 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 2f | n>.<span.class="tok-kw">struct</ |
| 29900 | 73 70 61 6e 3e 20 7b 0a 20 20 20 20 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | span>.{.....x:.<span.class="tok- |
| 29920 | 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 79 3a 20 3c 73 70 61 6e 20 63 | type">f32</span>,.....y:.<span.c |
| 29940 | 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 2c 0a 7d 3b 0a 0a | lass="tok-type">f32</span>,.};.. |
| 29960 | 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 44 65 | .<span.class="tok-comment">//.De |
| 29980 | 63 6c 61 72 65 20 61 6e 20 69 6e 73 74 61 6e 63 65 20 6f 66 20 61 20 73 74 72 75 63 74 2e 3c 2f | clare.an.instance.of.a.struct.</ |
| 299a0 | 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 |
| 299c0 | 3c 2f 73 70 61 6e 3e 20 70 20 3d 20 50 6f 69 6e 74 20 7b 0a 20 20 20 20 2e 78 20 3d 20 3c 73 70 | </span>.p.=.Point.{......x.=.<sp |
| 299e0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 2e 31 32 3c 2f 73 70 61 6e | an.class="tok-number">0.12</span |
| 29a00 | 3e 2c 0a 20 20 20 20 2e 79 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | >,......y.=.<span.class="tok-num |
| 29a20 | 62 65 72 22 3e 30 2e 33 34 3c 2f 73 70 61 6e 3e 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 | ber">0.34</span>,.};..<span.clas |
| 29a40 | 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 4d 61 79 62 65 20 77 65 27 72 65 20 6e | s="tok-comment">//.Maybe.we're.n |
| 29a60 | 6f 74 20 72 65 61 64 79 20 74 6f 20 66 69 6c 6c 20 6f 75 74 20 73 6f 6d 65 20 6f 66 20 74 68 65 | ot.ready.to.fill.out.some.of.the |
| 29a80 | 20 66 69 65 6c 64 73 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | .fields.</span>.<span.class="tok |
| 29aa0 | 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 70 32 20 3d 20 50 6f 69 6e 74 20 7b 0a 20 20 20 | -kw">var</span>.p2.=.Point.{.... |
| 29ac0 | 20 2e 78 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 | ..x.=.<span.class="tok-number">0 |
| 29ae0 | 2e 31 32 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 2e 79 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | .12</span>,......y.=.<span.class |
| 29b00 | 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 75 6e 64 65 66 69 6e 65 64 3c 2f 73 70 61 6e 3e 2c 0a 7d 3b | ="tok-null">undefined</span>,.}; |
| 29b20 | 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 53 | ..<span.class="tok-comment">//.S |
| 29b40 | 74 72 75 63 74 73 20 63 61 6e 20 68 61 76 65 20 6d 65 74 68 6f 64 73 3c 2f 73 70 61 6e 3e 0a 3c | tructs.can.have.methods</span>.< |
| 29b60 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 53 74 72 75 | span.class="tok-comment">//.Stru |
| 29b80 | 63 74 20 6d 65 74 68 6f 64 73 20 61 72 65 20 6e 6f 74 20 73 70 65 63 69 61 6c 2c 20 74 68 65 79 | ct.methods.are.not.special,.they |
| 29ba0 | 20 61 72 65 20 6f 6e 6c 79 20 6e 61 6d 65 73 70 61 63 65 64 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 | .are.only.namespaced</span>.<spa |
| 29bc0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 66 75 6e 63 74 69 6f | n.class="tok-comment">//.functio |
| 29be0 | 6e 73 20 74 68 61 74 20 79 6f 75 20 63 61 6e 20 63 61 6c 6c 20 77 69 74 68 20 64 6f 74 20 73 79 | ns.that.you.can.call.with.dot.sy |
| 29c00 | 6e 74 61 78 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | ntax.</span>.<span.class="tok-kw |
| 29c20 | 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 56 65 63 33 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | ">const</span>.Vec3.=.<span.clas |
| 29c40 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 74 72 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 78 | s="tok-kw">struct</span>.{.....x |
| 29c60 | 3a 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 |
| 29c80 | 61 6e 3e 2c 0a 20 20 20 20 79 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | an>,.....y:.<span.class="tok-typ |
| 29ca0 | 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 7a 3a 20 3c 73 70 61 6e 20 63 6c 61 73 | e">f32</span>,.....z:.<span.clas |
| 29cc0 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 2c 0a 0a 20 20 20 20 3c 73 | s="tok-type">f32</span>,......<s |
| 29ce0 | 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 |
| 29d00 | 70 61 6e 20 63 6c 61 73 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 |
| 29d20 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 69 6e 69 74 3c 2f 73 70 61 6e 3e 28 78 3a | an.class="tok-fn">init</span>(x: |
| 29d40 | 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 |
| 29d60 | 6e 3e 2c 20 79 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 33 | n>,.y:.<span.class="tok-type">f3 |
| 29d80 | 32 3c 2f 73 70 61 6e 3e 2c 20 7a 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | 2</span>,.z:.<span.class="tok-ty |
| 29da0 | 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 29 20 56 65 63 33 20 7b 0a 20 20 20 20 20 20 20 20 3c | pe">f32</span>).Vec3.{.........< |
| 29dc0 | 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 |
| 29de0 | 3e 20 56 65 63 33 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 2e 78 20 3d 20 78 2c 0a 20 20 20 | >.Vec3.{..............x.=.x,.... |
| 29e00 | 20 20 20 20 20 20 20 20 20 2e 79 20 3d 20 79 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 2e 7a 20 | ..........y.=.y,..............z. |
| 29e20 | 3d 20 7a 2c 0a 20 20 20 20 20 20 20 20 7d 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 20 3c 73 70 61 6e | =.z,.........};.....}......<span |
| 29e40 | 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 |
| 29e60 | 20 63 6c 61 73 73 3d 22 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. |
| 29e80 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 64 6f 74 3c 2f 73 70 61 6e 3e 28 73 65 6c 66 3a 20 | class="tok-fn">dot</span>(self:. |
| 29ea0 | 56 65 63 33 2c 20 6f 74 68 65 72 3a 20 56 65 63 33 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | Vec3,.other:.Vec3).<span.class=" |
| 29ec0 | 74 6f 6b 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 3c | tok-type">f32</span>.{.........< |
| 29ee0 | 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 |
| 29f00 | 3e 20 73 65 6c 66 2e 78 20 2a 20 6f 74 68 65 72 2e 78 20 2b 20 73 65 6c 66 2e 79 20 2a 20 6f 74 | >.self.x.*.other.x.+.self.y.*.ot |
| 29f20 | 68 65 72 2e 79 20 2b 20 73 65 6c 66 2e 7a 20 2a 20 6f 74 68 65 72 2e 7a 3b 0a 20 20 20 20 7d 0a | her.y.+.self.z.*.other.z;.....}. |
| 29f40 | 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f | };..<span.class="tok-kw">const</ |
| 29f60 | 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | span>.expect.=.<span.class="tok- |
| 29f80 | 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 |
| 29fa0 | 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 |
| 29fc0 | 70 61 6e 3e 29 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 | pan>).testing.expect;.<span.clas |
| 29fe0 | 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 |
| 2a000 | 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 64 6f 74 20 70 72 6f 64 75 63 74 26 71 | ss="tok-str">"dot.product&q |
| 2a020 | 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 |
| 2a040 | 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 76 31 20 3d 20 56 65 63 33 2e 69 6e | ok-kw">const</span>.v1.=.Vec3.in |
| 2a060 | 69 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 2e 30 3c | it(<span.class="tok-number">1.0< |
| 2a080 | 2f 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" |
| 2a0a0 | 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 75 | >0.0</span>,.<span.class="tok-nu |
| 2a0c0 | 6d 62 65 72 22 3e 30 2e 30 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | mber">0.0</span>);.....<span.cla |
| 2a0e0 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 76 32 20 3d 20 56 65 | ss="tok-kw">const</span>.v2.=.Ve |
| 2a100 | 63 33 2e 69 6e 69 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 | c3.init(<span.class="tok-number" |
| 2a120 | 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 75 | >0.0</span>,.<span.class="tok-nu |
| 2a140 | 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 74 | mber">1.0</span>,.<span.class="t |
| 2a160 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 2e 30 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 65 78 70 65 | ok-number">0.0</span>);.....expe |
| 2a180 | 63 74 28 76 31 2e 64 6f 74 28 76 32 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ct(v1.dot(v2).==.<span.class="to |
| 2a1a0 | 6b 2d 6e 75 6d 62 65 72 22 3e 30 2e 30 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 20 20 20 20 3c 73 70 61 | k-number">0.0</span>);......<spa |
| 2a1c0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 4f 74 68 65 72 20 74 | n.class="tok-comment">//.Other.t |
| 2a1e0 | 68 61 6e 20 62 65 69 6e 67 20 61 76 61 69 6c 61 62 6c 65 20 74 6f 20 63 61 6c 6c 20 77 69 74 68 | han.being.available.to.call.with |
| 2a200 | 20 64 6f 74 20 73 79 6e 74 61 78 2c 20 73 74 72 75 63 74 20 6d 65 74 68 6f 64 73 20 61 72 65 3c | .dot.syntax,.struct.methods.are< |
| 2a220 | 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 |
| 2a240 | 65 6e 74 22 3e 2f 2f 20 6e 6f 74 20 73 70 65 63 69 61 6c 2e 20 59 6f 75 20 63 61 6e 20 72 65 66 | ent">//.not.special..You.can.ref |
| 2a260 | 65 72 65 6e 63 65 20 74 68 65 6d 20 61 73 20 61 6e 79 20 6f 74 68 65 72 20 64 65 63 6c 61 72 61 | erence.them.as.any.other.declara |
| 2a280 | 74 69 6f 6e 20 69 6e 73 69 64 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | tion.inside</span>.....<span.cla |
| 2a2a0 | 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 74 68 65 20 73 74 72 75 63 74 3a 3c | ss="tok-comment">//.the.struct:< |
| 2a2c0 | 2f 73 70 61 6e 3e 0a 20 20 20 20 65 78 70 65 63 74 28 56 65 63 33 2e 64 6f 74 28 76 31 2c 20 76 | /span>.....expect(Vec3.dot(v1,.v |
| 2a2e0 | 32 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 | 2).==.<span.class="tok-number">0 |
| 2a300 | 2e 30 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | .0</span>);.}..<span.class="tok- |
| 2a320 | 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 53 74 72 75 63 74 73 20 63 61 6e 20 68 61 76 65 20 67 6c 6f | comment">//.Structs.can.have.glo |
| 2a340 | 62 61 6c 20 64 65 63 6c 61 72 61 74 69 6f 6e 73 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 | bal.declarations.</span>.<span.c |
| 2a360 | 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 53 74 72 75 63 74 73 20 63 61 | lass="tok-comment">//.Structs.ca |
| 2a380 | 6e 20 68 61 76 65 20 30 20 66 69 65 6c 64 73 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c | n.have.0.fields.</span>.<span.cl |
| 2a3a0 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 45 6d 70 74 79 20 | ass="tok-kw">const</span>.Empty. |
| 2a3c0 | 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 74 72 75 63 74 3c 2f 73 | =.<span.class="tok-kw">struct</s |
| 2a3e0 | 70 61 6e 3e 20 7b 0a 20 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"> |
| 2a400 | 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"> |
| 2a420 | 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 50 49 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | const</span>.PI.=.<span.class="t |
| 2a440 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 2e 31 34 3c 2f 73 70 61 6e 3e 3b 0a 7d 3b 0a 3c 73 70 61 6e | ok-number">3.14</span>;.};.<span |
| 2a460 | 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 |
| 2a480 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 72 75 63 74 20 6e | n.class="tok-str">"struct.n |
| 2a4a0 | 61 6d 65 73 70 61 63 65 64 20 76 61 72 69 61 62 6c 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 | amespaced.variable"</span>. |
| 2a4c0 | 7b 0a 20 20 20 20 65 78 70 65 63 74 28 45 6d 70 74 79 2e 50 49 20 3d 3d 20 3c 73 70 61 6e 20 63 | {.....expect(Empty.PI.==.<span.c |
| 2a4e0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 2e 31 34 3c 2f 73 70 61 6e 3e 29 3b 0a | lass="tok-number">3.14</span>);. |
| 2a500 | 20 20 20 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 | ....expect(<span.class="tok-buil |
| 2a520 | 74 69 6e 22 3e 40 73 69 7a 65 4f 66 3c 2f 73 70 61 6e 3e 28 45 6d 70 74 79 29 20 3d 3d 20 3c 73 | tin">@sizeOf</span>(Empty).==.<s |
| 2a540 | 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>) |
| 2a560 | 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" |
| 2a580 | 3e 2f 2f 20 79 6f 75 20 63 61 6e 20 73 74 69 6c 6c 20 69 6e 73 74 61 6e 74 69 61 74 65 20 61 6e | >//.you.can.still.instantiate.an |
| 2a5a0 | 20 65 6d 70 74 79 20 73 74 72 75 63 74 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 | .empty.struct</span>.....<span.c |
| 2a5c0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 64 6f 65 73 5f | lass="tok-kw">const</span>.does_ |
| 2a5e0 | 6e 6f 74 68 69 6e 67 20 3d 20 45 6d 70 74 79 20 7b 7d 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 | nothing.=.Empty.{};.}..<span.cla |
| 2a600 | 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 73 74 72 75 63 74 20 66 69 65 6c 64 | ss="tok-comment">//.struct.field |
| 2a620 | 20 6f 72 64 65 72 20 69 73 20 64 65 74 65 72 6d 69 6e 65 64 20 62 79 20 74 68 65 20 63 6f 6d 70 | .order.is.determined.by.the.comp |
| 2a640 | 69 6c 65 72 20 66 6f 72 20 6f 70 74 69 6d 61 6c 20 70 65 72 66 6f 72 6d 61 6e 63 65 2e 3c 2f 73 | iler.for.optimal.performance.</s |
| 2a660 | 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">/ |
| 2a680 | 2f 20 68 6f 77 65 76 65 72 2c 20 79 6f 75 20 63 61 6e 20 73 74 69 6c 6c 20 63 61 6c 63 75 6c 61 | /.however,.you.can.still.calcula |
| 2a6a0 | 74 65 20 61 20 73 74 72 75 63 74 20 62 61 73 65 20 70 6f 69 6e 74 65 72 20 67 69 76 65 6e 20 61 | te.a.struct.base.pointer.given.a |
| 2a6c0 | 20 66 69 65 6c 64 20 70 6f 69 6e 74 65 72 3a 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 | .field.pointer:</span>.<span.cla |
| 2a6e0 | 73 73 3d 22 74 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 |
| 2a700 | 73 3d 22 74 6f 6b 2d 66 6e 22 3e 73 65 74 59 42 61 73 65 64 4f 6e 58 3c 2f 73 70 61 6e 3e 28 78 | s="tok-fn">setYBasedOnX</span>(x |
| 2a720 | 3a 20 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 | :.*<span.class="tok-type">f32</s |
| 2a740 | 70 61 6e 3e 2c 20 79 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | pan>,.y:.<span.class="tok-type"> |
| 2a760 | 66 33 32 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | f32</span>).<span.class="tok-typ |
| 2a780 | 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 |
| 2a7a0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 70 6f 69 6e 74 20 3d 20 3c | ="tok-kw">const</span>.point.=.< |
| 2a7c0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 66 69 65 6c 64 50 | span.class="tok-builtin">@fieldP |
| 2a7e0 | 61 72 65 6e 74 50 74 72 3c 2f 73 70 61 6e 3e 28 50 6f 69 6e 74 2c 20 3c 73 70 61 6e 20 63 6c 61 | arentPtr</span>(Point,.<span.cla |
| 2a800 | 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 78 26 71 75 6f 74 3b 3c 2f 73 70 61 6e | ss="tok-str">"x"</span |
| 2a820 | 3e 2c 20 78 29 3b 0a 20 20 20 20 70 6f 69 6e 74 2e 79 20 3d 20 79 3b 0a 7d 0a 3c 73 70 61 6e 20 | >,.x);.....point.y.=.y;.}.<span. |
| 2a840 | 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 |
| 2a860 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 66 69 65 6c 64 20 70 61 72 | .class="tok-str">"field.par |
| 2a880 | 65 6e 74 20 70 6f 69 6e 74 65 72 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c | ent.pointer"</span>.{.....< |
| 2a8a0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 70 | span.class="tok-kw">var</span>.p |
| 2a8c0 | 6f 69 6e 74 20 3d 20 50 6f 69 6e 74 20 7b 0a 20 20 20 20 20 20 20 20 2e 78 20 3d 20 3c 73 70 61 | oint.=.Point.{..........x.=.<spa |
| 2a8e0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 2e 31 32 33 34 3c 2f 73 70 61 | n.class="tok-number">0.1234</spa |
| 2a900 | 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 |
| 2a920 | 6b 2d 6e 75 6d 62 65 72 22 3e 30 2e 35 36 37 38 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 7d 3b 0a | k-number">0.5678</span>,.....};. |
| 2a940 | 20 20 20 20 73 65 74 59 42 61 73 65 64 4f 6e 58 28 26 61 6d 70 3b 70 6f 69 6e 74 2e 78 2c 20 3c | ....setYBasedOnX(&point.x,.< |
| 2a960 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 2e 39 3c 2f 73 70 61 | span.class="tok-number">0.9</spa |
| 2a980 | 6e 3e 29 3b 0a 20 20 20 20 65 78 70 65 63 74 28 70 6f 69 6e 74 2e 79 20 3d 3d 20 3c 73 70 61 6e | n>);.....expect(point.y.==.<span |
| 2a9a0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 2e 39 3c 2f 73 70 61 6e 3e 29 3b | .class="tok-number">0.9</span>); |
| 2a9c0 | 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f | .}..<span.class="tok-comment">// |
| 2a9e0 | 20 59 6f 75 20 63 61 6e 20 72 65 74 75 72 6e 20 61 20 73 74 72 75 63 74 20 66 72 6f 6d 20 61 20 | .You.can.return.a.struct.from.a. |
| 2aa00 | 66 75 6e 63 74 69 6f 6e 2e 20 54 68 69 73 20 69 73 20 68 6f 77 20 77 65 20 64 6f 20 67 65 6e 65 | function..This.is.how.we.do.gene |
| 2aa20 | 72 69 63 73 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d | rics</span>.<span.class="tok-com |
| 2aa40 | 6d 65 6e 74 22 3e 2f 2f 20 69 6e 20 5a 69 67 3a 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c | ment">//.in.Zig:</span>.<span.cl |
| 2aa60 | 61 73 73 3d 22 74 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 |
| 2aa80 | 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 4c 69 6e 6b 65 64 4c 69 73 74 3c 2f 73 70 61 6e 3e 28 3c 73 | ss="tok-fn">LinkedList</span>(<s |
| 2aaa0 | 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 |
| 2aac0 | 6e 3e 20 54 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 | n>.T:.<span.class="tok-type">typ |
| 2aae0 | 65 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 | e</span>).<span.class="tok-type" |
| 2ab00 | 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | >type</span>.{.....<span.class=" |
| 2ab20 | 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 | tok-kw">return</span>.<span.clas |
| 2ab40 | 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>.{...... |
| 2ab60 | 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 |
| 2ab80 | 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 | n>.<span.class="tok-kw">const</s |
| 2aba0 | 70 61 6e 3e 20 4e 6f 64 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | pan>.Node.=.<span.class="tok-kw" |
| 2abc0 | 3e 73 74 72 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 70 72 65 | >struct</span>.{.............pre |
| 2abe0 | 76 3a 20 3f 2a 4e 6f 64 65 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 6e 65 78 74 3a 20 3f 2a 4e | v:.?*Node,.............next:.?*N |
| 2ac00 | 6f 64 65 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 64 61 74 61 3a 20 54 2c 0a 20 20 20 20 20 20 | ode,.............data:.T,....... |
| 2ac20 | 20 20 7d 3b 0a 0a 20 20 20 20 20 20 20 20 66 69 72 73 74 3a 20 3f 2a 4e 6f 64 65 2c 0a 20 20 20 | ..};..........first:.?*Node,.... |
| 2ac40 | 20 20 20 20 20 6c 61 73 74 3a 20 20 3f 2a 4e 6f 64 65 2c 0a 20 20 20 20 20 20 20 20 6c 65 6e 3a | .....last:..?*Node,.........len: |
| 2ac60 | 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c | ...<span.class="tok-type">usize< |
| 2ac80 | 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 7d 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | /span>,.....};.}..<span.class="t |
| 2aca0 | 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=" |
| 2acc0 | 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 6c 69 6e 6b 65 64 20 6c 69 73 74 26 71 75 6f 74 3b | tok-str">"linked.list" |
| 2ace0 | 3c 2f 73 70 61 6e 3e 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 |
| 2ad00 | 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 46 75 6e 63 74 69 6f 6e 73 20 63 61 6c 6c 65 64 20 61 74 20 63 | omment">//.Functions.called.at.c |
| 2ad20 | 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 61 72 65 20 6d 65 6d 6f 69 7a 65 64 2e 20 54 68 69 73 20 6d | ompile-time.are.memoized..This.m |
| 2ad40 | 65 61 6e 73 20 79 6f 75 20 63 61 6e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | eans.you.can</span>.....<span.cl |
| 2ad60 | 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 64 6f 20 74 68 69 73 3a 3c 2f 73 | ass="tok-comment">//.do.this:</s |
| 2ad80 | 70 61 6e 3e 0a 20 20 20 20 65 78 70 65 63 74 28 4c 69 6e 6b 65 64 4c 69 73 74 28 3c 73 70 61 6e | pan>.....expect(LinkedList(<span |
| 2ada0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 20 3d 3d | .class="tok-type">i32</span>).== |
| 2adc0 | 20 4c 69 6e 6b 65 64 4c 69 73 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | .LinkedList(<span.class="tok-typ |
| 2ade0 | 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | e">i32</span>));......<span.clas |
| 2ae00 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 6c 69 73 74 20 3d 20 4c 69 6e | s="tok-kw">var</span>.list.=.Lin |
| 2ae20 | 6b 65 64 4c 69 73 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 | kedList(<span.class="tok-type">i |
| 2ae40 | 33 32 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 20 20 20 20 2e 66 69 72 73 74 20 3d 20 3c 73 | 32</span>).{..........first.=.<s |
| 2ae60 | 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> |
| 2ae80 | 2c 0a 20 20 20 20 20 20 20 20 2e 6c 61 73 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ,..........last.=.<span.class="t |
| 2aea0 | 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 2e 6c | ok-null">null</span>,..........l |
| 2aec0 | 65 6e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c | en.=.<span.class="tok-number">0< |
| 2aee0 | 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 7d 3b 0a 20 20 20 20 65 78 70 65 63 74 28 6c 69 73 74 2e 6c | /span>,.....};.....expect(list.l |
| 2af00 | 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 |
| 2af20 | 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- |
| 2af40 | 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 53 69 6e 63 65 20 74 79 70 65 73 20 61 72 65 20 66 69 72 73 | comment">//.Since.types.are.firs |
| 2af60 | 74 20 63 6c 61 73 73 20 76 61 6c 75 65 73 20 79 6f 75 20 63 61 6e 20 69 6e 73 74 61 6e 74 69 61 | t.class.values.you.can.instantia |
| 2af80 | 74 65 20 74 68 65 20 74 79 70 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | te.the.type</span>.....<span.cla |
| 2afa0 | 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 62 79 20 61 73 73 69 67 6e 69 6e 67 | ss="tok-comment">//.by.assigning |
| 2afc0 | 20 69 74 20 74 6f 20 61 20 76 61 72 69 61 62 6c 65 3a 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 | .it.to.a.variable:</span>.....<s |
| 2afe0 | 70 61 6e 20 63 6c 61 73 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>. |
| 2b000 | 4c 69 73 74 4f 66 49 6e 74 73 20 3d 20 4c 69 6e 6b 65 64 4c 69 73 74 28 3c 73 70 61 6e 20 63 6c | ListOfInts.=.LinkedList(<span.cl |
| 2b020 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 | ass="tok-type">i32</span>);..... |
| 2b040 | 65 78 70 65 63 74 28 4c 69 73 74 4f 66 49 6e 74 73 20 3d 3d 20 4c 69 6e 6b 65 64 4c 69 73 74 28 | expect(ListOfInts.==.LinkedList( |
| 2b060 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e | <span.class="tok-type">i32</span |
| 2b080 | 3e 29 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 | >));......<span.class="tok-kw">v |
| 2b0a0 | 61 72 3c 2f 73 70 61 6e 3e 20 6e 6f 64 65 20 3d 20 4c 69 73 74 4f 66 49 6e 74 73 2e 4e 6f 64 65 | ar</span>.node.=.ListOfInts.Node |
| 2b0c0 | 20 7b 0a 20 20 20 20 20 20 20 20 2e 70 72 65 76 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | .{..........prev.=.<span.class=" |
| 2b0e0 | 74 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 2e | tok-null">null</span>,.......... |
| 2b100 | 6e 65 78 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 | next.=.<span.class="tok-null">nu |
| 2b120 | 6c 6c 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 2e 64 61 74 61 20 3d 20 3c 73 70 61 6e | ll</span>,..........data.=.<span |
| 2b140 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 2c | .class="tok-number">1234</span>, |
| 2b160 | 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" |
| 2b180 | 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 6c 69 73 74 32 20 3d 20 4c 69 6e 6b 65 64 4c 69 73 74 28 3c | >var</span>.list2.=.LinkedList(< |
| 2b1a0 | 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> |
| 2b1c0 | 29 20 7b 0a 20 20 20 20 20 20 20 20 2e 66 69 72 73 74 20 3d 20 26 61 6d 70 3b 6e 6f 64 65 2c 0a | ).{..........first.=.&node,. |
| 2b1e0 | 20 20 20 20 20 20 20 20 2e 6c 61 73 74 20 3d 20 26 61 6d 70 3b 6e 6f 64 65 2c 0a 20 20 20 20 20 | .........last.=.&node,...... |
| 2b200 | 20 20 20 2e 6c 65 6e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | ....len.=.<span.class="tok-numbe |
| 2b220 | 72 22 3e 31 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 7d 3b 0a 20 20 20 20 65 78 70 65 63 74 28 6c | r">1</span>,.....};.....expect(l |
| 2b240 | 69 73 74 32 2e 66 69 72 73 74 2e 3f 2e 64 61 74 61 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ist2.first.?.data.==.<span.class |
| 2b260 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 | ="tok-number">1234</span>);.}</c |
| 2b280 | 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c | ode></pre><pre><code.class="shel |
| 2b2a0 | 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 73 74 72 75 63 74 73 2e 7a 69 67 0a 31 2f 34 20 74 65 | l">$.zig.test.structs.zig.1/4.te |
| 2b2c0 | 73 74 20 26 71 75 6f 74 3b 64 6f 74 20 70 72 6f 64 75 63 74 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b | st."dot.product"....OK |
| 2b2e0 | 0a 32 2f 34 20 74 65 73 74 20 26 71 75 6f 74 3b 73 74 72 75 63 74 20 6e 61 6d 65 73 70 61 63 65 | .2/4.test."struct.namespace |
| 2b300 | 64 20 76 61 72 69 61 62 6c 65 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 33 2f 34 20 74 65 73 74 20 | d.variable"....OK.3/4.test. |
| 2b320 | 26 71 75 6f 74 3b 66 69 65 6c 64 20 70 61 72 65 6e 74 20 70 6f 69 6e 74 65 72 26 71 75 6f 74 3b | "field.parent.pointer" |
| 2b340 | 2e 2e 2e 20 4f 4b 0a 34 2f 34 20 74 65 73 74 20 26 71 75 6f 74 3b 6c 69 6e 6b 65 64 20 6c 69 73 | ....OK.4/4.test."linked.lis |
| 2b360 | 74 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 41 6c 6c 20 34 20 74 65 73 74 73 20 70 61 73 73 65 64 | t"....OK.All.4.tests.passed |
| 2b380 | 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 | ..</code></pre>.........<h2.id=" |
| 2b3a0 | 44 65 66 61 75 6c 74 2d 46 69 65 6c 64 2d 56 61 6c 75 65 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 | Default-Field-Values"><a.href="# |
| 2b3c0 | 74 6f 63 2d 44 65 66 61 75 6c 74 2d 46 69 65 6c 64 2d 56 61 6c 75 65 73 22 3e 44 65 66 61 75 6c | toc-Default-Field-Values">Defaul |
| 2b3e0 | 74 20 46 69 65 6c 64 20 56 61 6c 75 65 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 | t.Field.Values</a>.<a.class="hdr |
| 2b400 | 22 20 68 72 65 66 3d 22 23 44 65 66 61 75 6c 74 2d 46 69 65 6c 64 2d 56 61 6c 75 65 73 22 3e c2 | ".href="#Default-Field-Values">. |
| 2b420 | a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 45 61 63 68 | .</a></h2>........<p>.......Each |
| 2b440 | 20 73 74 72 75 63 74 20 66 69 65 6c 64 20 6d 61 79 20 68 61 76 65 20 61 6e 20 65 78 70 72 65 73 | .struct.field.may.have.an.expres |
| 2b460 | 73 69 6f 6e 20 69 6e 64 69 63 61 74 69 6e 67 20 74 68 65 20 64 65 66 61 75 6c 74 20 66 69 65 6c | sion.indicating.the.default.fiel |
| 2b480 | 64 20 76 61 6c 75 65 2e 20 53 75 63 68 20 65 78 70 72 65 73 73 69 6f 6e 73 0a 20 20 20 20 20 20 | d.value..Such.expressions....... |
| 2b4a0 | 61 72 65 20 65 78 65 63 75 74 65 64 20 61 74 20 3c 61 20 68 72 65 66 3d 22 23 63 6f 6d 70 74 69 | are.executed.at.<a.href="#compti |
| 2b4c0 | 6d 65 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 61 3e 2c 20 61 6e 64 20 61 6c 6c 6f 77 20 74 68 65 20 | me">comptime</a>,.and.allow.the. |
| 2b4e0 | 66 69 65 6c 64 20 74 6f 20 62 65 20 6f 6d 69 74 74 65 64 20 69 6e 20 61 20 73 74 72 75 63 74 20 | field.to.be.omitted.in.a.struct. |
| 2b500 | 6c 69 74 65 72 61 6c 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 | literal.expression:.......</p>.. |
| 2b520 | 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 | .....<p.class="file">test.zig</p |
| 2b540 | 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c | ><pre><code.class="zig"><span.cl |
| 2b560 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 46 6f 6f 20 3d 20 | ass="tok-kw">const</span>.Foo.=. |
| 2b580 | 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 |
| 2b5a0 | 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 70 | n>.{.....a:.<span.class="tok-typ |
| 2b5c0 | 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 |
| 2b5e0 | 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 62 3a 20 3c 73 70 | -number">1234</span>,.....b:.<sp |
| 2b600 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 2c 0a | an.class="tok-type">i32</span>,. |
| 2b620 | 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 |
| 2b640 | 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">" |
| 2b660 | 3b 64 65 66 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 | ;default.struct.initialization.f |
| 2b680 | 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 70 61 6e 20 63 | ields"</span>.{.....<span.c |
| 2b6a0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 78 20 3d 20 46 | lass="tok-kw">const</span>.x.=.F |
| 2b6c0 | 6f 6f 7b 0a 20 20 20 20 20 20 20 20 2e 62 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | oo{..........b.=.<span.class="to |
| 2b6e0 | 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 7d 3b 0a 20 20 20 20 3c | k-number">5</span>,.....};.....< |
| 2b700 | 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 78 | span.class="tok-kw">if</span>.(x |
| 2b720 | 2e 61 20 2b 20 78 2e 62 20 21 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | .a.+.x.b.!=.<span.class="tok-num |
| 2b740 | 62 65 72 22 3e 31 32 33 39 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 | ber">1239</span>).{.........<spa |
| 2b760 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 6f 6d 70 69 6c 65 45 72 | n.class="tok-builtin">@compileEr |
| 2b780 | 72 6f 72 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 | ror</span>(<span.class="tok-str" |
| 2b7a0 | 3e 26 71 75 6f 74 3b 69 74 27 73 20 65 76 65 6e 20 63 6f 6d 70 74 69 6d 65 20 6b 6e 6f 77 6e 21 | >"it's.even.comptime.known! |
| 2b7c0 | 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 7d 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f | "</span>);.....}.}</code></ |
| 2b7e0 | 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a | pre><pre><code.class="shell">$.z |
| 2b800 | 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 31 2f 31 20 74 65 73 74 20 26 71 75 6f 74 3b | ig.test.test.zig.1/1.test." |
| 2b820 | 64 65 66 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 | default.struct.initialization.fi |
| 2b840 | 65 6c 64 73 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 | elds"....OK.All.1.tests.pas |
| 2b860 | 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 | sed..</code></pre>.............. |
| 2b880 | 20 20 3c 68 32 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 | ..<h2.id="extern-struct"><a.href |
| 2b8a0 | 3d 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 | ="#toc-extern-struct">extern.str |
| 2b8c0 | 75 63 74 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 65 78 | uct</a>.<a.class="hdr".href="#ex |
| 2b8e0 | 74 65 72 6e 2d 73 74 72 75 63 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 | tern-struct">..</a></h2>........ |
| 2b900 | 3c 70 3e 41 6e 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c | <p>An.<code.class="zig"><span.cl |
| 2b920 | 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 |
| 2b940 | 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 2f 63 | .class="tok-kw">struct</span></c |
| 2b960 | 6f 64 65 3e 20 68 61 73 20 69 6e 2d 6d 65 6d 6f 72 79 20 6c 61 79 6f 75 74 20 67 75 61 72 61 6e | ode>.has.in-memory.layout.guaran |
| 2b980 | 74 65 65 64 20 74 6f 20 6d 61 74 63 68 20 74 68 65 0a 20 20 20 20 20 20 43 20 41 42 49 20 66 6f | teed.to.match.the.......C.ABI.fo |
| 2b9a0 | 72 20 74 68 65 20 74 61 72 67 65 74 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 54 68 69 73 20 | r.the.target.</p>.......<p>This. |
| 2b9c0 | 6b 69 6e 64 20 6f 66 20 73 74 72 75 63 74 20 73 68 6f 75 6c 64 20 6f 6e 6c 79 20 62 65 20 75 73 | kind.of.struct.should.only.be.us |
| 2b9e0 | 65 64 20 66 6f 72 20 63 6f 6d 70 61 74 69 62 69 6c 69 74 79 20 77 69 74 68 20 74 68 65 20 43 20 | ed.for.compatibility.with.the.C. |
| 2ba00 | 41 42 49 2e 20 45 76 65 72 79 20 6f 74 68 65 72 0a 20 20 20 20 20 20 75 73 65 20 63 61 73 65 20 | ABI..Every.other.......use.case. |
| 2ba20 | 73 68 6f 75 6c 64 20 62 65 20 73 6f 6c 76 65 64 20 77 69 74 68 20 3c 61 20 68 72 65 66 3d 22 23 | should.be.solved.with.<a.href="# |
| 2ba40 | 70 61 63 6b 65 64 2d 73 74 72 75 63 74 22 3e 70 61 63 6b 65 64 20 73 74 72 75 63 74 3c 2f 61 3e | packed-struct">packed.struct</a> |
| 2ba60 | 20 6f 72 20 6e 6f 72 6d 61 6c 20 3c 61 20 68 72 65 66 3d 22 23 73 74 72 75 63 74 22 3e 73 74 72 | .or.normal.<a.href="#struct">str |
| 2ba80 | 75 63 74 3c 2f 61 3e 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c | uct</a>.</p>.......<p>See.also:< |
| 2baa0 | 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 65 78 74 65 72 6e 2d 75 6e 69 | /p><ul>.<li><a.href="#extern-uni |
| 2bac0 | 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 0a 3c 6c 69 3e 3c 61 | on">extern.union</a></li>.<li><a |
| 2bae0 | 20 68 72 65 66 3d 22 23 65 78 74 65 72 6e 2d 65 6e 75 6d 22 3e 65 78 74 65 72 6e 20 65 6e 75 6d | .href="#extern-enum">extern.enum |
| 2bb00 | 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>................< |
| 2bb20 | 68 32 20 69 64 3d 22 70 61 63 6b 65 64 2d 73 74 72 75 63 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 | h2.id="packed-struct"><a.href="# |
| 2bb40 | 74 6f 63 2d 70 61 63 6b 65 64 2d 73 74 72 75 63 74 22 3e 70 61 63 6b 65 64 20 73 74 72 75 63 74 | toc-packed-struct">packed.struct |
| 2bb60 | 3c 2f 61 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 6b 65 | </a>.<a.class="hdr".href="#packe |
| 2bb80 | 64 2d 73 74 72 75 63 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e | d-struct">..</a></h2>........<p> |
| 2bba0 | 0a 20 20 20 20 20 20 55 6e 6c 69 6b 65 20 6e 6f 72 6d 61 6c 20 73 74 72 75 63 74 73 2c 20 3c 63 | .......Unlike.normal.structs,.<c |
| 2bbc0 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ode.class="zig"><span.class="tok |
| 2bbe0 | 2d 6b 77 22 3e 70 61 63 6b 65 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 73 74 72 75 63 74 | -kw">packed</span></code>.struct |
| 2bc00 | 73 20 68 61 76 65 20 67 75 61 72 61 6e 74 65 65 64 20 69 6e 2d 6d 65 6d 6f 72 79 20 6c 61 79 6f | s.have.guaranteed.in-memory.layo |
| 2bc20 | 75 74 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 | ut:.......</p>.......<ul>....... |
| 2bc40 | 20 20 3c 6c 69 3e 46 69 65 6c 64 73 20 72 65 6d 61 69 6e 20 69 6e 20 74 68 65 20 6f 72 64 65 72 | ..<li>Fields.remain.in.the.order |
| 2bc60 | 20 64 65 63 6c 61 72 65 64 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 54 68 65 72 | .declared.</li>.........<li>Ther |
| 2bc80 | 65 20 69 73 20 6e 6f 20 70 61 64 64 69 6e 67 20 62 65 74 77 65 65 6e 20 66 69 65 6c 64 73 2e 3c | e.is.no.padding.between.fields.< |
| 2bca0 | 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 5a 69 67 20 73 75 70 70 6f 72 74 73 20 61 72 | /li>.........<li>Zig.supports.ar |
| 2bcc0 | 62 69 74 72 61 72 79 20 77 69 64 74 68 20 3c 61 20 68 72 65 66 3d 22 23 49 6e 74 65 67 65 72 73 | bitrary.width.<a.href="#Integers |
| 2bce0 | 22 3e 49 6e 74 65 67 65 72 73 3c 2f 61 3e 20 61 6e 64 20 61 6c 74 68 6f 75 67 68 20 6e 6f 72 6d | ">Integers</a>.and.although.norm |
| 2bd00 | 61 6c 6c 79 2c 20 69 6e 74 65 67 65 72 73 20 77 69 74 68 20 66 65 77 65 72 0a 20 20 20 20 20 20 | ally,.integers.with.fewer....... |
| 2bd20 | 20 20 74 68 61 6e 20 38 20 62 69 74 73 20 77 69 6c 6c 20 73 74 69 6c 6c 20 75 73 65 20 31 20 62 | ..than.8.bits.will.still.use.1.b |
| 2bd40 | 79 74 65 20 6f 66 20 6d 65 6d 6f 72 79 2c 20 69 6e 20 70 61 63 6b 65 64 20 73 74 72 75 63 74 73 | yte.of.memory,.in.packed.structs |
| 2bd60 | 2c 20 74 68 65 79 20 75 73 65 0a 20 20 20 20 20 20 20 20 65 78 61 63 74 6c 79 20 74 68 65 69 72 | ,.they.use.........exactly.their |
| 2bd80 | 20 62 69 74 20 77 69 64 74 68 2e 0a 20 20 20 20 20 20 20 20 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | .bit.width..........</li>....... |
| 2bda0 | 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c | ..<li><code.class="zig"><span.cl |
| 2bdc0 | 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 65 | ass="tok-type">bool</span></code |
| 2bde0 | 3e 20 66 69 65 6c 64 73 20 75 73 65 20 65 78 61 63 74 6c 79 20 31 20 62 69 74 2e 3c 2f 6c 69 3e | >.fields.use.exactly.1.bit.</li> |
| 2be00 | 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 41 20 3c 61 20 68 72 65 66 3d 22 23 70 61 63 6b 65 64 2d | .........<li>A.<a.href="#packed- |
| 2be20 | 65 6e 75 6d 22 3e 70 61 63 6b 65 64 20 65 6e 75 6d 3c 2f 61 3e 20 66 69 65 6c 64 20 75 73 65 73 | enum">packed.enum</a>.field.uses |
| 2be40 | 20 65 78 61 63 74 6c 79 20 74 68 65 20 62 69 74 20 77 69 64 74 68 20 6f 66 20 69 74 73 20 69 6e | .exactly.the.bit.width.of.its.in |
| 2be60 | 74 65 67 65 72 20 74 61 67 20 74 79 70 65 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 | teger.tag.type.</li>.........<li |
| 2be80 | 3e 41 20 3c 61 20 68 72 65 66 3d 22 23 70 61 63 6b 65 64 2d 75 6e 69 6f 6e 22 3e 70 61 63 6b 65 | >A.<a.href="#packed-union">packe |
| 2bea0 | 64 20 75 6e 69 6f 6e 3c 2f 61 3e 20 66 69 65 6c 64 20 75 73 65 73 20 65 78 61 63 74 6c 79 20 74 | d.union</a>.field.uses.exactly.t |
| 2bec0 | 68 65 20 62 69 74 20 77 69 64 74 68 20 6f 66 20 74 68 65 20 75 6e 69 6f 6e 20 66 69 65 6c 64 20 | he.bit.width.of.the.union.field. |
| 2bee0 | 77 69 74 68 0a 20 20 20 20 20 20 20 20 74 68 65 20 6c 61 72 67 65 73 74 20 62 69 74 20 77 69 64 | with.........the.largest.bit.wid |
| 2bf00 | 74 68 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 4e 6f 6e 2d 41 42 49 2d 61 6c 69 | th.</li>.........<li>Non-ABI-ali |
| 2bf20 | 67 6e 65 64 20 66 69 65 6c 64 73 20 61 72 65 20 70 61 63 6b 65 64 20 69 6e 74 6f 20 74 68 65 20 | gned.fields.are.packed.into.the. |
| 2bf40 | 73 6d 61 6c 6c 65 73 74 20 70 6f 73 73 69 62 6c 65 0a 20 20 20 20 20 20 20 20 41 42 49 2d 61 6c | smallest.possible.........ABI-al |
| 2bf60 | 69 67 6e 65 64 20 69 6e 74 65 67 65 72 73 20 69 6e 20 61 63 63 6f 72 64 61 6e 63 65 20 77 69 74 | igned.integers.in.accordance.wit |
| 2bf80 | 68 20 74 68 65 20 74 61 72 67 65 74 20 65 6e 64 69 61 6e 6e 65 73 73 2e 0a 20 20 20 20 20 20 20 | h.the.target.endianness......... |
| 2bfa0 | 20 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 | .</li>.......</ul>.......<p>.... |
| 2bfc0 | 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 20 63 6c 61 73 73 | ...This.means.that.a.<code.class |
| 2bfe0 | 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 61 63 6b | ="zig"><span.class="tok-kw">pack |
| 2c000 | 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 |
| 2c020 | 74 72 75 63 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 63 61 6e 20 70 61 72 74 69 63 69 70 | truct</span></code>.can.particip |
| 2c040 | 61 74 65 0a 20 20 20 20 20 20 69 6e 20 61 20 3c 61 20 68 72 65 66 3d 22 23 62 69 74 43 61 73 74 | ate.......in.a.<a.href="#bitCast |
| 2c060 | 22 3e 40 62 69 74 43 61 73 74 3c 2f 61 3e 20 6f 72 20 61 20 3c 61 20 68 72 65 66 3d 22 23 70 74 | ">@bitCast</a>.or.a.<a.href="#pt |
| 2c080 | 72 43 61 73 74 22 3e 40 70 74 72 43 61 73 74 3c 2f 61 3e 20 74 6f 20 72 65 69 6e 74 65 72 70 72 | rCast">@ptrCast</a>.to.reinterpr |
| 2c0a0 | 65 74 20 6d 65 6d 6f 72 79 2e 0a 20 20 20 20 20 20 54 68 69 73 20 65 76 65 6e 20 77 6f 72 6b 73 | et.memory........This.even.works |
| 2c0c0 | 20 61 74 20 3c 61 20 68 72 65 66 3d 22 23 63 6f 6d 70 74 69 6d 65 22 3e 63 6f 6d 70 74 69 6d 65 | .at.<a.href="#comptime">comptime |
| 2c0e0 | 3c 2f 61 3e 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d | </a>:.......</p>.......<p.class= |
| 2c100 | 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c | "file">test.zig</p><pre><code.cl |
| 2c120 | 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 | ass="zig"><span.class="tok-kw">c |
| 2c140 | 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 |
| 2c160 | 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 |
| 2c180 | 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" |
| 2c1a0 | 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 |
| 2c1c0 | 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 62 75 69 6c 74 69 6e 20 3d 20 73 74 64 2e 62 75 69 6c 74 69 | onst</span>.builtin.=.std.builti |
| 2c1e0 | 6e 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 | n;.<span.class="tok-kw">const</s |
| 2c200 | 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 |
| 2c220 | 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 | ;..<span.class="tok-kw">const</s |
| 2c240 | 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 77 22 | pan>.Full.=.<span.class="tok-kw" |
| 2c260 | 3e 70 61 63 6b 65 64 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | >packed</span>.<span.class="tok- |
| 2c280 | 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 3a 20 | kw">struct</span>.{.....number:. |
| 2c2a0 | 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 |
| 2c2c0 | 3e 2c 0a 7d 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 | >,.};.<span.class="tok-kw">const |
| 2c2e0 | 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 22 74 | </span>.Divided.=.<span.class="t |
| 2c300 | 6f 6b 2d 6b 77 22 3e 70 61 63 6b 65 64 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ok-kw">packed</span>.<span.class |
| 2c320 | 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 68 61 | ="tok-kw">struct</span>.{.....ha |
| 2c340 | 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 3c 2f | lf1:.<span.class="tok-type">u8</ |
| 2c360 | 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 73 73 | span>,.....quarter3:.<span.class |
| 2c380 | 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 72 74 | ="tok-type">u4</span>,.....quart |
| 2c3a0 | 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 3c 2f | er4:.<span.class="tok-type">u4</ |
| 2c3c0 | 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"> |
| 2c3e0 | 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 |
| 2c400 | 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 64 20 | ">"@bitCast.between.packed. |
| 2c420 | 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 64 6f 54 68 65 | structs"</span>.{.....doThe |
| 2c440 | 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 77 22 | Test();.....<span.class="tok-kw" |
| 2c460 | 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 7d 0a | >comptime</span>.doTheTest();.}. |
| 2c480 | 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>. |
| 2c4a0 | 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 3c 2f | <span.class="tok-fn">doTheTest</ |
| 2c4c0 | 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 |
| 2c4e0 | 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 65 78 70 65 63 74 28 3c 73 70 61 6e 20 63 6c | oid</span>.{.....expect(<span.cl |
| 2c500 | 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 3e | ass="tok-builtin">@sizeOf</span> |
| 2c520 | 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 6d 62 65 | (Full).==.<span.class="tok-numbe |
| 2c540 | 72 22 3e 32 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 65 78 70 65 63 74 28 3c 73 70 61 6e 20 63 | r">2</span>);.....expect(<span.c |
| 2c560 | 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 |
| 2c580 | 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 6b 2d 6e | >(Divided).==.<span.class="tok-n |
| 2c5a0 | 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | umber">2</span>);.....<span.clas |
| 2c5c0 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 66 75 6c 6c 20 3d 20 46 75 6c | s="tok-kw">var</span>.full.=.Ful |
| 2c5e0 | 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 6f 6b 2d 6e 75 | l{..number.=.<span.class="tok-nu |
| 2c600 | 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 3c 73 70 61 6e | mber">0x1234</span>.};.....<span |
| 2c620 | 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 69 76 69 64 | .class="tok-kw">var</span>.divid |
| 2c640 | 65 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 | ed.=.<span.class="tok-builtin">@ |
| 2c660 | 62 69 74 43 61 73 74 3c 2f 73 70 61 6e 3e 28 44 69 76 69 64 65 64 2c 20 66 75 6c 6c 29 3b 0a 20 | bitCast</span>(Divided,.full);.. |
| 2c680 | 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 77 69 74 63 68 3c 2f | ...<span.class="tok-kw">switch</ |
| 2c6a0 | 73 70 61 6e 3e 20 28 62 75 69 6c 74 69 6e 2e 65 6e 64 69 61 6e 29 20 7b 0a 20 20 20 20 20 20 20 | span>.(builtin.endian).{........ |
| 2c6c0 | 20 2e 42 69 67 20 3d 26 67 74 3b 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 65 78 70 65 63 74 | ..Big.=>.{.............expect |
| 2c6e0 | 28 64 69 76 69 64 65 64 2e 68 61 6c 66 31 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | (divided.half1.==.<span.class="t |
| 2c700 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 31 32 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 20 20 20 | ok-number">0x12</span>);........ |
| 2c720 | 20 20 20 20 20 65 78 70 65 63 74 28 64 69 76 69 64 65 64 2e 71 75 61 72 74 65 72 33 20 3d 3d 20 | .....expect(divided.quarter3.==. |
| 2c740 | 3c 73 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 3c 2f 73 70 | <span.class="tok-number">0x3</sp |
| 2c760 | 61 6e 3e 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 65 78 70 65 63 74 28 64 69 76 69 64 65 64 | an>);.............expect(divided |
| 2c780 | 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 |
| 2c7a0 | 6d 62 65 72 22 3e 30 78 34 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 | mber">0x4</span>);.........},... |
| 2c7c0 | 20 20 20 20 20 20 2e 4c 69 74 74 6c 65 20 3d 26 67 74 3b 20 7b 0a 20 20 20 20 20 20 20 20 20 20 | .......Little.=>.{........... |
| 2c7e0 | 20 20 65 78 70 65 63 74 28 64 69 76 69 64 65 64 2e 68 61 6c 66 31 20 3d 3d 20 3c 73 70 61 6e 20 | ..expect(divided.half1.==.<span. |
| 2c800 | 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 29 3b | class="tok-number">0x34</span>); |
| 2c820 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 65 78 70 65 63 74 28 64 69 76 69 64 65 64 2e 71 75 61 72 | .............expect(divided.quar |
| 2c840 | 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" |
| 2c860 | 3e 30 78 32 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 65 78 70 65 63 74 | >0x2</span>);.............expect |
| 2c880 | 28 64 69 76 69 64 65 64 2e 71 75 61 72 74 65 72 34 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | (divided.quarter4.==.<span.class |
| 2c8a0 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 31 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 20 | ="tok-number">0x1</span>);...... |
| 2c8c0 | 20 20 20 7d 2c 0a 20 20 20 20 7d 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c | ...},.....}.}</code></pre><pre>< |
| 2c8e0 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 | code.class="shell">$.zig.test.te |
| 2c900 | 73 74 2e 7a 69 67 0a 31 2f 31 20 74 65 73 74 20 26 71 75 6f 74 3b 40 62 69 74 43 61 73 74 20 62 | st.zig.1/1.test."@bitCast.b |
| 2c920 | 65 74 77 65 65 6e 20 70 61 63 6b 65 64 20 73 74 72 75 63 74 73 26 71 75 6f 74 3b 2e 2e 2e 20 4f | etween.packed.structs"....O |
| 2c940 | 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 | K.All.1.tests.passed..</code></p |
| 2c960 | 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 5a 69 67 20 61 6c 6c 6f 77 73 20 | re>........<p>.......Zig.allows. |
| 2c980 | 74 68 65 20 61 64 64 72 65 73 73 20 74 6f 20 62 65 20 74 61 6b 65 6e 20 6f 66 20 61 20 6e 6f 6e | the.address.to.be.taken.of.a.non |
| 2c9a0 | 2d 62 79 74 65 2d 61 6c 69 67 6e 65 64 20 66 69 65 6c 64 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a | -byte-aligned.field:.......</p>. |
| 2c9c0 | 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f | ......<p.class="file">test.zig</ |
| 2c9e0 | 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 | p><pre><code.class="zig"><span.c |
| 2ca00 | 6c 61 73 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.= |
| 2ca20 | 20 3c 73 70 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 |
| 2ca40 | 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"> |
| 2ca60 | 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 |
| 2ca80 | 6c 61 73 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 |
| 2caa0 | 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 |
| 2cac0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 42 69 74 46 69 | lass="tok-kw">const</span>.BitFi |
| 2cae0 | 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 65 | eld.=.<span.class="tok-kw">packe |
| 2cb00 | 64 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 74 | d</span>.<span.class="tok-kw">st |
| 2cb20 | 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 73 | ruct</span>.{.....a:.<span.class |
| 2cb40 | 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 73 | ="tok-type">u3</span>,.....b:.<s |
| 2cb60 | 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 0a | pan.class="tok-type">u3</span>,. |
| 2cb80 | 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 32 | ....c:.<span.class="tok-type">u2 |
| 2cba0 | 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 |
| 2cbc0 | 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 66 6f 6f 20 3d 20 42 69 74 46 69 65 6c 64 7b 0a 20 20 20 | ">var</span>.foo.=.BitField{.... |
| 2cbe0 | 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 3e 31 | ..a.=.<span.class="tok-number">1 |
| 2cc00 | 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 2e 62 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | </span>,......b.=.<span.class="t |
| 2cc20 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 2e 63 20 3d 20 3c 73 | ok-number">2</span>,......c.=.<s |
| 2cc40 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 2c | pan.class="tok-number">3</span>, |
| 2cc60 | 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f | .};..<span.class="tok-kw">test</ |
| 2cc80 | 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 |
| 2cca0 | 74 3b 70 6f 69 6e 74 65 72 20 74 6f 20 6e 6f 6e 2d 62 79 74 65 2d 61 6c 69 67 6e 65 64 20 66 69 | t;pointer.to.non-byte-aligned.fi |
| 2ccc0 | 65 6c 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | eld"</span>.{.....<span.cla |
| 2cce0 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 70 74 72 20 3d 20 26 | ss="tok-kw">const</span>.ptr.=.& |
| 2cd00 | 61 6d 70 3b 66 6f 6f 2e 62 3b 0a 20 20 20 20 65 78 70 65 63 74 28 70 74 72 2e 2a 20 3d 3d 20 3c | amp;foo.b;.....expect(ptr.*.==.< |
| 2cd20 | 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> |
| 2cd40 | 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 | );.}</code></pre><pre><code.clas |
| 2cd60 | 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 31 2f | s="shell">$.zig.test.test.zig.1/ |
| 2cd80 | 31 20 74 65 73 74 20 26 71 75 6f 74 3b 70 6f 69 6e 74 65 72 20 74 6f 20 6e 6f 6e 2d 62 79 74 65 | 1.test."pointer.to.non-byte |
| 2cda0 | 2d 61 6c 69 67 6e 65 64 20 66 69 65 6c 64 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 41 6c 6c 20 31 | -aligned.field"....OK.All.1 |
| 2cdc0 | 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 | .tests.passed..</code></pre>.... |
| 2cde0 | 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 48 6f 77 65 76 65 72 2c 20 74 68 65 20 70 6f 69 6e 74 | ....<p>.......However,.the.point |
| 2ce00 | 65 72 20 74 6f 20 61 20 6e 6f 6e 2d 62 79 74 65 2d 61 6c 69 67 6e 65 64 20 66 69 65 6c 64 20 68 | er.to.a.non-byte-aligned.field.h |
| 2ce20 | 61 73 20 73 70 65 63 69 61 6c 20 70 72 6f 70 65 72 74 69 65 73 20 61 6e 64 20 63 61 6e 6e 6f 74 | as.special.properties.and.cannot |
| 2ce40 | 0a 20 20 20 20 20 20 62 65 20 70 61 73 73 65 64 20 77 68 65 6e 20 61 20 6e 6f 72 6d 61 6c 20 70 | .......be.passed.when.a.normal.p |
| 2ce60 | 6f 69 6e 74 65 72 20 69 73 20 65 78 70 65 63 74 65 64 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 | ointer.is.expected:.......</p>.. |
| 2ce80 | 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 | .....<p.class="file">test.zig</p |
| 2cea0 | 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c | ><pre><code.class="zig"><span.cl |
| 2cec0 | 61 73 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.=. |
| 2cee0 | 3c 73 70 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 |
| 2cf00 | 74 3c 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">& |
| 2cf20 | 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 |
| 2cf40 | 61 73 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 |
| 2cf60 | 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 |
| 2cf80 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 42 69 74 46 69 65 | ass="tok-kw">const</span>.BitFie |
| 2cfa0 | 6c 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 61 63 6b 65 64 | ld.=.<span.class="tok-kw">packed |
| 2cfc0 | 3c 2f 73 70 61 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 |
| 2cfe0 | 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | uct</span>.{.....a:.<span.class= |
| 2d000 | 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 62 3a 20 3c 73 70 | "tok-type">u3</span>,.....b:.<sp |
| 2d020 | 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>,.. |
| 2d040 | 20 20 20 63 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 32 3c | ...c:.<span.class="tok-type">u2< |
| 2d060 | 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" |
| 2d080 | 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 62 69 74 5f 66 69 65 6c 64 20 3d 20 42 69 74 46 69 65 6c 64 | >var</span>.bit_field.=.BitField |
| 2d0a0 | 7b 0a 20 20 20 20 2e 61 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | {......a.=.<span.class="tok-numb |
| 2d0c0 | 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 2e 62 20 3d 20 3c 73 70 61 6e 20 63 6c 61 | er">1</span>,......b.=.<span.cla |
| 2d0e0 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 2e 63 | ss="tok-number">2</span>,......c |
| 2d100 | 20 3d 20 3c 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 |
| 2d120 | 70 61 6e 3e 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 | pan>,.};..<span.class="tok-kw">t |
| 2d140 | 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" |
| 2d160 | 3e 26 71 75 6f 74 3b 70 6f 69 6e 74 65 72 20 74 6f 20 6e 6f 6e 2d 62 69 74 2d 61 6c 69 67 6e 65 | >"pointer.to.non-bit-aligne |
| 2d180 | 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 65 78 70 65 63 | d.field"</span>.{.....expec |
| 2d1a0 | 74 28 62 61 72 28 26 61 6d 70 3b 62 69 74 5f 66 69 65 6c 64 2e 62 29 20 3d 3d 20 3c 73 70 61 6e | t(bar(&bit_field.b).==.<span |
| 2d1c0 | 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 7d | .class="tok-number">2</span>);.} |
| 2d1e0 | 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> |
| 2d200 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 62 61 72 3c 2f 73 70 61 6e 3e | .<span.class="tok-fn">bar</span> |
| 2d220 | 28 78 3a 20 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c | (x:.*<span.class="tok-kw">const< |
| 2d240 | 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 33 | /span>.<span.class="tok-type">u3 |
| 2d260 | 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"> |
| 2d280 | 75 33 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | u3</span>.{.....<span.class="tok |
| 2d2a0 | 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 78 2e 2a 3b 0a 7d 3c 2f 63 6f 64 65 3e | -kw">return</span>.x.*;.}</code> |
| 2d2c0 | 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 | </pre><pre><code.class="shell">$ |
| 2d2e0 | 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | .zig.test.test.zig.<span.class=" |
| 2d300 | 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 31 37 3a 32 | t0_1">./docgen_tmp/test.zig:17:2 |
| 2d320 | 36 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 31 5f 31 22 3e 65 72 | 6:.</span><span.class="t31_1">er |
| 2d340 | 72 6f 72 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 65 | ror:.</span><span.class="t0_1">e |
| 2d360 | 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 66 6f 75 6e 64 20 | xpected.type.'*const.u3',.found. |
| 2d380 | 27 2a 61 6c 69 67 6e 28 3a 33 3a 31 29 20 75 33 27 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 65 78 70 | '*align(:3:1).u3'</span>.....exp |
| 2d3a0 | 65 63 74 28 62 61 72 28 26 61 6d 70 3b 62 69 74 5f 66 69 65 6c 64 2e 62 29 20 3d 3d 20 32 29 3b | ect(bar(&bit_field.b).==.2); |
| 2d3c0 | 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 3c 73 70 61 6e 20 | ..........................<span. |
| 2d3e0 | 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 2f 63 6f 64 65 3e 3c 2f | class="t32_1">^</span>.</code></ |
| 2d400 | 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 6e 20 74 68 69 73 20 63 61 | pre>........<p>.......In.this.ca |
| 2d420 | 73 65 2c 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | se,.the.function.<code.class="zi |
| 2d440 | 67 22 3e 62 61 72 3c 2f 63 6f 64 65 3e 20 63 61 6e 6e 6f 74 20 62 65 20 63 61 6c 6c 65 64 20 62 | g">bar</code>.cannot.be.called.b |
| 2d460 | 65 63 75 73 65 20 74 68 65 20 70 6f 69 6e 74 65 72 0a 20 20 20 20 20 20 74 6f 20 74 68 65 20 6e | ecuse.the.pointer.......to.the.n |
| 2d480 | 6f 6e 2d 41 42 49 2d 61 6c 69 67 6e 65 64 20 66 69 65 6c 64 20 6d 65 6e 74 69 6f 6e 73 20 74 68 | on-ABI-aligned.field.mentions.th |
| 2d4a0 | 65 20 62 69 74 20 6f 66 66 73 65 74 2c 20 62 75 74 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 65 | e.bit.offset,.but.the.function.e |
| 2d4c0 | 78 70 65 63 74 73 20 61 6e 20 41 42 49 2d 61 6c 69 67 6e 65 64 20 70 6f 69 6e 74 65 72 2e 0a 20 | xpects.an.ABI-aligned.pointer... |
| 2d4e0 | 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 50 6f 69 6e 74 65 | .....</p>.......<p>.......Pointe |
| 2d500 | 72 73 20 74 6f 20 6e 6f 6e 2d 41 42 49 2d 61 6c 69 67 6e 65 64 20 66 69 65 6c 64 73 20 73 68 61 | rs.to.non-ABI-aligned.fields.sha |
| 2d520 | 72 65 20 74 68 65 20 73 61 6d 65 20 61 64 64 72 65 73 73 20 61 73 20 74 68 65 20 6f 74 68 65 72 | re.the.same.address.as.the.other |
| 2d540 | 20 66 69 65 6c 64 73 20 77 69 74 68 69 6e 20 74 68 65 69 72 20 68 6f 73 74 20 69 6e 74 65 67 65 | .fields.within.their.host.intege |
| 2d560 | 72 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 | r:.......</p>.......<p.class="fi |
| 2d580 | 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 | le">test.zig</p><pre><code.class |
| 2d5a0 | 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 | ="zig"><span.class="tok-kw">cons |
| 2d5c0 | 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- |
| 2d5e0 | 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 |
| 2d600 | 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 |
| 2d620 | 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 |
| 2d640 | 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 |
| 2d660 | 70 65 63 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 | pect;..<span.class="tok-kw">cons |
| 2d680 | 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 3d | t</span>.BitField.=.<span.class= |
| 2d6a0 | 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 |
| 2d6c0 | 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>.{..... |
| 2d6e0 | 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 70 | a:.<span.class="tok-type">u3</sp |
| 2d700 | 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 70 | an>,.....b:.<span.class="tok-typ |
| 2d720 | 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 73 | e">u3</span>,.....c:.<span.class |
| 2d740 | 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 6e | ="tok-type">u2</span>,.};..<span |
| 2d760 | 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 69 74 5f 66 | .class="tok-kw">var</span>.bit_f |
| 2d780 | 69 65 6c 64 20 3d 20 42 69 74 46 69 65 6c 64 7b 0a 20 20 20 20 2e 61 20 3d 20 3c 73 70 61 6e 20 | ield.=.BitField{......a.=.<span. |
| 2d7a0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 | class="tok-number">1</span>,.... |
| 2d7c0 | 20 2e 62 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 | ..b.=.<span.class="tok-number">2 |
| 2d7e0 | 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 2e 63 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | </span>,......c.=.<span.class="t |
| 2d800 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 | ok-number">3</span>,.};..<span.c |
| 2d820 | 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. |
| 2d840 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 70 6f 69 6e 74 65 72 20 74 6f | class="tok-str">"pointer.to |
| 2d860 | 20 6e 6f 6e 2d 62 69 74 2d 61 6c 69 67 6e 65 64 20 66 69 65 6c 64 26 71 75 6f 74 3b 3c 2f 73 70 | .non-bit-aligned.field"</sp |
| 2d880 | 61 6e 3e 20 7b 0a 20 20 20 20 65 78 70 65 63 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | an>.{.....expect(<span.class="to |
| 2d8a0 | 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 70 74 72 54 6f 49 6e 74 3c 2f 73 70 61 6e 3e 28 26 61 6d 70 | k-builtin">@ptrToInt</span>(& |
| 2d8c0 | 3b 62 69 74 5f 66 69 65 6c 64 2e 61 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ;bit_field.a).==.<span.class="to |
| 2d8e0 | 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 70 74 72 54 6f 49 6e 74 3c 2f 73 70 61 6e 3e 28 26 61 6d 70 | k-builtin">@ptrToInt</span>(& |
| 2d900 | 3b 62 69 74 5f 66 69 65 6c 64 2e 62 29 29 3b 0a 20 20 20 20 65 78 70 65 63 74 28 3c 73 70 61 6e | ;bit_field.b));.....expect(<span |
| 2d920 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 70 74 72 54 6f 49 6e 74 3c 2f | .class="tok-builtin">@ptrToInt</ |
| 2d940 | 73 70 61 6e 3e 28 26 61 6d 70 3b 62 69 74 5f 66 69 65 6c 64 2e 61 29 20 3d 3d 20 3c 73 70 61 6e | span>(&bit_field.a).==.<span |
| 2d960 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 70 74 72 54 6f 49 6e 74 3c 2f | .class="tok-builtin">@ptrToInt</ |
| 2d980 | 73 70 61 6e 3e 28 26 61 6d 70 3b 62 69 74 5f 66 69 65 6c 64 2e 63 29 29 3b 0a 7d 3c 2f 63 6f 64 | span>(&bit_field.c));.}</cod |
| 2d9a0 | 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 | e></pre><pre><code.class="shell" |
| 2d9c0 | 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 31 2f 31 20 74 65 73 74 20 26 71 | >$.zig.test.test.zig.1/1.test.&q |
| 2d9e0 | 75 6f 74 3b 70 6f 69 6e 74 65 72 20 74 6f 20 6e 6f 6e 2d 62 69 74 2d 61 6c 69 67 6e 65 64 20 66 | uot;pointer.to.non-bit-aligned.f |
| 2da00 | 69 65 6c 64 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 | ield"....OK.All.1.tests.pas |
| 2da20 | 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 | sed..</code></pre>........<p>... |
| 2da40 | 20 20 20 20 54 68 69 73 20 63 61 6e 20 62 65 20 6f 62 73 65 72 76 65 64 20 77 69 74 68 20 3c 61 | ....This.can.be.observed.with.<a |
| 2da60 | 20 68 72 65 66 3d 22 23 62 69 74 4f 66 66 73 65 74 4f 66 22 3e 40 62 69 74 4f 66 66 73 65 74 4f | .href="#bitOffsetOf">@bitOffsetO |
| 2da80 | 66 3c 2f 61 3e 20 61 6e 64 20 3c 61 20 68 72 65 66 3d 22 23 62 79 74 65 4f 66 66 73 65 74 4f 66 | f</a>.and.<a.href="#byteOffsetOf |
| 2daa0 | 22 3e 62 79 74 65 4f 66 66 73 65 74 4f 66 3c 2f 61 3e 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 | ">byteOffsetOf</a>:.......</p>.. |
| 2dac0 | 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 | .....<p.class="file">test.zig</p |
| 2dae0 | 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c | ><pre><code.class="zig"><span.cl |
| 2db00 | 61 73 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.=. |
| 2db20 | 3c 73 70 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 |
| 2db40 | 74 3c 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">& |
| 2db60 | 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 |
| 2db80 | 61 73 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 |
| 2dba0 | 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 |
| 2dbc0 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 42 69 74 46 69 65 | ass="tok-kw">const</span>.BitFie |
| 2dbe0 | 6c 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 61 63 6b 65 64 | ld.=.<span.class="tok-kw">packed |
| 2dc00 | 3c 2f 73 70 61 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 |
| 2dc20 | 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | uct</span>.{.....a:.<span.class= |
| 2dc40 | 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 62 3a 20 3c 73 70 | "tok-type">u3</span>,.....b:.<sp |
| 2dc60 | 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>,.. |
| 2dc80 | 20 20 20 63 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 32 3c | ...c:.<span.class="tok-type">u2< |
| 2dca0 | 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" |
| 2dcc0 | 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 |
| 2dce0 | 72 22 3e 26 71 75 6f 74 3b 70 6f 69 6e 74 65 72 20 74 6f 20 6e 6f 6e 2d 62 69 74 2d 61 6c 69 67 | r">"pointer.to.non-bit-alig |
| 2dd00 | 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 73 70 | ned.field"</span>.{.....<sp |
| 2dd20 | 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 |
| 2dd40 | 3e 20 7b 0a 20 20 20 20 20 20 20 20 65 78 70 65 63 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | >.{.........expect(<span.class=" |
| 2dd60 | 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 62 69 74 4f 66 66 73 65 74 4f 66 3c 2f 73 70 61 6e 3e | tok-builtin">@bitOffsetOf</span> |
| 2dd80 | 28 42 69 74 46 69 65 6c 64 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 | (BitField,.<span.class="tok-str" |
| 2dda0 | 3e 26 71 75 6f 74 3b 61 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 3c 73 70 61 6e 20 | >"a"</span>).==.<span. |
| 2ddc0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 | class="tok-number">0</span>);... |
| 2dde0 | 20 20 20 20 20 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 | ......expect(<span.class="tok-bu |
| 2de00 | 69 6c 74 69 6e 22 3e 40 62 69 74 4f 66 66 73 65 74 4f 66 3c 2f 73 70 61 6e 3e 28 42 69 74 46 69 | iltin">@bitOffsetOf</span>(BitFi |
| 2de20 | 65 6c 64 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 | eld,.<span.class="tok-str">" |
| 2de40 | 3b 62 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ;b"</span>).==.<span.class= |
| 2de60 | 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 20 20 20 20 | "tok-number">3</span>);......... |
| 2de80 | 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" |
| 2dea0 | 3e 40 62 69 74 4f 66 66 73 65 74 4f 66 3c 2f 73 70 61 6e 3e 28 42 69 74 46 69 65 6c 64 2c 20 3c | >@bitOffsetOf</span>(BitField,.< |
| 2dec0 | 73 70 61 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 | span.class="tok-str">"c&quo |
| 2dee0 | 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 |
| 2df00 | 75 6d 62 65 72 22 3e 36 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 20 20 20 20 20 20 20 20 65 78 70 65 63 | umber">6</span>);..........expec |
| 2df20 | 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 62 79 74 | t(<span.class="tok-builtin">@byt |
| 2df40 | 65 4f 66 66 73 65 74 4f 66 3c 2f 73 70 61 6e 3e 28 42 69 74 46 69 65 6c 64 2c 20 3c 73 70 61 6e | eOffsetOf</span>(BitField,.<span |
| 2df60 | 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 3c 2f | .class="tok-str">"a"</ |
| 2df80 | 73 70 61 6e 3e 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | span>).==.<span.class="tok-numbe |
| 2dfa0 | 72 22 3e 30 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 20 20 20 20 65 78 70 65 63 74 28 3c 73 70 | r">0</span>);.........expect(<sp |
| 2dfc0 | 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 79 74 65 4f 66 66 73 | an.class="tok-builtin">@byteOffs |
| 2dfe0 | 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 73 | etOf</span>(BitField,.<span.clas |
| 2e000 | 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 3e | s="tok-str">"b"</span> |
| 2e020 | 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c | ).==.<span.class="tok-number">0< |
| 2e040 | 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 20 20 20 20 65 78 70 65 63 74 28 3c 73 70 61 6e 20 63 6c | /span>);.........expect(<span.cl |
| 2e060 | 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 62 79 74 65 4f 66 66 73 65 74 4f 66 3c | ass="tok-builtin">@byteOffsetOf< |
| 2e080 | 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 |
| 2e0a0 | 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>).==. |
| 2e0c0 | 3c 73 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 |
| 2e0e0 | 3e 29 3b 0a 20 20 20 20 7d 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f | >);.....}.}</code></pre><pre><co |
| 2e100 | 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 | de.class="shell">$.zig.test.test |
| 2e120 | 2e 7a 69 67 0a 31 2f 31 20 74 65 73 74 20 26 71 75 6f 74 3b 70 6f 69 6e 74 65 72 20 74 6f 20 6e | .zig.1/1.test."pointer.to.n |
| 2e140 | 6f 6e 2d 62 69 74 2d 61 6c 69 67 6e 65 64 20 66 69 65 6c 64 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b | on-bit-aligned.field"....OK |
| 2e160 | 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 | .All.1.tests.passed..</code></pr |
| 2e180 | 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 50 61 63 6b 65 64 20 73 74 72 75 63 | e>........<p>.......Packed.struc |
| 2e1a0 | 74 73 20 68 61 76 65 20 31 2d 62 79 74 65 20 61 6c 69 67 6e 6d 65 6e 74 2e 20 48 6f 77 65 76 65 | ts.have.1-byte.alignment..Howeve |
| 2e1c0 | 72 20 69 66 20 79 6f 75 20 68 61 76 65 20 61 6e 20 6f 76 65 72 61 6c 69 67 6e 65 64 20 70 6f 69 | r.if.you.have.an.overaligned.poi |
| 2e1e0 | 6e 74 65 72 20 74 6f 20 61 20 70 61 63 6b 65 64 20 73 74 72 75 63 74 2c 0a 20 20 20 20 20 20 5a | nter.to.a.packed.struct,.......Z |
| 2e200 | 69 67 20 73 68 6f 75 6c 64 20 63 6f 72 72 65 63 74 6c 79 20 75 6e 64 65 72 73 74 61 6e 64 20 74 | ig.should.correctly.understand.t |
| 2e220 | 68 65 20 61 6c 69 67 6e 6d 65 6e 74 20 6f 66 20 66 69 65 6c 64 73 2e 20 48 6f 77 65 76 65 72 20 | he.alignment.of.fields..However. |
| 2e240 | 74 68 65 72 65 20 69 73 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f | there.is.......<a.href="https:// |
| 2e260 | 67 69 74 68 75 62 2e 63 6f 6d 2f 7a 69 67 6c 61 6e 67 2f 7a 69 67 2f 69 73 73 75 65 73 2f 31 39 | github.com/ziglang/zig/issues/19 |
| 2e280 | 39 34 22 3e 61 20 62 75 67 3c 2f 61 3e 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 | 94">a.bug</a>:.......</p>....... |
| 2e2a0 | 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 | <p.class="file">test.zig</p><pre |
| 2e2c0 | 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ><code.class="zig"><span.class=" |
| 2e2e0 | 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 53 20 3d 20 3c 73 70 61 6e 20 63 | tok-kw">const</span>.S.=.<span.c |
| 2e300 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 61 63 6b 65 64 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 | lass="tok-kw">packed</span>.<spa |
| 2e320 | 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>.{ |
| 2e340 | 0a 20 20 20 20 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 | .....a:.<span.class="tok-type">u |
| 2e360 | 33 32 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 62 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | 32</span>,.....b:.<span.class="t |
| 2e380 | 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 61 6e 20 63 6c | ok-type">u32</span>,.};.<span.cl |
| 2e3a0 | 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 |
| 2e3c0 | 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 69 67 6e 65 64 | lass="tok-str">"overaligned |
| 2e3e0 | 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 75 6f 74 3b 3c | .pointer.to.packed.struct"< |
| 2e400 | 2f 73 70 61 6e 3e 20 7b 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 |
| 2e420 | 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 6c 61 73 73 3d | ">var</span>.foo:.S.<span.class= |
| 2e440 | 22 74 6f 6b 2d 6b 77 22 3e 61 6c 69 67 6e 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 | "tok-kw">align</span>(<span.clas |
| 2e460 | 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 3c 73 70 61 6e | s="tok-number">4</span>).=.<span |
| 2e480 | 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 |
| 2e4a0 | 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 |
| 2e4c0 | 73 74 3c 2f 73 70 61 6e 3e 20 70 74 72 3a 20 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | st</span>.ptr:.*<span.class="tok |
| 2e4e0 | 2d 6b 77 22 3e 61 6c 69 67 6e 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | -kw">align</span>(<span.class="t |
| 2e500 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 29 20 53 20 3d 20 26 61 6d 70 3b 66 6f | ok-number">4</span>).S.=.&fo |
| 2e520 | 6f 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 | o;.....<span.class="tok-kw">cons |
| 2e540 | 74 3c 2f 73 70 61 6e 3e 20 70 74 72 5f 74 6f 5f 62 3a 20 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | t</span>.ptr_to_b:.*<span.class= |
| 2e560 | 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 26 61 6d 70 3b 70 74 72 | "tok-type">u32</span>.=.&ptr |
| 2e580 | 2e 62 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 | .b;.}</code></pre><pre><code.cla |
| 2e5a0 | 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 3c | ss="shell">$.zig.test.test.zig.< |
| 2e5c0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 | span.class="t0_1">./docgen_tmp/t |
| 2e5e0 | 65 73 74 2e 7a 69 67 3a 38 3a 33 32 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | est.zig:8:32:.</span><span.class |
| 2e600 | 3d 22 74 33 31 5f 31 22 3e 65 72 72 6f 72 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 | ="t31_1">error:.</span><span.cla |
| 2e620 | 73 73 3d 22 74 30 5f 31 22 3e 65 78 70 65 63 74 65 64 20 74 79 70 65 20 27 2a 75 33 32 27 2c 20 | ss="t0_1">expected.type.'*u32',. |
| 2e640 | 66 6f 75 6e 64 20 27 2a 61 6c 69 67 6e 28 31 29 20 75 33 32 27 3c 2f 73 70 61 6e 3e 0a 20 20 20 | found.'*align(1).u32'</span>.... |
| 2e660 | 20 63 6f 6e 73 74 20 70 74 72 5f 74 6f 5f 62 3a 20 2a 75 33 32 20 3d 20 26 61 6d 70 3b 70 74 72 | .const.ptr_to_b:.*u32.=.&ptr |
| 2e680 | 2e 62 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 | .b;............................. |
| 2e6a0 | 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a | ...<span.class="t32_1">^</span>. |
| 2e6c0 | 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 57 68 65 6e 20 74 68 69 | </code></pre>........<p>When.thi |
| 2e6e0 | 73 20 62 75 67 20 69 73 20 66 69 78 65 64 2c 20 74 68 65 20 61 62 6f 76 65 20 74 65 73 74 20 69 | s.bug.is.fixed,.the.above.test.i |
| 2e700 | 6e 20 74 68 65 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 20 77 69 6c 6c 20 75 6e 65 78 70 65 63 | n.the.documentation.will.unexpec |
| 2e720 | 74 65 64 6c 79 20 70 61 73 73 2c 20 77 68 69 63 68 20 77 69 6c 6c 0a 20 20 20 20 20 20 63 61 75 | tedly.pass,.which.will.......cau |
| 2e740 | 73 65 20 74 68 65 20 74 65 73 74 20 73 75 69 74 65 20 74 6f 20 66 61 69 6c 2c 20 6e 6f 74 69 66 | se.the.test.suite.to.fail,.notif |
| 2e760 | 79 69 6e 67 20 74 68 65 20 62 75 67 20 66 69 78 65 72 20 74 6f 20 75 70 64 61 74 65 20 74 68 65 | ying.the.bug.fixer.to.update.the |
| 2e780 | 73 65 20 64 6f 63 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 | se.docs........</p>.......<p>... |
| 2e7a0 | 20 20 20 20 49 74 27 73 20 61 6c 73 6f 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 68 74 74 | ....It's.also.......<a.href="htt |
| 2e7c0 | 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 |
| 2e7e0 | 65 73 2f 31 35 31 32 22 3e 70 6c 61 6e 6e 65 64 20 74 6f 20 62 65 20 61 62 6c 65 20 74 6f 20 73 | es/1512">planned.to.be.able.to.s |
| 2e800 | 65 74 20 61 6c 69 67 6e 6d 65 6e 74 20 6f 66 20 73 74 72 75 63 74 20 66 69 65 6c 64 73 3c 2f 61 | et.alignment.of.struct.fields</a |
| 2e820 | 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 55 73 | >........</p>.......<p>.......Us |
| 2e840 | 69 6e 67 20 70 61 63 6b 65 64 20 73 74 72 75 63 74 73 20 77 69 74 68 20 3c 61 20 68 72 65 66 3d | ing.packed.structs.with.<a.href= |
| 2e860 | 22 23 76 6f 6c 61 74 69 6c 65 22 3e 76 6f 6c 61 74 69 6c 65 3c 2f 61 3e 20 69 73 20 70 72 6f 62 | "#volatile">volatile</a>.is.prob |
| 2e880 | 6c 65 6d 61 74 69 63 2c 20 61 6e 64 20 6d 61 79 20 62 65 20 61 20 63 6f 6d 70 69 6c 65 20 65 72 | lematic,.and.may.be.a.compile.er |
| 2e8a0 | 72 6f 72 20 69 6e 20 74 68 65 20 66 75 74 75 72 65 2e 0a 20 20 20 20 20 20 46 6f 72 20 64 65 74 | ror.in.the.future........For.det |
| 2e8c0 | 61 69 6c 73 20 6f 6e 20 74 68 69 73 20 73 75 62 73 63 72 69 62 65 20 74 6f 0a 20 20 20 20 20 20 | ails.on.this.subscribe.to....... |
| 2e8e0 | 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 7a 69 67 6c | <a.href="https://github.com/zigl |
| 2e900 | 61 6e 67 2f 7a 69 67 2f 69 73 73 75 65 73 2f 31 37 36 31 22 3e 74 68 69 73 20 69 73 73 75 65 3c | ang/zig/issues/1761">this.issue< |
| 2e920 | 2f 61 3e 2e 0a 20 20 20 20 20 20 54 4f 44 4f 20 75 70 64 61 74 65 20 74 68 65 73 65 20 64 6f 63 | /a>........TODO.update.these.doc |
| 2e940 | 73 20 77 69 74 68 20 61 20 72 65 63 6f 6d 6d 65 6e 64 61 74 69 6f 6e 20 6f 6e 20 68 6f 77 20 74 | s.with.a.recommendation.on.how.t |
| 2e960 | 6f 20 75 73 65 20 70 61 63 6b 65 64 20 73 74 72 75 63 74 73 20 77 69 74 68 20 4d 4d 49 4f 0a 20 | o.use.packed.structs.with.MMIO.. |
| 2e980 | 20 20 20 20 20 28 74 68 65 20 75 73 65 20 63 61 73 65 20 66 6f 72 20 76 6f 6c 61 74 69 6c 65 20 | .....(the.use.case.for.volatile. |
| 2e9a0 | 70 61 63 6b 65 64 20 73 74 72 75 63 74 73 29 20 6f 6e 63 65 20 74 68 69 73 20 69 73 73 75 65 20 | packed.structs).once.this.issue. |
| 2e9c0 | 69 73 20 72 65 73 6f 6c 76 65 64 2e 0a 20 20 20 20 20 20 44 6f 6e 27 74 20 77 6f 72 72 79 2c 20 | is.resolved........Don't.worry,. |
| 2e9e0 | 74 68 65 72 65 20 77 69 6c 6c 20 62 65 20 61 20 67 6f 6f 64 20 73 6f 6c 75 74 69 6f 6e 20 66 6f | there.will.be.a.good.solution.fo |
| 2ea00 | 72 20 74 68 69 73 20 75 73 65 20 63 61 73 65 20 69 6e 20 7a 69 67 2e 0a 20 20 20 20 20 20 3c 2f | r.this.use.case.in.zig........</ |
| 2ea20 | 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 53 74 72 75 63 74 2d | p>...............<h2.id="Struct- |
| 2ea40 | 4e 61 6d 69 6e 67 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 53 74 72 75 63 74 2d 4e 61 6d | Naming"><a.href="#toc-Struct-Nam |
| 2ea60 | 69 6e 67 22 3e 53 74 72 75 63 74 20 4e 61 6d 69 6e 67 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d | ing">Struct.Naming</a>.<a.class= |
| 2ea80 | 22 68 64 72 22 20 68 72 65 66 3d 22 23 53 74 72 75 63 74 2d 4e 61 6d 69 6e 67 22 3e c2 a7 3c 2f | "hdr".href="#Struct-Naming">..</ |
| 2eaa0 | 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 53 69 6e 63 65 20 61 6c 6c 20 73 74 72 75 | a></h2>........<p>Since.all.stru |
| 2eac0 | 63 74 73 20 61 72 65 20 61 6e 6f 6e 79 6d 6f 75 73 2c 20 5a 69 67 20 69 6e 66 65 72 73 20 74 68 | cts.are.anonymous,.Zig.infers.th |
| 2eae0 | 65 20 74 79 70 65 20 6e 61 6d 65 20 62 61 73 65 64 20 6f 6e 20 61 20 66 65 77 20 72 75 6c 65 73 | e.type.name.based.on.a.few.rules |
| 2eb00 | 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 49 | .</p>.......<ul>...........<li>I |
| 2eb20 | 66 20 74 68 65 20 73 74 72 75 63 74 20 69 73 20 69 6e 20 74 68 65 20 69 6e 69 74 69 61 6c 69 7a | f.the.struct.is.in.the.initializ |
| 2eb40 | 61 74 69 6f 6e 20 65 78 70 72 65 73 73 69 6f 6e 20 6f 66 20 61 20 76 61 72 69 61 62 6c 65 2c 20 | ation.expression.of.a.variable,. |
| 2eb60 | 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 |
| 2eb80 | 61 74 20 76 61 72 69 61 62 6c 65 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e | at.variable.</li>...........<li> |
| 2eba0 | 49 66 20 74 68 65 20 73 74 72 75 63 74 20 69 73 20 69 6e 20 74 68 65 20 3c 63 6f 64 65 20 63 6c | If.the.struct.is.in.the.<code.cl |
| 2ebc0 | 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 | ass="zig"><span.class="tok-kw">r |
| 2ebe0 | 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,. |
| 2ec00 | 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 |
| 2ec20 | 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, |
| 2ec40 | 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 |
| 2ec60 | 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 |
| 2ec80 | 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 |
| 2eca0 | 20 61 73 20 3c 63 6f 64 65 3e 28 61 6e 6f 6e 79 6d 6f 75 73 20 73 74 72 75 63 74 20 61 74 20 66 | .as.<code>(anonymous.struct.at.f |
| 2ecc0 | 69 6c 65 2e 7a 69 67 3a 37 3a 33 38 29 3c 2f 63 6f 64 65 3e 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 | ile.zig:7:38)</code>.</li>...... |
| 2ece0 | 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 73 74 72 | .</ul>.......<p.class="file">str |
| 2ed00 | 75 63 74 5f 6e 61 6d 65 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 | uct_name.zig</p><pre><code.class |
| 2ed20 | 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 | ="zig"><span.class="tok-kw">cons |
| 2ed40 | 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- |
| 2ed60 | 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 |
| 2ed80 | 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 |
| 2eda0 | 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 |
| 2edc0 | 3c 2f 73 70 61 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< |
| 2ede0 | 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 |
| 2ee00 | 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" |
| 2ee20 | 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=" |
| 2ee40 | 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 |
| 2ee60 | 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>.{} |
| 2ee80 | 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 |
| 2eea0 | 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 7d 5c 6e | s="tok-str">"variable:.{}\n |
| 2eec0 | 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | "</span>,..{<span.class="to |
| 2eee0 | 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 29 | k-builtin">@typeName</span>(Foo) |
| 2ef00 | 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 6c | });.....std.debug.print(<span.cl |
| 2ef20 | 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 7b | ass="tok-str">"anonymous:.{ |
| 2ef40 | 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 3c 73 70 61 6e 20 63 6c 61 73 73 3d | }\n"</span>,..{<span.class= |
| 2ef60 | 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 74 79 70 65 4e 61 6d 65 3c 2f 73 70 61 6e 3e 28 3c | "tok-builtin">@typeName</span>(< |
| 2ef80 | 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 |
| 2efa0 | 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 73 70 | >.{})});.....std.debug.print(<sp |
| 2efc0 | 61 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 69 6f | an.class="tok-str">"functio |
| 2efe0 | 6e 3a 20 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 | n:.{}\n"</span>,..{<span.cl |
| 2f000 | 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 74 79 70 65 4e 61 6d 65 3c 2f 73 70 61 | ass="tok-builtin">@typeName</spa |
| 2f020 | 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 22 3e 69 | n>(List(<span.class="tok-type">i |
| 2f040 | 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 3d 22 74 | 32</span>))});.}..<span.class="t |
| 2f060 | 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 |
| 2f080 | 6b 2d 66 6e 22 3e 4c 69 73 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | k-fn">List</span>(<span.class="t |
| 2f0a0 | 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. |
| 2f0c0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 29 20 3c 73 | class="tok-type">type</span>).<s |
| 2f0e0 | 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> |
| 2f100 | 20 7b 0a 20 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 |
| 2f120 | 72 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 | rn</span>.<span.class="tok-kw">s |
| 2f140 | 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 20 20 20 | truct</span>.{.........x:.T,.... |
| 2f160 | 20 7d 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 | .};.}</code></pre><pre><code.cla |
| 2f180 | 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 73 74 72 75 63 | ss="shell">$.zig.build-exe.struc |
| 2f1a0 | 74 5f 6e 61 6d 65 2e 7a 69 67 0a 24 20 2e 2f 73 74 72 75 63 74 5f 6e 61 6d 65 0a 76 61 72 69 61 | t_name.zig.$../struct_name.varia |
| 2f1c0 | 62 6c 65 3a 20 46 6f 6f 0a 61 6e 6f 6e 79 6d 6f 75 73 3a 20 73 74 72 75 63 74 3a 36 3a 35 32 0a | ble:.Foo.anonymous:.struct:6:52. |
| 2f1e0 | 66 75 6e 63 74 69 6f 6e 3a 20 4c 69 73 74 28 69 33 32 29 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 | function:.List(i32).</code></pre |
| 2f200 | 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 41 6e 6f 6e 79 6d 6f | >................<h2.id="Anonymo |
| 2f220 | 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 3d 22 23 74 6f | us-Struct-Literals"><a.href="#to |
| 2f240 | 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 22 3e 41 6e 6f | c-Anonymous-Struct-Literals">Ano |
| 2f260 | 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 3c 61 20 63 6c | nymous.Struct.Literals</a>.<a.cl |
| 2f280 | 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 53 74 72 75 63 | ass="hdr".href="#Anonymous-Struc |
| 2f2a0 | 74 2d 4c 69 74 65 72 61 6c 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c | t-Literals">..</a></h2>........< |
| 2f2c0 | 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 67 20 74 68 65 | p>.......Zig.allows.omitting.the |
| 2f2e0 | 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 57 68 65 6e 20 | .struct.type.of.a.literal..When. |
| 2f300 | 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 65 2d 43 6f 65 | the.result.is.<a.href="#Type-Coe |
| 2f320 | 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 68 65 20 73 74 | rcion">coerced</a>,.......the.st |
| 2f340 | 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 69 6e 73 74 61 | ruct.literal.will.directly.insta |
| 2f360 | 6e 74 69 61 74 65 20 74 68 65 20 72 65 73 75 6c 74 20 6c 6f 63 61 74 69 6f 6e 2c 20 77 69 74 68 | ntiate.the.result.location,.with |
| 2f380 | 20 6e 6f 20 63 6f 70 79 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c | .no.copy:.......</p>.......<p.cl |
| 2f3a0 | 61 73 73 3d 22 66 69 6c 65 22 3e 73 74 72 75 63 74 5f 72 65 73 75 6c 74 2e 7a 69 67 3c 2f 70 3e | ass="file">struct_result.zig</p> |
| 2f3c0 | 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 | <pre><code.class="zig"><span.cla |
| 2f3e0 | 73 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.=.< |
| 2f400 | 73 70 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 |
| 2f420 | 3c 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 |
| 2f440 | 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 |
| 2f460 | 73 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. |
| 2f480 | 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 |
| 2f4a0 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 50 6f 69 6e 74 20 3d | ss="tok-kw">const</span>.Point.= |
| 2f4c0 | 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 |
| 2f4e0 | 61 6e 3e 20 7b 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 | an>.{x:.<span.class="tok-type">i |
| 2f500 | 33 32 3c 2f 73 70 61 6e 3e 2c 20 79 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | 32</span>,.y:.<span.class="tok-t |
| 2f520 | 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ype">i32</span>};..<span.class=" |
| 2f540 | 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= |
| 2f560 | 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 73 74 72 75 63 74 | "tok-str">"anonymous.struct |
| 2f580 | 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 20 20 3c 73 70 61 | .literal"</span>.{.....<spa |
| 2f5a0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 70 74 3a 20 | n.class="tok-kw">var</span>.pt:. |
| 2f5c0 | 50 6f 69 6e 74 20 3d 20 2e 7b 0a 20 20 20 20 20 20 20 20 2e 78 20 3d 20 3c 73 70 61 6e 20 63 6c | Point.=..{..........x.=.<span.cl |
| 2f5e0 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 33 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 | ass="tok-number">13</span>,..... |
| 2f600 | 20 20 20 20 2e 79 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | .....y.=.<span.class="tok-number |
| 2f620 | 22 3e 36 37 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 7d 3b 0a 20 20 20 20 65 78 70 65 63 74 28 70 | ">67</span>,.....};.....expect(p |
| 2f640 | 74 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 | t.x.==.<span.class="tok-number"> |
| 2f660 | 31 33 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 65 78 70 65 63 74 28 70 74 2e 79 20 3d 3d 20 3c | 13</span>);.....expect(pt.y.==.< |
| 2f680 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 36 37 3c 2f 73 70 61 6e | span.class="tok-number">67</span |
| 2f6a0 | 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 | >);.}</code></pre><pre><code.cla |
| 2f6c0 | 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 73 74 72 75 63 74 5f 72 65 73 | ss="shell">$.zig.test.struct_res |
| 2f6e0 | 75 6c 74 2e 7a 69 67 0a 31 2f 31 20 74 65 73 74 20 26 71 75 6f 74 3b 61 6e 6f 6e 79 6d 6f 75 73 | ult.zig.1/1.test."anonymous |
| 2f700 | 20 73 74 72 75 63 74 20 6c 69 74 65 72 61 6c 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 41 6c 6c 20 | .struct.literal"....OK.All. |
| 2f720 | 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 | 1.tests.passed..</code></pre>... |
| 2f740 | 20 20 20 20 20 3c 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 | .....<p>.......The.struct.type.c |
| 2f760 | 61 6e 20 62 65 20 69 6e 66 65 72 72 65 64 2e 20 48 65 72 65 20 74 68 65 20 72 65 73 75 6c 74 20 | an.be.inferred..Here.the.result. |
| 2f780 | 6c 6f 63 61 74 69 6f 6e 20 64 6f 65 73 20 6e 6f 74 20 69 6e 63 6c 75 64 65 20 61 20 74 79 70 65 | location.does.not.include.a.type |
| 2f7a0 | 2c 20 61 6e 64 0a 20 20 20 20 20 20 73 6f 20 5a 69 67 20 69 6e 66 65 72 73 20 74 68 65 20 74 79 | ,.and.......so.Zig.infers.the.ty |
| 2f7c0 | 70 65 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 | pe:.......</p>.......<p.class="f |
| 2f7e0 | 69 6c 65 22 3e 73 74 72 75 63 74 5f 61 6e 6f 6e 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f | ile">struct_anon.zig</p><pre><co |
| 2f800 | 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | de.class="zig"><span.class="tok- |
| 2f820 | 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 |
| 2f840 | 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>( |
| 2f860 | 3c 73 70 61 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& |
| 2f880 | 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- |
| 2f8a0 | 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 |
| 2f8c0 | 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- |
| 2f8e0 | 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 |
| 2f900 | 2d 73 74 72 22 3e 26 71 75 6f 74 3b 66 75 6c 6c 79 20 61 6e 6f 6e 79 6d 6f 75 73 20 73 74 72 75 | -str">"fully.anonymous.stru |
| 2f920 | 63 74 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 64 75 6d 70 28 2e 7b 0a 20 20 | ct"</span>.{.....dump(.{... |
| 2f940 | 20 20 20 20 20 20 2e 69 6e 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 | .......int.=.<span.class="tok-bu |
| 2f960 | 69 6c 74 69 6e 22 3e 40 61 73 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | iltin">@as</span>(<span.class="t |
| 2f980 | 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ok-type">u32</span>,.<span.class |
| 2f9a0 | 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 2c 0a 20 20 20 20 | ="tok-number">1234</span>),..... |
| 2f9c0 | 20 20 20 20 2e 66 6c 6f 61 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 | .....float.=.<span.class="tok-bu |
| 2f9e0 | 69 6c 74 69 6e 22 3e 40 61 73 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | iltin">@as</span>(<span.class="t |
| 2fa00 | 6f 6b 2d 74 79 70 65 22 3e 66 36 34 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ok-type">f64</span>,.<span.class |
| 2fa20 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 2e 33 34 3c 2f 73 70 61 6e 3e 29 2c 0a 20 20 20 | ="tok-number">12.34</span>),.... |
| 2fa40 | 20 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 6c 6c 22 | ......b.=.<span.class="tok-null" |
| 2fa60 | 3e 74 72 75 65 3c 2f 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 | >true</span>,..........s.=.<span |
| 2fa80 | 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"< |
| 2faa0 | 2f 73 70 61 6e 3e 2c 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 | /span>,.....});.}..<span.class=" |
| 2fac0 | 74 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 |
| 2fae0 | 6f 6b 2d 66 6e 22 3e 64 75 6d 70 3c 2f 73 70 61 6e 3e 28 61 72 67 73 3a 20 3c 73 70 61 6e 20 63 | ok-fn">dump</span>(args:.<span.c |
| 2fb00 | 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 |
| 2fb20 | 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> |
| 2fb40 | 20 7b 0a 20 20 20 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 | .{.....expect(args.int.==.<span. |
| 2fb60 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 29 3b | class="tok-number">1234</span>); |
| 2fb80 | 0a 20 20 20 20 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 | .....expect(args.float.==.<span. |
| 2fba0 | 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 29 | class="tok-number">12.34</span>) |
| 2fbc0 | 3b 0a 20 20 20 20 65 78 70 65 63 74 28 61 72 67 73 2e 62 29 3b 0a 20 20 20 20 65 78 70 65 63 74 | ;.....expect(args.b);.....expect |
| 2fbe0 | 28 61 72 67 73 2e 73 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 | (args.s[<span.class="tok-number" |
| 2fc00 | 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 73 | >0</span>].==.<span.class="tok-s |
| 2fc20 | 74 72 22 3e 27 68 27 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 65 78 70 65 63 74 28 61 72 67 73 | tr">'h'</span>);.....expect(args |
| 2fc40 | 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 31 3c 2f 73 | .s[<span.class="tok-number">1</s |
| 2fc60 | 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">' |
| 2fc80 | 69 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 3c 70 72 65 3e 3c | i'</span>);.}</code></pre><pre>< |
| 2fca0 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 73 74 | code.class="shell">$.zig.test.st |
| 2fcc0 | 72 75 63 74 5f 61 6e 6f 6e 2e 7a 69 67 0a 31 2f 31 20 74 65 73 74 20 26 71 75 6f 74 3b 66 75 6c | ruct_anon.zig.1/1.test."ful |
| 2fce0 | 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 2e 2e 2e 20 4f 4b 0a | ly.anonymous.struct"....OK. |
| 2fd00 | 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 | All.1.tests.passed..</code></pre |
| 2fd20 | 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e | >...............<p>See.also:</p> |
| 2fd40 | 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 63 6f 6d 70 74 69 6d 65 22 3e 63 6f 6d | <ul>.<li><a.href="#comptime">com |
| 2fd60 | 70 74 69 6d 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 66 69 65 | ptime</a></li>.<li><a.href="#fie |
| 2fd80 | 6c 64 50 61 72 65 6e 74 50 74 72 22 3e 40 66 69 65 6c 64 50 61 72 65 6e 74 50 74 72 3c 2f 61 3e | ldParentPtr">@fieldParentPtr</a> |
| 2fda0 | 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 31 20 69 64 | </li>.</ul>...............<h1.id |
| 2fdc0 | 3d 22 65 6e 75 6d 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 65 6e 75 6d 22 3e 65 6e 75 6d | ="enum"><a.href="#toc-enum">enum |
| 2fde0 | 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 65 6e 75 6d 22 | </a>.<a.class="hdr".href="#enum" |
| 2fe00 | 3e c2 a7 3c 2f 61 3e 3c 2f 68 31 3e 0a 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 | >..</a></h1>........<p.class="fi |
| 2fe20 | 6c 65 22 3e 65 6e 75 6d 73 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 | le">enums.zig</p><pre><code.clas |
| 2fe40 | 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e | s="zig"><span.class="tok-kw">con |
| 2fe60 | 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=" |
| 2fe80 | 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 |
| 2fea0 | 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" |
| 2fec0 | 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. |
| 2fee0 | 63 6c 61 73 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. |
| 2ff00 | 3d 20 3c 73 70 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 |
| 2ff20 | 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" |
| 2ff40 | 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;..< |
| 2ff60 | 73 70 61 6e 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 |
| 2ff80 | 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= |
| 2ffa0 | 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 |
| 2ffc0 | 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>.{. |
| 2ffe0 | 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 |
| 30000 | 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 |
| 30020 | 70 65 63 69 66 69 63 20 69 6e 73 74 61 6e 63 65 20 6f 66 20 74 68 65 20 65 6e 75 6d 20 76 61 72 | pecific.instance.of.the.enum.var |
| 30040 | 69 61 6e 74 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | iant.</span>.<span.class="tok-kw |
| 30060 | 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 63 20 3d 20 54 79 70 65 2e 6f 6b 3b 0a 0a 3c 73 70 | ">const</span>.c.=.Type.ok;..<sp |
| 30080 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 49 66 20 79 6f 75 | an.class="tok-comment">//.If.you |
| 300a0 | 20 77 61 6e 74 20 61 63 63 65 73 73 20 74 6f 20 74 68 65 20 6f 72 64 69 6e 61 6c 20 76 61 6c 75 | .want.access.to.the.ordinal.valu |
| 300c0 | 65 20 6f 66 20 61 6e 20 65 6e 75 6d 2c 20 79 6f 75 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 | e.of.an.enum,.you</span>.<span.c |
| 300e0 | 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 63 61 6e 20 73 70 65 63 69 66 | lass="tok-comment">//.can.specif |
| 30100 | 79 20 74 68 65 20 74 61 67 20 74 79 70 65 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 | y.the.tag.type.</span>.<span.cla |
| 30120 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 56 61 6c 75 65 20 3d | ss="tok-kw">const</span>.Value.= |
| 30140 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6e 75 6d 3c 2f 73 70 61 6e | .<span.class="tok-kw">enum</span |
| 30160 | 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 32 3c 2f 73 70 61 | >(<span.class="tok-type">u2</spa |
| 30180 | 6e 3e 29 20 7b 0a 20 20 20 20 7a 65 72 6f 2c 0a 20 20 20 20 6f 6e 65 2c 0a 20 20 20 20 74 77 6f | n>).{.....zero,.....one,.....two |
| 301a0 | 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e | ,.};..<span.class="tok-comment"> |
| 301c0 | 2f 2f 20 4e 6f 77 20 79 6f 75 20 63 61 6e 20 63 61 73 74 20 62 65 74 77 65 65 6e 20 75 32 20 61 | //.Now.you.can.cast.between.u2.a |
| 301e0 | 6e 64 20 56 61 6c 75 65 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | nd.Value.</span>.<span.class="to |
| 30200 | 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 65 20 6f 72 64 69 6e 61 6c 20 76 61 6c 75 65 20 | k-comment">//.The.ordinal.value. |
| 30220 | 73 74 61 72 74 73 20 66 72 6f 6d 20 30 2c 20 63 6f 75 6e 74 69 6e 67 20 75 70 20 66 6f 72 20 65 | starts.from.0,.counting.up.for.e |
| 30240 | 61 63 68 20 6d 65 6d 62 65 72 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ach.member.</span>.<span.class=" |
| 30260 | 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= |
| 30280 | 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 65 6e 75 6d 20 6f 72 64 69 6e 61 6c 20 76 61 6c | "tok-str">"enum.ordinal.val |
| 302a0 | 75 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 65 78 70 65 63 74 28 3c 73 70 | ue"</span>.{.....expect(<sp |
| 302c0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 65 6e 75 6d 54 6f 49 6e | an.class="tok-builtin">@enumToIn |
| 302e0 | 74 3c 2f 73 70 61 6e 3e 28 56 61 6c 75 65 2e 7a 65 72 6f 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c | t</span>(Value.zero).==.<span.cl |
| 30300 | 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>);..... |
| 30320 | 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" |
| 30340 | 3e 40 65 6e 75 6d 54 6f 49 6e 74 3c 2f 73 70 61 6e 3e 28 56 61 6c 75 65 2e 6f 6e 65 29 20 3d 3d | >@enumToInt</span>(Value.one).== |
| 30360 | 20 3c 73 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 |
| 30380 | 6e 3e 29 3b 0a 20 20 20 20 65 78 70 65 63 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | n>);.....expect(<span.class="tok |
| 303a0 | 2d 62 75 69 6c 74 69 6e 22 3e 40 65 6e 75 6d 54 6f 49 6e 74 3c 2f 73 70 61 6e 3e 28 56 61 6c 75 | -builtin">@enumToInt</span>(Valu |
| 303c0 | 65 2e 74 77 6f 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | e.two).==.<span.class="tok-numbe |
| 303e0 | 72 22 3e 32 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | r">2</span>);.}..<span.class="to |
| 30400 | 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 59 6f 75 20 63 61 6e 20 6f 76 65 72 72 69 64 65 20 74 | k-comment">//.You.can.override.t |
| 30420 | 68 65 20 6f 72 64 69 6e 61 6c 20 76 61 6c 75 65 20 66 6f 72 20 61 6e 20 65 6e 75 6d 2e 3c 2f 73 | he.ordinal.value.for.an.enum.</s |
| 30440 | 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< |
| 30460 | 2f 73 70 61 6e 3e 20 56 61 6c 75 65 32 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | /span>.Value2.=.<span.class="tok |
| 30480 | 2d 6b 77 22 3e 65 6e 75 6d 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | -kw">enum</span>(<span.class="to |
| 304a0 | 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 68 75 6e 64 72 65 | k-type">u32</span>).{.....hundre |
| 304c0 | 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 30 | d.=.<span.class="tok-number">100 |
| 304e0 | 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 74 68 6f 75 73 61 6e 64 20 3d 20 3c 73 70 61 6e 20 63 6c | </span>,.....thousand.=.<span.cl |
| 30500 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 30 30 3c 2f 73 70 61 6e 3e 2c 0a 20 20 | ass="tok-number">1000</span>,... |
| 30520 | 20 20 6d 69 6c 6c 69 6f 6e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | ..million.=.<span.class="tok-num |
| 30540 | 62 65 72 22 3e 31 30 30 30 30 30 30 3c 2f 73 70 61 6e 3e 2c 0a 7d 3b 0a 3c 73 70 61 6e 20 63 6c | ber">1000000</span>,.};.<span.cl |
| 30560 | 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 |
| 30580 | 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 65 74 20 65 6e 75 6d 20 6f 72 | lass="tok-str">"set.enum.or |
| 305a0 | 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 65 | dinal.value"</span>.{.....e |
| 305c0 | 78 70 65 63 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e | xpect(<span.class="tok-builtin"> |
| 305e0 | 40 65 6e 75 6d 54 6f 49 6e 74 3c 2f 73 70 61 6e 3e 28 56 61 6c 75 65 32 2e 68 75 6e 64 72 65 64 | @enumToInt</span>(Value2.hundred |
| 30600 | 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 | ).==.<span.class="tok-number">10 |
| 30620 | 30 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 65 78 70 65 63 74 28 3c 73 70 61 6e 20 63 6c 61 73 | 0</span>);.....expect(<span.clas |
| 30640 | 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 65 6e 75 6d 54 6f 49 6e 74 3c 2f 73 70 61 6e | s="tok-builtin">@enumToInt</span |
| 30660 | 3e 28 56 61 6c 75 65 32 2e 74 68 6f 75 73 61 6e 64 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | >(Value2.thousand).==.<span.clas |
| 30680 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 30 30 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 | s="tok-number">1000</span>);.... |
| 306a0 | 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 |
| 306c0 | 22 3e 40 65 6e 75 6d 54 6f 49 6e 74 3c 2f 73 70 61 6e 3e 28 56 61 6c 75 65 32 2e 6d 69 6c 6c 69 | ">@enumToInt</span>(Value2.milli |
| 306e0 | 6f 6e 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e | on).==.<span.class="tok-number"> |
| 30700 | 31 30 30 30 30 30 30 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | 1000000</span>);.}..<span.class= |
| 30720 | 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 45 6e 75 6d 73 20 63 61 6e 20 68 61 76 65 20 | "tok-comment">//.Enums.can.have. |
| 30740 | 6d 65 74 68 6f 64 73 2c 20 74 68 65 20 73 61 6d 65 20 61 73 20 73 74 72 75 63 74 73 20 61 6e 64 | methods,.the.same.as.structs.and |
| 30760 | 20 75 6e 69 6f 6e 73 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | .unions.</span>.<span.class="tok |
| 30780 | 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 45 6e 75 6d 20 6d 65 74 68 6f 64 73 20 61 72 65 20 6e 6f | -comment">//.Enum.methods.are.no |
| 307a0 | 74 20 73 70 65 63 69 61 6c 2c 20 74 68 65 79 20 61 72 65 20 6f 6e 6c 79 20 6e 61 6d 65 73 70 61 | t.special,.they.are.only.namespa |
| 307c0 | 63 65 64 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d | ced</span>.<span.class="tok-comm |
| 307e0 | 65 6e 74 22 3e 2f 2f 20 66 75 6e 63 74 69 6f 6e 73 20 74 68 61 74 20 79 6f 75 20 63 61 6e 20 63 | ent">//.functions.that.you.can.c |
| 30800 | 61 6c 6c 20 77 69 74 68 20 64 6f 74 20 73 79 6e 74 61 78 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 | all.with.dot.syntax.</span>.<spa |
| 30820 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 53 75 | n.class="tok-kw">const</span>.Su |
| 30840 | 69 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6e 75 6d 3c 2f | it.=.<span.class="tok-kw">enum</ |
| 30860 | 73 70 61 6e 3e 20 7b 0a 20 20 20 20 63 6c 75 62 73 2c 0a 20 20 20 20 73 70 61 64 65 73 2c 0a 20 | span>.{.....clubs,.....spades,.. |
| 30880 | 20 20 20 64 69 61 6d 6f 6e 64 73 2c 0a 20 20 20 20 68 65 61 72 74 73 2c 0a 0a 20 20 20 20 3c 73 | ...diamonds,.....hearts,......<s |
| 308a0 | 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 |
| 308c0 | 70 61 6e 20 63 6c 61 73 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 |
| 308e0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 69 73 43 6c 75 62 73 3c 2f 73 70 61 6e 3e | an.class="tok-fn">isClubs</span> |
| 30900 | 28 73 65 6c 66 3a 20 53 75 69 74 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | (self:.Suit).<span.class="tok-ty |
| 30920 | 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 | pe">bool</span>.{.........<span. |
| 30940 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 73 65 6c | class="tok-kw">return</span>.sel |
| 30960 | 66 20 3d 3d 20 53 75 69 74 2e 63 6c 75 62 73 3b 0a 20 20 20 20 7d 0a 7d 3b 0a 3c 73 70 61 6e 20 | f.==.Suit.clubs;.....}.};.<span. |
| 30980 | 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 |
| 309a0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 65 6e 75 6d 20 6d 65 74 68 | .class="tok-str">"enum.meth |
| 309c0 | 6f 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | od"</span>.{.....<span.clas |
| 309e0 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 70 20 3d 20 53 75 69 74 | s="tok-kw">const</span>.p.=.Suit |
| 30a00 | 2e 73 70 61 64 65 73 3b 0a 20 20 20 20 65 78 70 65 63 74 28 21 70 2e 69 73 43 6c 75 62 73 28 29 | .spades;.....expect(!p.isClubs() |
| 30a20 | 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"> |
| 30a40 | 2f 2f 20 41 6e 20 65 6e 75 6d 20 76 61 72 69 61 6e 74 20 6f 66 20 64 69 66 66 65 72 65 6e 74 20 | //.An.enum.variant.of.different. |
| 30a60 | 74 79 70 65 73 20 63 61 6e 20 62 65 20 73 77 69 74 63 68 65 64 20 75 70 6f 6e 2e 3c 2f 73 70 61 | types.can.be.switched.upon.</spa |
| 30a80 | 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 |
| 30aa0 | 70 61 6e 3e 20 46 6f 6f 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | pan>.Foo.=.<span.class="tok-kw"> |
| 30ac0 | 65 6e 75 6d 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 73 74 72 69 6e 67 2c 0a 20 20 20 20 6e 75 | enum</span>.{.....string,.....nu |
| 30ae0 | 6d 62 65 72 2c 0a 20 20 20 20 6e 6f 6e 65 2c 0a 7d 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | mber,.....none,.};.<span.class=" |
| 30b00 | 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= |
| 30b20 | 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 65 6e 75 6d 20 76 61 72 69 61 6e 74 20 73 77 69 | "tok-str">"enum.variant.swi |
| 30b40 | 74 63 68 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | tch"</span>.{.....<span.cla |
| 30b60 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 70 20 3d 20 46 6f 6f | ss="tok-kw">const</span>.p.=.Foo |
| 30b80 | 2e 6e 75 6d 62 65 72 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | .number;.....<span.class="tok-kw |
| 30ba0 | 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 77 68 61 74 5f 69 73 5f 69 74 20 3d 20 3c 73 70 61 | ">const</span>.what_is_it.=.<spa |
| 30bc0 | 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>.( |
| 30be0 | 70 29 20 7b 0a 20 20 20 20 20 20 20 20 46 6f 6f 2e 73 74 72 69 6e 67 20 3d 26 67 74 3b 20 3c 73 | p).{.........Foo.string.=>.<s |
| 30c00 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 74 68 69 73 20 69 | pan.class="tok-str">"this.i |
| 30c20 | 73 20 61 20 73 74 72 69 6e 67 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 | s.a.string"</span>,........ |
| 30c40 | 20 46 6f 6f 2e 6e 75 6d 62 65 72 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | .Foo.number.=>.<span.class="t |
| 30c60 | 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 74 68 69 73 20 69 73 20 61 20 6e 75 6d 62 65 72 26 71 | ok-str">"this.is.a.number&q |
| 30c80 | 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 46 6f 6f 2e 6e 6f 6e 65 20 3d 26 | uot;</span>,.........Foo.none.=& |
| 30ca0 | 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b | gt;.<span.class="tok-str">" |
| 30cc0 | 74 68 69 73 20 69 73 20 61 20 6e 6f 6e 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 | this.is.a.none"</span>,.... |
| 30ce0 | 20 7d 3b 0a 20 20 20 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 | .};.....expect(mem.eql(<span.cla |
| 30d00 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 77 68 61 74 5f 69 73 | ss="tok-type">u8</span>,.what_is |
| 30d20 | 5f 69 74 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 | _it,.<span.class="tok-str">" |
| 30d40 | 3b 74 68 69 73 20 69 73 20 61 20 6e 75 6d 62 65 72 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 29 | ;this.is.a.number"</span>)) |
| 30d60 | 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">/ |
| 30d80 | 2f 20 40 54 61 67 54 79 70 65 20 63 61 6e 20 62 65 20 75 73 65 64 20 74 6f 20 61 63 63 65 73 73 | /.@TagType.can.be.used.to.access |
| 30da0 | 20 74 68 65 20 69 6e 74 65 67 65 72 20 74 61 67 20 74 79 70 65 20 6f 66 20 61 6e 20 65 6e 75 6d | .the.integer.tag.type.of.an.enum |
| 30dc0 | 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f | .</span>.<span.class="tok-kw">co |
| 30de0 | 6e 73 74 3c 2f 73 70 61 6e 3e 20 53 6d 61 6c 6c 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | nst</span>.Small.=.<span.class=" |
| 30e00 | 74 6f 6b 2d 6b 77 22 3e 65 6e 75 6d 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 6f 6e 65 2c 0a 20 | tok-kw">enum</span>.{.....one,.. |
| 30e20 | 20 20 20 74 77 6f 2c 0a 20 20 20 20 74 68 72 65 65 2c 0a 20 20 20 20 66 6f 75 72 2c 0a 7d 3b 0a | ...two,.....three,.....four,.};. |
| 30e40 | 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> |
| 30e60 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 40 54 61 | .<span.class="tok-str">"@Ta |
| 30e80 | 67 54 79 70 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 65 78 70 65 63 74 28 | gType"</span>.{.....expect( |
| 30ea0 | 3c 73 70 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 61 67 54 79 | <span.class="tok-builtin">@TagTy |
| 30ec0 | 70 65 3c 2f 73 70 61 6e 3e 28 53 6d 61 6c 6c 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | pe</span>(Small).==.<span.class= |
| 30ee0 | 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 61 6e 20 | "tok-type">u2</span>);.}..<span. |
| 30f00 | 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 6e 66 6f | class="tok-comment">//.@typeInfo |
| 30f20 | 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 20 74 68 | .tells.us.the.field.count.and.th |
| 30f40 | 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 63 6c 61 | e.fields.names:</span>.<span.cla |
| 30f60 | 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 |
| 30f80 | 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 26 71 75 | ass="tok-str">"@typeInfo&qu |
| 30fa0 | 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 65 78 70 65 63 74 28 3c 73 70 61 6e 20 63 6c | ot;</span>.{.....expect(<span.cl |
| 30fc0 | 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 74 79 70 65 49 6e 66 6f 3c 2f 73 70 61 | ass="tok-builtin">@typeInfo</spa |
| 30fe0 | 6e 3e 28 53 6d 61 6c 6c 29 2e 45 6e 75 6d 2e 66 69 65 6c 64 73 2e 6c 65 6e 20 3d 3d 20 3c 73 70 | n>(Small).Enum.fields.len.==.<sp |
| 31000 | 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>); |
| 31020 | 0a 20 20 20 20 65 78 70 65 63 74 28 6d 65 6d 2e 65 71 6c 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d | .....expect(mem.eql(<span.class= |
| 31040 | 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 |
| 31060 | 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> |
| 31080 | 28 53 6d 61 6c 6c 29 2e 45 6e 75 6d 2e 66 69 65 6c 64 73 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d | (Small).Enum.fields[<span.class= |
| 310a0 | 22 74 6f 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 | "tok-number">1</span>].name,.<sp |
| 310c0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 74 77 6f 26 71 75 6f | an.class="tok-str">"two&quo |
| 310e0 | 74 3b 3c 2f 73 70 61 6e 3e 29 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | t;</span>));.}..<span.class="tok |
| 31100 | 2d 63 6f 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 5d | -comment">//.@tagName.gives.a.[] |
| 31120 | 63 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 | const.u8.representation.of.an.en |
| 31140 | 75 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 | um.value:</span>.<span.class="to |
| 31160 | 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 |
| 31180 | 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 40 74 61 67 4e 61 6d 65 26 71 75 6f 74 3b 3c 2f 73 70 | ok-str">"@tagName"</sp |
| 311a0 | 61 6e 3e 20 7b 0a 20 20 20 20 65 78 70 65 63 74 28 6d 65 6d 2e 65 71 6c 28 3c 73 70 61 6e 20 63 | an>.{.....expect(mem.eql(<span.c |
| 311c0 | 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e | lass="tok-type">u8</span>,.<span |
| 311e0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 74 61 67 4e 61 6d 65 3c 2f 73 | .class="tok-builtin">@tagName</s |
| 31200 | 70 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 | pan>(Small.three),.<span.class=" |
| 31220 | 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 74 68 72 65 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e | tok-str">"three"</span |
| 31240 | 3e 29 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c | >));.}</code></pre><pre><code.cl |
| 31260 | 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 65 6e 75 6d 73 2e 7a 69 67 | ass="shell">$.zig.test.enums.zig |
| 31280 | 0a 31 2f 37 20 74 65 73 74 20 26 71 75 6f 74 3b 65 6e 75 6d 20 6f 72 64 69 6e 61 6c 20 76 61 6c | .1/7.test."enum.ordinal.val |
| 312a0 | 75 65 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 32 2f 37 20 74 65 73 74 20 26 71 75 6f 74 3b 73 65 | ue"....OK.2/7.test."se |
| 312c0 | 74 20 65 6e 75 6d 20 6f 72 64 69 6e 61 6c 20 76 61 6c 75 65 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b | t.enum.ordinal.value"....OK |
| 312e0 | 0a 33 2f 37 20 74 65 73 74 20 26 71 75 6f 74 3b 65 6e 75 6d 20 6d 65 74 68 6f 64 26 71 75 6f 74 | .3/7.test."enum.method" |
| 31300 | 3b 2e 2e 2e 20 4f 4b 0a 34 2f 37 20 74 65 73 74 20 26 71 75 6f 74 3b 65 6e 75 6d 20 76 61 72 69 | ;....OK.4/7.test."enum.vari |
| 31320 | 61 6e 74 20 73 77 69 74 63 68 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 35 2f 37 20 74 65 73 74 20 | ant.switch"....OK.5/7.test. |
| 31340 | 26 71 75 6f 74 3b 40 54 61 67 54 79 70 65 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 36 2f 37 20 74 | "@TagType"....OK.6/7.t |
| 31360 | 65 73 74 20 26 71 75 6f 74 3b 40 74 79 70 65 49 6e 66 6f 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a | est."@typeInfo"....OK. |
| 31380 | 37 2f 37 20 74 65 73 74 20 26 71 75 6f 74 3b 40 74 61 67 4e 61 6d 65 26 71 75 6f 74 3b 2e 2e 2e | 7/7.test."@tagName"... |
| 313a0 | 20 4f 4b 0a 41 6c 6c 20 37 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c | .OK.All.7.tests.passed..</code>< |
| 313c0 | 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c | /pre>........<p>See.also:</p><ul |
| 313e0 | 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 49 | >.<li><a.href="#typeInfo">@typeI |
| 31400 | 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 74 61 67 4e 61 | nfo</a></li>.<li><a.href="#tagNa |
| 31420 | 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 61 20 68 72 65 | me">@tagName</a></li>.<li><a.hre |
| 31440 | 66 3d 22 23 73 69 7a 65 4f 66 22 3e 40 73 69 7a 65 4f 66 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 | f="#sizeOf">@sizeOf</a></li>.</u |
| 31460 | 6c 3e 0a 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 65 78 74 65 72 6e 2d 65 6e 75 6d 22 3e | l>.........<h2.id="extern-enum"> |
| 31480 | 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 65 78 74 65 72 | <a.href="#toc-extern-enum">exter |
| 314a0 | 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 72 65 66 3d 22 | n.enum</a>.<a.class="hdr".href=" |
| 314c0 | 23 65 78 74 65 72 6e 2d 65 6e 75 6d 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 | #extern-enum">..</a></h2>....... |
| 314e0 | 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 73 20 61 72 65 | .<p>.......By.default,.enums.are |
| 31500 | 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 74 69 62 6c 65 | .not.guaranteed.to.be.compatible |
| 31520 | 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 0a 20 20 20 20 | .with.the.C.ABI:.......</p>..... |
| 31540 | 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 | ..<p.class="file">test.zig</p><p |
| 31560 | 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | re><code.class="zig"><span.class |
| 31580 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 46 6f 6f 20 3d 20 3c 73 70 | ="tok-kw">const</span>.Foo.=.<sp |
| 315a0 | 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 20 | an.class="tok-kw">enum</span>.{. |
| 315c0 | 61 2c 20 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 | a,.b,.c.};.<span.class="tok-kw"> |
| 315e0 | 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 |
| 31600 | 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 |
| 31620 | 22 3e 65 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 | ">entry</span>(foo:.Foo).<span.c |
| 31640 | 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 20 7d 3c | lass="tok-type">void</span>.{.}< |
| 31660 | 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 | /code></pre><pre><code.class="sh |
| 31680 | 65 6c 6c 22 3e 24 20 7a 69 67 20 62 75 69 6c 64 2d 6f 62 6a 20 74 65 73 74 2e 7a 69 67 0a 3c 73 | ell">$.zig.build-obj.test.zig.<s |
| 316a0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 | pan.class="t0_1">./docgen_tmp/te |
| 316c0 | 73 74 2e 7a 69 67 3a 32 3a 32 32 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | st.zig:2:22:.</span><span.class= |
| 316e0 | 22 74 33 31 5f 31 22 3e 65 72 72 6f 72 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 | "t31_1">error:.</span><span.clas |
| 31700 | 73 3d 22 74 30 5f 31 22 3e 70 61 72 61 6d 65 74 65 72 20 6f 66 20 74 79 70 65 20 27 46 6f 6f 27 | s="t0_1">parameter.of.type.'Foo' |
| 31720 | 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 61 | .not.allowed.in.function.with.ca |
| 31740 | 6c 6c 69 6e 67 20 63 6f 6e 76 65 6e 74 69 6f 6e 20 27 43 27 3c 2f 73 70 61 6e 3e 0a 65 78 70 6f | lling.convention.'C'</span>.expo |
| 31760 | 72 74 20 66 6e 20 65 6e 74 72 79 28 66 6f 6f 3a 20 46 6f 6f 29 20 76 6f 69 64 20 7b 20 0a 20 20 | rt.fn.entry(foo:.Foo).void.{.... |
| 31780 | 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=" |
| 317a0 | 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 | t32_1">^</span>.</code></pre>... |
| 317c0 | 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 46 6f 72 20 61 20 43 2d 41 42 49 2d 63 6f 6d 70 61 | .....<p>.......For.a.C-ABI-compa |
| 317e0 | 74 69 62 6c 65 20 65 6e 75 6d 2c 20 75 73 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | tible.enum,.use.<code.class="zig |
| 31800 | 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 78 74 65 72 6e 3c 2f 73 | "><span.class="tok-kw">extern</s |
| 31820 | 70 61 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 6e 75 6d 3c 2f | pan>.<span.class="tok-kw">enum</ |
| 31840 | 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c | span></code>:.......</p>.......< |
| 31860 | 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e | p.class="file">test.zig</p><pre> |
| 31880 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | <code.class="zig"><span.class="t |
| 318a0 | 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. |
| 318c0 | 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 |
| 318e0 | 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 20 | an.class="tok-kw">enum</span>.{. |
| 31900 | 61 2c 20 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 | a,.b,.c.};.<span.class="tok-kw"> |
| 31920 | 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 |
| 31940 | 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 |
| 31960 | 22 3e 65 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 | ">entry</span>(foo:.Foo).<span.c |
| 31980 | 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 20 7d 3c | lass="tok-type">void</span>.{.}< |
| 319a0 | 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 | /code></pre><pre><code.class="sh |
| 319c0 | 65 6c 6c 22 3e 24 20 7a 69 67 20 62 75 69 6c 64 2d 6f 62 6a 20 74 65 73 74 2e 7a 69 67 3c 2f 63 | ell">$.zig.build-obj.test.zig</c |
| 319e0 | 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 | ode></pre>................<h2.id |
| 31a00 | 3d 22 70 61 63 6b 65 64 2d 65 6e 75 6d 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 70 61 63 | ="packed-enum"><a.href="#toc-pac |
| 31a20 | 6b 65 64 2d 65 6e 75 6d 22 3e 70 61 63 6b 65 64 20 65 6e 75 6d 3c 2f 61 3e 20 3c 61 20 63 6c 61 | ked-enum">packed.enum</a>.<a.cla |
| 31a40 | 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 70 61 63 6b 65 64 2d 65 6e 75 6d 22 3e c2 a7 3c | ss="hdr".href="#packed-enum">..< |
| 31a60 | 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 42 79 20 64 65 66 61 75 6c 74 2c 20 74 | /a></h2>........<p>By.default,.t |
| 31a80 | 68 65 20 73 69 7a 65 20 6f 66 20 65 6e 75 6d 73 20 69 73 20 6e 6f 74 20 67 75 61 72 61 6e 74 65 | he.size.of.enums.is.not.guarante |
| 31aa0 | 65 64 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | ed.</p>.......<p><code.class="zi |
| 31ac0 | 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 61 63 6b 65 64 3c 2f | g"><span.class="tok-kw">packed</ |
| 31ae0 | 73 70 61 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 6e 75 6d 3c | span>.<span.class="tok-kw">enum< |
| 31b00 | 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 63 61 75 73 65 73 20 74 68 65 20 73 69 7a 65 20 6f 66 | /span></code>.causes.the.size.of |
| 31b20 | 20 74 68 65 20 65 6e 75 6d 20 74 6f 20 62 65 20 74 68 65 20 73 61 6d 65 20 61 73 20 74 68 65 20 | .the.enum.to.be.the.same.as.the. |
| 31b40 | 73 69 7a 65 20 6f 66 20 74 68 65 0a 20 20 20 20 20 20 69 6e 74 65 67 65 72 20 74 61 67 20 74 79 | size.of.the.......integer.tag.ty |
| 31b60 | 70 65 20 6f 66 20 74 68 65 20 65 6e 75 6d 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 | pe.of.the.enum:</p>.......<p.cla |
| 31b80 | 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 | ss="file">test.zig</p><pre><code |
| 31ba0 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | .class="zig"><span.class="tok-kw |
| 31bc0 | 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 |
| 31be0 | 3d 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 |
| 31c00 | 70 61 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 |
| 31c20 | 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 |
| 31c40 | 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- |
| 31c60 | 73 74 72 22 3e 26 71 75 6f 74 3b 70 61 63 6b 65 64 20 65 6e 75 6d 26 71 75 6f 74 3b 3c 2f 73 70 | str">"packed.enum"</sp |
| 31c80 | 61 6e 3e 20 7b 0a 20 20 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 |
| 31ca0 | 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 4e 75 6d 62 65 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | onst</span>.Number.=.<span.class |
| 31cc0 | 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 |
| 31ce0 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6e 75 6d 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 | ass="tok-kw">enum</span>(<span.c |
| 31d00 | 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 | lass="tok-type">u8</span>).{.... |
| 31d20 | 20 20 20 20 20 6f 6e 65 2c 0a 20 20 20 20 20 20 20 20 74 77 6f 2c 0a 20 20 20 20 20 20 20 20 74 | .....one,.........two,.........t |
| 31d40 | 68 72 65 65 2c 0a 20 20 20 20 7d 3b 0a 20 20 20 20 73 74 64 2e 74 65 73 74 69 6e 67 2e 65 78 70 | hree,.....};.....std.testing.exp |
| 31d60 | 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 73 | ect(<span.class="tok-builtin">@s |
| 31d80 | 69 7a 65 4f 66 3c 2f 73 70 61 6e 3e 28 4e 75 6d 62 65 72 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c | izeOf</span>(Number).==.<span.cl |
| 31da0 | 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 3e | ass="tok-builtin">@sizeOf</span> |
| 31dc0 | 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 |
| 31de0 | 3e 29 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c | >));.}</code></pre><pre><code.cl |
| 31e00 | 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a | ass="shell">$.zig.test.test.zig. |
| 31e20 | 31 2f 31 20 74 65 73 74 20 26 71 75 6f 74 3b 70 61 63 6b 65 64 20 65 6e 75 6d 26 71 75 6f 74 3b | 1/1.test."packed.enum" |
| 31e40 | 2e 2e 2e 20 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 | ....OK.All.1.tests.passed..</cod |
| 31e60 | 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 54 68 69 73 20 6d 61 6b 65 73 20 74 68 | e></pre>........<p>This.makes.th |
| 31e80 | 65 20 65 6e 75 6d 20 65 6c 69 67 69 62 6c 65 20 74 6f 20 62 65 20 69 6e 20 61 20 3c 61 20 68 72 | e.enum.eligible.to.be.in.a.<a.hr |
| 31ea0 | 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 63 | ef="#packed-struct">packed.struc |
| 31ec0 | 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 32 20 69 64 3d | t</a>.</p>...............<h2.id= |
| 31ee0 | 22 45 6e 75 6d 2d 4c 69 74 65 72 61 6c 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 45 6e | "Enum-Literals"><a.href="#toc-En |
| 31f00 | 75 6d 2d 4c 69 74 65 72 61 6c 73 22 3e 45 6e 75 6d 20 4c 69 74 65 72 61 6c 73 3c 2f 61 3e 20 3c | um-Literals">Enum.Literals</a>.< |
| 31f20 | 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 45 6e 75 6d 2d 4c 69 74 65 72 61 | a.class="hdr".href="#Enum-Litera |
| 31f40 | 6c 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 | ls">..</a></h2>........<p>...... |
| 31f60 | 20 45 6e 75 6d 20 6c 69 74 65 72 61 6c 73 20 61 6c 6c 6f 77 20 73 70 65 63 69 66 79 69 6e 67 20 | .Enum.literals.allow.specifying. |
| 31f80 | 74 68 65 20 6e 61 6d 65 20 6f 66 20 61 6e 20 65 6e 75 6d 20 66 69 65 6c 64 20 77 69 74 68 6f 75 | the.name.of.an.enum.field.withou |
| 31fa0 | 74 20 73 70 65 63 69 66 79 69 6e 67 20 74 68 65 20 65 6e 75 6d 20 74 79 70 65 3a 0a 20 20 20 20 | t.specifying.the.enum.type:..... |
| 31fc0 | 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 | ..</p>.......<p.class="file">tes |
| 31fe0 | 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e | t.zig</p><pre><code.class="zig"> |
| 32000 | 3c 73 70 61 6e 20 63 6c 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 |
| 32020 | 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 |
| 32040 | 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 |
| 32060 | 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>);. |
| 32080 | 3c 73 70 61 6e 20 63 6c 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 |
| 320a0 | 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;.. |
| 320c0 | 3c 73 70 61 6e 20 63 6c 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 |
| 320e0 | 3e 20 43 6f 6c 6f 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 | >.Color.=.<span.class="tok-kw">e |
| 32100 | 6e 75 6d 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 61 75 74 6f 2c 0a 20 20 20 20 6f 66 66 2c 0a | num</span>.{.....auto,.....off,. |
| 32120 | 20 20 20 20 6f 6e 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | ....on,.};..<span.class="tok-kw" |
| 32140 | 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 |
| 32160 | 72 22 3e 26 71 75 6f 74 3b 65 6e 75 6d 20 6c 69 74 65 72 61 6c 73 26 71 75 6f 74 3b 3c 2f 73 70 | r">"enum.literals"</sp |
| 32180 | 61 6e 3e 20 7b 0a 20 20 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 |
| 321a0 | 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 63 6f 6c 6f 72 31 3a 20 43 6f 6c 6f 72 20 3d 20 2e 61 75 74 | onst</span>.color1:.Color.=..aut |
| 321c0 | 6f 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 | o;.....<span.class="tok-kw">cons |
| 321e0 | 74 3c 2f 73 70 61 6e 3e 20 63 6f 6c 6f 72 32 20 3d 20 43 6f 6c 6f 72 2e 61 75 74 6f 3b 0a 20 20 | t</span>.color2.=.Color.auto;... |
| 32200 | 20 20 65 78 70 65 63 74 28 63 6f 6c 6f 72 31 20 3d 3d 20 63 6f 6c 6f 72 32 29 3b 0a 7d 0a 0a 3c | ..expect(color1.==.color2);.}..< |
| 32220 | 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>. |
| 32240 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 77 69 74 | <span.class="tok-str">"swit |
| 32260 | 63 68 20 75 73 69 6e 67 20 65 6e 75 6d 20 6c 69 74 65 72 61 6c 73 26 71 75 6f 74 3b 3c 2f 73 70 | ch.using.enum.literals"</sp |
| 32280 | 61 6e 3e 20 7b 0a 20 20 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 |
| 322a0 | 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 63 6f 6c 6f 72 20 3d 20 43 6f 6c 6f 72 2e 6f 6e 3b 0a 20 20 | onst</span>.color.=.Color.on;... |
| 322c0 | 20 20 3c 73 70 61 6e 20 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 |
| 322e0 | 61 6e 3e 20 72 65 73 75 6c 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | an>.result.=.<span.class="tok-kw |
| 32300 | 22 3e 73 77 69 74 63 68 3c 2f 73 70 61 6e 3e 20 28 63 6f 6c 6f 72 29 20 7b 0a 20 20 20 20 20 20 | ">switch</span>.(color).{....... |
| 32320 | 20 20 2e 61 75 74 6f 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | ...auto.=>.<span.class="tok-n |
| 32340 | 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 2e 6f 6e 20 3d | ull">false</span>,..........on.= |
| 32360 | 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 | >.<span.class="tok-null">true |
| 32380 | 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 2e 6f 66 66 20 3d 26 67 74 3b 20 3c 73 70 61 | </span>,..........off.=>.<spa |
| 323a0 | 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>, |
| 323c0 | 0a 20 20 20 20 7d 3b 0a 20 20 20 20 65 78 70 65 63 74 28 72 65 73 75 6c 74 29 3b 0a 7d 3c 2f 63 | .....};.....expect(result);.}</c |
| 323e0 | 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c | ode></pre><pre><code.class="shel |
| 32400 | 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 31 2f 32 20 74 65 73 74 20 | l">$.zig.test.test.zig.1/2.test. |
| 32420 | 26 71 75 6f 74 3b 65 6e 75 6d 20 6c 69 74 65 72 61 6c 73 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a | "enum.literals"....OK. |
| 32440 | 32 2f 32 20 74 65 73 74 20 26 71 75 6f 74 3b 73 77 69 74 63 68 20 75 73 69 6e 67 20 65 6e 75 6d | 2/2.test."switch.using.enum |
| 32460 | 20 6c 69 74 65 72 61 6c 73 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 41 6c 6c 20 32 20 74 65 73 74 | .literals"....OK.All.2.test |
| 32480 | 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 0a | s.passed..</code></pre>......... |
| 324a0 | 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 4e 6f 6e 2d 65 78 68 61 75 73 74 69 76 65 2d 65 6e | .......<h2.id="Non-exhaustive-en |
| 324c0 | 75 6d 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 4e 6f 6e 2d 65 78 68 61 75 73 74 69 76 65 | um"><a.href="#toc-Non-exhaustive |
| 324e0 | 2d 65 6e 75 6d 22 3e 4e 6f 6e 2d 65 78 68 61 75 73 74 69 76 65 20 65 6e 75 6d 3c 2f 61 3e 20 3c | -enum">Non-exhaustive.enum</a>.< |
| 32500 | 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 4e 6f 6e 2d 65 78 68 61 75 73 74 | a.class="hdr".href="#Non-exhaust |
| 32520 | 69 76 65 2d 65 6e 75 6d 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e | ive-enum">..</a></h2>........<p> |
| 32540 | 0a 20 20 20 20 20 20 41 20 4e 6f 6e 2d 65 78 68 61 75 73 74 69 76 65 20 65 6e 75 6d 20 63 61 6e | .......A.Non-exhaustive.enum.can |
| 32560 | 20 62 65 20 63 72 65 61 74 65 64 20 62 79 20 61 64 64 69 6e 67 20 61 20 74 72 61 69 6c 69 6e 67 | .be.created.by.adding.a.trailing |
| 32580 | 20 27 5f 27 20 66 69 65 6c 64 2e 0a 20 20 20 20 20 20 49 74 20 20 6d 75 73 74 20 73 70 65 63 69 | .'_'.field........It..must.speci |
| 325a0 | 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 75 6d 65 | fy.a.tag.type.and.cannot.consume |
| 325c0 | 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 20 20 20 | .every.enumeration.value........ |
| 325e0 | 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 22 23 69 | </p>.......<p>.......<a.href="#i |
| 32600 | 6e 74 54 6f 45 6e 75 6d 22 3e 40 69 6e 74 54 6f 45 6e 75 6d 3c 2f 61 3e 20 6f 6e 20 61 20 6e 6f | ntToEnum">@intToEnum</a>.on.a.no |
| 32620 | 6e 2d 65 78 68 61 75 73 74 69 76 65 20 65 6e 75 6d 20 63 61 6e 6e 6f 74 20 66 61 69 6c 2e 0a 20 | n-exhaustive.enum.cannot.fail... |
| 32640 | 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 77 69 74 | .....</p>.......<p>.......A.swit |
| 32660 | 63 68 20 6f 6e 20 61 20 6e 6f 6e 2d 65 78 68 61 75 73 74 69 76 65 20 65 6e 75 6d 20 63 61 6e 20 | ch.on.a.non-exhaustive.enum.can. |
| 32680 | 69 6e 63 6c 75 64 65 20 61 20 27 5f 27 20 70 72 6f 6e 67 20 61 73 20 61 6e 20 61 6c 74 65 72 6e | include.a.'_'.prong.as.an.altern |
| 326a0 | 61 74 69 76 65 20 74 6f 20 61 6e 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 | ative.to.an.<code.class="zig"><s |
| 326c0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 3c 2f | pan.class="tok-kw">else</span></ |
| 326e0 | 63 6f 64 65 3e 20 70 72 6f 6e 67 0a 20 20 20 20 20 20 77 69 74 68 20 74 68 65 20 64 69 66 66 65 | code>.prong.......with.the.diffe |
| 32700 | 72 65 6e 63 65 20 62 65 69 6e 67 20 74 68 61 74 20 69 74 20 6d 61 6b 65 73 20 69 74 20 61 20 63 | rence.being.that.it.makes.it.a.c |
| 32720 | 6f 6d 70 69 6c 65 20 65 72 72 6f 72 20 69 66 20 61 6c 6c 20 74 68 65 20 6b 6e 6f 77 6e 20 74 61 | ompile.error.if.all.the.known.ta |
| 32740 | 67 20 6e 61 6d 65 73 20 61 72 65 20 6e 6f 74 20 68 61 6e 64 6c 65 64 20 62 79 20 74 68 65 20 73 | g.names.are.not.handled.by.the.s |
| 32760 | 77 69 74 63 68 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 | witch........</p>.......<p.class |
| 32780 | 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 | ="file">test.zig</p><pre><code.c |
| 327a0 | 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | lass="zig"><span.class="tok-kw"> |
| 327c0 | 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=" |
| 327e0 | 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 |
| 32800 | 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" |
| 32820 | 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"> |
| 32840 | 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 |
| 32860 | 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"> |
| 32880 | 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 61 73 | const</span>.Number.=.<span.clas |
| 328a0 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6e 75 6d 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 | s="tok-kw">enum</span>(<span.cla |
| 328c0 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 6f | ss="tok-type">u8</span>).{.....o |
| 328e0 | 6e 65 2c 0a 20 20 20 20 74 77 6f 2c 0a 20 20 20 20 74 68 72 65 65 2c 0a 20 20 20 20 5f 2c 0a 7d | ne,.....two,.....three,....._,.} |
| 32900 | 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 |
| 32920 | 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">" |
| 32940 | 73 77 69 74 63 68 20 6f 6e 20 6e 6f 6e 2d 65 78 68 61 75 73 74 69 76 65 20 65 6e 75 6d 26 71 75 | switch.on.non-exhaustive.enum&qu |
| 32960 | 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 |
| 32980 | 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 4e 75 6d 62 | k-kw">const</span>.number.=.Numb |
| 329a0 | 65 72 2e 6f 6e 65 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | er.one;.....<span.class="tok-kw" |
| 329c0 | 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 72 65 73 75 6c 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 | >const</span>.result.=.<span.cla |
| 329e0 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 77 69 74 63 68 3c 2f 73 70 61 6e 3e 20 28 6e 75 6d 62 65 | ss="tok-kw">switch</span>.(numbe |
| 32a00 | 72 29 20 7b 0a 20 20 20 20 20 20 20 20 2e 6f 6e 65 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c | r).{..........one.=>.<span.cl |
| 32a20 | 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>,..... |
| 32a40 | 20 20 20 20 2e 74 77 6f 2c 0a 20 20 20 20 20 20 20 20 2e 74 68 72 65 65 20 3d 26 67 74 3b 20 3c | .....two,..........three.=>.< |
| 32a60 | 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 |
| 32a80 | 6e 3e 2c 0a 20 20 20 20 20 20 20 20 5f 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | n>,........._.=>.<span.class= |
| 32aa0 | 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 7d 3b 0a | "tok-null">false</span>,.....};. |
| 32ac0 | 20 20 20 20 65 78 70 65 63 74 28 72 65 73 75 6c 74 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | ....expect(result);.....<span.cl |
| 32ae0 | 61 73 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 6f 6e 65 | ass="tok-kw">const</span>.is_one |
| 32b00 | 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 77 69 74 63 68 3c 2f | .=.<span.class="tok-kw">switch</ |
| 32b20 | 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 2e 6f 6e 65 20 3d 26 | span>.(number).{..........one.=& |
| 32b40 | 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c | gt;.<span.class="tok-null">true< |
| 32b60 | 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | /span>,.........<span.class="tok |
| 32b80 | 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 | -kw">else</span>.=>.<span.cla |
| 32ba0 | 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 | ss="tok-null">false</span>,..... |
| 32bc0 | 7d 3b 0a 20 20 20 20 65 78 70 65 63 74 28 69 73 5f 6f 6e 65 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c | };.....expect(is_one);.}</code>< |
| 32be0 | 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 | /pre><pre><code.class="shell">$. |
| 32c00 | 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 31 2f 31 20 74 65 73 74 20 26 71 75 6f 74 | zig.test.test.zig.1/1.test." |
| 32c20 | 3b 73 77 69 74 63 68 20 6f 6e 20 6e 6f 6e 2d 65 78 68 61 75 73 74 69 76 65 20 65 6e 75 6d 26 71 | ;switch.on.non-exhaustive.enum&q |
| 32c40 | 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c | uot;....OK.All.1.tests.passed..< |
| 32c60 | 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 0a 0a 20 20 20 | /code></pre>.................... |
| 32c80 | 20 20 20 3c 68 31 20 69 64 3d 22 75 6e 69 6f 6e 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d | ...<h1.id="union"><a.href="#toc- |
| 32ca0 | 75 6e 69 6f 6e 22 3e 75 6e 69 6f 6e 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 | union">union</a>.<a.class="hdr". |
| 32cc0 | 68 72 65 66 3d 22 23 75 6e 69 6f 6e 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 31 3e 0a 0a 20 20 20 20 20 | href="#union">..</a></h1>....... |
| 32ce0 | 20 3c 70 3e 0a 20 20 20 20 20 20 41 20 62 61 72 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a | .<p>.......A.bare.<code.class="z |
| 32d00 | 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 69 6f 6e 3c 2f | ig"><span.class="tok-kw">union</ |
| 32d20 | 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 64 65 66 69 6e 65 73 20 61 20 73 65 74 20 6f 66 20 70 6f | span></code>.defines.a.set.of.po |
| 32d40 | 73 73 69 62 6c 65 20 74 79 70 65 73 20 74 68 61 74 20 61 20 76 61 6c 75 65 0a 20 20 20 20 20 20 | ssible.types.that.a.value....... |
| 32d60 | 63 61 6e 20 62 65 20 61 73 20 61 20 6c 69 73 74 20 6f 66 20 66 69 65 6c 64 73 2e 20 4f 6e 6c 79 | can.be.as.a.list.of.fields..Only |
| 32d80 | 20 6f 6e 65 20 66 69 65 6c 64 20 63 61 6e 20 62 65 20 61 63 74 69 76 65 20 61 74 20 61 20 74 69 | .one.field.can.be.active.at.a.ti |
| 32da0 | 6d 65 2e 0a 20 20 20 20 20 20 54 68 65 20 69 6e 2d 6d 65 6d 6f 72 79 20 72 65 70 72 65 73 65 6e | me........The.in-memory.represen |
| 32dc0 | 74 61 74 69 6f 6e 20 6f 66 20 62 61 72 65 20 75 6e 69 6f 6e 73 20 69 73 20 6e 6f 74 20 67 75 61 | tation.of.bare.unions.is.not.gua |
| 32de0 | 72 61 6e 74 65 65 64 2e 0a 20 20 20 20 20 20 42 61 72 65 20 75 6e 69 6f 6e 73 20 63 61 6e 6e 6f | ranteed........Bare.unions.canno |
| 32e00 | 74 20 62 65 20 75 73 65 64 20 74 6f 20 72 65 69 6e 74 65 72 70 72 65 74 20 6d 65 6d 6f 72 79 2e | t.be.used.to.reinterpret.memory. |
| 32e20 | 20 46 6f 72 20 74 68 61 74 2c 20 75 73 65 20 3c 61 20 68 72 65 66 3d 22 23 70 74 72 43 61 73 74 | .For.that,.use.<a.href="#ptrCast |
| 32e40 | 22 3e 40 70 74 72 43 61 73 74 3c 2f 61 3e 2c 0a 20 20 20 20 20 20 6f 72 20 75 73 65 20 61 6e 20 | ">@ptrCast</a>,.......or.use.an. |
| 32e60 | 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 72 6e 20 75 | <a.href="#extern-union">extern.u |
| 32e80 | 6e 69 6f 6e 3c 2f 61 3e 20 6f 72 20 61 20 3c 61 20 68 72 65 66 3d 22 23 70 61 63 6b 65 64 2d 75 | nion</a>.or.a.<a.href="#packed-u |
| 32ea0 | 6e 69 6f 6e 22 3e 70 61 63 6b 65 64 20 75 6e 69 6f 6e 3c 2f 61 3e 20 77 68 69 63 68 20 68 61 76 | nion">packed.union</a>.which.hav |
| 32ec0 | 65 0a 20 20 20 20 20 20 67 75 61 72 61 6e 74 65 65 64 20 69 6e 2d 6d 65 6d 6f 72 79 20 6c 61 79 | e.......guaranteed.in-memory.lay |
| 32ee0 | 6f 75 74 2e 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 57 72 6f 6e 67 2d 55 6e 69 6f 6e | out........<a.href="#Wrong-Union |
| 32f00 | 2d 46 69 65 6c 64 2d 41 63 63 65 73 73 22 3e 41 63 63 65 73 73 69 6e 67 20 74 68 65 20 6e 6f 6e | -Field-Access">Accessing.the.non |
| 32f20 | 2d 61 63 74 69 76 65 20 66 69 65 6c 64 3c 2f 61 3e 20 69 73 0a 20 20 20 20 20 20 73 61 66 65 74 | -active.field</a>.is.......safet |
| 32f40 | 79 2d 63 68 65 63 6b 65 64 20 3c 61 20 68 72 65 66 3d 22 23 55 6e 64 65 66 69 6e 65 64 2d 42 65 | y-checked.<a.href="#Undefined-Be |
| 32f60 | 68 61 76 69 6f 72 22 3e 55 6e 64 65 66 69 6e 65 64 20 42 65 68 61 76 69 6f 72 3c 2f 61 3e 3a 0a | havior">Undefined.Behavior</a>:. |
| 32f80 | 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 | ......</p>.......<p.class="file" |
| 32fa0 | 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a | >test.zig</p><pre><code.class="z |
| 32fc0 | 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f | ig"><span.class="tok-kw">const</ |
| 32fe0 | 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 22 74 6f 6b | span>.Payload.=.<span.class="tok |
| 33000 | 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 20 3c 73 70 | -kw">union</span>.{.....int:.<sp |
| 33020 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 36 34 3c 2f 73 70 61 6e 3e 2c 0a | an.class="tok-type">i64</span>,. |
| 33040 | 20 20 20 20 66 6c 6f 61 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | ....float:.<span.class="tok-type |
| 33060 | 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 73 70 61 6e | ">f64</span>,.....boolean:.<span |
| 33080 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 2c 0a 7d | .class="tok-type">bool</span>,.} |
| 330a0 | 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 | ;.<span.class="tok-kw">test</spa |
| 330c0 | 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 | n>.<span.class="tok-str">"s |
| 330e0 | 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 20 20 20 3c | imple.union"</span>.{.....< |
| 33100 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 70 | span.class="tok-kw">var</span>.p |
| 33120 | 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 61 6e 20 63 | ayload.=.Payload{..int.=.<span.c |
| 33140 | 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 20 7d 3b | lass="tok-number">1234</span>.}; |
| 33160 | 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 6c 61 73 73 | .....payload.float.=.<span.class |
| 33180 | 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 7d 3c 2f 63 | ="tok-number">12.34</span>;.}</c |
| 331a0 | 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c | ode></pre><pre><code.class="shel |
| 331c0 | 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 31 2f 31 20 74 65 73 74 20 | l">$.zig.test.test.zig.1/1.test. |
| 331e0 | 26 71 75 6f 74 3b 73 69 6d 70 6c 65 20 75 6e 69 6f 6e 26 71 75 6f 74 3b 2e 2e 2e 20 61 63 63 65 | "simple.union"....acce |
| 33200 | 73 73 20 6f 66 20 69 6e 61 63 74 69 76 65 20 75 6e 69 6f 6e 20 66 69 65 6c 64 0a 3c 73 70 61 6e | ss.of.inactive.union.field.<span |
| 33220 | 20 63 6c 61 73 73 3d 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f | .class="t37_1">/home/andy/Downlo |
| 33240 | 61 64 73 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 38 3a 31 32 | ads/zig/docgen_tmp/test.zig:8:12 |
| 33260 | 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 30 | </span>:.<span.class="t2_0">0x20 |
| 33280 | 35 39 64 62 20 69 6e 20 74 65 73 74 20 26 71 75 6f 74 3b 73 69 6d 70 6c 65 20 75 6e 69 6f 6e 26 | 59db.in.test."simple.union& |
| 332a0 | 71 75 6f 74 3b 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 70 61 79 6c 6f 61 64 2e | quot;.(test)</span>.....payload. |
| 332c0 | 66 6c 6f 61 74 20 3d 20 31 32 2e 33 34 3b 0a 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 | float.=.12.34;............<span. |
| 332e0 | 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 | class="t32_1">^</span>.<span.cla |
| 33300 | 73 73 3d 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f | ss="t37_1">/home/andy/Downloads/ |
| 33320 | 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 70 65 63 69 61 6c 2f 74 65 73 74 5f 72 75 6e 6e 65 72 2e | zig/lib/std/special/test_runner. |
| 33340 | 7a 69 67 3a 36 31 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 74 | zig:61:28</span>:.<span.class="t |
| 33360 | 32 5f 30 22 3e 30 78 32 32 64 61 66 31 20 69 6e 20 73 74 64 2e 73 70 65 63 69 61 6c 2e 6d 61 69 | 2_0">0x22daf1.in.std.special.mai |
| 33380 | 6e 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 7d 20 65 6c 73 65 20 74 | n.(test)</span>.........}.else.t |
| 333a0 | 65 73 74 5f 66 6e 2e 66 75 6e 63 28 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | est_fn.func();.................. |
| 333c0 | 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c | ..........<span.class="t32_1">^< |
| 333e0 | 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 | /span>.<span.class="t37_1">/home |
| 33400 | 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 | /andy/Downloads/zig/lib/std/star |
| 33420 | 74 2e 7a 69 67 3a 33 33 34 3a 33 37 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 | t.zig:334:37</span>:.<span.class |
| 33440 | 3d 22 74 32 5f 30 22 3e 30 78 32 30 37 32 64 64 20 69 6e 20 73 74 64 2e 73 74 61 72 74 2e 70 6f | ="t2_0">0x2072dd.in.std.start.po |
| 33460 | 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e | sixCallMainAndExit.(test)</span> |
| 33480 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 73 74 20 72 65 73 75 6c 74 20 3d 20 72 6f 6f 74 | .............const.result.=.root |
| 334a0 | 2e 6d 61 69 6e 28 29 20 63 61 74 63 68 20 7c 65 72 72 7c 20 7b 0a 20 20 20 20 20 20 20 20 20 20 | .main().catch.|err|.{........... |
| 334c0 | 20 20 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. |
| 334e0 | 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 | class="t32_1">^</span>.<span.cla |
| 33500 | 73 73 3d 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f | ss="t37_1">/home/andy/Downloads/ |
| 33520 | 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 31 36 32 3a 35 3c 2f 73 70 61 | zig/lib/std/start.zig:162:5</spa |
| 33540 | 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 30 37 30 31 32 20 | n>:.<span.class="t2_0">0x207012. |
| 33560 | 69 6e 20 73 74 64 2e 73 74 61 72 74 2e 5f 73 74 61 72 74 20 28 74 65 73 74 29 3c 2f 73 70 61 6e | in.std.start._start.(test)</span |
| 33580 | 3e 0a 20 20 20 20 40 63 61 6c 6c 28 2e 7b 20 2e 6d 6f 64 69 66 69 65 72 20 3d 20 2e 6e 65 76 65 | >.....@call(.{..modifier.=..neve |
| 335a0 | 72 5f 69 6e 6c 69 6e 65 20 7d 2c 20 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 | r_inline.},.posixCallMainAndExit |
| 335c0 | 2c 20 2e 7b 7d 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e | ,..{});.....<span.class="t32_1"> |
| 335e0 | 5e 3c 2f 73 70 61 6e 3e 0a 65 72 72 6f 72 3a 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 74 65 | ^</span>.error:.the.following.te |
| 33600 | 73 74 20 63 6f 6d 6d 61 6e 64 20 63 72 61 73 68 65 64 3a 0a 64 6f 63 67 65 6e 5f 74 6d 70 2f 7a | st.command.crashed:.docgen_tmp/z |
| 33620 | 69 67 2d 63 61 63 68 65 2f 6f 2f 38 66 65 38 30 31 32 38 61 39 34 63 31 36 31 33 65 34 38 33 31 | ig-cache/o/8fe80128a94c1613e4831 |
| 33640 | 37 32 39 35 66 63 37 36 63 66 63 2f 74 65 73 74 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a | 7295fc76cfc/test.</code></pre>.. |
| 33660 | 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 65 | ......<p>You.can.activate.anothe |
| 33680 | 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 20 | r.field.by.assigning.the.entire. |
| 336a0 | 75 6e 69 6f 6e 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 | union:</p>.......<p.class="file" |
| 336c0 | 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a | >test.zig</p><pre><code.class="z |
| 336e0 | 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f | ig"><span.class="tok-kw">const</ |
| 33700 | 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 |
| 33720 | 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 |
| 33740 | 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 |
| 33760 | 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</ |
| 33780 | 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 73 74 64 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 | span>.expect.=.std.testing.expec |
| 337a0 | 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f | t;..<span.class="tok-kw">const</ |
| 337c0 | 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 22 74 6f 6b | span>.Payload.=.<span.class="tok |
| 337e0 | 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 20 3c 73 70 | -kw">union</span>.{.....int:.<sp |
| 33800 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 36 34 3c 2f 73 70 61 6e 3e 2c 0a | an.class="tok-type">i64</span>,. |
| 33820 | 20 20 20 20 66 6c 6f 61 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | ....float:.<span.class="tok-type |
| 33840 | 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 73 70 61 6e | ">f64</span>,.....boolean:.<span |
| 33860 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 2c 0a 7d | .class="tok-type">bool</span>,.} |
| 33880 | 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 | ;.<span.class="tok-kw">test</spa |
| 338a0 | 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 | n>.<span.class="tok-str">"s |
| 338c0 | 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 20 20 20 3c | imple.union"</span>.{.....< |
| 338e0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 70 | span.class="tok-kw">var</span>.p |
| 33900 | 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 61 6e 20 63 | ayload.=.Payload{..int.=.<span.c |
| 33920 | 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 20 7d 3b | lass="tok-number">1234</span>.}; |
| 33940 | 0a 20 20 20 20 65 78 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 | .....expect(payload.int.==.<span |
| 33960 | 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>) |
| 33980 | 3b 0a 20 20 20 20 70 61 79 6c 6f 61 64 20 3d 20 50 61 79 6c 6f 61 64 7b 20 2e 66 6c 6f 61 74 20 | ;.....payload.=.Payload{..float. |
| 339a0 | 3d 20 3c 73 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 |
| 339c0 | 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 20 20 20 20 65 78 70 65 63 74 28 70 61 79 6c 6f 61 64 2e 66 6c | </span>.};.....expect(payload.fl |
| 339e0 | 6f 61 74 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e | oat.==.<span.class="tok-number"> |
| 33a00 | 31 32 2e 33 34 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 | 12.34</span>);.}</code></pre><pr |
| 33a20 | 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 | e><code.class="shell">$.zig.test |
| 33a40 | 20 74 65 73 74 2e 7a 69 67 0a 31 2f 31 20 74 65 73 74 20 26 71 75 6f 74 3b 73 69 6d 70 6c 65 20 | .test.zig.1/1.test."simple. |
| 33a60 | 75 6e 69 6f 6e 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 | union"....OK.All.1.tests.pa |
| 33a80 | 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 | ssed..</code></pre>........<p>.. |
| 33aa0 | 20 20 20 20 20 49 6e 20 6f 72 64 65 72 20 74 6f 20 75 73 65 20 3c 61 20 68 72 65 66 3d 22 23 73 | .....In.order.to.use.<a.href="#s |
| 33ac0 | 77 69 74 63 68 22 3e 73 77 69 74 63 68 3c 2f 61 3e 20 77 69 74 68 20 61 20 75 6e 69 6f 6e 2c 20 | witch">switch</a>.with.a.union,. |
| 33ae0 | 69 74 20 6d 75 73 74 20 62 65 20 61 20 3c 61 20 68 72 65 66 3d 22 23 54 61 67 67 65 64 2d 75 6e | it.must.be.a.<a.href="#Tagged-un |
| 33b00 | 69 6f 6e 22 3e 54 61 67 67 65 64 20 75 6e 69 6f 6e 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 | ion">Tagged.union</a>........</p |
| 33b20 | 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 6f 20 69 6e 69 74 69 61 6c 69 7a 65 20 | >.......<p>.......To.initialize. |
| 33b40 | 61 20 75 6e 69 6f 6e 20 77 68 65 6e 20 74 68 65 20 74 61 67 20 69 73 20 61 20 3c 61 20 68 72 65 | a.union.when.the.tag.is.a.<a.hre |
| 33b60 | 66 3d 22 23 63 6f 6d 70 74 69 6d 65 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 61 3e 2d 6b 6e 6f 77 6e | f="#comptime">comptime</a>-known |
| 33b80 | 20 6e 61 6d 65 2c 20 73 65 65 20 3c 61 20 68 72 65 66 3d 22 23 75 6e 69 6f 6e 49 6e 69 74 22 3e | .name,.see.<a.href="#unionInit"> |
| 33ba0 | 40 75 6e 69 6f 6e 49 6e 69 74 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 0a 20 20 20 20 | @unionInit</a>........</p>...... |
| 33bc0 | 20 20 3c 68 32 20 69 64 3d 22 54 61 67 67 65 64 2d 75 6e 69 6f 6e 22 3e 3c 61 20 68 72 65 66 3d | ..<h2.id="Tagged-union"><a.href= |
| 33be0 | 22 23 74 6f 63 2d 54 61 67 67 65 64 2d 75 6e 69 6f 6e 22 3e 54 61 67 67 65 64 20 75 6e 69 6f 6e | "#toc-Tagged-union">Tagged.union |
| 33c00 | 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 54 61 67 67 65 | </a>.<a.class="hdr".href="#Tagge |
| 33c20 | 64 2d 75 6e 69 6f 6e 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 55 | d-union">..</a></h2>........<p>U |
| 33c40 | 6e 69 6f 6e 73 20 63 61 6e 20 62 65 20 64 65 63 6c 61 72 65 64 20 77 69 74 68 20 61 6e 20 65 6e | nions.can.be.declared.with.an.en |
| 33c60 | 75 6d 20 74 61 67 20 74 79 70 65 2e 0a 20 20 20 20 20 20 54 68 69 73 20 74 75 72 6e 73 20 74 68 | um.tag.type........This.turns.th |
| 33c80 | 65 20 75 6e 69 6f 6e 20 69 6e 74 6f 20 61 20 3c 65 6d 3e 74 61 67 67 65 64 3c 2f 65 6d 3e 20 75 | e.union.into.a.<em>tagged</em>.u |
| 33ca0 | 6e 69 6f 6e 2c 20 77 68 69 63 68 20 6d 61 6b 65 73 20 69 74 20 65 6c 69 67 69 62 6c 65 0a 20 20 | nion,.which.makes.it.eligible... |
| 33cc0 | 20 20 20 20 74 6f 20 75 73 65 20 77 69 74 68 20 3c 61 20 68 72 65 66 3d 22 23 73 77 69 74 63 68 | ....to.use.with.<a.href="#switch |
| 33ce0 | 22 3e 73 77 69 74 63 68 3c 2f 61 3e 20 65 78 70 72 65 73 73 69 6f 6e 73 2e 20 4f 6e 65 20 63 61 | ">switch</a>.expressions..One.ca |
| 33d00 | 6e 20 75 73 65 20 3c 61 20 68 72 65 66 3d 22 23 54 61 67 54 79 70 65 22 3e 40 54 61 67 54 79 70 | n.use.<a.href="#TagType">@TagTyp |
| 33d20 | 65 3c 2f 61 3e 20 74 6f 0a 20 20 20 20 20 20 6f 62 74 61 69 6e 20 74 68 65 20 65 6e 75 6d 20 74 | e</a>.to.......obtain.the.enum.t |
| 33d40 | 79 70 65 20 66 72 6f 6d 20 74 68 65 20 75 6e 69 6f 6e 20 74 79 70 65 2e 0a 20 20 20 20 20 20 54 | ype.from.the.union.type........T |
| 33d60 | 61 67 67 65 64 20 75 6e 69 6f 6e 73 20 63 6f 65 72 63 65 20 74 6f 20 74 68 65 69 72 20 74 61 67 | agged.unions.coerce.to.their.tag |
| 33d80 | 20 74 79 70 65 3a 20 3c 61 20 68 72 65 66 3d 22 23 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 2d 75 | .type:.<a.href="#Type-Coercion-u |
| 33da0 | 6e 69 6f 6e 73 2d 61 6e 64 2d 65 6e 75 6d 73 22 3e 54 79 70 65 20 43 6f 65 72 63 69 6f 6e 3a 20 | nions-and-enums">Type.Coercion:. |
| 33dc0 | 75 6e 69 6f 6e 73 20 61 6e 64 20 65 6e 75 6d 73 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e | unions.and.enums</a>........</p> |
| 33de0 | 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c | .......<p.class="file">test.zig< |
| 33e00 | 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 | /p><pre><code.class="zig"><span. |
| 33e20 | 63 6c 61 73 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. |
| 33e40 | 3d 20 3c 73 70 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 |
| 33e60 | 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" |
| 33e80 | 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. |
| 33ea0 | 63 6c 61 73 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 |
| 33ec0 | 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. |
| 33ee0 | 63 6c 61 73 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 | class="tok-kw">const</span>.Comp |
| 33f00 | 6c 65 78 54 79 70 65 54 61 67 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | lexTypeTag.=.<span.class="tok-kw |
| 33f20 | 22 3e 65 6e 75 6d 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 6f 6b 2c 0a 20 20 20 20 6e 6f 74 5f | ">enum</span>.{.....ok,.....not_ |
| 33f40 | 6f 6b 2c 0a 7d 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 | ok,.};.<span.class="tok-kw">cons |
| 33f60 | 74 3c 2f 73 70 61 6e 3e 20 43 6f 6d 70 6c 65 78 54 79 70 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 | t</span>.ComplexType.=.<span.cla |
| 33f80 | 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 43 6f 6d 70 6c 65 78 | ss="tok-kw">union</span>(Complex |
| 33fa0 | 54 79 70 65 54 61 67 29 20 7b 0a 20 20 20 20 6f 6b 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | TypeTag).{.....ok:.<span.class=" |
| 33fc0 | 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 6e 6f 74 5f 6f 6b 3a | tok-type">u8</span>,.....not_ok: |
| 33fe0 | 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 |
| 34000 | 61 6e 3e 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 | an>,.};..<span.class="tok-kw">te |
| 34020 | 73 74 3c 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"> |
| 34040 | 26 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 | "switch.on.tagged.union&quo |
| 34060 | 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 |
| 34080 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 63 20 3d 20 43 6f 6d 70 6c 65 78 54 79 70 | -kw">const</span>.c.=.ComplexTyp |
| 340a0 | 65 7b 20 2e 6f 6b 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | e{..ok.=.<span.class="tok-number |
| 340c0 | 22 3e 34 32 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 20 20 20 20 65 78 70 65 63 74 28 3c 73 70 61 6e 20 | ">42</span>.};.....expect(<span. |
| 340e0 | 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 43 | class="tok-builtin">@as</span>(C |
| 34100 | 6f 6d 70 6c 65 78 54 79 70 65 54 61 67 2c 20 63 29 20 3d 3d 20 43 6f 6d 70 6c 65 78 54 79 70 65 | omplexTypeTag,.c).==.ComplexType |
| 34120 | 54 61 67 2e 6f 6b 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 | Tag.ok);......<span.class="tok-k |
| 34140 | 77 22 3e 73 77 69 74 63 68 3c 2f 73 70 61 6e 3e 20 28 63 29 20 7b 0a 20 20 20 20 20 20 20 20 43 | w">switch</span>.(c).{.........C |
| 34160 | 6f 6d 70 6c 65 78 54 79 70 65 54 61 67 2e 6f 6b 20 3d 26 67 74 3b 20 7c 76 61 6c 75 65 7c 20 65 | omplexTypeTag.ok.=>.|value|.e |
| 34180 | 78 70 65 63 74 28 76 61 6c 75 65 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | xpect(value.==.<span.class="tok- |
| 341a0 | 6e 75 6d 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 43 6f 6d 70 | number">42</span>),.........Comp |
| 341c0 | 6c 65 78 54 79 70 65 54 61 67 2e 6e 6f 74 5f 6f 6b 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c | lexTypeTag.not_ok.=>.<span.cl |
| 341e0 | 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 2c | ass="tok-kw">unreachable</span>, |
| 34200 | 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 74 | .....}.}..<span.class="tok-kw">t |
| 34220 | 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" |
| 34240 | 3e 26 71 75 6f 74 3b 40 54 61 67 54 79 70 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 | >"@TagType"</span>.{.. |
| 34260 | 20 20 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 | ...expect(<span.class="tok-built |
| 34280 | 69 6e 22 3e 40 54 61 67 54 79 70 65 3c 2f 73 70 61 6e 3e 28 43 6f 6d 70 6c 65 78 54 79 70 65 29 | in">@TagType</span>(ComplexType) |
| 342a0 | 20 3d 3d 20 43 6f 6d 70 6c 65 78 54 79 70 65 54 61 67 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c | .==.ComplexTypeTag);.}..<span.cl |
| 342c0 | 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 |
| 342e0 | 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 65 | lass="tok-str">"coerce.to.e |
| 34300 | 6e 75 6d 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | num"</span>.{.....<span.cla |
| 34320 | 73 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 31 20 3d 20 43 6f | ss="tok-kw">const</span>.c1.=.Co |
| 34340 | 6d 70 6c 65 78 54 79 70 65 7b 20 2e 6f 6b 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | mplexType{..ok.=.<span.class="to |
| 34360 | 6b 2d 6e 75 6d 62 65 72 22 3e 34 32 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 20 20 20 20 3c 73 70 61 6e | k-number">42</span>.};.....<span |
| 34380 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 63 32 20 | .class="tok-kw">const</span>.c2. |
| 343a0 | 3d 20 43 6f 6d 70 6c 65 78 54 79 70 65 2e 6e 6f 74 5f 6f 6b 3b 0a 0a 20 20 20 20 65 78 70 65 63 | =.ComplexType.not_ok;......expec |
| 343c0 | 74 28 63 31 20 3d 3d 20 2e 6f 6b 29 3b 0a 20 20 20 20 65 78 70 65 63 74 28 63 32 20 3d 3d 20 2e | t(c1.==..ok);.....expect(c2.==.. |
| 343e0 | 6e 6f 74 5f 6f 6b 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 | not_ok);.}</code></pre><pre><cod |
| 34400 | 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e | e.class="shell">$.zig.test.test. |
| 34420 | 7a 69 67 0a 31 2f 33 20 74 65 73 74 20 26 71 75 6f 74 3b 73 77 69 74 63 68 20 6f 6e 20 74 61 67 | zig.1/3.test."switch.on.tag |
| 34440 | 67 65 64 20 75 6e 69 6f 6e 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 32 2f 33 20 74 65 73 74 20 26 | ged.union"....OK.2/3.test.& |
| 34460 | 71 75 6f 74 3b 40 54 61 67 54 79 70 65 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 33 2f 33 20 74 65 | quot;@TagType"....OK.3/3.te |
| 34480 | 73 74 20 26 71 75 6f 74 3b 63 6f 65 72 63 65 20 74 6f 20 65 6e 75 6d 26 71 75 6f 74 3b 2e 2e 2e | st."coerce.to.enum"... |
| 344a0 | 20 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 63 6f 64 65 3e 3c | .OK.All.3.tests.passed..</code>< |
| 344c0 | 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 49 6e 20 6f 72 64 65 72 20 74 6f 20 6d 6f 64 69 | /pre>........<p>In.order.to.modi |
| 344e0 | 66 79 20 74 68 65 20 70 61 79 6c 6f 61 64 20 6f 66 20 61 20 74 61 67 67 65 64 20 75 6e 69 6f 6e | fy.the.payload.of.a.tagged.union |
| 34500 | 20 69 6e 20 61 20 73 77 69 74 63 68 20 65 78 70 72 65 73 73 69 6f 6e 2c 0a 20 20 20 20 20 20 70 | .in.a.switch.expression,.......p |
| 34520 | 6c 61 63 65 20 61 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 2a 3c 2f 63 6f 64 65 | lace.a.<code.class="zig">*</code |
| 34540 | 3e 20 62 65 66 6f 72 65 20 74 68 65 20 76 61 72 69 61 62 6c 65 20 6e 61 6d 65 20 74 6f 20 6d 61 | >.before.the.variable.name.to.ma |
| 34560 | 6b 65 20 69 74 20 61 20 70 6f 69 6e 74 65 72 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 | ke.it.a.pointer:.......</p>..... |
| 34580 | 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 | ..<p.class="file">test.zig</p><p |
| 345a0 | 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | re><code.class="zig"><span.class |
| 345c0 | 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 |
| 345e0 | 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</ |
| 34600 | 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 |
| 34620 | 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 |
| 34640 | 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.=. |
| 34660 | 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 |
| 34680 | 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 79 | ="tok-kw">const</span>.ComplexTy |
| 346a0 | 70 65 54 61 67 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 | peTag.=.<span.class="tok-kw">enu |
| 346c0 | 6d 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 6f 6b 2c 0a 20 20 20 20 6e 6f 74 5f 6f 6b 2c 0a 7d | m</span>.{.....ok,.....not_ok,.} |
| 346e0 | 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 |
| 34700 | 61 6e 3e 20 43 6f 6d 70 6c 65 78 54 79 70 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | an>.ComplexType.=.<span.class="t |
| 34720 | 6f 6b 2d 6b 77 22 3e 75 6e 69 6f 6e 3c 2f 73 70 61 6e 3e 28 43 6f 6d 70 6c 65 78 54 79 70 65 54 | ok-kw">union</span>(ComplexTypeT |
| 34740 | 61 67 29 20 7b 0a 20 20 20 20 6f 6b 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | ag).{.....ok:.<span.class="tok-t |
| 34760 | 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 6e 6f 74 5f 6f 6b 3a 20 3c 73 70 61 | ype">u8</span>,.....not_ok:.<spa |
| 34780 | 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 2c 0a | n.class="tok-type">void</span>,. |
| 347a0 | 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 |
| 347c0 | 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">" |
| 347e0 | 3b 6d 6f 64 69 66 79 20 74 61 67 67 65 64 20 75 6e 69 6f 6e 20 69 6e 20 73 77 69 74 63 68 26 71 | ;modify.tagged.union.in.switch&q |
| 34800 | 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 |
| 34820 | 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 63 20 3d 20 43 6f 6d 70 6c 65 78 54 79 70 | ok-kw">var</span>.c.=.ComplexTyp |
| 34840 | 65 7b 20 2e 6f 6b 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | e{..ok.=.<span.class="tok-number |
| 34860 | 22 3e 34 32 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 20 20 20 20 65 78 70 65 63 74 28 3c 73 70 61 6e 20 | ">42</span>.};.....expect(<span. |
| 34880 | 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 43 | class="tok-builtin">@as</span>(C |
| 348a0 | 6f 6d 70 6c 65 78 54 79 70 65 54 61 67 2c 20 63 29 20 3d 3d 20 43 6f 6d 70 6c 65 78 54 79 70 65 | omplexTypeTag,.c).==.ComplexType |
| 348c0 | 54 61 67 2e 6f 6b 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 | Tag.ok);......<span.class="tok-k |
| 348e0 | 77 22 3e 73 77 69 74 63 68 3c 2f 73 70 61 6e 3e 20 28 63 29 20 7b 0a 20 20 20 20 20 20 20 20 43 | w">switch</span>.(c).{.........C |
| 34900 | 6f 6d 70 6c 65 78 54 79 70 65 54 61 67 2e 6f 6b 20 3d 26 67 74 3b 20 7c 2a 76 61 6c 75 65 7c 20 | omplexTypeTag.ok.=>.|*value|. |
| 34920 | 76 61 6c 75 65 2e 2a 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | value.*.+=.<span.class="tok-numb |
| 34940 | 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 43 6f 6d 70 6c 65 78 54 79 70 | er">1</span>,.........ComplexTyp |
| 34960 | 65 54 61 67 2e 6e 6f 74 5f 6f 6b 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | eTag.not_ok.=>.<span.class="t |
| 34980 | 6f 6b 2d 6b 77 22 3e 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 7d | ok-kw">unreachable</span>,.....} |
| 349a0 | 0a 0a 20 20 20 20 65 78 70 65 63 74 28 63 2e 6f 6b 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ......expect(c.ok.==.<span.class |
| 349c0 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 33 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 | ="tok-number">43</span>);.}</cod |
| 349e0 | 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 | e></pre><pre><code.class="shell" |
| 34a00 | 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 31 2f 31 20 74 65 73 74 20 26 71 | >$.zig.test.test.zig.1/1.test.&q |
| 34a20 | 75 6f 74 3b 6d 6f 64 69 66 79 20 74 61 67 67 65 64 20 75 6e 69 6f 6e 20 69 6e 20 73 77 69 74 63 | uot;modify.tagged.union.in.switc |
| 34a40 | 68 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 | h"....OK.All.1.tests.passed |
| 34a60 | 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 | ..</code></pre>........<p>...... |
| 34a80 | 20 55 6e 69 6f 6e 73 20 63 61 6e 20 62 65 20 6d 61 64 65 20 74 6f 20 69 6e 66 65 72 20 74 68 65 | .Unions.can.be.made.to.infer.the |
| 34aa0 | 20 65 6e 75 6d 20 74 61 67 20 74 79 70 65 2e 0a 20 20 20 20 20 20 46 75 72 74 68 65 72 2c 20 75 | .enum.tag.type........Further,.u |
| 34ac0 | 6e 69 6f 6e 73 20 63 61 6e 20 68 61 76 65 20 6d 65 74 68 6f 64 73 20 6a 75 73 74 20 6c 69 6b 65 | nions.can.have.methods.just.like |
| 34ae0 | 20 73 74 72 75 63 74 73 20 61 6e 64 20 65 6e 75 6d 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 | .structs.and.enums........</p>.. |
| 34b00 | 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 | .....<p.class="file">test.zig</p |
| 34b20 | 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c | ><pre><code.class="zig"><span.cl |
| 34b40 | 61 73 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.=. |
| 34b60 | 3c 73 70 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 |
| 34b80 | 74 3c 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">& |
| 34ba0 | 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 |
| 34bc0 | 61 73 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 |
| 34be0 | 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 |
| 34c00 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 56 61 72 69 61 6e | ass="tok-kw">const</span>.Varian |
| 34c20 | 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 69 6f 6e 3c 2f | t.=.<span.class="tok-kw">union</ |
| 34c40 | 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6e 75 6d 3c | span>(<span.class="tok-kw">enum< |
| 34c60 | 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 69 6e 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | /span>).{.....int:.<span.class=" |
| 34c80 | 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 62 6f 6f 6c 65 61 | tok-type">i32</span>,.....boolea |
| 34ca0 | 6e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f | n:.<span.class="tok-type">bool</ |
| 34cc0 | 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 63 6f 6d | span>,......<span.class="tok-com |
| 34ce0 | 6d 65 6e 74 22 3e 2f 2f 20 76 6f 69 64 20 63 61 6e 20 62 65 20 6f 6d 69 74 74 65 64 20 77 68 65 | ment">//.void.can.be.omitted.whe |
| 34d00 | 6e 20 69 6e 66 65 72 72 69 6e 67 20 65 6e 75 6d 20 74 61 67 20 74 79 70 65 2e 3c 2f 73 70 61 6e | n.inferring.enum.tag.type.</span |
| 34d20 | 3e 0a 20 20 20 20 6e 6f 6e 65 2c 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | >.....none,......<span.class="to |
| 34d40 | 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 |
| 34d60 | 2d 66 6e 22 3e 74 72 75 74 68 79 3c 2f 73 70 61 6e 3e 28 73 65 6c 66 3a 20 56 61 72 69 61 6e 74 | -fn">truthy</span>(self:.Variant |
| 34d80 | 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 | ).<span.class="tok-type">bool</s |
| 34da0 | 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | pan>.{.........<span.class="tok- |
| 34dc0 | 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 |
| 34de0 | 6f 6b 2d 6b 77 22 3e 73 77 69 74 63 68 3c 2f 73 70 61 6e 3e 20 28 73 65 6c 66 29 20 7b 0a 20 20 | ok-kw">switch</span>.(self).{... |
| 34e00 | 20 20 20 20 20 20 20 20 20 20 56 61 72 69 61 6e 74 2e 69 6e 74 20 3d 26 67 74 3b 20 7c 78 5f 69 | ..........Variant.int.=>.|x_i |
| 34e20 | 6e 74 7c 20 78 5f 69 6e 74 20 21 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | nt|.x_int.!=.<span.class="tok-nu |
| 34e40 | 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 56 61 72 69 | mber">0</span>,.............Vari |
| 34e60 | 61 6e 74 2e 62 6f 6f 6c 65 61 6e 20 3d 26 67 74 3b 20 7c 78 5f 62 6f 6f 6c 7c 20 78 5f 62 6f 6f | ant.boolean.=>.|x_bool|.x_boo |
| 34e80 | 6c 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 56 61 72 69 61 6e 74 2e 6e 6f 6e 65 20 3d 26 67 74 | l,.............Variant.none.=> |
| 34ea0 | 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</ |
| 34ec0 | 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 7d 3b 0a 20 20 20 20 7d 0a 7d 3b 0a 0a 3c 73 70 61 | span>,.........};.....}.};..<spa |
| 34ee0 | 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 |
| 34f00 | 61 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 69 6f 6e 20 6d | an.class="tok-str">"union.m |
| 34f20 | 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 20 63 | ethod"</span>.{.....<span.c |
| 34f40 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 76 31 20 3d 20 56 61 | lass="tok-kw">var</span>.v1.=.Va |
| 34f60 | 72 69 61 6e 74 7b 20 2e 69 6e 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | riant{..int.=.<span.class="tok-n |
| 34f80 | 75 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 | umber">1</span>.};.....<span.cla |
| 34fa0 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 76 32 20 3d 20 56 61 72 69 | ss="tok-kw">var</span>.v2.=.Vari |
| 34fc0 | 61 6e 74 7b 20 2e 62 6f 6f 6c 65 61 6e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ant{..boolean.=.<span.class="tok |
| 34fe0 | 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 0a 20 20 20 20 65 78 70 65 | -null">false</span>.};......expe |
| 35000 | 63 74 28 76 31 2e 74 72 75 74 68 79 28 29 29 3b 0a 20 20 20 20 65 78 70 65 63 74 28 21 76 32 2e | ct(v1.truthy());.....expect(!v2. |
| 35020 | 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 70 72 65 3e 3c 63 | truthy());.}</code></pre><pre><c |
| 35040 | 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 | ode.class="shell">$.zig.test.tes |
| 35060 | 74 2e 7a 69 67 0a 31 2f 31 20 74 65 73 74 20 26 71 75 6f 74 3b 75 6e 69 6f 6e 20 6d 65 74 68 6f | t.zig.1/1.test."union.metho |
| 35080 | 64 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 | d"....OK.All.1.tests.passed |
| 350a0 | 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 | ..</code></pre>........<p>...... |
| 350c0 | 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 3e | .<a.href="#tagName">@tagName</a> |
| 350e0 | 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 66 | .can.be.used.to.return.a.<a.href |
| 35100 | 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 20 | ="#comptime">comptime</a>....... |
| 35120 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d | <code.class="zig">[]<span.class= |
| 35140 | 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 |
| 35160 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 76 61 | s="tok-type">u8</span></code>.va |
| 35180 | 6c 75 65 20 72 65 70 72 65 73 65 6e 74 69 6e 67 20 74 68 65 20 66 69 65 6c 64 20 6e 61 6d 65 3a | lue.representing.the.field.name: |
| 351a0 | 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 | .......</p>.......<p.class="file |
| 351c0 | 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | ">test.zig</p><pre><code.class=" |
| 351e0 | 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c | zig"><span.class="tok-kw">const< |
| 35200 | 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 |
| 35220 | 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 |
| 35240 | 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 |
| 35260 | 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< |
| 35280 | 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 |
| 352a0 | 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< |
| 352c0 | 2f 73 70 61 6e 3e 20 53 6d 61 6c 6c 32 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | /span>.Small2.=.<span.class="tok |
| 352e0 | 2d 6b 77 22 3e 75 6e 69 6f 6e 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | -kw">union</span>(<span.class="t |
| 35300 | 6f 6b 2d 6b 77 22 3e 65 6e 75 6d 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 61 3a 20 3c 73 70 | ok-kw">enum</span>).{.....a:.<sp |
| 35320 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 2c 0a | an.class="tok-type">i32</span>,. |
| 35340 | 20 20 20 20 62 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f | ....b:.<span.class="tok-type">bo |
| 35360 | 6f 6c 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 63 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ol</span>,.....c:.<span.class="t |
| 35380 | 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 0a 7d 3b 0a 3c 73 70 61 6e 20 63 6c 61 | ok-type">u8</span>,.};.<span.cla |
| 353a0 | 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 |
| 353c0 | 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 40 74 61 67 4e 61 6d 65 26 71 75 6f | ass="tok-str">"@tagName&quo |
| 353e0 | 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 65 78 70 65 63 74 28 73 74 64 2e 6d 65 6d 2e 65 | t;</span>.{.....expect(std.mem.e |
| 35400 | 71 6c 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 | ql(<span.class="tok-type">u8</sp |
| 35420 | 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">@ |
| 35440 | 74 61 67 4e 61 6d 65 3c 2f 73 70 61 6e 3e 28 53 6d 61 6c 6c 32 2e 61 29 2c 20 3c 73 70 61 6e 20 | tagName</span>(Small2.a),.<span. |
| 35460 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 61 26 71 75 6f 74 3b 3c 2f 73 | class="tok-str">"a"</s |
| 35480 | 70 61 6e 3e 29 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 | pan>));.}</code></pre><pre><code |
| 354a0 | 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a | .class="shell">$.zig.test.test.z |
| 354c0 | 69 67 0a 31 2f 31 20 74 65 73 74 20 26 71 75 6f 74 3b 40 74 61 67 4e 61 6d 65 26 71 75 6f 74 3b | ig.1/1.test."@tagName" |
| 354e0 | 2e 2e 2e 20 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 | ....OK.All.1.tests.passed..</cod |
| 35500 | 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 | e></pre>................<h2.id=" |
| 35520 | 65 78 74 65 72 6e 2d 75 6e 69 6f 6e 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 65 78 74 65 | extern-union"><a.href="#toc-exte |
| 35540 | 72 6e 2d 75 6e 69 6f 6e 22 3e 65 78 74 65 72 6e 20 75 6e 69 6f 6e 3c 2f 61 3e 20 3c 61 20 63 6c | rn-union">extern.union</a>.<a.cl |
| 35560 | 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 65 78 74 65 72 6e 2d 75 6e 69 6f 6e 22 3e c2 | ass="hdr".href="#extern-union">. |
| 35580 | a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 41 6e 20 3c | .</a></h2>........<p>.......An.< |
| 355a0 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | code.class="zig"><span.class="to |
| 355c0 | 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= |
| 355e0 | 22 74 6f 6b 2d 6b 77 22 3e 75 6e 69 6f 6e 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 68 61 73 | "tok-kw">union</span></code>.has |
| 35600 | 20 6d 65 6d 6f 72 79 20 6c 61 79 6f 75 74 20 67 75 61 72 61 6e 74 65 65 64 20 74 6f 20 62 65 20 | .memory.layout.guaranteed.to.be. |
| 35620 | 63 6f 6d 70 61 74 69 62 6c 65 20 77 69 74 68 0a 20 20 20 20 20 20 74 68 65 20 74 61 72 67 65 74 | compatible.with.......the.target |
| 35640 | 20 43 20 41 42 49 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 | .C.ABI........</p>.......<p>See. |
| 35660 | 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 65 78 74 65 | also:</p><ul>.<li><a.href="#exte |
| 35680 | 72 6e 2d 73 74 72 75 63 74 22 3e 65 78 74 65 72 6e 20 73 74 72 75 63 74 3c 2f 61 3e 3c 2f 6c 69 | rn-struct">extern.struct</a></li |
| 356a0 | 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 70 | >.</ul>................<h2.id="p |
| 356c0 | 61 63 6b 65 64 2d 75 6e 69 6f 6e 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 70 61 63 6b 65 | acked-union"><a.href="#toc-packe |
| 356e0 | 64 2d 75 6e 69 6f 6e 22 3e 70 61 63 6b 65 64 20 75 6e 69 6f 6e 3c 2f 61 3e 20 3c 61 20 63 6c 61 | d-union">packed.union</a>.<a.cla |
| 35700 | 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 70 61 63 6b 65 64 2d 75 6e 69 6f 6e 22 3e c2 a7 | ss="hdr".href="#packed-union">.. |
| 35720 | 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 20 3c 63 6f 64 65 20 63 6c 61 73 | </a></h2>........<p>A.<code.clas |
| 35740 | 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 61 63 | s="zig"><span.class="tok-kw">pac |
| 35760 | 6b 65 64 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | ked</span>.<span.class="tok-kw"> |
| 35780 | 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 66 | union</span></code>.has.well-def |
| 357a0 | 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 69 | ined.in-memory.layout.and.is.eli |
| 357c0 | 67 69 62 6c 65 0a 20 20 20 20 20 20 74 6f 20 62 65 20 69 6e 20 61 20 3c 61 20 68 72 65 66 3d 22 | gible.......to.be.in.a.<a.href=" |
| 357e0 | 23 70 61 63 6b 65 64 2d 73 74 72 75 63 74 22 3e 70 61 63 6b 65 64 20 73 74 72 75 63 74 3c 2f 61 | #packed-struct">packed.struct</a |
| 35800 | 3e 2e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 41 6e 6f 6e 79 6d 6f | >................<h2.id="Anonymo |
| 35820 | 75 73 2d 55 6e 69 6f 6e 2d 4c 69 74 65 72 61 6c 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 | us-Union-Literals"><a.href="#toc |
| 35840 | 2d 41 6e 6f 6e 79 6d 6f 75 73 2d 55 6e 69 6f 6e 2d 4c 69 74 65 72 61 6c 73 22 3e 41 6e 6f 6e 79 | -Anonymous-Union-Literals">Anony |
| 35860 | 6d 6f 75 73 20 55 6e 69 6f 6e 20 4c 69 74 65 72 61 6c 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 | mous.Union.Literals</a>.<a.class |
| 35880 | 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 41 6e 6f 6e 79 6d 6f 75 73 2d 55 6e 69 6f 6e 2d 4c 69 | ="hdr".href="#Anonymous-Union-Li |
| 358a0 | 74 65 72 61 6c 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 3c 61 | terals">..</a></h2>........<p><a |
| 358c0 | 20 68 72 65 66 3d 22 23 41 6e 6f 6e 79 6d 6f 75 73 2d 53 74 72 75 63 74 2d 4c 69 74 65 72 61 6c | .href="#Anonymous-Struct-Literal |
| 358e0 | 73 22 3e 41 6e 6f 6e 79 6d 6f 75 73 20 53 74 72 75 63 74 20 4c 69 74 65 72 61 6c 73 3c 2f 61 3e | s">Anonymous.Struct.Literals</a> |
| 35900 | 20 73 79 6e 74 61 78 20 63 61 6e 20 62 65 20 75 73 65 64 20 74 6f 20 69 6e 69 74 69 61 6c 69 7a | .syntax.can.be.used.to.initializ |
| 35920 | 65 20 75 6e 69 6f 6e 73 20 77 69 74 68 6f 75 74 20 73 70 65 63 69 66 79 69 6e 67 0a 20 20 20 20 | e.unions.without.specifying..... |
| 35940 | 20 20 74 68 65 20 74 79 70 65 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 | ..the.type:</p>.......<p.class=" |
| 35960 | 66 69 6c 65 22 3e 61 6e 6f 6e 5f 75 6e 69 6f 6e 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f | file">anon_union.zig</p><pre><co |
| 35980 | 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | de.class="zig"><span.class="tok- |
| 359a0 | 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 |
| 359c0 | 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>( |
| 359e0 | 3c 73 70 61 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& |
| 35a00 | 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- |
| 35a20 | 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 |
| 35a40 | 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- |
| 35a60 | 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 4e 75 6d 62 65 72 20 3d 20 3c 73 70 61 6e 20 | kw">const</span>.Number.=.<span. |
| 35a80 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 69 6f 6e 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 | class="tok-kw">union</span>.{... |
| 35aa0 | 20 20 69 6e 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 | ..int:.<span.class="tok-type">i3 |
| 35ac0 | 32 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 66 6c 6f 61 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 | 2</span>,.....float:.<span.class |
| 35ae0 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 36 34 3c 2f 73 70 61 6e 3e 2c 0a 7d 3b 0a 0a 3c 73 70 61 | ="tok-type">f64</span>,.};..<spa |
| 35b00 | 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 |
| 35b20 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 61 6e 6f 6e 79 6d 6f | an.class="tok-str">"anonymo |
| 35b40 | 75 73 20 75 6e 69 6f 6e 20 6c 69 74 65 72 61 6c 20 73 79 6e 74 61 78 26 71 75 6f 74 3b 3c 2f 73 | us.union.literal.syntax"</s |
| 35b60 | 70 61 6e 3e 20 7b 0a 20 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"> |
| 35b80 | 76 61 72 3c 2f 73 70 61 6e 3e 20 69 3a 20 4e 75 6d 62 65 72 20 3d 20 2e 7b 2e 69 6e 74 20 3d 20 | var</span>.i:.Number.=..{.int.=. |
| 35ba0 | 3c 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 |
| 35bc0 | 6e 3e 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 | n>};.....<span.class="tok-kw">va |
| 35be0 | 72 3c 2f 73 70 61 6e 3e 20 66 20 3d 20 6d 61 6b 65 4e 75 6d 62 65 72 28 29 3b 0a 20 20 20 20 65 | r</span>.f.=.makeNumber();.....e |
| 35c00 | 78 70 65 63 74 28 69 2e 69 6e 74 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | xpect(i.int.==.<span.class="tok- |
| 35c20 | 6e 75 6d 62 65 72 22 3e 34 32 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 65 78 70 65 63 74 28 66 | number">42</span>);.....expect(f |
| 35c40 | 2e 66 6c 6f 61 74 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | .float.==.<span.class="tok-numbe |
| 35c60 | 72 22 3e 31 32 2e 33 34 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | r">12.34</span>);.}..<span.class |
| 35c80 | 3d 22 74 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= |
| 35ca0 | 22 74 6f 6b 2d 66 6e 22 3e 6d 61 6b 65 4e 75 6d 62 65 72 3c 2f 73 70 61 6e 3e 28 29 20 4e 75 6d | "tok-fn">makeNumber</span>().Num |
| 35cc0 | 62 65 72 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 | ber.{.....<span.class="tok-kw">r |
| 35ce0 | 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 2e 7b 2e 66 6c 6f 61 74 20 3d 20 3c 73 70 61 6e 20 63 6c | eturn</span>..{.float.=.<span.cl |
| 35d00 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 2e 33 34 3c 2f 73 70 61 6e 3e 7d 3b 0a | ass="tok-number">12.34</span>};. |
| 35d20 | 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | }</code></pre><pre><code.class=" |
| 35d40 | 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 61 6e 6f 6e 5f 75 6e 69 6f 6e 2e 7a 69 67 | shell">$.zig.test.anon_union.zig |
| 35d60 | 0a 31 2f 31 20 74 65 73 74 20 26 71 75 6f 74 3b 61 6e 6f 6e 79 6d 6f 75 73 20 75 6e 69 6f 6e 20 | .1/1.test."anonymous.union. |
| 35d80 | 6c 69 74 65 72 61 6c 20 73 79 6e 74 61 78 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 41 6c 6c 20 31 | literal.syntax"....OK.All.1 |
| 35da0 | 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 | .tests.passed..</code></pre>.... |
| 35dc0 | 20 20 20 20 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 31 20 69 64 3d 22 6f 70 61 71 | ....................<h1.id="opaq |
| 35de0 | 75 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 6f 70 61 71 75 65 22 3e 6f 70 61 71 75 65 | ue"><a.href="#toc-opaque">opaque |
| 35e00 | 3c 2f 61 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 | </a>.<a.class="hdr".href="#opaqu |
| 35e20 | 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 31 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 | e">..</a></h1>........<p>....... |
| 35e40 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | <code.class="zig"><span.class="t |
| 35e60 | 6f 6b 2d 6b 77 22 3e 6f 70 61 71 75 65 3c 2f 73 70 61 6e 3e 20 7b 7d 3c 2f 63 6f 64 65 3e 20 64 | ok-kw">opaque</span>.{}</code>.d |
| 35e80 | 65 63 6c 61 72 65 73 20 61 20 6e 65 77 20 74 79 70 65 20 77 69 74 68 20 61 6e 20 75 6e 6b 6e 6f | eclares.a.new.type.with.an.unkno |
| 35ea0 | 77 6e 20 28 62 75 74 20 6e 6f 6e 2d 7a 65 72 6f 29 20 73 69 7a 65 20 61 6e 64 20 61 6c 69 67 6e | wn.(but.non-zero).size.and.align |
| 35ec0 | 6d 65 6e 74 2e 0a 20 20 20 20 20 20 49 74 20 63 61 6e 20 63 6f 6e 74 61 69 6e 20 64 65 63 6c 61 | ment........It.can.contain.decla |
| 35ee0 | 72 61 74 69 6f 6e 73 20 74 68 65 20 73 61 6d 65 20 61 73 20 3c 61 20 68 72 65 66 3d 22 23 73 74 | rations.the.same.as.<a.href="#st |
| 35f00 | 72 75 63 74 22 3e 73 74 72 75 63 74 73 3c 2f 61 3e 2c 20 3c 61 20 68 72 65 66 3d 22 23 75 6e 69 | ruct">structs</a>,.<a.href="#uni |
| 35f20 | 6f 6e 22 3e 75 6e 69 6f 6e 73 3c 2f 61 3e 2c 0a 20 20 20 20 20 20 61 6e 64 20 3c 61 20 68 72 65 | on">unions</a>,.......and.<a.hre |
| 35f40 | 66 3d 22 23 65 6e 75 6d 22 3e 65 6e 75 6d 73 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a | f="#enum">enums</a>........</p>. |
| 35f60 | 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 79 70 69 63 61 6c 6c | ......<p>.......This.is.typicall |
| 35f80 | 79 20 75 73 65 64 20 66 6f 72 20 74 79 70 65 20 73 61 66 65 74 79 20 77 68 65 6e 20 69 6e 74 65 | y.used.for.type.safety.when.inte |
| 35fa0 | 72 61 63 74 69 6e 67 20 77 69 74 68 20 43 20 63 6f 64 65 20 74 68 61 74 20 64 6f 65 73 20 6e 6f | racting.with.C.code.that.does.no |
| 35fc0 | 74 20 65 78 70 6f 73 65 20 73 74 72 75 63 74 20 64 65 74 61 69 6c 73 2e 0a 20 20 20 20 20 20 45 | t.expose.struct.details........E |
| 35fe0 | 78 61 6d 70 6c 65 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 | xample:.......</p>.......<p.clas |
| 36000 | 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 | s="file">test.zig</p><pre><code. |
| 36020 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | class="zig"><span.class="tok-kw" |
| 36040 | 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 63 6c 61 73 73 | >const</span>.Derp.=.<span.class |
| 36060 | 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 0a 3c 73 70 61 | ="tok-kw">opaque</span>.{};.<spa |
| 36080 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 57 61 | n.class="tok-kw">const</span>.Wa |
| 360a0 | 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 61 71 75 65 3c | t.=.<span.class="tok-kw">opaque< |
| 360c0 | 2f 73 70 61 6e 3e 20 7b 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | /span>.{};..<span.class="tok-kw" |
| 360e0 | 3e 65 78 74 65 72 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | >extern</span>.<span.class="tok- |
| 36100 | 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 |
| 36120 | 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 61 6e 20 63 6c | n">bar</span>(d:.*Derp).<span.cl |
| 36140 | 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 0a 3c 73 70 61 | ass="tok-type">void</span>;.<spa |
| 36160 | 6e 20 63 6c 61 73 73 3d 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 |
| 36180 | 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 77 3a 20 2a 57 | .class="tok-fn">foo</span>(w:.*W |
| 361a0 | 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 6c 6c 63 6f 6e | at).<span.class="tok-kw">callcon |
| 361c0 | 76 3c 2f 73 70 61 6e 3e 28 2e 43 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | v</span>(.C).<span.class="tok-ty |
| 361e0 | 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 29 3b 0a 7d 0a | pe">void</span>.{.....bar(w);.}. |
| 36200 | 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 |
| 36220 | 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 63 61 | >.<span.class="tok-str">"ca |
| 36240 | 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 6f 6f 28 3c 73 | ll.foo"</span>.{.....foo(<s |
| 36260 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 75 6e 64 65 66 69 6e 65 64 3c 2f | pan.class="tok-null">undefined</ |
| 36280 | 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 | span>);.}</code></pre><pre><code |
| 362a0 | 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a | .class="shell">$.zig.test.test.z |
| 362c0 | 69 67 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 | ig.<span.class="t0_1">./docgen_t |
| 362e0 | 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 36 3a 39 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c | mp/test.zig:6:9:.</span><span.cl |
| 36300 | 61 73 73 3d 22 74 33 31 5f 31 22 3e 65 72 72 6f 72 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 | ass="t31_1">error:.</span><span. |
| 36320 | 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 65 78 70 65 63 74 65 64 20 74 79 70 65 20 27 2a 44 65 72 | class="t0_1">expected.type.'*Der |
| 36340 | 70 27 2c 20 66 6f 75 6e 64 20 27 2a 57 61 74 27 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 62 61 72 28 | p',.found.'*Wat'</span>.....bar( |
| 36360 | 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 74 33 32 5f 31 22 3e | w);.........<span.class="t32_1"> |
| 36380 | 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f | ^</span>.<span.class="t0_1">./do |
| 363a0 | 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 36 3a 39 3a 20 3c 2f 73 70 61 6e 3e 3c 73 | cgen_tmp/test.zig:6:9:.</span><s |
| 363c0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 36 5f 31 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e 3e 3c | pan.class="t36_1">note:.</span>< |
| 363e0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 70 6f 69 6e 74 65 72 20 74 79 70 65 20 63 | span.class="t0_1">pointer.type.c |
| 36400 | 68 69 6c 64 20 27 57 61 74 27 20 63 61 6e 6e 6f 74 20 63 61 73 74 20 69 6e 74 6f 20 70 6f 69 6e | hild.'Wat'.cannot.cast.into.poin |
| 36420 | 74 65 72 20 74 79 70 65 20 63 68 69 6c 64 20 27 44 65 72 70 27 3c 2f 73 70 61 6e 3e 0a 20 20 20 | ter.type.child.'Derp'</span>.... |
| 36440 | 20 62 61 72 28 77 29 3b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 | .bar(w);.........<span.class="t3 |
| 36460 | 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 | 2_1">^</span>.</code></pre>..... |
| 36480 | 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 31 20 69 64 3d 22 62 6c 6f 63 6b 73 22 3e 3c 61 20 68 72 | ...........<h1.id="blocks"><a.hr |
| 364a0 | 65 66 3d 22 23 74 6f 63 2d 62 6c 6f 63 6b 73 22 3e 62 6c 6f 63 6b 73 3c 2f 61 3e 20 3c 61 20 63 | ef="#toc-blocks">blocks</a>.<a.c |
| 364c0 | 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 62 6c 6f 63 6b 73 22 3e c2 a7 3c 2f 61 3e | lass="hdr".href="#blocks">..</a> |
| 364e0 | 3c 2f 68 31 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 42 6c 6f 63 6b 73 20 61 72 | </h1>........<p>.......Blocks.ar |
| 36500 | 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 20 76 61 72 | e.used.to.limit.the.scope.of.var |
| 36520 | 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 70 3e 0a 20 | iable.declarations:.......</p>.. |
| 36540 | 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 | .....<p.class="file">test.zig</p |
| 36560 | 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c | ><pre><code.class="zig"><span.cl |
| 36580 | 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 |
| 365a0 | 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 61 63 63 65 73 73 20 76 61 72 69 | lass="tok-str">"access.vari |
| 365c0 | 61 62 6c 65 20 61 66 74 65 72 20 62 6c 6f 63 6b 20 73 63 6f 70 65 26 71 75 6f 74 3b 3c 2f 73 70 | able.after.block.scope"</sp |
| 365e0 | 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= |
| 36600 | 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 |
| 36620 | 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 |
| 36640 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 | .class="tok-number">1</span>;... |
| 36660 | 20 20 7d 0a 20 20 20 20 78 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | ..}.....x.+=.<span.class="tok-nu |
| 36680 | 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 70 | mber">1</span>;.}</code></pre><p |
| 366a0 | 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 | re><code.class="shell">$.zig.tes |
| 366c0 | 74 20 74 65 73 74 2e 7a 69 67 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f | t.test.zig.<span.class="t0_1">./ |
| 366e0 | 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 35 3a 35 3a 20 3c 2f 73 70 61 6e 3e | docgen_tmp/test.zig:5:5:.</span> |
| 36700 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 31 5f 31 22 3e 65 72 72 6f 72 3a 20 3c 2f 73 70 61 | <span.class="t31_1">error:.</spa |
| 36720 | 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 75 73 65 20 6f 66 20 75 6e 64 65 | n><span.class="t0_1">use.of.unde |
| 36740 | 63 6c 61 72 65 64 20 69 64 65 6e 74 69 66 69 65 72 20 27 78 27 3c 2f 73 70 61 6e 3e 0a 20 20 20 | clared.identifier.'x'</span>.... |
| 36760 | 20 78 20 2b 3d 20 31 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 | .x.+=.1;.....<span.class="t32_1" |
| 36780 | 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c | >^</span>.</code></pre>........< |
| 367a0 | 70 3e 42 6c 6f 63 6b 73 20 61 72 65 20 65 78 70 72 65 73 73 69 6f 6e 73 2e 20 57 68 65 6e 20 6c | p>Blocks.are.expressions..When.l |
| 367c0 | 61 62 65 6c 65 64 2c 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 | abeled,.<code.class="zig"><span. |
| 367e0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 62 72 65 61 6b 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 | class="tok-kw">break</span></cod |
| 36800 | 65 3e 20 63 61 6e 20 62 65 20 75 73 65 64 0a 20 20 20 20 20 20 74 6f 20 72 65 74 75 72 6e 20 61 | e>.can.be.used.......to.return.a |
| 36820 | 20 76 61 6c 75 65 20 66 72 6f 6d 20 74 68 65 20 62 6c 6f 63 6b 3a 0a 20 20 20 20 20 20 3c 2f 70 | .value.from.the.block:.......</p |
| 36840 | 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 | >.......<p.class="file">test.zig |
| 36860 | 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e | </p><pre><code.class="zig"><span |
| 36880 | 20 63 6c 61 73 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 |
| 368a0 | 20 3d 20 3c 73 70 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 |
| 368c0 | 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 |
| 368e0 | 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 |
| 36900 | 20 63 6c 61 73 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 |
| 36920 | 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 |
| 36940 | 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 |
| 36960 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 6c 61 62 65 6c 65 64 20 | n.class="tok-str">"labeled. |
| 36980 | 62 72 65 61 6b 20 66 72 6f 6d 20 6c 61 62 65 6c 65 64 20 62 6c 6f 63 6b 20 65 78 70 72 65 73 73 | break.from.labeled.block.express |
| 369a0 | 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 |
| 369c0 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 79 3a 20 3c 73 70 61 6e 20 | ss="tok-kw">var</span>.y:.<span. |
| 369e0 | 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 |
| 36a00 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 3c 2f 73 70 61 6e | pan.class="tok-number">123</span |
| 36a20 | 3e 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e | >;......<span.class="tok-kw">con |
| 36a40 | 73 74 3c 2f 73 70 61 6e 3e 20 78 20 3d 20 62 6c 6b 3a 20 7b 0a 20 20 20 20 20 20 20 20 79 20 2b | st</span>.x.=.blk:.{.........y.+ |
| 36a60 | 3d 20 3c 73 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 |
| 36a80 | 61 6e 3e 3b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | an>;.........<span.class="tok-kw |
| 36aa0 | 22 3e 62 72 65 61 6b 3c 2f 73 70 61 6e 3e 20 3a 62 6c 6b 20 79 3b 0a 20 20 20 20 7d 3b 0a 20 20 | ">break</span>.:blk.y;.....};... |
| 36ac0 | 20 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 | ..expect(x.==.<span.class="tok-n |
| 36ae0 | 75 6d 62 65 72 22 3e 31 32 34 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 65 78 70 65 63 74 28 79 | umber">124</span>);.....expect(y |
| 36b00 | 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 34 | .==.<span.class="tok-number">124 |
| 36b20 | 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f | </span>);.}</code></pre><pre><co |
| 36b40 | 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 | de.class="shell">$.zig.test.test |
| 36b60 | 2e 7a 69 67 0a 31 2f 31 20 74 65 73 74 20 26 71 75 6f 74 3b 6c 61 62 65 6c 65 64 20 62 72 65 61 | .zig.1/1.test."labeled.brea |
| 36b80 | 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 26 | k.from.labeled.block.expression& |
| 36ba0 | 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a | quot;....OK.All.1.tests.passed.. |
| 36bc0 | 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 48 65 72 65 2c 20 3c 63 | </code></pre>........<p>Here,.<c |
| 36be0 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 62 6c 6b 3c 2f 63 6f 64 65 3e 20 63 61 6e 20 62 | ode.class="zig">blk</code>.can.b |
| 36c00 | 65 20 61 6e 79 20 6e 61 6d 65 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 | e.any.name.</p>.......<p>See.als |
| 36c20 | 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 4c 61 62 65 6c 65 64 | o:</p><ul>.<li><a.href="#Labeled |
| 36c40 | 2d 77 68 69 6c 65 22 3e 4c 61 62 65 6c 65 64 20 77 68 69 6c 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c | -while">Labeled.while</a></li>.< |
| 36c60 | 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 4c 61 62 65 6c 65 64 2d 66 6f 72 22 3e 4c 61 62 65 6c 65 | li><a.href="#Labeled-for">Labele |
| 36c80 | 64 20 66 6f 72 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 0a 20 20 20 20 20 20 3c 68 32 | d.for</a></li>.</ul>.........<h2 |
| 36ca0 | 20 69 64 3d 22 53 68 61 64 6f 77 69 6e 67 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 53 68 | .id="Shadowing"><a.href="#toc-Sh |
| 36cc0 | 61 64 6f 77 69 6e 67 22 3e 53 68 61 64 6f 77 69 6e 67 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d | adowing">Shadowing</a>.<a.class= |
| 36ce0 | 22 68 64 72 22 20 68 72 65 66 3d 22 23 53 68 61 64 6f 77 69 6e 67 22 3e c2 a7 3c 2f 61 3e 3c 2f | "hdr".href="#Shadowing">..</a></ |
| 36d00 | 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 49 74 20 69 73 20 6e 65 76 65 72 20 61 6c 6c 6f 77 65 | h2>........<p>It.is.never.allowe |
| 36d20 | 64 20 66 6f 72 20 61 6e 20 69 64 65 6e 74 69 66 69 65 72 20 74 6f 20 22 68 69 64 65 22 20 61 6e | d.for.an.identifier.to."hide".an |
| 36d40 | 6f 74 68 65 72 20 6f 6e 65 20 62 79 20 75 73 69 6e 67 20 74 68 65 20 73 61 6d 65 20 6e 61 6d 65 | other.one.by.using.the.same.name |
| 36d60 | 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 | :</p>.......<p.class="file">test |
| 36d80 | 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c | .zig</p><pre><code.class="zig">< |
| 36da0 | 73 70 61 6e 20 63 6c 61 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> |
| 36dc0 | 20 70 69 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 | .pi.=.<span.class="tok-number">3 |
| 36de0 | 2e 31 34 3c 2f 73 70 61 6e 3e 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | .14</span>;..<span.class="tok-kw |
| 36e00 | 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 |
| 36e20 | 74 72 22 3e 26 71 75 6f 74 3b 69 6e 73 69 64 65 20 74 65 73 74 20 62 6c 6f 63 6b 26 71 75 6f 74 | tr">"inside.test.block" |
| 36e40 | 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- |
| 36e60 | 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 4c 65 74 27 73 20 65 76 65 6e 20 67 6f 20 69 6e 73 69 64 65 | comment">//.Let's.even.go.inside |
| 36e80 | 20 61 6e 6f 74 68 65 72 20 62 6c 6f 63 6b 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 7b 0a 20 20 20 20 | .another.block</span>.....{..... |
| 36ea0 | 20 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 |
| 36ec0 | 61 6e 3e 20 70 69 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 | an>.pi:.<span.class="tok-type">i |
| 36ee0 | 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 |
| 36f00 | 62 65 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 7d 0a 7d 3c 2f 63 6f 64 65 3e | ber">1234</span>;.....}.}</code> |
| 36f20 | 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 | </pre><pre><code.class="shell">$ |
| 36f40 | 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | .zig.test.test.zig.<span.class=" |
| 36f60 | 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 36 3a 39 3a | t0_1">./docgen_tmp/test.zig:6:9: |
| 36f80 | 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 31 5f 31 22 3e 65 72 72 6f | .</span><span.class="t31_1">erro |
| 36fa0 | 72 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 72 65 64 | r:.</span><span.class="t0_1">red |
| 36fc0 | 65 66 69 6e 69 74 69 6f 6e 20 6f 66 20 27 70 69 27 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 | efinition.of.'pi'</span>........ |
| 36fe0 | 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 20 20 3c 73 70 | .var.pi:.i32.=.1234;.........<sp |
| 37000 | 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 | an.class="t32_1">^</span>.<span. |
| 37020 | 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a | class="t0_1">./docgen_tmp/test.z |
| 37040 | 69 67 3a 31 3a 31 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 36 5f | ig:1:1:.</span><span.class="t36_ |
| 37060 | 31 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f | 1">note:.</span><span.class="t0_ |
| 37080 | 31 22 3e 70 72 65 76 69 6f 75 73 20 64 65 66 69 6e 69 74 69 6f 6e 20 69 73 20 68 65 72 65 3c 2f | 1">previous.definition.is.here</ |
| 370a0 | 73 70 61 6e 3e 0a 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 |
| 370c0 | 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 | ss="t32_1">^</span>.</code></pre |
| 370e0 | 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 42 65 63 61 75 73 65 20 6f 66 20 74 68 | >........<p>.......Because.of.th |
| 37100 | 69 73 2c 20 77 68 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 | is,.when.you.read.Zig.code.you.c |
| 37120 | 61 6e 20 72 65 6c 79 20 6f 6e 20 61 6e 20 69 64 65 6e 74 69 66 69 65 72 20 61 6c 77 61 79 73 20 | an.rely.on.an.identifier.always. |
| 37140 | 6d 65 61 6e 69 6e 67 20 74 68 65 20 73 61 6d 65 20 74 68 69 6e 67 2c 0a 20 20 20 20 20 20 77 69 | meaning.the.same.thing,.......wi |
| 37160 | 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 65 64 2e 20 4e 6f | thin.the.scope.it.is.defined..No |
| 37180 | 74 65 20 74 68 61 74 20 79 6f 75 20 63 61 6e 2c 20 68 6f 77 65 76 65 72 20 75 73 65 20 74 68 65 | te.that.you.can,.however.use.the |
| 371a0 | 20 73 61 6d 65 20 6e 61 6d 65 20 69 66 20 74 68 65 20 73 63 6f 70 65 73 20 61 72 65 20 73 65 70 | .same.name.if.the.scopes.are.sep |
| 371c0 | 61 72 61 74 65 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 | arate:.......</p>.......<p.class |
| 371e0 | 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 | ="file">test.zig</p><pre><code.c |
| 37200 | 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | lass="zig"><span.class="tok-kw"> |
| 37220 | 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 |
| 37240 | 22 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 | ">"separate.scopes"</s |
| 37260 | 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 6c 61 73 73 | pan>.{.....{.........<span.class |
| 37280 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 70 69 20 3d 20 3c 73 70 61 | ="tok-kw">const</span>.pi.=.<spa |
| 372a0 | 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 3e | n.class="tok-number">3.14</span> |
| 372c0 | 3b 0a 20 20 20 20 7d 0a 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | ;.....}.....{.........<span.clas |
| 372e0 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 70 69 3a 20 3c 73 70 61 6e 20 | s="tok-kw">var</span>.pi:.<span. |
| 37300 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 20 3d 20 3c | class="tok-type">bool</span>.=.< |
| 37320 | 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 |
| 37340 | 3e 3b 0a 20 20 20 20 7d 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 | >;.....}.}</code></pre><pre><cod |
| 37360 | 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e | e.class="shell">$.zig.test.test. |
| 37380 | 7a 69 67 0a 31 2f 31 20 74 65 73 74 20 26 71 75 6f 74 3b 73 65 70 61 72 61 74 65 20 73 63 6f 70 | zig.1/1.test."separate.scop |
| 373a0 | 65 73 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 | es"....OK.All.1.tests.passe |
| 373c0 | 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 0a | d..</code></pre>................ |
| 373e0 | 0a 20 20 20 20 20 20 3c 68 31 20 69 64 3d 22 73 77 69 74 63 68 22 3e 3c 61 20 68 72 65 66 3d 22 | .......<h1.id="switch"><a.href=" |
| 37400 | 23 74 6f 63 2d 73 77 69 74 63 68 22 3e 73 77 69 74 63 68 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 | #toc-switch">switch</a>.<a.class |
| 37420 | 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 73 77 69 74 63 68 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 31 | ="hdr".href="#switch">..</a></h1 |
| 37440 | 3e 0a 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 73 77 69 74 63 68 2e | >........<p.class="file">switch. |
| 37460 | 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 | zig</p><pre><code.class="zig"><s |
| 37480 | 70 61 6e 20 63 6c 61 73 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>. |
| 374a0 | 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"> |
| 374c0 | 40 69 6d 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- |
| 374e0 | 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 |
| 37500 | 70 61 6e 20 63 6c 61 73 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>. |
| 37520 | 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 |
| 37540 | 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>.< |
| 37560 | 73 70 61 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 |
| 37580 | 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 |
| 375a0 | 6e 20 63 6c 61 73 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: |
| 375c0 | 20 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 |
| 375e0 | 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 |
| 37600 | 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 |
| 37620 | 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=" |
| 37640 | 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 |
| 37660 | 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>;..... |
| 37680 | 20 3c 73 70 61 6e 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 |
| 376a0 | 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 |
| 376c0 | 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. |
| 376e0 | 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 |
| 37700 | 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>... |
| 37720 | 20 20 3c 73 70 61 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">//</ |
| 37740 | 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 |
| 37760 | 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 |
| 37780 | 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 |
| 377a0 | 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 |
| 377c0 | 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 |
| 377e0 | 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 |
| 37800 | 6e 20 63 6c 61 73 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. |
| 37820 | 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 |
| 37840 | 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=" |
| 37860 | 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 |
| 37880 | 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>. |
| 378a0 | 20 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" |
| 378c0 | 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 |
| 378e0 | 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 |
| 37900 | 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 |
| 37920 | 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>,........ |
| 37940 | 20 20 3c 73 70 61 6e 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 |
| 37960 | 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 |
| 37980 | 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 |
| 379a0 | 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 |
| 379c0 | 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 62 6f 74 68 20 65 6e 64 73 2e 3c 2f 73 70 61 6e 3e 0a 20 | -comment">//.both.ends.</span>.. |
| 379e0 | 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 3e | .......<span.class="tok-number"> |
| 37a00 | 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 75 6d 62 | 5</span>...<span.class="tok-numb |
| 37a20 | 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 61 73 73 | er">100</span>.=>.<span.class |
| 37a40 | 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 20 20 20 | ="tok-number">1</span>,......... |
| 37a60 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 42 72 | .<span.class="tok-comment">//.Br |
| 37a80 | 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 70 6c 65 | anches.can.be.arbitrarily.comple |
| 37aa0 | 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 3d 22 74 | x.</span>.........<span.class="t |
| 37ac0 | 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 6c 6b 3a | ok-number">101</span>.=>.blk: |
| 37ae0 | 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | .{.............<span.class="tok- |
| 37b00 | 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 63 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | kw">const</span>.c:.<span.class= |
| 37b20 | 22 74 6f 6b 2d 74 79 70 65 22 3e 75 36 34 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c | "tok-type">u64</span>.=.<span.cl |
| 37b40 | 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 20 | ass="tok-number">5</span>;...... |
| 37b60 | 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 62 72 65 61 | .......<span.class="tok-kw">brea |
| 37b80 | 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 3d 22 74 | k</span>.:blk.c.*.<span.class="t |
| 37ba0 | 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 61 73 | ok-number">2</span>.+.<span.clas |
| 37bc0 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 20 20 20 | s="tok-number">1</span>;........ |
| 37be0 | 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 2d 63 6f | .},..........<span.class="tok-co |
| 37c00 | 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 61 72 79 | mment">//.Switching.on.arbitrary |
| 37c20 | 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 6e 67 20 | .expressions.is.allowed.as.long. |
| 37c40 | 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 6c 61 73 | as.the</span>.........<span.clas |
| 37c60 | 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 20 69 73 | s="tok-comment">//.expression.is |
| 37c80 | 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 3e 0a 20 | .known.at.compile-time.</span>.. |
| 37ca0 | 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 3c 73 70 61 | .......zz.=>.zz,.........<spa |
| 37cc0 | 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> |
| 37ce0 | 20 62 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 | .blk:.{.............<span.class= |
| 37d00 | 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 3c 73 70 61 6e 20 63 | "tok-kw">const</span>.d:.<span.c |
| 37d20 | 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 | lass="tok-type">u32</span>.=.<sp |
| 37d40 | 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>;. |
| 37d60 | 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | ............<span.class="tok-kw" |
| 37d80 | 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | >const</span>.e:.<span.class="to |
| 37da0 | 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 |
| 37dc0 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 30 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 20 20 | ="tok-number">100</span>;....... |
| 37de0 | 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 62 72 65 61 6b | ......<span.class="tok-kw">break |
| 37e00 | 3c 2f 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 | </span>.:blk.d.+.e;.........}.=& |
| 37e20 | 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 37 | gt;.<span.class="tok-number">107 |
| 37e40 | 3c 2f 73 70 61 6e 3e 2c 0a 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | </span>,..........<span.class="t |
| 37e60 | 6f 6b 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 | ok-comment">//.The.else.branch.c |
| 37e80 | 61 74 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 | atches.everything.not.already.ca |
| 37ea0 | 70 74 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 | ptured.</span>.........<span.cla |
| 37ec0 | 73 73 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 | ss="tok-comment">//.Else.branche |
| 37ee0 | 73 20 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 | s.are.mandatory.unless.the.entir |
| 37f00 | 65 20 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 | e.range.of.values</span>........ |
| 37f20 | 20 3c 73 70 61 6e 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 | .<span.class="tok-comment">//.is |
| 37f40 | 20 68 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 | .handled.</span>.........<span.c |
| 37f60 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 3d 26 67 74 3b 20 | lass="tok-kw">else</span>.=>. |
| 37f80 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 39 3c 2f 73 70 61 6e | <span.class="tok-number">9</span |
| 37fa0 | 3e 2c 0a 20 20 20 20 7d 3b 0a 0a 20 20 20 20 65 78 70 65 63 74 28 62 20 3d 3d 20 3c 73 70 61 6e | >,.....};......expect(b.==.<span |
| 37fc0 | 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 7d | .class="tok-number">1</span>);.} |
| 37fe0 | 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 53 | ..<span.class="tok-comment">//.S |
| 38000 | 77 69 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 | witch.expressions.can.be.used.ou |
| 38020 | 74 73 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 | tside.a.function:</span>.<span.c |
| 38040 | 6c 61 73 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 | lass="tok-kw">const</span>.os_ms |
| 38060 | 67 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 77 69 74 63 68 3c | g.=.<span.class="tok-kw">switch< |
| 38080 | 2f 73 70 61 6e 3e 20 28 73 74 64 2e 54 61 72 67 65 74 2e 63 75 72 72 65 6e 74 2e 6f 73 2e 74 61 | /span>.(std.Target.current.os.ta |
| 380a0 | 67 29 20 7b 0a 20 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 | g).{......linux.=>.<span.clas |
| 380c0 | 73 3d 22 74 6f 6b 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 | s="tok-str">"we.found.a.lin |
| 380e0 | 75 78 20 75 73 65 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 | ux.user"</span>,.....<span. |
| 38100 | 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>.=> |
| 38120 | 20 3c 73 70 61 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 74 | .<span.class="tok-str">"not |
| 38140 | 20 61 20 6c 69 6e 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 | .a.linux.user"</span>,.};.. |
| 38160 | 3c 73 70 61 6e 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 73 | <span.class="tok-comment">//.Ins |
| 38180 | 69 64 65 20 61 20 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 | ide.a.function,.switch.statement |
| 381a0 | 73 20 69 6d 70 6c 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 | s.implicitly.are.compile-time</s |
| 381c0 | 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">/ |
| 381e0 | 2f 20 65 76 61 6c 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 | /.evaluated.if.the.target.expres |
| 38200 | 73 69 6f 6e 20 69 73 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 6b 6e 6f 77 6e 2e 3c 2f 73 70 61 | sion.is.compile-time.known.</spa |
| 38220 | 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 |
| 38240 | 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">" |
| 38260 | 73 77 69 74 63 68 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 | switch.inside.function"</sp |
| 38280 | 61 6e 3e 20 7b 0a 20 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 | an>.{.....<span.class="tok-kw">s |
| 382a0 | 77 69 74 63 68 3c 2f 73 70 61 6e 3e 20 28 73 74 64 2e 54 61 72 67 65 74 2e 63 75 72 72 65 6e 74 | witch</span>.(std.Target.current |
| 382c0 | 2e 6f 73 2e 74 61 67 29 20 7b 0a 20 20 20 20 20 20 20 20 2e 66 75 63 68 73 69 61 20 3d 26 67 74 | .os.tag).{..........fuchsia.=> |
| 382e0 | 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 22 74 6f 6b | ;.{.............<span.class="tok |
| 38300 | 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 4f 6e 20 61 6e 20 4f 53 20 6f 74 68 65 72 20 74 68 61 6e | -comment">//.On.an.OS.other.than |
| 38320 | 20 66 75 63 68 73 69 61 2c 20 62 6c 6f 63 6b 20 69 73 20 6e 6f 74 20 65 76 65 6e 20 61 6e 61 6c | .fuchsia,.block.is.not.even.anal |
| 38340 | 79 7a 65 64 2c 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 | yzed,</span>.............<span.c |
| 38360 | 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 73 6f 20 74 68 69 73 20 63 6f | lass="tok-comment">//.so.this.co |
| 38380 | 6d 70 69 6c 65 20 65 72 72 6f 72 20 69 73 20 6e 6f 74 20 74 72 69 67 67 65 72 65 64 2e 3c 2f 73 | mpile.error.is.not.triggered.</s |
| 383a0 | 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 |
| 383c0 | 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 4f 6e 20 66 75 63 68 73 69 61 20 74 68 69 73 20 63 6f | k-comment">//.On.fuchsia.this.co |
| 383e0 | 6d 70 69 6c 65 20 65 72 72 6f 72 20 77 6f 75 6c 64 20 62 65 20 74 72 69 67 67 65 72 65 64 2e 3c | mpile.error.would.be.triggered.< |
| 38400 | 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | /span>.............<span.class=" |
| 38420 | 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 |
| 38440 | 3e 28 3c 73 70 61 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 | >(<span.class="tok-str">"fu |
| 38460 | 63 68 73 69 61 20 6e 6f 74 20 73 75 70 70 6f 72 74 65 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e | chsia.not.supported"</span> |
| 38480 | 29 3b 0a 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | );.........},.........<span.clas |
| 384a0 | 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 7b 7d 2c | s="tok-kw">else</span>.=>.{}, |
| 384c0 | 0a 20 20 20 20 7d 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 | .....}.}</code></pre><pre><code. |
| 384e0 | 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 73 77 69 74 63 68 2e | class="shell">$.zig.test.switch. |
| 38500 | 7a 69 67 0a 31 2f 32 20 74 65 73 74 20 26 71 75 6f 74 3b 73 77 69 74 63 68 20 73 69 6d 70 6c 65 | zig.1/2.test."switch.simple |
| 38520 | 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 32 2f 32 20 74 65 73 74 20 26 71 75 6f 74 3b 73 77 69 74 | "....OK.2/2.test."swit |
| 38540 | 63 68 20 69 6e 73 69 64 65 20 66 75 6e 63 74 69 6f 6e 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 41 | ch.inside.function"....OK.A |
| 38560 | 6c 6c 20 32 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e | ll.2.tests.passed..</code></pre> |
| 38580 | 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a | ........<p>.......<code.class="z |
| 385a0 | 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 77 69 74 63 68 3c | ig"><span.class="tok-kw">switch< |
| 385c0 | 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 63 61 70 | /span></code>.can.be.used.to.cap |
| 385e0 | 74 75 72 65 20 74 68 65 20 66 69 65 6c 64 20 76 61 6c 75 65 73 0a 20 20 20 20 20 20 6f 66 20 61 | ture.the.field.values.......of.a |
| 38600 | 20 3c 61 20 68 72 65 66 3d 22 23 54 61 67 67 65 64 2d 75 6e 69 6f 6e 22 3e 54 61 67 67 65 64 20 | .<a.href="#Tagged-union">Tagged. |
| 38620 | 75 6e 69 6f 6e 3c 2f 61 3e 2e 20 4d 6f 64 69 66 69 63 61 74 69 6f 6e 73 20 74 6f 20 74 68 65 20 | union</a>..Modifications.to.the. |
| 38640 | 66 69 65 6c 64 20 76 61 6c 75 65 73 20 63 61 6e 20 62 65 0a 20 20 20 20 20 20 64 6f 6e 65 20 62 | field.values.can.be.......done.b |
| 38660 | 79 20 70 6c 61 63 69 6e 67 20 61 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 2a 3c | y.placing.a.<code.class="zig">*< |
| 38680 | 2f 63 6f 64 65 3e 20 62 65 66 6f 72 65 20 74 68 65 20 63 61 70 74 75 72 65 20 76 61 72 69 61 62 | /code>.before.the.capture.variab |
| 386a0 | 6c 65 20 6e 61 6d 65 2c 0a 20 20 20 20 20 20 74 75 72 6e 69 6e 67 20 69 74 20 69 6e 74 6f 20 61 | le.name,.......turning.it.into.a |
| 386c0 | 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 20 63 6c | .pointer........</p>.......<p.cl |
| 386e0 | 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 | ass="file">test.zig</p><pre><cod |
| 38700 | 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | e.class="zig"><span.class="tok-k |
| 38720 | 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 |
| 38740 | 6c 61 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 |
| 38760 | 3e 28 3c 73 70 61 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 |
| 38780 | 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;. |
| 387a0 | 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 |
| 387c0 | 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 77 | >.<span.class="tok-str">"sw |
| 387e0 | 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 3b 3c 2f 73 70 61 6e | itch.on.tagged.union"</span |
| 38800 | 3e 20 7b 0a 20 20 20 20 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 |
| 38820 | 73 74 3c 2f 73 70 61 6e 3e 20 50 6f 69 6e 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | st</span>.Point.=.<span.class="t |
| 38840 | 6f 6b 2d 6b 77 22 3e 73 74 72 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 78 | ok-kw">struct</span>.{.........x |
| 38860 | 3a 20 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 |
| 38880 | 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 73 3d 22 74 6f 6b 2d | n>,.........y:.<span.class="tok- |
| 388a0 | 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 20 20 20 3c 73 70 61 | type">u8</span>,.....};.....<spa |
| 388c0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 49 74 | n.class="tok-kw">const</span>.It |
| 388e0 | 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 3e 75 6e 69 6f 6e 3c | em.=.<span.class="tok-kw">union< |
| 38900 | 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 |
| 38920 | 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 61 6e 20 63 6c 61 73 | </span>).{.........a:.<span.clas |
| 38940 | 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 20 20 20 | s="tok-type">u32</span>,........ |
| 38960 | 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 20 20 20 20 20 65 3a | .c:.Point,.........d,.........e: |
| 38980 | 20 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 |
| 389a0 | 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 6f 6b | n>,.....};......<span.class="tok |
| 389c0 | 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 20 2e 63 20 3d 20 50 | -kw">var</span>.a.=.Item{..c.=.P |
| 389e0 | 6f 69 6e 74 7b 20 2e 78 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | oint{..x.=.<span.class="tok-numb |
| 38a00 | 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 2c 20 2e 79 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | er">1</span>,..y.=.<span.class=" |
| 38a20 | 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 0a 0a 20 20 20 20 3c | tok-number">2</span>.}.};......< |
| 38a40 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 53 77 69 74 | span.class="tok-comment">//.Swit |
| 38a60 | 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 6d 73 20 69 73 20 61 | ching.on.more.complex.enums.is.a |
| 38a80 | 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 63 6c 61 73 73 3d 22 | llowed.</span>.....<span.class=" |
| 38aa0 | 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 62 20 3d 20 3c 73 70 61 6e 20 63 | tok-kw">const</span>.b.=.<span.c |
| 38ac0 | 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 61 29 20 | lass="tok-kw">switch</span>.(a). |
| 38ae0 | 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 |
| 38b00 | 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 20 61 6c 6c 6f 77 65 | nt">//.A.capture.group.is.allowe |
| 38b20 | 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 74 75 72 6e 20 74 68 | d.on.a.match,.and.will.return.th |
| 38b40 | 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 61 6e 20 63 6c 61 73 | e.enum</span>.........<span.clas |
| 38b60 | 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 6d 61 74 63 68 65 64 | s="tok-comment">//.value.matched |
| 38b80 | 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 20 62 6f 74 68 20 63 | ..If.the.payload.types.of.both.c |
| 38ba0 | 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 20 20 20 20 20 20 20 | ases.are.the.same</span>........ |
| 38bc0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 74 68 | .<span.class="tok-comment">//.th |
| 38be0 | 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 6d 65 20 73 77 69 74 | ey.can.be.put.into.the.same.swit |
| 38c00 | 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 49 74 65 6d 2e 61 2c | ch.prong.</span>.........Item.a, |
| 38c20 | 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 2c 0a 0a 20 20 20 20 | .Item.e.=>.|item|.item,...... |
| 38c40 | 20 20 20 20 3c 73 70 61 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">// |
| 38c60 | 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 65 64 20 76 61 6c 75 | .A.reference.to.the.matched.valu |
| 38c80 | 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 2a 60 20 73 79 6e 74 | e.can.be.obtained.using.`*`.synt |
| 38ca0 | 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 20 3d 26 67 74 3b 20 | ax.</span>.........Item.c.=>. |
| 38cc0 | 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 20 20 69 74 65 6d 2e | |*item|.blk:.{.............item. |
| 38ce0 | 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 75 6d 62 65 72 22 3e | *.x.+=.<span.class="tok-number"> |
| 38d00 | 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | 1</span>;.............<span.clas |
| 38d20 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 62 72 65 61 6b 3c 2f 73 70 61 6e 3e 20 3a 62 6c 6b 20 3c 73 70 | s="tok-kw">break</span>.:blk.<sp |
| 38d40 | 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 3b 0a | an.class="tok-number">6</span>;. |
| 38d60 | 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 3d | ........},..........<span.class= |
| 38d80 | 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 69 73 20 72 65 71 75 | "tok-comment">//.No.else.is.requ |
| 38da0 | 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 61 73 20 65 78 68 61 | ired.if.the.types.cases.was.exha |
| 38dc0 | 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 20 20 20 20 20 20 20 | ustively.handled</span>......... |
| 38de0 | 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 22 74 6f 6b 2d 6e 75 | Item.d.=>.<span.class="tok-nu |
| 38e00 | 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 20 20 20 65 78 70 65 | mber">8</span>,.....};......expe |
| 38e20 | 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" |
| 38e40 | 3e 36 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 65 78 70 65 63 74 28 61 2e 63 2e 78 20 3d 3d 20 | >6</span>);.....expect(a.c.x.==. |
| 38e60 | 3c 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 |
| 38e80 | 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 | >);.}</code></pre><pre><code.cla |
| 38ea0 | 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 31 | ss="shell">$.zig.test.test.zig.1 |
| 38ec0 | 2f 31 20 74 65 73 74 20 26 71 75 6f 74 3b 73 77 69 74 63 68 20 6f 6e 20 74 61 67 67 65 64 20 75 | /1.test."switch.on.tagged.u |
| 38ee0 | 6e 69 6f 6e 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 | nion"....OK.All.1.tests.pas |
| 38f00 | 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 | sed..</code></pre>........<p>See |
| 38f20 | 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 63 6f 6d | .also:</p><ul>.<li><a.href="#com |
| 38f40 | 70 74 69 6d 65 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 | ptime">comptime</a></li>.<li><a. |
| 38f60 | 68 72 65 66 3d 22 23 65 6e 75 6d 22 3e 65 6e 75 6d 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c | href="#enum">enum</a></li>.<li>< |
| 38f80 | 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 65 45 | a.href="#compileError">@compileE |
| 38fa0 | 72 72 6f 72 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 43 6f 6d 70 | rror</a></li>.<li><a.href="#Comp |
| 38fc0 | 69 6c 65 2d 56 61 72 69 61 62 6c 65 73 22 3e 43 6f 6d 70 69 6c 65 20 56 61 72 69 61 62 6c 65 73 | ile-Variables">Compile.Variables |
| 38fe0 | 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 | </a></li>.</ul>.........<h2.id=" |
| 39000 | 45 78 68 61 75 73 74 69 76 65 2d 53 77 69 74 63 68 69 6e 67 22 3e 3c 61 20 68 72 65 66 3d 22 23 | Exhaustive-Switching"><a.href="# |
| 39020 | 74 6f 63 2d 45 78 68 61 75 73 74 69 76 65 2d 53 77 69 74 63 68 69 6e 67 22 3e 45 78 68 61 75 73 | toc-Exhaustive-Switching">Exhaus |
| 39040 | 74 69 76 65 20 53 77 69 74 63 68 69 6e 67 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 | tive.Switching</a>.<a.class="hdr |
| 39060 | 22 20 68 72 65 66 3d 22 23 45 78 68 61 75 73 74 69 76 65 2d 53 77 69 74 63 68 69 6e 67 22 3e c2 | ".href="#Exhaustive-Switching">. |
| 39080 | 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 57 68 65 6e | .</a></h2>........<p>.......When |
| 390a0 | 20 61 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | .a.<code.class="zig"><span.class |
| 390c0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 73 77 69 74 63 68 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 65 | ="tok-kw">switch</span></code>.e |
| 390e0 | 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 64 65 | xpression.does.not.have.an.<code |
| 39100 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | .class="zig"><span.class="tok-kw |
| 39120 | 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 63 6c 61 75 73 65 2c 0a 20 20 20 | ">else</span></code>.clause,.... |
| 39140 | 20 20 20 69 74 20 6d 75 73 74 20 65 78 68 61 75 73 74 69 76 65 6c 79 20 6c 69 73 74 20 61 6c 6c | ...it.must.exhaustively.list.all |
| 39160 | 20 74 68 65 20 70 6f 73 73 69 62 6c 65 20 76 61 6c 75 65 73 2e 20 46 61 69 6c 75 72 65 20 74 6f | .the.possible.values..Failure.to |
| 39180 | 20 64 6f 20 73 6f 20 69 73 20 61 20 63 6f 6d 70 69 6c 65 20 65 72 72 6f 72 3a 0a 20 20 20 20 20 | .do.so.is.a.compile.error:...... |
| 391a0 | 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 | .</p>.......<p.class="file">test |
| 391c0 | 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c | .zig</p><pre><code.class="zig">< |
| 391e0 | 73 70 61 6e 20 63 6c 61 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> |
| 39200 | 20 43 6f 6c 6f 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6e | .Color.=.<span.class="tok-kw">en |
| 39220 | 75 6d 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 61 75 74 6f 2c 0a 20 20 20 20 6f 66 66 2c 0a 20 | um</span>.{.....auto,.....off,.. |
| 39240 | 20 20 20 6f 6e 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | ...on,.};..<span.class="tok-kw"> |
| 39260 | 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 |
| 39280 | 22 3e 26 71 75 6f 74 3b 65 78 68 61 75 73 74 69 76 65 20 73 77 69 74 63 68 69 6e 67 26 71 75 6f | ">"exhaustive.switching&quo |
| 392a0 | 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 |
| 392c0 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 63 6f 6c 6f 72 20 3d 20 43 6f 6c 6f 72 2e | -kw">const</span>.color.=.Color. |
| 392e0 | 6f 66 66 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 77 | off;.....<span.class="tok-kw">sw |
| 39300 | 69 74 63 68 3c 2f 73 70 61 6e 3e 20 28 63 6f 6c 6f 72 29 20 7b 0a 20 20 20 20 20 20 20 20 43 6f | itch</span>.(color).{.........Co |
| 39320 | 6c 6f 72 2e 61 75 74 6f 20 3d 26 67 74 3b 20 7b 7d 2c 0a 20 20 20 20 20 20 20 20 43 6f 6c 6f 72 | lor.auto.=>.{},.........Color |
| 39340 | 2e 6f 6e 20 3d 26 67 74 3b 20 7b 7d 2c 0a 20 20 20 20 7d 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 | .on.=>.{},.....}.}</code></pr |
| 39360 | 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 | e><pre><code.class="shell">$.zig |
| 39380 | 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 | .test.test.zig.<span.class="t0_1 |
| 393a0 | 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 39 3a 35 3a 20 3c 2f 73 | ">./docgen_tmp/test.zig:9:5:.</s |
| 393c0 | 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 31 5f 31 22 3e 65 72 72 6f 72 3a 20 3c | pan><span.class="t31_1">error:.< |
| 393e0 | 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 65 6e 75 6d 65 72 61 | /span><span.class="t0_1">enumera |
| 39400 | 74 69 6f 6e 20 76 61 6c 75 65 20 27 43 6f 6c 6f 72 2e 6f 66 66 27 20 6e 6f 74 20 68 61 6e 64 6c | tion.value.'Color.off'.not.handl |
| 39420 | 65 64 20 69 6e 20 73 77 69 74 63 68 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 73 77 69 74 63 68 20 28 | ed.in.switch</span>.....switch.( |
| 39440 | 63 6f 6c 6f 72 29 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 | color).{.....<span.class="t32_1" |
| 39460 | 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 | >^</span>.<span.class="t0_1">./d |
| 39480 | 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 37 3a 32 39 3a 20 3c 2f 73 70 61 6e 3e | ocgen_tmp/test.zig:7:29:.</span> |
| 394a0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 36 5f 31 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e | <span.class="t36_1">note:.</span |
| 394c0 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 72 65 66 65 72 65 6e 63 65 64 20 68 | ><span.class="t0_1">referenced.h |
| 394e0 | 65 72 65 3c 2f 73 70 61 6e 3e 0a 74 65 73 74 20 26 71 75 6f 74 3b 65 78 68 61 75 73 74 69 76 65 | ere</span>.test."exhaustive |
| 39500 | 20 73 77 69 74 63 68 69 6e 67 26 71 75 6f 74 3b 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 | .switching".{.............. |
| 39520 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f | ...............<span.class="t32_ |
| 39540 | 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 | 1">^</span>.</code></pre>....... |
| 39560 | 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 53 77 69 74 63 68 69 6e 67 2d 77 69 74 68 2d | .........<h2.id="Switching-with- |
| 39580 | 45 6e 75 6d 2d 4c 69 74 65 72 61 6c 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 53 77 69 | Enum-Literals"><a.href="#toc-Swi |
| 395a0 | 74 63 68 69 6e 67 2d 77 69 74 68 2d 45 6e 75 6d 2d 4c 69 74 65 72 61 6c 73 22 3e 53 77 69 74 63 | tching-with-Enum-Literals">Switc |
| 395c0 | 68 69 6e 67 20 77 69 74 68 20 45 6e 75 6d 20 4c 69 74 65 72 61 6c 73 3c 2f 61 3e 20 3c 61 20 63 | hing.with.Enum.Literals</a>.<a.c |
| 395e0 | 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 53 77 69 74 63 68 69 6e 67 2d 77 69 74 68 | lass="hdr".href="#Switching-with |
| 39600 | 2d 45 6e 75 6d 2d 4c 69 74 65 72 61 6c 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 | -Enum-Literals">..</a></h2>..... |
| 39620 | 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 45 6e 75 6d 2d 4c 69 74 65 | ...<p>.......<a.href="#Enum-Lite |
| 39640 | 72 61 6c 73 22 3e 45 6e 75 6d 20 4c 69 74 65 72 61 6c 73 3c 2f 61 3e 20 63 61 6e 20 62 65 20 75 | rals">Enum.Literals</a>.can.be.u |
| 39660 | 73 65 66 75 6c 20 74 6f 20 75 73 65 20 77 69 74 68 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a | seful.to.use.with.<code.class="z |
| 39680 | 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 77 69 74 63 68 3c | ig"><span.class="tok-kw">switch< |
| 396a0 | 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 74 6f 20 61 76 6f 69 64 0a 20 20 20 20 20 20 72 65 70 | /span></code>.to.avoid.......rep |
| 396c0 | 65 74 69 74 69 76 65 6c 79 20 73 70 65 63 69 66 79 69 6e 67 20 3c 61 20 68 72 65 66 3d 22 23 65 | etitively.specifying.<a.href="#e |
| 396e0 | 6e 75 6d 22 3e 65 6e 75 6d 3c 2f 61 3e 20 6f 72 20 3c 61 20 68 72 65 66 3d 22 23 75 6e 69 6f 6e | num">enum</a>.or.<a.href="#union |
| 39700 | 22 3e 75 6e 69 6f 6e 3c 2f 61 3e 20 74 79 70 65 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 | ">union</a>.types:.......</p>... |
| 39720 | 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e | ....<p.class="file">test.zig</p> |
| 39740 | 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 | <pre><code.class="zig"><span.cla |
| 39760 | 73 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.=.< |
| 39780 | 73 70 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 |
| 397a0 | 3c 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 |
| 397c0 | 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 |
| 397e0 | 73 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. |
| 39800 | 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 |
| 39820 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 43 6f 6c 6f 72 20 3d | ss="tok-kw">const</span>.Color.= |
| 39840 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6e 75 6d 3c 2f 73 70 61 6e | .<span.class="tok-kw">enum</span |
| 39860 | 3e 20 7b 0a 20 20 20 20 61 75 74 6f 2c 0a 20 20 20 20 6f 66 66 2c 0a 20 20 20 20 6f 6e 2c 0a 7d | >.{.....auto,.....off,.....on,.} |
| 39880 | 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 |
| 398a0 | 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">" |
| 398c0 | 65 6e 75 6d 20 6c 69 74 65 72 61 6c 73 20 77 69 74 68 20 73 77 69 74 63 68 26 71 75 6f 74 3b 3c | enum.literals.with.switch"< |
| 398e0 | 2f 73 70 61 6e 3e 20 7b 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 |
| 39900 | 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 |
| 39920 | 3b 0a 20 20 20 20 3c 73 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 |
| 39940 | 3c 2f 73 70 61 6e 3e 20 72 65 73 75 6c 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | </span>.result.=.<span.class="to |
| 39960 | 6b 2d 6b 77 22 3e 73 77 69 74 63 68 3c 2f 73 70 61 6e 3e 20 28 63 6f 6c 6f 72 29 20 7b 0a 20 20 | k-kw">switch</span>.(color).{... |
| 39980 | 20 20 20 20 20 20 2e 61 75 74 6f 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | .......auto.=>.<span.class="t |
| 399a0 | 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 2e | ok-null">false</span>,.......... |
| 399c0 | 6f 6e 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e | on.=>.<span.class="tok-null"> |
| 399e0 | 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 2e 6f 66 66 20 3d 26 67 74 3b | false</span>,..........off.=> |
| 39a00 | 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 |
| 39a20 | 61 6e 3e 2c 0a 20 20 20 20 7d 3b 0a 20 20 20 20 65 78 70 65 63 74 28 72 65 73 75 6c 74 29 3b 0a | an>,.....};.....expect(result);. |
| 39a40 | 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | }</code></pre><pre><code.class=" |
| 39a60 | 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 31 2f 31 20 74 | shell">$.zig.test.test.zig.1/1.t |
| 39a80 | 65 73 74 20 26 71 75 6f 74 3b 65 6e 75 6d 20 6c 69 74 65 72 61 6c 73 20 77 69 74 68 20 73 77 69 | est."enum.literals.with.swi |
| 39aa0 | 74 63 68 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 | tch"....OK.All.1.tests.pass |
| 39ac0 | 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 | ed..</code></pre>............... |
| 39ae0 | 0a 0a 20 20 20 20 20 20 3c 68 31 20 69 64 3d 22 77 68 69 6c 65 22 3e 3c 61 20 68 72 65 66 3d 22 | ........<h1.id="while"><a.href=" |
| 39b00 | 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 22 | #toc-while">while</a>.<a.class=" |
| 39b20 | 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 31 3e 0a 0a | hdr".href="#while">..</a></h1>.. |
| 39b40 | 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 20 | ......<p>.......A.while.loop.is. |
| 39b60 | 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 78 | used.to.repeatedly.execute.an.ex |
| 39b80 | 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 74 | pression.until.......some.condit |
| 39ba0 | 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 70 | ion.is.no.longer.true........</p |
| 39bc0 | 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 77 68 69 6c 65 2e 7a 69 | >.......<p.class="file">while.zi |
| 39be0 | 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 | g</p><pre><code.class="zig"><spa |
| 39c00 | 6e 20 63 6c 61 73 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 |
| 39c20 | 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" |
| 39c40 | 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 |
| 39c60 | 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 |
| 39c80 | 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- |
| 39ca0 | 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 |
| 39cc0 | 2d 73 74 72 22 3e 26 71 75 6f 74 3b 77 68 69 6c 65 20 62 61 73 69 63 26 71 75 6f 74 3b 3c 2f 73 | -str">"while.basic"</s |
| 39ce0 | 70 61 6e 3e 20 7b 0a 20 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"> |
| 39d00 | 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 |
| 39d20 | 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= |
| 39d40 | 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 |
| 39d60 | 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. |
| 39d80 | 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 |
| 39da0 | 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 20 20 20 20 69 20 2b 3d 20 3c 73 70 61 6e 20 63 6c | </span>).{.........i.+=.<span.cl |
| 39dc0 | 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 7d | ass="tok-number">1</span>;.....} |
| 39de0 | 0a 20 20 20 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 | .....expect(i.==.<span.class="to |
| 39e00 | 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f | k-number">10</span>);.}</code></ |
| 39e20 | 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a | pre><pre><code.class="shell">$.z |
| 39e40 | 69 67 20 74 65 73 74 20 77 68 69 6c 65 2e 7a 69 67 0a 31 2f 31 20 74 65 73 74 20 26 71 75 6f 74 | ig.test.while.zig.1/1.test." |
| 39e60 | 3b 77 68 69 6c 65 20 62 61 73 69 63 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 41 6c 6c 20 31 20 74 | ;while.basic"....OK.All.1.t |
| 39e80 | 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 | ests.passed..</code></pre>...... |
| 39ea0 | 20 20 3c 70 3e 0a 20 20 20 20 20 20 55 73 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | ..<p>.......Use.<code.class="zig |
| 39ec0 | 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 62 72 65 61 6b 3c 2f 73 70 | "><span.class="tok-kw">break</sp |
| 39ee0 | 61 6e 3e 3c 2f 63 6f 64 65 3e 20 74 6f 20 65 78 69 74 20 61 20 77 68 69 6c 65 20 6c 6f 6f 70 20 | an></code>.to.exit.a.while.loop. |
| 39f00 | 65 61 72 6c 79 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 | early........</p>.......<p.class |
| 39f20 | 3d 22 66 69 6c 65 22 3e 77 68 69 6c 65 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 | ="file">while.zig</p><pre><code. |
| 39f40 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | class="zig"><span.class="tok-kw" |
| 39f60 | 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 |
| 39f80 | 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>( |
| 39fa0 | 3c 73 70 61 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& |
| 39fc0 | 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;..< |
| 39fe0 | 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>. |
| 3a000 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 77 68 69 6c | <span.class="tok-str">"whil |
| 3a020 | 65 20 62 72 65 61 6b 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e | e.break"</span>.{.....<span |
| 3a040 | 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 73 | .class="tok-kw">var</span>.i:.<s |
| 3a060 | 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 |
| 3a080 | 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</ |
| 3a0a0 | 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"> |
| 3a0c0 | 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 |
| 3a0e0 | 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 |
| 3a100 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 69 20 3d 3d | n.class="tok-kw">if</span>.(i.== |
| 3a120 | 20 3c 73 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 |
| 3a140 | 61 6e 3e 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | an>).............<span.class="to |
| 3a160 | 6b 2d 6b 77 22 3e 62 72 65 61 6b 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 20 20 20 20 69 20 2b 3d | k-kw">break</span>;.........i.+= |
| 3a180 | 20 3c 73 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 |
| 3a1a0 | 6e 3e 3b 0a 20 20 20 20 7d 0a 20 20 20 20 65 78 70 65 63 74 28 69 20 3d 3d 20 3c 73 70 61 6e 20 | n>;.....}.....expect(i.==.<span. |
| 3a1c0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 3c 2f 73 70 61 6e 3e 29 3b 0a 7d | class="tok-number">10</span>);.} |
| 3a1e0 | 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 | </code></pre><pre><code.class="s |
| 3a200 | 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 77 68 69 6c 65 2e 7a 69 67 0a 31 2f 31 20 74 | hell">$.zig.test.while.zig.1/1.t |
| 3a220 | 65 73 74 20 26 71 75 6f 74 3b 77 68 69 6c 65 20 62 72 65 61 6b 26 71 75 6f 74 3b 2e 2e 2e 20 4f | est."while.break"....O |
| 3a240 | 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 | K.All.1.tests.passed..</code></p |
| 3a260 | 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 55 73 65 20 3c 63 6f 64 65 20 63 | re>........<p>.......Use.<code.c |
| 3a280 | 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | lass="zig"><span.class="tok-kw"> |
| 3a2a0 | 63 6f 6e 74 69 6e 75 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 74 6f 20 6a 75 6d 70 20 62 | continue</span></code>.to.jump.b |
| 3a2c0 | 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 |
| 3a2e0 | 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c | ........</p>.......<p.class="fil |
| 3a300 | 65 22 3e 77 68 69 6c 65 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 | e">while.zig</p><pre><code.class |
| 3a320 | 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 | ="zig"><span.class="tok-kw">cons |
| 3a340 | 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 |
| 3a360 | 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 |
| 3a380 | 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" |
| 3a3a0 | 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. |
| 3a3c0 | 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 |
| 3a3e0 | 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 63 6f 6e | .class="tok-str">"while.con |
| 3a400 | 74 69 6e 75 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 | tinue"</span>.{.....<span.c |
| 3a420 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 69 3a 20 3c 73 70 61 | lass="tok-kw">var</span>.i:.<spa |
| 3a440 | 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>. |
| 3a460 | 3d 20 3c 73 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 |
| 3a480 | 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 |
| 3a4a0 | 69 6c 65 3c 2f 73 70 61 6e 3e 20 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c | ile</span>.(<span.class="tok-nul |
| 3a4c0 | 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 20 20 20 20 69 20 2b 3d 20 3c | l">true</span>).{.........i.+=.< |
| 3a4e0 | 73 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> |
| 3a500 | 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 |
| 3a520 | 66 3c 2f 73 70 61 6e 3e 20 28 69 20 26 6c 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | f</span>.(i.<.<span.class="to |
| 3a540 | 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 3c 2f 73 70 61 6e 3e 29 0a 20 20 20 20 20 20 20 20 20 20 20 | k-number">10</span>)............ |
| 3a560 | 20 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</ |
| 3a580 | 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- |
| 3a5a0 | 6b 77 22 3e 62 72 65 61 6b 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 7d 0a 20 20 20 20 65 78 70 65 | kw">break</span>;.....}.....expe |
| 3a5c0 | 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" |
| 3a5e0 | 3e 31 30 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e | >10</span>);.}</code></pre><pre> |
| 3a600 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 77 | <code.class="shell">$.zig.test.w |
| 3a620 | 68 69 6c 65 2e 7a 69 67 0a 31 2f 31 20 74 65 73 74 20 26 71 75 6f 74 3b 77 68 69 6c 65 20 63 6f | hile.zig.1/1.test."while.co |
| 3a640 | 6e 74 69 6e 75 65 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 | ntinue"....OK.All.1.tests.p |
| 3a660 | 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a | assed..</code></pre>........<p>. |
| 3a680 | 20 20 20 20 20 20 57 68 69 6c 65 20 6c 6f 6f 70 73 20 73 75 70 70 6f 72 74 20 61 20 63 6f 6e 74 | ......While.loops.support.a.cont |
| 3a6a0 | 69 6e 75 65 20 65 78 70 72 65 73 73 69 6f 6e 20 77 68 69 63 68 20 69 73 20 65 78 65 63 75 74 65 | inue.expression.which.is.execute |
| 3a6c0 | 64 20 77 68 65 6e 20 74 68 65 20 6c 6f 6f 70 0a 20 20 20 20 20 20 69 73 20 63 6f 6e 74 69 6e 75 | d.when.the.loop.......is.continu |
| 3a6e0 | 65 64 2e 20 54 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 | ed..The.<code.class="zig"><span. |
| 3a700 | 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></ |
| 3a720 | 63 6f 64 65 3e 20 6b 65 79 77 6f 72 64 20 72 65 73 70 65 63 74 73 20 74 68 69 73 20 65 78 70 72 | code>.keyword.respects.this.expr |
| 3a740 | 65 73 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 20 63 6c 61 73 | ession........</p>.......<p.clas |
| 3a760 | 73 3d 22 66 69 6c 65 22 3e 77 68 69 6c 65 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 | s="file">while.zig</p><pre><code |
| 3a780 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | .class="zig"><span.class="tok-kw |
| 3a7a0 | 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 |
| 3a7c0 | 61 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> |
| 3a7e0 | 28 3c 73 70 61 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 |
| 3a800 | 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;.. |
| 3a820 | 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> |
| 3a840 | 20 3c 73 70 61 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 |
| 3a860 | 6c 65 20 6c 6f 6f 70 20 63 6f 6e 74 69 6e 75 65 20 65 78 70 72 65 73 73 69 6f 6e 26 71 75 6f 74 | le.loop.continue.expression" |
| 3a880 | 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- |
| 3a8a0 | 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 |
| 3a8c0 | 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 |
| 3a8e0 | 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>;.....< |
| 3a900 | 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> |
| 3a920 | 20 28 69 20 26 6c 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | .(i.<.<span.class="tok-number |
| 3a940 | 22 3e 31 30 3c 2f 73 70 61 6e 3e 29 20 3a 20 28 69 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ">10</span>).:.(i.+=.<span.class |
| 3a960 | 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 7d 0a 20 20 20 20 65 | ="tok-number">1</span>).{}.....e |
| 3a980 | 78 70 65 63 74 28 69 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | xpect(i.==.<span.class="tok-numb |
| 3a9a0 | 65 72 22 3e 31 30 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | er">10</span>);.}..<span.class=" |
| 3a9c0 | 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= |
| 3a9e0 | 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 77 68 69 6c 65 20 6c 6f 6f 70 20 63 6f 6e 74 69 | "tok-str">"while.loop.conti |
| 3aa00 | 6e 75 65 20 65 78 70 72 65 73 73 69 6f 6e 2c 20 6d 6f 72 65 20 63 6f 6d 70 6c 69 63 61 74 65 64 | nue.expression,.more.complicated |
| 3aa20 | 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= |
| 3aa40 | 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 |
| 3aa60 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 | ss="tok-type">usize</span>.=.<sp |
| 3aa80 | 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>;. |
| 3aaa0 | 20 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 |
| 3aac0 | 61 6e 3e 20 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 | an>.j:.<span.class="tok-type">us |
| 3aae0 | 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 |
| 3ab00 | 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | mber">1</span>;.....<span.class= |
| 3ab20 | 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 2a 20 6a 20 26 6c 74 | "tok-kw">while</span>.(i.*.j.< |
| 3ab40 | 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 30 30 30 3c | ;.<span.class="tok-number">2000< |
| 3ab60 | 2f 73 70 61 6e 3e 29 20 3a 20 28 7b 20 69 20 2a 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | /span>).:.({.i.*=.<span.class="t |
| 3ab80 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 3b 20 6a 20 2a 3d 20 3c 73 70 61 6e 20 | ok-number">2</span>;.j.*=.<span. |
| 3aba0 | 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 20 7d 29 20 | class="tok-number">3</span>;.}). |
| 3abc0 | 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 |
| 3abe0 | 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6d 79 5f 69 6a 20 3d 20 69 20 2a 20 6a 3b 0a 20 20 20 20 20 | onst</span>.my_ij.=.i.*.j;...... |
| 3ac00 | 20 20 20 65 78 70 65 63 74 28 6d 79 5f 69 6a 20 26 6c 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ...expect(my_ij.<.<span.class |
| 3ac20 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 30 30 30 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 | ="tok-number">2000</span>);..... |
| 3ac40 | 7d 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 | }.}</code></pre><pre><code.class |
| 3ac60 | 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 77 68 69 6c 65 2e 7a 69 67 0a 31 2f | ="shell">$.zig.test.while.zig.1/ |
| 3ac80 | 32 20 74 65 73 74 20 26 71 75 6f 74 3b 77 68 69 6c 65 20 6c 6f 6f 70 20 63 6f 6e 74 69 6e 75 65 | 2.test."while.loop.continue |
| 3aca0 | 20 65 78 70 72 65 73 73 69 6f 6e 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 32 2f 32 20 74 65 73 74 | .expression"....OK.2/2.test |
| 3acc0 | 20 26 71 75 6f 74 3b 77 68 69 6c 65 20 6c 6f 6f 70 20 63 6f 6e 74 69 6e 75 65 20 65 78 70 72 65 | ."while.loop.continue.expre |
| 3ace0 | 73 73 69 6f 6e 2c 20 6d 6f 72 65 20 63 6f 6d 70 6c 69 63 61 74 65 64 26 71 75 6f 74 3b 2e 2e 2e | ssion,.more.complicated"... |
| 3ad00 | 20 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 63 6f 64 65 3e 3c | .OK.All.2.tests.passed..</code>< |
| 3ad20 | 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 57 68 69 6c 65 20 6c 6f 6f | /pre>........<p>.......While.loo |
| 3ad40 | 70 73 20 61 72 65 20 65 78 70 72 65 73 73 69 6f 6e 73 2e 20 54 68 65 20 72 65 73 75 6c 74 20 6f | ps.are.expressions..The.result.o |
| 3ad60 | 66 20 74 68 65 20 65 78 70 72 65 73 73 69 6f 6e 20 69 73 20 74 68 65 0a 20 20 20 20 20 20 72 65 | f.the.expression.is.the.......re |
| 3ad80 | 73 75 6c 74 20 6f 66 20 74 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 | sult.of.the.<code.class="zig"><s |
| 3ada0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 3c 2f | pan.class="tok-kw">else</span></ |
| 3adc0 | 63 6f 64 65 3e 20 63 6c 61 75 73 65 20 6f 66 20 61 20 77 68 69 6c 65 20 6c 6f 6f 70 2c 20 77 68 | code>.clause.of.a.while.loop,.wh |
| 3ade0 | 69 63 68 20 69 73 20 65 78 65 63 75 74 65 64 20 77 68 65 6e 0a 20 20 20 20 20 20 74 68 65 20 63 | ich.is.executed.when.......the.c |
| 3ae00 | 6f 6e 64 69 74 69 6f 6e 20 6f 66 20 74 68 65 20 77 68 69 6c 65 20 6c 6f 6f 70 20 69 73 20 74 65 | ondition.of.the.while.loop.is.te |
| 3ae20 | 73 74 65 64 20 61 73 20 66 61 6c 73 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 | sted.as.false........</p>....... |
| 3ae40 | 3c 70 3e 0a 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 | <p>.......<code.class="zig"><spa |
| 3ae60 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 62 72 65 61 6b 3c 2f 73 70 61 6e 3e 3c 2f 63 | n.class="tok-kw">break</span></c |
| 3ae80 | 6f 64 65 3e 2c 20 6c 69 6b 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 | ode>,.like.<code.class="zig"><sp |
| 3aea0 | 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 3c | an.class="tok-kw">return</span>< |
| 3aec0 | 2f 63 6f 64 65 3e 2c 20 61 63 63 65 70 74 73 20 61 20 76 61 6c 75 65 0a 20 20 20 20 20 20 20 20 | /code>,.accepts.a.value......... |
| 3aee0 | 20 20 20 20 20 20 70 61 72 61 6d 65 74 65 72 2e 20 54 68 69 73 20 69 73 20 74 68 65 20 72 65 73 | ......parameter..This.is.the.res |
| 3af00 | 75 6c 74 20 6f 66 20 74 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 | ult.of.the.<code.class="zig"><sp |
| 3af20 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 77 68 69 6c 65 3c 2f 73 70 61 6e 3e 3c 2f | an.class="tok-kw">while</span></ |
| 3af40 | 63 6f 64 65 3e 20 65 78 70 72 65 73 73 69 6f 6e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | code>.expression................ |
| 3af60 | 20 20 20 20 57 68 65 6e 20 79 6f 75 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c | ....When.you.<code.class="zig">< |
| 3af80 | 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> |
| 3afa0 | 3c 2f 63 6f 64 65 3e 20 66 72 6f 6d 20 61 20 77 68 69 6c 65 20 6c 6f 6f 70 2c 20 74 68 65 20 3c | </code>.from.a.while.loop,.the.< |
| 3afc0 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | code.class="zig"><span.class="to |
| 3afe0 | 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 62 72 61 6e 63 68 20 | k-kw">else</span></code>.branch. |
| 3b000 | 69 73 20 6e 6f 74 0a 20 20 20 20 20 20 65 76 61 6c 75 61 74 65 64 2e 0a 20 20 20 20 20 20 3c 2f | is.not.......evaluated........</ |
| 3b020 | 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 77 68 69 6c 65 2e 7a | p>.......<p.class="file">while.z |
| 3b040 | 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 | ig</p><pre><code.class="zig"><sp |
| 3b060 | 61 6e 20 63 6c 61 73 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 |
| 3b080 | 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 |
| 3b0a0 | 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 |
| 3b0c0 | 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 |
| 3b0e0 | 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 |
| 3b100 | 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 |
| 3b120 | 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 73 | k-str">"while.else"</s |
| 3b140 | 70 61 6e 3e 20 7b 0a 20 20 20 20 65 78 70 65 63 74 28 72 61 6e 67 65 48 61 73 4e 75 6d 62 65 72 | pan>.{.....expect(rangeHasNumber |
| 3b160 | 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 | (<span.class="tok-number">0</spa |
| 3b180 | 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 3c | n>,.<span.class="tok-number">10< |
| 3b1a0 | 2f 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" |
| 3b1c0 | 3e 35 3c 2f 73 70 61 6e 3e 29 29 3b 0a 20 20 20 20 65 78 70 65 63 74 28 21 72 61 6e 67 65 48 61 | >5</span>));.....expect(!rangeHa |
| 3b1e0 | 73 4e 75 6d 62 65 72 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 | sNumber(<span.class="tok-number" |
| 3b200 | 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 |
| 3b220 | 65 72 22 3e 31 30 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | er">10</span>,.<span.class="tok- |
| 3b240 | 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 6c | number">15</span>));.}..<span.cl |
| 3b260 | 61 73 73 3d 22 74 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 |
| 3b280 | 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 6e | ss="tok-fn">rangeHasNumber</span |
| 3b2a0 | 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 3e | >(begin:.<span.class="tok-type"> |
| 3b2c0 | 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 22 | usize</span>,.end:.<span.class=" |
| 3b2e0 | 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 20 | tok-type">usize</span>,.number:. |
| 3b300 | 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 |
| 3b320 | 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 6c | an>).<span.class="tok-type">bool |
| 3b340 | 3c 2f 73 70 61 6e 3e 20 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 |
| 3b360 | 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 70 | w">var</span>.i.=.begin;.....<sp |
| 3b380 | 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>. |
| 3b3a0 | 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 |
| 3b3c0 | 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 61 | >.(i.<.end).:.(i.+=.<span.cla |
| 3b3e0 | 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 20 | ss="tok-number">1</span>).{..... |
| 3b400 | 20 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 |
| 3b420 | 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 3c | n>.(i.==.number).{.............< |
| 3b440 | 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> |
| 3b460 | 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 |
| 3b480 | 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 73 | an>;.........}.....}.<span.class |
| 3b4a0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 | ="tok-kw">else</span>.<span.clas |
| 3b4c0 | 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 6f | s="tok-null">false</span>;.}</co |
| 3b4e0 | 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c | de></pre><pre><code.class="shell |
| 3b500 | 22 3e 24 20 7a 69 67 20 74 65 73 74 20 77 68 69 6c 65 2e 7a 69 67 0a 31 2f 31 20 74 65 73 74 20 | ">$.zig.test.while.zig.1/1.test. |
| 3b520 | 26 71 75 6f 74 3b 77 68 69 6c 65 20 65 6c 73 65 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 41 6c 6c | "while.else"....OK.All |
| 3b540 | 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a | .1.tests.passed..</code></pre>.. |
| 3b560 | 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 4c 61 62 65 6c 65 64 2d 77 68 69 6c 65 22 3e 3c 61 20 | ......<h2.id="Labeled-while"><a. |
| 3b580 | 68 72 65 66 3d 22 23 74 6f 63 2d 4c 61 62 65 6c 65 64 2d 77 68 69 6c 65 22 3e 4c 61 62 65 6c 65 | href="#toc-Labeled-while">Labele |
| 3b5a0 | 64 20 77 68 69 6c 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d | d.while</a>.<a.class="hdr".href= |
| 3b5c0 | 22 23 4c 61 62 65 6c 65 64 2d 77 68 69 6c 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 | "#Labeled-while">..</a></h2>.... |
| 3b5e0 | 20 20 20 20 3c 70 3e 57 68 65 6e 20 61 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e | ....<p>When.a.<code.class="zig"> |
| 3b600 | 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 |
| 3b620 | 3e 3c 2f 63 6f 64 65 3e 20 6c 6f 6f 70 20 69 73 20 6c 61 62 65 6c 65 64 2c 20 69 74 20 63 61 6e | ></code>.loop.is.labeled,.it.can |
| 3b640 | 20 62 65 20 72 65 66 65 72 65 6e 63 65 64 20 66 72 6f 6d 20 61 20 3c 63 6f 64 65 20 63 6c 61 73 | .be.referenced.from.a.<code.clas |
| 3b660 | 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 62 72 65 | s="zig"><span.class="tok-kw">bre |
| 3b680 | 61 6b 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6f | ak</span></code>...............o |
| 3b6a0 | 72 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | r.<code.class="zig"><span.class= |
| 3b6c0 | 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>. |
| 3b6e0 | 66 72 6f 6d 20 77 69 74 68 69 6e 20 61 20 6e 65 73 74 65 64 20 6c 6f 6f 70 3a 3c 2f 70 3e 0a 20 | from.within.a.nested.loop:</p>.. |
| 3b700 | 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 | .....<p.class="file">test.zig</p |
| 3b720 | 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c | ><pre><code.class="zig"><span.cl |
| 3b740 | 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 |
| 3b760 | 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 6e 65 73 74 65 64 20 62 72 65 61 | lass="tok-str">"nested.brea |
| 3b780 | 6b 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 6f 75 74 65 72 3a 20 3c 73 70 61 | k"</span>.{.....outer:.<spa |
| 3b7a0 | 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>.(< |
| 3b7c0 | 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 |
| 3b7e0 | 3e 29 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | >).{.........<span.class="tok-kw |
| 3b800 | 22 3e 77 68 69 6c 65 3c 2f 73 70 61 6e 3e 20 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ">while</span>.(<span.class="tok |
| 3b820 | 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 | -null">true</span>).{........... |
| 3b840 | 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 62 72 65 61 6b 3c 2f 73 70 | ..<span.class="tok-kw">break</sp |
| 3b860 | 61 6e 3e 20 3a 6f 75 74 65 72 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 7d 0a 7d 0a 0a 3c | an>.:outer;.........}.....}.}..< |
| 3b880 | 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>. |
| 3b8a0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 6e 65 73 74 | <span.class="tok-str">"nest |
| 3b8c0 | 65 64 20 63 6f 6e 74 69 6e 75 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c | ed.continue"</span>.{.....< |
| 3b8e0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 69 | span.class="tok-kw">var</span>.i |
| 3b900 | 3a 20 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</ |
| 3b920 | 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" |
| 3b940 | 3e 30 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 6f 75 74 65 72 3a 20 3c 73 70 61 6e 20 63 6c 61 73 | >0</span>;.....outer:.<span.clas |
| 3b960 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 77 68 69 6c 65 3c 2f 73 70 61 6e 3e 20 28 69 20 26 6c 74 3b 20 | s="tok-kw">while</span>.(i.<. |
| 3b980 | 3c 73 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 |
| 3b9a0 | 6e 3e 29 20 3a 20 28 69 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | n>).:.(i.+=.<span.class="tok-num |
| 3b9c0 | 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 | ber">1</span>).{.........<span.c |
| 3b9e0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 77 68 69 6c 65 3c 2f 73 70 61 6e 3e 20 28 3c 73 70 61 | lass="tok-kw">while</span>.(<spa |
| 3ba00 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 29 20 | n.class="tok-null">true</span>). |
| 3ba20 | 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | {.............<span.class="tok-k |
| 3ba40 | 77 22 3e 63 6f 6e 74 69 6e 75 65 3c 2f 73 70 61 6e 3e 20 3a 6f 75 74 65 72 3b 0a 20 20 20 20 20 | w">continue</span>.:outer;...... |
| 3ba60 | 20 20 20 7d 0a 20 20 20 20 7d 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 | ...}.....}.}</code></pre><pre><c |
| 3ba80 | 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 | ode.class="shell">$.zig.test.tes |
| 3baa0 | 74 2e 7a 69 67 0a 31 2f 32 20 74 65 73 74 20 26 71 75 6f 74 3b 6e 65 73 74 65 64 20 62 72 65 61 | t.zig.1/2.test."nested.brea |
| 3bac0 | 6b 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 32 2f 32 20 74 65 73 74 20 26 71 75 6f 74 3b 6e 65 73 | k"....OK.2/2.test."nes |
| 3bae0 | 74 65 64 20 63 6f 6e 74 69 6e 75 65 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 41 6c 6c 20 32 20 74 | ted.continue"....OK.All.2.t |
| 3bb00 | 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 | ests.passed..</code></pre>...... |
| 3bb20 | 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 77 68 69 6c 65 2d 77 69 74 68 2d 4f 70 74 69 | .........<h2.id="while-with-Opti |
| 3bb40 | 6f 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 | onals"><a.href="#toc-while-with- |
| 3bb60 | 4f 70 74 69 6f 6e 61 6c 73 22 3e 77 68 69 6c 65 20 77 69 74 68 20 4f 70 74 69 6f 6e 61 6c 73 3c | Optionals">while.with.Optionals< |
| 3bb80 | 2f 61 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 | /a>.<a.class="hdr".href="#while- |
| 3bba0 | 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 32 3e 0a 0a 20 20 20 | with-Optionals">..</a></h2>..... |
| 3bbc0 | 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 4a 75 73 74 20 6c 69 6b 65 20 3c 61 20 68 72 65 66 3d 22 | ...<p>.......Just.like.<a.href=" |
| 3bbe0 | 23 69 66 22 3e 69 66 3c 2f 61 3e 20 65 78 70 72 65 73 73 69 6f 6e 73 2c 20 77 68 69 6c 65 20 6c | #if">if</a>.expressions,.while.l |
| 3bc00 | 6f 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 | oops.can.take.an.optional.as.the |
| 3bc20 | 0a 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 | .......condition.and.capture.the |
| 3bc40 | 20 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 | .payload..When.<a.href="#null">n |
| 3bc60 | 75 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 | ull</a>.is.encountered.the.loop. |
| 3bc80 | 20 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 | ......exits........</p>.......<p |
| 3bca0 | 3e 0a 20 20 20 20 20 20 57 68 65 6e 20 74 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | >.......When.the.<code.class="zi |
| 3bcc0 | 67 22 3e 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 | g">|x|</code>.syntax.is.present. |
| 3bce0 | 6f 6e 20 61 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 | on.a.<code.class="zig"><span.cla |
| 3bd00 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 77 68 69 6c 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 | ss="tok-kw">while</span></code>. |
| 3bd20 | 65 78 70 72 65 73 73 69 6f 6e 2c 0a 20 20 20 20 20 20 74 68 65 20 77 68 69 6c 65 20 63 6f 6e 64 | expression,.......the.while.cond |
| 3bd40 | 69 74 69 6f 6e 20 6d 75 73 74 20 68 61 76 65 20 61 6e 20 3c 61 20 68 72 65 66 3d 22 23 4f 70 74 | ition.must.have.an.<a.href="#Opt |
| 3bd60 | 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 2e 0a 20 | ional-Type">Optional.Type</a>... |
| 3bd80 | 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 20 3c 63 | .....</p>.......<p>.......The.<c |
| 3bda0 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ode.class="zig"><span.class="tok |
| 3bdc0 | 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 62 72 61 6e 63 68 20 69 | -kw">else</span></code>.branch.i |
| 3bde0 | 73 20 61 6c 6c 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 | s.allowed.on.optional.iteration. |
| 3be00 | 20 49 6e 20 74 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 | .In.this.case,.it.will.......be. |
| 3be20 | 65 78 65 63 75 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 | executed.on.the.first.null.value |
| 3be40 | 20 65 6e 63 6f 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 | .encountered........</p>.......< |
| 3be60 | 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 77 68 69 6c 65 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 | p.class="file">while.zig</p><pre |
| 3be80 | 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ><code.class="zig"><span.class=" |
| 3bea0 | 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 |
| 3bec0 | 70 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< |
| 3bee0 | 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 |
| 3bf00 | 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 |
| 3bf20 | 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< |
| 3bf40 | 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 |
| 3bf60 | 6f 74 3b 77 68 69 6c 65 20 6e 75 6c 6c 20 63 61 70 74 75 72 65 26 71 75 6f 74 3b 3c 2f 73 70 61 | ot;while.null.capture"</spa |
| 3bf80 | 6e 3e 20 7b 0a 20 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 |
| 3bfa0 | 72 3c 2f 73 70 61 6e 3e 20 73 75 6d 31 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | r</span>.sum1:.<span.class="tok- |
| 3bfc0 | 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=" |
| 3bfe0 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 6e 75 6d 62 65 72 | tok-number">0</span>;.....number |
| 3c000 | 73 5f 6c 65 66 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | s_left.=.<span.class="tok-number |
| 3c020 | 22 3e 33 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ">3</span>;.....<span.class="tok |
| 3c040 | 2d 6b 77 22 3e 77 68 69 6c 65 3c 2f 73 70 61 6e 3e 20 28 65 76 65 6e 74 75 61 6c 6c 79 4e 75 6c | -kw">while</span>.(eventuallyNul |
| 3c060 | 6c 53 65 71 75 65 6e 63 65 28 29 29 20 7c 76 61 6c 75 65 7c 20 7b 0a 20 20 20 20 20 20 20 20 73 | lSequence()).|value|.{.........s |
| 3c080 | 75 6d 31 20 2b 3d 20 76 61 6c 75 65 3b 0a 20 20 20 20 7d 0a 20 20 20 20 65 78 70 65 63 74 28 73 | um1.+=.value;.....}.....expect(s |
| 3c0a0 | 75 6d 31 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e | um1.==.<span.class="tok-number"> |
| 3c0c0 | 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 |
| 3c0e0 | 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 |
| 3c100 | 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. |
| 3c120 | 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>;.... |
| 3c140 | 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 |
| 3c160 | 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 |
| 3c180 | 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 |
| 3c1a0 | 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|.{... |
| 3c1c0 | 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 |
| 3c1e0 | 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>.{... |
| 3c200 | 20 20 20 20 20 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 | ......expect(sum2.==.<span.class |
| 3c220 | 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 7d | ="tok-number">3</span>);.....}.} |
| 3c240 | 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e | ..<span.class="tok-kw">var</span |
| 3c260 | 3e 20 6e 75 6d 62 65 72 73 5f 6c 65 66 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | >.numbers_left:.<span.class="tok |
| 3c280 | 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= |
| 3c2a0 | 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 75 6e 64 65 66 69 6e 65 64 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 | "tok-null">undefined</span>;.<sp |
| 3c2c0 | 61 6e 20 63 6c 61 73 73 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 |
| 3c2e0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 65 76 65 6e 74 75 61 6c 6c 79 4e 75 6c 6c 53 | n.class="tok-fn">eventuallyNullS |
| 3c300 | 65 71 75 65 6e 63 65 3c 2f 73 70 61 6e 3e 28 29 20 3f 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | equence</span>().?<span.class="t |
| 3c320 | 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. |
| 3c340 | 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 |
| 3c360 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 6e 75 6d | an.class="tok-kw">if</span>.(num |
| 3c380 | 62 65 72 73 5f 6c 65 66 74 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | bers_left.==.<span.class="tok-nu |
| 3c3a0 | 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | mber">0</span>).<span.class="tok |
| 3c3c0 | 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | -null">null</span>.<span.class=" |
| 3c3e0 | 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 62 6c 6b 3a 20 7b 0a 20 20 20 20 20 | tok-kw">else</span>.blk:.{...... |
| 3c400 | 20 20 20 6e 75 6d 62 65 72 73 5f 6c 65 66 74 20 2d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ...numbers_left.-=.<span.class=" |
| 3c420 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 20 20 20 20 3c 73 | tok-number">1</span>;.........<s |
| 3c440 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 62 72 65 61 6b 3c 2f 73 70 61 6e 3e 20 | pan.class="tok-kw">break</span>. |
| 3c460 | 3a 62 6c 6b 20 6e 75 6d 62 65 72 73 5f 6c 65 66 74 3b 0a 20 20 20 20 7d 3b 0a 7d 3c 2f 63 6f 64 | :blk.numbers_left;.....};.}</cod |
| 3c480 | 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 | e></pre><pre><code.class="shell" |
| 3c4a0 | 3e 24 20 7a 69 67 20 74 65 73 74 20 77 68 69 6c 65 2e 7a 69 67 0a 31 2f 31 20 74 65 73 74 20 26 | >$.zig.test.while.zig.1/1.test.& |
| 3c4c0 | 71 75 6f 74 3b 77 68 69 6c 65 20 6e 75 6c 6c 20 63 61 70 74 75 72 65 26 71 75 6f 74 3b 2e 2e 2e | quot;while.null.capture"... |
| 3c4e0 | 20 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c | .OK.All.1.tests.passed..</code>< |
| 3c500 | 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 77 68 69 | /pre>................<h2.id="whi |
| 3c520 | 6c 65 2d 77 69 74 68 2d 45 72 72 6f 72 2d 55 6e 69 6f 6e 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 | le-with-Error-Unions"><a.href="# |
| 3c540 | 74 6f 63 2d 77 68 69 6c 65 2d 77 69 74 68 2d 45 72 72 6f 72 2d 55 6e 69 6f 6e 73 22 3e 77 68 69 | toc-while-with-Error-Unions">whi |
| 3c560 | 6c 65 20 77 69 74 68 20 45 72 72 6f 72 20 55 6e 69 6f 6e 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 | le.with.Error.Unions</a>.<a.clas |
| 3c580 | 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 77 68 69 6c 65 2d 77 69 74 68 2d 45 72 72 6f 72 2d | s="hdr".href="#while-with-Error- |
| 3c5a0 | 55 6e 69 6f 6e 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 | Unions">..</a></h2>........<p>.. |
| 3c5c0 | 20 20 20 20 20 4a 75 73 74 20 6c 69 6b 65 20 3c 61 20 68 72 65 66 3d 22 23 69 66 22 3e 69 66 3c | .....Just.like.<a.href="#if">if< |
| 3c5e0 | 2f 61 3e 20 65 78 70 72 65 73 73 69 6f 6e 73 2c 20 77 68 69 6c 65 20 6c 6f 6f 70 73 20 63 61 6e | /a>.expressions,.while.loops.can |
| 3c600 | 20 74 61 6b 65 20 61 6e 20 65 72 72 6f 72 20 75 6e 69 6f 6e 20 61 73 0a 20 20 20 20 20 20 74 68 | .take.an.error.union.as.......th |
| 3c620 | 65 20 63 6f 6e 64 69 74 69 6f 6e 20 61 6e 64 20 63 61 70 74 75 72 65 20 74 68 65 20 70 61 79 6c | e.condition.and.capture.the.payl |
| 3c640 | 6f 61 64 20 6f 72 20 74 68 65 20 65 72 72 6f 72 20 63 6f 64 65 2e 20 57 68 65 6e 20 74 68 65 0a | oad.or.the.error.code..When.the. |
| 3c660 | 20 20 20 20 20 20 63 6f 6e 64 69 74 69 6f 6e 20 72 65 73 75 6c 74 73 20 69 6e 20 61 6e 20 65 72 | ......condition.results.in.an.er |
| 3c680 | 72 6f 72 20 63 6f 64 65 20 74 68 65 20 65 6c 73 65 20 62 72 61 6e 63 68 20 69 73 20 65 76 61 6c | ror.code.the.else.branch.is.eval |
| 3c6a0 | 75 61 74 65 64 20 61 6e 64 0a 20 20 20 20 20 20 74 68 65 20 6c 6f 6f 70 20 69 73 20 66 69 6e 69 | uated.and.......the.loop.is.fini |
| 3c6c0 | 73 68 65 64 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 | shed........</p>.......<p>...... |
| 3c6e0 | 20 57 68 65 6e 20 74 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 | .When.the.<code.class="zig"><spa |
| 3c700 | 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 78 7c | n.class="tok-kw">else</span>.|x| |
| 3c720 | 3c 2f 63 6f 64 65 3e 20 73 79 6e 74 61 78 20 69 73 20 70 72 65 73 65 6e 74 20 6f 6e 20 61 20 3c | </code>.syntax.is.present.on.a.< |
| 3c740 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | code.class="zig"><span.class="to |
| 3c760 | 6b 2d 6b 77 22 3e 77 68 69 6c 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 65 78 70 72 65 73 | k-kw">while</span></code>.expres |
| 3c780 | 73 69 6f 6e 2c 0a 20 20 20 20 20 20 74 68 65 20 77 68 69 6c 65 20 63 6f 6e 64 69 74 69 6f 6e 20 | sion,.......the.while.condition. |
| 3c7a0 | 6d 75 73 74 20 68 61 76 65 20 61 6e 20 3c 61 20 68 72 65 66 3d 22 23 45 72 72 6f 72 2d 55 6e 69 | must.have.an.<a.href="#Error-Uni |
| 3c7c0 | 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 2e 0a 20 | on-Type">Error.Union.Type</a>... |
| 3c7e0 | 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e | .....</p>.......<p.class="file"> |
| 3c800 | 77 68 69 6c 65 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a | while.zig</p><pre><code.class="z |
| 3c820 | 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f | ig"><span.class="tok-kw">const</ |
| 3c840 | 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | span>.expect.=.<span.class="tok- |
| 3c860 | 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 |
| 3c880 | 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 |
| 3c8a0 | 70 61 6e 3e 29 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 | pan>).testing.expect;..<span.cla |
| 3c8c0 | 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 |
| 3c8e0 | 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 77 68 69 6c 65 20 65 72 72 6f 72 20 | ass="tok-str">"while.error. |
| 3c900 | 75 6e 69 6f 6e 20 63 61 70 74 75 72 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 | union.capture"</span>.{.... |
| 3c920 | 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> |
| 3c940 | 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 |
| 3c960 | 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 |
| 3c980 | 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.= |
| 3c9a0 | 20 3c 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 |
| 3c9c0 | 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 |
| 3c9e0 | 6c 65 3c 2f 73 70 61 6e 3e 20 28 65 76 65 6e 74 75 61 6c 6c 79 45 72 72 6f 72 53 65 71 75 65 6e | le</span>.(eventuallyErrorSequen |
| 3ca00 | 63 65 28 29 29 20 7c 76 61 6c 75 65 7c 20 7b 0a 20 20 20 20 20 20 20 20 73 75 6d 31 20 2b 3d 20 | ce()).|value|.{.........sum1.+=. |
| 3ca20 | 76 61 6c 75 65 3b 0a 20 20 20 20 7d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | value;.....}.<span.class="tok-kw |
| 3ca40 | 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 7c 65 72 72 7c 20 7b 0a 20 20 20 20 20 20 20 20 65 78 | ">else</span>.|err|.{.........ex |
| 3ca60 | 70 65 63 74 28 65 72 72 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | pect(err.==.<span.class="tok-kw" |
| 3ca80 | 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 29 3b 0a 20 20 20 20 | >error</span>.ReachedZero);..... |
| 3caa0 | 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 76 61 72 3c 2f 73 | }.}..<span.class="tok-kw">var</s |
| 3cac0 | 70 61 6e 3e 20 6e 75 6d 62 65 72 73 5f 6c 65 66 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | pan>.numbers_left:.<span.class=" |
| 3cae0 | 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 |
| 3cb00 | 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>;. |
| 3cb20 | 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>. |
| 3cb40 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 65 76 65 6e 74 75 61 6c 6c 79 45 | <span.class="tok-fn">eventuallyE |
| 3cb60 | 72 72 6f 72 53 65 71 75 65 6e 63 65 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 | rrorSequence</span>().<span.clas |
| 3cb80 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 61 6e 79 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 21 3c 73 70 | s="tok-type">anyerror</span>!<sp |
| 3cba0 | 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 7b | an.class="tok-type">u32</span>.{ |
| 3cbc0 | 0a 20 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 |
| 3cbe0 | 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c | </span>.<span.class="tok-kw">if< |
| 3cc00 | 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 63 6c | /span>.(numbers_left.==.<span.cl |
| 3cc20 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e | ass="tok-number">0</span>).<span |
| 3cc40 | 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 52 65 61 | .class="tok-kw">error</span>.Rea |
| 3cc60 | 63 68 65 64 5a 65 72 6f 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c | chedZero.<span.class="tok-kw">el |
| 3cc80 | 73 65 3c 2f 73 70 61 6e 3e 20 62 6c 6b 3a 20 7b 0a 20 20 20 20 20 20 20 20 6e 75 6d 62 65 72 73 | se</span>.blk:.{.........numbers |
| 3cca0 | 5f 6c 65 66 74 20 2d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | _left.-=.<span.class="tok-number |
| 3ccc0 | 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= |
| 3cce0 | 22 74 6f 6b 2d 6b 77 22 3e 62 72 65 61 6b 3c 2f 73 70 61 6e 3e 20 3a 62 6c 6b 20 6e 75 6d 62 65 | "tok-kw">break</span>.:blk.numbe |
| 3cd00 | 72 73 5f 6c 65 66 74 3b 0a 20 20 20 20 7d 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 | rs_left;.....};.}</code></pre><p |
| 3cd20 | 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 | re><code.class="shell">$.zig.tes |
| 3cd40 | 74 20 77 68 69 6c 65 2e 7a 69 67 0a 31 2f 31 20 74 65 73 74 20 26 71 75 6f 74 3b 77 68 69 6c 65 | t.while.zig.1/1.test."while |
| 3cd60 | 20 65 72 72 6f 72 20 75 6e 69 6f 6e 20 63 61 70 74 75 72 65 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b | .error.union.capture"....OK |
| 3cd80 | 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 | .All.1.tests.passed..</code></pr |
| 3cda0 | 65 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 69 6e 6c 69 6e 65 | e>................<h2.id="inline |
| 3cdc0 | 2d 77 68 69 6c 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 69 6e 6c 69 6e 65 2d 77 68 69 | -while"><a.href="#toc-inline-whi |
| 3cde0 | 6c 65 22 3e 69 6e 6c 69 6e 65 20 77 68 69 6c 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 | le">inline.while</a>.<a.class="h |
| 3ce00 | 64 72 22 20 68 72 65 66 3d 22 23 69 6e 6c 69 6e 65 2d 77 68 69 6c 65 22 3e c2 a7 3c 2f 61 3e 3c | dr".href="#inline-while">..</a>< |
| 3ce20 | 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 57 68 69 6c 65 20 6c 6f 6f 70 | /h2>........<p>.......While.loop |
| 3ce40 | 73 20 63 61 6e 20 62 65 20 69 6e 6c 69 6e 65 64 2e 20 54 68 69 73 20 63 61 75 73 65 73 20 74 68 | s.can.be.inlined..This.causes.th |
| 3ce60 | 65 20 6c 6f 6f 70 20 74 6f 20 62 65 20 75 6e 72 6f 6c 6c 65 64 2c 20 77 68 69 63 68 0a 20 20 20 | e.loop.to.be.unrolled,.which.... |
| 3ce80 | 20 20 20 61 6c 6c 6f 77 73 20 74 68 65 20 63 6f 64 65 20 74 6f 20 64 6f 20 73 6f 6d 65 20 74 68 | ...allows.the.code.to.do.some.th |
| 3cea0 | 69 6e 67 73 20 77 68 69 63 68 20 6f 6e 6c 79 20 77 6f 72 6b 20 61 74 20 63 6f 6d 70 69 6c 65 20 | ings.which.only.work.at.compile. |
| 3cec0 | 74 69 6d 65 2c 0a 20 20 20 20 20 20 73 75 63 68 20 61 73 20 75 73 65 20 74 79 70 65 73 20 61 73 | time,.......such.as.use.types.as |
| 3cee0 | 20 66 69 72 73 74 20 63 6c 61 73 73 20 76 61 6c 75 65 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a | .first.class.values........</p>. |
| 3cf00 | 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f | ......<p.class="file">test.zig</ |
| 3cf20 | 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 | p><pre><code.class="zig"><span.c |
| 3cf40 | 6c 61 73 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 |
| 3cf60 | 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 |
| 3cf80 | 6d 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 |
| 3cfa0 | 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 |
| 3cfc0 | 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" |
| 3cfe0 | 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 |
| 3d000 | 72 22 3e 26 71 75 6f 74 3b 69 6e 6c 69 6e 65 20 77 68 69 6c 65 20 6c 6f 6f 70 26 71 75 6f 74 3b | r">"inline.while.loop" |
| 3d020 | 3c 2f 73 70 61 6e 3e 20 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 |
| 3d040 | 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 22 | w">comptime</span>.<span.class=" |
| 3d060 | 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 69 20 3d 20 3c 73 70 61 6e 20 63 6c 61 | tok-kw">var</span>.i.=.<span.cla |
| 3d080 | 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 |
| 3d0a0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 73 75 | pan.class="tok-kw">var</span>.su |
| 3d0c0 | 6d 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c | m:.<span.class="tok-type">usize< |
| 3d0e0 | 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 |
| 3d100 | 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 |
| 3d120 | 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 22 | -kw">inline</span>.<span.class=" |
| 3d140 | 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 |
| 3d160 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 29 20 | an.class="tok-number">3</span>). |
| 3d180 | 3a 20 28 69 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 | :.(i.+=.<span.class="tok-number" |
| 3d1a0 | 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 |
| 3d1c0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 54 20 3d 20 3c 73 70 61 6e | ="tok-kw">const</span>.T.=.<span |
| 3d1e0 | 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 69 | .class="tok-kw">switch</span>.(i |
| 3d200 | 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ).{.............<span.class="tok |
| 3d220 | 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c | -number">0</span>.=>.<span.cl |
| 3d240 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 | ass="tok-type">f32</span>,...... |
| 3d260 | 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 3e | .......<span.class="tok-number"> |
| 3d280 | 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 6b 2d | 1</span>.=>.<span.class="tok- |
| 3d2a0 | 74 79 70 65 22 3e 69 38 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 | type">i8</span>,.............<sp |
| 3d2c0 | 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 3d | an.class="tok-number">2</span>.= |
| 3d2e0 | 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 62 6f 6f 6c | >.<span.class="tok-type">bool |
| 3d300 | 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 73 | </span>,.............<span.class |
| 3d320 | 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 70 61 | ="tok-kw">else</span>.=>.<spa |
| 3d340 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 | n.class="tok-kw">unreachable</sp |
| 3d360 | 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 7d 3b 0a 20 20 20 20 20 20 20 20 73 75 6d 20 2b 3d 20 74 | an>,.........};.........sum.+=.t |
| 3d380 | 79 70 65 4e 61 6d 65 4c 65 6e 67 74 68 28 54 29 3b 0a 20 20 20 20 7d 0a 20 20 20 20 65 78 70 65 | ypeNameLength(T);.....}.....expe |
| 3d3a0 | 63 74 28 73 75 6d 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | ct(sum.==.<span.class="tok-numbe |
| 3d3c0 | 72 22 3e 39 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | r">9</span>);.}..<span.class="to |
| 3d3e0 | 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 |
| 3d400 | 2d 66 6e 22 3e 74 79 70 65 4e 61 6d 65 4c 65 6e 67 74 68 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e | -fn">typeNameLength</span>(<span |
| 3d420 | 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>. |
| 3d440 | 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</ |
| 3d460 | 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 73 | span>).<span.class="tok-type">us |
| 3d480 | 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 |
| 3d4a0 | 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= |
| 3d4c0 | 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 74 79 70 65 4e 61 6d 65 3c 2f 73 70 61 6e 3e 28 54 | "tok-builtin">@typeName</span>(T |
| 3d4e0 | 29 2e 6c 65 6e 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 | ).len;.}</code></pre><pre><code. |
| 3d500 | 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 | class="shell">$.zig.test.test.zi |
| 3d520 | 67 0a 31 2f 31 20 74 65 73 74 20 26 71 75 6f 74 3b 69 6e 6c 69 6e 65 20 77 68 69 6c 65 20 6c 6f | g.1/1.test."inline.while.lo |
| 3d540 | 6f 70 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 | op"....OK.All.1.tests.passe |
| 3d560 | 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 | d..</code></pre>........<p>..... |
| 3d580 | 20 20 49 74 20 69 73 20 72 65 63 6f 6d 6d 65 6e 64 65 64 20 74 6f 20 75 73 65 20 3c 63 6f 64 65 | ..It.is.recommended.to.use.<code |
| 3d5a0 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | .class="zig"><span.class="tok-kw |
| 3d5c0 | 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 |
| 3d5e0 | 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:..... |
| 3d600 | 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 |
| 3d620 | 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 |
| 3d640 | 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 |
| 3d660 | 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>.. |
| 3d680 | 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 |
| 3d6a0 | 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. |
| 3d6c0 | 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 |
| 3d6e0 | 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 |
| 3d700 | 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 |
| 3d720 | 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 69 | ee.also:</p><ul>.<li><a.href="#i |
| 3d740 | 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 70 74 | f">if</a></li>.<li><a.href="#Opt |
| 3d760 | 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 3e 3c | ionals">Optionals</a></li>.<li>< |
| 3d780 | 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 69 3e | a.href="#Errors">Errors</a></li> |
| 3d7a0 | 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 63 6f 6d 70 74 69 6d 65 22 3e 63 6f 6d 70 74 69 6d | .<li><a.href="#comptime">comptim |
| 3d7c0 | 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 63 68 | e</a></li>.<li><a.href="#unreach |
| 3d7e0 | 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 6c 3e | able">unreachable</a></li>.</ul> |
| 3d800 | 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 31 20 69 64 3d 22 66 6f 72 22 3e 3c 61 20 68 | ...............<h1.id="for"><a.h |
| 3d820 | 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 73 3d | ref="#toc-for">for</a>.<a.class= |
| 3d840 | 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 31 3e 0a 0a 20 | "hdr".href="#for">..</a></h1>... |
| 3d860 | 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 66 6f 72 2e 7a 69 67 3c 2f 70 3e | .....<p.class="file">for.zig</p> |
| 3d880 | 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 | <pre><code.class="zig"><span.cla |
| 3d8a0 | 73 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. |
| 3d8c0 | 3d 20 3c 73 70 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 |
| 3d8e0 | 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" |
| 3d900 | 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 74 65 73 74 69 6e 67 | >"std"</span>).testing |
| 3d920 | 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 |
| 3d940 | 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" |
| 3d960 | 3e 26 71 75 6f 74 3b 66 6f 72 20 62 61 73 69 63 73 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b | >"for.basics"</span>.{ |
| 3d980 | 0a 20 20 20 20 3c 73 70 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< |
| 3d9a0 | 2f 73 70 61 6e 3e 20 69 74 65 6d 73 20 3d 20 5b 5f 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | /span>.items.=.[_]<span.class="t |
| 3d9c0 | 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 7b 20 3c 73 70 61 6e 20 63 6c 61 73 | ok-type">i32</span>.{.<span.clas |
| 3d9e0 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 | s="tok-number">4</span>,.<span.c |
| 3da00 | 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 |
| 3da20 | 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>,.< |
| 3da40 | 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> |
| 3da60 | 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 |
| 3da80 | 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"> |
| 3daa0 | 76 61 72 3c 2f 73 70 61 6e 3e 20 73 75 6d 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | var</span>.sum:.<span.class="tok |
| 3dac0 | 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= |
| 3dae0 | 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 3c 73 70 61 | "tok-number">0</span>;......<spa |
| 3db00 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 46 6f 72 20 6c 6f 6f | n.class="tok-comment">//.For.loo |
| 3db20 | 70 73 20 69 74 65 72 61 74 65 20 6f 76 65 72 20 73 6c 69 63 65 73 20 61 6e 64 20 61 72 72 61 79 | ps.iterate.over.slices.and.array |
| 3db40 | 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 |
| 3db60 | 77 22 3e 66 6f 72 3c 2f 73 70 61 6e 3e 20 28 69 74 65 6d 73 29 20 7c 76 61 6c 75 65 7c 20 7b 0a | w">for</span>.(items).|value|.{. |
| 3db80 | 20 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 |
| 3dba0 | 22 3e 2f 2f 20 42 72 65 61 6b 20 61 6e 64 20 63 6f 6e 74 69 6e 75 65 20 61 72 65 20 73 75 70 70 | ">//.Break.and.continue.are.supp |
| 3dbc0 | 6f 72 74 65 64 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | orted.</span>.........<span.clas |
| 3dbe0 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 76 61 6c 75 65 20 3d 3d 20 3c | s="tok-kw">if</span>.(value.==.< |
| 3dc00 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e | span.class="tok-number">0</span> |
| 3dc20 | 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ).{.............<span.class="tok |
| 3dc40 | 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 20 7d 0a | -kw">continue</span>;.........}. |
| 3dc60 | 20 20 20 20 20 20 20 20 73 75 6d 20 2b 3d 20 76 61 6c 75 65 3b 0a 20 20 20 20 7d 0a 20 20 20 20 | ........sum.+=.value;.....}..... |
| 3dc80 | 65 78 70 65 63 74 28 73 75 6d 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | expect(sum.==.<span.class="tok-n |
| 3dca0 | 75 6d 62 65 72 22 3e 31 36 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | umber">16</span>);......<span.cl |
| 3dcc0 | 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 6f 20 69 74 65 72 61 74 65 20 | ass="tok-comment">//.To.iterate. |
| 3dce0 | 6f 76 65 72 20 61 20 70 6f 72 74 69 6f 6e 20 6f 66 20 61 20 73 6c 69 63 65 2c 20 72 65 73 6c 69 | over.a.portion.of.a.slice,.resli |
| 3dd00 | 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 6b 2d | ce.</span>.....<span.class="tok- |
| 3dd20 | 6b 77 22 3e 66 6f 72 3c 2f 73 70 61 6e 3e 20 28 69 74 65 6d 73 5b 3c 73 70 61 6e 20 63 6c 61 73 | kw">for</span>.(items[<span.clas |
| 3dd40 | 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 63 | s="tok-number">0</span>..<span.c |
| 3dd60 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 5d 29 20 7c 76 61 | lass="tok-number">1</span>]).|va |
| 3dd80 | 6c 75 65 7c 20 7b 0a 20 20 20 20 20 20 20 20 73 75 6d 20 2b 3d 20 76 61 6c 75 65 3b 0a 20 20 20 | lue|.{.........sum.+=.value;.... |
| 3dda0 | 20 7d 0a 20 20 20 20 65 78 70 65 63 74 28 73 75 6d 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | .}.....expect(sum.==.<span.class |
| 3ddc0 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 30 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 20 20 20 20 3c | ="tok-number">20</span>);......< |
| 3dde0 | 73 70 61 6e 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 61 | span.class="tok-comment">//.To.a |
| 3de00 | 63 63 65 73 73 20 74 68 65 20 69 6e 64 65 78 20 6f 66 20 69 74 65 72 61 74 69 6f 6e 2c 20 73 70 | ccess.the.index.of.iteration,.sp |
| 3de20 | 65 63 69 66 79 20 61 20 73 65 63 6f 6e 64 20 63 61 70 74 75 72 65 20 76 61 6c 75 65 2e 3c 2f 73 | ecify.a.second.capture.value.</s |
| 3de40 | 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 |
| 3de60 | 74 22 3e 2f 2f 20 54 68 69 73 20 69 73 20 7a 65 72 6f 2d 69 6e 64 65 78 65 64 2e 3c 2f 73 70 61 | t">//.This.is.zero-indexed.</spa |
| 3de80 | 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c | n>.....<span.class="tok-kw">var< |
| 3dea0 | 2f 73 70 61 6e 3e 20 73 75 6d 32 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | /span>.sum2:.<span.class="tok-ty |
| 3dec0 | 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 |
| 3dee0 | 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 |
| 3df00 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6f 72 3c 2f 73 70 61 6e 3e 20 28 69 74 65 6d 73 29 20 | ass="tok-kw">for</span>.(items). |
| 3df20 | 7c 76 61 6c 75 65 2c 20 69 7c 20 7b 0a 20 20 20 20 20 20 20 20 65 78 70 65 63 74 28 3c 73 70 61 | |value,.i|.{.........expect(<spa |
| 3df40 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 | n.class="tok-builtin">@TypeOf</s |
| 3df60 | 70 61 6e 3e 28 69 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 | pan>(i).==.<span.class="tok-type |
| 3df80 | 22 3e 75 73 69 7a 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 | ">usize</span>);.........sum2.+= |
| 3dfa0 | 20 3c 73 70 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 | .<span.class="tok-builtin">@intC |
| 3dfc0 | 61 73 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | ast</span>(<span.class="tok-type |
| 3dfe0 | 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 2c 20 69 29 3b 0a 20 20 20 20 7d 0a 20 20 20 20 65 78 70 65 | ">i32</span>,.i);.....}.....expe |
| 3e000 | 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 |
| 3e020 | 65 72 22 3e 31 30 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | er">10</span>);.}..<span.class=" |
| 3e040 | 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= |
| 3e060 | 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 66 6f 72 20 72 65 66 65 72 65 6e 63 65 26 71 75 | "tok-str">"for.reference&qu |
| 3e080 | 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 |
| 3e0a0 | 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 69 74 65 6d 73 20 3d 20 5b 5f 5d 3c 73 70 61 | k-kw">var</span>.items.=.[_]<spa |
| 3e0c0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 7b 20 | n.class="tok-type">i32</span>.{. |
| 3e0e0 | 3c 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 |
| 3e100 | 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 |
| 3e120 | 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 | pan>,.<span.class="tok-number">2 |
| 3e140 | 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 |
| 3e160 | 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 49 74 65 72 61 74 65 20 6f 76 65 72 20 74 68 65 20 73 6c | -comment">//.Iterate.over.the.sl |
| 3e180 | 69 63 65 20 62 79 20 72 65 66 65 72 65 6e 63 65 20 62 79 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c | ice.by.reference.by</span>.....< |
| 3e1a0 | 73 70 61 6e 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 70 65 63 | span.class="tok-comment">//.spec |
| 3e1c0 | 69 66 79 69 6e 67 20 74 68 61 74 20 74 68 65 20 63 61 70 74 75 72 65 20 76 61 6c 75 65 20 69 73 | ifying.that.the.capture.value.is |
| 3e1e0 | 20 61 20 70 6f 69 6e 74 65 72 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | .a.pointer.</span>.....<span.cla |
| 3e200 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6f 72 3c 2f 73 70 61 6e 3e 20 28 69 74 65 6d 73 29 20 7c | ss="tok-kw">for</span>.(items).| |
| 3e220 | 2a 76 61 6c 75 65 7c 20 7b 0a 20 20 20 20 20 20 20 20 76 61 6c 75 65 2e 2a 20 2b 3d 20 3c 73 70 | *value|.{.........value.*.+=.<sp |
| 3e240 | 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>;. |
| 3e260 | 20 20 20 20 7d 0a 0a 20 20 20 20 65 78 70 65 63 74 28 69 74 65 6d 73 5b 3c 73 70 61 6e 20 63 6c | ....}......expect(items[<span.cl |
| 3e280 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 5d 20 3d 3d 20 3c 73 | ass="tok-number">0</span>].==.<s |
| 3e2a0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 29 | pan.class="tok-number">4</span>) |
| 3e2c0 | 3b 0a 20 20 20 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 | ;.....expect(items[<span.class=" |
| 3e2e0 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 5d 20 3d 3d 20 3c 73 70 61 6e 20 63 | tok-number">1</span>].==.<span.c |
| 3e300 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 | lass="tok-number">5</span>);.... |
| 3e320 | 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 6e | .expect(items[<span.class="tok-n |
| 3e340 | 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 5d 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | umber">2</span>].==.<span.class= |
| 3e360 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e | "tok-number">3</span>);.}..<span |
| 3e380 | 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 |
| 3e3a0 | 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 65 6c 73 65 | n.class="tok-str">"for.else |
| 3e3c0 | 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= |
| 3e3e0 | 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 46 6f 72 20 61 6c 6c 6f 77 73 20 61 6e 20 65 | "tok-comment">//.For.allows.an.e |
| 3e400 | 6c 73 65 20 61 74 74 61 63 68 65 64 20 74 6f 20 69 74 2c 20 74 68 65 20 73 61 6d 65 20 61 73 20 | lse.attached.to.it,.the.same.as. |
| 3e420 | 61 20 77 68 69 6c 65 20 6c 6f 6f 70 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 | a.while.loop.</span>.....<span.c |
| 3e440 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 69 74 65 6d 73 20 3d | lass="tok-kw">var</span>.items.= |
| 3e460 | 20 5b 5f 5d 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 | .[_]?<span.class="tok-type">i32< |
| 3e480 | 2f 73 70 61 6e 3e 20 7b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | /span>.{.<span.class="tok-number |
| 3e4a0 | 22 3e 33 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | ">3</span>,.<span.class="tok-num |
| 3e4c0 | 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ber">4</span>,.<span.class="tok- |
| 3e4e0 | 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | null">null</span>,.<span.class=" |
| 3e500 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 0a 20 20 20 20 3c 73 70 | tok-number">5</span>.};......<sp |
| 3e520 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 46 6f 72 20 6c 6f | an.class="tok-comment">//.For.lo |
| 3e540 | 6f 70 73 20 63 61 6e 20 61 6c 73 6f 20 62 65 20 75 73 65 64 20 61 73 20 65 78 70 72 65 73 73 69 | ops.can.also.be.used.as.expressi |
| 3e560 | 6f 6e 73 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ons.</span>.....<span.class="tok |
| 3e580 | 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 53 69 6d 69 6c 61 72 20 74 6f 20 77 68 69 6c 65 20 6c 6f | -comment">//.Similar.to.while.lo |
| 3e5a0 | 6f 70 73 2c 20 77 68 65 6e 20 79 6f 75 20 62 72 65 61 6b 20 66 72 6f 6d 20 61 20 66 6f 72 20 6c | ops,.when.you.break.from.a.for.l |
| 3e5c0 | 6f 6f 70 2c 20 74 68 65 20 65 6c 73 65 20 62 72 61 6e 63 68 20 69 73 20 6e 6f 74 20 65 76 61 6c | oop,.the.else.branch.is.not.eval |
| 3e5e0 | 75 61 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 74 | uated.</span>.....<span.class="t |
| 3e600 | 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 73 75 6d 3a 20 3c 73 70 61 6e 20 63 6c 61 | ok-kw">var</span>.sum:.<span.cla |
| 3e620 | 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 |
| 3e640 | 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>;... |
| 3e660 | 20 20 3c 73 70 61 6e 20 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 |
| 3e680 | 61 6e 3e 20 72 65 73 75 6c 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | an>.result.=.<span.class="tok-kw |
| 3e6a0 | 22 3e 66 6f 72 3c 2f 73 70 61 6e 3e 20 28 69 74 65 6d 73 29 20 7c 76 61 6c 75 65 7c 20 7b 0a 20 | ">for</span>.(items).|value|.{.. |
| 3e6c0 | 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</ |
| 3e6e0 | 73 70 61 6e 3e 20 28 76 61 6c 75 65 20 21 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | span>.(value.!=.<span.class="tok |
| 3e700 | 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 | -null">null</span>).{........... |
| 3e720 | 20 20 73 75 6d 20 2b 3d 20 76 61 6c 75 65 2e 3f 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 | ..sum.+=.value.?;.........}..... |
| 3e740 | 7d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 | }.<span.class="tok-kw">else</spa |
| 3e760 | 6e 3e 20 62 6c 6b 3a 20 7b 0a 20 20 20 20 20 20 20 20 65 78 70 65 63 74 28 73 75 6d 20 3d 3d 20 | n>.blk:.{.........expect(sum.==. |
| 3e780 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 3c 2f 73 70 61 | <span.class="tok-number">12</spa |
| 3e7a0 | 6e 3e 29 3b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | n>);.........<span.class="tok-kw |
| 3e7c0 | 22 3e 62 72 65 61 6b 3c 2f 73 70 61 6e 3e 20 3a 62 6c 6b 20 73 75 6d 3b 0a 20 20 20 20 7d 3b 0a | ">break</span>.:blk.sum;.....};. |
| 3e7e0 | 20 20 20 20 65 78 70 65 63 74 28 72 65 73 75 6c 74 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ....expect(result.==.<span.class |
| 3e800 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 | ="tok-number">12</span>);.}</cod |
| 3e820 | 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 | e></pre><pre><code.class="shell" |
| 3e840 | 3e 24 20 7a 69 67 20 74 65 73 74 20 66 6f 72 2e 7a 69 67 0a 31 2f 33 20 74 65 73 74 20 26 71 75 | >$.zig.test.for.zig.1/3.test.&qu |
| 3e860 | 6f 74 3b 66 6f 72 20 62 61 73 69 63 73 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 32 2f 33 20 74 65 | ot;for.basics"....OK.2/3.te |
| 3e880 | 73 74 20 26 71 75 6f 74 3b 66 6f 72 20 72 65 66 65 72 65 6e 63 65 26 71 75 6f 74 3b 2e 2e 2e 20 | st."for.reference".... |
| 3e8a0 | 4f 4b 0a 33 2f 33 20 74 65 73 74 20 26 71 75 6f 74 3b 66 6f 72 20 65 6c 73 65 26 71 75 6f 74 3b | OK.3/3.test."for.else" |
| 3e8c0 | 2e 2e 2e 20 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 63 6f 64 | ....OK.All.3.tests.passed..</cod |
| 3e8e0 | 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 4c 61 62 65 6c 65 64 2d | e></pre>........<h2.id="Labeled- |
| 3e900 | 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"> |
| 3e920 | 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 |
| 3e940 | 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 32 3e 0a 0a | ref="#Labeled-for">..</a></h2>.. |
| 3e960 | 20 20 20 20 20 20 3c 70 3e 57 68 65 6e 20 61 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | ......<p>When.a.<code.class="zig |
| 3e980 | 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6f 72 3c 2f 73 70 61 6e | "><span.class="tok-kw">for</span |
| 3e9a0 | 3e 3c 2f 63 6f 64 65 3e 20 6c 6f 6f 70 20 69 73 20 6c 61 62 65 6c 65 64 2c 20 69 74 20 63 61 6e | ></code>.loop.is.labeled,.it.can |
| 3e9c0 | 20 62 65 20 72 65 66 65 72 65 6e 63 65 64 20 66 72 6f 6d 20 61 20 3c 63 6f 64 65 20 63 6c 61 73 | .be.referenced.from.a.<code.clas |
| 3e9e0 | 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 62 72 65 | s="zig"><span.class="tok-kw">bre |
| 3ea00 | 61 6b 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6f | ak</span></code>...............o |
| 3ea20 | 72 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | r.<code.class="zig"><span.class= |
| 3ea40 | 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>. |
| 3ea60 | 66 72 6f 6d 20 77 69 74 68 69 6e 20 61 20 6e 65 73 74 65 64 20 6c 6f 6f 70 3a 3c 2f 70 3e 0a 20 | from.within.a.nested.loop:</p>.. |
| 3ea80 | 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 | .....<p.class="file">test.zig</p |
| 3eaa0 | 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c | ><pre><code.class="zig"><span.cl |
| 3eac0 | 61 73 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.=. |
| 3eae0 | 3c 73 70 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 |
| 3eb00 | 74 3c 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">& |
| 3eb20 | 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 |
| 3eb40 | 61 73 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 |
| 3eb60 | 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 |
| 3eb80 | 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 |
| 3eba0 | 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 6e 65 73 74 65 64 20 62 72 65 61 | lass="tok-str">"nested.brea |
| 3ebc0 | 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 6e 20 63 6c 61 73 73 | k"</span>.{.....<span.class |
| 3ebe0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 63 6f 75 6e 74 3a 20 3c 73 70 61 | ="tok-kw">var</span>.count:.<spa |
| 3ec00 | 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>. |
| 3ec20 | 3d 20 3c 73 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 |
| 3ec40 | 61 6e 3e 3b 0a 20 20 20 20 6f 75 74 65 72 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | an>;.....outer:.<span.class="tok |
| 3ec60 | 2d 6b 77 22 3e 66 6f 72 3c 2f 73 70 61 6e 3e 20 28 5b 5f 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d | -kw">for</span>.([_]<span.class= |
| 3ec80 | 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 7b 20 3c 73 70 61 6e 20 63 6c 61 | "tok-type">i32</span>{.<span.cla |
| 3eca0 | 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. |
| 3ecc0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 | class="tok-number">2</span>,.<sp |
| 3ece0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 2c 20 | an.class="tok-number">3</span>,. |
| 3ed00 | 3c 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 |
| 3ed20 | 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 |
| 3ed40 | 70 61 6e 3e 20 7d 29 20 7c 5f 7c 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | pan>.}).|_|.{.........<span.clas |
| 3ed60 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6f 72 3c 2f 73 70 61 6e 3e 20 28 5b 5f 5d 3c 73 70 61 6e 20 | s="tok-kw">for</span>.([_]<span. |
| 3ed80 | 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 |
| 3eda0 | 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>,. |
| 3edc0 | 3c 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 |
| 3ede0 | 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 |
| 3ee00 | 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 |
| 3ee20 | 3c 2f 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 |
| 3ee40 | 22 3e 35 3c 2f 73 70 61 6e 3e 20 7d 29 20 7c 5f 7c 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 | ">5</span>.}).|_|.{............. |
| 3ee60 | 63 6f 75 6e 74 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | count.+=.<span.class="tok-number |
| 3ee80 | 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 61 6e 20 63 6c | ">1</span>;.............<span.cl |
| 3eea0 | 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 6f 75 74 65 72 | ass="tok-kw">break</span>.:outer |
| 3eec0 | 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 7d 0a 20 20 20 20 65 78 70 65 63 74 28 63 6f 75 | ;.........}.....}.....expect(cou |
| 3eee0 | 6e 74 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 | nt.==.<span.class="tok-number">1 |
| 3ef00 | 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 |
| 3ef20 | 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 |
| 3ef40 | 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 3c | tr">"nested.continue"< |
| 3ef60 | 2f 73 70 61 6e 3e 20 7b 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 |
| 3ef80 | 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= |
| 3efa0 | 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. |
| 3efc0 | 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>;.... |
| 3efe0 | 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 |
| 3f000 | 3c 2f 73 70 61 6e 3e 20 28 5b 5f 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | </span>.([_]<span.class="tok-typ |
| 3f020 | 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 7b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | e">i32</span>{.<span.class="tok- |
| 3f040 | 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | number">1</span>,.<span.class="t |
| 3f060 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ok-number">2</span>,.<span.class |
| 3f080 | 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 6c | ="tok-number">3</span>,.<span.cl |
| 3f0a0 | 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 |
| 3f0c0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 2c 20 3c 73 | .class="tok-number">5</span>,.<s |
| 3f0e0 | 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 2c | pan.class="tok-number">6</span>, |
| 3f100 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 37 3c 2f 73 70 61 | .<span.class="tok-number">7</spa |
| 3f120 | 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 38 3c 2f | n>,.<span.class="tok-number">8</ |
| 3f140 | 73 70 61 6e 3e 20 7d 29 20 7c 5f 7c 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | span>.}).|_|.{.........<span.cla |
| 3f160 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6f 72 3c 2f 73 70 61 6e 3e 20 28 5b 5f 5d 3c 73 70 61 6e | ss="tok-kw">for</span>.([_]<span |
| 3f180 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 7b 20 3c 73 | .class="tok-type">i32</span>{.<s |
| 3f1a0 | 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>, |
| 3f1c0 | 20 3c 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 |
| 3f1e0 | 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f | n>,.<span.class="tok-number">3</ |
| 3f200 | 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"> |
| 3f220 | 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 |
| 3f240 | 72 22 3e 35 3c 2f 73 70 61 6e 3e 20 7d 29 20 7c 5f 7c 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 | r">5</span>.}).|_|.{............ |
| 3f260 | 20 63 6f 75 6e 74 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | .count.+=.<span.class="tok-numbe |
| 3f280 | 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 61 6e 20 63 | r">1</span>;.............<span.c |
| 3f2a0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 74 69 6e 75 65 3c 2f 73 70 61 6e 3e 20 3a 6f | lass="tok-kw">continue</span>.:o |
| 3f2c0 | 75 74 65 72 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 7d 0a 0a 20 20 20 20 65 78 70 65 63 | uter;.........}.....}......expec |
| 3f2e0 | 74 28 63 6f 75 6e 74 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | t(count.==.<span.class="tok-numb |
| 3f300 | 65 72 22 3e 38 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 | er">8</span>);.}</code></pre><pr |
| 3f320 | 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 | e><code.class="shell">$.zig.test |
| 3f340 | 20 74 65 73 74 2e 7a 69 67 0a 31 2f 32 20 74 65 73 74 20 26 71 75 6f 74 3b 6e 65 73 74 65 64 20 | .test.zig.1/2.test."nested. |
| 3f360 | 62 72 65 61 6b 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 32 2f 32 20 74 65 73 74 20 26 71 75 6f 74 | break"....OK.2/2.test." |
| 3f380 | 3b 6e 65 73 74 65 64 20 63 6f 6e 74 69 6e 75 65 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 41 6c 6c | ;nested.continue"....OK.All |
| 3f3a0 | 20 32 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a | .2.tests.passed..</code></pre>.. |
| 3f3c0 | 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 69 6e 6c 69 6e 65 2d 66 6f 72 22 | .............<h2.id="inline-for" |
| 3f3e0 | 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 69 6e 6c 69 6e 65 2d 66 6f 72 22 3e 69 6e 6c 69 6e | ><a.href="#toc-inline-for">inlin |
| 3f400 | 65 20 66 6f 72 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 | e.for</a>.<a.class="hdr".href="# |
| 3f420 | 69 6e 6c 69 6e 65 2d 66 6f 72 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c | inline-for">..</a></h2>........< |
| 3f440 | 70 3e 0a 20 20 20 20 20 20 46 6f 72 20 6c 6f 6f 70 73 20 63 61 6e 20 62 65 20 69 6e 6c 69 6e 65 | p>.......For.loops.can.be.inline |
| 3f460 | 64 2e 20 54 68 69 73 20 63 61 75 73 65 73 20 74 68 65 20 6c 6f 6f 70 20 74 6f 20 62 65 20 75 6e | d..This.causes.the.loop.to.be.un |
| 3f480 | 72 6f 6c 6c 65 64 2c 20 77 68 69 63 68 0a 20 20 20 20 20 20 61 6c 6c 6f 77 73 20 74 68 65 20 63 | rolled,.which.......allows.the.c |
| 3f4a0 | 6f 64 65 20 74 6f 20 64 6f 20 73 6f 6d 65 20 74 68 69 6e 67 73 20 77 68 69 63 68 20 6f 6e 6c 79 | ode.to.do.some.things.which.only |
| 3f4c0 | 20 77 6f 72 6b 20 61 74 20 63 6f 6d 70 69 6c 65 20 74 69 6d 65 2c 0a 20 20 20 20 20 20 73 75 63 | .work.at.compile.time,.......suc |
| 3f4e0 | 68 20 61 73 20 75 73 65 20 74 79 70 65 73 20 61 73 20 66 69 72 73 74 20 63 6c 61 73 73 20 76 61 | h.as.use.types.as.first.class.va |
| 3f500 | 6c 75 65 73 2e 0a 20 20 20 20 20 20 54 68 65 20 63 61 70 74 75 72 65 20 76 61 6c 75 65 20 61 6e | lues........The.capture.value.an |
| 3f520 | 64 20 69 74 65 72 61 74 6f 72 20 76 61 6c 75 65 20 6f 66 20 69 6e 6c 69 6e 65 64 20 66 6f 72 20 | d.iterator.value.of.inlined.for. |
| 3f540 | 6c 6f 6f 70 73 20 61 72 65 0a 20 20 20 20 20 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 6b 6e 6f | loops.are.......compile-time.kno |
| 3f560 | 77 6e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 | wn........</p>.......<p.class="f |
| 3f580 | 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 | ile">test.zig</p><pre><code.clas |
| 3f5a0 | 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e | s="zig"><span.class="tok-kw">con |
| 3f5c0 | 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=" |
| 3f5e0 | 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 |
| 3f600 | 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" |
| 3f620 | 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 |
| 3f640 | 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 |
| 3f660 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 69 6e 6c 69 6e 65 20 66 | n.class="tok-str">"inline.f |
| 3f680 | 6f 72 20 6c 6f 6f 70 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e | or.loop"</span>.{.....<span |
| 3f6a0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6e 75 6d | .class="tok-kw">const</span>.num |
| 3f6c0 | 73 20 3d 20 5b 5f 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 | s.=.[_]<span.class="tok-type">i3 |
| 3f6e0 | 32 3c 2f 73 70 61 6e 3e 7b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | 2</span>{<span.class="tok-number |
| 3f700 | 22 3e 32 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | ">2</span>,.<span.class="tok-num |
| 3f720 | 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ber">4</span>,.<span.class="tok- |
| 3f740 | 6e 75 6d 62 65 72 22 3e 36 3c 2f 73 70 61 6e 3e 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | number">6</span>};.....<span.cla |
| 3f760 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 73 75 6d 3a 20 3c 73 70 61 | ss="tok-kw">var</span>.sum:.<spa |
| 3f780 | 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>. |
| 3f7a0 | 3d 20 3c 73 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 |
| 3f7c0 | 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 6e | an>;.....<span.class="tok-kw">in |
| 3f7e0 | 6c 69 6e 65 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | line</span>.<span.class="tok-kw" |
| 3f800 | 3e 66 6f 72 3c 2f 73 70 61 6e 3e 20 28 6e 75 6d 73 29 20 7c 69 7c 20 7b 0a 20 20 20 20 20 20 20 | >for</span>.(nums).|i|.{........ |
| 3f820 | 20 3c 73 70 61 6e 20 63 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 |
| 3f840 | 6e 3e 20 54 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 77 69 74 | n>.T.=.<span.class="tok-kw">swit |
| 3f860 | 63 68 3c 2f 73 70 61 6e 3e 20 28 69 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 | ch</span>.(i).{.............<spa |
| 3f880 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 20 3d 26 | n.class="tok-number">2</span>.=& |
| 3f8a0 | 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 33 32 3c 2f | gt;.<span.class="tok-type">f32</ |
| 3f8c0 | 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | span>,.............<span.class=" |
| 3f8e0 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 20 3d 26 67 74 3b 20 3c 73 70 61 6e | tok-number">4</span>.=>.<span |
| 3f900 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 38 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 | .class="tok-type">i8</span>,.... |
| 3f920 | 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 |
| 3f940 | 22 3e 36 3c 2f 73 70 61 6e 3e 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ">6</span>.=>.<span.class="to |
| 3f960 | 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 20 20 20 | k-type">bool</span>,............ |
| 3f980 | 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 |
| 3f9a0 | 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 |
| 3f9c0 | 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 7d 3b 0a 20 20 20 20 | eachable</span>,.........};..... |
| 3f9e0 | 20 20 20 20 73 75 6d 20 2b 3d 20 74 79 70 65 4e 61 6d 65 4c 65 6e 67 74 68 28 54 29 3b 0a 20 20 | ....sum.+=.typeNameLength(T);... |
| 3fa00 | 20 20 7d 0a 20 20 20 20 65 78 70 65 63 74 28 73 75 6d 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | ..}.....expect(sum.==.<span.clas |
| 3fa20 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 39 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 | s="tok-number">9</span>);.}..<sp |
| 3fa40 | 61 6e 20 63 6c 61 73 73 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 |
| 3fa60 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 74 79 70 65 4e 61 6d 65 4c 65 6e 67 74 68 3c | n.class="tok-fn">typeNameLength< |
| 3fa80 | 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 |
| 3faa0 | 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- |
| 3fac0 | 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=" |
| 3fae0 | 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 | tok-type">usize</span>.{.....<sp |
| 3fb00 | 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>. |
| 3fb20 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 74 79 70 65 4e | <span.class="tok-builtin">@typeN |
| 3fb40 | 61 6d 65 3c 2f 73 70 61 6e 3e 28 54 29 2e 6c 65 6e 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 | ame</span>(T).len;.}</code></pre |
| 3fb60 | 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 | ><pre><code.class="shell">$.zig. |
| 3fb80 | 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 31 2f 31 20 74 65 73 74 20 26 71 75 6f 74 3b 69 6e 6c | test.test.zig.1/1.test."inl |
| 3fba0 | 69 6e 65 20 66 6f 72 20 6c 6f 6f 70 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 41 6c 6c 20 31 20 74 | ine.for.loop"....OK.All.1.t |
| 3fbc0 | 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 | ests.passed..</code></pre>...... |
| 3fbe0 | 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 74 20 69 73 20 72 65 63 6f 6d 6d 65 6e 64 65 64 20 74 6f | ..<p>.......It.is.recommended.to |
| 3fc00 | 20 75 73 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 | .use.<code.class="zig"><span.cla |
| 3fc20 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 6e 6c 69 6e 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e | ss="tok-kw">inline</span></code> |
| 3fc40 | 20 6c 6f 6f 70 73 20 6f 6e 6c 79 20 66 6f 72 20 6f 6e 65 20 6f 66 20 74 68 65 73 65 20 72 65 61 | .loops.only.for.one.of.these.rea |
| 3fc60 | 73 6f 6e 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 | sons:.......</p>.......<ul>..... |
| 3fc80 | 20 20 20 20 3c 6c 69 3e 59 6f 75 20 6e 65 65 64 20 74 68 65 20 6c 6f 6f 70 20 74 6f 20 65 78 65 | ....<li>You.need.the.loop.to.exe |
| 3fca0 | 63 75 74 65 20 61 74 20 3c 61 20 68 72 65 66 3d 22 23 63 6f 6d 70 74 69 6d 65 22 3e 63 6f 6d 70 | cute.at.<a.href="#comptime">comp |
| 3fcc0 | 74 69 6d 65 3c 2f 61 3e 20 66 6f 72 20 74 68 65 20 73 65 6d 61 6e 74 69 63 73 20 74 6f 20 77 6f | time</a>.for.the.semantics.to.wo |
| 3fce0 | 72 6b 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 0a 20 20 20 20 20 20 20 20 59 6f | rk.</li>.........<li>.........Yo |
| 3fd00 | 75 20 68 61 76 65 20 61 20 62 65 6e 63 68 6d 61 72 6b 20 74 6f 20 70 72 6f 76 65 20 74 68 61 74 | u.have.a.benchmark.to.prove.that |
| 3fd20 | 20 66 6f 72 63 69 62 6c 79 20 75 6e 72 6f 6c 6c 69 6e 67 20 74 68 65 20 6c 6f 6f 70 20 69 6e 20 | .forcibly.unrolling.the.loop.in. |
| 3fd40 | 74 68 69 73 20 77 61 79 20 69 73 20 6d 65 61 73 75 72 61 62 6c 79 20 66 61 73 74 65 72 2e 0a 20 | this.way.is.measurably.faster... |
| 3fd60 | 20 20 20 20 20 20 20 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 0a | .......</li>.......</ul>........ |
| 3fd80 | 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>< |
| 3fda0 | 61 20 68 72 65 66 3d 22 23 77 68 69 6c 65 22 3e 77 68 69 6c 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c | a.href="#while">while</a></li>.< |
| 3fdc0 | 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 63 6f 6d 70 74 69 6d 65 22 3e 63 6f 6d 70 74 69 6d 65 3c | li><a.href="#comptime">comptime< |
| 3fde0 | 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 |
| 3fe00 | 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 53 6c 69 | rrays</a></li>.<li><a.href="#Sli |
| 3fe20 | 63 65 73 22 3e 53 6c 69 63 65 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 | ces">Slices</a></li>.</ul>...... |
| 3fe40 | 20 20 0a 20 20 20 20 20 20 3c 68 31 20 69 64 3d 22 69 66 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 | .........<h1.id="if"><a.href="#t |
| 3fe60 | 6f 63 2d 69 66 22 3e 69 66 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 | oc-if">if</a>.<a.class="hdr".hre |
| 3fe80 | 66 3d 22 23 69 66 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 31 3e 0a 0a 20 20 20 20 20 20 3c 70 20 63 6c | f="#if">..</a></h1>........<p.cl |
| 3fea0 | 61 73 73 3d 22 66 69 6c 65 22 3e 69 66 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 | ass="file">if.zig</p><pre><code. |
| 3fec0 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d | class="zig"><span.class="tok-com |
| 3fee0 | 6d 65 6e 74 22 3e 2f 2f 20 49 66 20 65 78 70 72 65 73 73 69 6f 6e 73 20 68 61 76 65 20 74 68 72 | ment">//.If.expressions.have.thr |
| 3ff00 | 65 65 20 75 73 65 73 2c 20 63 6f 72 72 65 73 70 6f 6e 64 69 6e 67 20 74 6f 20 74 68 65 20 74 68 | ee.uses,.corresponding.to.the.th |
| 3ff20 | 72 65 65 20 74 79 70 65 73 3a 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ree.types:</span>.<span.class="t |
| 3ff40 | 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 2a 20 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 0a 3c 73 70 | ok-comment">//.*.bool</span>.<sp |
| 3ff60 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 2a 20 3f 54 3c 2f | an.class="tok-comment">//.*.?T</ |
| 3ff80 | 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"> |
| 3ffa0 | 2f 2f 20 2a 20 61 6e 79 65 72 72 6f 72 21 54 3c 2f 73 70 61 6e 3e 0a 0a 3c 73 70 61 6e 20 63 6c | //.*.anyerror!T</span>..<span.cl |
| 3ffc0 | 61 73 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 |
| 3ffe0 | 20 3d 20 3c 73 70 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 |
| 40000 | 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 |
| 40020 | 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 74 65 73 74 69 6e | ">"std"</span>).testin |
| 40040 | 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"> |
| 40060 | 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 |
| 40080 | 22 3e 26 71 75 6f 74 3b 69 66 20 65 78 70 72 65 73 73 69 6f 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 | ">"if.expression"</spa |
| 400a0 | 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e | n>.{.....<span.class="tok-commen |
| 400c0 | 74 22 3e 2f 2f 20 49 66 20 65 78 70 72 65 73 73 69 6f 6e 73 20 61 72 65 20 75 73 65 64 20 69 6e | t">//.If.expressions.are.used.in |
| 400e0 | 73 74 65 61 64 20 6f 66 20 61 20 74 65 72 6e 61 72 79 20 65 78 70 72 65 73 73 69 6f 6e 2e 3c 2f | stead.of.a.ternary.expression.</ |
| 40100 | 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 |
| 40120 | 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- |
| 40140 | 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=" |
| 40160 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 | tok-number">5</span>;.....<span. |
| 40180 | 63 6c 61 73 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 | class="tok-kw">const</span>.b:.< |
| 401a0 | 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> |
| 401c0 | 20 3d 20 3c 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 |
| 401e0 | 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 | pan>;.....<span.class="tok-kw">c |
| 40200 | 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 |
| 40220 | 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 3c 73 70 | ="tok-kw">if</span>.(a.!=.b).<sp |
| 40240 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 37 3c 2f 73 70 61 6e 3e 20 | an.class="tok-number">47</span>. |
| 40260 | 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> |
| 40280 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 30 38 39 3c 2f | .<span.class="tok-number">3089</ |
| 402a0 | 73 70 61 6e 3e 3b 0a 20 20 20 20 65 78 70 65 63 74 28 72 65 73 75 6c 74 20 3d 3d 20 3c 73 70 61 | span>;.....expect(result.==.<spa |
| 402c0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 37 3c 2f 73 70 61 6e 3e 29 3b | n.class="tok-number">47</span>); |
| 402e0 | 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 | .}..<span.class="tok-kw">test</s |
| 40300 | 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">" |
| 40320 | 3b 69 66 20 62 6f 6f 6c 65 61 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c | ;if.boolean"</span>.{.....< |
| 40340 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 49 66 20 65 | span.class="tok-comment">//.If.e |
| 40360 | 78 70 72 65 73 73 69 6f 6e 73 20 74 65 73 74 20 62 6f 6f 6c 65 61 6e 20 63 6f 6e 64 69 74 69 6f | xpressions.test.boolean.conditio |
| 40380 | 6e 73 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ns.</span>.....<span.class="tok- |
| 403a0 | 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | kw">const</span>.a:.<span.class= |
| 403c0 | 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 |
| 403e0 | 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>;.....< |
| 40400 | 73 70 61 6e 20 63 6c 61 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> |
| 40420 | 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 2f | .b:.<span.class="tok-type">u32</ |
| 40440 | 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" |
| 40460 | 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 2d | >4</span>;.....<span.class="tok- |
| 40480 | 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 61 20 21 3d 20 62 29 20 7b 0a 20 20 20 20 20 20 20 | kw">if</span>.(a.!=.b).{........ |
| 404a0 | 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 3e 74 | .expect(<span.class="tok-null">t |
| 404c0 | 72 75 65 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 7d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | rue</span>);.....}.<span.class=" |
| 404e0 | 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | tok-kw">else</span>.<span.class= |
| 40500 | 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 61 20 3d 3d 20 3c 73 70 61 6e 20 63 | "tok-kw">if</span>.(a.==.<span.c |
| 40520 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 39 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 | lass="tok-number">9</span>).{... |
| 40540 | 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 |
| 40560 | 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 7d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | chable</span>;.....}.<span.class |
| 40580 | 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 | ="tok-kw">else</span>.{......... |
| 405a0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 72 65 61 63 68 61 62 6c 65 | <span.class="tok-kw">unreachable |
| 405c0 | 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 7d 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | </span>;.....}.}..<span.class="t |
| 405e0 | 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=" |
| 40600 | 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 69 66 20 6f 70 74 69 6f 6e 61 6c 26 71 75 6f 74 3b | tok-str">"if.optional" |
| 40620 | 3c 2f 73 70 61 6e 3e 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 |
| 40640 | 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 49 66 20 65 78 70 72 65 73 73 69 6f 6e 73 20 74 65 73 74 20 66 | omment">//.If.expressions.test.f |
| 40660 | 6f 72 20 6e 75 6c 6c 2e 3c 2f 73 70 61 6e 3e 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | or.null.</span>......<span.class |
| 40680 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 3a 20 3f 3c 73 70 61 6e | ="tok-kw">const</span>.a:.?<span |
| 406a0 | 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>.=.< |
| 406c0 | 73 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> |
| 406e0 | 3b 0a 20 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 |
| 40700 | 70 61 6e 3e 20 28 61 29 20 7c 76 61 6c 75 65 7c 20 7b 0a 20 20 20 20 20 20 20 20 65 78 70 65 63 | pan>.(a).|value|.{.........expec |
| 40720 | 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 62 | t(value.==.<span.class="tok-numb |
| 40740 | 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 7d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | er">0</span>);.....}.<span.class |
| 40760 | 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 | ="tok-kw">else</span>.{......... |
| 40780 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 72 65 61 63 68 61 62 6c 65 | <span.class="tok-kw">unreachable |
| 407a0 | 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | </span>;.....}......<span.class= |
| 407c0 | 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 62 3a 20 3f 3c 73 70 61 6e 20 | "tok-kw">const</span>.b:.?<span. |
| 407e0 | 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 |
| 40800 | 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> |
| 40820 | 3b 0a 20 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 |
| 40840 | 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 3c 73 70 61 6e | pan>.(b).|value|.{.........<span |
| 40860 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 | .class="tok-kw">unreachable</spa |
| 40880 | 6e 3e 3b 0a 20 20 20 20 7d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 | n>;.....}.<span.class="tok-kw">e |
| 408a0 | 6c 73 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 65 78 70 65 63 74 28 3c 73 70 61 | lse</span>.{.........expect(<spa |
| 408c0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 29 3b | n.class="tok-null">true</span>); |
| 408e0 | 0a 20 20 20 20 7d 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d | .....}......<span.class="tok-com |
| 40900 | 6d 65 6e 74 22 3e 2f 2f 20 54 68 65 20 65 6c 73 65 20 69 73 20 6e 6f 74 20 72 65 71 75 69 72 65 | ment">//.The.else.is.not.require |
| 40920 | 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 6b | d.</span>.....<span.class="tok-k |
| 40940 | 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 20 | w">if</span>.(a).|value|.{...... |
| 40960 | 20 20 20 65 78 70 65 63 74 28 76 61 6c 75 65 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ...expect(value.==.<span.class=" |
| 40980 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 7d 0a 0a 20 20 | tok-number">0</span>);.....}.... |
| 409a0 | 20 20 3c 73 70 61 6e 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 |
| 409c0 | 6f 20 74 65 73 74 20 61 67 61 69 6e 73 74 20 6e 75 6c 6c 20 6f 6e 6c 79 2c 20 75 73 65 20 74 68 | o.test.against.null.only,.use.th |
| 409e0 | 65 20 62 69 6e 61 72 79 20 65 71 75 61 6c 69 74 79 20 6f 70 65 72 61 74 6f 72 2e 3c 2f 73 70 61 | e.binary.equality.operator.</spa |
| 40a00 | 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</ |
| 40a20 | 73 70 61 6e 3e 20 28 62 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c | span>.(b.==.<span.class="tok-nul |
| 40a40 | 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 20 20 20 20 65 78 70 65 63 74 | l">null</span>).{.........expect |
| 40a60 | 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 |
| 40a80 | 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 |
| 40aa0 | 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 41 63 63 65 73 73 20 74 68 65 20 76 61 6c 75 65 20 62 | k-comment">//.Access.the.value.b |
| 40ac0 | 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 74 | y.reference.using.a.pointer.capt |
| 40ae0 | 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 6b | ure.</span>.....<span.class="tok |
| 40b00 | 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 63 3a 20 3f 3c 73 70 61 6e 20 63 6c 61 73 73 3d | -kw">var</span>.c:.?<span.class= |
| 40b20 | 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 |
| 40b40 | 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>;.....< |
| 40b60 | 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 63 | span.class="tok-kw">if</span>.(c |
| 40b80 | 29 20 7c 2a 76 61 6c 75 65 7c 20 7b 0a 20 20 20 20 20 20 20 20 76 61 6c 75 65 2e 2a 20 3d 20 3c | ).|*value|.{.........value.*.=.< |
| 40ba0 | 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> |
| 40bc0 | 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | ;.....}......<span.class="tok-kw |
| 40be0 | 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 63 29 20 7c 76 61 6c 75 65 7c 20 7b 0a 20 20 20 20 20 20 | ">if</span>.(c).|value|.{....... |
| 40c00 | 20 20 65 78 70 65 63 74 28 76 61 6c 75 65 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ..expect(value.==.<span.class="t |
| 40c20 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 7d 20 3c 73 70 61 | ok-number">2</span>);.....}.<spa |
| 40c40 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 | n.class="tok-kw">else</span>.{.. |
| 40c60 | 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 72 65 | .......<span.class="tok-kw">unre |
| 40c80 | 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 7d 0a 7d 0a 0a 3c 73 70 61 6e 20 63 | achable</span>;.....}.}..<span.c |
| 40ca0 | 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. |
| 40cc0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 69 66 20 65 72 72 6f 72 20 75 | class="tok-str">"if.error.u |
| 40ce0 | 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 |
| 40d00 | 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 49 66 20 65 78 70 72 65 73 73 69 | ass="tok-comment">//.If.expressi |
| 40d20 | 6f 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 | ons.test.for.errors.</span>..... |
| 40d40 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 4e 6f 74 | <span.class="tok-comment">//.Not |
| 40d60 | 65 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 | e.the.|err|.capture.on.the.else. |
| 40d80 | 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 77 | </span>......<span.class="tok-kw |
| 40da0 | 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ">const</span>.a:.<span.class="t |
| 40dc0 | 6f 6b 2d 74 79 70 65 22 3e 61 6e 79 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 21 3c 73 70 61 6e 20 63 | ok-type">anyerror</span>!<span.c |
| 40de0 | 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 | lass="tok-type">u32</span>.=.<sp |
| 40e00 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 3b 0a | an.class="tok-number">0</span>;. |
| 40e20 | 20 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 |
| 40e40 | 6e 3e 20 28 61 29 20 7c 76 61 6c 75 65 7c 20 7b 0a 20 20 20 20 20 20 20 20 65 78 70 65 63 74 28 | n>.(a).|value|.{.........expect( |
| 40e60 | 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 |
| 40e80 | 22 3e 30 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 7d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ">0</span>);.....}.<span.class=" |
| 40ea0 | 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|.{..... |
| 40ec0 | 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 72 65 61 63 68 | ....<span.class="tok-kw">unreach |
| 40ee0 | 61 62 6c 65 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | able</span>;.....}......<span.cl |
| 40f00 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 62 3a 20 3c 73 70 | ass="tok-kw">const</span>.b:.<sp |
| 40f20 | 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 |
| 40f40 | 61 6e 3e 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f | an>!<span.class="tok-type">u32</ |
| 40f60 | 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 |
| 40f80 | 6f 72 3c 2f 73 70 61 6e 3e 2e 42 61 64 56 61 6c 75 65 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | or</span>.BadValue;.....<span.cl |
| 40fa0 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 62 29 20 7c 76 61 6c 75 | ass="tok-kw">if</span>.(b).|valu |
| 40fc0 | 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 |
| 40fe0 | 22 3e 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 7d 20 3c 73 70 61 | ">unreachable</span>;.....}.<spa |
| 41000 | 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 |
| 41020 | 72 7c 20 7b 0a 20 20 20 20 20 20 20 20 65 78 70 65 63 74 28 65 72 72 20 3d 3d 20 3c 73 70 61 6e | r|.{.........expect(err.==.<span |
| 41040 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 42 61 64 | .class="tok-kw">error</span>.Bad |
| 41060 | 56 61 6c 75 65 29 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | Value);.....}......<span.class=" |
| 41080 | 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 65 20 65 6c 73 65 20 61 6e 64 20 7c 65 72 | tok-comment">//.The.else.and.|er |
| 410a0 | 72 7c 20 63 61 70 74 75 72 65 20 69 73 20 73 74 72 69 63 74 6c 79 20 72 65 71 75 69 72 65 64 2e | r|.capture.is.strictly.required. |
| 410c0 | 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" |
| 410e0 | 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 61 29 20 7c 76 61 6c 75 65 7c 20 7b 0a 20 20 20 20 20 20 20 | >if</span>.(a).|value|.{........ |
| 41100 | 20 65 78 70 65 63 74 28 76 61 6c 75 65 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | .expect(value.==.<span.class="to |
| 41120 | 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 7d 20 3c 73 70 61 6e | k-number">0</span>);.....}.<span |
| 41140 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 7c 5f 7c 20 | .class="tok-kw">else</span>.|_|. |
| 41160 | 7b 7d 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 | {}......<span.class="tok-comment |
| 41180 | 22 3e 2f 2f 20 54 6f 20 63 68 65 63 6b 20 6f 6e 6c 79 20 74 68 65 20 65 72 72 6f 72 20 76 61 6c | ">//.To.check.only.the.error.val |
| 411a0 | 75 65 2c 20 75 73 65 20 61 6e 20 65 6d 70 74 79 20 62 6c 6f 63 6b 20 65 78 70 72 65 73 73 69 6f | ue,.use.an.empty.block.expressio |
| 411c0 | 6e 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | n.</span>.....<span.class="tok-k |
| 411e0 | 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 62 29 20 7c 5f 7c 20 7b 7d 20 3c 73 70 61 6e 20 63 6c | w">if</span>.(b).|_|.{}.<span.cl |
| 41200 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 7c 65 72 72 7c 20 7b | ass="tok-kw">else</span>.|err|.{ |
| 41220 | 0a 20 20 20 20 20 20 20 20 65 78 70 65 63 74 28 65 72 72 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 | .........expect(err.==.<span.cla |
| 41240 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 42 61 64 56 61 6c 75 | ss="tok-kw">error</span>.BadValu |
| 41260 | 65 29 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | e);.....}......<span.class="tok- |
| 41280 | 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 41 63 63 65 73 73 20 74 68 65 20 76 61 6c 75 65 20 62 79 20 | comment">//.Access.the.value.by. |
| 412a0 | 72 65 66 65 72 65 6e 63 65 20 75 73 69 6e 67 20 61 20 70 6f 69 6e 74 65 72 20 63 61 70 74 75 72 | reference.using.a.pointer.captur |
| 412c0 | 65 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | e.</span>.....<span.class="tok-k |
| 412e0 | 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 63 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | w">var</span>.c:.<span.class="to |
| 41300 | 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 |
| 41320 | 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 |
| 41340 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 3b 0a 20 | n.class="tok-number">3</span>;.. |
| 41360 | 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 |
| 41380 | 3e 20 28 63 29 20 7c 2a 76 61 6c 75 65 7c 20 7b 0a 20 20 20 20 20 20 20 20 76 61 6c 75 65 2e 2a | >.(c).|*value|.{.........value.* |
| 413a0 | 20 3d 20 3c 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 |
| 413c0 | 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" |
| 413e0 | 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 7c 65 72 72 7c 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 | >else</span>.|err|.{.........<sp |
| 41400 | 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 |
| 41420 | 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 6f | pan>;.....}......<span.class="to |
| 41440 | 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 20 | k-kw">if</span>.(c).|value|.{... |
| 41460 | 20 20 20 20 20 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 | ......expect(value.==.<span.clas |
| 41480 | 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 20 | s="tok-number">9</span>);.....}. |
| 414a0 | 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> |
| 414c0 | 20 7c 65 72 72 7c 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | .|err|.{.........<span.class="to |
| 414e0 | 6b 2d 6b 77 22 3e 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 7d 0a | k-kw">unreachable</span>;.....}. |
| 41500 | 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 |
| 41520 | 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">" |
| 41540 | 69 66 20 65 72 72 6f 72 20 75 6e 69 6f 6e 20 77 69 74 68 20 6f 70 74 69 6f 6e 61 6c 26 71 75 6f | if.error.union.with.optional&quo |
| 41560 | 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 |
| 41580 | 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 49 66 20 65 78 70 72 65 73 73 69 6f 6e 73 20 74 65 73 74 | -comment">//.If.expressions.test |
| 415a0 | 20 66 6f 72 20 65 72 72 6f 72 73 20 62 65 66 6f 72 65 20 75 6e 77 72 61 70 70 69 6e 67 20 6f 70 | .for.errors.before.unwrapping.op |
| 415c0 | 74 69 6f 6e 61 6c 73 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | tionals.</span>.....<span.class= |
| 415e0 | 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 65 20 7c 6f 70 74 69 6f 6e 61 6c 5f 76 | "tok-comment">//.The.|optional_v |
| 41600 | 61 6c 75 65 7c 20 63 61 70 74 75 72 65 27 73 20 74 79 70 65 20 69 73 20 3f 75 33 32 2e 3c 2f 73 | alue|.capture's.type.is.?u32.</s |
| 41620 | 70 61 6e 3e 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 | pan>......<span.class="tok-kw">c |
| 41640 | 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- |
| 41660 | 74 79 70 65 22 3e 61 6e 79 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 21 3f 3c 73 70 61 6e 20 63 6c 61 | type">anyerror</span>!?<span.cla |
| 41680 | 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 |
| 416a0 | 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>;... |
| 416c0 | 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> |
| 416e0 | 20 28 61 29 20 7c 6f 70 74 69 6f 6e 61 6c 5f 76 61 6c 75 65 7c 20 7b 0a 20 20 20 20 20 20 20 20 | .(a).|optional_value|.{......... |
| 41700 | 65 78 70 65 63 74 28 6f 70 74 69 6f 6e 61 6c 5f 76 61 6c 75 65 2e 3f 20 3d 3d 20 3c 73 70 61 6e | expect(optional_value.?.==.<span |
| 41720 | 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>);.. |
| 41740 | 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</ |
| 41760 | 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 61 73 | span>.|err|.{.........<span.clas |
| 41780 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 3b 0a 20 | s="tok-kw">unreachable</span>;.. |
| 417a0 | 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 63 | ...}......<span.class="tok-kw">c |
| 417c0 | 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 62 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | onst</span>.b:.<span.class="tok- |
| 417e0 | 74 79 70 65 22 3e 61 6e 79 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 21 3f 3c 73 70 61 6e 20 63 6c 61 | type">anyerror</span>!?<span.cla |
| 41800 | 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 |
| 41820 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 3b 0a 20 | .class="tok-null">null</span>;.. |
| 41840 | 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 |
| 41860 | 3e 20 28 62 29 20 7c 6f 70 74 69 6f 6e 61 6c 5f 76 61 6c 75 65 7c 20 7b 0a 20 20 20 20 20 20 20 | >.(b).|optional_value|.{........ |
| 41880 | 20 65 78 70 65 63 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 | .expect(optional_value.==.<span. |
| 418a0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 29 3b 0a 20 | class="tok-null">null</span>);.. |
| 418c0 | 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</ |
| 418e0 | 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 61 73 | span>.|err|.{.........<span.clas |
| 41900 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 3b 0a 20 | s="tok-kw">unreachable</span>;.. |
| 41920 | 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 63 | ...}......<span.class="tok-kw">c |
| 41940 | 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 2d | onst</span>.c:.<span.class="tok- |
| 41960 | 74 79 70 65 22 3e 61 6e 79 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 21 3f 3c 73 70 61 6e 20 63 6c 61 | type">anyerror</span>!?<span.cla |
| 41980 | 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 |
| 419a0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 42 61 64 | .class="tok-kw">error</span>.Bad |
| 419c0 | 56 61 6c 75 65 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | Value;.....<span.class="tok-kw"> |
| 419e0 | 69 66 3c 2f 73 70 61 6e 3e 20 28 63 29 20 7c 6f 70 74 69 6f 6e 61 6c 5f 76 61 6c 75 65 7c 20 7b | if</span>.(c).|optional_value|.{ |
| 41a00 | 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 |
| 41a20 | 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 |
| 41a40 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 7c 65 72 72 7c 20 7b | ass="tok-kw">else</span>.|err|.{ |
| 41a60 | 0a 20 20 20 20 20 20 20 20 65 78 70 65 63 74 28 65 72 72 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 | .........expect(err.==.<span.cla |
| 41a80 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 42 61 64 56 61 6c 75 | ss="tok-kw">error</span>.BadValu |
| 41aa0 | 65 29 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | e);.....}......<span.class="tok- |
| 41ac0 | 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 41 63 63 65 73 73 20 74 68 65 20 76 61 6c 75 65 20 62 79 20 | comment">//.Access.the.value.by. |
| 41ae0 | 72 65 66 65 72 65 6e 63 65 20 62 79 20 75 73 69 6e 67 20 61 20 70 6f 69 6e 74 65 72 20 63 61 70 | reference.by.using.a.pointer.cap |
| 41b00 | 74 75 72 65 20 65 61 63 68 20 74 69 6d 65 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e | ture.each.time.</span>.....<span |
| 41b20 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 64 3a 20 3c 73 | .class="tok-kw">var</span>.d:.<s |
| 41b40 | 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 |
| 41b60 | 70 61 6e 3e 21 3f 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 | pan>!?<span.class="tok-type">u32 |
| 41b80 | 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 |
| 41ba0 | 72 22 3e 33 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | r">3</span>;.....<span.class="to |
| 41bc0 | 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 64 29 20 7c 2a 6f 70 74 69 6f 6e 61 6c 5f 76 | k-kw">if</span>.(d).|*optional_v |
| 41be0 | 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 |
| 41c00 | 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 6f 70 74 69 6f 6e 61 6c 5f 76 61 6c 75 65 2e 2a | -kw">if</span>.(optional_value.* |
| 41c20 | 29 20 7c 2a 76 61 6c 75 65 7c 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 76 61 6c 75 65 2e 2a | ).|*value|.{.............value.* |
| 41c40 | 20 3d 20 3c 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 |
| 41c60 | 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 |
| 41c80 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 7c 65 72 72 7c 20 7b 0a 20 | s="tok-kw">else</span>.|err|.{.. |
| 41ca0 | 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 72 65 | .......<span.class="tok-kw">unre |
| 41cc0 | 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 20 3c 73 70 61 6e | achable</span>;.....}......<span |
| 41ce0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 64 29 20 7c 6f | .class="tok-kw">if</span>.(d).|o |
| 41d00 | 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 65 78 70 65 63 74 28 | ptional_value|.{.........expect( |
| 41d20 | 6f 70 74 69 6f 6e 61 6c 5f 76 61 6c 75 65 2e 3f 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | optional_value.?.==.<span.class= |
| 41d40 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 39 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 7d 20 3c 73 | "tok-number">9</span>);.....}.<s |
| 41d60 | 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>.| |
| 41d80 | 65 72 72 7c 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | err|.{.........<span.class="tok- |
| 41da0 | 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 3c | kw">unreachable</span>;.....}.}< |
| 41dc0 | 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 | /code></pre><pre><code.class="sh |
| 41de0 | 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 69 66 2e 7a 69 67 0a 31 2f 35 20 74 65 73 74 20 | ell">$.zig.test.if.zig.1/5.test. |
| 41e00 | 26 71 75 6f 74 3b 69 66 20 65 78 70 72 65 73 73 69 6f 6e 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a | "if.expression"....OK. |
| 41e20 | 32 2f 35 20 74 65 73 74 20 26 71 75 6f 74 3b 69 66 20 62 6f 6f 6c 65 61 6e 26 71 75 6f 74 3b 2e | 2/5.test."if.boolean". |
| 41e40 | 2e 2e 20 4f 4b 0a 33 2f 35 20 74 65 73 74 20 26 71 75 6f 74 3b 69 66 20 6f 70 74 69 6f 6e 61 6c | ...OK.3/5.test."if.optional |
| 41e60 | 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 34 2f 35 20 74 65 73 74 20 26 71 75 6f 74 3b 69 66 20 65 | "....OK.4/5.test."if.e |
| 41e80 | 72 72 6f 72 20 75 6e 69 6f 6e 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 35 2f 35 20 74 65 73 74 20 | rror.union"....OK.5/5.test. |
| 41ea0 | 26 71 75 6f 74 3b 69 66 20 65 72 72 6f 72 20 75 6e 69 6f 6e 20 77 69 74 68 20 6f 70 74 69 6f 6e | "if.error.union.with.option |
| 41ec0 | 61 6c 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 41 6c 6c 20 35 20 74 65 73 74 73 20 70 61 73 73 65 | al"....OK.All.5.tests.passe |
| 41ee0 | 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 | d..</code></pre>........<p>See.a |
| 41f00 | 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 6f | lso:</p><ul>.<li><a.href="#Optio |
| 41f20 | 6e 61 6c 73 22 3e 4f 70 74 69 6f 6e 61 6c 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 | nals">Optionals</a></li>.<li><a. |
| 41f40 | 68 72 65 66 3d 22 23 45 72 72 6f 72 73 22 3e 45 72 72 6f 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c | href="#Errors">Errors</a></li>.< |
| 41f60 | 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 31 20 69 64 3d 22 64 65 66 65 72 | /ul>...............<h1.id="defer |
| 41f80 | 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 64 65 66 65 72 22 3e 64 65 66 65 72 3c 2f 61 3e | "><a.href="#toc-defer">defer</a> |
| 41fa0 | 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 64 65 66 65 72 22 3e c2 a7 | .<a.class="hdr".href="#defer">.. |
| 41fc0 | 3c 2f 61 3e 3c 2f 68 31 3e 0a 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 | </a></h1>........<p.class="file" |
| 41fe0 | 3e 64 65 66 65 72 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | >defer.zig</p><pre><code.class=" |
| 42000 | 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c | zig"><span.class="tok-kw">const< |
| 42020 | 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 |
| 42040 | 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 |
| 42060 | 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 |
| 42080 | 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< |
| 420a0 | 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 |
| 420c0 | 63 74 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f | ct;.<span.class="tok-kw">const</ |
| 420e0 | 73 70 61 6e 3e 20 70 72 69 6e 74 20 3d 20 73 74 64 2e 64 65 62 75 67 2e 70 72 69 6e 74 3b 0a 0a | span>.print.=.std.debug.print;.. |
| 42100 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 64 65 66 | <span.class="tok-comment">//.def |
| 42120 | 65 72 20 77 69 6c 6c 20 65 78 65 63 75 74 65 20 61 6e 20 65 78 70 72 65 73 73 69 6f 6e 20 61 74 | er.will.execute.an.expression.at |
| 42140 | 20 74 68 65 20 65 6e 64 20 6f 66 20 74 68 65 20 63 75 72 72 65 6e 74 20 73 63 6f 70 65 2e 3c 2f | .the.end.of.the.current.scope.</ |
| 42160 | 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 | span>.<span.class="tok-kw">fn</s |
| 42180 | 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 64 65 66 65 72 45 | pan>.<span.class="tok-fn">deferE |
| 421a0 | 78 61 6d 70 6c 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 | xample</span>().<span.class="tok |
| 421c0 | 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 | -type">usize</span>.{.....<span. |
| 421e0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 61 3a 20 3c 73 70 | class="tok-kw">var</span>.a:.<sp |
| 42200 | 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> |
| 42220 | 20 3d 20 3c 73 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 |
| 42240 | 70 61 6e 3e 3b 0a 0a 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | pan>;......{.........<span.class |
| 42260 | 3d 22 74 6f 6b 2d 6b 77 22 3e 64 65 66 65 72 3c 2f 73 70 61 6e 3e 20 61 20 3d 20 3c 73 70 61 6e | ="tok-kw">defer</span>.a.=.<span |
| 42280 | 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 20 | .class="tok-number">2</span>;... |
| 422a0 | 20 20 20 20 20 20 61 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | ......a.=.<span.class="tok-numbe |
| 422c0 | 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 7d 0a 20 20 20 20 65 78 70 65 63 74 28 61 20 | r">1</span>;.....}.....expect(a. |
| 422e0 | 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 | ==.<span.class="tok-number">2</s |
| 42300 | 70 61 6e 3e 29 3b 0a 0a 20 20 20 20 61 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | pan>);......a.=.<span.class="tok |
| 42320 | 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | -number">5</span>;.....<span.cla |
| 42340 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 61 3b 0a 7d 0a 0a | ss="tok-kw">return</span>.a;.}.. |
| 42360 | 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> |
| 42380 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 64 65 66 | .<span.class="tok-str">"def |
| 423a0 | 65 72 20 62 61 73 69 63 73 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 65 78 70 | er.basics"</span>.{.....exp |
| 423c0 | 65 63 74 28 64 65 66 65 72 45 78 61 6d 70 6c 65 28 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | ect(deferExample().==.<span.clas |
| 423e0 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 | s="tok-number">5</span>);.}..<sp |
| 42400 | 61 6e 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 6d 75 6c | an.class="tok-comment">//.If.mul |
| 42420 | 74 69 70 6c 65 20 64 65 66 65 72 20 73 74 61 74 65 6d 65 6e 74 73 20 61 72 65 20 73 70 65 63 69 | tiple.defer.statements.are.speci |
| 42440 | 66 69 65 64 2c 20 74 68 65 79 20 77 69 6c 6c 20 62 65 20 65 78 65 63 75 74 65 64 20 69 6e 3c 2f | fied,.they.will.be.executed.in</ |
| 42460 | 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"> |
| 42480 | 2f 2f 20 74 68 65 20 72 65 76 65 72 73 65 20 6f 72 64 65 72 20 74 68 65 79 20 77 65 72 65 20 72 | //.the.reverse.order.they.were.r |
| 424a0 | 75 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 22 3e | un.</span>.<span.class="tok-kw"> |
| 424c0 | 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 64 | fn</span>.<span.class="tok-fn">d |
| 424e0 | 65 66 65 72 55 6e 77 69 6e 64 45 78 61 6d 70 6c 65 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e | eferUnwindExample</span>().<span |
| 42500 | 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>.{. |
| 42520 | 20 20 20 20 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e | ....print(<span.class="tok-str"> |
| 42540 | 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 20 20 | "\n"</span>,..{});.... |
| 42560 | 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 64 65 66 65 72 3c 2f 73 70 | ..<span.class="tok-kw">defer</sp |
| 42580 | 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= |
| 425a0 | 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 3e 2c | "tok-str">"1."</span>, |
| 425c0 | 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 74 6f | ..{});.....}.....<span.class="to |
| 425e0 | 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 72 69 | k-kw">defer</span>.{.........pri |
| 42600 | 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 32 | nt(<span.class="tok-str">"2 |
| 42620 | 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 20 20 | ."</span>,..{});.....}..... |
| 42640 | 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>.( |
| 42660 | 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 |
| 42680 | 61 6e 3e 29 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | an>).{.........<span.class="tok- |
| 426a0 | 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 20 69 | comment">//.defers.are.not.run.i |
| 426c0 | 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 61 6e | f.they.are.never.executed.</span |
| 426e0 | 3e 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 64 | >.........<span.class="tok-kw">d |
| 42700 | 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 74 28 | efer</span>.{.............print( |
| 42720 | 3c 73 70 61 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 26 71 | <span.class="tok-str">"3.&q |
| 42740 | 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 20 20 | uot;</span>,..{});.........}.... |
| 42760 | 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 3c | .}.}..<span.class="tok-kw">test< |
| 42780 | 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 |
| 427a0 | 6f 74 3b 64 65 66 65 72 20 75 6e 77 69 6e 64 69 6e 67 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 | ot;defer.unwinding"</span>. |
| 427c0 | 7b 0a 20 20 20 20 64 65 66 65 72 55 6e 77 69 6e 64 45 78 61 6d 70 6c 65 28 29 3b 0a 7d 0a 0a 3c | {.....deferUnwindExample();.}..< |
| 427e0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 65 20 | span.class="tok-comment">//.The. |
| 42800 | 65 72 72 64 65 66 65 72 20 6b 65 79 77 6f 72 64 20 69 73 20 73 69 6d 69 6c 61 72 20 74 6f 20 64 | errdefer.keyword.is.similar.to.d |
| 42820 | 65 66 65 72 2c 20 62 75 74 20 77 69 6c 6c 20 6f 6e 6c 79 20 65 78 65 63 75 74 65 20 69 66 20 74 | efer,.but.will.only.execute.if.t |
| 42840 | 68 65 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 | he</span>.<span.class="tok-comme |
| 42860 | 6e 74 22 3e 2f 2f 20 73 63 6f 70 65 20 72 65 74 75 72 6e 73 20 77 69 74 68 20 61 6e 20 65 72 72 | nt">//.scope.returns.with.an.err |
| 42880 | 6f 72 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d | or.</span>.<span.class="tok-comm |
| 428a0 | 65 6e 74 22 3e 2f 2f 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 | ent">//</span>.<span.class="tok- |
| 428c0 | 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 69 73 20 69 73 20 65 73 70 65 63 69 61 6c 6c 79 20 75 | comment">//.This.is.especially.u |
| 428e0 | 73 65 66 75 6c 20 69 6e 20 61 6c 6c 6f 77 69 6e 67 20 61 20 66 75 6e 63 74 69 6f 6e 20 74 6f 20 | seful.in.allowing.a.function.to. |
| 42900 | 63 6c 65 61 6e 20 75 70 20 70 72 6f 70 65 72 6c 79 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 | clean.up.properly</span>.<span.c |
| 42920 | 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 6f 6e 20 65 72 72 6f 72 2c 20 | lass="tok-comment">//.on.error,. |
| 42940 | 61 6e 64 20 72 65 70 6c 61 63 65 73 20 67 6f 74 6f 20 65 72 72 6f 72 20 68 61 6e 64 6c 69 6e 67 | and.replaces.goto.error.handling |
| 42960 | 20 74 61 63 74 69 63 73 20 61 73 20 73 65 65 6e 20 69 6e 20 63 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 | .tactics.as.seen.in.c.</span>.<s |
| 42980 | 70 61 6e 20 63 6c 61 73 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 |
| 429a0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 64 65 66 65 72 45 72 72 6f 72 45 78 61 6d | an.class="tok-fn">deferErrorExam |
| 429c0 | 70 6c 65 3c 2f 73 70 61 6e 3e 28 69 73 5f 65 72 72 6f 72 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ple</span>(is_error:.<span.class |
| 429e0 | 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 21 3c 73 70 61 6e 20 | ="tok-type">bool</span>).!<span. |
| 42a00 | 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>.{.. |
| 42a20 | 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">& |
| 42a40 | 71 75 6f 74 3b 5c 6e 73 74 61 72 74 20 6f 66 20 66 75 6e 63 74 69 6f 6e 5c 6e 26 71 75 6f 74 3b | quot;\nstart.of.function\n" |
| 42a60 | 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 7d 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | </span>,..{});......<span.class= |
| 42a80 | 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 69 73 20 77 69 6c 6c 20 61 6c 77 61 79 | "tok-comment">//.This.will.alway |
| 42aa0 | 73 20 62 65 20 65 78 65 63 75 74 65 64 20 6f 6e 20 65 78 69 74 3c 2f 73 70 61 6e 3e 0a 20 20 20 | s.be.executed.on.exit</span>.... |
| 42ac0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 64 65 66 65 72 3c 2f 73 70 61 | .<span.class="tok-kw">defer</spa |
| 42ae0 | 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | n>.{.........print(<span.class=" |
| 42b00 | 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 65 6e 64 20 6f 66 20 66 75 6e 63 74 69 6f 6e 5c 6e | tok-str">"end.of.function\n |
| 42b20 | 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 0a 20 20 20 20 | "</span>,..{});.....}...... |
| 42b40 | 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 |
| 42b60 | 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 73 | pan>.{.........print(<span.class |
| 42b80 | 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 65 6e 63 6f 75 6e 74 65 72 65 64 20 61 6e 20 | ="tok-str">"encountered.an. |
| 42ba0 | 65 72 72 6f 72 21 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 7d 29 3b 0a 20 20 20 | error!\n"</span>,..{});.... |
| 42bc0 | 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< |
| 42be0 | 2f 73 70 61 6e 3e 20 28 69 73 5f 65 72 72 6f 72 29 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 | /span>.(is_error).{.........<spa |
| 42c00 | 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>.< |
| 42c20 | 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> |
| 42c40 | 2e 44 65 66 65 72 45 72 72 6f 72 3b 0a 20 20 20 20 7d 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 | .DeferError;.....}.}..<span.clas |
| 42c60 | 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 |
| 42c80 | 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 65 72 72 64 65 66 65 72 20 75 6e 77 69 | ss="tok-str">"errdefer.unwi |
| 42ca0 | 6e 64 69 6e 67 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 64 65 66 65 72 45 72 | nding"</span>.{.....deferEr |
| 42cc0 | 72 6f 72 45 78 61 6d 70 6c 65 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c | rorExample(<span.class="tok-null |
| 42ce0 | 22 3e 66 61 6c 73 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 | ">false</span>).<span.class="tok |
| 42d00 | 2d 6b 77 22 3e 63 61 74 63 68 3c 2f 73 70 61 6e 3e 20 7b 7d 3b 0a 20 20 20 20 64 65 66 65 72 45 | -kw">catch</span>.{};.....deferE |
| 42d20 | 72 72 6f 72 45 78 61 6d 70 6c 65 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c | rrorExample(<span.class="tok-nul |
| 42d40 | 6c 22 3e 74 72 75 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 | l">true</span>).<span.class="tok |
| 42d60 | 2d 6b 77 22 3e 63 61 74 63 68 3c 2f 73 70 61 6e 3e 20 7b 7d 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f | -kw">catch</span>.{};.}</code></ |
| 42d80 | 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a | pre><pre><code.class="shell">$.z |
| 42da0 | 69 67 20 74 65 73 74 20 64 65 66 65 72 2e 7a 69 67 0a 31 2f 33 20 74 65 73 74 20 26 71 75 6f 74 | ig.test.defer.zig.1/3.test." |
| 42dc0 | 3b 64 65 66 65 72 20 62 61 73 69 63 73 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 32 2f 33 20 74 65 | ;defer.basics"....OK.2/3.te |
| 42de0 | 73 74 20 26 71 75 6f 74 3b 64 65 66 65 72 20 75 6e 77 69 6e 64 69 6e 67 26 71 75 6f 74 3b 2e 2e | st."defer.unwinding".. |
| 42e00 | 2e 20 0a 32 20 31 20 4f 4b 0a 33 2f 33 20 74 65 73 74 20 26 71 75 6f 74 3b 65 72 72 64 65 66 65 | ...2.1.OK.3/3.test."errdefe |
| 42e20 | 72 20 75 6e 77 69 6e 64 69 6e 67 26 71 75 6f 74 3b 2e 2e 2e 20 0a 73 74 61 72 74 20 6f 66 20 66 | r.unwinding".....start.of.f |
| 42e40 | 75 6e 63 74 69 6f 6e 0a 65 6e 64 20 6f 66 20 66 75 6e 63 74 69 6f 6e 0a 0a 73 74 61 72 74 20 6f | unction.end.of.function..start.o |
| 42e60 | 66 20 66 75 6e 63 74 69 6f 6e 0a 65 6e 63 6f 75 6e 74 65 72 65 64 20 61 6e 20 65 72 72 6f 72 21 | f.function.encountered.an.error! |
| 42e80 | 0a 65 6e 64 20 6f 66 20 66 75 6e 63 74 69 6f 6e 0a 4f 4b 0a 41 6c 6c 20 33 20 74 65 73 74 73 20 | .end.of.function.OK.All.3.tests. |
| 42ea0 | 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e | passed..</code></pre>........<p> |
| 42ec0 | 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="# |
| 42ee0 | 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>... |
| 42f00 | 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 31 20 69 64 3d 22 75 6e 72 65 61 63 68 61 62 6c 65 22 | ............<h1.id="unreachable" |
| 42f20 | 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 75 6e 72 65 61 63 68 61 62 6c 65 22 3e 75 6e 72 65 | ><a.href="#toc-unreachable">unre |
| 42f40 | 61 63 68 61 62 6c 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d | achable</a>.<a.class="hdr".href= |
| 42f60 | 22 23 75 6e 72 65 61 63 68 61 62 6c 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 31 3e 0a 0a 20 20 20 20 | "#unreachable">..</a></h1>...... |
| 42f80 | 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 6e 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | ..<p>.......In.<code.class="zig" |
| 42fa0 | 3e 44 65 62 75 67 3c 2f 63 6f 64 65 3e 20 61 6e 64 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a | >Debug</code>.and.<code.class="z |
| 42fc0 | 69 67 22 3e 52 65 6c 65 61 73 65 53 61 66 65 3c 2f 63 6f 64 65 3e 20 6d 6f 64 65 2c 20 61 6e 64 | ig">ReleaseSafe</code>.mode,.and |
| 42fe0 | 20 77 68 65 6e 20 75 73 69 6e 67 20 3c 63 6f 64 65 3e 7a 69 67 20 74 65 73 74 3c 2f 63 6f 64 65 | .when.using.<code>zig.test</code |
| 43000 | 3e 2c 0a 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e | >,.......<code.class="zig"><span |
| 43020 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 | .class="tok-kw">unreachable</spa |
| 43040 | 6e 3e 3c 2f 63 6f 64 65 3e 20 65 6d 69 74 73 20 61 20 63 61 6c 6c 20 74 6f 20 3c 63 6f 64 65 20 | n></code>.emits.a.call.to.<code. |
| 43060 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 70 61 6e 69 63 3c 2f 63 6f 64 65 3e 20 77 69 74 68 20 74 68 | class="zig">panic</code>.with.th |
| 43080 | 65 20 6d 65 73 73 61 67 65 20 3c 63 6f 64 65 3e 72 65 61 63 68 65 64 20 75 6e 72 65 61 63 68 61 | e.message.<code>reached.unreacha |
| 430a0 | 62 6c 65 20 63 6f 64 65 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 | ble.code</code>........</p>..... |
| 430c0 | 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 6e 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | ..<p>.......In.<code.class="zig" |
| 430e0 | 3e 52 65 6c 65 61 73 65 46 61 73 74 3c 2f 63 6f 64 65 3e 20 6d 6f 64 65 2c 20 74 68 65 20 6f 70 | >ReleaseFast</code>.mode,.the.op |
| 43100 | 74 69 6d 69 7a 65 72 20 75 73 65 73 20 74 68 65 20 61 73 73 75 6d 70 74 69 6f 6e 20 74 68 61 74 | timizer.uses.the.assumption.that |
| 43120 | 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | .<code.class="zig"><span.class=" |
| 43140 | 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 |
| 43160 | 3e 20 63 6f 64 65 0a 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 | >.code.......will.never.be.hit.t |
| 43180 | 6f 20 70 65 72 66 6f 72 6d 20 6f 70 74 69 6d 69 7a 61 74 69 6f 6e 73 2e 20 48 6f 77 65 76 65 72 | o.perform.optimizations..However |
| 431a0 | 2c 20 3c 63 6f 64 65 3e 7a 69 67 20 74 65 73 74 3c 2f 63 6f 64 65 3e 20 65 76 65 6e 20 69 6e 20 | ,.<code>zig.test</code>.even.in. |
| 431c0 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 52 65 6c 65 61 73 65 46 61 73 74 3c 2f 63 | <code.class="zig">ReleaseFast</c |
| 431e0 | 6f 64 65 3e 20 6d 6f 64 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 74 69 6c | ode>.mode...................stil |
| 43200 | 6c 20 65 6d 69 74 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 | l.emits.<code.class="zig"><span. |
| 43220 | 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 |
| 43240 | 3e 3c 2f 63 6f 64 65 3e 20 61 73 20 63 61 6c 6c 73 20 74 6f 20 3c 63 6f 64 65 20 63 6c 61 73 73 | ></code>.as.calls.to.<code.class |
| 43260 | 3d 22 7a 69 67 22 3e 70 61 6e 69 63 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a | ="zig">panic</code>........</p>. |
| 43280 | 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 42 61 73 69 63 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 | ......<h2.id="Basics"><a.href="# |
| 432a0 | 74 6f 63 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 | toc-Basics">Basics</a>.<a.class= |
| 432c0 | 22 68 64 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 32 3e | "hdr".href="#Basics">..</a></h2> |
| 432e0 | 0a 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 | ........<p.class="file">test.zig |
| 43300 | 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e | </p><pre><code.class="zig"><span |
| 43320 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 75 6e 72 65 61 63 68 61 | .class="tok-comment">//.unreacha |
| 43340 | 62 6c 65 20 69 73 20 75 73 65 64 20 74 6f 20 61 73 73 65 72 74 20 74 68 61 74 20 63 6f 6e 74 72 | ble.is.used.to.assert.that.contr |
| 43360 | 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 |
| 43380 | 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 |
| 433a0 | 22 3e 2f 2f 20 70 61 72 74 69 63 75 6c 61 72 20 6c 6f 63 61 74 69 6f 6e 3a 3c 2f 73 70 61 6e 3e | ">//.particular.location:</span> |
| 433c0 | 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 |
| 433e0 | 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 62 61 | >.<span.class="tok-str">"ba |
| 43400 | 73 69 63 20 6d 61 74 68 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 | sic.math"</span>.{.....<spa |
| 43420 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 78 20 | n.class="tok-kw">const</span>.x. |
| 43440 | 3d 20 3c 73 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 |
| 43460 | 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f | an>;.....<span.class="tok-kw">co |
| 43480 | 6e 73 74 3c 2f 73 70 61 6e 3e 20 79 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | nst</span>.y.=.<span.class="tok- |
| 434a0 | 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | number">2</span>;.....<span.clas |
| 434c0 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 78 20 2b 20 79 20 21 3d 20 3c | s="tok-kw">if</span>.(x.+.y.!=.< |
| 434e0 | 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> |
| 43500 | 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" |
| 43520 | 3e 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 7d 0a 7d 3c 2f 63 6f | >unreachable</span>;.....}.}</co |
| 43540 | 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c | de></pre><pre><code.class="shell |
| 43560 | 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 31 2f 31 20 74 65 73 74 20 26 | ">$.zig.test.test.zig.1/1.test.& |
| 43580 | 71 75 6f 74 3b 62 61 73 69 63 20 6d 61 74 68 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 41 6c 6c 20 | quot;basic.math"....OK.All. |
| 435a0 | 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 | 1.tests.passed..</code></pre>... |
| 435c0 | 20 20 20 20 20 3c 70 3e 49 6e 20 66 61 63 74 2c 20 74 68 69 73 20 69 73 20 68 6f 77 20 3c 63 6f | .....<p>In.fact,.this.is.how.<co |
| 435e0 | 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 73 74 64 2e 64 65 62 75 67 2e 61 73 73 65 72 74 3c | de.class="zig">std.debug.assert< |
| 43600 | 2f 63 6f 64 65 3e 20 69 73 20 69 6d 70 6c 65 6d 65 6e 74 65 64 3a 3c 2f 70 3e 0a 20 20 20 20 20 | /code>.is.implemented:</p>...... |
| 43620 | 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 | .<p.class="file">test.zig</p><pr |
| 43640 | 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | e><code.class="zig"><span.class= |
| 43660 | 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 69 73 20 69 73 20 68 6f 77 20 73 74 64 | "tok-comment">//.This.is.how.std |
| 43680 | 2e 64 65 62 75 67 2e 61 73 73 65 72 74 20 69 73 20 69 6d 70 6c 65 6d 65 6e 74 65 64 3c 2f 73 70 | .debug.assert.is.implemented</sp |
| 436a0 | 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 |
| 436c0 | 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 61 73 73 65 72 74 3c 2f | n>.<span.class="tok-fn">assert</ |
| 436e0 | 73 70 61 6e 3e 28 6f 6b 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 | span>(ok:.<span.class="tok-type" |
| 43700 | 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | >bool</span>).<span.class="tok-t |
| 43720 | 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 |
| 43740 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 21 6f 6b 29 20 3c 73 70 61 | ss="tok-kw">if</span>.(!ok).<spa |
| 43760 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 | n.class="tok-kw">unreachable</sp |
| 43780 | 61 6e 3e 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f | an>;.<span.class="tok-comment">/ |
| 437a0 | 2f 20 61 73 73 65 72 74 69 6f 6e 20 66 61 69 6c 75 72 65 3c 2f 73 70 61 6e 3e 0a 7d 0a 0a 3c 73 | /.assertion.failure</span>.}..<s |
| 437c0 | 70 61 6e 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. |
| 437e0 | 74 65 73 74 20 77 69 6c 6c 20 66 61 69 6c 20 62 65 63 61 75 73 65 20 77 65 20 68 69 74 20 75 6e | test.will.fail.because.we.hit.un |
| 43800 | 72 65 61 63 68 61 62 6c 65 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | reachable.</span>.<span.class="t |
| 43820 | 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=" |
| 43840 | 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 74 68 69 73 20 77 69 6c 6c 20 66 61 69 6c 26 71 75 | tok-str">"this.will.fail&qu |
| 43860 | 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 61 73 73 65 72 74 28 3c 73 70 61 6e 20 63 6c | ot;</span>.{.....assert(<span.cl |
| 43880 | 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 3c | ass="tok-null">false</span>);.}< |
| 438a0 | 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 | /code></pre><pre><code.class="sh |
| 438c0 | 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 31 2f 31 20 74 65 73 | ell">$.zig.test.test.zig.1/1.tes |
| 438e0 | 74 20 26 71 75 6f 74 3b 74 68 69 73 20 77 69 6c 6c 20 66 61 69 6c 26 71 75 6f 74 3b 2e 2e 2e 20 | t."this.will.fail".... |
| 43900 | 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 |
| 43920 | 6c 61 73 73 3d 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 | lass="t37_1">/home/andy/Download |
| 43940 | 73 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 33 3a 31 34 3c 2f | s/zig/docgen_tmp/test.zig:3:14</ |
| 43960 | 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 30 36 64 | span>:.<span.class="t2_0">0x206d |
| 43980 | 61 62 20 69 6e 20 61 73 73 65 72 74 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 69 | ab.in.assert.(test)</span>.....i |
| 439a0 | 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 72 74 69 6f | f.(!ok).unreachable;.//.assertio |
| 439c0 | 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 20 63 6c 61 | n.failure..............<span.cla |
| 439e0 | 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ss="t32_1">^</span>.<span.class= |
| 43a00 | 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 | "t37_1">/home/andy/Downloads/zig |
| 43a20 | 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 38 3a 31 31 3c 2f 73 70 61 6e 3e | /docgen_tmp/test.zig:8:11</span> |
| 43a40 | 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 30 35 39 35 65 20 69 6e | :.<span.class="t2_0">0x20595e.in |
| 43a60 | 20 74 65 73 74 20 26 71 75 6f 74 3b 74 68 69 73 20 77 69 6c 6c 20 66 61 69 6c 26 71 75 6f 74 3b | .test."this.will.fail" |
| 43a80 | 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 61 73 73 65 72 74 28 66 61 6c 73 65 29 | .(test)</span>.....assert(false) |
| 43aa0 | 3b 0a 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e | ;...........<span.class="t32_1"> |
| 43ac0 | 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 37 5f 31 22 3e 2f 68 6f | ^</span>.<span.class="t37_1">/ho |
| 43ae0 | 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 70 | me/andy/Downloads/zig/lib/std/sp |
| 43b00 | 65 63 69 61 6c 2f 74 65 73 74 5f 72 75 6e 6e 65 72 2e 7a 69 67 3a 36 31 3a 32 38 3c 2f 73 70 61 | ecial/test_runner.zig:61:28</spa |
| 43b20 | 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 64 61 63 31 20 | n>:.<span.class="t2_0">0x22dac1. |
| 43b40 | 69 6e 20 73 74 64 2e 73 70 65 63 69 61 6c 2e 6d 61 69 6e 20 28 74 65 73 74 29 3c 2f 73 70 61 6e | in.std.special.main.(test)</span |
| 43b60 | 3e 0a 20 20 20 20 20 20 20 20 7d 20 65 6c 73 65 20 74 65 73 74 5f 66 6e 2e 66 75 6e 63 28 29 3b | >.........}.else.test_fn.func(); |
| 43b80 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 | ............................<spa |
| 43ba0 | 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 | n.class="t32_1">^</span>.<span.c |
| 43bc0 | 6c 61 73 73 3d 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 | lass="t37_1">/home/andy/Download |
| 43be0 | 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 33 33 34 3a 33 37 3c 2f | s/zig/lib/std/start.zig:334:37</ |
| 43c00 | 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 30 37 32 | span>:.<span.class="t2_0">0x2072 |
| 43c20 | 61 64 20 69 6e 20 73 74 64 2e 73 74 61 72 74 2e 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 | ad.in.std.start.posixCallMainAnd |
| 43c40 | 45 78 69 74 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 63 | Exit.(test)</span>.............c |
| 43c60 | 6f 6e 73 74 20 72 65 73 75 6c 74 20 3d 20 72 6f 6f 74 2e 6d 61 69 6e 28 29 20 63 61 74 63 68 20 | onst.result.=.root.main().catch. |
| 43c80 | 7c 65 72 72 7c 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | |err|.{......................... |
| 43ca0 | 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e | ............<span.class="t32_1"> |
| 43cc0 | 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 37 5f 31 22 3e 2f 68 6f | ^</span>.<span.class="t37_1">/ho |
| 43ce0 | 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 | me/andy/Downloads/zig/lib/std/st |
| 43d00 | 61 72 74 2e 7a 69 67 3a 31 36 32 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 | art.zig:162:5</span>:.<span.clas |
| 43d20 | 73 3d 22 74 32 5f 30 22 3e 30 78 32 30 36 66 65 32 20 69 6e 20 73 74 64 2e 73 74 61 72 74 2e 5f | s="t2_0">0x206fe2.in.std.start._ |
| 43d40 | 73 74 61 72 74 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 40 63 61 6c 6c 28 2e 7b | start.(test)</span>.....@call(.{ |
| 43d60 | 20 2e 6d 6f 64 69 66 69 65 72 20 3d 20 2e 6e 65 76 65 72 5f 69 6e 6c 69 6e 65 20 7d 2c 20 70 6f | ..modifier.=..never_inline.},.po |
| 43d80 | 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 2c 20 2e 7b 7d 29 3b 0a 20 20 20 20 3c 73 | sixCallMainAndExit,..{});.....<s |
| 43da0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 65 72 72 6f 72 | pan.class="t32_1">^</span>.error |
| 43dc0 | 3a 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 74 65 73 74 20 63 6f 6d 6d 61 6e 64 20 63 72 61 | :.the.following.test.command.cra |
| 43de0 | 73 68 65 64 3a 0a 64 6f 63 67 65 6e 5f 74 6d 70 2f 7a 69 67 2d 63 61 63 68 65 2f 6f 2f 38 66 65 | shed:.docgen_tmp/zig-cache/o/8fe |
| 43e00 | 38 30 31 32 38 61 39 34 63 31 36 31 33 65 34 38 33 31 37 32 39 35 66 63 37 36 63 66 63 2f 74 65 | 80128a94c1613e48317295fc76cfc/te |
| 43e20 | 73 74 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c | st.</code></pre>...............< |
| 43e40 | 68 32 20 69 64 3d 22 41 74 2d 43 6f 6d 70 69 6c 65 2d 54 69 6d 65 22 3e 3c 61 20 68 72 65 66 3d | h2.id="At-Compile-Time"><a.href= |
| 43e60 | 22 23 74 6f 63 2d 41 74 2d 43 6f 6d 70 69 6c 65 2d 54 69 6d 65 22 3e 41 74 20 43 6f 6d 70 69 6c | "#toc-At-Compile-Time">At.Compil |
| 43e80 | 65 2d 54 69 6d 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 | e-Time</a>.<a.class="hdr".href=" |
| 43ea0 | 23 41 74 2d 43 6f 6d 70 69 6c 65 2d 54 69 6d 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 | #At-Compile-Time">..</a></h2>... |
| 43ec0 | 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 | .....<p.class="file">test.zig</p |
| 43ee0 | 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c | ><pre><code.class="zig"><span.cl |
| 43f00 | 61 73 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 |
| 43f20 | 20 3d 20 3c 73 70 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 |
| 43f40 | 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 |
| 43f60 | 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 64 65 62 75 67 2e | ">"std"</span>).debug. |
| 43f80 | 61 73 73 65 72 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 | assert;..<span.class="tok-kw">te |
| 43fa0 | 73 74 3c 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"> |
| 43fc0 | 26 71 75 6f 74 3b 74 79 70 65 20 6f 66 20 75 6e 72 65 61 63 68 61 62 6c 65 26 71 75 6f 74 3b 3c | "type.of.unreachable"< |
| 43fe0 | 2f 73 70 61 6e 3e 20 7b 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 |
| 44000 | 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 | ">comptime</span>.{.........<spa |
| 44020 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 65 20 74 79 70 | n.class="tok-comment">//.The.typ |
| 44040 | 65 20 6f 66 20 75 6e 72 65 61 63 68 61 62 6c 65 20 69 73 20 6e 6f 72 65 74 75 72 6e 2e 3c 2f 73 | e.of.unreachable.is.noreturn.</s |
| 44060 | 70 61 6e 3e 0a 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 | pan>..........<span.class="tok-c |
| 44080 | 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 48 6f 77 65 76 65 72 20 74 68 69 73 20 61 73 73 65 72 74 69 6f | omment">//.However.this.assertio |
| 440a0 | 6e 20 77 69 6c 6c 20 73 74 69 6c 6c 20 66 61 69 6c 20 62 65 63 61 75 73 65 3c 2f 73 70 61 6e 3e | n.will.still.fail.because</span> |
| 440c0 | 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 |
| 440e0 | 74 22 3e 2f 2f 20 65 76 61 6c 75 61 74 69 6e 67 20 75 6e 72 65 61 63 68 61 62 6c 65 20 61 74 20 | t">//.evaluating.unreachable.at. |
| 44100 | 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 69 73 20 61 20 63 6f 6d 70 69 6c 65 20 65 72 72 6f 72 2e | compile-time.is.a.compile.error. |
| 44120 | 3c 2f 73 70 61 6e 3e 0a 0a 20 20 20 20 20 20 20 20 61 73 73 65 72 74 28 3c 73 70 61 6e 20 63 6c | </span>..........assert(<span.cl |
| 44140 | 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> |
| 44160 | 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 72 65 61 63 68 61 62 6c | (<span.class="tok-kw">unreachabl |
| 44180 | 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 6b 2d 74 79 | e</span>).==.<span.class="tok-ty |
| 441a0 | 70 65 22 3e 6e 6f 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 7d 0a 7d 3c 2f 63 | pe">noreturn</span>);.....}.}</c |
| 441c0 | 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c | ode></pre><pre><code.class="shel |
| 441e0 | 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 3c 73 70 61 6e 20 63 6c 61 | l">$.zig.test.test.zig.<span.cla |
| 44200 | 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a | ss="t0_1">./docgen_tmp/test.zig: |
| 44220 | 31 30 3a 31 36 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 31 5f 31 | 10:16:.</span><span.class="t31_1 |
| 44240 | 22 3e 65 72 72 6f 72 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f | ">error:.</span><span.class="t0_ |
| 44260 | 31 22 3e 75 6e 72 65 61 63 68 61 62 6c 65 20 63 6f 64 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 | 1">unreachable.code</span>...... |
| 44280 | 20 20 20 61 73 73 65 72 74 28 40 54 79 70 65 4f 66 28 75 6e 72 65 61 63 68 61 62 6c 65 29 20 3d | ...assert(@TypeOf(unreachable).= |
| 442a0 | 3d 20 6e 6f 72 65 74 75 72 6e 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 | =.noreturn);................<spa |
| 442c0 | 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 | n.class="t32_1">^</span>.<span.c |
| 442e0 | 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 | lass="t0_1">./docgen_tmp/test.zi |
| 44300 | 67 3a 33 3a 32 38 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 36 5f | g:3:28:.</span><span.class="t36_ |
| 44320 | 31 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f | 1">note:.</span><span.class="t0_ |
| 44340 | 31 22 3e 72 65 66 65 72 65 6e 63 65 64 20 68 65 72 65 3c 2f 73 70 61 6e 3e 0a 74 65 73 74 20 26 | 1">referenced.here</span>.test.& |
| 44360 | 71 75 6f 74 3b 74 79 70 65 20 6f 66 20 75 6e 72 65 61 63 68 61 62 6c 65 26 71 75 6f 74 3b 20 7b | quot;type.of.unreachable".{ |
| 44380 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 | ............................<spa |
| 443a0 | 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 2f 63 6f 64 65 3e | n.class="t32_1">^</span>.</code> |
| 443c0 | 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 | </pre>........<p>See.also:</p><u |
| 443e0 | 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 5a 69 67 2d 54 65 73 74 22 3e 5a 69 67 20 54 | l>.<li><a.href="#Zig-Test">Zig.T |
| 44400 | 65 73 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 42 75 69 6c 64 | est</a></li>.<li><a.href="#Build |
| 44420 | 2d 4d 6f 64 65 22 3e 42 75 69 6c 64 20 4d 6f 64 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c | -Mode">Build.Mode</a></li>.<li>< |
| 44440 | 61 20 68 72 65 66 3d 22 23 63 6f 6d 70 74 69 6d 65 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 61 3e 3c | a.href="#comptime">comptime</a>< |
| 44460 | 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>...................... |
| 44480 | 3c 68 31 20 69 64 3d 22 6e 6f 72 65 74 75 72 6e 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d | <h1.id="noreturn"><a.href="#toc- |
| 444a0 | 6e 6f 72 65 74 75 72 6e 22 3e 6e 6f 72 65 74 75 72 6e 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d | noreturn">noreturn</a>.<a.class= |
| 444c0 | 22 68 64 72 22 20 68 72 65 66 3d 22 23 6e 6f 72 65 74 75 72 6e 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 | "hdr".href="#noreturn">..</a></h |
| 444e0 | 31 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d | 1>........<p>.......<code.class= |
| 44500 | 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 6e 6f 72 | "zig"><span.class="tok-type">nor |
| 44520 | 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 69 73 20 74 68 65 20 74 79 70 65 20 | eturn</span></code>.is.the.type. |
| 44540 | 6f 66 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 | of:.......</p>.......<ul>....... |
| 44560 | 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 | ....<li><code.class="zig"><span. |
| 44580 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 62 72 65 61 6b 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 | class="tok-kw">break</span></cod |
| 445a0 | 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 | e></li>...........<li><code.clas |
| 445c0 | 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e | s="zig"><span.class="tok-kw">con |
| 445e0 | 74 69 6e 75 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 | tinue</span></code></li>........ |
| 44600 | 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 | ...<li><code.class="zig"><span.c |
| 44620 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 | lass="tok-kw">return</span></cod |
| 44640 | 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 | e></li>...........<li><code.clas |
| 44660 | 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 72 | s="zig"><span.class="tok-kw">unr |
| 44680 | 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 | eachable</span></code></li>..... |
| 446a0 | 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 | ......<li><code.class="zig"><spa |
| 446c0 | 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>.(< |
| 446e0 | 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 |
| 44700 | 3e 29 20 7b 7d 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 | >).{}</code></li>.......</ul>... |
| 44720 | 20 20 20 20 3c 70 3e 57 68 65 6e 20 72 65 73 6f 6c 76 69 6e 67 20 74 79 70 65 73 20 74 6f 67 65 | ....<p>When.resolving.types.toge |
| 44740 | 74 68 65 72 2c 20 73 75 63 68 20 61 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e | ther,.such.as.<code.class="zig"> |
| 44760 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 3c 2f | <span.class="tok-kw">if</span></ |
| 44780 | 63 6f 64 65 3e 20 63 6c 61 75 73 65 73 20 6f 72 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | code>.clauses.or.<code.class="zi |
| 447a0 | 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 77 69 74 63 68 3c 2f | g"><span.class="tok-kw">switch</ |
| 447c0 | 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 70 72 6f 6e 67 73 2c 0a 20 20 20 20 20 20 20 20 20 20 20 | span></code>.prongs,............ |
| 447e0 | 20 20 20 74 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 | ...the.<code.class="zig"><span.c |
| 44800 | 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 6e 6f 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 3c | lass="tok-type">noreturn</span>< |
| 44820 | 2f 63 6f 64 65 3e 20 74 79 70 65 20 69 73 20 63 6f 6d 70 61 74 69 62 6c 65 20 77 69 74 68 20 65 | /code>.type.is.compatible.with.e |
| 44840 | 76 65 72 79 20 6f 74 68 65 72 20 74 79 70 65 2e 20 43 6f 6e 73 69 64 65 72 3a 0a 20 20 20 20 20 | very.other.type..Consider:...... |
| 44860 | 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 | .</p>.......<p.class="file">test |
| 44880 | 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c | .zig</p><pre><code.class="zig">< |
| 448a0 | 73 70 61 6e 20 63 6c 61 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 |
| 448c0 | 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 63 6f | pan.class="tok-fn">foo</span>(co |
| 448e0 | 6e 64 69 74 69 6f 6e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | ndition:.<span.class="tok-type"> |
| 44900 | 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 6f 6b | bool</span>,.b:.<span.class="tok |
| 44920 | 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=" |
| 44940 | 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 |
| 44960 | 6e 20 63 6c 61 73 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. |
| 44980 | 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e | =.<span.class="tok-kw">if</span> |
| 449a0 | 20 28 63 6f 6e 64 69 74 69 6f 6e 29 20 62 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | .(condition).b.<span.class="tok- |
| 449c0 | 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | kw">else</span>.<span.class="tok |
| 449e0 | 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | -kw">return</span>;.....<span.cl |
| 44a00 | 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 70 61 6e 69 63 3c 2f 73 70 61 6e 3e 28 | ass="tok-builtin">@panic</span>( |
| 44a20 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 64 6f 20 73 | <span.class="tok-str">"do.s |
| 44a40 | 6f 6d 65 74 68 69 6e 67 20 77 69 74 68 20 61 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 7d | omething.with.a"</span>);.} |
| 44a60 | 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 |
| 44a80 | 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 6e 6f | >.<span.class="tok-str">"no |
| 44aa0 | 72 65 74 75 72 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 66 6f 6f 28 3c 73 | return"</span>.{.....foo(<s |
| 44ac0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e | pan.class="tok-null">false</span |
| 44ae0 | 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 | >,.<span.class="tok-number">1</s |
| 44b00 | 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 | pan>);.}</code></pre><pre><code. |
| 44b20 | 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 | class="shell">$.zig.test.test.zi |
| 44b40 | 67 0a 31 2f 31 20 74 65 73 74 20 26 71 75 6f 74 3b 6e 6f 72 65 74 75 72 6e 26 71 75 6f 74 3b 2e | g.1/1.test."noreturn". |
| 44b60 | 2e 2e 20 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 | ...OK.All.1.tests.passed..</code |
| 44b80 | 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 6e 6f 74 68 65 72 20 75 73 65 20 63 61 | ></pre>........<p>Another.use.ca |
| 44ba0 | 73 65 20 66 6f 72 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 | se.for.<code.class="zig"><span.c |
| 44bc0 | 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 6e 6f 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 3c | lass="tok-type">noreturn</span>< |
| 44be0 | 2f 63 6f 64 65 3e 20 69 73 20 74 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e | /code>.is.the.<code.class="zig"> |
| 44c00 | 65 78 69 74 3c 2f 63 6f 64 65 3e 20 66 75 6e 63 74 69 6f 6e 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 | exit</code>.function:</p>....... |
| 44c20 | 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 | <p.class="file">test.zig</p><pre |
| 44c40 | 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ><code.class="zig"><span.class=" |
| 44c60 | 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=" |
| 44c80 | 74 6f 6b 2d 6b 77 22 3e 65 78 74 65 72 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 | tok-kw">extern</span>.<span.clas |
| 44ca0 | 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 6b 65 72 6e 65 6c 33 32 26 71 75 6f 74 3b | s="tok-str">"kernel32" |
| 44cc0 | 3c 2f 73 70 61 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< |
| 44ce0 | 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 45 78 69 74 | /span>.<span.class="tok-fn">Exit |
| 44d00 | 50 72 6f 63 65 73 73 3c 2f 73 70 61 6e 3e 28 65 78 69 74 5f 63 6f 64 65 3a 20 3c 73 70 61 6e 20 | Process</span>(exit_code:.<span. |
| 44d20 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 63 5f 75 69 6e 74 3c 2f 73 70 61 6e 3e 29 20 | class="tok-type">c_uint</span>). |
| 44d40 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 61 6c 6c 63 6f 6e 76 3c 2f 73 | <span.class="tok-kw">callconv</s |
| 44d60 | 70 61 6e 3e 28 2e 53 74 64 63 61 6c 6c 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | pan>(.Stdcall).<span.class="tok- |
| 44d80 | 74 79 70 65 22 3e 6e 6f 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 3b 0a 0a 3c 73 70 61 6e 20 63 6c | type">noreturn</span>;..<span.cl |
| 44da0 | 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 |
| 44dc0 | 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 66 6f 6f 26 71 75 6f 74 3b 3c 2f | lass="tok-str">"foo"</ |
| 44de0 | 73 70 61 6e 3e 20 7b 0a 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" |
| 44e00 | 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 76 61 6c 75 65 20 3d 20 62 61 72 28 29 20 3c 73 70 61 | >const</span>.value.=.bar().<spa |
| 44e20 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 61 74 63 68 3c 2f 73 70 61 6e 3e 20 45 78 | n.class="tok-kw">catch</span>.Ex |
| 44e40 | 69 74 50 72 6f 63 65 73 73 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | itProcess(<span.class="tok-numbe |
| 44e60 | 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 65 78 70 65 63 74 28 76 61 6c 75 65 20 3d | r">1</span>);.....expect(value.= |
| 44e80 | 3d 20 3c 73 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< |
| 44ea0 | 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" |
| 44ec0 | 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"> |
| 44ee0 | 62 61 72 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | bar</span>().<span.class="tok-ty |
| 44f00 | 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= |
| 44f20 | 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 |
| 44f40 | 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>.< |
| 44f60 | 73 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 |
| 44f80 | 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 63 6f 6e | an>;.}..<span.class="tok-kw">con |
| 44fa0 | 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=" |
| 44fc0 | 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 |
| 44fe0 | 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" |
| 45000 | 3b 3c 2f 73 70 61 6e 3e 29 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 3c 2f 63 6f 64 65 3e | ;</span>).testing.expect;</code> |
| 45020 | 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 | </pre><pre><code.class="shell">$ |
| 45040 | 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 20 2d 74 61 72 67 65 74 20 78 38 36 5f 36 | .zig.test.test.zig.-target.x86_6 |
| 45060 | 34 2d 77 69 6e 64 6f 77 73 0a 77 61 72 6e 69 6e 67 3a 20 63 72 65 61 74 65 64 20 64 6f 63 67 65 | 4-windows.warning:.created.docge |
| 45080 | 6e 5f 74 6d 70 2f 7a 69 67 2d 63 61 63 68 65 2f 6f 2f 65 36 63 64 37 62 61 62 36 37 62 33 64 34 | n_tmp/zig-cache/o/e6cd7bab67b3d4 |
| 450a0 | 34 35 32 33 38 65 66 65 30 31 33 39 33 34 64 38 61 64 2f 74 65 73 74 2e 65 78 65 20 62 75 74 20 | 45238efe013934d8ad/test.exe.but. |
| 450c0 | 73 6b 69 70 70 69 6e 67 20 65 78 65 63 75 74 69 6f 6e 20 62 65 63 61 75 73 65 20 69 74 20 69 73 | skipping.execution.because.it.is |
| 450e0 | 20 6e 6f 6e 2d 6e 61 74 69 76 65 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 | .non-native.</code></pre>....... |
| 45100 | 20 0a 20 20 20 20 20 20 3c 68 31 20 69 64 3d 22 46 75 6e 63 74 69 6f 6e 73 22 3e 3c 61 20 68 72 | ........<h1.id="Functions"><a.hr |
| 45120 | 65 66 3d 22 23 74 6f 63 2d 46 75 6e 63 74 69 6f 6e 73 22 3e 46 75 6e 63 74 69 6f 6e 73 3c 2f 61 | ef="#toc-Functions">Functions</a |
| 45140 | 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 46 75 6e 63 74 69 6f 6e | >.<a.class="hdr".href="#Function |
| 45160 | 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 31 3e 0a 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 | s">..</a></h1>........<p.class=" |
| 45180 | 66 69 6c 65 22 3e 66 75 6e 63 74 69 6f 6e 73 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 | file">functions.zig</p><pre><cod |
| 451a0 | 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | e.class="zig"><span.class="tok-k |
| 451c0 | 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 |
| 451e0 | 6c 61 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 |
| 45200 | 3e 28 3c 73 70 61 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 |
| 45220 | 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;. |
| 45240 | 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 46 75 | .<span.class="tok-comment">//.Fu |
| 45260 | 6e 63 74 69 6f 6e 73 20 61 72 65 20 64 65 63 6c 61 72 65 64 20 6c 69 6b 65 20 74 68 69 73 3c 2f | nctions.are.declared.like.this</ |
| 45280 | 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 | span>.<span.class="tok-kw">fn</s |
| 452a0 | 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 61 64 64 3c 2f 73 | pan>.<span.class="tok-fn">add</s |
| 452c0 | 70 61 6e 3e 28 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 | pan>(a:.<span.class="tok-type">i |
| 452e0 | 38 3c 2f 73 70 61 6e 3e 2c 20 62 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | 8</span>,.b:.<span.class="tok-ty |
| 45300 | 70 65 22 3e 69 38 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | pe">i8</span>).<span.class="tok- |
| 45320 | 74 79 70 65 22 3e 69 38 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | type">i8</span>.{.....<span.clas |
| 45340 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 61 20 3d 3d 20 3c 73 70 61 6e | s="tok-kw">if</span>.(a.==.<span |
| 45360 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 29 20 7b 0a | .class="tok-number">0</span>).{. |
| 45380 | 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 | ........<span.class="tok-kw">ret |
| 453a0 | 75 72 6e 3c 2f 73 70 61 6e 3e 20 62 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 | urn</span>.b;.....}......<span.c |
| 453c0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 61 20 2b 20 | lass="tok-kw">return</span>.a.+. |
| 453e0 | 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"> |
| 45400 | 2f 2f 20 54 68 65 20 65 78 70 6f 72 74 20 73 70 65 63 69 66 69 65 72 20 6d 61 6b 65 73 20 61 20 | //.The.export.specifier.makes.a. |
| 45420 | 66 75 6e 63 74 69 6f 6e 20 65 78 74 65 72 6e 61 6c 6c 79 20 76 69 73 69 62 6c 65 20 69 6e 20 74 | function.externally.visible.in.t |
| 45440 | 68 65 20 67 65 6e 65 72 61 74 65 64 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | he.generated</span>.<span.class= |
| 45460 | 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 6f 62 6a 65 63 74 20 66 69 6c 65 2c 20 61 6e | "tok-comment">//.object.file,.an |
| 45480 | 64 20 6d 61 6b 65 73 20 69 74 20 75 73 65 20 74 68 65 20 43 20 41 42 49 2e 3c 2f 73 70 61 6e 3e | d.makes.it.use.the.C.ABI.</span> |
| 454a0 | 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 78 70 6f 72 74 3c 2f 73 70 | .<span.class="tok-kw">export</sp |
| 454c0 | 61 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 |
| 454e0 | 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 73 75 62 3c 2f 73 70 61 | n>.<span.class="tok-fn">sub</spa |
| 45500 | 6e 3e 28 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 38 3c | n>(a:.<span.class="tok-type">i8< |
| 45520 | 2f 73 70 61 6e 3e 2c 20 62 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | /span>,.b:.<span.class="tok-type |
| 45540 | 22 3e 69 38 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | ">i8</span>).<span.class="tok-ty |
| 45560 | 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 22 74 6f 6b | pe">i8</span>.{.<span.class="tok |
| 45580 | 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 61 20 2d 20 62 3b 20 7d 0a 0a 3c 73 70 | -kw">return</span>.a.-.b;.}..<sp |
| 455a0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 65 20 65 78 | an.class="tok-comment">//.The.ex |
| 455c0 | 74 65 72 6e 20 73 70 65 63 69 66 69 65 72 20 69 73 20 75 73 65 64 20 74 6f 20 64 65 63 6c 61 72 | tern.specifier.is.used.to.declar |
| 455e0 | 65 20 61 20 66 75 6e 63 74 69 6f 6e 20 74 68 61 74 20 77 69 6c 6c 20 62 65 20 72 65 73 6f 6c 76 | e.a.function.that.will.be.resolv |
| 45600 | 65 64 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 | ed</span>.<span.class="tok-comme |
| 45620 | 6e 74 22 3e 2f 2f 20 61 74 20 6c 69 6e 6b 20 74 69 6d 65 2c 20 77 68 65 6e 20 6c 69 6e 6b 69 6e | nt">//.at.link.time,.when.linkin |
| 45640 | 67 20 73 74 61 74 69 63 61 6c 6c 79 2c 20 6f 72 20 61 74 20 72 75 6e 74 69 6d 65 2c 20 77 68 65 | g.statically,.or.at.runtime,.whe |
| 45660 | 6e 20 6c 69 6e 6b 69 6e 67 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | n.linking</span>.<span.class="to |
| 45680 | 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 64 79 6e 61 6d 69 63 61 6c 6c 79 2e 3c 2f 73 70 61 6e | k-comment">//.dynamically.</span |
| 456a0 | 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 54 | >.<span.class="tok-comment">//.T |
| 456c0 | 68 65 20 63 61 6c 6c 63 6f 6e 76 20 73 70 65 63 69 66 69 65 72 20 63 68 61 6e 67 65 73 20 74 68 | he.callconv.specifier.changes.th |
| 456e0 | 65 20 63 61 6c 6c 69 6e 67 20 63 6f 6e 76 65 6e 74 69 6f 6e 20 6f 66 20 74 68 65 20 66 75 6e 63 | e.calling.convention.of.the.func |
| 45700 | 74 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 6b 2d 6b 77 | tion.</span>.<span.class="tok-kw |
| 45720 | 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 6f 6b | ">extern</span>.<span.class="tok |
| 45740 | 2d 73 74 72 22 3e 26 71 75 6f 74 3b 6b 65 72 6e 65 6c 33 32 26 71 75 6f 74 3b 3c 2f 73 70 61 6e | -str">"kernel32"</span |
| 45760 | 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> |
| 45780 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 45 78 69 74 50 72 6f 63 65 73 | .<span.class="tok-fn">ExitProces |
| 457a0 | 73 3c 2f 73 70 61 6e 3e 28 65 78 69 74 5f 63 6f 64 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | s</span>(exit_code:.<span.class= |
| 457c0 | 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 | "tok-type">u32</span>).<span.cla |
| 457e0 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 61 6c 6c 63 6f 6e 76 3c 2f 73 70 61 6e 3e 28 2e 53 74 64 | ss="tok-kw">callconv</span>(.Std |
| 45800 | 63 61 6c 6c 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 | call).<span.class="tok-type">nor |
| 45820 | 65 74 75 72 6e 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 | eturn</span>;.<span.class="tok-k |
| 45840 | 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 6f | w">extern</span>.<span.class="to |
| 45860 | 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 61 | k-str">"c"</span>.<spa |
| 45880 | 6e 20 63 6c 61 73 73 3d 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 |
| 458a0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 61 74 61 6e 32 3c 2f 73 70 61 6e 3e 28 61 3a 20 | .class="tok-fn">atan2</span>(a:. |
| 458c0 | 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 |
| 458e0 | 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 66 36 34 | >,.b:.<span.class="tok-type">f64 |
| 45900 | 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"> |
| 45920 | 66 36 34 3c 2f 73 70 61 6e 3e 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f | f64</span>;..<span.class="tok-co |
| 45940 | 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 65 20 40 73 65 74 43 6f 6c 64 20 62 75 69 6c 74 69 6e 20 74 | mment">//.The.@setCold.builtin.t |
| 45960 | 65 6c 6c 73 20 74 68 65 20 6f 70 74 69 6d 69 7a 65 72 20 74 68 61 74 20 61 20 66 75 6e 63 74 69 | ells.the.optimizer.that.a.functi |
| 45980 | 6f 6e 20 69 73 20 72 61 72 65 6c 79 20 63 61 6c 6c 65 64 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 | on.is.rarely.called.</span>.<spa |
| 459a0 | 6e 20 63 6c 61 73 73 3d 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 |
| 459c0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 61 62 6f 72 74 3c 2f 73 70 61 6e 3e 28 29 20 3c | .class="tok-fn">abort</span>().< |
| 459e0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 6e 6f 72 65 74 75 72 6e 3c 2f | span.class="tok-type">noreturn</ |
| 45a00 | 73 70 61 6e 3e 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 | span>.{.....<span.class="tok-bui |
| 45a20 | 6c 74 69 6e 22 3e 40 73 65 74 43 6f 6c 64 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 | ltin">@setCold</span>(<span.clas |
| 45a40 | 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 3c | s="tok-null">true</span>);.....< |
| 45a60 | 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> |
| 45a80 | 20 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 | .(<span.class="tok-null">true</s |
| 45aa0 | 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 6d | pan>).{}.}..<span.class="tok-com |
| 45ac0 | 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 65 | ment">//.The.naked.calling.conve |
| 45ae0 | 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 20 | ntion.makes.a.function.not.have. |
| 45b00 | 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 75 | any.function.prologue.or.epilogu |
| 45b20 | 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 65 | e.</span>.<span.class="tok-comme |
| 45b40 | 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 69 | nt">//.This.can.be.useful.when.i |
| 45b60 | 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 3e | ntegrating.with.assembly.</span> |
| 45b80 | 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>. |
| 45ba0 | 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 61 | <span.class="tok-fn">_start</spa |
| 45bc0 | 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 6f | n>().<span.class="tok-kw">callco |
| 45be0 | 6e 76 3c 2f 73 70 61 6e 3e 28 2e 4e 61 6b 65 64 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | nv</span>(.Naked).<span.class="t |
| 45c00 | 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 61 | ok-type">noreturn</span>.{.....a |
| 45c20 | 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 6d | bort();.}..<span.class="tok-comm |
| 45c40 | 65 6e 74 22 3e 2f 2f 20 54 68 65 20 69 6e 6c 69 6e 65 20 73 70 65 63 69 66 69 65 72 20 66 6f 72 | ent">//.The.inline.specifier.for |
| 45c60 | 63 65 73 20 61 20 66 75 6e 63 74 69 6f 6e 20 74 6f 20 62 65 20 69 6e 6c 69 6e 65 64 20 61 74 20 | ces.a.function.to.be.inlined.at. |
| 45c80 | 61 6c 6c 20 63 61 6c 6c 20 73 69 74 65 73 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 | all.call.sites.</span>.<span.cla |
| 45ca0 | 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 49 66 20 74 68 65 20 66 75 6e 63 74 | ss="tok-comment">//.If.the.funct |
| 45cc0 | 69 6f 6e 20 63 61 6e 6e 6f 74 20 62 65 20 69 6e 6c 69 6e 65 64 2c 20 69 74 20 69 73 20 61 20 63 | ion.cannot.be.inlined,.it.is.a.c |
| 45ce0 | 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 65 72 72 6f 72 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 | ompile-time.error.</span>.<span. |
| 45d00 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 6e 6c 69 6e 65 3c 2f 73 70 61 6e 3e 20 3c 73 70 | class="tok-kw">inline</span>.<sp |
| 45d20 | 61 6e 20 63 6c 61 73 73 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 |
| 45d40 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 73 68 69 66 74 4c 65 66 74 4f 6e 65 3c 2f 73 | n.class="tok-fn">shiftLeftOne</s |
| 45d60 | 70 61 6e 3e 28 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 | pan>(a:.<span.class="tok-type">u |
| 45d80 | 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 |
| 45da0 | 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ">u32</span>.{.....<span.class=" |
| 45dc0 | 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 61 20 26 6c 74 3b 26 6c 74 3b | tok-kw">return</span>.a.<< |
| 45de0 | 20 3c 73 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 |
| 45e00 | 6e 3e 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 | n>;.}..<span.class="tok-comment" |
| 45e20 | 3e 2f 2f 20 54 68 65 20 70 75 62 20 73 70 65 63 69 66 69 65 72 20 61 6c 6c 6f 77 73 20 74 68 65 | >//.The.pub.specifier.allows.the |
| 45e40 | 20 66 75 6e 63 74 69 6f 6e 20 74 6f 20 62 65 20 76 69 73 69 62 6c 65 20 77 68 65 6e 20 69 6d 70 | .function.to.be.visible.when.imp |
| 45e60 | 6f 72 74 69 6e 67 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | orting.</span>.<span.class="tok- |
| 45e80 | 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 41 6e 6f 74 68 65 72 20 66 69 6c 65 20 63 61 6e 20 75 73 65 | comment">//.Another.file.can.use |
| 45ea0 | 20 40 69 6d 70 6f 72 74 20 61 6e 64 20 63 61 6c 6c 20 73 75 62 32 3c 2f 73 70 61 6e 3e 0a 3c 73 | .@import.and.call.sub2</span>.<s |
| 45ec0 | 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 |
| 45ee0 | 70 61 6e 20 63 6c 61 73 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 |
| 45f00 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 73 75 62 32 3c 2f 73 70 61 6e 3e 28 61 3a | an.class="tok-fn">sub2</span>(a: |
| 45f20 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 38 3c 2f 73 70 61 6e | .<span.class="tok-type">i8</span |
| 45f40 | 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 38 3c | >,.b:.<span.class="tok-type">i8< |
| 45f60 | 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 |
| 45f80 | 38 3c 2f 73 70 61 6e 3e 20 7b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | 8</span>.{.<span.class="tok-kw"> |
| 45fa0 | 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 61 20 2d 20 62 3b 20 7d 0a 0a 3c 73 70 61 6e 20 63 6c | return</span>.a.-.b;.}..<span.cl |
| 45fc0 | 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 46 75 6e 63 74 69 6f 6e 73 20 63 | ass="tok-comment">//.Functions.c |
| 45fe0 | 61 6e 20 62 65 20 75 73 65 64 20 61 73 20 76 61 6c 75 65 73 20 61 6e 64 20 61 72 65 20 65 71 75 | an.be.used.as.values.and.are.equ |
| 46000 | 69 76 61 6c 65 6e 74 20 74 6f 20 70 6f 69 6e 74 65 72 73 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 | ivalent.to.pointers.</span>.<spa |
| 46020 | 6e 20 63 6c 61 73 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 61 | n.class="tok-kw">const</span>.ca |
| 46040 | 6c 6c 32 5f 6f 70 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e | ll2_op.=.<span.class="tok-kw">fn |
| 46060 | 3c 2f 73 70 61 6e 3e 20 28 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | </span>.(a:.<span.class="tok-typ |
| 46080 | 65 22 3e 69 38 3c 2f 73 70 61 6e 3e 2c 20 62 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | e">i8</span>,.b:.<span.class="to |
| 460a0 | 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=" |
| 460c0 | 74 6f 6b 2d 74 79 70 65 22 3e 69 38 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | tok-type">i8</span>;.<span.class |
| 460e0 | 3d 22 74 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= |
| 46100 | 22 74 6f 6b 2d 66 6e 22 3e 64 6f 5f 6f 70 3c 2f 73 70 61 6e 3e 28 66 6e 5f 63 61 6c 6c 3a 20 63 | "tok-fn">do_op</span>(fn_call:.c |
| 46120 | 61 6c 6c 32 5f 6f 70 2c 20 6f 70 31 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | all2_op,.op1:.<span.class="tok-t |
| 46140 | 79 70 65 22 3e 69 38 3c 2f 73 70 61 6e 3e 2c 20 6f 70 32 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ype">i8</span>,.op2:.<span.class |
| 46160 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 38 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 | ="tok-type">i8</span>).<span.cla |
| 46180 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 38 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 | ss="tok-type">i8</span>.{.....<s |
| 461a0 | 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> |
| 461c0 | 20 66 6e 5f 63 61 6c 6c 28 6f 70 31 2c 20 6f 70 32 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 | .fn_call(op1,.op2);.}..<span.cla |
| 461e0 | 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 |
| 46200 | 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 66 75 6e 63 74 69 6f 6e 26 71 75 6f | ass="tok-str">"function&quo |
| 46220 | 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 65 78 70 65 63 74 28 64 6f 5f 6f 70 28 61 64 64 | t;</span>.{.....expect(do_op(add |
| 46240 | 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 |
| 46260 | 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< |
| 46280 | 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 |
| 462a0 | 65 72 22 3e 31 31 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 65 78 70 65 63 74 28 64 6f 5f 6f 70 | er">11</span>);.....expect(do_op |
| 462c0 | 28 73 75 62 32 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e | (sub2,.<span.class="tok-number"> |
| 462e0 | 35 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | 5</span>,.<span.class="tok-numbe |
| 46300 | 72 22 3e 36 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 2d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | r">6</span>).==.-<span.class="to |
| 46320 | 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 | k-number">1</span>);.}</code></p |
| 46340 | 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 | re><pre><code.class="shell">$.zi |
| 46360 | 67 20 74 65 73 74 20 66 75 6e 63 74 69 6f 6e 73 2e 7a 69 67 0a 31 2f 31 20 74 65 73 74 20 26 71 | g.test.functions.zig.1/1.test.&q |
| 46380 | 75 6f 74 3b 66 75 6e 63 74 69 6f 6e 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 41 6c 6c 20 31 20 74 | uot;function"....OK.All.1.t |
| 463a0 | 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 | ests.passed..</code></pre>...... |
| 463c0 | 20 20 3c 70 3e 46 75 6e 63 74 69 6f 6e 20 76 61 6c 75 65 73 20 61 72 65 20 6c 69 6b 65 20 70 6f | ..<p>Function.values.are.like.po |
| 463e0 | 69 6e 74 65 72 73 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 | inters:</p>.......<p.class="file |
| 46400 | 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | ">test.zig</p><pre><code.class=" |
| 46420 | 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c | zig"><span.class="tok-kw">const< |
| 46440 | 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | /span>.expect.=.<span.class="tok |
| 46460 | 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 |
| 46480 | 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"</ |
| 464a0 | 73 70 61 6e 3e 29 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c | span>).testing.expect;..<span.cl |
| 464c0 | 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>.{.. |
| 464e0 | 20 20 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 | ...expect(<span.class="tok-built |
| 46500 | 69 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 66 6f 6f 29 20 3d 3d 20 3c 73 70 61 6e | in">@TypeOf</span>(foo).==.<span |
| 46520 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 28 29 3c 73 70 61 6e | .class="tok-kw">fn</span>()<span |
| 46540 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 29 3b 0a | .class="tok-type">void</span>);. |
| 46560 | 20 20 20 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 | ....expect(<span.class="tok-buil |
| 46580 | 74 69 6e 22 3e 40 73 69 7a 65 4f 66 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d | tin">@sizeOf</span>(<span.class= |
| 465a0 | 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 28 29 3c 73 70 61 6e 20 63 6c 61 73 73 3d | "tok-kw">fn</span>()<span.class= |
| 465c0 | 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 3c 73 70 61 6e | "tok-type">void</span>).==.<span |
| 465e0 | 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 |
| 46600 | 61 6e 3e 28 3f 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 | an>(?<span.class="tok-kw">fn</sp |
| 46620 | 61 6e 3e 28 29 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 | an>()<span.class="tok-type">void |
| 46640 | 3c 2f 73 70 61 6e 3e 29 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | </span>));.}..<span.class="tok-k |
| 46660 | 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 |
| 46680 | 22 3e 66 6f 6f 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ">foo</span>().<span.class="tok- |
| 466a0 | 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 20 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 | type">void</span>.{.}</code></pr |
| 466c0 | 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 | e><pre><code.class="shell">$.zig |
| 466e0 | 20 62 75 69 6c 64 2d 6f 62 6a 20 74 65 73 74 2e 7a 69 67 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e | .build-obj.test.zig</code></pre> |
| 46700 | 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 50 61 73 73 2d 62 79 2d 76 61 6c 75 65 2d 50 61 | ........<h2.id="Pass-by-value-Pa |
| 46720 | 72 61 6d 65 74 65 72 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 50 61 73 73 2d 62 79 2d | rameters"><a.href="#toc-Pass-by- |
| 46740 | 76 61 6c 75 65 2d 50 61 72 61 6d 65 74 65 72 73 22 3e 50 61 73 73 2d 62 79 2d 76 61 6c 75 65 20 | value-Parameters">Pass-by-value. |
| 46760 | 50 61 72 61 6d 65 74 65 72 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 | Parameters</a>.<a.class="hdr".hr |
| 46780 | 65 66 3d 22 23 50 61 73 73 2d 62 79 2d 76 61 6c 75 65 2d 50 61 72 61 6d 65 74 65 72 73 22 3e c2 | ef="#Pass-by-value-Parameters">. |
| 467a0 | a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 50 72 69 6d | .</a></h2>........<p>.......Prim |
| 467c0 | 69 74 69 76 65 20 74 79 70 65 73 20 73 75 63 68 20 61 73 20 3c 61 20 68 72 65 66 3d 22 23 49 6e | itive.types.such.as.<a.href="#In |
| 467e0 | 74 65 67 65 72 73 22 3e 49 6e 74 65 67 65 72 73 3c 2f 61 3e 20 61 6e 64 20 3c 61 20 68 72 65 66 | tegers">Integers</a>.and.<a.href |
| 46800 | 3d 22 23 46 6c 6f 61 74 73 22 3e 46 6c 6f 61 74 73 3c 2f 61 3e 20 70 61 73 73 65 64 20 61 73 20 | ="#Floats">Floats</a>.passed.as. |
| 46820 | 70 61 72 61 6d 65 74 65 72 73 0a 20 20 20 20 20 20 61 72 65 20 63 6f 70 69 65 64 2c 20 61 6e 64 | parameters.......are.copied,.and |
| 46840 | 20 74 68 65 6e 20 74 68 65 20 63 6f 70 79 20 69 73 20 61 76 61 69 6c 61 62 6c 65 20 69 6e 20 74 | .then.the.copy.is.available.in.t |
| 46860 | 68 65 20 66 75 6e 63 74 69 6f 6e 20 62 6f 64 79 2e 20 54 68 69 73 20 69 73 20 63 61 6c 6c 65 64 | he.function.body..This.is.called |
| 46880 | 20 22 70 61 73 73 69 6e 67 20 62 79 20 76 61 6c 75 65 22 2e 0a 20 20 20 20 20 20 43 6f 70 79 69 | ."passing.by.value"........Copyi |
| 468a0 | 6e 67 20 61 20 70 72 69 6d 69 74 69 76 65 20 74 79 70 65 20 69 73 20 65 73 73 65 6e 74 69 61 6c | ng.a.primitive.type.is.essential |
| 468c0 | 6c 79 20 66 72 65 65 20 61 6e 64 20 74 79 70 69 63 61 6c 6c 79 20 69 6e 76 6f 6c 76 65 73 20 6e | ly.free.and.typically.involves.n |
| 468e0 | 6f 74 68 69 6e 67 20 6d 6f 72 65 20 74 68 61 6e 0a 20 20 20 20 20 20 73 65 74 74 69 6e 67 20 61 | othing.more.than.......setting.a |
| 46900 | 20 72 65 67 69 73 74 65 72 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a | .register........</p>.......<p>. |
| 46920 | 20 20 20 20 20 20 53 74 72 75 63 74 73 2c 20 75 6e 69 6f 6e 73 2c 20 61 6e 64 20 61 72 72 61 79 | ......Structs,.unions,.and.array |
| 46940 | 73 20 63 61 6e 20 73 6f 6d 65 74 69 6d 65 73 20 62 65 20 6d 6f 72 65 20 65 66 66 69 63 69 65 6e | s.can.sometimes.be.more.efficien |
| 46960 | 74 6c 79 20 70 61 73 73 65 64 20 61 73 20 61 20 72 65 66 65 72 65 6e 63 65 2c 20 73 69 6e 63 65 | tly.passed.as.a.reference,.since |
| 46980 | 20 61 20 63 6f 70 79 0a 20 20 20 20 20 20 63 6f 75 6c 64 20 62 65 20 61 72 62 69 74 72 61 72 69 | .a.copy.......could.be.arbitrari |
| 469a0 | 6c 79 20 65 78 70 65 6e 73 69 76 65 20 64 65 70 65 6e 64 69 6e 67 20 6f 6e 20 74 68 65 20 73 69 | ly.expensive.depending.on.the.si |
| 469c0 | 7a 65 2e 20 57 68 65 6e 20 74 68 65 73 65 20 74 79 70 65 73 20 61 72 65 20 70 61 73 73 65 64 0a | ze..When.these.types.are.passed. |
| 469e0 | 20 20 20 20 20 20 61 73 20 70 61 72 61 6d 65 74 65 72 73 2c 20 5a 69 67 20 6d 61 79 20 63 68 6f | ......as.parameters,.Zig.may.cho |
| 46a00 | 6f 73 65 20 74 6f 20 63 6f 70 79 20 61 6e 64 20 70 61 73 73 20 62 79 20 76 61 6c 75 65 2c 20 6f | ose.to.copy.and.pass.by.value,.o |
| 46a20 | 72 20 70 61 73 73 20 62 79 20 72 65 66 65 72 65 6e 63 65 2c 20 77 68 69 63 68 65 76 65 72 20 77 | r.pass.by.reference,.whichever.w |
| 46a40 | 61 79 0a 20 20 20 20 20 20 5a 69 67 20 64 65 63 69 64 65 73 20 77 69 6c 6c 20 62 65 20 66 61 73 | ay.......Zig.decides.will.be.fas |
| 46a60 | 74 65 72 2e 20 54 68 69 73 20 69 73 20 6d 61 64 65 20 70 6f 73 73 69 62 6c 65 2c 20 69 6e 20 70 | ter..This.is.made.possible,.in.p |
| 46a80 | 61 72 74 2c 20 62 79 20 74 68 65 20 66 61 63 74 20 74 68 61 74 20 70 61 72 61 6d 65 74 65 72 73 | art,.by.the.fact.that.parameters |
| 46aa0 | 20 61 72 65 20 69 6d 6d 75 74 61 62 6c 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 | .are.immutable........</p>...... |
| 46ac0 | 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 | .<p.class="file">test.zig</p><pr |
| 46ae0 | 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | e><code.class="zig"><span.class= |
| 46b00 | 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 50 6f 69 6e 74 20 3d 20 3c 73 | "tok-kw">const</span>.Point.=.<s |
| 46b20 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 74 72 75 63 74 3c 2f 73 70 61 6e 3e | pan.class="tok-kw">struct</span> |
| 46b40 | 20 7b 0a 20 20 20 20 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 | .{.....x:.<span.class="tok-type" |
| 46b60 | 3e 69 33 32 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 79 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | >i32</span>,.....y:.<span.class= |
| 46b80 | 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e | "tok-type">i32</span>,.};..<span |
| 46ba0 | 20 63 6c 61 73 73 3d 22 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. |
| 46bc0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 66 6f 6f 3c 2f 73 70 61 6e 3e 28 70 6f 69 6e 74 3a | class="tok-fn">foo</span>(point: |
| 46be0 | 20 50 6f 69 6e 74 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 | .Point).<span.class="tok-type">i |
| 46c00 | 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 |
| 46c20 | 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 48 65 72 65 2c 20 60 70 6f 69 6e 74 60 20 63 6f 75 6c 64 | -comment">//.Here,.`point`.could |
| 46c40 | 20 62 65 20 61 20 72 65 66 65 72 65 6e 63 65 2c 20 6f 72 20 61 20 63 6f 70 79 2e 20 54 68 65 20 | .be.a.reference,.or.a.copy..The. |
| 46c60 | 66 75 6e 63 74 69 6f 6e 20 62 6f 64 79 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 | function.body</span>.....<span.c |
| 46c80 | 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 63 61 6e 20 69 67 6e 6f 72 65 | lass="tok-comment">//.can.ignore |
| 46ca0 | 20 74 68 65 20 64 69 66 66 65 72 65 6e 63 65 20 61 6e 64 20 74 72 65 61 74 20 69 74 20 61 73 20 | .the.difference.and.treat.it.as. |
| 46cc0 | 61 20 76 61 6c 75 65 2e 20 42 65 20 76 65 72 79 20 63 61 72 65 66 75 6c 3c 2f 73 70 61 6e 3e 0a | a.value..Be.very.careful</span>. |
| 46ce0 | 20 20 20 20 3c 73 70 61 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">// |
| 46d00 | 20 74 61 6b 69 6e 67 20 74 68 65 20 61 64 64 72 65 73 73 20 6f 66 20 74 68 65 20 70 61 72 61 6d | .taking.the.address.of.the.param |
| 46d20 | 65 74 65 72 20 2d 20 69 74 20 73 68 6f 75 6c 64 20 62 65 20 74 72 65 61 74 65 64 20 61 73 20 69 | eter.-.it.should.be.treated.as.i |
| 46d40 | 66 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f | f</span>.....<span.class="tok-co |
| 46d60 | 6d 6d 65 6e 74 22 3e 2f 2f 20 74 68 65 20 61 64 64 72 65 73 73 20 77 69 6c 6c 20 62 65 63 6f 6d | mment">//.the.address.will.becom |
| 46d80 | 65 20 69 6e 76 61 6c 69 64 20 77 68 65 6e 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 72 65 74 75 | e.invalid.when.the.function.retu |
| 46da0 | 72 6e 73 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | rns.</span>.....<span.class="tok |
| 46dc0 | 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 70 6f 69 6e 74 2e 78 20 2b 20 70 6f 69 | -kw">return</span>.point.x.+.poi |
| 46de0 | 6e 74 2e 79 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f | nt.y;.}..<span.class="tok-kw">co |
| 46e00 | 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= |
| 46e20 | 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 |
| 46e40 | 61 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 |
| 46e60 | 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 |
| 46e80 | 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 |
| 46ea0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 70 61 73 73 20 73 74 | an.class="tok-str">"pass.st |
| 46ec0 | 72 75 63 74 20 74 6f 20 66 75 6e 63 74 69 6f 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a | ruct.to.function"</span>.{. |
| 46ee0 | 20 20 20 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 | ....expect(foo(Point{..x.=.<span |
| 46f00 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 2c 20 2e 79 | .class="tok-number">1</span>,..y |
| 46f20 | 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 | .=.<span.class="tok-number">2</s |
| 46f40 | 70 61 6e 3e 20 7d 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | pan>.}).==.<span.class="tok-numb |
| 46f60 | 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 70 72 | er">3</span>);.}</code></pre><pr |
| 46f80 | 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 | e><code.class="shell">$.zig.test |
| 46fa0 | 20 74 65 73 74 2e 7a 69 67 0a 31 2f 31 20 74 65 73 74 20 26 71 75 6f 74 3b 70 61 73 73 20 73 74 | .test.zig.1/1.test."pass.st |
| 46fc0 | 72 75 63 74 20 74 6f 20 66 75 6e 63 74 69 6f 6e 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 41 6c 6c | ruct.to.function"....OK.All |
| 46fe0 | 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a | .1.tests.passed..</code></pre>.. |
| 47000 | 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 46 6f 72 20 65 78 74 65 72 6e 20 66 75 6e 63 74 | ......<p>.......For.extern.funct |
| 47020 | 69 6f 6e 73 2c 20 5a 69 67 20 66 6f 6c 6c 6f 77 73 20 74 68 65 20 43 20 41 42 49 20 66 6f 72 20 | ions,.Zig.follows.the.C.ABI.for. |
| 47040 | 70 61 73 73 69 6e 67 20 73 74 72 75 63 74 73 20 61 6e 64 20 75 6e 69 6f 6e 73 20 62 79 20 76 61 | passing.structs.and.unions.by.va |
| 47060 | 6c 75 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 | lue........</p>..............<h2 |
| 47080 | 20 69 64 3d 22 46 75 6e 63 74 69 6f 6e 2d 50 61 72 61 6d 65 74 65 72 2d 54 79 70 65 2d 49 6e 66 | .id="Function-Parameter-Type-Inf |
| 470a0 | 65 72 65 6e 63 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 46 75 6e 63 74 69 6f 6e 2d 50 | erence"><a.href="#toc-Function-P |
| 470c0 | 61 72 61 6d 65 74 65 72 2d 54 79 70 65 2d 49 6e 66 65 72 65 6e 63 65 22 3e 46 75 6e 63 74 69 6f | arameter-Type-Inference">Functio |
| 470e0 | 6e 20 50 61 72 61 6d 65 74 65 72 20 54 79 70 65 20 49 6e 66 65 72 65 6e 63 65 3c 2f 61 3e 20 3c | n.Parameter.Type.Inference</a>.< |
| 47100 | 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 46 75 6e 63 74 69 6f 6e 2d 50 61 | a.class="hdr".href="#Function-Pa |
| 47120 | 72 61 6d 65 74 65 72 2d 54 79 70 65 2d 49 6e 66 65 72 65 6e 63 65 22 3e c2 a7 3c 2f 61 3e 3c 2f | rameter-Type-Inference">..</a></ |
| 47140 | 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 46 75 6e 63 74 69 6f 6e 20 70 61 | h2>........<p>.......Function.pa |
| 47160 | 72 61 6d 65 74 65 72 73 20 63 61 6e 20 62 65 20 64 65 63 6c 61 72 65 64 20 77 69 74 68 20 3c 63 | rameters.can.be.declared.with.<c |
| 47180 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ode.class="zig"><span.class="tok |
| 471a0 | 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 20 69 6e 20 70 6c | -kw">anytype</span></code>.in.pl |
| 471c0 | 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 20 74 68 69 73 20 63 | ace.of.the.type........In.this.c |
| 471e0 | 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 69 6c 6c 20 62 65 20 | ase.the.parameter.types.will.be. |
| 47200 | 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 6e 20 69 73 20 63 61 | inferred.when.the.function.is.ca |
| 47220 | 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 23 54 79 70 65 4f 66 | lled........Use.<a.href="#TypeOf |
| 47240 | 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 3d 22 23 74 79 70 65 | ">@TypeOf</a>.and.<a.href="#type |
| 47260 | 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 74 20 69 6e 66 6f 72 | Info">@typeInfo</a>.to.get.infor |
| 47280 | 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 20 74 79 70 65 2e 0a | mation.about.the.inferred.type.. |
| 472a0 | 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 | ......</p>.......<p.class="file" |
| 472c0 | 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a | >test.zig</p><pre><code.class="z |
| 472e0 | 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f | ig"><span.class="tok-kw">const</ |
| 47300 | 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | span>.expect.=.<span.class="tok- |
| 47320 | 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 |
| 47340 | 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 |
| 47360 | 70 61 6e 3e 29 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 | pan>).testing.expect;..<span.cla |
| 47380 | 73 73 3d 22 74 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 |
| 473a0 | 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 3e 28 78 3a | s="tok-fn">addFortyTwo</span>(x: |
| 473c0 | 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 |
| 473e0 | 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e | pan>).<span.class="tok-builtin"> |
| 47400 | 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 6e 20 63 6c | @TypeOf</span>(x).{.....<span.cl |
| 47420 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 78 20 2b 20 3c | ass="tok-kw">return</span>.x.+.< |
| 47440 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 32 3c 2f 73 70 61 6e | span.class="tok-number">42</span |
| 47460 | 3e 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c | >;.}..<span.class="tok-kw">test< |
| 47480 | 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 |
| 474a0 | 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 73 70 61 6e | ot;fn.type.inference"</span |
| 474c0 | 3e 20 7b 0a 20 20 20 20 65 78 70 65 63 74 28 61 64 64 46 6f 72 74 79 54 77 6f 28 3c 73 70 61 6e | >.{.....expect(addFortyTwo(<span |
| 474e0 | 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>).== |
| 47500 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 33 3c 2f 73 70 | .<span.class="tok-number">43</sp |
| 47520 | 61 6e 3e 29 3b 0a 20 20 20 20 65 78 70 65 63 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | an>);.....expect(<span.class="to |
| 47540 | 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 46 6f 72 | k-builtin">@TypeOf</span>(addFor |
| 47560 | 74 79 54 77 6f 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 | tyTwo(<span.class="tok-number">1 |
| 47580 | 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 6b 2d 74 79 | </span>)).==.<span.class="tok-ty |
| 475a0 | 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 20 20 3c 73 | pe">comptime_int</span>);.....<s |
| 475c0 | 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: |
| 475e0 | 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 |
| 47600 | 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c | n>.=.<span.class="tok-number">2< |
| 47620 | 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 65 78 70 65 63 74 28 61 64 64 46 6f 72 74 79 54 77 6f 28 79 | /span>;.....expect(addFortyTwo(y |
| 47640 | 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 34 | ).==.<span.class="tok-number">44 |
| 47660 | 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 65 78 70 65 63 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 | </span>);.....expect(<span.class |
| 47680 | 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 |
| 476a0 | 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 73 73 3d 22 74 6f | dFortyTwo(y)).==.<span.class="to |
| 476c0 | 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 64 65 3e 3c 2f 70 | k-type">i64</span>);.}</code></p |
| 476e0 | 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 | re><pre><code.class="shell">$.zi |
| 47700 | 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 31 2f 31 20 74 65 73 74 20 26 71 75 6f 74 3b 66 | g.test.test.zig.1/1.test."f |
| 47720 | 6e 20 74 79 70 65 20 69 6e 66 65 72 65 6e 63 65 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 41 6c 6c | n.type.inference"....OK.All |
| 47740 | 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a | .1.tests.passed..</code></pre>.. |
| 47760 | 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 46 75 6e 63 74 69 6f 6e 2d 52 | ..............<h2.id="Function-R |
| 47780 | 65 66 6c 65 63 74 69 6f 6e 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 46 75 6e 63 74 69 6f | eflection"><a.href="#toc-Functio |
| 477a0 | 6e 2d 52 65 66 6c 65 63 74 69 6f 6e 22 3e 46 75 6e 63 74 69 6f 6e 20 52 65 66 6c 65 63 74 69 6f | n-Reflection">Function.Reflectio |
| 477c0 | 6e 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 46 75 6e 63 | n</a>.<a.class="hdr".href="#Func |
| 477e0 | 74 69 6f 6e 2d 52 65 66 6c 65 63 74 69 6f 6e 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 | tion-Reflection">..</a></h2>.... |
| 47800 | 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e | ....<p.class="file">test.zig</p> |
| 47820 | 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 | <pre><code.class="zig"><span.cla |
| 47840 | 73 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. |
| 47860 | 3d 20 3c 73 70 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 |
| 47880 | 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" |
| 478a0 | 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 74 65 73 74 69 6e 67 | >"std"</span>).testing |
| 478c0 | 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 |
| 478e0 | 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" |
| 47900 | 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 |
| 47920 | 3e 20 7b 0a 20 20 20 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 | >.{.....expect(<span.class="tok- |
| 47940 | 62 75 69 6c 74 69 6e 22 3e 40 74 79 70 65 49 6e 66 6f 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 | builtin">@typeInfo</span>(<span. |
| 47960 | 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 |
| 47980 | 6e 3e 28 65 78 70 65 63 74 29 29 2e 46 6e 2e 72 65 74 75 72 6e 5f 74 79 70 65 2e 3f 20 3d 3d 20 | n>(expect)).Fn.return_type.?.==. |
| 479a0 | 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 |
| 479c0 | 6e 3e 29 3b 0a 20 20 20 20 65 78 70 65 63 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | n>);.....expect(<span.class="tok |
| 479e0 | 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 61 6e | -builtin">@typeInfo</span>(<span |
| 47a00 | 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 |
| 47a20 | 61 6e 3e 28 65 78 70 65 63 74 29 29 2e 46 6e 2e 69 73 5f 76 61 72 5f 61 72 67 73 20 3d 3d 20 3c | an>(expect)).Fn.is_var_args.==.< |
| 47a40 | 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 |
| 47a60 | 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c | n>);.}</code></pre><pre><code.cl |
| 47a80 | 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a | ass="shell">$.zig.test.test.zig. |
| 47aa0 | 31 2f 31 20 74 65 73 74 20 26 71 75 6f 74 3b 66 6e 20 72 65 66 6c 65 63 74 69 6f 6e 26 71 75 6f | 1/1.test."fn.reflection&quo |
| 47ac0 | 74 3b 2e 2e 2e 20 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 | t;....OK.All.1.tests.passed..</c |
| 47ae0 | 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 | ode></pre>...................... |
| 47b00 | 3c 68 31 20 69 64 3d 22 45 72 72 6f 72 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 45 72 | <h1.id="Errors"><a.href="#toc-Er |
| 47b20 | 72 6f 72 73 22 3e 45 72 72 6f 72 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 | rors">Errors</a>.<a.class="hdr". |
| 47b40 | 68 72 65 66 3d 22 23 45 72 72 6f 72 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 31 3e 0a 0a 20 20 20 20 | href="#Errors">..</a></h1>...... |
| 47b60 | 20 20 3c 68 32 20 69 64 3d 22 45 72 72 6f 72 2d 53 65 74 2d 54 79 70 65 22 3e 3c 61 20 68 72 65 | ..<h2.id="Error-Set-Type"><a.hre |
| 47b80 | 66 3d 22 23 74 6f 63 2d 45 72 72 6f 72 2d 53 65 74 2d 54 79 70 65 22 3e 45 72 72 6f 72 20 53 65 | f="#toc-Error-Set-Type">Error.Se |
| 47ba0 | 74 20 54 79 70 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 | t.Type</a>.<a.class="hdr".href=" |
| 47bc0 | 23 45 72 72 6f 72 2d 53 65 74 2d 54 79 70 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 | #Error-Set-Type">..</a></h2>.... |
| 47be0 | 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 41 6e 20 65 72 72 6f 72 20 73 65 74 20 69 73 20 6c 69 | ....<p>.......An.error.set.is.li |
| 47c00 | 6b 65 20 61 6e 20 3c 61 20 68 72 65 66 3d 22 23 65 6e 75 6d 22 3e 65 6e 75 6d 3c 2f 61 3e 2e 0a | ke.an.<a.href="#enum">enum</a>.. |
| 47c20 | 20 20 20 20 20 20 48 6f 77 65 76 65 72 2c 20 65 61 63 68 20 65 72 72 6f 72 20 6e 61 6d 65 20 61 | ......However,.each.error.name.a |
| 47c40 | 63 72 6f 73 73 20 74 68 65 20 65 6e 74 69 72 65 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 20 67 65 74 | cross.the.entire.compilation.get |
| 47c60 | 73 20 61 73 73 69 67 6e 65 64 20 61 6e 20 75 6e 73 69 67 6e 65 64 20 69 6e 74 65 67 65 72 0a 20 | s.assigned.an.unsigned.integer.. |
| 47c80 | 20 20 20 20 20 67 72 65 61 74 65 72 20 74 68 61 6e 20 30 2e 20 59 6f 75 20 61 72 65 20 61 6c 6c | .....greater.than.0..You.are.all |
| 47ca0 | 6f 77 65 64 20 74 6f 20 64 65 63 6c 61 72 65 20 74 68 65 20 73 61 6d 65 20 65 72 72 6f 72 20 6e | owed.to.declare.the.same.error.n |
| 47cc0 | 61 6d 65 20 6d 6f 72 65 20 74 68 61 6e 20 6f 6e 63 65 2c 20 61 6e 64 20 69 66 20 79 6f 75 20 64 | ame.more.than.once,.and.if.you.d |
| 47ce0 | 6f 2c 20 69 74 0a 20 20 20 20 20 20 67 65 74 73 20 61 73 73 69 67 6e 65 64 20 74 68 65 20 73 61 | o,.it.......gets.assigned.the.sa |
| 47d00 | 6d 65 20 69 6e 74 65 67 65 72 20 76 61 6c 75 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 | me.integer.value........</p>.... |
| 47d20 | 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 20 6e 75 6d 62 65 72 20 6f 66 20 75 6e 69 71 75 | ...<p>.......The.number.of.uniqu |
| 47d40 | 65 20 65 72 72 6f 72 20 76 61 6c 75 65 73 20 61 63 72 6f 73 73 20 74 68 65 20 65 6e 74 69 72 65 | e.error.values.across.the.entire |
| 47d60 | 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 20 73 68 6f 75 6c 64 20 64 65 74 65 72 6d 69 6e 65 20 74 68 | .compilation.should.determine.th |
| 47d80 | 65 20 73 69 7a 65 20 6f 66 20 74 68 65 20 65 72 72 6f 72 20 73 65 74 20 74 79 70 65 2e 0a 20 20 | e.size.of.the.error.set.type.... |
| 47da0 | 20 20 20 20 48 6f 77 65 76 65 72 20 72 69 67 68 74 20 6e 6f 77 20 69 74 20 69 73 20 68 61 72 64 | ....However.right.now.it.is.hard |
| 47dc0 | 20 63 6f 64 65 64 20 74 6f 20 62 65 20 61 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | .coded.to.be.a.<code.class="zig" |
| 47de0 | 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 36 3c 2f 73 70 61 | ><span.class="tok-type">u16</spa |
| 47e00 | 6e 3e 3c 2f 63 6f 64 65 3e 2e 20 53 65 65 20 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f | n></code>..See.<a.href="https:// |
| 47e20 | 67 69 74 68 75 62 2e 63 6f 6d 2f 7a 69 67 6c 61 6e 67 2f 7a 69 67 2f 69 73 73 75 65 73 2f 37 38 | github.com/ziglang/zig/issues/78 |
| 47e40 | 36 22 3e 23 37 36 38 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 | 6">#768</a>........</p>.......<p |
| 47e60 | 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 |
| 47e80 | 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 |
| 47ea0 | 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:....... |
| 47ec0 | 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e | </p>.......<p.class="file">test. |
| 47ee0 | 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 | zig</p><pre><code.class="zig"><s |
| 47f00 | 70 61 6e 20 63 6c 61 73 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>. |
| 47f20 | 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"> |
| 47f40 | 40 69 6d 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- |
| 47f60 | 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>);..< |
| 47f80 | 73 70 61 6e 20 63 6c 61 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> |
| 47fa0 | 20 46 69 6c 65 4f 70 65 6e 45 72 72 6f 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | .FileOpenError.=.<span.class="to |
| 47fc0 | 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 41 63 63 65 73 73 44 | k-kw">error</span>.{.....AccessD |
| 47fe0 | 65 6e 69 65 64 2c 0a 20 20 20 20 4f 75 74 4f 66 4d 65 6d 6f 72 79 2c 0a 20 20 20 20 46 69 6c 65 | enied,.....OutOfMemory,.....File |
| 48000 | 4e 6f 74 46 6f 75 6e 64 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | NotFound,.};..<span.class="tok-k |
| 48020 | 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 41 6c 6c 6f 63 61 74 69 6f 6e 45 72 72 6f 72 20 | w">const</span>.AllocationError. |
| 48040 | 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 |
| 48060 | 61 6e 3e 20 7b 0a 20 20 20 20 4f 75 74 4f 66 4d 65 6d 6f 72 79 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e | an>.{.....OutOfMemory,.};..<span |
| 48080 | 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 |
| 480a0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 63 6f 65 72 63 65 20 73 | n.class="tok-str">"coerce.s |
| 480c0 | 75 62 73 65 74 20 74 6f 20 73 75 70 65 72 73 65 74 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b | ubset.to.superset"</span>.{ |
| 480e0 | 0a 20 20 20 20 3c 73 70 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< |
| 48100 | 2f 73 70 61 6e 3e 20 65 72 72 20 3d 20 66 6f 6f 28 41 6c 6c 6f 63 61 74 69 6f 6e 45 72 72 6f 72 | /span>.err.=.foo(AllocationError |
| 48120 | 2e 4f 75 74 4f 66 4d 65 6d 6f 72 79 29 3b 0a 20 20 20 20 73 74 64 2e 74 65 73 74 69 6e 67 2e 65 | .OutOfMemory);.....std.testing.e |
| 48140 | 78 70 65 63 74 28 65 72 72 20 3d 3d 20 46 69 6c 65 4f 70 65 6e 45 72 72 6f 72 2e 4f 75 74 4f 66 | xpect(err.==.FileOpenError.OutOf |
| 48160 | 4d 65 6d 6f 72 79 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | Memory);.}..<span.class="tok-kw" |
| 48180 | 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"> |
| 481a0 | 66 6f 6f 3c 2f 73 70 61 6e 3e 28 65 72 72 3a 20 41 6c 6c 6f 63 61 74 69 6f 6e 45 72 72 6f 72 29 | foo</span>(err:.AllocationError) |
| 481c0 | 20 46 69 6c 65 4f 70 65 6e 45 72 72 6f 72 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | .FileOpenError.{.....<span.class |
| 481e0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 65 72 72 3b 0a 7d 3c 2f | ="tok-kw">return</span>.err;.}</ |
| 48200 | 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 | code></pre><pre><code.class="she |
| 48220 | 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 31 2f 31 20 74 65 73 74 | ll">$.zig.test.test.zig.1/1.test |
| 48240 | 20 26 71 75 6f 74 3b 63 6f 65 72 63 65 20 73 75 62 73 65 74 20 74 6f 20 73 75 70 65 72 73 65 74 | ."coerce.subset.to.superset |
| 48260 | 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e | "....OK.All.1.tests.passed. |
| 48280 | 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 | .</code></pre>........<p>....... |
| 482a0 | 42 75 74 20 79 6f 75 20 63 61 6e 6e 6f 74 20 3c 61 20 68 72 65 66 3d 22 23 54 79 70 65 2d 43 6f | But.you.cannot.<a.href="#Type-Co |
| 482c0 | 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 6d | ercion">coerce</a>.an.error.from |
| 482e0 | 20 61 20 73 75 70 65 72 73 65 74 20 74 6f 20 61 20 73 75 62 73 65 74 3a 0a 20 20 20 20 20 20 3c | .a.superset.to.a.subset:.......< |
| 48300 | 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a | /p>.......<p.class="file">test.z |
| 48320 | 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 | ig</p><pre><code.class="zig"><sp |
| 48340 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 46 | an.class="tok-kw">const</span>.F |
| 48360 | 69 6c 65 4f 70 65 6e 45 72 72 6f 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ileOpenError.=.<span.class="tok- |
| 48380 | 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 41 63 63 65 73 73 44 65 6e | kw">error</span>.{.....AccessDen |
| 483a0 | 69 65 64 2c 0a 20 20 20 20 4f 75 74 4f 66 4d 65 6d 6f 72 79 2c 0a 20 20 20 20 46 69 6c 65 4e 6f | ied,.....OutOfMemory,.....FileNo |
| 483c0 | 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" |
| 483e0 | 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 41 6c 6c 6f 63 61 74 69 6f 6e 45 72 72 6f 72 20 3d 20 | >const</span>.AllocationError.=. |
| 48400 | 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 |
| 48420 | 3e 20 7b 0a 20 20 20 20 4f 75 74 4f 66 4d 65 6d 6f 72 79 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 | >.{.....OutOfMemory,.};..<span.c |
| 48440 | 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. |
| 48460 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 63 6f 65 72 63 65 20 73 75 70 | class="tok-str">"coerce.sup |
| 48480 | 65 72 73 65 74 20 74 6f 20 73 75 62 73 65 74 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 | erset.to.subset"</span>.{.. |
| 484a0 | 20 20 20 66 6f 6f 28 46 69 6c 65 4f 70 65 6e 45 72 72 6f 72 2e 4f 75 74 4f 66 4d 65 6d 6f 72 79 | ...foo(FileOpenError.OutOfMemory |
| 484c0 | 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 |
| 484e0 | 61 6e 3e 20 7b 7d 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | an>.{};.}..<span.class="tok-kw"> |
| 48500 | 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 66 | fn</span>.<span.class="tok-fn">f |
| 48520 | 6f 6f 3c 2f 73 70 61 6e 3e 28 65 72 72 3a 20 46 69 6c 65 4f 70 65 6e 45 72 72 6f 72 29 20 41 6c | oo</span>(err:.FileOpenError).Al |
| 48540 | 6c 6f 63 61 74 69 6f 6e 45 72 72 6f 72 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | locationError.{.....<span.class= |
| 48560 | 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 65 72 72 3b 0a 7d 3c 2f 63 | "tok-kw">return</span>.err;.}</c |
| 48580 | 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c | ode></pre><pre><code.class="shel |
| 485a0 | 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 3c 73 70 61 6e 20 63 6c 61 | l">$.zig.test.test.zig.<span.cla |
| 485c0 | 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a | ss="t0_1">./docgen_tmp/test.zig: |
| 485e0 | 31 36 3a 31 32 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 31 5f 31 | 16:12:.</span><span.class="t31_1 |
| 48600 | 22 3e 65 72 72 6f 72 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f | ">error:.</span><span.class="t0_ |
| 48620 | 31 22 3e 65 78 70 65 63 74 65 64 20 74 79 70 65 20 27 41 6c 6c 6f 63 61 74 69 6f 6e 45 72 72 6f | 1">expected.type.'AllocationErro |
| 48640 | 72 27 2c 20 66 6f 75 6e 64 20 27 46 69 6c 65 4f 70 65 6e 45 72 72 6f 72 27 3c 2f 73 70 61 6e 3e | r',.found.'FileOpenError'</span> |
| 48660 | 0a 20 20 20 20 72 65 74 75 72 6e 20 65 72 72 3b 0a 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 | .....return.err;............<spa |
| 48680 | 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 | n.class="t32_1">^</span>.<span.c |
| 486a0 | 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 | lass="t0_1">./docgen_tmp/test.zi |
| 486c0 | 67 3a 32 3a 35 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 36 5f 31 | g:2:5:.</span><span.class="t36_1 |
| 486e0 | 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 | ">note:.</span><span.class="t0_1 |
| 48700 | 22 3e 27 65 72 72 6f 72 2e 41 63 63 65 73 73 44 65 6e 69 65 64 27 20 6e 6f 74 20 61 20 6d 65 6d | ">'error.AccessDenied'.not.a.mem |
| 48720 | 62 65 72 20 6f 66 20 64 65 73 74 69 6e 61 74 69 6f 6e 20 65 72 72 6f 72 20 73 65 74 3c 2f 73 70 | ber.of.destination.error.set</sp |
| 48740 | 61 6e 3e 0a 20 20 20 20 41 63 63 65 73 73 44 65 6e 69 65 64 2c 0a 20 20 20 20 3c 73 70 61 6e 20 | an>.....AccessDenied,.....<span. |
| 48760 | 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 | class="t32_1">^</span>.<span.cla |
| 48780 | 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a | ss="t0_1">./docgen_tmp/test.zig: |
| 487a0 | 34 3a 35 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 36 5f 31 22 3e | 4:5:.</span><span.class="t36_1"> |
| 487c0 | 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e | note:.</span><span.class="t0_1"> |
| 487e0 | 27 65 72 72 6f 72 2e 46 69 6c 65 4e 6f 74 46 6f 75 6e 64 27 20 6e 6f 74 20 61 20 6d 65 6d 62 65 | 'error.FileNotFound'.not.a.membe |
| 48800 | 72 20 6f 66 20 64 65 73 74 69 6e 61 74 69 6f 6e 20 65 72 72 6f 72 20 73 65 74 3c 2f 73 70 61 6e | r.of.destination.error.set</span |
| 48820 | 3e 0a 20 20 20 20 46 69 6c 65 4e 6f 74 46 6f 75 6e 64 2c 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | >.....FileNotFound,.....<span.cl |
| 48840 | 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 | ass="t32_1">^</span>.</code></pr |
| 48860 | 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 72 65 20 69 73 20 61 20 73 | e>........<p>.......There.is.a.s |
| 48880 | 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 72 20 73 | hortcut.for.declaring.an.error.s |
| 488a0 | 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 6e 20 67 | et.with.only.1.value,.and.then.g |
| 488c0 | 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 0a 20 20 | etting.that.value:.......</p>... |
| 488e0 | 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e | ....<pre><code.class="zig"><span |
| 48900 | 20 63 6c 61 73 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 72 72 | .class="tok-kw">const</span>.err |
| 48920 | 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 | .=.<span.class="tok-kw">error</s |
| 48940 | 70 61 6e 3e 2e 46 69 6c 65 4e 6f 74 46 6f 75 6e 64 3b 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a | pan>.FileNotFound;</code></pre>. |
| 48960 | 20 20 20 20 20 20 3c 70 3e 54 68 69 73 20 69 73 20 65 71 75 69 76 61 6c 65 6e 74 20 74 6f 3a 3c | ......<p>This.is.equivalent.to:< |
| 48980 | 2f 70 3e 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | /p>.......<pre><code.class="zig" |
| 489a0 | 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 |
| 489c0 | 6e 3e 20 65 72 72 20 3d 20 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 | n>.err.=.(<span.class="tok-kw">e |
| 489e0 | 72 72 6f 72 3c 2f 73 70 61 6e 3e 20 7b 46 69 6c 65 4e 6f 74 46 6f 75 6e 64 7d 29 2e 46 69 6c 65 | rror</span>.{FileNotFound}).File |
| 48a00 | 4e 6f 74 46 6f 75 6e 64 3b 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e | NotFound;</code></pre>.......<p> |
| 48a20 | 0a 20 20 20 20 20 20 54 68 69 73 20 62 65 63 6f 6d 65 73 20 75 73 65 66 75 6c 20 77 68 65 6e 20 | .......This.becomes.useful.when. |
| 48a40 | 75 73 69 6e 67 20 3c 61 20 68 72 65 66 3d 22 23 49 6e 66 65 72 72 65 64 2d 45 72 72 6f 72 2d 53 | using.<a.href="#Inferred-Error-S |
| 48a60 | 65 74 73 22 3e 49 6e 66 65 72 72 65 64 20 45 72 72 6f 72 20 53 65 74 73 3c 2f 61 3e 2e 0a 20 20 | ets">Inferred.Error.Sets</a>.... |
| 48a80 | 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 54 68 65 2d 47 6c 6f 62 61 | ....</p>.......<h3.id="The-Globa |
| 48aa0 | 6c 2d 45 72 72 6f 72 2d 53 65 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 54 68 65 2d 47 | l-Error-Set"><a.href="#toc-The-G |
| 48ac0 | 6c 6f 62 61 6c 2d 45 72 72 6f 72 2d 53 65 74 22 3e 54 68 65 20 47 6c 6f 62 61 6c 20 45 72 72 6f | lobal-Error-Set">The.Global.Erro |
| 48ae0 | 72 20 53 65 74 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 | r.Set</a>.<a.class="hdr".href="# |
| 48b00 | 54 68 65 2d 47 6c 6f 62 61 6c 2d 45 72 72 6f 72 2d 53 65 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 | The-Global-Error-Set">..</a></h3 |
| 48b20 | 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 | >........<p><code.class="zig"><s |
| 48b40 | 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 |
| 48b60 | 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 72 65 66 65 72 73 20 74 6f 20 74 68 65 20 67 6c 6f 62 61 6c | pan></code>.refers.to.the.global |
| 48b80 | 20 65 72 72 6f 72 20 73 65 74 2e 0a 20 20 20 20 20 20 54 68 69 73 20 69 73 20 74 68 65 20 65 72 | .error.set........This.is.the.er |
| 48ba0 | 72 6f 72 20 73 65 74 20 74 68 61 74 20 63 6f 6e 74 61 69 6e 73 20 61 6c 6c 20 65 72 72 6f 72 73 | ror.set.that.contains.all.errors |
| 48bc0 | 20 69 6e 20 74 68 65 20 65 6e 74 69 72 65 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 20 75 6e 69 74 2e | .in.the.entire.compilation.unit. |
| 48be0 | 0a 20 20 20 20 20 20 49 74 20 69 73 20 61 20 73 75 70 65 72 73 65 74 20 6f 66 20 61 6c 6c 20 6f | .......It.is.a.superset.of.all.o |
| 48c00 | 74 68 65 72 20 65 72 72 6f 72 20 73 65 74 73 20 61 6e 64 20 61 20 73 75 62 73 65 74 20 6f 66 20 | ther.error.sets.and.a.subset.of. |
| 48c20 | 6e 6f 6e 65 20 6f 66 20 74 68 65 6d 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c | none.of.them........</p>.......< |
| 48c40 | 70 3e 0a 20 20 20 20 20 20 59 6f 75 20 63 61 6e 20 3c 61 20 68 72 65 66 3d 22 23 54 79 70 65 2d | p>.......You.can.<a.href="#Type- |
| 48c60 | 43 6f 65 72 63 69 6f 6e 22 3e 63 6f 65 72 63 65 3c 2f 61 3e 20 61 6e 79 20 65 72 72 6f 72 20 73 | Coercion">coerce</a>.any.error.s |
| 48c80 | 65 74 20 74 6f 20 74 68 65 20 67 6c 6f 62 61 6c 20 6f 6e 65 2c 20 61 6e 64 20 79 6f 75 20 63 61 | et.to.the.global.one,.and.you.ca |
| 48ca0 | 6e 20 65 78 70 6c 69 63 69 74 6c 79 0a 20 20 20 20 20 20 63 61 73 74 20 61 6e 20 65 72 72 6f 72 | n.explicitly.......cast.an.error |
| 48cc0 | 20 6f 66 20 74 68 65 20 67 6c 6f 62 61 6c 20 65 72 72 6f 72 20 73 65 74 20 74 6f 20 61 20 6e 6f | .of.the.global.error.set.to.a.no |
| 48ce0 | 6e 2d 67 6c 6f 62 61 6c 20 6f 6e 65 2e 20 54 68 69 73 20 69 6e 73 65 72 74 73 20 61 20 6c 61 6e | n-global.one..This.inserts.a.lan |
| 48d00 | 67 75 61 67 65 2d 6c 65 76 65 6c 0a 20 20 20 20 20 20 61 73 73 65 72 74 20 74 6f 20 6d 61 6b 65 | guage-level.......assert.to.make |
| 48d20 | 20 73 75 72 65 20 74 68 65 20 65 72 72 6f 72 20 76 61 6c 75 65 20 69 73 20 69 6e 20 66 61 63 74 | .sure.the.error.value.is.in.fact |
| 48d40 | 20 69 6e 20 74 68 65 20 64 65 73 74 69 6e 61 74 69 6f 6e 20 65 72 72 6f 72 20 73 65 74 2e 0a 20 | .in.the.destination.error.set... |
| 48d60 | 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 20 67 6c | .....</p>.......<p>.......The.gl |
| 48d80 | 6f 62 61 6c 20 65 72 72 6f 72 20 73 65 74 20 73 68 6f 75 6c 64 20 67 65 6e 65 72 61 6c 6c 79 20 | obal.error.set.should.generally. |
| 48da0 | 62 65 20 61 76 6f 69 64 65 64 20 62 65 63 61 75 73 65 20 69 74 20 70 72 65 76 65 6e 74 73 20 74 | be.avoided.because.it.prevents.t |
| 48dc0 | 68 65 0a 20 20 20 20 20 20 63 6f 6d 70 69 6c 65 72 20 66 72 6f 6d 20 6b 6e 6f 77 69 6e 67 20 77 | he.......compiler.from.knowing.w |
| 48de0 | 68 61 74 20 65 72 72 6f 72 73 20 61 72 65 20 70 6f 73 73 69 62 6c 65 20 61 74 20 63 6f 6d 70 69 | hat.errors.are.possible.at.compi |
| 48e00 | 6c 65 2d 74 69 6d 65 2e 20 4b 6e 6f 77 69 6e 67 0a 20 20 20 20 20 20 74 68 65 20 65 72 72 6f 72 | le-time..Knowing.......the.error |
| 48e20 | 20 73 65 74 20 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 69 73 20 62 65 74 74 65 72 20 66 | .set.at.compile-time.is.better.f |
| 48e40 | 6f 72 20 67 65 6e 65 72 61 74 65 64 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 20 61 6e 64 0a 20 | or.generated.documentation.and.. |
| 48e60 | 20 20 20 20 20 68 65 6c 70 66 75 6c 20 65 72 72 6f 72 20 6d 65 73 73 61 67 65 73 2c 20 73 75 63 | .....helpful.error.messages,.suc |
| 48e80 | 68 20 61 73 20 66 6f 72 67 65 74 74 69 6e 67 20 61 20 70 6f 73 73 69 62 6c 65 20 65 72 72 6f 72 | h.as.forgetting.a.possible.error |
| 48ea0 | 20 76 61 6c 75 65 20 69 6e 20 61 20 3c 61 20 68 72 65 66 3d 22 23 73 77 69 74 63 68 22 3e 73 77 | .value.in.a.<a.href="#switch">sw |
| 48ec0 | 69 74 63 68 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 | itch</a>........</p>............ |
| 48ee0 | 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 45 72 72 6f 72 2d 55 6e 69 6f 6e 2d 54 79 70 | .........<h2.id="Error-Union-Typ |
| 48f00 | 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 45 72 72 6f 72 2d 55 6e 69 6f 6e 2d 54 79 70 | e"><a.href="#toc-Error-Union-Typ |
| 48f20 | 65 22 3e 45 72 72 6f 72 20 55 6e 69 6f 6e 20 54 79 70 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 | e">Error.Union.Type</a>.<a.class |
| 48f40 | 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 45 72 72 6f 72 2d 55 6e 69 6f 6e 2d 54 79 70 65 22 3e | ="hdr".href="#Error-Union-Type"> |
| 48f60 | c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 41 6e 20 | ..</a></h2>........<p>.......An. |
| 48f80 | 65 72 72 6f 72 20 73 65 74 20 74 79 70 65 20 61 6e 64 20 6e 6f 72 6d 61 6c 20 74 79 70 65 20 63 | error.set.type.and.normal.type.c |
| 48fa0 | 61 6e 20 62 65 20 63 6f 6d 62 69 6e 65 64 20 77 69 74 68 20 74 68 65 20 3c 63 6f 64 65 20 63 6c | an.be.combined.with.the.<code.cl |
| 48fc0 | 61 73 73 3d 22 7a 69 67 22 3e 21 3c 2f 63 6f 64 65 3e 0a 20 20 20 20 20 20 62 69 6e 61 72 79 20 | ass="zig">!</code>.......binary. |
| 48fe0 | 6f 70 65 72 61 74 6f 72 20 74 6f 20 66 6f 72 6d 20 61 6e 20 65 72 72 6f 72 20 75 6e 69 6f 6e 20 | operator.to.form.an.error.union. |
| 49000 | 74 79 70 65 2e 20 59 6f 75 20 61 72 65 20 6c 69 6b 65 6c 79 20 74 6f 20 75 73 65 20 61 6e 0a 20 | type..You.are.likely.to.use.an.. |
| 49020 | 20 20 20 20 20 65 72 72 6f 72 20 75 6e 69 6f 6e 20 74 79 70 65 20 6d 6f 72 65 20 6f 66 74 65 6e | .....error.union.type.more.often |
| 49040 | 20 74 68 61 6e 20 61 6e 20 65 72 72 6f 72 20 73 65 74 20 74 79 70 65 20 62 79 20 69 74 73 65 6c | .than.an.error.set.type.by.itsel |
| 49060 | 66 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 48 65 | f........</p>.......<p>.......He |
| 49080 | 72 65 20 69 73 20 61 20 66 75 6e 63 74 69 6f 6e 20 74 6f 20 70 61 72 73 65 20 61 20 73 74 72 69 | re.is.a.function.to.parse.a.stri |
| 490a0 | 6e 67 20 69 6e 74 6f 20 61 20 36 34 2d 62 69 74 20 69 6e 74 65 67 65 72 3a 0a 20 20 20 20 20 20 | ng.into.a.64-bit.integer:....... |
| 490c0 | 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e | </p>.......<p.class="file">test. |
| 490e0 | 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 | zig</p><pre><code.class="zig"><s |
| 49100 | 70 61 6e 20 63 6c 61 73 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>. |
| 49120 | 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"> |
| 49140 | 40 69 6d 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- |
| 49160 | 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 |
| 49180 | 70 61 6e 20 63 6c 61 73 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>. |
| 491a0 | 6d 61 78 49 6e 74 20 3d 20 73 74 64 2e 6d 61 74 68 2e 6d 61 78 49 6e 74 3b 0a 0a 3c 73 70 61 6e | maxInt.=.std.math.maxInt;..<span |
| 491c0 | 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 |
| 491e0 | 20 63 6c 61 73 73 3d 22 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. |
| 49200 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 70 61 72 73 65 55 36 34 3c 2f 73 70 61 6e 3e 28 62 | class="tok-fn">parseU64</span>(b |
| 49220 | 75 66 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 | uf:.[]<span.class="tok-kw">const |
| 49240 | 3c 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 |
| 49260 | 38 3c 2f 73 70 61 6e 3e 2c 20 72 61 64 69 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | 8</span>,.radix:.<span.class="to |
| 49280 | 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 20 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d | k-type">u8</span>).!<span.class= |
| 492a0 | 22 74 6f 6b 2d 74 79 70 65 22 3e 75 36 34 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 | "tok-type">u64</span>.{.....<spa |
| 492c0 | 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:.< |
| 492e0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 36 34 3c 2f 73 70 61 6e 3e | span.class="tok-type">u64</span> |
| 49300 | 20 3d 20 3c 73 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 |
| 49320 | 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"> |
| 49340 | 66 6f 72 3c 2f 73 70 61 6e 3e 20 28 62 75 66 29 20 7c 63 7c 20 7b 0a 20 20 20 20 20 20 20 20 3c | for</span>.(buf).|c|.{.........< |
| 49360 | 73 70 61 6e 20 63 6c 61 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> |
| 49380 | 20 64 69 67 69 74 20 3d 20 63 68 61 72 54 6f 44 69 67 69 74 28 63 29 3b 0a 0a 20 20 20 20 20 20 | .digit.=.charToDigit(c);........ |
| 493a0 | 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> |
| 493c0 | 20 28 64 69 67 69 74 20 26 67 74 3b 3d 20 72 61 64 69 78 29 20 7b 0a 20 20 20 20 20 20 20 20 20 | .(digit.>=.radix).{.......... |
| 493e0 | 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</ |
| 49400 | 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 | span>.<span.class="tok-kw">error |
| 49420 | 3c 2f 73 70 61 6e 3e 2e 49 6e 76 61 6c 69 64 43 68 61 72 3b 0a 20 20 20 20 20 20 20 20 7d 0a 0a | </span>.InvalidChar;.........}.. |
| 49440 | 20 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 |
| 49460 | 22 3e 2f 2f 20 78 20 2a 3d 20 72 61 64 69 78 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 3c | ">//.x.*=.radix</span>.........< |
| 49480 | 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 3c | span.class="tok-kw">if</span>.(< |
| 494a0 | 73 70 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 |
| 494c0 | 68 4f 76 65 72 66 6c 6f 77 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | hOverflow</span>(<span.class="to |
| 494e0 | 6b 2d 74 79 70 65 22 3e 75 36 34 3c 2f 73 70 61 6e 3e 2c 20 78 2c 20 72 61 64 69 78 2c 20 26 61 | k-type">u64</span>,.x,.radix,.&a |
| 49500 | 6d 70 3b 78 29 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | mp;x)).{.............<span.class |
| 49520 | 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c | ="tok-kw">return</span>.<span.cl |
| 49540 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 4f 76 65 72 66 6c | ass="tok-kw">error</span>.Overfl |
| 49560 | 6f 77 3b 0a 20 20 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | ow;.........}..........<span.cla |
| 49580 | 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 78 20 2b 3d 20 64 69 67 69 74 3c 2f | ss="tok-comment">//.x.+=.digit</ |
| 495a0 | 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | span>.........<span.class="tok-k |
| 495c0 | 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 | w">if</span>.(<span.class="tok-b |
| 495e0 | 75 69 6c 74 69 6e 22 3e 40 61 64 64 57 69 74 68 4f 76 65 72 66 6c 6f 77 3c 2f 73 70 61 6e 3e 28 | uiltin">@addWithOverflow</span>( |
| 49600 | 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 |
| 49620 | 3e 2c 20 78 2c 20 64 69 67 69 74 2c 20 26 61 6d 70 3b 78 29 29 20 7b 0a 20 20 20 20 20 20 20 20 | >,.x,.digit,.&x)).{......... |
| 49640 | 20 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< |
| 49660 | 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f | /span>.<span.class="tok-kw">erro |
| 49680 | 72 3c 2f 73 70 61 6e 3e 2e 4f 76 65 72 66 6c 6f 77 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 | r</span>.Overflow;.........}.... |
| 496a0 | 20 7d 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 | .}......<span.class="tok-kw">ret |
| 496c0 | 75 72 6e 3c 2f 73 70 61 6e 3e 20 78 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | urn</span>.x;.}..<span.class="to |
| 496e0 | 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 |
| 49700 | 2d 66 6e 22 3e 63 68 61 72 54 6f 44 69 67 69 74 3c 2f 73 70 61 6e 3e 28 63 3a 20 3c 73 70 61 6e | -fn">charToDigit</span>(c:.<span |
| 49720 | 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 |
| 49740 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 20 7b 0a | an.class="tok-type">u8</span>.{. |
| 49760 | 20 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< |
| 49780 | 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 77 69 74 | /span>.<span.class="tok-kw">swit |
| 497a0 | 63 68 3c 2f 73 70 61 6e 3e 20 28 63 29 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c | ch</span>.(c).{.........<span.cl |
| 497c0 | 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 30 27 3c 2f 73 70 61 6e 3e 20 2e 2e 2e 20 3c 73 70 | ass="tok-str">'0'</span>.....<sp |
| 497e0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 39 27 3c 2f 73 70 61 6e 3e 20 3d 26 | an.class="tok-str">'9'</span>.=& |
| 49800 | 67 74 3b 20 63 20 2d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 30 | gt;.c.-.<span.class="tok-str">'0 |
| 49820 | 27 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | '</span>,.........<span.class="t |
| 49840 | 6f 6b 2d 73 74 72 22 3e 27 41 27 3c 2f 73 70 61 6e 3e 20 2e 2e 2e 20 3c 73 70 61 6e 20 63 6c 61 | ok-str">'A'</span>.....<span.cla |
| 49860 | 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 5a 27 3c 2f 73 70 61 6e 3e 20 3d 26 67 74 3b 20 63 20 | ss="tok-str">'Z'</span>.=>.c. |
| 49880 | 2d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 41 27 3c 2f 73 70 61 | -.<span.class="tok-str">'A'</spa |
| 498a0 | 6e 3e 20 2b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 | n>.+.<span.class="tok-number">10 |
| 498c0 | 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | </span>,.........<span.class="to |
| 498e0 | 6b 2d 73 74 72 22 3e 27 61 27 3c 2f 73 70 61 6e 3e 20 2e 2e 2e 20 3c 73 70 61 6e 20 63 6c 61 73 | k-str">'a'</span>.....<span.clas |
| 49900 | 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 7a 27 3c 2f 73 70 61 6e 3e 20 3d 26 67 74 3b 20 63 20 2d | s="tok-str">'z'</span>.=>.c.- |
| 49920 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 61 27 3c 2f 73 70 61 6e | .<span.class="tok-str">'a'</span |
| 49940 | 3e 20 2b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 3c | >.+.<span.class="tok-number">10< |
| 49960 | 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | /span>,.........<span.class="tok |
| 49980 | 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 3d 26 67 74 3b 20 6d 61 78 49 6e 74 28 3c 73 | -kw">else</span>.=>.maxInt(<s |
| 499a0 | 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 2c | pan.class="tok-type">u8</span>), |
| 499c0 | 0a 20 20 20 20 7d 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | .....};.}..<span.class="tok-kw"> |
| 499e0 | 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 |
| 49a00 | 22 3e 26 71 75 6f 74 3b 70 61 72 73 65 20 75 36 34 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b | ">"parse.u64"</span>.{ |
| 49a20 | 0a 20 20 20 20 3c 73 70 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< |
| 49a40 | 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 |
| 49a60 | 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 70 61 72 73 65 55 36 34 28 3c 73 70 61 6e 20 63 | -kw">try</span>.parseU64(<span.c |
| 49a80 | 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 74 3b 3c | lass="tok-str">"1234"< |
| 49aa0 | 2f 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" |
| 49ac0 | 3e 31 30 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 73 74 64 2e 74 65 73 74 69 6e 67 2e 65 78 70 | >10</span>);.....std.testing.exp |
| 49ae0 | 65 63 74 28 72 65 73 75 6c 74 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | ect(result.==.<span.class="tok-n |
| 49b00 | 75 6d 62 65 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 | umber">1234</span>);.}</code></p |
| 49b20 | 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 | re><pre><code.class="shell">$.zi |
| 49b40 | 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 31 2f 31 20 74 65 73 74 20 26 71 75 6f 74 3b 70 | g.test.test.zig.1/1.test."p |
| 49b60 | 61 72 73 65 20 75 36 34 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 | arse.u64"....OK.All.1.tests |
| 49b80 | 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 | .passed..</code></pre>........<p |
| 49ba0 | 3e 0a 20 20 20 20 20 20 4e 6f 74 69 63 65 20 74 68 65 20 72 65 74 75 72 6e 20 74 79 70 65 20 69 | >.......Notice.the.return.type.i |
| 49bc0 | 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 21 3c 73 70 61 6e 20 63 6c 61 73 73 | s.<code.class="zig">!<span.class |
| 49be0 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 36 34 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 20 54 | ="tok-type">u64</span></code>..T |
| 49c00 | 68 69 73 20 6d 65 61 6e 73 20 74 68 61 74 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 0a 20 20 20 20 | his.means.that.the.function..... |
| 49c20 | 20 20 65 69 74 68 65 72 20 72 65 74 75 72 6e 73 20 61 6e 20 75 6e 73 69 67 6e 65 64 20 36 34 20 | ..either.returns.an.unsigned.64. |
| 49c40 | 62 69 74 20 69 6e 74 65 67 65 72 2c 20 6f 72 20 61 6e 20 65 72 72 6f 72 2e 20 57 65 20 6c 65 66 | bit.integer,.or.an.error..We.lef |
| 49c60 | 74 20 6f 66 66 20 74 68 65 20 65 72 72 6f 72 20 73 65 74 0a 20 20 20 20 20 20 74 6f 20 74 68 65 | t.off.the.error.set.......to.the |
| 49c80 | 20 6c 65 66 74 20 6f 66 20 74 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 21 | .left.of.the.<code.class="zig">! |
| 49ca0 | 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 6e 66 | </code>,.so.the.error.set.is.inf |
| 49cc0 | 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 20 20 | erred........</p>.......<p>..... |
| 49ce0 | 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 6f 6e | ..Within.the.function.definition |
| 49d00 | 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 65 6d | ,.you.can.see.some.return.statem |
| 49d20 | 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 72 2c | ents.that.return.......an.error, |
| 49d40 | 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 61 74 | .and.at.the.bottom.a.return.stat |
| 49d60 | 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 20 63 6c 61 73 73 | ement.that.returns.a.<code.class |
| 49d80 | 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 36 | ="zig"><span.class="tok-type">u6 |
| 49da0 | 34 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 20 20 20 20 42 6f 74 68 20 | 4</span></code>............Both. |
| 49dc0 | 74 79 70 65 73 20 3c 61 20 68 72 65 66 3d 22 23 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 22 3e 63 | types.<a.href="#Type-Coercion">c |
| 49de0 | 6f 65 72 63 65 3c 2f 61 3e 20 74 6f 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c | oerce</a>.to.<code.class="zig">< |
| 49e00 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 61 6e 79 65 72 72 6f 72 3c 2f | span.class="tok-type">anyerror</ |
| 49e20 | 73 70 61 6e 3e 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 36 34 | span>!<span.class="tok-type">u64 |
| 49e40 | 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 | </span></code>........</p>...... |
| 49e60 | 20 3c 70 3e 0a 20 20 20 20 20 20 57 68 61 74 20 69 74 20 6c 6f 6f 6b 73 20 6c 69 6b 65 20 74 6f | .<p>.......What.it.looks.like.to |
| 49e80 | 20 75 73 65 20 74 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 76 61 72 69 65 73 20 64 65 70 65 6e 64 | .use.this.function.varies.depend |
| 49ea0 | 69 6e 67 20 6f 6e 20 77 68 61 74 20 79 6f 75 27 72 65 0a 20 20 20 20 20 20 74 72 79 69 6e 67 20 | ing.on.what.you're.......trying. |
| 49ec0 | 74 6f 20 64 6f 2e 20 4f 6e 65 20 6f 66 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 3a 0a 20 20 20 | to.do..One.of.the.following:.... |
| 49ee0 | 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 59 | ...</p>.......<ul>.........<li>Y |
| 49f00 | 6f 75 20 77 61 6e 74 20 74 6f 20 70 72 6f 76 69 64 65 20 61 20 64 65 66 61 75 6c 74 20 76 61 6c | ou.want.to.provide.a.default.val |
| 49f20 | 75 65 20 69 66 20 69 74 20 72 65 74 75 72 6e 65 64 20 61 6e 20 65 72 72 6f 72 2e 3c 2f 6c 69 3e | ue.if.it.returned.an.error.</li> |
| 49f40 | 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 49 66 20 69 74 20 72 65 74 75 72 6e 65 64 20 61 6e 20 65 | .........<li>If.it.returned.an.e |
| 49f60 | 72 72 6f 72 20 74 68 65 6e 20 79 6f 75 20 77 61 6e 74 20 74 6f 20 72 65 74 75 72 6e 20 74 68 65 | rror.then.you.want.to.return.the |
| 49f80 | 20 73 61 6d 65 20 65 72 72 6f 72 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 59 6f | .same.error.</li>.........<li>Yo |
| 49fa0 | 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 69 | u.know.with.complete.certainty.i |
| 49fc0 | 74 20 77 69 6c 6c 20 6e 6f 74 20 72 65 74 75 72 6e 20 61 6e 20 65 72 72 6f 72 2c 20 73 6f 20 77 | t.will.not.return.an.error,.so.w |
| 49fe0 | 61 6e 74 20 74 6f 20 75 6e 63 6f 6e 64 69 74 69 6f 6e 61 6c 6c 79 20 75 6e 77 72 61 70 20 69 74 | ant.to.unconditionally.unwrap.it |
| 4a000 | 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 59 6f 75 20 77 61 6e 74 20 74 6f 20 74 | .</li>.........<li>You.want.to.t |
| 4a020 | 61 6b 65 20 61 20 64 69 66 66 65 72 65 6e 74 20 61 63 74 69 6f 6e 20 66 6f 72 20 65 61 63 68 20 | ake.a.different.action.for.each. |
| 4a040 | 70 6f 73 73 69 62 6c 65 20 65 72 72 6f 72 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e | possible.error.</li>.......</ul> |
| 4a060 | 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 63 61 74 63 68 22 3e 3c 61 20 68 72 65 66 3d 22 23 | .......<h3.id="catch"><a.href="# |
| 4a080 | 74 6f 63 2d 63 61 74 63 68 22 3e 63 61 74 63 68 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 | toc-catch">catch</a>.<a.class="h |
| 4a0a0 | 64 72 22 20 68 72 65 66 3d 22 23 63 61 74 63 68 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 | dr".href="#catch">..</a></h3>... |
| 4a0c0 | 20 20 20 20 20 3c 70 3e 49 66 20 79 6f 75 20 77 61 6e 74 20 74 6f 20 70 72 6f 76 69 64 65 20 61 | .....<p>If.you.want.to.provide.a |
| 4a0e0 | 20 64 65 66 61 75 6c 74 20 76 61 6c 75 65 2c 20 79 6f 75 20 63 61 6e 20 75 73 65 20 74 68 65 20 | .default.value,.you.can.use.the. |
| 4a100 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | <code.class="zig"><span.class="t |
| 4a120 | 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 62 69 6e 61 72 | ok-kw">catch</span></code>.binar |
| 4a140 | 79 20 6f 70 65 72 61 74 6f 72 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 | y.operator:</p>.......<pre><code |
| 4a160 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | .class="zig"><span.class="tok-kw |
| 4a180 | 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" |
| 4a1a0 | 3e 64 6f 41 54 68 69 6e 67 3c 2f 73 70 61 6e 3e 28 73 74 72 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c | >doAThing</span>(str:.[]<span.cl |
| 4a1c0 | 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. |
| 4a1e0 | 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>.{.. |
| 4a200 | 20 20 20 3c 73 70 61 6e 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 |
| 4a220 | 70 61 6e 3e 20 6e 75 6d 62 65 72 20 3d 20 70 61 72 73 65 55 36 34 28 73 74 72 2c 20 3c 73 70 61 | pan>.number.=.parseU64(str,.<spa |
| 4a240 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 3c 2f 73 70 61 6e 3e 29 20 | n.class="tok-number">10</span>). |
| 4a260 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 61 74 63 68 3c 2f 73 70 61 6e | <span.class="tok-kw">catch</span |
| 4a280 | 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 33 3c 2f 73 | >.<span.class="tok-number">13</s |
| 4a2a0 | 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 | pan>;.....<span.class="tok-comme |
| 4a2c0 | 6e 74 22 3e 2f 2f 20 2e 2e 2e 3c 2f 73 70 61 6e 3e 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e | nt">//....</span>.}</code></pre> |
| 4a2e0 | 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 2c 20 3c | .......<p>.......In.this.code,.< |
| 4a300 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 6e 75 6d 62 65 72 3c 2f 63 6f 64 65 3e 20 77 | code.class="zig">number</code>.w |
| 4a320 | 69 6c 6c 20 62 65 20 65 71 75 61 6c 20 74 6f 20 74 68 65 20 73 75 63 63 65 73 73 66 75 6c 6c 79 | ill.be.equal.to.the.successfully |
| 4a340 | 20 70 61 72 73 65 64 20 73 74 72 69 6e 67 2c 20 6f 72 0a 20 20 20 20 20 20 20 20 20 20 61 20 64 | .parsed.string,.or...........a.d |
| 4a360 | 65 66 61 75 6c 74 20 76 61 6c 75 65 20 6f 66 20 31 33 2e 20 54 68 65 20 74 79 70 65 20 6f 66 20 | efault.value.of.13..The.type.of. |
| 4a380 | 74 68 65 20 72 69 67 68 74 20 68 61 6e 64 20 73 69 64 65 20 6f 66 20 74 68 65 20 62 69 6e 61 72 | the.right.hand.side.of.the.binar |
| 4a3a0 | 79 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | y.<code.class="zig"><span.class= |
| 4a3c0 | 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 6f 70 65 | "tok-kw">catch</span></code>.ope |
| 4a3e0 | 72 61 74 6f 72 20 6d 75 73 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 61 74 63 68 20 74 | rator.must...............match.t |
| 4a400 | 68 65 20 75 6e 77 72 61 70 70 65 64 20 65 72 72 6f 72 20 75 6e 69 6f 6e 20 74 79 70 65 2c 20 6f | he.unwrapped.error.union.type,.o |
| 4a420 | 72 20 62 65 20 6f 66 20 74 79 70 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c | r.be.of.type.<code.class="zig">< |
| 4a440 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 6e 6f 72 65 74 75 72 6e 3c 2f | span.class="tok-type">noreturn</ |
| 4a460 | 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 0a | span></code>........</p>........ |
| 4a480 | 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 74 72 79 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 | ......<h3.id="try"><a.href="#toc |
| 4a4a0 | 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 |
| 4a4c0 | 66 3d 22 23 74 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 4c | f="#try">..</a></h3>........<p>L |
| 4a4e0 | 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 |
| 4a500 | 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 |
| 4a520 | 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 |
| 4a540 | 6f 6e 20 6c 6f 67 69 63 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 | on.logic:</p>.......<pre><code.c |
| 4a560 | 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | lass="zig"><span.class="tok-kw"> |
| 4a580 | 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 64 | fn</span>.<span.class="tok-fn">d |
| 4a5a0 | 6f 41 54 68 69 6e 67 3c 2f 73 70 61 6e 3e 28 73 74 72 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 | oAThing</span>(str:.[]<span.clas |
| 4a5c0 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 20 21 3c 73 70 61 6e 20 63 | s="tok-type">u8</span>).!<span.c |
| 4a5e0 | 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>.{... |
| 4a600 | 20 20 3c 73 70 61 6e 20 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 |
| 4a620 | 61 6e 3e 20 6e 75 6d 62 65 72 20 3d 20 70 61 72 73 65 55 36 34 28 73 74 72 2c 20 3c 73 70 61 6e | an>.number.=.parseU64(str,.<span |
| 4a640 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 3c 2f 73 70 61 6e 3e 29 20 3c | .class="tok-number">10</span>).< |
| 4a660 | 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> |
| 4a680 | 20 7c 65 72 72 7c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 | .|err|.<span.class="tok-kw">retu |
| 4a6a0 | 72 6e 3c 2f 73 70 61 6e 3e 20 65 72 72 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | rn</span>.err;.....<span.class=" |
| 4a6c0 | 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 2e 2e 2e 3c 2f 73 70 61 6e 3e 0a 7d 3c 2f 63 6f | tok-comment">//....</span>.}</co |
| 4a6e0 | 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 65 72 65 20 | de></pre>.......<p>.......There. |
| 4a700 | 69 73 20 61 20 73 68 6f 72 74 63 75 74 20 66 6f 72 20 74 68 69 73 2e 20 54 68 65 20 3c 63 6f 64 | is.a.shortcut.for.this..The.<cod |
| 4a720 | 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | e.class="zig"><span.class="tok-k |
| 4a740 | 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 3a | w">try</span></code>.expression: |
| 4a760 | 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 | .......</p>.......<pre><code.cla |
| 4a780 | 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e | ss="zig"><span.class="tok-kw">fn |
| 4a7a0 | 3c 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 |
| 4a7c0 | 54 68 69 6e 67 3c 2f 73 70 61 6e 3e 28 73 74 72 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d | Thing</span>(str:.[]<span.class= |
| 4a7e0 | 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 20 21 3c 73 70 61 6e 20 63 6c 61 | "tok-type">u8</span>).!<span.cla |
| 4a800 | 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>.{..... |
| 4a820 | 3c 73 70 61 6e 20 63 6c 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 |
| 4a840 | 3e 20 6e 75 6d 62 65 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | >.number.=.<span.class="tok-kw"> |
| 4a860 | 74 72 79 3c 2f 73 70 61 6e 3e 20 70 61 72 73 65 55 36 34 28 73 74 72 2c 20 3c 73 70 61 6e 20 63 | try</span>.parseU64(str,.<span.c |
| 4a880 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 | lass="tok-number">10</span>);... |
| 4a8a0 | 20 20 3c 73 70 61 6e 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 | ..<span.class="tok-comment">//.. |
| 4a8c0 | 2e 2e 3c 2f 73 70 61 6e 3e 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c | ..</span>.}</code></pre>.......< |
| 4a8e0 | 70 3e 0a 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e | p>.......<code.class="zig"><span |
| 4a900 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 | .class="tok-kw">try</span></code |
| 4a920 | 3e 20 65 76 61 6c 75 61 74 65 73 20 61 6e 20 65 72 72 6f 72 20 75 6e 69 6f 6e 20 65 78 70 72 65 | >.evaluates.an.error.union.expre |
| 4a940 | 73 73 69 6f 6e 2e 20 49 66 20 69 74 20 69 73 20 61 6e 20 65 72 72 6f 72 2c 20 69 74 20 72 65 74 | ssion..If.it.is.an.error,.it.ret |
| 4a960 | 75 72 6e 73 0a 20 20 20 20 20 20 66 72 6f 6d 20 74 68 65 20 63 75 72 72 65 6e 74 20 66 75 6e 63 | urns.......from.the.current.func |
| 4a980 | 74 69 6f 6e 20 77 69 74 68 20 74 68 65 20 73 61 6d 65 20 65 72 72 6f 72 2e 20 4f 74 68 65 72 77 | tion.with.the.same.error..Otherw |
| 4a9a0 | 69 73 65 2c 20 74 68 65 20 65 78 70 72 65 73 73 69 6f 6e 20 72 65 73 75 6c 74 73 20 69 6e 0a 20 | ise,.the.expression.results.in.. |
| 4a9c0 | 20 20 20 20 20 74 68 65 20 75 6e 77 72 61 70 70 65 64 20 76 61 6c 75 65 2e 0a 20 20 20 20 20 20 | .....the.unwrapped.value........ |
| 4a9e0 | 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 20 20 4d 61 | </p>..............<p>.........Ma |
| 4aa00 | 79 62 65 20 79 6f 75 20 6b 6e 6f 77 20 77 69 74 68 20 63 6f 6d 70 6c 65 74 65 20 63 65 72 74 61 | ybe.you.know.with.complete.certa |
| 4aa20 | 69 6e 74 79 20 74 68 61 74 20 61 6e 20 65 78 70 72 65 73 73 69 6f 6e 20 77 69 6c 6c 20 6e 65 76 | inty.that.an.expression.will.nev |
| 4aa40 | 65 72 20 62 65 20 61 6e 20 65 72 72 6f 72 2e 0a 20 20 20 20 20 20 20 20 49 6e 20 74 68 69 73 20 | er.be.an.error..........In.this. |
| 4aa60 | 63 61 73 65 20 79 6f 75 20 63 61 6e 20 64 6f 20 74 68 69 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e | case.you.can.do.this:.......</p> |
| 4aa80 | 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 | .......<pre><code.class="zig"><s |
| 4aaa0 | 70 61 6e 20 63 6c 61 73 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>. |
| 4aac0 | 6e 75 6d 62 65 72 20 3d 20 70 61 72 73 65 55 36 34 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | number.=.parseU64(<span.class="t |
| 4aae0 | 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 31 32 33 34 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c | ok-str">"1234"</span>, |
| 4ab00 | 20 3c 73 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 |
| 4ab20 | 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 61 74 63 68 3c | an>).<span.class="tok-kw">catch< |
| 4ab40 | 2f 73 70 61 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 | /span>.<span.class="tok-kw">unre |
| 4ab60 | 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 3b 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 | achable</span>;</code></pre>.... |
| 4ab80 | 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 72 20 73 75 | ...<p>.......Here.we.know.for.su |
| 4aba0 | 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 63 63 65 73 | re.that."1234".will.parse.succes |
| 4abc0 | 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 3c 63 6f 64 | sfully..So.we.put.the.......<cod |
| 4abe0 | 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | e.class="zig"><span.class="tok-k |
| 4ac00 | 77 22 3e 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 76 61 6c | w">unreachable</span></code>.val |
| 4ac20 | 75 65 20 6f 6e 20 74 68 65 20 72 69 67 68 74 20 68 61 6e 64 20 73 69 64 65 2e 20 3c 63 6f 64 65 | ue.on.the.right.hand.side..<code |
| 4ac40 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | .class="zig"><span.class="tok-kw |
| 4ac60 | 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 67 65 6e 65 | ">unreachable</span></code>.gene |
| 4ac80 | 72 61 74 65 73 0a 20 20 20 20 20 20 61 20 70 61 6e 69 63 20 69 6e 20 44 65 62 75 67 20 61 6e 64 | rates.......a.panic.in.Debug.and |
| 4aca0 | 20 52 65 6c 65 61 73 65 53 61 66 65 20 6d 6f 64 65 73 20 61 6e 64 20 75 6e 64 65 66 69 6e 65 64 | .ReleaseSafe.modes.and.undefined |
| 4acc0 | 20 62 65 68 61 76 69 6f 72 20 69 6e 20 52 65 6c 65 61 73 65 46 61 73 74 20 6d 6f 64 65 2e 20 53 | .behavior.in.ReleaseFast.mode..S |
| 4ace0 | 6f 2c 20 77 68 69 6c 65 20 77 65 27 72 65 20 64 65 62 75 67 67 69 6e 67 20 74 68 65 0a 20 20 20 | o,.while.we're.debugging.the.... |
| 4ad00 | 20 20 20 61 70 70 6c 69 63 61 74 69 6f 6e 2c 20 69 66 20 74 68 65 72 65 20 3c 65 6d 3e 77 61 73 | ...application,.if.there.<em>was |
| 4ad20 | 3c 2f 65 6d 3e 20 61 20 73 75 72 70 72 69 73 65 20 65 72 72 6f 72 20 68 65 72 65 2c 20 74 68 65 | </em>.a.surprise.error.here,.the |
| 4ad40 | 20 61 70 70 6c 69 63 61 74 69 6f 6e 20 77 6f 75 6c 64 20 63 72 61 73 68 0a 20 20 20 20 20 20 61 | .application.would.crash.......a |
| 4ad60 | 70 70 72 6f 70 72 69 61 74 65 6c 79 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c | ppropriately........</p>.......< |
| 4ad80 | 70 3e 0a 20 20 20 20 20 20 46 69 6e 61 6c 6c 79 2c 20 79 6f 75 20 6d 61 79 20 77 61 6e 74 20 74 | p>.......Finally,.you.may.want.t |
| 4ada0 | 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 66 6f 72 20 65 76 | o.take.a.different.action.for.ev |
| 4adc0 | 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 65 20 63 6f 6d 62 | ery.situation..For.that,.we.comb |
| 4ade0 | 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 22 3e 69 66 3c 2f | ine.......the.<a.href="#if">if</ |
| 4ae00 | 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 77 69 74 63 68 3c | a>.and.<a.href="#switch">switch< |
| 4ae20 | 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 0a 20 20 20 20 20 | /a>.expression:.......</p>...... |
| 4ae40 | 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c | .<pre><code.class="zig"><span.cl |
| 4ae60 | 61 73 73 3d 22 74 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 |
| 4ae80 | 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 72 3a | ss="tok-fn">doAThing</span>(str: |
| 4aea0 | 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 |
| 4aec0 | 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 | an>).<span.class="tok-type">void |
| 4aee0 | 3c 2f 73 70 61 6e 3e 20 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 |
| 4af00 | 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 73 70 61 | w">if</span>.(parseU64(str,.<spa |
| 4af20 | 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 29 | n.class="tok-number">10</span>)) |
| 4af40 | 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 6e 67 57 | .|number|.{.........doSomethingW |
| 4af60 | 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 6e 20 63 | ithNumber(number);.....}.<span.c |
| 4af80 | 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 20 | lass="tok-kw">else</span>.|err|. |
| 4afa0 | 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 |
| 4afc0 | 6e 3e 20 28 65 72 72 29 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | n>.(err).{.........<span.class=" |
| 4afe0 | 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 20 3d 26 | tok-kw">error</span>.Overflow.=& |
| 4b000 | 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 22 74 | gt;.{.............<span.class="t |
| 4b020 | 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 77 2e 2e | ok-comment">//.handle.overflow.. |
| 4b040 | 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 73 70 61 | .</span>.........},.........<spa |
| 4b060 | 6e 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 72 6f 6d | n.class="tok-comment">//.we.prom |
| 4b080 | 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 70 70 65 | ise.that.InvalidChar.won't.happe |
| 4b0a0 | 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 69 74 20 | n.(or.crash.in.debug.mode.if.it. |
| 4b0c0 | 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 61 73 73 | does)</span>.........<span.class |
| 4b0e0 | 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 64 43 68 | ="tok-kw">error</span>.InvalidCh |
| 4b100 | 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 3e 75 6e | ar.=>.<span.class="tok-kw">un |
| 4b120 | 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 64 65 3e | reachable</span>,.....}.}</code> |
| 4b140 | 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 65 72 72 64 65 66 65 72 22 3e 3c | </pre>.......<h3.id="errdefer">< |
| 4b160 | 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 66 65 72 3c | a.href="#toc-errdefer">errdefer< |
| 4b180 | 2f 61 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 64 65 66 | /a>.<a.class="hdr".href="#errdef |
| 4b1a0 | 65 72 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 | er">..</a></h3>........<p>...... |
| 4b1c0 | 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 72 20 68 61 | .The.other.component.to.error.ha |
| 4b1e0 | 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 20 20 20 20 | ndling.is.defer.statements...... |
| 4b200 | 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 69 6f 6e 61 | ..In.addition.to.an.unconditiona |
| 4b220 | 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 2c 20 5a 69 | l.<a.href="#defer">defer</a>,.Zi |
| 4b240 | 67 20 68 61 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c | g.has.<code.class="zig"><span.cl |
| 4b260 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 64 65 66 65 72 3c 2f 73 70 61 6e 3e 3c 2f 63 6f | ass="tok-kw">errdefer</span></co |
| 4b280 | 64 65 3e 2c 0a 20 20 20 20 20 20 77 68 69 63 68 20 65 76 61 6c 75 61 74 65 73 20 74 68 65 20 64 | de>,.......which.evaluates.the.d |
| 4b2a0 | 65 66 65 72 72 65 64 20 65 78 70 72 65 73 73 69 6f 6e 20 6f 6e 20 62 6c 6f 63 6b 20 65 78 69 74 | eferred.expression.on.block.exit |
| 4b2c0 | 20 70 61 74 68 20 69 66 20 61 6e 64 20 6f 6e 6c 79 20 69 66 0a 20 20 20 20 20 20 74 68 65 20 66 | .path.if.and.only.if.......the.f |
| 4b2e0 | 75 6e 63 74 69 6f 6e 20 72 65 74 75 72 6e 65 64 20 77 69 74 68 20 61 6e 20 65 72 72 6f 72 20 66 | unction.returned.with.an.error.f |
| 4b300 | 72 6f 6d 20 74 68 65 20 62 6c 6f 63 6b 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 | rom.the.block........</p>....... |
| 4b320 | 3c 70 3e 0a 20 20 20 20 20 20 45 78 61 6d 70 6c 65 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 | <p>.......Example:.......</p>... |
| 4b340 | 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e | ....<pre><code.class="zig"><span |
| 4b360 | 20 63 6c 61 73 73 3d 22 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. |
| 4b380 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 63 72 65 61 74 65 46 6f 6f 3c 2f 73 70 61 6e 3e 28 | class="tok-fn">createFoo</span>( |
| 4b3a0 | 70 61 72 61 6d 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 | param:.<span.class="tok-type">i3 |
| 4b3c0 | 32 3c 2f 73 70 61 6e 3e 29 20 21 46 6f 6f 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | 2</span>).!Foo.{.....<span.class |
| 4b3e0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 66 6f 6f 20 3d 20 3c 73 70 | ="tok-kw">const</span>.foo.=.<sp |
| 4b400 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 74 72 79 | an.class="tok-kw">try</span>.try |
| 4b420 | 54 6f 41 6c 6c 6f 63 61 74 65 46 6f 6f 28 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ToAllocateFoo();.....<span.class |
| 4b440 | 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 6e 6f 77 20 77 65 20 68 61 76 65 20 61 6c | ="tok-comment">//.now.we.have.al |
| 4b460 | 6c 6f 63 61 74 65 64 20 66 6f 6f 2e 20 77 65 20 6e 65 65 64 20 74 6f 20 66 72 65 65 20 69 74 20 | located.foo..we.need.to.free.it. |
| 4b480 | 69 66 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 66 61 69 6c 73 2e 3c 2f 73 70 61 6e 3e 0a 20 20 | if.the.function.fails.</span>... |
| 4b4a0 | 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 62 | ..<span.class="tok-comment">//.b |
| 4b4c0 | 75 74 20 77 65 20 77 61 6e 74 20 74 6f 20 72 65 74 75 72 6e 20 69 74 20 69 66 20 74 68 65 20 66 | ut.we.want.to.return.it.if.the.f |
| 4b4e0 | 75 6e 63 74 69 6f 6e 20 73 75 63 63 65 65 64 73 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 | unction.succeeds.</span>.....<sp |
| 4b500 | 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 |
| 4b520 | 3e 20 64 65 61 6c 6c 6f 63 61 74 65 46 6f 6f 28 66 6f 6f 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e | >.deallocateFoo(foo);......<span |
| 4b540 | 20 63 6c 61 73 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 6d 70 | .class="tok-kw">const</span>.tmp |
| 4b560 | 5f 62 75 66 20 3d 20 61 6c 6c 6f 63 61 74 65 54 6d 70 42 75 66 66 65 72 28 29 20 3c 73 70 61 6e | _buf.=.allocateTmpBuffer().<span |
| 4b580 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 6f 72 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 3c 73 | .class="tok-kw">orelse</span>.<s |
| 4b5a0 | 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> |
| 4b5c0 | 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 |
| 4b5e0 | 6e 3e 2e 4f 75 74 4f 66 4d 65 6d 6f 72 79 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | n>.OutOfMemory;.....<span.class= |
| 4b600 | 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 74 6d 70 5f 62 75 66 20 69 73 20 74 72 75 6c | "tok-comment">//.tmp_buf.is.trul |
| 4b620 | 79 20 61 20 74 65 6d 70 6f 72 61 72 79 20 72 65 73 6f 75 72 63 65 2c 20 61 6e 64 20 77 65 20 66 | y.a.temporary.resource,.and.we.f |
| 4b640 | 6f 72 20 73 75 72 65 20 77 61 6e 74 20 74 6f 20 63 6c 65 61 6e 20 69 74 20 75 70 3c 2f 73 70 61 | or.sure.want.to.clean.it.up</spa |
| 4b660 | 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" |
| 4b680 | 3e 2f 2f 20 62 65 66 6f 72 65 20 74 68 69 73 20 62 6c 6f 63 6b 20 6c 65 61 76 65 73 20 73 63 6f | >//.before.this.block.leaves.sco |
| 4b6a0 | 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 2d 6b | pe</span>.....<span.class="tok-k |
| 4b6c0 | 77 22 3e 64 65 66 65 72 3c 2f 73 70 61 6e 3e 20 64 65 61 6c 6c 6f 63 61 74 65 54 6d 70 42 75 66 | w">defer</span>.deallocateTmpBuf |
| 4b6e0 | 66 65 72 28 74 6d 70 5f 62 75 66 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | fer(tmp_buf);......<span.class=" |
| 4b700 | 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 70 61 72 61 6d 20 26 67 74 3b 20 3c 73 | tok-kw">if</span>.(param.>.<s |
| 4b720 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 33 33 37 3c 2f 73 70 61 | pan.class="tok-number">1337</spa |
| 4b740 | 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c | n>).<span.class="tok-kw">return< |
| 4b760 | 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f | /span>.<span.class="tok-kw">erro |
| 4b780 | 72 3c 2f 73 70 61 6e 3e 2e 49 6e 76 61 6c 69 64 50 61 72 61 6d 3b 0a 0a 20 20 20 20 3c 73 70 61 | r</span>.InvalidParam;......<spa |
| 4b7a0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 68 65 72 65 20 74 68 | n.class="tok-comment">//.here.th |
| 4b7c0 | 65 20 65 72 72 64 65 66 65 72 20 77 69 6c 6c 20 6e 6f 74 20 72 75 6e 20 73 69 6e 63 65 20 77 65 | e.errdefer.will.not.run.since.we |
| 4b7e0 | 27 72 65 20 72 65 74 75 72 6e 69 6e 67 20 73 75 63 63 65 73 73 20 66 72 6f 6d 20 74 68 65 20 66 | 're.returning.success.from.the.f |
| 4b800 | 75 6e 63 74 69 6f 6e 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | unction.</span>.....<span.class= |
| 4b820 | 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 64 65 66 65 72 20 77 | "tok-comment">//.but.the.defer.w |
| 4b840 | 69 6c 6c 20 72 75 6e 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 | ill.run!</span>.....<span.class= |
| 4b860 | 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 66 6f 6f 3b 0a 7d 3c 2f 63 | "tok-kw">return</span>.foo;.}</c |
| 4b880 | 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 65 20 6e | ode></pre>.......<p>.......The.n |
| 4b8a0 | 65 61 74 20 74 68 69 6e 67 20 61 62 6f 75 74 20 74 68 69 73 20 69 73 20 74 68 61 74 20 79 6f 75 | eat.thing.about.this.is.that.you |
| 4b8c0 | 20 67 65 74 20 72 6f 62 75 73 74 20 65 72 72 6f 72 20 68 61 6e 64 6c 69 6e 67 20 77 69 74 68 6f | .get.robust.error.handling.witho |
| 4b8e0 | 75 74 0a 20 20 20 20 20 20 74 68 65 20 76 65 72 62 6f 73 69 74 79 20 61 6e 64 20 63 6f 67 6e 69 | ut.......the.verbosity.and.cogni |
| 4b900 | 74 69 76 65 20 6f 76 65 72 68 65 61 64 20 6f 66 20 74 72 79 69 6e 67 20 74 6f 20 6d 61 6b 65 20 | tive.overhead.of.trying.to.make. |
| 4b920 | 73 75 72 65 20 65 76 65 72 79 20 65 78 69 74 20 70 61 74 68 0a 20 20 20 20 20 20 69 73 20 63 6f | sure.every.exit.path.......is.co |
| 4b940 | 76 65 72 65 64 2e 20 54 68 65 20 64 65 61 6c 6c 6f 63 61 74 69 6f 6e 20 63 6f 64 65 20 69 73 20 | vered..The.deallocation.code.is. |
| 4b960 | 61 6c 77 61 79 73 20 64 69 72 65 63 74 6c 79 20 66 6f 6c 6c 6f 77 69 6e 67 20 74 68 65 20 61 6c | always.directly.following.the.al |
| 4b980 | 6c 6f 63 61 74 69 6f 6e 20 63 6f 64 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 | location.code........</p>....... |
| 4b9a0 | 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 41 20 63 6f 75 70 6c 65 20 6f 66 20 6f 74 68 | .......<p>.......A.couple.of.oth |
| 4b9c0 | 65 72 20 74 69 64 62 69 74 73 20 61 62 6f 75 74 20 65 72 72 6f 72 20 68 61 6e 64 6c 69 6e 67 3a | er.tidbits.about.error.handling: |
| 4b9e0 | 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>.........< |
| 4ba00 | 6c 69 3e 54 68 65 73 65 20 70 72 69 6d 69 74 69 76 65 73 20 67 69 76 65 20 65 6e 6f 75 67 68 20 | li>These.primitives.give.enough. |
| 4ba20 | 65 78 70 72 65 73 73 69 76 65 6e 65 73 73 20 74 68 61 74 20 69 74 27 73 20 63 6f 6d 70 6c 65 74 | expressiveness.that.it's.complet |
| 4ba40 | 65 6c 79 20 70 72 61 63 74 69 63 61 6c 0a 20 20 20 20 20 20 20 20 20 20 20 20 74 6f 20 68 61 76 | ely.practical.............to.hav |
| 4ba60 | 65 20 66 61 69 6c 69 6e 67 20 74 6f 20 63 68 65 63 6b 20 66 6f 72 20 61 6e 20 65 72 72 6f 72 20 | e.failing.to.check.for.an.error. |
| 4ba80 | 62 65 20 61 20 63 6f 6d 70 69 6c 65 20 65 72 72 6f 72 2e 20 49 66 20 79 6f 75 20 72 65 61 6c 6c | be.a.compile.error..If.you.reall |
| 4baa0 | 79 20 77 61 6e 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 74 6f 20 69 67 6e 6f 72 65 20 74 68 65 | y.want.............to.ignore.the |
| 4bac0 | 20 65 72 72 6f 72 2c 20 79 6f 75 20 63 61 6e 20 61 64 64 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d | .error,.you.can.add.<code.class= |
| 4bae0 | 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 61 74 63 68 | "zig"><span.class="tok-kw">catch |
| 4bb00 | 3c 2f 73 70 61 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 | </span>.<span.class="tok-kw">unr |
| 4bb20 | 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 61 6e 64 0a 20 20 20 20 20 | eachable</span></code>.and...... |
| 4bb40 | 20 20 20 20 20 20 20 67 65 74 20 74 68 65 20 61 64 64 65 64 20 62 65 6e 65 66 69 74 20 6f 66 20 | .......get.the.added.benefit.of. |
| 4bb60 | 63 72 61 73 68 69 6e 67 20 69 6e 20 44 65 62 75 67 20 61 6e 64 20 52 65 6c 65 61 73 65 53 61 66 | crashing.in.Debug.and.ReleaseSaf |
| 4bb80 | 65 20 6d 6f 64 65 73 20 69 66 20 79 6f 75 72 20 61 73 73 75 6d 70 74 69 6f 6e 20 77 61 73 20 77 | e.modes.if.your.assumption.was.w |
| 4bba0 | 72 6f 6e 67 2e 0a 20 20 20 20 20 20 20 20 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e | rong..........</li>.........<li> |
| 4bbc0 | 0a 20 20 20 20 20 20 20 20 20 20 53 69 6e 63 65 20 5a 69 67 20 75 6e 64 65 72 73 74 61 6e 64 73 | ...........Since.Zig.understands |
| 4bbe0 | 20 65 72 72 6f 72 20 74 79 70 65 73 2c 20 69 74 20 63 61 6e 20 70 72 65 2d 77 65 69 67 68 74 20 | .error.types,.it.can.pre-weight. |
| 4bc00 | 62 72 61 6e 63 68 65 73 20 69 6e 20 66 61 76 6f 72 20 6f 66 0a 20 20 20 20 20 20 20 20 20 20 65 | branches.in.favor.of...........e |
| 4bc20 | 72 72 6f 72 73 20 6e 6f 74 20 6f 63 63 75 72 72 69 6e 67 2e 20 4a 75 73 74 20 61 20 73 6d 61 6c | rrors.not.occurring..Just.a.smal |
| 4bc40 | 6c 20 6f 70 74 69 6d 69 7a 61 74 69 6f 6e 20 62 65 6e 65 66 69 74 20 74 68 61 74 20 69 73 20 6e | l.optimization.benefit.that.is.n |
| 4bc60 | 6f 74 20 61 76 61 69 6c 61 62 6c 65 0a 20 20 20 20 20 20 20 20 20 20 69 6e 20 6f 74 68 65 72 20 | ot.available...........in.other. |
| 4bc80 | 6c 61 6e 67 75 61 67 65 73 2e 0a 20 20 20 20 20 20 20 20 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c | languages..........</li>.......< |
| 4bca0 | 2f 75 6c 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a | /ul>.......<p>See.also:</p><ul>. |
| 4bcc0 | 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 64 65 66 65 72 22 3e 64 65 66 65 72 3c 2f 61 3e 3c 2f | <li><a.href="#defer">defer</a></ |
| 4bce0 | 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 69 66 22 3e 69 66 3c 2f 61 3e 3c 2f 6c 69 | li>.<li><a.href="#if">if</a></li |
| 4bd00 | 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 73 77 69 74 63 68 22 3e 73 77 69 74 63 68 3c 2f | >.<li><a.href="#switch">switch</ |
| 4bd20 | 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 0a 20 20 20 20 20 20 3c 70 3e 41 6e 20 65 72 72 6f | a></li>.</ul>.........<p>An.erro |
| 4bd40 | 72 20 75 6e 69 6f 6e 20 69 73 20 63 72 65 61 74 65 64 20 77 69 74 68 20 74 68 65 20 3c 63 6f 64 | r.union.is.created.with.the.<cod |
| 4bd60 | 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 21 3c 2f 63 6f 64 65 3e 20 62 69 6e 61 72 79 20 6f 70 | e.class="zig">!</code>.binary.op |
| 4bd80 | 65 72 61 74 6f 72 2e 0a 20 20 20 20 20 20 59 6f 75 20 63 61 6e 20 75 73 65 20 63 6f 6d 70 69 6c | erator........You.can.use.compil |
| 4bda0 | 65 2d 74 69 6d 65 20 72 65 66 6c 65 63 74 69 6f 6e 20 74 6f 20 61 63 63 65 73 73 20 74 68 65 20 | e-time.reflection.to.access.the. |
| 4bdc0 | 63 68 69 6c 64 20 74 79 70 65 20 6f 66 20 61 6e 20 65 72 72 6f 72 20 75 6e 69 6f 6e 3a 3c 2f 70 | child.type.of.an.error.union:</p |
| 4bde0 | 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 | >.......<p.class="file">test.zig |
| 4be00 | 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e | </p><pre><code.class="zig"><span |
| 4be20 | 20 63 6c 61 73 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 |
| 4be40 | 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"> |
| 4be60 | 40 69 6d 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- |
| 4be80 | 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 |
| 4bea0 | 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 |
| 4bec0 | 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- |
| 4bee0 | 73 74 72 22 3e 26 71 75 6f 74 3b 65 72 72 6f 72 20 75 6e 69 6f 6e 26 71 75 6f 74 3b 3c 2f 73 70 | str">"error.union"</sp |
| 4bf00 | 61 6e 3e 20 7b 0a 20 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 |
| 4bf20 | 61 72 3c 2f 73 70 61 6e 3e 20 66 6f 6f 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ar</span>.foo:.<span.class="tok- |
| 4bf40 | 74 79 70 65 22 3e 61 6e 79 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 21 3c 73 70 61 6e 20 63 6c 61 73 | type">anyerror</span>!<span.clas |
| 4bf60 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 | s="tok-type">i32</span>.=.<span. |
| 4bf80 | 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 |
| 4bfa0 | 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 |
| 4bfc0 | 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 |
| 4bfe0 | 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 66 6f 6f 20 3d 20 | n.error.union:</span>.....foo.=. |
| 4c000 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 34 3c 2f 73 | <span.class="tok-number">1234</s |
| 4c020 | 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 6d | pan>;......<span.class="tok-comm |
| 4c040 | 65 6e 74 22 3e 2f 2f 20 43 6f 65 72 63 65 20 66 72 6f 6d 20 61 6e 20 65 72 72 6f 72 20 73 65 74 | ent">//.Coerce.from.an.error.set |
| 4c060 | 3a 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 66 6f 6f 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | :</span>.....foo.=.<span.class=" |
| 4c080 | 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 53 6f 6d 65 45 72 72 6f 72 3b 0a | tok-kw">error</span>.SomeError;. |
| 4c0a0 | 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">/ |
| 4c0c0 | 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 |
| 4c0e0 | 20 61 63 63 65 73 73 20 74 68 65 20 70 61 79 6c 6f 61 64 20 74 79 70 65 20 6f 66 20 61 6e 20 65 | .access.the.payload.type.of.an.e |
| 4c100 | 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 6c 61 | rror.union:</span>.....<span.cla |
| 4c120 | 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 |
| 4c140 | 63 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 74 79 | ct(<span.class="tok-builtin">@ty |
| 4c160 | 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 |
| 4c180 | 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 45 72 72 | uiltin">@TypeOf</span>(foo)).Err |
| 4c1a0 | 6f 72 55 6e 69 6f 6e 2e 70 61 79 6c 6f 61 64 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | orUnion.payload.==.<span.class=" |
| 4c1c0 | 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 20 20 20 20 3c 73 70 61 | tok-type">i32</span>);......<spa |
| 4c1e0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 55 73 65 20 63 6f 6d | n.class="tok-comment">//.Use.com |
| 4c200 | 70 69 6c 65 2d 74 69 6d 65 20 72 65 66 6c 65 63 74 69 6f 6e 20 74 6f 20 61 63 63 65 73 73 20 74 | pile-time.reflection.to.access.t |
| 4c220 | 68 65 20 65 72 72 6f 72 20 73 65 74 20 74 79 70 65 20 6f 66 20 61 6e 20 65 72 72 6f 72 20 75 6e | he.error.set.type.of.an.error.un |
| 4c240 | 69 6f 6e 3a 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ion:</span>.....<span.class="tok |
| 4c260 | 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 3c 73 70 61 | -kw">comptime</span>.expect(<spa |
| 4c280 | 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< |
| 4c2a0 | 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 22 | /span>(<span.class="tok-builtin" |
| 4c2c0 | 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 66 6f 6f 29 29 2e 45 72 72 6f 72 55 6e 69 6f 6e | >@TypeOf</span>(foo)).ErrorUnion |
| 4c2e0 | 2e 65 72 72 6f 72 5f 73 65 74 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | .error_set.==.<span.class="tok-t |
| 4c300 | 79 70 65 22 3e 61 6e 79 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c | ype">anyerror</span>);.}</code>< |
| 4c320 | 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 | /pre><pre><code.class="shell">$. |
| 4c340 | 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 31 2f 31 20 74 65 73 74 20 26 71 75 6f 74 | zig.test.test.zig.1/1.test." |
| 4c360 | 3b 65 72 72 6f 72 20 75 6e 69 6f 6e 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 41 6c 6c 20 31 20 74 | ;error.union"....OK.All.1.t |
| 4c380 | 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 | ests.passed..</code></pre>...... |
| 4c3a0 | 20 20 3c 68 33 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 61 | ..<h3.id="Merging-Error-Sets"><a |
| 4c3c0 | 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 3e | .href="#toc-Merging-Error-Sets"> |
| 4c3e0 | 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 3d | Merging.Error.Sets</a>.<a.class= |
| 4c400 | 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 22 | "hdr".href="#Merging-Error-Sets" |
| 4c420 | 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 55 73 | >..</a></h3>........<p>.......Us |
| 4c440 | 65 20 74 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 7c 7c 3c 2f 63 6f 64 65 | e.the.<code.class="zig">||</code |
| 4c460 | 3e 20 6f 70 65 72 61 74 6f 72 20 74 6f 20 6d 65 72 67 65 20 74 77 6f 20 65 72 72 6f 72 20 73 65 | >.operator.to.merge.two.error.se |
| 4c480 | 74 73 20 74 6f 67 65 74 68 65 72 2e 20 54 68 65 20 72 65 73 75 6c 74 69 6e 67 0a 20 20 20 20 20 | ts.together..The.resulting...... |
| 4c4a0 | 20 65 72 72 6f 72 20 73 65 74 20 63 6f 6e 74 61 69 6e 73 20 74 68 65 20 65 72 72 6f 72 73 20 6f | .error.set.contains.the.errors.o |
| 4c4c0 | 66 20 62 6f 74 68 20 65 72 72 6f 72 20 73 65 74 73 2e 20 44 6f 63 20 63 6f 6d 6d 65 6e 74 73 20 | f.both.error.sets..Doc.comments. |
| 4c4e0 | 66 72 6f 6d 20 74 68 65 20 6c 65 66 74 2d 68 61 6e 64 0a 20 20 20 20 20 20 73 69 64 65 20 6f 76 | from.the.left-hand.......side.ov |
| 4c500 | 65 72 72 69 64 65 20 64 6f 63 20 63 6f 6d 6d 65 6e 74 73 20 66 72 6f 6d 20 74 68 65 20 72 69 67 | erride.doc.comments.from.the.rig |
| 4c520 | 68 74 2d 68 61 6e 64 20 73 69 64 65 2e 20 49 6e 20 74 68 69 73 20 65 78 61 6d 70 6c 65 2c 20 74 | ht-hand.side..In.this.example,.t |
| 4c540 | 68 65 20 64 6f 63 0a 20 20 20 20 20 20 63 6f 6d 6d 65 6e 74 73 20 66 6f 72 20 3c 63 6f 64 65 20 | he.doc.......comments.for.<code. |
| 4c560 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 43 2e 50 61 74 68 4e 6f 74 46 6f 75 6e 64 3c 2f 63 6f 64 65 | class="zig">C.PathNotFound</code |
| 4c580 | 3e 20 69 73 20 3c 63 6f 64 65 3e 41 20 64 6f 63 20 63 6f 6d 6d 65 6e 74 3c 2f 63 6f 64 65 3e 2e | >.is.<code>A.doc.comment</code>. |
| 4c5a0 | 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 | .......</p>.......<p>.......This |
| 4c5c0 | 20 69 73 20 65 73 70 65 63 69 61 6c 6c 79 20 75 73 65 66 75 6c 20 66 6f 72 20 66 75 6e 63 74 69 | .is.especially.useful.for.functi |
| 4c5e0 | 6f 6e 73 20 77 68 69 63 68 20 72 65 74 75 72 6e 20 64 69 66 66 65 72 65 6e 74 20 65 72 72 6f 72 | ons.which.return.different.error |
| 4c600 | 20 73 65 74 73 20 64 65 70 65 6e 64 69 6e 67 0a 20 20 20 20 20 20 6f 6e 20 3c 61 20 68 72 65 66 | .sets.depending.......on.<a.href |
| 4c620 | 3d 22 23 63 6f 6d 70 74 69 6d 65 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 61 3e 20 62 72 61 6e 63 68 | ="#comptime">comptime</a>.branch |
| 4c640 | 65 73 2e 20 46 6f 72 20 65 78 61 6d 70 6c 65 2c 20 74 68 65 20 5a 69 67 20 73 74 61 6e 64 61 72 | es..For.example,.the.Zig.standar |
| 4c660 | 64 20 6c 69 62 72 61 72 79 20 75 73 65 73 0a 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 | d.library.uses.......<code.class |
| 4c680 | 3d 22 7a 69 67 22 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 | ="zig">LinuxFileOpenError.||.Win |
| 4c6a0 | 64 6f 77 73 46 69 6c 65 4f 70 65 6e 45 72 72 6f 72 3c 2f 63 6f 64 65 3e 20 66 6f 72 20 74 68 65 | dowsFileOpenError</code>.for.the |
| 4c6c0 | 20 65 72 72 6f 72 20 73 65 74 20 6f 66 20 6f 70 65 6e 69 6e 67 0a 20 20 20 20 20 20 66 69 6c 65 | .error.set.of.opening.......file |
| 4c6e0 | 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 | s........</p>.......<p.class="fi |
| 4c700 | 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 | le">test.zig</p><pre><code.class |
| 4c720 | 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 | ="zig"><span.class="tok-kw">cons |
| 4c740 | 74 3c 2f 73 70 61 6e 3e 20 41 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | t</span>.A.=.<span.class="tok-kw |
| 4c760 | 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 7b 0a 20 20 20 20 4e 6f 74 44 69 72 2c 0a 0a 20 20 20 | ">error</span>{.....NotDir,..... |
| 4c780 | 20 3c 73 70 61 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 | .<span.class="tok-comment">///.A |
| 4c7a0 | 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 74 46 | .doc.comment</span>.....PathNotF |
| 4c7c0 | 6f 75 6e 64 2c 0a 7d 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f | ound,.};.<span.class="tok-kw">co |
| 4c7e0 | 6e 73 74 3c 2f 73 70 61 6e 3e 20 42 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | nst</span>.B.=.<span.class="tok- |
| 4c800 | 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 7b 0a 20 20 20 20 4f 75 74 4f 66 4d 65 6d 6f 72 | kw">error</span>{.....OutOfMemor |
| 4c820 | 79 2c 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 | y,......<span.class="tok-comment |
| 4c840 | 22 3e 2f 2f 2f 20 42 20 64 6f 63 20 63 6f 6d 6d 65 6e 74 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 50 | ">///.B.doc.comment</span>.....P |
| 4c860 | 61 74 68 4e 6f 74 46 6f 75 6e 64 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | athNotFound,.};..<span.class="to |
| 4c880 | 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 43 20 3d 20 41 20 7c 7c 20 42 3b 0a 0a | k-kw">const</span>.C.=.A.||.B;.. |
| 4c8a0 | 3c 73 70 61 6e 20 63 6c 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>.< |
| 4c8c0 | 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 29 | span.class="tok-fn">foo</span>() |
| 4c8e0 | 20 43 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f | .C!<span.class="tok-type">void</ |
| 4c900 | 73 70 61 6e 3e 20 7b 0a 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" |
| 4c920 | 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | >return</span>.<span.class="tok- |
| 4c940 | 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 4e 6f 74 44 69 72 3b 0a 7d 0a 0a 3c 73 70 61 | kw">error</span>.NotDir;.}..<spa |
| 4c960 | 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 |
| 4c980 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 6d 65 72 67 65 20 65 | an.class="tok-str">"merge.e |
| 4c9a0 | 72 72 6f 72 20 73 65 74 73 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 | rror.sets"</span>.{.....<sp |
| 4c9c0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 66 6f 6f | an.class="tok-kw">if</span>.(foo |
| 4c9e0 | 28 29 29 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 | ()).{.........<span.class="tok-b |
| 4ca00 | 75 69 6c 74 69 6e 22 3e 40 70 61 6e 69 63 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 | uiltin">@panic</span>(<span.clas |
| 4ca20 | 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 75 6e 65 78 70 65 63 74 65 64 26 71 75 6f | s="tok-str">"unexpected&quo |
| 4ca40 | 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 7d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | t;</span>);.....}.<span.class="t |
| 4ca60 | 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 7c 65 72 72 7c 20 3c 73 70 61 6e 20 63 | ok-kw">else</span>.|err|.<span.c |
| 4ca80 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 77 69 74 63 68 3c 2f 73 70 61 6e 3e 20 28 65 72 72 | lass="tok-kw">switch</span>.(err |
| 4caa0 | 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" |
| 4cac0 | 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 4f 75 74 4f 66 4d 65 6d 6f 72 79 20 3d 26 67 74 3b 20 | >error</span>.OutOfMemory.=>. |
| 4cae0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 70 61 6e 69 63 | <span.class="tok-builtin">@panic |
| 4cb00 | 3c 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 |
| 4cb20 | 75 6f 74 3b 75 6e 65 78 70 65 63 74 65 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2c 0a 20 20 | uot;unexpected"</span>),... |
| 4cb40 | 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 72 | ......<span.class="tok-kw">error |
| 4cb60 | 3c 2f 73 70 61 6e 3e 2e 50 61 74 68 4e 6f 74 46 6f 75 6e 64 20 3d 26 67 74 3b 20 3c 73 70 61 6e | </span>.PathNotFound.=>.<span |
| 4cb80 | 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 |
| 4cba0 | 6e 3e 28 3c 73 70 61 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 |
| 4cbc0 | 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>),........ |
| 4cbe0 | 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 |
| 4cc00 | 6e 3e 2e 4e 6f 74 44 69 72 20 3d 26 67 74 3b 20 7b 7d 2c 0a 20 20 20 20 7d 0a 7d 3c 2f 63 6f 64 | n>.NotDir.=>.{},.....}.}</cod |
| 4cc20 | 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 | e></pre><pre><code.class="shell" |
| 4cc40 | 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 31 2f 31 20 74 65 73 74 20 26 71 | >$.zig.test.test.zig.1/1.test.&q |
| 4cc60 | 75 6f 74 3b 6d 65 72 67 65 20 65 72 72 6f 72 20 73 65 74 73 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b | uot;merge.error.sets"....OK |
| 4cc80 | 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 | .All.1.tests.passed..</code></pr |
| 4cca0 | 65 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 49 6e 66 65 72 72 65 | e>...............<h3.id="Inferre |
| 4ccc0 | 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 |
| 4cce0 | 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. |
| 4cd00 | 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 |
| 4cd20 | 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 33 3e 0a | nferred-Error-Sets">..</a></h3>. |
| 4cd40 | 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 |
| 4cd60 | 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 |
| 4cd80 | 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 |
| 4cda0 | 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 |
| 4cdc0 | 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 75 73 65 20 74 | .error.set.for.a.function,.use.t |
| 4cde0 | 68 69 73 20 73 79 6e 74 61 78 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 3c 70 20 63 6c 61 73 73 3d | his.syntax:.......</p>.<p.class= |
| 4ce00 | 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c | "file">test.zig</p><pre><code.cl |
| 4ce20 | 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 | ass="zig"><span.class="tok-comme |
| 4ce40 | 6e 74 22 3e 2f 2f 20 57 69 74 68 20 61 6e 20 69 6e 66 65 72 72 65 64 20 65 72 72 6f 72 20 73 65 | nt">//.With.an.inferred.error.se |
| 4ce60 | 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 6b 77 22 3e 70 75 | t</span>.<span.class="tok-kw">pu |
| 4ce80 | 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 |
| 4cea0 | 3c 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 |
| 4cec0 | 5f 69 6e 66 65 72 72 65 64 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | _inferred</span>(<span.class="to |
| 4cee0 | 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 |
| 4cf00 | 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 61 3a 20 | lass="tok-type">type</span>,.a:. |
| 4cf20 | 54 2c 20 62 3a 20 54 29 20 21 54 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | T,.b:.T).!T.{.....<span.class="t |
| 4cf40 | 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 61 6e 73 77 65 72 3a 20 54 20 3d 20 3c 73 | ok-kw">var</span>.answer:.T.=.<s |
| 4cf60 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 75 6e 64 65 66 69 6e 65 64 3c 2f | pan.class="tok-null">undefined</ |
| 4cf80 | 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"> |
| 4cfa0 | 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | return</span>.<span.class="tok-k |
| 4cfc0 | 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 | w">if</span>.(<span.class="tok-b |
| 4cfe0 | 75 69 6c 74 69 6e 22 3e 40 61 64 64 57 69 74 68 4f 76 65 72 66 6c 6f 77 3c 2f 73 70 61 6e 3e 28 | uiltin">@addWithOverflow</span>( |
| 4d000 | 54 2c 20 61 2c 20 62 2c 20 26 61 6d 70 3b 61 6e 73 77 65 72 29 29 20 3c 73 70 61 6e 20 63 6c 61 | T,.a,.b,.&answer)).<span.cla |
| 4d020 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 4f 76 65 72 66 6c 6f | ss="tok-kw">error</span>.Overflo |
| 4d040 | 77 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 | w.<span.class="tok-kw">else</spa |
| 4d060 | 6e 3e 20 61 6e 73 77 65 72 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 | n>.answer;.}..<span.class="tok-c |
| 4d080 | 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 72 72 6f | omment">//.With.an.explicit.erro |
| 4d0a0 | 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 2d 6b 77 | r.set</span>.<span.class="tok-kw |
| 4d0c0 | 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 |
| 4d0e0 | 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" |
| 4d100 | 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 61 73 73 | >add_explicit</span>(<span.class |
| 4d120 | 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 |
| 4d140 | 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>, |
| 4d160 | 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 70 61 6e | .a:.T,.b:.T).Error!T.{.....<span |
| 4d180 | 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 6e 73 77 65 | .class="tok-kw">var</span>.answe |
| 4d1a0 | 72 3a 20 54 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 | r:.T.=.<span.class="tok-null">un |
| 4d1c0 | 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= |
| 4d1e0 | 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 |
| 4d200 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 3c 73 70 61 6e 20 63 6c 61 | ss="tok-kw">if</span>.(<span.cla |
| 4d220 | 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 61 64 64 57 69 74 68 4f 76 65 72 66 6c 6f | ss="tok-builtin">@addWithOverflo |
| 4d240 | 77 3c 2f 73 70 61 6e 3e 28 54 2c 20 61 2c 20 62 2c 20 26 61 6d 70 3b 61 6e 73 77 65 72 29 29 20 | w</span>(T,.a,.b,.&answer)). |
| 4d260 | 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 |
| 4d280 | 3e 2e 4f 76 65 72 66 6c 6f 77 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | >.Overflow.<span.class="tok-kw"> |
| 4d2a0 | 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 61 6e 73 77 65 72 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 | else</span>.answer;.}..<span.cla |
| 4d2c0 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 45 72 72 6f 72 20 3d | ss="tok-kw">const</span>.Error.= |
| 4d2e0 | 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 |
| 4d300 | 6e 3e 20 7b 0a 20 20 20 20 4f 76 65 72 66 6c 6f 77 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 | n>.{.....Overflow,.};..<span.cla |
| 4d320 | 73 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.=.< |
| 4d340 | 73 70 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 |
| 4d360 | 3c 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 |
| 4d380 | 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 |
| 4d3a0 | 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 |
| 4d3c0 | 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 69 6e 66 65 72 72 65 64 20 65 72 | lass="tok-str">"inferred.er |
| 4d3e0 | 72 6f 72 20 73 65 74 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e | ror.set"</span>.{.....<span |
| 4d400 | 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 64 64 5f 69 | .class="tok-kw">if</span>.(add_i |
| 4d420 | 6e 66 65 72 72 65 64 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 | nferred(<span.class="tok-type">u |
| 4d440 | 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 |
| 4d460 | 72 22 3e 32 35 35 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | r">255</span>,.<span.class="tok- |
| 4d480 | 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 29 20 7c 5f 7c 20 3c 73 70 61 6e 20 63 6c 61 | number">1</span>)).|_|.<span.cla |
| 4d4a0 | 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 20 3c | ss="tok-kw">unreachable</span>.< |
| 4d4c0 | 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>. |
| 4d4e0 | 7c 65 72 72 7c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 77 69 74 63 | |err|.<span.class="tok-kw">switc |
| 4d500 | 68 3c 2f 73 70 61 6e 3e 20 28 65 72 72 29 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 | h</span>.(err).{.........<span.c |
| 4d520 | 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 66 | lass="tok-kw">error</span>.Overf |
| 4d540 | 6c 6f 77 20 3d 26 67 74 3b 20 7b 7d 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 | low.=>.{},.<span.class="tok-c |
| 4d560 | 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 6f 6b 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 7d 0a 7d 3c 2f 63 6f | omment">//.ok</span>.....}.}</co |
| 4d580 | 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c | de></pre><pre><code.class="shell |
| 4d5a0 | 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 31 2f 31 20 74 65 73 74 20 26 | ">$.zig.test.test.zig.1/1.test.& |
| 4d5c0 | 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 6f 74 3b 2e 2e 2e | quot;inferred.error.set"... |
| 4d5e0 | 20 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c | .OK.All.1.tests.passed..</code>< |
| 4d600 | 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 57 68 65 6e 20 61 20 66 75 | /pre>........<p>.......When.a.fu |
| 4d620 | 6e 63 74 69 6f 6e 20 68 61 73 20 61 6e 20 69 6e 66 65 72 72 65 64 20 65 72 72 6f 72 20 73 65 74 | nction.has.an.inferred.error.set |
| 4d640 | 2c 20 74 68 61 74 20 66 75 6e 63 74 69 6f 6e 20 62 65 63 6f 6d 65 73 20 67 65 6e 65 72 69 63 20 | ,.that.function.becomes.generic. |
| 4d660 | 61 6e 64 20 74 68 75 73 20 69 74 20 62 65 63 6f 6d 65 73 0a 20 20 20 20 20 20 74 72 69 63 6b 69 | and.thus.it.becomes.......tricki |
| 4d680 | 65 72 20 74 6f 20 64 6f 20 63 65 72 74 61 69 6e 20 74 68 69 6e 67 73 20 77 69 74 68 20 69 74 2c | er.to.do.certain.things.with.it, |
| 4d6a0 | 20 73 75 63 68 20 61 73 20 6f 62 74 61 69 6e 20 61 20 66 75 6e 63 74 69 6f 6e 20 70 6f 69 6e 74 | .such.as.obtain.a.function.point |
| 4d6c0 | 65 72 2c 20 6f 72 20 68 61 76 65 20 61 6e 20 65 72 72 6f 72 0a 20 20 20 20 20 20 73 65 74 20 74 | er,.or.have.an.error.......set.t |
| 4d6e0 | 68 61 74 20 69 73 20 63 6f 6e 73 69 73 74 65 6e 74 20 61 63 72 6f 73 73 20 64 69 66 66 65 72 65 | hat.is.consistent.across.differe |
| 4d700 | 6e 74 20 62 75 69 6c 64 20 74 61 72 67 65 74 73 2e 20 41 64 64 69 74 69 6f 6e 61 6c 6c 79 2c 20 | nt.build.targets..Additionally,. |
| 4d720 | 69 6e 66 65 72 72 65 64 20 65 72 72 6f 72 20 73 65 74 73 0a 20 20 20 20 20 20 61 72 65 20 69 6e | inferred.error.sets.......are.in |
| 4d740 | 63 6f 6d 70 61 74 69 62 6c 65 20 77 69 74 68 20 72 65 63 75 72 73 69 6f 6e 2e 0a 20 20 20 20 20 | compatible.with.recursion....... |
| 4d760 | 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 6e 20 74 68 65 73 65 20 73 | .</p>.......<p>.......In.these.s |
| 4d780 | 69 74 75 61 74 69 6f 6e 73 2c 20 69 74 20 69 73 20 72 65 63 6f 6d 6d 65 6e 64 65 64 20 74 6f 20 | ituations,.it.is.recommended.to. |
| 4d7a0 | 75 73 65 20 61 6e 20 65 78 70 6c 69 63 69 74 20 65 72 72 6f 72 20 73 65 74 2e 20 59 6f 75 20 63 | use.an.explicit.error.set..You.c |
| 4d7c0 | 61 6e 20 67 65 6e 65 72 61 6c 6c 79 20 73 74 61 72 74 0a 20 20 20 20 20 20 77 69 74 68 20 61 6e | an.generally.start.......with.an |
| 4d7e0 | 20 65 6d 70 74 79 20 65 72 72 6f 72 20 73 65 74 20 61 6e 64 20 6c 65 74 20 63 6f 6d 70 69 6c 65 | .empty.error.set.and.let.compile |
| 4d800 | 20 65 72 72 6f 72 73 20 67 75 69 64 65 20 79 6f 75 20 74 6f 77 61 72 64 20 63 6f 6d 70 6c 65 74 | .errors.guide.you.toward.complet |
| 4d820 | 69 6e 67 20 74 68 65 20 73 65 74 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 | ing.the.set........</p>.......<p |
| 4d840 | 3e 0a 20 20 20 20 20 20 54 68 65 73 65 20 6c 69 6d 69 74 61 74 69 6f 6e 73 20 6d 61 79 20 62 65 | >.......These.limitations.may.be |
| 4d860 | 20 6f 76 65 72 63 6f 6d 65 20 69 6e 20 61 20 66 75 74 75 72 65 20 76 65 72 73 69 6f 6e 20 6f 66 | .overcome.in.a.future.version.of |
| 4d880 | 20 5a 69 67 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 0a 20 | .Zig........</p>................ |
| 4d8a0 | 20 20 20 20 20 3c 68 32 20 69 64 3d 22 45 72 72 6f 72 2d 52 65 74 75 72 6e 2d 54 72 61 63 65 73 | .....<h2.id="Error-Return-Traces |
| 4d8c0 | 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 45 72 72 6f 72 2d 52 65 74 75 72 6e 2d 54 72 61 | "><a.href="#toc-Error-Return-Tra |
| 4d8e0 | 63 65 73 22 3e 45 72 72 6f 72 20 52 65 74 75 72 6e 20 54 72 61 63 65 73 3c 2f 61 3e 20 3c 61 20 | ces">Error.Return.Traces</a>.<a. |
| 4d900 | 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 45 72 72 6f 72 2d 52 65 74 75 72 6e 2d | class="hdr".href="#Error-Return- |
| 4d920 | 54 72 61 63 65 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 | Traces">..</a></h2>........<p>.. |
| 4d940 | 20 20 20 20 20 45 72 72 6f 72 20 52 65 74 75 72 6e 20 54 72 61 63 65 73 20 73 68 6f 77 20 61 6c | .....Error.Return.Traces.show.al |
| 4d960 | 6c 20 74 68 65 20 70 6f 69 6e 74 73 20 69 6e 20 74 68 65 20 63 6f 64 65 20 74 68 61 74 20 61 6e | l.the.points.in.the.code.that.an |
| 4d980 | 20 65 72 72 6f 72 20 77 61 73 20 72 65 74 75 72 6e 65 64 20 74 6f 20 74 68 65 20 63 61 6c 6c 69 | .error.was.returned.to.the.calli |
| 4d9a0 | 6e 67 20 66 75 6e 63 74 69 6f 6e 2e 20 54 68 69 73 20 6d 61 6b 65 73 20 69 74 20 70 72 61 63 74 | ng.function..This.makes.it.pract |
| 4d9c0 | 69 63 61 6c 20 74 6f 20 75 73 65 20 3c 61 20 68 72 65 66 3d 22 23 74 72 79 22 3e 74 72 79 3c 2f | ical.to.use.<a.href="#try">try</ |
| 4d9e0 | 61 3e 20 65 76 65 72 79 77 68 65 72 65 20 61 6e 64 20 74 68 65 6e 20 73 74 69 6c 6c 20 62 65 20 | a>.everywhere.and.then.still.be. |
| 4da00 | 61 62 6c 65 20 74 6f 20 6b 6e 6f 77 20 77 68 61 74 20 68 61 70 70 65 6e 65 64 20 69 66 20 61 6e | able.to.know.what.happened.if.an |
| 4da20 | 20 65 72 72 6f 72 20 65 6e 64 73 20 75 70 20 62 75 62 62 6c 69 6e 67 20 61 6c 6c 20 74 68 65 20 | .error.ends.up.bubbling.all.the. |
| 4da40 | 77 61 79 20 6f 75 74 20 6f 66 20 79 6f 75 72 20 61 70 70 6c 69 63 61 74 69 6f 6e 2e 0a 20 20 20 | way.out.of.your.application..... |
| 4da60 | 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 | ...</p>.......<p.class="file">te |
| 4da80 | 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | st.zig</p><pre><code.class="zig" |
| 4daa0 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 70 61 6e 3e | ><span.class="tok-kw">pub</span> |
| 4dac0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 | .<span.class="tok-kw">fn</span>. |
| 4dae0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 6d 61 69 6e 3c 2f 73 70 61 6e 3e | <span.class="tok-fn">main</span> |
| 4db00 | 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< |
| 4db20 | 2f 73 70 61 6e 3e 20 7b 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 |
| 4db40 | 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 66 6f 6f 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ">try</span>.foo(<span.class="to |
| 4db60 | 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 20 63 | k-number">12</span>);.}..<span.c |
| 4db80 | 6c 61 73 73 3d 22 74 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 |
| 4dba0 | 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 66 6f 6f 3c 2f 73 70 61 6e 3e 28 78 3a 20 3c 73 70 61 6e | ass="tok-fn">foo</span>(x:.<span |
| 4dbc0 | 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 21 3c | .class="tok-type">i32</span>).!< |
| 4dbe0 | 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 |
| 4dc00 | 3e 20 7b 0a 20 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< |
| 4dc20 | 2f 73 70 61 6e 3e 20 28 78 20 26 67 74 3b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | /span>.(x.>=.<span.class="tok |
| 4dc40 | 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 | -number">5</span>).{.........<sp |
| 4dc60 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 62 61 72 | an.class="tok-kw">try</span>.bar |
| 4dc80 | 28 29 3b 0a 20 20 20 20 7d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 | ();.....}.<span.class="tok-kw">e |
| 4dca0 | 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 |
| 4dcc0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 62 61 6e 67 32 28 29 3b 0a 20 20 | ="tok-kw">try</span>.bang2();... |
| 4dce0 | 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 2f | ..}.}..<span.class="tok-kw">fn</ |
| 4dd00 | 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</ |
| 4dd20 | 73 70 61 6e 3e 28 29 20 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | span>().!<span.class="tok-type"> |
| 4dd40 | 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 |
| 4dd60 | 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 62 61 7a 28 29 29 20 7b 0a 20 20 20 20 20 | ok-kw">if</span>.(baz()).{...... |
| 4dd80 | 20 20 20 3c 73 70 61 6e 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 |
| 4dda0 | 6e 3e 20 71 75 75 78 28 29 3b 0a 20 20 20 20 7d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | n>.quux();.....}.<span.class="to |
| 4ddc0 | 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 7c 65 72 72 7c 20 3c 73 70 61 6e 20 63 6c | k-kw">else</span>.|err|.<span.cl |
| 4dde0 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 77 69 74 63 68 3c 2f 73 70 61 6e 3e 20 28 65 72 72 29 | ass="tok-kw">switch</span>.(err) |
| 4de00 | 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"> |
| 4de20 | 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 46 69 6c 65 4e 6f 74 46 6f 75 6e 64 20 3d 26 67 74 3b 20 | error</span>.FileNotFound.=>. |
| 4de40 | 3c 73 70 61 6e 20 63 6c 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>. |
| 4de60 | 68 65 6c 6c 6f 28 29 2c 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | hello(),.........<span.class="to |
| 4de80 | 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c | k-kw">else</span>.=>.<span.cl |
| 4dea0 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 61 6e 6f 74 68 65 72 28 | ass="tok-kw">try</span>.another( |
| 4dec0 | 29 2c 0a 20 20 20 20 7d 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | ),.....}.}..<span.class="tok-kw" |
| 4dee0 | 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"> |
| 4df00 | 62 61 7a 3c 2f 73 70 61 6e 3e 28 29 20 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | baz</span>().!<span.class="tok-t |
| 4df20 | 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 |
| 4df40 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 62 61 6e 67 31 28 29 3b 0a | ss="tok-kw">try</span>.bang1();. |
| 4df60 | 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 |
| 4df80 | 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 71 75 75 78 3c 2f 73 70 61 | >.<span.class="tok-fn">quux</spa |
| 4dfa0 | 6e 3e 28 29 20 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 | n>().!<span.class="tok-type">voi |
| 4dfc0 | 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- |
| 4dfe0 | 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 62 61 6e 67 32 28 29 3b 0a 7d 0a 0a 3c 73 70 61 6e | kw">try</span>.bang2();.}..<span |
| 4e000 | 20 63 6c 61 73 73 3d 22 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. |
| 4e020 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 68 65 6c 6c 6f 3c 2f 73 70 61 6e 3e 28 29 20 21 3c | class="tok-fn">hello</span>().!< |
| 4e040 | 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 |
| 4e060 | 3e 20 7b 0a 20 20 20 20 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 |
| 4e080 | 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 73 73 3d | </span>.bang2();.}..<span.class= |
| 4e0a0 | 22 74 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=" |
| 4e0c0 | 74 6f 6b 2d 66 6e 22 3e 61 6e 6f 74 68 65 72 3c 2f 73 70 61 6e 3e 28 29 20 21 3c 73 70 61 6e 20 | tok-fn">another</span>().!<span. |
| 4e0e0 | 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>.{.. |
| 4e100 | 20 20 20 3c 73 70 61 6e 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 |
| 4e120 | 6e 3e 20 62 61 6e 67 31 28 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | n>.bang1();.}..<span.class="tok- |
| 4e140 | 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 |
| 4e160 | 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 22 | n">bang1</span>().!<span.class=" |
| 4e180 | 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 |
| 4e1a0 | 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>.< |
| 4e1c0 | 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> |
| 4e1e0 | 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 74 | .FileNotFound;.}..<span.class="t |
| 4e200 | 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 |
| 4e220 | 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 73 | k-fn">bang2</span>().!<span.clas |
| 4e240 | 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>.{.....< |
| 4e260 | 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 |
| 4e280 | 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 |
| 4e2a0 | 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 2f | an>.PermissionDenied;.}</code></ |
| 4e2c0 | 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a | pre><pre><code.class="shell">$.z |
| 4e2e0 | 69 67 20 62 75 69 6c 64 2d 65 78 65 20 74 65 73 74 2e 7a 69 67 0a 24 20 2e 2f 74 65 73 74 0a 65 | ig.build-exe.test.zig.$../test.e |
| 4e300 | 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 61 6e 20 63 6c 61 | rror:.PermissionDenied.<span.cla |
| 4e320 | 73 73 3d 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f | ss="t37_1">/home/andy/Downloads/ |
| 4e340 | 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 33 39 3a 35 3c 2f 73 70 | zig/docgen_tmp/test.zig:39:5</sp |
| 4e360 | 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 33 32 35 34 32 | an>:.<span.class="t2_0">0x232542 |
| 4e380 | 20 69 6e 20 62 61 6e 67 31 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 72 65 74 75 | .in.bang1.(test)</span>.....retu |
| 4e3a0 | 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 3c 73 70 61 6e | rn.error.FileNotFound;.....<span |
| 4e3c0 | 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c | .class="t32_1">^</span>.<span.cl |
| 4e3e0 | 61 73 73 3d 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 | ass="t37_1">/home/andy/Downloads |
| 4e400 | 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 32 33 3a 35 3c 2f 73 | /zig/docgen_tmp/test.zig:23:5</s |
| 4e420 | 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 33 32 34 31 | pan>:.<span.class="t2_0">0x23241 |
| 4e440 | 66 20 69 6e 20 62 61 7a 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 74 72 79 20 62 | f.in.baz.(test)</span>.....try.b |
| 4e460 | 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 74 33 32 5f 31 22 3e | ang1();.....<span.class="t32_1"> |
| 4e480 | 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 37 5f 31 22 3e 2f 68 6f | ^</span>.<span.class="t37_1">/ho |
| 4e4a0 | 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 | me/andy/Downloads/zig/docgen_tmp |
| 4e4c0 | 2f 74 65 73 74 2e 7a 69 67 3a 34 33 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 | /test.zig:43:5</span>:.<span.cla |
| 4e4e0 | 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 33 32 33 65 32 20 69 6e 20 62 61 6e 67 32 20 28 74 65 73 | ss="t2_0">0x2323e2.in.bang2.(tes |
| 4e500 | 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 72 65 74 75 72 6e 20 65 72 72 6f 72 2e 50 65 72 6d 69 | t)</span>.....return.error.Permi |
| 4e520 | 73 73 69 6f 6e 44 65 6e 69 65 64 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 | ssionDenied;.....<span.class="t3 |
| 4e540 | 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 37 5f 31 | 2_1">^</span>.<span.class="t37_1 |
| 4e560 | 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 64 6f 63 67 65 | ">/home/andy/Downloads/zig/docge |
| 4e580 | 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 33 31 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 | n_tmp/test.zig:31:5</span>:.<spa |
| 4e5a0 | 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 33 32 35 30 66 20 69 6e 20 68 65 6c 6c 6f | n.class="t2_0">0x23250f.in.hello |
| 4e5c0 | 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 74 72 79 20 62 61 6e 67 32 28 29 3b 0a | .(test)</span>.....try.bang2();. |
| 4e5e0 | 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e | ....<span.class="t32_1">^</span> |
| 4e600 | 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f | .<span.class="t37_1">/home/andy/ |
| 4e620 | 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 | Downloads/zig/docgen_tmp/test.zi |
| 4e640 | 67 3a 31 37 3a 33 31 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f | g:17:31</span>:.<span.class="t2_ |
| 4e660 | 30 22 3e 30 78 32 33 32 33 61 65 20 69 6e 20 62 61 72 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e | 0">0x2323ae.in.bar.(test)</span> |
| 4e680 | 0a 20 20 20 20 20 20 20 20 65 72 72 6f 72 2e 46 69 6c 65 4e 6f 74 46 6f 75 6e 64 20 3d 26 67 74 | .........error.FileNotFound.=> |
| 4e6a0 | 3b 20 74 72 79 20 68 65 6c 6c 6f 28 29 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ;.try.hello(),.................. |
| 4e6c0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 | .............<span.class="t32_1" |
| 4e6e0 | 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 37 5f 31 22 3e 2f 68 | >^</span>.<span.class="t37_1">/h |
| 4e700 | 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d | ome/andy/Downloads/zig/docgen_tm |
| 4e720 | 70 2f 74 65 73 74 2e 7a 69 67 3a 37 3a 39 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 | p/test.zig:7:9</span>:.<span.cla |
| 4e740 | 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 33 32 32 39 63 20 69 6e 20 66 6f 6f 20 28 74 65 73 74 29 | ss="t2_0">0x23229c.in.foo.(test) |
| 4e760 | 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 74 72 79 20 62 61 72 28 29 3b 0a 20 20 20 20 20 | </span>.........try.bar();...... |
| 4e780 | 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a | ...<span.class="t32_1">^</span>. |
| 4e7a0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 | <span.class="t37_1">/home/andy/D |
| 4e7c0 | 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 | ownloads/zig/docgen_tmp/test.zig |
| 4e7e0 | 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 74 32 5f 30 22 3e | :2:5</span>:.<span.class="t2_0"> |
| 4e800 | 30 78 32 32 62 32 36 34 20 69 6e 20 6d 61 69 6e 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 | 0x22b264.in.main.(test)</span>.. |
| 4e820 | 20 20 20 74 72 79 20 66 6f 6f 28 31 32 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ...try.foo(12);.....<span.class= |
| 4e840 | 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a | "t32_1">^</span>.</code></pre>.. |
| 4e860 | 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 4c 6f 6f 6b 20 63 6c 6f 73 65 6c 79 20 61 74 20 | ......<p>.......Look.closely.at. |
| 4e880 | 74 68 69 73 20 65 78 61 6d 70 6c 65 2e 20 54 68 69 73 20 69 73 20 6e 6f 20 73 74 61 63 6b 20 74 | this.example..This.is.no.stack.t |
| 4e8a0 | 72 61 63 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 | race........</p>.......<p>...... |
| 4e8c0 | 20 59 6f 75 20 63 61 6e 20 73 65 65 20 74 68 61 74 20 74 68 65 20 66 69 6e 61 6c 20 65 72 72 6f | .You.can.see.that.the.final.erro |
| 4e8e0 | 72 20 62 75 62 62 6c 65 64 20 75 70 20 77 61 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | r.bubbled.up.was.<code.class="zi |
| 4e900 | 67 22 3e 50 65 72 6d 69 73 73 69 6f 6e 44 65 6e 69 65 64 3c 2f 63 6f 64 65 3e 2c 0a 20 20 20 20 | g">PermissionDenied</code>,..... |
| 4e920 | 20 20 20 20 20 20 62 75 74 20 74 68 65 20 6f 72 69 67 69 6e 61 6c 20 65 72 72 6f 72 20 74 68 61 | ......but.the.original.error.tha |
| 4e940 | 74 20 73 74 61 72 74 65 64 20 74 68 69 73 20 77 68 6f 6c 65 20 74 68 69 6e 67 20 77 61 73 20 3c | t.started.this.whole.thing.was.< |
| 4e960 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 46 69 6c 65 4e 6f 74 46 6f 75 6e 64 3c 2f 63 | code.class="zig">FileNotFound</c |
| 4e980 | 6f 64 65 3e 2e 20 49 6e 20 74 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 62 | ode>..In.the.<code.class="zig">b |
| 4e9a0 | 61 72 3c 2f 63 6f 64 65 3e 20 66 75 6e 63 74 69 6f 6e 2c 20 74 68 65 20 63 6f 64 65 20 68 61 6e | ar</code>.function,.the.code.han |
| 4e9c0 | 64 6c 65 73 20 74 68 65 20 6f 72 69 67 69 6e 61 6c 20 65 72 72 6f 72 20 63 6f 64 65 2c 0a 20 20 | dles.the.original.error.code,... |
| 4e9e0 | 20 20 20 20 61 6e 64 20 74 68 65 6e 20 72 65 74 75 72 6e 73 20 61 6e 6f 74 68 65 72 20 6f 6e 65 | ....and.then.returns.another.one |
| 4ea00 | 2c 20 66 72 6f 6d 20 74 68 65 20 73 77 69 74 63 68 20 73 74 61 74 65 6d 65 6e 74 2e 20 45 72 72 | ,.from.the.switch.statement..Err |
| 4ea20 | 6f 72 20 52 65 74 75 72 6e 20 54 72 61 63 65 73 20 6d 61 6b 65 20 74 68 69 73 20 63 6c 65 61 72 | or.Return.Traces.make.this.clear |
| 4ea40 | 2c 20 77 68 65 72 65 61 73 20 61 20 73 74 61 63 6b 20 74 72 61 63 65 20 77 6f 75 6c 64 20 6c 6f | ,.whereas.a.stack.trace.would.lo |
| 4ea60 | 6f 6b 20 6c 69 6b 65 20 74 68 69 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c | ok.like.this:.......</p>.......< |
| 4ea80 | 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e | p.class="file">test.zig</p><pre> |
| 4eaa0 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | <code.class="zig"><span.class="t |
| 4eac0 | 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 |
| 4eae0 | 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 |
| 4eb00 | 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= |
| 4eb20 | 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 66 6f 6f | "tok-type">void</span>.{.....foo |
| 4eb40 | 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 3c 2f 73 70 | (<span.class="tok-number">12</sp |
| 4eb60 | 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 6e | an>);.}..<span.class="tok-kw">fn |
| 4eb80 | 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 66 6f 6f | </span>.<span.class="tok-fn">foo |
| 4eba0 | 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 |
| 4ebc0 | 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 |
| 4ebe0 | 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 |
| 4ec00 | 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 3b 3d 20 3c | ss="tok-kw">if</span>.(x.>=.< |
| 4ec20 | 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> |
| 4ec40 | 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 61 6e 20 63 | ).{.........bar();.....}.<span.c |
| 4ec60 | 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>.{..... |
| 4ec80 | 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 63 6c 61 73 | ....bang2();.....}.}..<span.clas |
| 4eca0 | 73 3d 22 74 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 |
| 4ecc0 | 3d 22 74 6f 6b 2d 66 6e 22 3e 62 61 72 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 | ="tok-fn">bar</span>().<span.cla |
| 4ece0 | 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>.{..... |
| 4ed00 | 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>.( |
| 4ed20 | 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 20 7d 20 3c | baz()).{.........quux();.....}.< |
| 4ed40 | 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>. |
| 4ed60 | 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 3c 73 70 61 | {.........hello();.....}.}..<spa |
| 4ed80 | 6e 20 63 6c 61 73 73 3d 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 |
| 4eda0 | 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 20 3c 73 70 | .class="tok-fn">baz</span>().<sp |
| 4edc0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 20 | an.class="tok-type">bool</span>. |
| 4ede0 | 7b 0a 20 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 |
| 4ee00 | 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 6c 61 73 73 | n</span>.bang1();.}..<span.class |
| 4ee20 | 3d 22 74 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= |
| 4ee40 | 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 20 63 6c 61 | "tok-fn">quux</span>().<span.cla |
| 4ee60 | 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>.{..... |
| 4ee80 | 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 2d 6b 77 22 | bang2();.}..<span.class="tok-kw" |
| 4eea0 | 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"> |
| 4eec0 | 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 74 6f 6b 2d | hello</span>().<span.class="tok- |
| 4eee0 | 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 32 28 29 3b | type">void</span>.{.....bang2(); |
| 4ef00 | 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 | .}..<span.class="tok-kw">fn</spa |
| 4ef20 | 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 31 3c 2f 73 | n>.<span.class="tok-fn">bang1</s |
| 4ef40 | 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 62 6f | pan>().<span.class="tok-type">bo |
| 4ef60 | 6f 6c 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ol</span>.{.....<span.class="tok |
| 4ef80 | 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | -kw">return</span>.<span.class=" |
| 4efa0 | 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 73 70 61 6e | tok-null">false</span>;.}..<span |
| 4efc0 | 20 63 6c 61 73 73 3d 22 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. |
| 4efe0 | 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 29 20 3c 73 | class="tok-fn">bang2</span>().<s |
| 4f000 | 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> |
| 4f020 | 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" |
| 4f040 | 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 6b 2d | >@panic</span>(<span.class="tok- |
| 4f060 | 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 71 75 6f 74 | str">"PermissionDenied" |
| 4f080 | 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 | ;</span>);.}</code></pre><pre><c |
| 4f0a0 | 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 62 75 69 6c 64 2d 65 78 | ode.class="shell">$.zig.build-ex |
| 4f0c0 | 65 20 74 65 73 74 2e 7a 69 67 0a 24 20 2e 2f 74 65 73 74 0a 50 65 72 6d 69 73 73 69 6f 6e 44 65 | e.test.zig.$../test.PermissionDe |
| 4f0e0 | 6e 69 65 64 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 | nied.<span.class="t37_1">/home/a |
| 4f100 | 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 | ndy/Downloads/zig/docgen_tmp/tes |
| 4f120 | 74 2e 7a 69 67 3a 33 38 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | t.zig:38:5</span>:.<span.class=" |
| 4f140 | 74 32 5f 30 22 3e 30 78 32 33 33 62 64 36 20 69 6e 20 62 61 6e 67 32 20 28 74 65 73 74 29 3c 2f | t2_0">0x233bd6.in.bang2.(test)</ |
| 4f160 | 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 69 6f | span>.....@panic("Permissio |
| 4f180 | 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 73 3d | nDenied");.....<span.class= |
| 4f1a0 | 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 | "t32_1">^</span>.<span.class="t3 |
| 4f1c0 | 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 64 6f | 7_1">/home/andy/Downloads/zig/do |
| 4f1e0 | 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 33 30 3a 31 30 3c 2f 73 70 61 6e 3e 3a 20 | cgen_tmp/test.zig:30:10</span>:. |
| 4f200 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 33 34 32 37 38 20 69 6e 20 68 | <span.class="t2_0">0x234278.in.h |
| 4f220 | 65 6c 6c 6f 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 62 61 6e 67 32 28 29 3b 0a | ello.(test)</span>.....bang2();. |
| 4f240 | 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f | .........<span.class="t32_1">^</ |
| 4f260 | 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f | span>.<span.class="t37_1">/home/ |
| 4f280 | 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 | andy/Downloads/zig/docgen_tmp/te |
| 4f2a0 | 73 74 2e 7a 69 67 3a 31 37 3a 31 34 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 | st.zig:17:14</span>:.<span.class |
| 4f2c0 | 3d 22 74 32 5f 30 22 3e 30 78 32 33 33 62 62 61 20 69 6e 20 62 61 72 20 28 74 65 73 74 29 3c 2f | ="t2_0">0x233bba.in.bar.(test)</ |
| 4f2e0 | 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 68 65 6c 6c 6f 28 29 3b 0a 20 20 20 20 20 20 20 20 20 | span>.........hello();.......... |
| 4f300 | 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e | ....<span.class="t32_1">^</span> |
| 4f320 | 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f | .<span.class="t37_1">/home/andy/ |
| 4f340 | 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 | Downloads/zig/docgen_tmp/test.zi |
| 4f360 | 67 3a 37 3a 31 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 | g:7:12</span>:.<span.class="t2_0 |
| 4f380 | 22 3e 30 78 32 33 32 30 33 35 20 69 6e 20 66 6f 6f 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a | ">0x232035.in.foo.(test)</span>. |
| 4f3a0 | 20 20 20 20 20 20 20 20 62 61 72 28 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 | ........bar();............<span. |
| 4f3c0 | 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 | class="t32_1">^</span>.<span.cla |
| 4f3e0 | 73 73 3d 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f | ss="t37_1">/home/andy/Downloads/ |
| 4f400 | 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 32 3a 38 3c 2f 73 70 61 | zig/docgen_tmp/test.zig:2:8</spa |
| 4f420 | 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 62 30 36 64 20 | n>:.<span.class="t2_0">0x22b06d. |
| 4f440 | 69 6e 20 6d 61 69 6e 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 66 6f 6f 28 31 32 | in.main.(test)</span>.....foo(12 |
| 4f460 | 29 3b 0a 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c | );........<span.class="t32_1">^< |
| 4f480 | 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 | /span>.<span.class="t37_1">/home |
| 4f4a0 | 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 | /andy/Downloads/zig/lib/std/star |
| 4f4c0 | 74 2e 7a 69 67 3a 33 32 34 3a 32 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 | t.zig:324:22</span>:.<span.class |
| 4f4e0 | 3d 22 74 32 5f 30 22 3e 30 78 32 30 34 63 61 66 20 69 6e 20 73 74 64 2e 73 74 61 72 74 2e 70 6f | ="t2_0">0x204caf.in.std.start.po |
| 4f500 | 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e | sixCallMainAndExit.(test)</span> |
| 4f520 | 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();....... |
| 4f540 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f | ...............<span.class="t32_ |
| 4f560 | 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 37 5f 31 22 3e | 1">^</span>.<span.class="t37_1"> |
| 4f580 | 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 | /home/andy/Downloads/zig/lib/std |
| 4f5a0 | 2f 73 74 61 72 74 2e 7a 69 67 3a 31 36 32 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 | /start.zig:162:5</span>:.<span.c |
| 4f5c0 | 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 30 34 61 38 32 20 69 6e 20 73 74 64 2e 73 74 61 72 | lass="t2_0">0x204a82.in.std.star |
| 4f5e0 | 74 2e 5f 73 74 61 72 74 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 40 63 61 6c 6c | t._start.(test)</span>.....@call |
| 4f600 | 28 2e 7b 20 2e 6d 6f 64 69 66 69 65 72 20 3d 20 2e 6e 65 76 65 72 5f 69 6e 6c 69 6e 65 20 7d 2c | (.{..modifier.=..never_inline.}, |
| 4f620 | 20 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 2c 20 2e 7b 7d 29 3b 0a 20 20 20 | .posixCallMainAndExit,..{});.... |
| 4f640 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 28 70 | .<span.class="t32_1">^</span>.(p |
| 4f660 | 72 6f 63 65 73 73 20 74 65 72 6d 69 6e 61 74 65 64 20 62 79 20 73 69 67 6e 61 6c 29 3c 2f 63 6f | rocess.terminated.by.signal)</co |
| 4f680 | 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 48 65 72 65 2c | de></pre>........<p>.......Here, |
| 4f6a0 | 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 69 | .the.stack.trace.does.not.explai |
| 4f6c0 | 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 20 | n.how.the.control.......flow.in. |
| 4f6e0 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 62 61 72 3c 2f 63 6f 64 65 3e 20 67 6f 74 | <code.class="zig">bar</code>.got |
| 4f700 | 20 74 6f 20 74 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 68 65 6c 6c 6f 28 | .to.the.<code.class="zig">hello( |
| 4f720 | 29 3c 2f 63 6f 64 65 3e 20 63 61 6c 6c 2e 0a 20 20 20 20 20 20 4f 6e 65 20 77 6f 75 6c 64 20 68 | )</code>.call........One.would.h |
| 4f740 | 61 76 65 20 74 6f 20 6f 70 65 6e 20 61 20 64 65 62 75 67 67 65 72 20 6f 72 20 66 75 72 74 68 65 | ave.to.open.a.debugger.or.furthe |
| 4f760 | 72 20 69 6e 73 74 72 75 6d 65 6e 74 20 74 68 65 20 61 70 70 6c 69 63 61 74 69 6f 6e 0a 20 20 20 | r.instrument.the.application.... |
| 4f780 | 20 20 20 69 6e 20 6f 72 64 65 72 20 74 6f 20 66 69 6e 64 20 6f 75 74 2e 20 54 68 65 20 65 72 72 | ...in.order.to.find.out..The.err |
| 4f7a0 | 6f 72 20 72 65 74 75 72 6e 20 74 72 61 63 65 2c 20 6f 6e 20 74 68 65 20 6f 74 68 65 72 20 68 61 | or.return.trace,.on.the.other.ha |
| 4f7c0 | 6e 64 2c 0a 20 20 20 20 20 20 73 68 6f 77 73 20 65 78 61 63 74 6c 79 20 68 6f 77 20 74 68 65 20 | nd,.......shows.exactly.how.the. |
| 4f7e0 | 65 72 72 6f 72 20 62 75 62 62 6c 65 64 20 75 70 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 | error.bubbled.up........</p>.... |
| 4f800 | 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 64 65 62 75 67 67 69 6e 67 20 66 65 61 74 | ...<p>.......This.debugging.feat |
| 4f820 | 75 72 65 20 6d 61 6b 65 73 20 69 74 20 65 61 73 69 65 72 20 74 6f 20 69 74 65 72 61 74 65 20 71 | ure.makes.it.easier.to.iterate.q |
| 4f840 | 75 69 63 6b 6c 79 20 6f 6e 20 63 6f 64 65 20 74 68 61 74 0a 20 20 20 20 20 20 72 6f 62 75 73 74 | uickly.on.code.that.......robust |
| 4f860 | 6c 79 20 68 61 6e 64 6c 65 73 20 61 6c 6c 20 65 72 72 6f 72 20 63 6f 6e 64 69 74 69 6f 6e 73 2e | ly.handles.all.error.conditions. |
| 4f880 | 20 54 68 69 73 20 6d 65 61 6e 73 20 74 68 61 74 20 5a 69 67 20 64 65 76 65 6c 6f 70 65 72 73 0a | .This.means.that.Zig.developers. |
| 4f8a0 | 20 20 20 20 20 20 77 69 6c 6c 20 6e 61 74 75 72 61 6c 6c 79 20 66 69 6e 64 20 74 68 65 6d 73 65 | ......will.naturally.find.themse |
| 4f8c0 | 6c 76 65 73 20 77 72 69 74 69 6e 67 20 63 6f 72 72 65 63 74 2c 20 72 6f 62 75 73 74 20 63 6f 64 | lves.writing.correct,.robust.cod |
| 4f8e0 | 65 20 69 6e 20 6f 72 64 65 72 0a 20 20 20 20 20 20 74 6f 20 69 6e 63 72 65 61 73 65 20 74 68 65 | e.in.order.......to.increase.the |
| 4f900 | 69 72 20 64 65 76 65 6c 6f 70 6d 65 6e 74 20 70 61 63 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a | ir.development.pace........</p>. |
| 4f920 | 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 45 72 72 6f 72 20 52 65 74 75 72 6e 20 54 72 61 | ......<p>.......Error.Return.Tra |
| 4f940 | 63 65 73 20 61 72 65 20 65 6e 61 62 6c 65 64 20 62 79 20 64 65 66 61 75 6c 74 20 69 6e 20 3c 61 | ces.are.enabled.by.default.in.<a |
| 4f960 | 20 68 72 65 66 3d 22 23 44 65 62 75 67 22 3e 44 65 62 75 67 3c 2f 61 3e 20 61 6e 64 20 3c 61 20 | .href="#Debug">Debug</a>.and.<a. |
| 4f980 | 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< |
| 4f9a0 | 2f 61 3e 20 62 75 69 6c 64 73 20 61 6e 64 20 64 69 73 61 62 6c 65 64 20 62 79 20 64 65 66 61 75 | /a>.builds.and.disabled.by.defau |
| 4f9c0 | 6c 74 20 69 6e 20 3c 61 20 68 72 65 66 3d 22 23 52 65 6c 65 61 73 65 46 61 73 74 22 3e 52 65 6c | lt.in.<a.href="#ReleaseFast">Rel |
| 4f9e0 | 65 61 73 65 46 61 73 74 3c 2f 61 3e 20 61 6e 64 20 3c 61 20 68 72 65 66 3d 22 23 52 65 6c 65 61 | easeFast</a>.and.<a.href="#Relea |
| 4fa00 | 73 65 53 6d 61 6c 6c 22 3e 52 65 6c 65 61 73 65 53 6d 61 6c 6c 3c 2f 61 3e 20 62 75 69 6c 64 73 | seSmall">ReleaseSmall</a>.builds |
| 4fa20 | 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 | ........</p>.......<p>.......The |
| 4fa40 | 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 61 74 65 20 74 68 | re.are.a.few.ways.to.activate.th |
| 4fa60 | 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 61 74 75 72 65 3a | is.error.return.tracing.feature: |
| 4fa80 | 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>.........< |
| 4faa0 | 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 69 6e 3c 2f 6c 69 | li>Return.an.error.from.main</li |
| 4fac0 | 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 65 73 20 69 74 73 | >.........<li>An.error.makes.its |
| 4fae0 | 20 77 61 79 20 74 6f 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 | .way.to.<code.class="zig"><span. |
| 4fb00 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 61 74 63 68 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 | class="tok-kw">catch</span>.<spa |
| 4fb20 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 | n.class="tok-kw">unreachable</sp |
| 4fb40 | 61 6e 3e 3c 2f 63 6f 64 65 3e 20 61 6e 64 20 79 6f 75 20 68 61 76 65 20 6e 6f 74 20 6f 76 65 72 | an></code>.and.you.have.not.over |
| 4fb60 | 72 69 64 64 65 6e 20 74 68 65 20 64 65 66 61 75 6c 74 20 70 61 6e 69 63 20 68 61 6e 64 6c 65 72 | ridden.the.default.panic.handler |
| 4fb80 | 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 55 73 65 20 3c 61 20 68 72 65 66 3d 22 23 | </li>.........<li>Use.<a.href="# |
| 4fba0 | 65 72 72 6f 72 52 65 74 75 72 6e 54 72 61 63 65 22 3e 65 72 72 6f 72 52 65 74 75 72 6e 54 72 61 | errorReturnTrace">errorReturnTra |
| 4fbc0 | 63 65 3c 2f 61 3e 20 74 6f 20 61 63 63 65 73 73 20 74 68 65 20 63 75 72 72 65 6e 74 20 72 65 74 | ce</a>.to.access.the.current.ret |
| 4fbe0 | 75 72 6e 20 74 72 61 63 65 2e 20 59 6f 75 20 63 61 6e 20 75 73 65 20 3c 63 6f 64 65 20 63 6c 61 | urn.trace..You.can.use.<code.cla |
| 4fc00 | 73 73 3d 22 7a 69 67 22 3e 73 74 64 2e 64 65 62 75 67 2e 64 75 6d 70 53 74 61 63 6b 54 72 61 63 | ss="zig">std.debug.dumpStackTrac |
| 4fc20 | 65 3c 2f 63 6f 64 65 3e 20 74 6f 20 70 72 69 6e 74 20 69 74 2e 20 54 68 69 73 20 66 75 6e 63 74 | e</code>.to.print.it..This.funct |
| 4fc40 | 69 6f 6e 20 72 65 74 75 72 6e 73 20 63 6f 6d 70 74 69 6d 65 2d 6b 6e 6f 77 6e 20 3c 61 20 68 72 | ion.returns.comptime-known.<a.hr |
| 4fc60 | 65 66 3d 22 23 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 61 3e 20 77 68 65 6e 20 62 75 69 6c 64 69 6e | ef="#null">null</a>.when.buildin |
| 4fc80 | 67 20 77 69 74 68 6f 75 74 20 65 72 72 6f 72 20 72 65 74 75 72 6e 20 74 72 61 63 69 6e 67 20 73 | g.without.error.return.tracing.s |
| 4fca0 | 75 70 70 6f 72 74 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c | upport.</li>.......</ul>.......< |
| 4fcc0 | 68 33 20 69 64 3d 22 49 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 2d 44 65 74 61 69 6c 73 22 3e 3c | h3.id="Implementation-Details">< |
| 4fce0 | 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 49 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 2d 44 65 74 61 | a.href="#toc-Implementation-Deta |
| 4fd00 | 69 6c 73 22 3e 49 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 20 44 65 74 61 69 6c 73 3c 2f 61 3e 20 | ils">Implementation.Details</a>. |
| 4fd20 | 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 61 | <a.class="hdr".href="#Implementa |
| 4fd40 | 74 69 6f 6e 2d 44 65 74 61 69 6c 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 | tion-Details">..</a></h3>....... |
| 4fd60 | 20 3c 70 3e 0a 20 20 20 20 20 20 54 6f 20 61 6e 61 6c 79 7a 65 20 70 65 72 66 6f 72 6d 61 6e 63 | .<p>.......To.analyze.performanc |
| 4fd80 | 65 20 63 6f 73 74 2c 20 74 68 65 72 65 20 61 72 65 20 74 77 6f 20 63 61 73 65 73 3a 0a 20 20 20 | e.cost,.there.are.two.cases:.... |
| 4fda0 | 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 77 | ...</p>.......<ul>.........<li>w |
| 4fdc0 | 68 65 6e 20 6e 6f 20 65 72 72 6f 72 73 20 61 72 65 20 72 65 74 75 72 6e 65 64 3c 2f 6c 69 3e 0a | hen.no.errors.are.returned</li>. |
| 4fde0 | 20 20 20 20 20 20 20 20 3c 6c 69 3e 77 68 65 6e 20 72 65 74 75 72 6e 69 6e 67 20 65 72 72 6f 72 | ........<li>when.returning.error |
| 4fe00 | 73 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 | s</li>.......</ul>.......<p>.... |
| 4fe20 | 20 20 20 46 6f 72 20 74 68 65 20 63 61 73 65 20 77 68 65 6e 20 6e 6f 20 65 72 72 6f 72 73 20 61 | ...For.the.case.when.no.errors.a |
| 4fe40 | 72 65 20 72 65 74 75 72 6e 65 64 2c 20 74 68 65 20 63 6f 73 74 20 69 73 20 61 20 73 69 6e 67 6c | re.returned,.the.cost.is.a.singl |
| 4fe60 | 65 20 6d 65 6d 6f 72 79 20 77 72 69 74 65 20 6f 70 65 72 61 74 69 6f 6e 2c 20 6f 6e 6c 79 20 69 | e.memory.write.operation,.only.i |
| 4fe80 | 6e 20 74 68 65 20 66 69 72 73 74 20 6e 6f 6e 2d 66 61 69 6c 61 62 6c 65 20 66 75 6e 63 74 69 6f | n.the.first.non-failable.functio |
| 4fea0 | 6e 20 69 6e 20 74 68 65 20 63 61 6c 6c 20 67 72 61 70 68 20 74 68 61 74 20 63 61 6c 6c 73 20 61 | n.in.the.call.graph.that.calls.a |
| 4fec0 | 20 66 61 69 6c 61 62 6c 65 20 66 75 6e 63 74 69 6f 6e 2c 20 69 2e 65 2e 20 77 68 65 6e 20 61 20 | .failable.function,.i.e..when.a. |
| 4fee0 | 66 75 6e 63 74 69 6f 6e 20 72 65 74 75 72 6e 69 6e 67 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | function.returning.<code.class=" |
| 4ff00 | 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 | zig"><span.class="tok-type">void |
| 4ff20 | 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 6e 20 | </span></code>.calls.a.function. |
| 4ff40 | 72 65 74 75 72 6e 69 6e 67 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 | returning.<code.class="zig"><spa |
| 4ff60 | 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 3c 2f 63 | n.class="tok-kw">error</span></c |
| 4ff80 | 6f 64 65 3e 2e 0a 20 20 20 20 20 20 54 68 69 73 20 69 73 20 74 6f 20 69 6e 69 74 69 61 6c 69 7a | ode>........This.is.to.initializ |
| 4ffa0 | 65 20 74 68 69 73 20 73 74 72 75 63 74 20 69 6e 20 74 68 65 20 73 74 61 63 6b 20 6d 65 6d 6f 72 | e.this.struct.in.the.stack.memor |
| 4ffc0 | 79 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 | y:.......</p>.......<pre><code.c |
| 4ffe0 | 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | lass="zig"><span.class="tok-kw"> |
| 50000 | 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"> |
| 50020 | 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 53 74 61 63 6b 54 72 61 63 65 20 3d 20 3c 73 70 61 6e 20 | const</span>.StackTrace.=.<span. |
| 50040 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 74 72 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 | class="tok-kw">struct</span>.{.. |
| 50060 | 20 20 20 69 6e 64 65 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 | ...index:.<span.class="tok-type" |
| 50080 | 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 69 6e 73 74 72 75 63 74 69 6f 6e 5f 61 | >usize</span>,.....instruction_a |
| 500a0 | 64 64 72 65 73 73 65 73 3a 20 5b 4e 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | ddresses:.[N]<span.class="tok-ty |
| 500c0 | 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 2c 0a 7d 3b 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 | pe">usize</span>,.};</code></pre |
| 500e0 | 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 48 65 72 65 2c 20 4e 20 69 73 20 74 68 65 | >.......<p>.......Here,.N.is.the |
| 50100 | 20 6d 61 78 69 6d 75 6d 20 66 75 6e 63 74 69 6f 6e 20 63 61 6c 6c 20 64 65 70 74 68 20 61 73 20 | .maximum.function.call.depth.as. |
| 50120 | 64 65 74 65 72 6d 69 6e 65 64 20 62 79 20 63 61 6c 6c 20 67 72 61 70 68 20 61 6e 61 6c 79 73 69 | determined.by.call.graph.analysi |
| 50140 | 73 2e 20 52 65 63 75 72 73 69 6f 6e 20 69 73 20 69 67 6e 6f 72 65 64 20 61 6e 64 20 63 6f 75 6e | s..Recursion.is.ignored.and.coun |
| 50160 | 74 73 20 66 6f 72 20 32 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 | ts.for.2........</p>.......<p>.. |
| 50180 | 20 20 20 20 20 41 20 70 6f 69 6e 74 65 72 20 74 6f 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a | .....A.pointer.to.<code.class="z |
| 501a0 | 69 67 22 3e 53 74 61 63 6b 54 72 61 63 65 3c 2f 63 6f 64 65 3e 20 69 73 20 70 61 73 73 65 64 20 | ig">StackTrace</code>.is.passed. |
| 501c0 | 61 73 20 61 20 73 65 63 72 65 74 20 70 61 72 61 6d 65 74 65 72 20 74 6f 20 65 76 65 72 79 20 66 | as.a.secret.parameter.to.every.f |
| 501e0 | 75 6e 63 74 69 6f 6e 20 74 68 61 74 20 63 61 6e 20 72 65 74 75 72 6e 20 61 6e 20 65 72 72 6f 72 | unction.that.can.return.an.error |
| 50200 | 2c 20 62 75 74 20 69 74 27 73 20 61 6c 77 61 79 73 20 74 68 65 20 66 69 72 73 74 20 70 61 72 61 | ,.but.it's.always.the.first.para |
| 50220 | 6d 65 74 65 72 2c 20 73 6f 20 69 74 20 63 61 6e 20 6c 69 6b 65 6c 79 20 73 69 74 20 69 6e 20 61 | meter,.so.it.can.likely.sit.in.a |
| 50240 | 20 72 65 67 69 73 74 65 72 20 61 6e 64 20 73 74 61 79 20 74 68 65 72 65 2e 0a 20 20 20 20 20 20 | .register.and.stay.there........ |
| 50260 | 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 61 74 27 73 20 69 74 20 66 | </p>.......<p>.......That's.it.f |
| 50280 | 6f 72 20 74 68 65 20 70 61 74 68 20 77 68 65 6e 20 6e 6f 20 65 72 72 6f 72 73 20 6f 63 63 75 72 | or.the.path.when.no.errors.occur |
| 502a0 | 2e 20 49 74 27 73 20 70 72 61 63 74 69 63 61 6c 6c 79 20 66 72 65 65 20 69 6e 20 74 65 72 6d 73 | ..It's.practically.free.in.terms |
| 502c0 | 20 6f 66 20 70 65 72 66 6f 72 6d 61 6e 63 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 | .of.performance........</p>..... |
| 502e0 | 20 20 3c 70 3e 0a 20 20 20 20 20 20 57 68 65 6e 20 67 65 6e 65 72 61 74 69 6e 67 20 74 68 65 20 | ..<p>.......When.generating.the. |
| 50300 | 63 6f 64 65 20 66 6f 72 20 61 20 66 75 6e 63 74 69 6f 6e 20 74 68 61 74 20 72 65 74 75 72 6e 73 | code.for.a.function.that.returns |
| 50320 | 20 61 6e 20 65 72 72 6f 72 2c 20 6a 75 73 74 20 62 65 66 6f 72 65 20 74 68 65 20 3c 63 6f 64 65 | .an.error,.just.before.the.<code |
| 50340 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | .class="zig"><span.class="tok-kw |
| 50360 | 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 6d 65 6e 74 | ">return</span></code>.statement |
| 50380 | 20 28 6f 6e 6c 79 20 66 6f 72 20 74 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | .(only.for.the.<code.class="zig" |
| 503a0 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 | ><span.class="tok-kw">return</sp |
| 503c0 | 61 6e 3e 3c 2f 63 6f 64 65 3e 20 73 74 61 74 65 6d 65 6e 74 73 20 74 68 61 74 20 72 65 74 75 72 | an></code>.statements.that.retur |
| 503e0 | 6e 20 65 72 72 6f 72 73 29 2c 20 5a 69 67 20 67 65 6e 65 72 61 74 65 73 20 61 20 63 61 6c 6c 20 | n.errors),.Zig.generates.a.call. |
| 50400 | 74 6f 20 74 68 69 73 20 66 75 6e 63 74 69 6f 6e 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 | to.this.function:.......</p>.... |
| 50420 | 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 | ...<pre><code.class="zig"><span. |
| 50440 | 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 6b 65 64 20 61 73 | class="tok-comment">//.marked.as |
| 50460 | 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 4c 4c 56 4d 20 49 | ."no-inline".in.LLVM.I |
| 50480 | 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 6b 77 22 3e 66 6e | R</span>.<span.class="tok-kw">fn |
| 504a0 | 3c 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 5f 5f 7a | </span>.<span.class="tok-fn">__z |
| 504c0 | 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 63 6b 5f 74 72 61 | ig_return_error</span>(stack_tra |
| 504e0 | 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 73 73 3d 22 74 6f | ce:.*StackTrace).<span.class="to |
| 50500 | 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 73 74 61 63 6b 5f | k-type">void</span>.{.....stack_ |
| 50520 | 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 73 5b 73 74 61 63 | trace.instruction_addresses[stac |
| 50540 | 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 73 73 3d 22 74 6f | k_trace.index].=.<span.class="to |
| 50560 | 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 72 65 74 75 72 6e 41 64 64 72 65 73 73 3c 2f 73 70 61 6e 3e | k-builtin">@returnAddress</span> |
| 50580 | 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 3d 20 28 73 74 61 | ();.....stack_trace.index.=.(sta |
| 505a0 | 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 73 73 3d 22 74 6f | ck_trace.index.+.<span.class="to |
| 505c0 | 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 3c 2f 63 6f 64 65 | k-number">1</span>).%.N;.}</code |
| 505e0 | 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 20 63 6f 73 74 | ></pre>.......<p>.......The.cost |
| 50600 | 20 69 73 20 32 20 6d 61 74 68 20 6f 70 65 72 61 74 69 6f 6e 73 20 70 6c 75 73 20 73 6f 6d 65 20 | .is.2.math.operations.plus.some. |
| 50620 | 6d 65 6d 6f 72 79 20 72 65 61 64 73 20 61 6e 64 20 77 72 69 74 65 73 2e 20 54 68 65 20 6d 65 6d | memory.reads.and.writes..The.mem |
| 50640 | 6f 72 79 20 61 63 63 65 73 73 65 64 20 69 73 20 63 6f 6e 73 74 72 61 69 6e 65 64 20 61 6e 64 20 | ory.accessed.is.constrained.and. |
| 50660 | 73 68 6f 75 6c 64 20 72 65 6d 61 69 6e 20 63 61 63 68 65 64 20 66 6f 72 20 74 68 65 20 64 75 72 | should.remain.cached.for.the.dur |
| 50680 | 61 74 69 6f 6e 20 6f 66 20 74 68 65 20 65 72 72 6f 72 20 72 65 74 75 72 6e 20 62 75 62 62 6c 69 | ation.of.the.error.return.bubbli |
| 506a0 | 6e 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 41 | ng........</p>.......<p>.......A |
| 506c0 | 73 20 66 6f 72 20 63 6f 64 65 20 73 69 7a 65 20 63 6f 73 74 2c 20 31 20 66 75 6e 63 74 69 6f 6e | s.for.code.size.cost,.1.function |
| 506e0 | 20 63 61 6c 6c 20 62 65 66 6f 72 65 20 61 20 72 65 74 75 72 6e 20 73 74 61 74 65 6d 65 6e 74 20 | .call.before.a.return.statement. |
| 50700 | 69 73 20 6e 6f 20 62 69 67 20 64 65 61 6c 2e 20 45 76 65 6e 20 73 6f 2c 0a 20 20 20 20 20 20 49 | is.no.big.deal..Even.so,.......I |
| 50720 | 20 68 61 76 65 20 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f | .have.<a.href="https://github.co |
| 50740 | 6d 2f 7a 69 67 6c 61 6e 67 2f 7a 69 67 2f 69 73 73 75 65 73 2f 36 39 30 22 3e 61 20 70 6c 61 6e | m/ziglang/zig/issues/690">a.plan |
| 50760 | 3c 2f 61 3e 20 74 6f 20 6d 61 6b 65 20 74 68 65 20 63 61 6c 6c 20 74 6f 0a 20 20 20 20 20 20 3c | </a>.to.make.the.call.to.......< |
| 50780 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 5f 5f 7a 69 67 5f 72 65 74 75 72 6e 5f 65 72 | code.class="zig">__zig_return_er |
| 507a0 | 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 20 62 72 | ror</code>.a.tail.call,.which.br |
| 507c0 | 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 74 6f 20 | ings.the.code.size.cost.down.to. |
| 507e0 | 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 72 6e 20 | actually.zero..What.is.a.return. |
| 50800 | 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 6f 72 20 | statement.in.code.without.error. |
| 50820 | 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 75 6d 70 | return.tracing.can.become.a.jump |
| 50840 | 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 6f 72 20 | .instruction.in.code.with.error. |
| 50860 | 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 20 20 20 | return.tracing........</p>...... |
| 50880 | 20 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 31 20 69 64 3d 22 4f 70 | ......................<h1.id="Op |
| 508a0 | 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 61 6c 73 | tionals"><a.href="#toc-Optionals |
| 508c0 | 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 22 20 68 | ">Optionals</a>.<a.class="hdr".h |
| 508e0 | 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 31 3e 0a 0a 20 20 | ref="#Optionals">..</a></h1>.... |
| 50900 | 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 69 67 20 | ....<p>.......One.area.that.Zig. |
| 50920 | 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 6f 6d 69 | provides.safety.without.compromi |
| 50940 | 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 61 62 69 | sing.efficiency.or.......readabi |
| 50960 | 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 65 2e 0a | lity.is.with.the.optional.type.. |
| 50980 | 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 20 71 | ......</p>.......<p>.......The.q |
| 509a0 | 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 70 74 69 | uestion.mark.symbolizes.the.opti |
| 509c0 | 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 74 79 70 | onal.type..You.can.convert.a.typ |
| 509e0 | 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 79 20 70 | e.to.an.optional.......type.by.p |
| 50a00 | 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 6e 74 20 | utting.a.question.mark.in.front. |
| 50a20 | 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 20 20 20 | of.it,.like.this:.......</p>.... |
| 50a40 | 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 | ...<pre><code.class="zig"><span. |
| 50a60 | 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 72 6d 61 6c 20 69 6e | class="tok-comment">//.normal.in |
| 50a80 | 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 6b 2d 6b 77 | teger</span>.<span.class="tok-kw |
| 50aa0 | 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6e 6f 72 6d 61 6c 5f 69 6e 74 3a 20 3c 73 70 61 6e | ">const</span>.normal_int:.<span |
| 50ac0 | 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>.=.< |
| 50ae0 | 73 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 |
| 50b00 | 61 6e 3e 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e | an>;..<span.class="tok-comment"> |
| 50b20 | 2f 2f 20 6f 70 74 69 6f 6e 61 6c 20 69 6e 74 65 67 65 72 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e | //.optional.integer</span>.<span |
| 50b40 | 20 63 6c 61 73 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 | .class="tok-kw">const</span>.opt |
| 50b60 | 69 6f 6e 61 6c 5f 69 6e 74 3a 20 3f 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | ional_int:.?<span.class="tok-typ |
| 50b80 | 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 |
| 50ba0 | 2d 6e 75 6d 62 65 72 22 3e 35 36 37 38 3c 2f 73 70 61 6e 3e 3b 3c 2f 63 6f 64 65 3e 3c 2f 70 72 | -number">5678</span>;</code></pr |
| 50bc0 | 65 3e 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 | e>.......<p>.......Now.the.varia |
| 50be0 | 62 6c 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 6f 70 74 69 6f 6e 61 6c 5f 69 | ble.<code.class="zig">optional_i |
| 50c00 | 6e 74 3c 2f 63 6f 64 65 3e 20 63 6f 75 6c 64 20 62 65 20 61 6e 20 3c 63 6f 64 65 20 63 6c 61 73 | nt</code>.could.be.an.<code.clas |
| 50c20 | 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 | s="zig"><span.class="tok-type">i |
| 50c40 | 33 32 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 6f 72 20 3c 63 6f 64 65 20 63 6c 61 73 73 | 32</span></code>,.or.<code.class |
| 50c60 | 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 | ="zig"><span.class="tok-null">nu |
| 50c80 | 6c 6c 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 | ll</span></code>........</p>.... |
| 50ca0 | 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 6e 73 74 65 61 64 20 6f 66 20 69 6e 74 65 67 65 72 73 | ...<p>.......Instead.of.integers |
| 50cc0 | 2c 20 6c 65 74 27 73 20 74 61 6c 6b 20 61 62 6f 75 74 20 70 6f 69 6e 74 65 72 73 2e 20 4e 75 6c | ,.let's.talk.about.pointers..Nul |
| 50ce0 | 6c 20 72 65 66 65 72 65 6e 63 65 73 20 61 72 65 20 74 68 65 20 73 6f 75 72 63 65 20 6f 66 20 6d | l.references.are.the.source.of.m |
| 50d00 | 61 6e 79 20 72 75 6e 74 69 6d 65 0a 20 20 20 20 20 20 65 78 63 65 70 74 69 6f 6e 73 2c 20 61 6e | any.runtime.......exceptions,.an |
| 50d20 | 64 20 65 76 65 6e 20 73 74 61 6e 64 20 61 63 63 75 73 65 64 20 6f 66 20 62 65 69 6e 67 0a 20 20 | d.even.stand.accused.of.being... |
| 50d40 | 20 20 20 20 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 77 77 77 2e 6c 75 63 69 64 63 68 | ....<a.href="https://www.lucidch |
| 50d60 | 61 72 74 2e 63 6f 6d 2f 74 65 63 68 62 6c 6f 67 2f 32 30 31 35 2f 30 38 2f 33 31 2f 74 68 65 2d | art.com/techblog/2015/08/31/the- |
| 50d80 | 77 6f 72 73 74 2d 6d 69 73 74 61 6b 65 2d 6f 66 2d 63 6f 6d 70 75 74 65 72 2d 73 63 69 65 6e 63 | worst-mistake-of-computer-scienc |
| 50da0 | 65 2f 22 3e 74 68 65 20 77 6f 72 73 74 20 6d 69 73 74 61 6b 65 20 6f 66 20 63 6f 6d 70 75 74 65 | e/">the.worst.mistake.of.compute |
| 50dc0 | 72 20 73 63 69 65 6e 63 65 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 | r.science</a>........</p>....... |
| 50de0 | 3c 70 3e 5a 69 67 20 64 6f 65 73 20 6e 6f 74 20 68 61 76 65 20 74 68 65 6d 2e 3c 2f 70 3e 0a 20 | <p>Zig.does.not.have.them.</p>.. |
| 50e00 | 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 6e 73 74 65 61 64 2c 20 79 6f 75 20 63 61 6e 20 | .....<p>.......Instead,.you.can. |
| 50e20 | 75 73 65 20 61 6e 20 6f 70 74 69 6f 6e 61 6c 20 70 6f 69 6e 74 65 72 2e 20 54 68 69 73 20 73 65 | use.an.optional.pointer..This.se |
| 50e40 | 63 72 65 74 6c 79 20 63 6f 6d 70 69 6c 65 73 20 64 6f 77 6e 20 74 6f 20 61 20 6e 6f 72 6d 61 6c | cretly.compiles.down.to.a.normal |
| 50e60 | 20 70 6f 69 6e 74 65 72 2c 0a 20 20 20 20 20 20 73 69 6e 63 65 20 77 65 20 6b 6e 6f 77 20 77 65 | .pointer,.......since.we.know.we |
| 50e80 | 20 63 61 6e 20 75 73 65 20 30 20 61 73 20 74 68 65 20 6e 75 6c 6c 20 76 61 6c 75 65 20 66 6f 72 | .can.use.0.as.the.null.value.for |
| 50ea0 | 20 74 68 65 20 6f 70 74 69 6f 6e 61 6c 20 74 79 70 65 2e 20 42 75 74 20 74 68 65 20 63 6f 6d 70 | .the.optional.type..But.the.comp |
| 50ec0 | 69 6c 65 72 0a 20 20 20 20 20 20 63 61 6e 20 63 68 65 63 6b 20 79 6f 75 72 20 77 6f 72 6b 20 61 | iler.......can.check.your.work.a |
| 50ee0 | 6e 64 20 6d 61 6b 65 20 73 75 72 65 20 79 6f 75 20 64 6f 6e 27 74 20 61 73 73 69 67 6e 20 6e 75 | nd.make.sure.you.don't.assign.nu |
| 50f00 | 6c 6c 20 74 6f 20 73 6f 6d 65 74 68 69 6e 67 20 74 68 61 74 20 63 61 6e 27 74 20 62 65 20 6e 75 | ll.to.something.that.can't.be.nu |
| 50f20 | 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 54 | ll........</p>.......<p>.......T |
| 50f40 | 79 70 69 63 61 6c 6c 79 20 74 68 65 20 64 6f 77 6e 73 69 64 65 20 6f 66 20 6e 6f 74 20 68 61 76 | ypically.the.downside.of.not.hav |
| 50f60 | 69 6e 67 20 6e 75 6c 6c 20 69 73 20 74 68 61 74 20 69 74 20 6d 61 6b 65 73 20 74 68 65 20 63 6f | ing.null.is.that.it.makes.the.co |
| 50f80 | 64 65 20 6d 6f 72 65 20 76 65 72 62 6f 73 65 20 74 6f 0a 20 20 20 20 20 20 77 72 69 74 65 2e 20 | de.more.verbose.to.......write.. |
| 50fa0 | 42 75 74 2c 20 6c 65 74 27 73 20 63 6f 6d 70 61 72 65 20 73 6f 6d 65 20 65 71 75 69 76 61 6c 65 | But,.let's.compare.some.equivale |
| 50fc0 | 6e 74 20 43 20 63 6f 64 65 20 61 6e 64 20 5a 69 67 20 63 6f 64 65 2e 0a 20 20 20 20 20 20 3c 2f | nt.C.code.and.Zig.code........</ |
| 50fe0 | 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 61 73 6b 3a 20 63 61 6c 6c 20 6d 61 | p>.......<p>.......Task:.call.ma |
| 51000 | 6c 6c 6f 63 2c 20 69 66 20 74 68 65 20 72 65 73 75 6c 74 20 69 73 20 6e 75 6c 6c 2c 20 72 65 74 | lloc,.if.the.result.is.null,.ret |
| 51020 | 75 72 6e 20 6e 75 6c 6c 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 43 20 | urn.null........</p>.......<p>C. |
| 51040 | 63 6f 64 65 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d | code</p>.......<pre><code.class= |
| 51060 | 22 63 70 70 22 3e 2f 2f 20 6d 61 6c 6c 6f 63 20 70 72 6f 74 6f 74 79 70 65 20 69 6e 63 6c 75 64 | "cpp">//.malloc.prototype.includ |
| 51080 | 65 64 20 66 6f 72 20 72 65 66 65 72 65 6e 63 65 0a 76 6f 69 64 20 2a 6d 61 6c 6c 6f 63 28 73 69 | ed.for.reference.void.*malloc(si |
| 510a0 | 7a 65 5f 74 20 73 69 7a 65 29 3b 0a 0a 73 74 72 75 63 74 20 46 6f 6f 20 2a 64 6f 5f 61 5f 74 68 | ze_t.size);..struct.Foo.*do_a_th |
| 510c0 | 69 6e 67 28 76 6f 69 64 29 20 7b 0a 20 20 20 20 63 68 61 72 20 2a 70 74 72 20 3d 20 6d 61 6c 6c | ing(void).{.....char.*ptr.=.mall |
| 510e0 | 6f 63 28 31 32 33 34 29 3b 0a 20 20 20 20 69 66 20 28 21 70 74 72 29 20 72 65 74 75 72 6e 20 4e | oc(1234);.....if.(!ptr).return.N |
| 51100 | 55 4c 4c 3b 0a 20 20 20 20 2f 2f 20 2e 2e 2e 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 | ULL;.....//.....}</code></pre>.. |
| 51120 | 20 20 20 20 20 3c 70 3e 5a 69 67 20 63 6f 64 65 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 72 65 3e | .....<p>Zig.code</p>.......<pre> |
| 51140 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | <code.class="zig"><span.class="t |
| 51160 | 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 6d 61 6c 6c 6f 63 20 70 72 6f 74 6f 74 79 70 65 20 | ok-comment">//.malloc.prototype. |
| 51180 | 69 6e 63 6c 75 64 65 64 20 66 6f 72 20 72 65 66 65 72 65 6e 63 65 3c 2f 73 70 61 6e 3e 0a 3c 73 | included.for.reference</span>.<s |
| 511a0 | 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> |
| 511c0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 | .<span.class="tok-kw">fn</span>. |
| 511e0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 6d 61 6c 6c 6f 63 3c 2f 73 70 61 | <span.class="tok-fn">malloc</spa |
| 51200 | 6e 3e 28 73 69 7a 65 3a 20 73 69 7a 65 5f 74 29 20 3f 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | n>(size:.size_t).?*<span.class=" |
| 51220 | 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 | tok-type">u8</span>;..<span.clas |
| 51240 | 73 3d 22 74 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 |
| 51260 | 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 29 20 3f 2a 46 6f | ="tok-fn">doAThing</span>().?*Fo |
| 51280 | 6f 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e | o.{.....<span.class="tok-kw">con |
| 512a0 | 73 74 3c 2f 73 70 61 6e 3e 20 70 74 72 20 3d 20 6d 61 6c 6c 6f 63 28 3c 73 70 61 6e 20 63 6c 61 | st</span>.ptr.=.malloc(<span.cla |
| 512c0 | 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 20 3c 73 70 | ss="tok-number">1234</span>).<sp |
| 512e0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 6f 72 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 | an.class="tok-kw">orelse</span>. |
| 51300 | 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 |
| 51320 | 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 6e 75 6c 6c 3c 2f | n>.<span.class="tok-null">null</ |
| 51340 | 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d | span>;.....<span.class="tok-comm |
| 51360 | 65 6e 74 22 3e 2f 2f 20 2e 2e 2e 3c 2f 73 70 61 6e 3e 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 | ent">//....</span>.}</code></pre |
| 51380 | 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 20 20 48 65 72 65 2c 20 5a 69 67 20 69 73 | >.......<p>.........Here,.Zig.is |
| 513a0 | 20 61 74 20 6c 65 61 73 74 20 61 73 20 63 6f 6e 76 65 6e 69 65 6e 74 2c 20 69 66 20 6e 6f 74 20 | .at.least.as.convenient,.if.not. |
| 513c0 | 6d 6f 72 65 2c 20 74 68 61 6e 20 43 2e 20 41 6e 64 2c 20 74 68 65 20 74 79 70 65 20 6f 66 20 22 | more,.than.C..And,.the.type.of." |
| 513e0 | 70 74 72 22 0a 20 20 20 20 20 20 20 20 69 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | ptr".........is.<code.class="zig |
| 51400 | 22 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 38 3c 2f 73 70 | ">*<span.class="tok-type">u8</sp |
| 51420 | 61 6e 3e 3c 2f 63 6f 64 65 3e 20 3c 65 6d 3e 6e 6f 74 3c 2f 65 6d 3e 20 3c 63 6f 64 65 20 63 6c | an></code>.<em>not</em>.<code.cl |
| 51440 | 61 73 73 3d 22 7a 69 67 22 3e 3f 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | ass="zig">?*<span.class="tok-typ |
| 51460 | 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 20 54 68 65 20 3c 63 6f 64 65 20 63 | e">u8</span></code>..The.<code.c |
| 51480 | 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | lass="zig"><span.class="tok-kw"> |
| 514a0 | 6f 72 65 6c 73 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6b 65 79 77 6f 72 64 0a 20 20 20 | orelse</span></code>.keyword.... |
| 514c0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 75 6e 77 72 61 70 70 65 64 20 74 68 65 20 6f | .................unwrapped.the.o |
| 514e0 | 70 74 69 6f 6e 61 6c 20 74 79 70 65 20 61 6e 64 20 74 68 65 72 65 66 6f 72 65 20 3c 63 6f 64 65 | ptional.type.and.therefore.<code |
| 51500 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 70 74 72 3c 2f 63 6f 64 65 3e 20 69 73 20 67 75 61 72 61 | .class="zig">ptr</code>.is.guara |
| 51520 | 6e 74 65 65 64 20 74 6f 20 62 65 20 6e 6f 6e 2d 6e 75 6c 6c 20 65 76 65 72 79 77 68 65 72 65 0a | nteed.to.be.non-null.everywhere. |
| 51540 | 20 20 20 20 20 20 20 20 69 74 20 69 73 20 75 73 65 64 20 69 6e 20 74 68 65 20 66 75 6e 63 74 69 | ........it.is.used.in.the.functi |
| 51560 | 6f 6e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 20 | on........</p>.......<p>........ |
| 51580 | 20 54 68 65 20 6f 74 68 65 72 20 66 6f 72 6d 20 6f 66 20 63 68 65 63 6b 69 6e 67 20 61 67 61 69 | .The.other.form.of.checking.agai |
| 515a0 | 6e 73 74 20 4e 55 4c 4c 20 79 6f 75 20 6d 69 67 68 74 20 73 65 65 20 6c 6f 6f 6b 73 20 6c 69 6b | nst.NULL.you.might.see.looks.lik |
| 515c0 | 65 20 74 68 69 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 | e.this:.......</p>.......<pre><c |
| 515e0 | 6f 64 65 20 63 6c 61 73 73 3d 22 63 70 70 22 3e 76 6f 69 64 20 64 6f 5f 61 5f 74 68 69 6e 67 28 | ode.class="cpp">void.do_a_thing( |
| 51600 | 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 6d | struct.Foo.*foo).{.....//.do.som |
| 51620 | 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 20 | e.stuff......if.(foo).{......... |
| 51640 | 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 20 | do_something_with_foo(foo);..... |
| 51660 | 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 3e | }......//.do.some.stuff.}</code> |
| 51680 | 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 20 20 49 6e 20 5a 69 67 20 | </pre>.......<p>.........In.Zig. |
| 516a0 | 79 6f 75 20 63 61 6e 20 61 63 63 6f 6d 70 6c 69 73 68 20 74 68 65 20 73 61 6d 65 20 74 68 69 6e | you.can.accomplish.the.same.thin |
| 516c0 | 67 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 | g:.......</p>.......<pre><code.c |
| 516e0 | 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | lass="zig"><span.class="tok-kw"> |
| 51700 | 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 64 | fn</span>.<span.class="tok-fn">d |
| 51720 | 6f 41 54 68 69 6e 67 3c 2f 73 70 61 6e 3e 28 6f 70 74 69 6f 6e 61 6c 5f 66 6f 6f 3a 20 3f 2a 46 | oAThing</span>(optional_foo:.?*F |
| 51740 | 6f 6f 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c | oo).<span.class="tok-type">void< |
| 51760 | 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f | /span>.{.....<span.class="tok-co |
| 51780 | 6d 6d 65 6e 74 22 3e 2f 2f 20 64 6f 20 73 6f 6d 65 20 73 74 75 66 66 3c 2f 73 70 61 6e 3e 0a 0a | mment">//.do.some.stuff</span>.. |
| 517a0 | 20 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 |
| 517c0 | 6e 3e 20 28 6f 70 74 69 6f 6e 61 6c 5f 66 6f 6f 29 20 7c 66 6f 6f 7c 20 7b 0a 20 20 20 20 20 20 | n>.(optional_foo).|foo|.{....... |
| 517e0 | 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);.....}.. |
| 51800 | 20 20 20 20 3c 73 70 61 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">// |
| 51820 | 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></ |
| 51840 | 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 4f 6e 63 65 20 61 67 61 69 6e 2c | pre>.......<p>.......Once.again, |
| 51860 | 20 74 68 65 20 6e 6f 74 61 62 6c 65 20 74 68 69 6e 67 20 68 65 72 65 20 69 73 20 74 68 61 74 20 | .the.notable.thing.here.is.that. |
| 51880 | 69 6e 73 69 64 65 20 74 68 65 20 69 66 20 62 6c 6f 63 6b 2c 0a 20 20 20 20 20 20 3c 63 6f 64 65 | inside.the.if.block,.......<code |
| 518a0 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 66 6f 6f 3c 2f 63 6f 64 65 3e 20 69 73 20 6e 6f 20 6c 6f | .class="zig">foo</code>.is.no.lo |
| 518c0 | 6e 67 65 72 20 61 6e 20 6f 70 74 69 6f 6e 61 6c 20 70 6f 69 6e 74 65 72 2c 20 69 74 20 69 73 20 | nger.an.optional.pointer,.it.is. |
| 518e0 | 61 20 70 6f 69 6e 74 65 72 2c 20 77 68 69 63 68 0a 20 20 20 20 20 20 63 61 6e 6e 6f 74 20 62 65 | a.pointer,.which.......cannot.be |
| 51900 | 20 6e 75 6c 6c 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 | .null........</p>.......<p>..... |
| 51920 | 20 20 4f 6e 65 20 62 65 6e 65 66 69 74 20 74 6f 20 74 68 69 73 20 69 73 20 74 68 61 74 20 66 75 | ..One.benefit.to.this.is.that.fu |
| 51940 | 6e 63 74 69 6f 6e 73 20 77 68 69 63 68 20 74 61 6b 65 20 70 6f 69 6e 74 65 72 73 20 61 73 20 61 | nctions.which.take.pointers.as.a |
| 51960 | 72 67 75 6d 65 6e 74 73 20 63 61 6e 0a 20 20 20 20 20 20 62 65 20 61 6e 6e 6f 74 61 74 65 64 20 | rguments.can.......be.annotated. |
| 51980 | 77 69 74 68 20 74 68 65 20 22 6e 6f 6e 6e 75 6c 6c 22 20 61 74 74 72 69 62 75 74 65 20 2d 20 3c | with.the."nonnull".attribute.-.< |
| 519a0 | 63 6f 64 65 3e 5f 5f 61 74 74 72 69 62 75 74 65 5f 5f 28 28 6e 6f 6e 6e 75 6c 6c 29 29 3c 2f 63 | code>__attribute__((nonnull))</c |
| 519c0 | 6f 64 65 3e 20 69 6e 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 67 | ode>.in.......<a.href="https://g |
| 519e0 | 63 63 2e 67 6e 75 2e 6f 72 67 2f 6f 6e 6c 69 6e 65 64 6f 63 73 2f 67 63 63 2d 34 2e 30 2e 30 2f | cc.gnu.org/onlinedocs/gcc-4.0.0/ |
| 51a00 | 67 63 63 2f 46 75 6e 63 74 69 6f 6e 2d 41 74 74 72 69 62 75 74 65 73 2e 68 74 6d 6c 22 3e 47 43 | gcc/Function-Attributes.html">GC |
| 51a20 | 43 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 54 68 65 20 6f 70 74 69 6d 69 7a 65 72 20 63 61 6e 20 73 | C</a>........The.optimizer.can.s |
| 51a40 | 6f 6d 65 74 69 6d 65 73 20 6d 61 6b 65 20 62 65 74 74 65 72 20 64 65 63 69 73 69 6f 6e 73 20 6b | ometimes.make.better.decisions.k |
| 51a60 | 6e 6f 77 69 6e 67 20 74 68 61 74 20 70 6f 69 6e 74 65 72 20 61 72 67 75 6d 65 6e 74 73 0a 20 20 | nowing.that.pointer.arguments... |
| 51a80 | 20 20 20 20 63 61 6e 6e 6f 74 20 62 65 20 6e 75 6c 6c 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 | ....cannot.be.null........</p>.. |
| 51aa0 | 20 20 20 20 20 3c 68 32 20 69 64 3d 22 4f 70 74 69 6f 6e 61 6c 2d 54 79 70 65 22 3e 3c 61 20 68 | .....<h2.id="Optional-Type"><a.h |
| 51ac0 | 72 65 66 3d 22 23 74 6f 63 2d 4f 70 74 69 6f 6e 61 6c 2d 54 79 70 65 22 3e 4f 70 74 69 6f 6e 61 | ref="#toc-Optional-Type">Optiona |
| 51ae0 | 6c 20 54 79 70 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 | l.Type</a>.<a.class="hdr".href=" |
| 51b00 | 23 4f 70 74 69 6f 6e 61 6c 2d 54 79 70 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 | #Optional-Type">..</a></h2>..... |
| 51b20 | 20 20 20 3c 70 3e 41 6e 20 6f 70 74 69 6f 6e 61 6c 20 69 73 20 63 72 65 61 74 65 64 20 62 79 20 | ...<p>An.optional.is.created.by. |
| 51b40 | 70 75 74 74 69 6e 67 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3f 3c 2f 63 6f 64 | putting.<code.class="zig">?</cod |
| 51b60 | 65 3e 20 69 6e 20 66 72 6f 6e 74 20 6f 66 20 61 20 74 79 70 65 2e 20 59 6f 75 20 63 61 6e 20 75 | e>.in.front.of.a.type..You.can.u |
| 51b80 | 73 65 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 0a 20 20 20 20 20 20 72 65 66 6c 65 63 74 69 6f 6e | se.compile-time.......reflection |
| 51ba0 | 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 6e 20 | .to.access.the.child.type.of.an. |
| 51bc0 | 6f 70 74 69 6f 6e 61 6c 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 | optional:</p>.......<p.class="fi |
| 51be0 | 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 | le">test.zig</p><pre><code.class |
| 51c00 | 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 | ="zig"><span.class="tok-kw">cons |
| 51c20 | 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 |
| 51c40 | 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 |
| 51c60 | 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" |
| 51c80 | 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. |
| 51ca0 | 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 |
| 51cc0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 6f 70 74 69 6f 6e 61 6c 20 | .class="tok-str">"optional. |
| 51ce0 | 74 79 70 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | type"</span>.{.....<span.cl |
| 51d00 | 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 6e 20 | ass="tok-comment">//.Declare.an. |
| 51d20 | 6f 70 74 69 6f 6e 61 6c 20 61 6e 64 20 63 6f 65 72 63 65 20 66 72 6f 6d 20 6e 75 6c 6c 3a 3c 2f | optional.and.coerce.from.null:</ |
| 51d40 | 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 |
| 51d60 | 61 72 3c 2f 73 70 61 6e 3e 20 66 6f 6f 3a 20 3f 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ar</span>.foo:.?<span.class="tok |
| 51d80 | 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= |
| 51da0 | 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 3b 0a 0a 20 20 20 20 3c 73 70 | "tok-null">null</span>;......<sp |
| 51dc0 | 61 6e 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 63 65 | an.class="tok-comment">//.Coerce |
| 51de0 | 20 66 72 6f 6d 20 63 68 69 6c 64 20 74 79 70 65 20 6f 66 20 61 6e 20 6f 70 74 69 6f 6e 61 6c 3c | .from.child.type.of.an.optional< |
| 51e00 | 2f 73 70 61 6e 3e 0a 20 20 20 20 66 6f 6f 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | /span>.....foo.=.<span.class="to |
| 51e20 | 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 3c 73 70 61 | k-number">1234</span>;......<spa |
| 51e40 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 55 73 65 20 63 6f 6d | n.class="tok-comment">//.Use.com |
| 51e60 | 70 69 6c 65 2d 74 69 6d 65 20 72 65 66 6c 65 63 74 69 6f 6e 20 74 6f 20 61 63 63 65 73 73 20 74 | pile-time.reflection.to.access.t |
| 51e80 | 68 65 20 63 68 69 6c 64 20 74 79 70 65 20 6f 66 20 74 68 65 20 6f 70 74 69 6f 6e 61 6c 3a 3c 2f | he.child.type.of.the.optional:</ |
| 51ea0 | 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 |
| 51ec0 | 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 61 73 | omptime</span>.expect(<span.clas |
| 51ee0 | 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> |
| 51f00 | 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 |
| 51f20 | 4f 66 3c 2f 73 70 61 6e 3e 28 66 6f 6f 29 29 2e 4f 70 74 69 6f 6e 61 6c 2e 63 68 69 6c 64 20 3d | Of</span>(foo)).Optional.child.= |
| 51f40 | 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 | =.<span.class="tok-type">i32</sp |
| 51f60 | 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 | an>);.}</code></pre><pre><code.c |
| 51f80 | 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 | lass="shell">$.zig.test.test.zig |
| 51fa0 | 0a 31 2f 31 20 74 65 73 74 20 26 71 75 6f 74 3b 6f 70 74 69 6f 6e 61 6c 20 74 79 70 65 26 71 75 | .1/1.test."optional.type&qu |
| 51fc0 | 6f 74 3b 2e 2e 2e 20 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f | ot;....OK.All.1.tests.passed..</ |
| 51fe0 | 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 | code></pre>...............<h2.id |
| 52000 | 3d 22 6e 75 6c 6c 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c | ="null"><a.href="#toc-null">null |
| 52020 | 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 6e 75 6c 6c 22 | </a>.<a.class="hdr".href="#null" |
| 52040 | 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 4a 75 | >..</a></h2>........<p>.......Ju |
| 52060 | 73 74 20 6c 69 6b 65 20 3c 61 20 68 72 65 66 3d 22 23 75 6e 64 65 66 69 6e 65 64 22 3e 75 6e 64 | st.like.<a.href="#undefined">und |
| 52080 | 65 66 69 6e 65 64 3c 2f 61 3e 2c 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 | efined</a>,.<code.class="zig"><s |
| 520a0 | 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> |
| 520c0 | 3c 2f 63 6f 64 65 3e 20 68 61 73 20 69 74 73 20 6f 77 6e 20 74 79 70 65 2c 20 61 6e 64 20 74 68 | </code>.has.its.own.type,.and.th |
| 520e0 | 65 20 6f 6e 6c 79 20 77 61 79 20 74 6f 20 75 73 65 20 69 74 20 69 73 20 74 6f 0a 20 20 20 20 20 | e.only.way.to.use.it.is.to...... |
| 52100 | 20 63 61 73 74 20 69 74 20 74 6f 20 61 20 64 69 66 66 65 72 65 6e 74 20 74 79 70 65 3a 0a 20 20 | .cast.it.to.a.different.type:... |
| 52120 | 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= |
| 52140 | 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 | "zig"><span.class="tok-kw">const |
| 52160 | 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 63 | </span>.optional_value:.?<span.c |
| 52180 | 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 |
| 521a0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 3b | an.class="tok-null">null</span>; |
| 521c0 | 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 | </code></pre>..............<h2.i |
| 521e0 | 64 3d 22 4f 70 74 69 6f 6e 61 6c 2d 50 6f 69 6e 74 65 72 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 | d="Optional-Pointers"><a.href="# |
| 52200 | 74 6f 63 2d 4f 70 74 69 6f 6e 61 6c 2d 50 6f 69 6e 74 65 72 73 22 3e 4f 70 74 69 6f 6e 61 6c 20 | toc-Optional-Pointers">Optional. |
| 52220 | 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 |
| 52240 | 3d 22 23 4f 70 74 69 6f 6e 61 6c 2d 50 6f 69 6e 74 65 72 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 | ="#Optional-Pointers">..</a></h2 |
| 52260 | 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 6e 20 6f 70 74 69 6f 6e 61 6c 20 70 6f 69 6e 74 65 72 20 | >........<p>An.optional.pointer. |
| 52280 | 69 73 20 67 75 61 72 61 6e 74 65 65 64 20 74 6f 20 62 65 20 74 68 65 20 73 61 6d 65 20 73 69 7a | is.guaranteed.to.be.the.same.siz |
| 522a0 | 65 20 61 73 20 61 20 70 6f 69 6e 74 65 72 2e 20 54 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d | e.as.a.pointer..The.<code.class= |
| 522c0 | 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c | "zig"><span.class="tok-null">nul |
| 522e0 | 6c 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6f 66 0a 20 20 20 20 20 20 74 68 65 20 6f 70 74 | l</span></code>.of.......the.opt |
| 52300 | 69 6f 6e 61 6c 20 69 73 20 67 75 61 72 61 6e 74 65 65 64 20 74 6f 20 62 65 20 61 64 64 72 65 73 | ional.is.guaranteed.to.be.addres |
| 52320 | 73 20 30 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 | s.0.</p>.......<p.class="file">t |
| 52340 | 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | est.zig</p><pre><code.class="zig |
| 52360 | 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 | "><span.class="tok-kw">const</sp |
| 52380 | 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 |
| 523a0 | 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 |
| 523c0 | 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 |
| 523e0 | 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 |
| 52400 | 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 |
| 52420 | 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 6f 70 74 69 6f 6e 61 6c 20 70 6f 69 6e 74 | s="tok-str">"optional.point |
| 52440 | 65 72 73 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | ers"</span>.{.....<span.cla |
| 52460 | 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 50 6f 69 6e 74 65 72 73 20 63 61 6e | ss="tok-comment">//.Pointers.can |
| 52480 | 6e 6f 74 20 62 65 20 6e 75 6c 6c 2e 20 49 66 20 79 6f 75 20 77 61 6e 74 20 61 20 6e 75 6c 6c 20 | not.be.null..If.you.want.a.null. |
| 524a0 | 70 6f 69 6e 74 65 72 2c 20 75 73 65 20 74 68 65 20 6f 70 74 69 6f 6e 61 6c 3c 2f 73 70 61 6e 3e | pointer,.use.the.optional</span> |
| 524c0 | 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">/ |
| 524e0 | 2f 20 70 72 65 66 69 78 20 60 3f 60 20 74 6f 20 6d 61 6b 65 20 74 68 65 20 70 6f 69 6e 74 65 72 | /.prefix.`?`.to.make.the.pointer |
| 52500 | 20 74 79 70 65 20 6f 70 74 69 6f 6e 61 6c 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e | .type.optional.</span>.....<span |
| 52520 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 70 74 72 3a 20 | .class="tok-kw">var</span>.ptr:. |
| 52540 | 3f 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 | ?*<span.class="tok-type">i32</sp |
| 52560 | 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 |
| 52580 | 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- |
| 525a0 | 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | kw">var</span>.x:.<span.class="t |
| 525c0 | 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 |
| 525e0 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 70 74 72 | s="tok-number">1</span>;.....ptr |
| 52600 | 20 3d 20 26 61 6d 70 3b 78 3b 0a 0a 20 20 20 20 65 78 70 65 63 74 28 70 74 72 2e 3f 2e 2a 20 3d | .=.&x;......expect(ptr.?.*.= |
| 52620 | 3d 20 3c 73 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 |
| 52640 | 61 6e 3e 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d | an>);......<span.class="tok-comm |
| 52660 | 65 6e 74 22 3e 2f 2f 20 4f 70 74 69 6f 6e 61 6c 20 70 6f 69 6e 74 65 72 73 20 61 72 65 20 74 68 | ent">//.Optional.pointers.are.th |
| 52680 | 65 20 73 61 6d 65 20 73 69 7a 65 20 61 73 20 6e 6f 72 6d 61 6c 20 70 6f 69 6e 74 65 72 73 2c 20 | e.same.size.as.normal.pointers,. |
| 526a0 | 62 65 63 61 75 73 65 20 70 6f 69 6e 74 65 72 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e | because.pointer</span>.....<span |
| 526c0 | 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 30 20 | .class="tok-comment">//.value.0. |
| 526e0 | 69 73 20 75 73 65 64 20 61 73 20 74 68 65 20 6e 75 6c 6c 20 76 61 6c 75 65 2e 3c 2f 73 70 61 6e | is.used.as.the.null.value.</span |
| 52700 | 3e 0a 20 20 20 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 | >.....expect(<span.class="tok-bu |
| 52720 | 69 6c 74 69 6e 22 3e 40 73 69 7a 65 4f 66 3c 2f 73 70 61 6e 3e 28 3f 2a 3c 73 70 61 6e 20 63 6c | iltin">@sizeOf</span>(?*<span.cl |
| 52740 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 3c 73 | ass="tok-type">i32</span>).==.<s |
| 52760 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 69 7a 65 4f 66 3c | pan.class="tok-builtin">@sizeOf< |
| 52780 | 2f 73 70 61 6e 3e 28 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 | /span>(*<span.class="tok-type">i |
| 527a0 | 33 32 3c 2f 73 70 61 6e 3e 29 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e | 32</span>));.}</code></pre><pre> |
| 527c0 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 | <code.class="shell">$.zig.test.t |
| 527e0 | 65 73 74 2e 7a 69 67 0a 31 2f 31 20 74 65 73 74 20 26 71 75 6f 74 3b 6f 70 74 69 6f 6e 61 6c 20 | est.zig.1/1.test."optional. |
| 52800 | 70 6f 69 6e 74 65 72 73 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 | pointers"....OK.All.1.tests |
| 52820 | 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 0a 20 | .passed..</code></pre>.......... |
| 52840 | 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 31 20 69 64 3d 22 43 61 73 74 69 6e 67 22 3e 3c 61 20 | ............<h1.id="Casting"><a. |
| 52860 | 68 72 65 66 3d 22 23 74 6f 63 2d 43 61 73 74 69 6e 67 22 3e 43 61 73 74 69 6e 67 3c 2f 61 3e 20 | href="#toc-Casting">Casting</a>. |
| 52880 | 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 69 6e 67 22 3e c2 | <a.class="hdr".href="#Casting">. |
| 528a0 | a7 3c 2f 61 3e 3c 2f 68 31 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 41 20 3c 73 | .</a></h1>........<p>.......A.<s |
| 528c0 | 74 72 6f 6e 67 3e 74 79 70 65 20 63 61 73 74 3c 2f 73 74 72 6f 6e 67 3e 20 63 6f 6e 76 65 72 74 | trong>type.cast</strong>.convert |
| 528e0 | 73 20 61 20 76 61 6c 75 65 20 6f 66 20 6f 6e 65 20 74 79 70 65 20 74 6f 20 61 6e 6f 74 68 65 72 | s.a.value.of.one.type.to.another |
| 52900 | 2e 0a 20 20 20 20 20 20 5a 69 67 20 68 61 73 20 3c 61 20 68 72 65 66 3d 22 23 54 79 70 65 2d 43 | ........Zig.has.<a.href="#Type-C |
| 52920 | 6f 65 72 63 69 6f 6e 22 3e 54 79 70 65 20 43 6f 65 72 63 69 6f 6e 3c 2f 61 3e 20 66 6f 72 20 63 | oercion">Type.Coercion</a>.for.c |
| 52940 | 6f 6e 76 65 72 73 69 6f 6e 73 20 74 68 61 74 20 61 72 65 20 6b 6e 6f 77 6e 20 74 6f 20 62 65 20 | onversions.that.are.known.to.be. |
| 52960 | 63 6f 6d 70 6c 65 74 65 6c 79 20 73 61 66 65 20 61 6e 64 20 75 6e 61 6d 62 69 67 75 6f 75 73 2c | completely.safe.and.unambiguous, |
| 52980 | 0a 20 20 20 20 20 20 61 6e 64 20 3c 61 20 68 72 65 66 3d 22 23 45 78 70 6c 69 63 69 74 2d 43 61 | .......and.<a.href="#Explicit-Ca |
| 529a0 | 73 74 73 22 3e 45 78 70 6c 69 63 69 74 20 43 61 73 74 73 3c 2f 61 3e 20 66 6f 72 20 63 6f 6e 76 | sts">Explicit.Casts</a>.for.conv |
| 529c0 | 65 72 73 69 6f 6e 73 20 74 68 61 74 20 6f 6e 65 20 77 6f 75 6c 64 20 6e 6f 74 20 77 61 6e 74 20 | ersions.that.one.would.not.want. |
| 529e0 | 74 6f 20 68 61 70 70 65 6e 20 6f 6e 20 61 63 63 69 64 65 6e 74 2e 0a 20 20 20 20 20 20 54 68 65 | to.happen.on.accident........The |
| 52a00 | 72 65 20 69 73 20 61 6c 73 6f 20 61 20 74 68 69 72 64 20 6b 69 6e 64 20 6f 66 20 74 79 70 65 20 | re.is.also.a.third.kind.of.type. |
| 52a20 | 63 6f 6e 76 65 72 73 69 6f 6e 20 63 61 6c 6c 65 64 20 3c 61 20 68 72 65 66 3d 22 23 50 65 65 72 | conversion.called.<a.href="#Peer |
| 52a40 | 2d 54 79 70 65 2d 52 65 73 6f 6c 75 74 69 6f 6e 22 3e 50 65 65 72 20 54 79 70 65 20 52 65 73 6f | -Type-Resolution">Peer.Type.Reso |
| 52a60 | 6c 75 74 69 6f 6e 3c 2f 61 3e 20 66 6f 72 0a 20 20 20 20 20 20 74 68 65 20 63 61 73 65 20 77 68 | lution</a>.for.......the.case.wh |
| 52a80 | 65 6e 20 61 20 72 65 73 75 6c 74 20 74 79 70 65 20 6d 75 73 74 20 62 65 20 64 65 63 69 64 65 64 | en.a.result.type.must.be.decided |
| 52aa0 | 20 67 69 76 65 6e 20 6d 75 6c 74 69 70 6c 65 20 6f 70 65 72 61 6e 64 20 74 79 70 65 73 2e 0a 20 | .given.multiple.operand.types... |
| 52ac0 | 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 54 79 70 65 2d 43 6f 65 | .....</p>.......<h2.id="Type-Coe |
| 52ae0 | 72 63 69 6f 6e 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 54 79 70 65 2d 43 6f 65 72 63 69 | rcion"><a.href="#toc-Type-Coerci |
| 52b00 | 6f 6e 22 3e 54 79 70 65 20 43 6f 65 72 63 69 6f 6e 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 | on">Type.Coercion</a>.<a.class=" |
| 52b20 | 68 64 72 22 20 68 72 65 66 3d 22 23 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 22 3e c2 a7 3c 2f 61 | hdr".href="#Type-Coercion">..</a |
| 52b40 | 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 79 70 65 20 63 6f 65 | ></h2>........<p>.......Type.coe |
| 52b60 | 72 63 69 6f 6e 20 6f 63 63 75 72 73 20 77 68 65 6e 20 6f 6e 65 20 74 79 70 65 20 69 73 20 65 78 | rcion.occurs.when.one.type.is.ex |
| 52b80 | 70 65 63 74 65 64 2c 20 62 75 74 20 64 69 66 66 65 72 65 6e 74 20 74 79 70 65 20 69 73 20 70 72 | pected,.but.different.type.is.pr |
| 52ba0 | 6f 76 69 64 65 64 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 | ovided:.......</p>.......<p.clas |
| 52bc0 | 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 | s="file">test.zig</p><pre><code. |
| 52be0 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | class="zig"><span.class="tok-kw" |
| 52c00 | 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 |
| 52c20 | 72 22 3e 26 71 75 6f 74 3b 74 79 70 65 20 63 6f 65 72 63 69 6f 6e 20 2d 20 76 61 72 69 61 62 6c | r">"type.coercion.-.variabl |
| 52c40 | 65 20 64 65 63 6c 61 72 61 74 69 6f 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 | e.declaration"</span>.{.... |
| 52c60 | 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> |
| 52c80 | 20 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 | .a:.<span.class="tok-type">u8</s |
| 52ca0 | 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"> |
| 52cc0 | 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 |
| 52ce0 | 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 62 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | w">var</span>.b:.<span.class="to |
| 52d00 | 6b 2d 74 79 70 65 22 3e 75 31 36 3c 2f 73 70 61 6e 3e 20 3d 20 61 3b 0a 7d 0a 0a 3c 73 70 61 6e | k-type">u16</span>.=.a;.}..<span |
| 52d20 | 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 |
| 52d40 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 74 79 70 65 20 63 6f 65 | n.class="tok-str">"type.coe |
| 52d60 | 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 3c 2f 73 70 61 | rcion.-.function.call"</spa |
| 52d80 | 6e 3e 20 7b 0a 20 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 |
| 52da0 | 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 |
| 52dc0 | 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- |
| 52de0 | 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 28 61 29 3b 0a 7d 0a | number">1</span>;.....foo(a);.}. |
| 52e00 | 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>. |
| 52e20 | 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>( |
| 52e40 | 62 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 31 36 3c 2f 73 | b:.<span.class="tok-type">u16</s |
| 52e60 | 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 | pan>).<span.class="tok-type">voi |
| 52e80 | 64 3c 2f 73 70 61 6e 3e 20 7b 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | d</span>.{}..<span.class="tok-kw |
| 52ea0 | 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 |
| 52ec0 | 74 72 22 3e 26 71 75 6f 74 3b 74 79 70 65 20 63 6f 65 72 63 69 6f 6e 20 2d 20 40 61 73 20 62 75 | tr">"type.coercion.-.@as.bu |
| 52ee0 | 69 6c 74 69 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 | iltin"</span>.{.....<span.c |
| 52f00 | 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 |
| 52f20 | 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>.=.< |
| 52f40 | 73 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> |
| 52f60 | 3b 0a 20 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</ |
| 52f80 | 73 70 61 6e 3e 20 62 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 | span>.b.=.<span.class="tok-built |
| 52fa0 | 69 6e 22 3e 40 61 73 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | in">@as</span>(<span.class="tok- |
| 52fc0 | 74 79 70 65 22 3e 75 31 36 3c 2f 73 70 61 6e 3e 2c 20 61 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f | type">u16</span>,.a);.}</code></ |
| 52fe0 | 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a | pre><pre><code.class="shell">$.z |
| 53000 | 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 31 2f 33 20 74 65 73 74 20 26 71 75 6f 74 3b | ig.test.test.zig.1/3.test." |
| 53020 | 74 79 70 65 20 63 6f 65 72 63 69 6f 6e 20 2d 20 76 61 72 69 61 62 6c 65 20 64 65 63 6c 61 72 61 | type.coercion.-.variable.declara |
| 53040 | 74 69 6f 6e 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 32 2f 33 20 74 65 73 74 20 26 71 75 6f 74 3b | tion"....OK.2/3.test." |
| 53060 | 74 79 70 65 20 63 6f 65 72 63 69 6f 6e 20 2d 20 66 75 6e 63 74 69 6f 6e 20 63 61 6c 6c 26 71 75 | type.coercion.-.function.call&qu |
| 53080 | 6f 74 3b 2e 2e 2e 20 4f 4b 0a 33 2f 33 20 74 65 73 74 20 26 71 75 6f 74 3b 74 79 70 65 20 63 6f | ot;....OK.3/3.test."type.co |
| 530a0 | 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 2e 2e 2e 20 4f 4b | ercion.-.@as.builtin"....OK |
| 530c0 | 0a 41 6c 6c 20 33 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 | .All.3.tests.passed..</code></pr |
| 530e0 | 65 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 6f | e>........<p>.......Type.coercio |
| 53100 | 6e 73 20 61 72 65 20 6f 6e 6c 79 20 61 6c 6c 6f 77 65 64 20 77 68 65 6e 20 69 74 20 69 73 20 63 | ns.are.only.allowed.when.it.is.c |
| 53120 | 6f 6d 70 6c 65 74 65 6c 79 20 75 6e 61 6d 62 69 67 75 6f 75 73 20 68 6f 77 20 74 6f 20 67 65 74 | ompletely.unambiguous.how.to.get |
| 53140 | 20 66 72 6f 6d 20 6f 6e 65 20 74 79 70 65 20 74 6f 20 61 6e 6f 74 68 65 72 2c 0a 20 20 20 20 20 | .from.one.type.to.another,...... |
| 53160 | 20 61 6e 64 20 74 68 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 20 69 73 20 67 75 61 72 61 | .and.the.transformation.is.guara |
| 53180 | 6e 74 65 65 64 20 74 6f 20 62 65 20 73 61 66 65 2e 20 54 68 65 72 65 20 69 73 20 6f 6e 65 20 65 | nteed.to.be.safe..There.is.one.e |
| 531a0 | 78 63 65 70 74 69 6f 6e 2c 20 77 68 69 63 68 20 69 73 20 3c 61 20 68 72 65 66 3d 22 23 43 2d 50 | xception,.which.is.<a.href="#C-P |
| 531c0 | 6f 69 6e 74 65 72 73 22 3e 43 20 50 6f 69 6e 74 65 72 73 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c | ointers">C.Pointers</a>........< |
| 531e0 | 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 6f 6e 2d | /p>.......<h3.id="Type-Coercion- |
| 53200 | 53 74 72 69 63 74 65 72 2d 51 75 61 6c 69 66 69 63 61 74 69 6f 6e 22 3e 3c 61 20 68 72 65 66 3d | Stricter-Qualification"><a.href= |
| 53220 | 22 23 74 6f 63 2d 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 2d 53 74 72 69 63 74 65 72 2d 51 75 61 | "#toc-Type-Coercion-Stricter-Qua |
| 53240 | 6c 69 66 69 63 61 74 69 6f 6e 22 3e 54 79 70 65 20 43 6f 65 72 63 69 6f 6e 3a 20 53 74 72 69 63 | lification">Type.Coercion:.Stric |
| 53260 | 74 65 72 20 51 75 61 6c 69 66 69 63 61 74 69 6f 6e 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 | ter.Qualification</a>.<a.class=" |
| 53280 | 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 53 74 72 69 63 74 | hdr".href="#Type-Coercion-Strict |
| 532a0 | 65 72 2d 51 75 61 6c 69 66 69 63 61 74 69 6f 6e 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 | er-Qualification">..</a></h3>... |
| 532c0 | 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 56 61 6c 75 65 73 20 77 68 69 63 68 20 68 61 76 65 | .....<p>.......Values.which.have |
| 532e0 | 20 74 68 65 20 73 61 6d 65 20 72 65 70 72 65 73 65 6e 74 61 74 69 6f 6e 20 61 74 20 72 75 6e 74 | .the.same.representation.at.runt |
| 53300 | 69 6d 65 20 63 61 6e 20 62 65 20 63 61 73 74 20 74 6f 20 69 6e 63 72 65 61 73 65 20 74 68 65 20 | ime.can.be.cast.to.increase.the. |
| 53320 | 73 74 72 69 63 74 6e 65 73 73 0a 20 20 20 20 20 20 6f 66 20 74 68 65 20 71 75 61 6c 69 66 69 65 | strictness.......of.the.qualifie |
| 53340 | 72 73 2c 20 6e 6f 20 6d 61 74 74 65 72 20 68 6f 77 20 6e 65 73 74 65 64 20 74 68 65 20 71 75 61 | rs,.no.matter.how.nested.the.qua |
| 53360 | 6c 69 66 69 65 72 73 20 61 72 65 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 | lifiers.are:.......</p>.......<u |
| 53380 | 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | l>...........<li><code.class="zi |
| 533a0 | 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 | g"><span.class="tok-kw">const</s |
| 533c0 | 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 2d 20 6e 6f 6e 2d 63 6f 6e 73 74 20 74 6f 20 63 6f 6e 73 74 | pan></code>.-.non-const.to.const |
| 533e0 | 20 69 73 20 61 6c 6c 6f 77 65 64 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c | .is.allowed</li>...........<li>< |
| 53400 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | code.class="zig"><span.class="to |
| 53420 | 6b 2d 6b 77 22 3e 76 6f 6c 61 74 69 6c 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 2d 20 6e | k-kw">volatile</span></code>.-.n |
| 53440 | 6f 6e 2d 76 6f 6c 61 74 69 6c 65 20 74 6f 20 76 6f 6c 61 74 69 6c 65 20 69 73 20 61 6c 6c 6f 77 | on-volatile.to.volatile.is.allow |
| 53460 | 65 64 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 | ed</li>...........<li><code.clas |
| 53480 | 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6c 69 | s="zig"><span.class="tok-kw">ali |
| 534a0 | 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 6f 20 73 6d 61 | gn</span></code>.-.bigger.to.sma |
| 534c0 | 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 2f 6c 69 3e 0a | ller.alignment.is.allowed.</li>. |
| 534e0 | 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 45 72 72 6f 72 2d 53 65 | ..........<li><a.href="#Error-Se |
| 53500 | 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 75 70 65 72 73 | t-Type">error.sets</a>.to.supers |
| 53520 | 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 2f 75 6c 3e 0a | ets.is.allowed</li>.......</ul>. |
| 53540 | 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 20 61 72 65 20 | ......<p>.......These.casts.are. |
| 53560 | 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 20 76 61 6c 75 | no-ops.at.runtime.since.the.valu |
| 53580 | 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 68 61 6e 67 65 | e.representation.does.not.change |
| 535a0 | 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c | ........</p>.......<p.class="fil |
| 535c0 | 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d | e">test.zig</p><pre><code.class= |
| 535e0 | 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c | "zig"><span.class="tok-kw">test< |
| 53600 | 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 |
| 53620 | 6f 74 3b 74 79 70 65 20 63 6f 65 72 63 69 6f 6e 20 2d 20 63 6f 6e 73 74 20 71 75 61 6c 69 66 69 | ot;type.coercion.-.const.qualifi |
| 53640 | 63 61 74 69 6f 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 | cation"</span>.{.....<span. |
| 53660 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 61 3a 20 3c 73 70 | class="tok-kw">var</span>.a:.<sp |
| 53680 | 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>.= |
| 536a0 | 20 3c 73 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 |
| 536c0 | 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 | n>;.....<span.class="tok-kw">var |
| 536e0 | 3c 2f 73 70 61 6e 3e 20 62 3a 20 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | </span>.b:.*<span.class="tok-typ |
| 53700 | 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 26 61 6d 70 3b 61 3b 0a 20 20 20 20 66 6f 6f 28 | e">i32</span>.=.&a;.....foo( |
| 53720 | 62 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f | b);.}..<span.class="tok-kw">fn</ |
| 53740 | 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</ |
| 53760 | 73 70 61 6e 3e 28 61 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 | span>(a:.*<span.class="tok-kw">c |
| 53780 | 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 |
| 537a0 | 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | e">i32</span>).<span.class="tok- |
| 537c0 | 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 |
| 537e0 | 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 | ><pre><code.class="shell">$.zig. |
| 53800 | 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 31 2f 31 20 74 65 73 74 20 26 71 75 6f 74 3b 74 79 70 | test.test.zig.1/1.test."typ |
| 53820 | 65 20 63 6f 65 72 63 69 6f 6e 20 2d 20 63 6f 6e 73 74 20 71 75 61 6c 69 66 69 63 61 74 69 6f 6e | e.coercion.-.const.qualification |
| 53840 | 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e | "....OK.All.1.tests.passed. |
| 53860 | 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 | .</code></pre>........<p>....... |
| 53880 | 49 6e 20 61 64 64 69 74 69 6f 6e 2c 20 70 6f 69 6e 74 65 72 73 20 63 6f 65 72 63 65 20 74 6f 20 | In.addition,.pointers.coerce.to. |
| 538a0 | 63 6f 6e 73 74 20 6f 70 74 69 6f 6e 61 6c 20 70 6f 69 6e 74 65 72 73 3a 0a 20 20 20 20 20 20 3c | const.optional.pointers:.......< |
| 538c0 | 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a | /p>.......<p.class="file">test.z |
| 538e0 | 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 | ig</p><pre><code.class="zig"><sp |
| 53900 | 61 6e 20 63 6c 61 73 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 |
| 53920 | 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">@ |
| 53940 | 69 6d 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 |
| 53960 | 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 |
| 53980 | 61 6e 20 63 6c 61 73 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 |
| 539a0 | 78 70 65 63 74 20 3d 20 73 74 64 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 3c 73 70 61 | xpect.=.std.testing.expect;.<spa |
| 539c0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6d 65 | n.class="tok-kw">const</span>.me |
| 539e0 | 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 74 6f 6b 2d 6b | m.=.std.mem;..<span.class="tok-k |
| 53a00 | 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- |
| 53a20 | 73 74 72 22 3e 26 71 75 6f 74 3b 63 61 73 74 20 2a 5b 31 5d 5b 2a 5d 63 6f 6e 73 74 20 75 38 20 | str">"cast.*[1][*]const.u8. |
| 53a40 | 74 6f 20 5b 2a 5d 63 6f 6e 73 74 20 3f 5b 2a 5d 63 6f 6e 73 74 20 75 38 26 71 75 6f 74 3b 3c 2f | to.[*]const.?[*]const.u8"</ |
| 53a60 | 73 70 61 6e 3e 20 7b 0a 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" |
| 53a80 | 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 70 | >const</span>.window_name.=.[<sp |
| 53aa0 | 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 5b | an.class="tok-number">1</span>][ |
| 53ac0 | 2a 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 | *]<span.class="tok-kw">const</sp |
| 53ae0 | 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 | an>.<span.class="tok-type">u8</s |
| 53b00 | 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 75 6f 74 | pan>{<span.class="tok-str">" |
| 53b20 | 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 20 20 20 | ;window.name"</span>};..... |
| 53b40 | 3c 73 70 61 6e 20 63 6c 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 |
| 53b60 | 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 6b 77 22 3e 63 6f 6e | >.x:.[*]<span.class="tok-kw">con |
| 53b80 | 73 74 3c 2f 73 70 61 6e 3e 20 3f 5b 2a 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | st</span>.?[*]<span.class="tok-k |
| 53ba0 | 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 |
| 53bc0 | 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 6f 77 5f 6e | -type">u8</span>.=.&window_n |
| 53be0 | 61 6d 65 3b 0a 20 20 20 20 65 78 70 65 63 74 28 6d 65 6d 2e 65 71 6c 28 3c 73 70 61 6e 20 63 6c | ame;.....expect(mem.eql(<span.cl |
| 53c00 | 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 64 2e 6d 65 | ass="tok-type">u8</span>,.std.me |
| 53c20 | 6d 2e 73 70 61 6e 5a 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e | m.spanZ(<span.class="tok-builtin |
| 53c40 | 22 3e 40 70 74 72 43 61 73 74 3c 2f 73 70 61 6e 3e 28 5b 2a 3a 3c 73 70 61 6e 20 63 6c 61 73 73 | ">@ptrCast</span>([*:<span.class |
| 53c60 | 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 |
| 53c80 | 73 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 |
| 53ca0 | 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 5b 3c 73 70 | lass="tok-type">u8</span>,.x[<sp |
| 53cc0 | 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 2e | an.class="tok-number">0</span>]. |
| 53ce0 | 3f 29 29 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 | ?)),.<span.class="tok-str">" |
| 53d00 | 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 29 29 3b 0a 7d 3c 2f | ;window.name"</span>));.}</ |
| 53d20 | 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 | code></pre><pre><code.class="she |
| 53d40 | 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 31 2f 31 20 74 65 73 74 | ll">$.zig.test.test.zig.1/1.test |
| 53d60 | 20 26 71 75 6f 74 3b 63 61 73 74 20 2a 5b 31 5d 5b 2a 5d 63 6f 6e 73 74 20 75 38 20 74 6f 20 5b | ."cast.*[1][*]const.u8.to.[ |
| 53d80 | 2a 5d 63 6f 6e 73 74 20 3f 5b 2a 5d 63 6f 6e 73 74 20 75 38 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b | *]const.?[*]const.u8"....OK |
| 53da0 | 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 | .All.1.tests.passed..</code></pr |
| 53dc0 | 65 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 54 79 70 65 2d 43 6f | e>...............<h3.id="Type-Co |
| 53de0 | 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 6e | ercion-Integer-and-Float-Widenin |
| 53e00 | 67 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 2d 49 | g"><a.href="#toc-Type-Coercion-I |
| 53e20 | 6e 74 65 67 65 72 2d 61 6e 64 2d 46 6c 6f 61 74 2d 57 69 64 65 6e 69 6e 67 22 3e 54 79 70 65 20 | nteger-and-Float-Widening">Type. |
| 53e40 | 43 6f 65 72 63 69 6f 6e 3a 20 49 6e 74 65 67 65 72 20 61 6e 64 20 46 6c 6f 61 74 20 57 69 64 65 | Coercion:.Integer.and.Float.Wide |
| 53e60 | 6e 69 6e 67 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 54 | ning</a>.<a.class="hdr".href="#T |
| 53e80 | 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 74 2d 57 | ype-Coercion-Integer-and-Float-W |
| 53ea0 | 69 64 65 6e 69 6e 67 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a | idening">..</a></h3>........<p>. |
| 53ec0 | 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 49 6e 74 65 67 65 72 73 22 3e 49 6e 74 65 67 65 | ......<a.href="#Integers">Intege |
| 53ee0 | 72 73 3c 2f 61 3e 20 63 6f 65 72 63 65 20 74 6f 20 69 6e 74 65 67 65 72 20 74 79 70 65 73 20 77 | rs</a>.coerce.to.integer.types.w |
| 53f00 | 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 |
| 53f20 | 66 20 74 68 65 20 6f 6c 64 20 74 79 70 65 2c 20 61 6e 64 20 6c 69 6b 65 77 69 73 65 0a 20 20 20 | f.the.old.type,.and.likewise.... |
| 53f40 | 20 20 20 3c 61 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 73 22 3e 46 6c 6f 61 74 73 3c 2f 61 3e 20 | ...<a.href="#Floats">Floats</a>. |
| 53f60 | 63 6f 65 72 63 65 20 74 6f 20 66 6c 6f 61 74 20 74 79 70 65 73 20 77 68 69 63 68 20 63 61 6e 20 | coerce.to.float.types.which.can. |
| 53f80 | 72 65 70 72 65 73 65 6e 74 20 65 76 65 72 79 20 76 61 6c 75 65 20 6f 66 20 74 68 65 20 6f 6c 64 | represent.every.value.of.the.old |
| 53fa0 | 20 74 79 70 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 | .type........</p>.......<p.class |
| 53fc0 | 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 | ="file">test.zig</p><pre><code.c |
| 53fe0 | 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | lass="zig"><span.class="tok-kw"> |
| 54000 | 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=" |
| 54020 | 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 |
| 54040 | 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" |
| 54060 | 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"> |
| 54080 | 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 |
| 540a0 | 67 2e 65 78 70 65 63 74 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 | g.expect;.<span.class="tok-kw">c |
| 540c0 | 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6d 65 6d 20 3d 20 73 74 64 2e 6d 65 6d 3b 0a 0a 3c 73 70 61 | onst</span>.mem.=.std.mem;..<spa |
| 540e0 | 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 |
| 54100 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 69 6e 74 65 67 65 72 | an.class="tok-str">"integer |
| 54120 | 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 |
| 54140 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 61 3a 20 | an.class="tok-kw">var</span>.a:. |
| 54160 | 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> |
| 54180 | 20 3d 20 3c 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< |
| 541a0 | 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" |
| 541c0 | 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 62 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | >var</span>.b:.<span.class="tok- |
| 541e0 | 74 79 70 65 22 3e 75 31 36 3c 2f 73 70 61 6e 3e 20 3d 20 61 3b 0a 20 20 20 20 3c 73 70 61 6e 20 | type">u16</span>.=.a;.....<span. |
| 54200 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 63 3a 20 3c 73 70 | class="tok-kw">var</span>.c:.<sp |
| 54220 | 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>.= |
| 54240 | 20 62 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 | .b;.....<span.class="tok-kw">var |
| 54260 | 3c 2f 73 70 61 6e 3e 20 64 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | </span>.d:.<span.class="tok-type |
| 54280 | 22 3e 75 36 34 3c 2f 73 70 61 6e 3e 20 3d 20 63 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | ">u64</span>.=.c;.....<span.clas |
| 542a0 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 65 3a 20 3c 73 70 61 6e 20 63 | s="tok-kw">var</span>.e:.<span.c |
| 542c0 | 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 36 34 3c 2f 73 70 61 6e 3e 20 3d 20 64 3b 0a | lass="tok-type">u64</span>.=.d;. |
| 542e0 | 20 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 |
| 54300 | 61 6e 3e 20 66 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 31 | an>.f:.<span.class="tok-type">u1 |
| 54320 | 32 38 3c 2f 73 70 61 6e 3e 20 3d 20 65 3b 0a 20 20 20 20 65 78 70 65 63 74 28 66 20 3d 3d 20 61 | 28</span>.=.e;.....expect(f.==.a |
| 54340 | 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< |
| 54360 | 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 |
| 54380 | 6f 74 3b 69 6d 70 6c 69 63 69 74 20 75 6e 73 69 67 6e 65 64 20 69 6e 74 65 67 65 72 20 74 6f 20 | ot;implicit.unsigned.integer.to. |
| 543a0 | 73 69 67 6e 65 64 20 69 6e 74 65 67 65 72 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 | signed.integer"</span>.{... |
| 543c0 | 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 |
| 543e0 | 3e 20 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f | >.a:.<span.class="tok-type">u8</ |
| 54400 | 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" |
| 54420 | 3e 32 35 30 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | >250</span>;.....<span.class="to |
| 54440 | 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= |
| 54460 | 22 74 6f 6b 2d 74 79 70 65 22 3e 69 31 36 3c 2f 73 70 61 6e 3e 20 3d 20 61 3b 0a 20 20 20 20 65 | "tok-type">i16</span>.=.a;.....e |
| 54480 | 78 70 65 63 74 28 62 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | xpect(b.==.<span.class="tok-numb |
| 544a0 | 65 72 22 3e 32 35 30 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | er">250</span>);.}..<span.class= |
| 544c0 | 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 |
| 544e0 | 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 66 6c 6f 61 74 20 77 69 64 65 6e 69 6e 67 26 | ="tok-str">"float.widening& |
| 54500 | 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=" |
| 54520 | 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 4e 6f 74 65 3a 20 74 68 65 72 65 20 69 73 20 61 | tok-comment">//.Note:.there.is.a |
| 54540 | 6e 20 6f 70 65 6e 20 69 73 73 75 65 20 70 72 65 76 65 6e 74 69 6e 67 20 74 68 69 73 20 66 72 6f | n.open.issue.preventing.this.fro |
| 54560 | 6d 20 77 6f 72 6b 69 6e 67 20 6f 6e 20 61 61 72 63 68 36 34 3a 3c 2f 73 70 61 6e 3e 0a 20 20 20 | m.working.on.aarch64:</span>.... |
| 54580 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 68 74 | .<span.class="tok-comment">//.ht |
| 545a0 | 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 |
| 545c0 | 75 65 73 2f 33 32 38 32 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ues/3282</span>.....<span.class= |
| 545e0 | 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 73 74 64 2e 54 61 72 67 65 74 2e 63 | "tok-kw">if</span>.(std.Target.c |
| 54600 | 75 72 72 65 6e 74 2e 63 70 75 2e 61 72 63 68 20 3d 3d 20 2e 61 61 72 63 68 36 34 29 20 3c 73 70 | urrent.cpu.arch.==..aarch64).<sp |
| 54620 | 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>. |
| 54640 | 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 |
| 54660 | 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 6c 61 73 73 3d | >.SkipZigTest;......<span.class= |
| 54680 | 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 |
| 546a0 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 31 36 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e | ss="tok-type">f16</span>.=.<span |
| 546c0 | 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> |
| 546e0 | 3b 0a 20 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</ |
| 54700 | 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"> |
| 54720 | 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= |
| 54740 | 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 63 3a 20 3c 73 70 61 6e 20 63 6c 61 | "tok-kw">var</span>.c:.<span.cla |
| 54760 | 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 20 20 | ss="tok-type">f64</span>.=.b;... |
| 54780 | 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 |
| 547a0 | 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 66 31 32 38 | >.d:.<span.class="tok-type">f128 |
| 547c0 | 3c 2f 73 70 61 6e 3e 20 3d 20 63 3b 0a 20 20 20 20 65 78 70 65 63 74 28 64 20 3d 3d 20 61 29 3b | </span>.=.c;.....expect(d.==.a); |
| 547e0 | 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d | .}</code></pre><pre><code.class= |
| 54800 | 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 31 2f 33 20 | "shell">$.zig.test.test.zig.1/3. |
| 54820 | 74 65 73 74 20 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 | test."integer.widening" |
| 54840 | 3b 2e 2e 2e 20 4f 4b 0a 32 2f 33 20 74 65 73 74 20 26 71 75 6f 74 3b 69 6d 70 6c 69 63 69 74 20 | ;....OK.2/3.test."implicit. |
| 54860 | 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 69 6e 74 65 67 | unsigned.integer.to.signed.integ |
| 54880 | 65 72 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 33 2f 33 20 74 65 73 74 20 26 71 75 6f 74 3b 66 6c | er"....OK.3/3.test."fl |
| 548a0 | 6f 61 74 20 77 69 64 65 6e 69 6e 67 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 41 6c 6c 20 33 20 74 | oat.widening"....OK.All.3.t |
| 548c0 | 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 | ests.passed..</code></pre>...... |
| 548e0 | 20 20 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 2d 43 | .........<h3.id="Type-Coercion-C |
| 54900 | 6f 65 72 63 69 6f 6e 2d 46 6c 6f 61 74 2d 74 6f 2d 49 6e 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 | oercion-Float-to-Int"><a.href="# |
| 54920 | 74 6f 63 2d 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 2d 43 6f 65 72 63 69 6f 6e 2d 46 6c 6f 61 74 | toc-Type-Coercion-Coercion-Float |
| 54940 | 2d 74 6f 2d 49 6e 74 22 3e 54 79 70 65 20 43 6f 65 72 63 69 6f 6e 3a 20 43 6f 65 72 63 69 6f 6e | -to-Int">Type.Coercion:.Coercion |
| 54960 | 20 46 6c 6f 61 74 20 74 6f 20 49 6e 74 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 | .Float.to.Int</a>.<a.class="hdr" |
| 54980 | 20 68 72 65 66 3d 22 23 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 2d 43 6f 65 72 63 69 6f 6e 2d 46 | .href="#Type-Coercion-Coercion-F |
| 549a0 | 6c 6f 61 74 2d 74 6f 2d 49 6e 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 | loat-to-Int">..</a></h3>........ |
| 549c0 | 3c 70 3e 0a 20 20 20 20 20 20 41 20 63 6f 6d 70 69 6c 65 72 20 65 72 72 6f 72 20 69 73 20 61 70 | <p>.......A.compiler.error.is.ap |
| 549e0 | 70 72 6f 70 72 69 61 74 65 20 62 65 63 61 75 73 65 20 74 68 69 73 20 61 6d 62 69 67 75 6f 75 73 | propriate.because.this.ambiguous |
| 54a00 | 20 65 78 70 72 65 73 73 69 6f 6e 20 6c 65 61 76 65 73 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 0a | .expression.leaves.the.compiler. |
| 54a20 | 20 20 20 20 20 20 74 77 6f 20 63 68 6f 69 63 65 73 20 61 62 6f 75 74 20 74 68 65 20 63 6f 65 72 | ......two.choices.about.the.coer |
| 54a40 | 63 69 6f 6e 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 | cion........</p>.......<ul>..... |
| 54a60 | 20 20 20 20 3c 6c 69 3e 20 43 61 73 74 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e | ....<li>.Cast.<code.class="zig"> |
| 54a80 | 3c 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 34 2e 30 3c 2f 73 | <span.class="tok-number">54.0</s |
| 54aa0 | 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 74 6f 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | pan></code>.to.<code.class="zig" |
| 54ac0 | 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 |
| 54ae0 | 5f 69 6e 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 72 65 73 75 6c 74 69 6e 67 20 69 6e 20 | _int</span></code>.resulting.in. |
| 54b00 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | <code.class="zig"><span.class="t |
| 54b20 | 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 |
| 54b40 | 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 6e | ss="tok-type">comptime_int</span |
| 54b60 | 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 3c 2f | >,.<span.class="tok-number">10</ |
| 54b80 | 73 70 61 6e 3e 29 3c 2f 63 6f 64 65 3e 2c 20 77 68 69 63 68 20 69 73 20 63 61 73 74 65 64 20 74 | span>)</code>,.which.is.casted.t |
| 54ba0 | 6f 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | o.<code.class="zig"><span.class= |
| 54bc0 | 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 |
| 54be0 | 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 70 61 | lass="tok-type">f32</span>,.<spa |
| 54c00 | 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 3c | n.class="tok-number">10</span>)< |
| 54c20 | 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 20 43 61 73 74 20 3c 63 | /code></li>.........<li>.Cast.<c |
| 54c40 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ode.class="zig"><span.class="tok |
| 54c60 | 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 74 6f 20 3c 63 6f 64 | -number">5</span></code>.to.<cod |
| 54c80 | 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | e.class="zig"><span.class="tok-t |
| 54ca0 | 79 70 65 22 3e 63 6f 6d 70 74 69 6d 65 5f 66 6c 6f 61 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 | ype">comptime_float</span></code |
| 54cc0 | 3e 20 72 65 73 75 6c 74 69 6e 67 20 69 6e 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | >.resulting.in.<code.class="zig" |
| 54ce0 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 61 73 3c 2f | ><span.class="tok-builtin">@as</ |
| 54d00 | 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 63 6f 6d | span>(<span.class="tok-type">com |
| 54d20 | 70 74 69 6d 65 5f 66 6c 6f 61 74 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ptime_float</span>,.<span.class= |
| 54d40 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 2e 38 3c 2f 73 70 61 6e 3e 29 3c 2f 63 6f 64 65 3e | "tok-number">10.8</span>)</code> |
| 54d60 | 2c 20 77 68 69 63 68 20 69 73 20 63 61 73 74 65 64 20 74 6f 20 3c 63 6f 64 65 20 63 6c 61 73 73 | ,.which.is.casted.to.<code.class |
| 54d80 | 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 | ="zig"><span.class="tok-builtin" |
| 54da0 | 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 |
| 54dc0 | 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | e">f32</span>,.<span.class="tok- |
| 54de0 | 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 3c 2f 6c 69 3e | number">10.8</span>)</code></li> |
| 54e00 | 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c | .......</ul>.......<p.class="fil |
| 54e20 | 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d | e">test.zig</p><pre><code.class= |
| 54e40 | 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e | "zig"><span.class="tok-comment"> |
| 54e60 | 2f 2f 20 43 6f 6d 70 69 6c 65 20 74 69 6d 65 20 63 6f 65 72 63 69 6f 6e 20 6f 66 20 66 6c 6f 61 | //.Compile.time.coercion.of.floa |
| 54e80 | 74 20 74 6f 20 69 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 | t.to.int</span>.<span.class="tok |
| 54ea0 | 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 |
| 54ec0 | 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 69 6d 70 6c 69 63 69 74 20 63 61 73 74 20 74 6f 20 63 6f | k-str">"implicit.cast.to.co |
| 54ee0 | 6d 70 74 69 6d 65 5f 69 6e 74 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 | mptime_int"</span>.{.....<s |
| 54f00 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 66 3a | pan.class="tok-kw">var</span>.f: |
| 54f20 | 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 |
| 54f40 | 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 34 | n>.=.<span.class="tok-number">54 |
| 54f60 | 2e 30 3c 2f 73 70 61 6e 3e 20 2f 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | .0</span>./.<span.class="tok-num |
| 54f80 | 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 | ber">5</span>;.}</code></pre><pr |
| 54fa0 | 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 | e><code.class="shell">$.zig.test |
| 54fc0 | 20 74 65 73 74 2e 7a 69 67 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 | .test.zig.<span.class="t0_1">./d |
| 54fe0 | 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 33 3a 31 38 3a 20 3c 2f 73 70 61 6e 3e | ocgen_tmp/test.zig:3:18:.</span> |
| 55000 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 31 5f 31 22 3e 65 72 72 6f 72 3a 20 3c 2f 73 70 61 | <span.class="t31_1">error:.</spa |
| 55020 | 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 66 6c 6f 61 74 20 76 61 6c 75 65 | n><span.class="t0_1">float.value |
| 55040 | 20 35 34 2e 30 30 30 30 30 30 20 63 61 6e 6e 6f 74 20 62 65 20 63 6f 65 72 63 65 64 20 74 6f 20 | .54.000000.cannot.be.coerced.to. |
| 55060 | 74 79 70 65 20 27 63 6f 6d 70 74 69 6d 65 5f 69 6e 74 27 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 76 | type.'comptime_int'</span>.....v |
| 55080 | 61 72 20 66 3a 20 66 33 32 20 3d 20 35 34 2e 30 20 2f 20 35 3b 0a 20 20 20 20 20 20 20 20 20 20 | ar.f:.f32.=.54.0./.5;........... |
| 550a0 | 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 | .......<span.class="t32_1">^</sp |
| 550c0 | 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f | an>.<span.class="t0_1">./docgen_ |
| 550e0 | 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 33 3a 32 33 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 | tmp/test.zig:3:23:.</span><span. |
| 55100 | 63 6c 61 73 73 3d 22 74 33 36 5f 31 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e | class="t36_1">note:.</span><span |
| 55120 | 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 72 65 66 65 72 65 6e 63 65 64 20 68 65 72 65 3c 2f 73 | .class="t0_1">referenced.here</s |
| 55140 | 70 61 6e 3e 0a 20 20 20 20 76 61 72 20 66 3a 20 66 33 32 20 3d 20 35 34 2e 30 20 2f 20 35 3b 0a | pan>.....var.f:.f32.=.54.0./.5;. |
| 55160 | 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 |
| 55180 | 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e | s="t32_1">^</span>.</code></pre> |
| 551a0 | 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 54 79 70 65 2d 43 6f 65 72 | ...............<h3.id="Type-Coer |
| 551c0 | 63 69 6f 6e 2d 41 72 72 61 79 73 2d 61 6e 64 2d 50 6f 69 6e 74 65 72 73 22 3e 3c 61 20 68 72 65 | cion-Arrays-and-Pointers"><a.hre |
| 551e0 | 66 3d 22 23 74 6f 63 2d 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 2d 41 72 72 61 79 73 2d 61 6e 64 | f="#toc-Type-Coercion-Arrays-and |
| 55200 | 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 41 72 72 61 79 73 | -Pointers">Type.Coercion:.Arrays |
| 55220 | 20 61 6e 64 20 50 6f 69 6e 74 65 72 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 | .and.Pointers</a>.<a.class="hdr" |
| 55240 | 20 68 72 65 66 3d 22 23 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 2d 41 72 72 61 79 73 2d 61 6e 64 | .href="#Type-Coercion-Arrays-and |
| 55260 | 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 70 | -Pointers">..</a></h3>........<p |
| 55280 | 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 63 6f 65 72 63 65 5f 61 72 72 61 79 73 5f 61 6e 64 5f | .class="file">coerce_arrays_and_ |
| 552a0 | 70 74 72 73 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | ptrs.zig</p><pre><code.class="zi |
| 552c0 | 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 | g"><span.class="tok-kw">const</s |
| 552e0 | 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 |
| 55300 | 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= |
| 55320 | 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> |
| 55340 | 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 |
| 55360 | 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 |
| 55380 | 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 | ;..<span.class="tok-comment">//. |
| 553a0 | 54 68 69 73 20 63 61 73 74 20 65 78 69 73 74 73 20 70 72 69 6d 61 72 69 6c 79 20 73 6f 20 74 68 | This.cast.exists.primarily.so.th |
| 553c0 | 61 74 20 73 74 72 69 6e 67 20 6c 69 74 65 72 61 6c 73 20 63 61 6e 20 62 65 3c 2f 73 70 61 6e 3e | at.string.literals.can.be</span> |
| 553e0 | 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 70 61 | .<span.class="tok-comment">//.pa |
| 55400 | 73 73 65 64 20 74 6f 20 66 75 6e 63 74 69 6f 6e 73 20 74 68 61 74 20 61 63 63 65 70 74 20 63 6f | ssed.to.functions.that.accept.co |
| 55420 | 6e 73 74 20 73 6c 69 63 65 73 2e 20 48 6f 77 65 76 65 72 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e | nst.slices..However</span>.<span |
| 55440 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 69 74 20 69 73 20 70 72 | .class="tok-comment">//.it.is.pr |
| 55460 | 6f 62 61 62 6c 79 20 67 6f 69 6e 67 20 74 6f 20 62 65 20 72 65 6d 6f 76 65 64 20 66 72 6f 6d 20 | obably.going.to.be.removed.from. |
| 55480 | 74 68 65 20 6c 61 6e 67 75 61 67 65 20 77 68 65 6e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 | the.language.when</span>.<span.c |
| 554a0 | 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 |
| 554c0 | 74 68 75 62 2e 63 6f 6d 2f 7a 69 67 6c 61 6e 67 2f 7a 69 67 2f 69 73 73 75 65 73 2f 32 36 35 20 | thub.com/ziglang/zig/issues/265. |
| 554e0 | 69 73 20 69 6d 70 6c 65 6d 65 6e 74 65 64 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 | is.implemented.</span>.<span.cla |
| 55500 | 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 |
| 55520 | 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 5b 4e 5d 54 20 74 6f 20 5b 5d 63 6f | ass="tok-str">"[N]T.to.[]co |
| 55540 | 6e 73 74 20 54 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 | nst.T"</span>.{.....<span.c |
| 55560 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 78 31 3a 20 5b 5d 3c | lass="tok-kw">var</span>.x1:.[]< |
| 55580 | 73 70 61 6e 20 63 6c 61 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> |
| 555a0 | 20 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 |
| 555c0 | 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b | >.=.<span.class="tok-str">" |
| 555e0 | 68 65 6c 6c 6f 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | hello"</span>;.....<span.cl |
| 55600 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 78 32 3a 20 5b 5d 3c 73 | ass="tok-kw">var</span>.x2:.[]<s |
| 55620 | 70 61 6e 20 63 6c 61 73 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>. |
| 55640 | 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> |
| 55660 | 20 3d 20 26 61 6d 70 3b 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | .=.&[<span.class="tok-number |
| 55680 | 22 3e 35 3c 2f 73 70 61 6e 3e 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | ">5</span>]<span.class="tok-type |
| 556a0 | 22 3e 75 38 3c 2f 73 70 61 6e 3e 7b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 | ">u8</span>{.<span.class="tok-st |
| 556c0 | 72 22 3e 27 68 27 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | r">'h'</span>,.<span.class="tok- |
| 556e0 | 73 74 72 22 3e 27 65 27 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | str">'e'</span>,.<span.class="to |
| 55700 | 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 22 | k-str">'l'</span>,.<span.class=" |
| 55720 | 74 6f 6b 2d 73 74 72 22 3e 27 6c 27 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 | tok-str">'l'</span>,.<span.class |
| 55740 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 31 31 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 20 20 20 20 | ="tok-number">111</span>.};..... |
| 55760 | 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=" |
| 55780 | 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 78 31 2c 20 78 32 29 29 3b 0a 0a | tok-type">u8</span>,.x1,.x2));.. |
| 557a0 | 20 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 |
| 557c0 | 61 6e 3e 20 79 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f | an>.y:.[]<span.class="tok-kw">co |
| 557e0 | 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 |
| 55800 | 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 73 | ">f32</span>.=.&[<span.class |
| 55820 | 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 61 | ="tok-number">2</span>]<span.cla |
| 55840 | 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 20 | ss="tok-type">f32</span>{.<span. |
| 55860 | 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 3c | class="tok-number">1.2</span>,.< |
| 55880 | 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 61 | span.class="tok-number">3.4</spa |
| 558a0 | 6e 3e 20 7d 3b 0a 20 20 20 20 65 78 70 65 63 74 28 79 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | n>.};.....expect(y[<span.class=" |
| 558c0 | 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 |
| 558e0 | 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>);.} |
| 55900 | 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 |
| 55920 | 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 |
| 55940 | 6e 61 74 69 6f 6e 20 74 79 70 65 20 69 73 20 61 6e 20 65 72 72 6f 72 20 75 6e 69 6f 6e 2e 3c 2f | nation.type.is.an.error.union.</ |
| 55960 | 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c | span>.<span.class="tok-kw">test< |
| 55980 | 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 |
| 559a0 | 6f 74 3b 5b 4e 5d 54 20 74 6f 20 45 21 5b 5d 63 6f 6e 73 74 20 54 26 71 75 6f 74 3b 3c 2f 73 70 | ot;[N]T.to.E![]const.T"</sp |
| 559c0 | 61 6e 3e 20 7b 0a 20 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 |
| 559e0 | 61 72 3c 2f 73 70 61 6e 3e 20 78 31 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | ar</span>.x1:.<span.class="tok-t |
| 55a00 | 79 70 65 22 3e 61 6e 79 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 21 5b 5d 3c 73 70 61 6e 20 63 6c 61 | ype">anyerror</span>![]<span.cla |
| 55a20 | 73 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 |
| 55a40 | 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 | lass="tok-type">u8</span>.=.<spa |
| 55a60 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 68 65 6c 6c 6f 26 71 75 | n.class="tok-str">"hello&qu |
| 55a80 | 6f 74 3b 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ot;</span>;.....<span.class="tok |
| 55aa0 | 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 78 32 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | -kw">var</span>.x2:.<span.class= |
| 55ac0 | 22 74 6f 6b 2d 74 79 70 65 22 3e 61 6e 79 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 21 5b 5d 3c 73 70 | "tok-type">anyerror</span>![]<sp |
| 55ae0 | 61 6e 20 63 6c 61 73 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>.< |
| 55b00 | 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>. |
| 55b20 | 3d 20 26 61 6d 70 3b 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 | =.&[<span.class="tok-number" |
| 55b40 | 3e 35 3c 2f 73 70 61 6e 3e 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 | >5</span>]<span.class="tok-type" |
| 55b60 | 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 |
| 55b80 | 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 |
| 55ba0 | 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 |
| 55bc0 | 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 |
| 55be0 | 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= |
| 55c00 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 31 31 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 20 20 20 20 65 | "tok-number">111</span>.};.....e |
| 55c20 | 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 74 | xpect(std.mem.eql(<span.class="t |
| 55c40 | 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= |
| 55c60 | 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 78 31 2c 20 3c 73 70 61 6e 20 63 6c | "tok-kw">try</span>.x1,.<span.cl |
| 55c80 | 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 32 29 29 3b 0a 0a 20 | ass="tok-kw">try</span>.x2));... |
| 55ca0 | 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 |
| 55cc0 | 6e 3e 20 79 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 61 6e 79 | n>.y:.<span.class="tok-type">any |
| 55ce0 | 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 2d | error</span>![]<span.class="tok- |
| 55d00 | 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 |
| 55d20 | 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 3c 73 70 61 6e | k-type">f32</span>.=.&[<span |
| 55d40 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 5d 3c 73 70 | .class="tok-number">2</span>]<sp |
| 55d60 | 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>{. |
| 55d80 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 2e 32 3c 2f 73 70 | <span.class="tok-number">1.2</sp |
| 55da0 | 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 2e | an>,.<span.class="tok-number">3. |
| 55dc0 | 34 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 20 20 20 20 65 78 70 65 63 74 28 28 3c 73 70 61 6e 20 63 6c | 4</span>.};.....expect((<span.cl |
| 55de0 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 79 29 5b 3c 73 70 61 6e | ass="tok-kw">try</span>.y)[<span |
| 55e00 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 5d 20 3d 3d | .class="tok-number">0</span>].== |
| 55e20 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 2e 32 3c 2f 73 | .<span.class="tok-number">1.2</s |
| 55e40 | 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 65 | pan>);.}..<span.class="tok-comme |
| 55e60 | 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 6e 20 74 | nt">//.Likewise,.it.works.when.t |
| 55e80 | 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 6f 70 74 69 6f 6e | he.destination.type.is.an.option |
| 55ea0 | 61 6c 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 | al.</span>.<span.class="tok-kw"> |
| 55ec0 | 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 |
| 55ee0 | 22 3e 26 71 75 6f 74 3b 5b 4e 5d 54 20 74 6f 20 3f 5b 5d 63 6f 6e 73 74 20 54 26 71 75 6f 74 3b | ">"[N]T.to.?[]const.T" |
| 55f00 | 3c 2f 73 70 61 6e 3e 20 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 |
| 55f20 | 77 22 3e 76 61 72 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 73 | w">var</span>.x1:.?[]<span.class |
| 55f40 | 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 |
| 55f60 | 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. |
| 55f80 | 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" |
| 55fa0 | 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 |
| 55fc0 | 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 78 32 3a 20 3f 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 | w">var</span>.x2:.?[]<span.class |
| 55fe0 | 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 |
| 56000 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 20 3d 20 26 61 6d 70 3b 5b | ss="tok-type">u8</span>.=.&[ |
| 56020 | 3c 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 |
| 56040 | 3e 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 | >]<span.class="tok-type">u8</spa |
| 56060 | 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 3c 2f 73 | n>{.<span.class="tok-str">'h'</s |
| 56080 | 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 27 3c | pan>,.<span.class="tok-str">'e'< |
| 560a0 | 2f 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 |
| 560c0 | 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"> |
| 560e0 | 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 6e 75 6d | 'l'</span>,.<span.class="tok-num |
| 56100 | 62 65 72 22 3e 31 31 31 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 20 20 20 20 65 78 70 65 63 74 28 73 74 | ber">111</span>.};.....expect(st |
| 56120 | 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 22 | d.mem.eql(<span.class="tok-type" |
| 56140 | 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 20 20 3c | >u8</span>,.x1.?,.x2.?));......< |
| 56160 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 79 | span.class="tok-kw">var</span>.y |
| 56180 | 3a 20 3f 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c | :.?[]<span.class="tok-kw">const< |
| 561a0 | 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 33 | /span>.<span.class="tok-type">f3 |
| 561c0 | 32 3c 2f 73 70 61 6e 3e 20 3d 20 26 61 6d 70 3b 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | 2</span>.=.&[<span.class="to |
| 561e0 | 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=" |
| 56200 | 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 |
| 56220 | 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 |
| 56240 | 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>.} |
| 56260 | 3b 0a 20 20 20 20 65 78 70 65 63 74 28 79 2e 3f 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ;.....expect(y.?[<span.class="to |
| 56280 | 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 |
| 562a0 | 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 0a 0a | ss="tok-number">1.2</span>);.}.. |
| 562c0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 49 6e 20 | <span.class="tok-comment">//.In. |
| 562e0 | 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 20 62 65 63 6f | this.cast,.the.array.length.beco |
| 56300 | 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 3e 0a 3c 73 70 | mes.the.slice.length.</span>.<sp |
| 56320 | 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 |
| 56340 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 2a 5b 4e 5d 54 20 | pan.class="tok-str">"*[N]T. |
| 56360 | 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 73 70 61 6e 20 | to.[]T"</span>.{.....<span. |
| 56380 | 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 75 66 3a 20 5b | class="tok-kw">var</span>.buf:.[ |
| 563a0 | 3c 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 |
| 563c0 | 3e 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 | >]<span.class="tok-type">u8</spa |
| 563e0 | 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 | n>.=.<span.class="tok-str">" |
| 56400 | 3b 68 65 6c 6c 6f 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2e 2a 3b 0a 20 20 20 20 3c 73 70 61 6e | ;hello"</span>.*;.....<span |
| 56420 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 78 3a 20 | .class="tok-kw">const</span>.x:. |
| 56440 | 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 | []<span.class="tok-type">u8</spa |
| 56460 | 6e 3e 20 3d 20 26 61 6d 70 3b 62 75 66 3b 0a 20 20 20 20 65 78 70 65 63 74 28 73 74 64 2e 6d 65 | n>.=.&buf;.....expect(std.me |
| 56480 | 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< |
| 564a0 | 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 2d 73 74 72 22 | /span>,.x,.<span.class="tok-str" |
| 564c0 | 3e 26 71 75 6f 74 3b 68 65 6c 6c 6f 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 29 3b 0a 0a 20 20 | >"hello"</span>));.... |
| 564e0 | 20 20 3c 73 70 61 6e 20 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 |
| 56500 | 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 6b 2d 6e 75 6d | an>.buf2.=.[<span.class="tok-num |
| 56520 | 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | ber">2</span>]<span.class="tok-t |
| 56540 | 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 |
| 56560 | 6b 2d 6e 75 6d 62 65 72 22 3e 31 2e 32 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 | k-number">1.2</span>,.<span.clas |
| 56580 | 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 3b 0a 20 20 20 | s="tok-number">3.4</span>.};.... |
| 565a0 | 20 3c 73 70 61 6e 20 63 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 |
| 565c0 | 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 77 22 3e 63 6f | n>.x2:.[]<span.class="tok-kw">co |
| 565e0 | 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 |
| 56600 | 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 20 20 20 65 78 | ">f32</span>.=.&buf2;.....ex |
| 56620 | 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 74 6f | pect(std.mem.eql(<span.class="to |
| 56640 | 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 70 3b 5b 3c 73 | k-type">f32</span>,.x2,.&[<s |
| 56660 | 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 5d | pan.class="tok-number">2</span>] |
| 56680 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e | <span.class="tok-type">f32</span |
| 566a0 | 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 32 3c | >{.<span.class="tok-number">1.2< |
| 566c0 | 2f 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" |
| 566e0 | 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 6c 61 73 73 3d | >3.4</span>.}));.}..<span.class= |
| 56700 | 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 53 69 6e 67 6c 65 2d 69 74 65 6d 20 70 6f 69 | "tok-comment">//.Single-item.poi |
| 56720 | 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 63 65 64 20 74 | nters.to.arrays.can.be.coerced.t |
| 56740 | 6f 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e | o</span>.<span.class="tok-commen |
| 56760 | 74 22 3e 2f 2f 20 75 6e 6b 6e 6f 77 6e 20 6c 65 6e 67 74 68 20 70 6f 69 6e 74 65 72 73 2e 3c 2f | t">//.unknown.length.pointers.</ |
| 56780 | 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c | span>.<span.class="tok-kw">test< |
| 567a0 | 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 |
| 567c0 | 6f 74 3b 2a 5b 4e 5d 54 20 74 6f 20 5b 2a 5d 54 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a | ot;*[N]T.to.[*]T"</span>.{. |
| 567e0 | 20 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 |
| 56800 | 61 6e 3e 20 62 75 66 3a 20 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | an>.buf:.[<span.class="tok-numbe |
| 56820 | 72 22 3e 35 3c 2f 73 70 61 6e 3e 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | r">5</span>]<span.class="tok-typ |
| 56840 | 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- |
| 56860 | 73 74 72 22 3e 26 71 75 6f 74 3b 68 65 6c 6c 6f 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2e 2a 3b | str">"hello"</span>.*; |
| 56880 | 0a 20 20 20 20 3c 73 70 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< |
| 568a0 | 2f 73 70 61 6e 3e 20 78 3a 20 5b 2a 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | /span>.x:.[*]<span.class="tok-ty |
| 568c0 | 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 20 3d 20 26 61 6d 70 3b 62 75 66 3b 0a 20 20 20 20 65 78 | pe">u8</span>.=.&buf;.....ex |
| 568e0 | 70 65 63 74 28 78 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e | pect(x[<span.class="tok-number"> |
| 56900 | 34 3c 2f 73 70 61 6e 3e 5d 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 | 4</span>].==.<span.class="tok-st |
| 56920 | 72 22 3e 27 6f 27 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | r">'o'</span>);.....<span.class= |
| 56940 | 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 78 5b 35 5d 20 77 6f 75 6c 64 20 62 65 20 61 | "tok-comment">//.x[5].would.be.a |
| 56960 | 6e 20 75 6e 63 61 75 67 68 74 20 6f 75 74 20 6f 66 20 62 6f 75 6e 64 73 20 70 6f 69 6e 74 65 72 | n.uncaught.out.of.bounds.pointer |
| 56980 | 20 64 65 72 65 66 65 72 65 6e 63 65 21 3c 2f 73 70 61 6e 3e 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c | .dereference!</span>.}..<span.cl |
| 569a0 | 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 4c 69 6b 65 77 69 73 65 2c 20 69 | ass="tok-comment">//.Likewise,.i |
| 569c0 | 74 20 77 6f 72 6b 73 20 77 68 65 6e 20 74 68 65 20 64 65 73 74 69 6e 61 74 69 6f 6e 20 74 79 70 | t.works.when.the.destination.typ |
| 569e0 | 65 20 69 73 20 61 6e 20 6f 70 74 69 6f 6e 61 6c 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 | e.is.an.optional.</span>.<span.c |
| 56a00 | 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. |
| 56a20 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 2a 5b 4e 5d 54 20 74 6f 20 3f | class="tok-str">"*[N]T.to.? |
| 56a40 | 5b 2a 5d 54 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | [*]T"</span>.{.....<span.cl |
| 56a60 | 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 75 66 3a 20 5b 3c 73 | ass="tok-kw">var</span>.buf:.[<s |
| 56a80 | 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>] |
| 56aa0 | 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> |
| 56ac0 | 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 |
| 56ae0 | 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 |
| 56b00 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 78 3a 20 3f 5b | lass="tok-kw">const</span>.x:.?[ |
| 56b20 | 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 70 61 | *]<span.class="tok-type">u8</spa |
| 56b40 | 6e 3e 20 3d 20 26 61 6d 70 3b 62 75 66 3b 0a 20 20 20 20 65 78 70 65 63 74 28 78 2e 3f 5b 3c 73 | n>.=.&buf;.....expect(x.?[<s |
| 56b60 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 5d | pan.class="tok-number">4</span>] |
| 56b80 | 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 6f 27 3c 2f 73 | .==.<span.class="tok-str">'o'</s |
| 56ba0 | 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 65 | pan>);.}..<span.class="tok-comme |
| 56bc0 | 6e 74 22 3e 2f 2f 20 53 69 6e 67 6c 65 2d 69 74 65 6d 20 70 6f 69 6e 74 65 72 73 20 63 61 6e 20 | nt">//.Single-item.pointers.can. |
| 56be0 | 62 65 20 63 61 73 74 20 74 6f 20 6c 65 6e 2d 31 20 73 69 6e 67 6c 65 2d 69 74 65 6d 20 61 72 72 | be.cast.to.len-1.single-item.arr |
| 56c00 | 61 79 73 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | ays.</span>.<span.class="tok-kw" |
| 56c20 | 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 |
| 56c40 | 72 22 3e 26 71 75 6f 74 3b 2a 54 20 74 6f 20 2a 5b 31 5d 54 26 71 75 6f 74 3b 3c 2f 73 70 61 6e | r">"*T.to.*[1]T"</span |
| 56c60 | 3e 20 7b 0a 20 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 |
| 56c80 | 3c 2f 73 70 61 6e 3e 20 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | </span>.x:.<span.class="tok-type |
| 56ca0 | 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- |
| 56cc0 | 6e 75 6d 62 65 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 | number">1234</span>;.....<span.c |
| 56ce0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 79 3a 20 2a 5b | lass="tok-kw">const</span>.y:.*[ |
| 56d00 | 3c 73 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 |
| 56d20 | 3e 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 | >]<span.class="tok-type">i32</sp |
| 56d40 | 61 6e 3e 20 3d 20 26 61 6d 70 3b 78 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | an>.=.&x;.....<span.class="t |
| 56d60 | 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 7a 3a 20 5b 2a 5d 3c 73 70 61 6e 20 | ok-kw">const</span>.z:.[*]<span. |
| 56d80 | 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 79 3b | class="tok-type">i32</span>.=.y; |
| 56da0 | 0a 20 20 20 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 | .....expect(z[<span.class="tok-n |
| 56dc0 | 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 5d 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | umber">0</span>].==.<span.class= |
| 56de0 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f | "tok-number">1234</span>);.}</co |
| 56e00 | 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c | de></pre><pre><code.class="shell |
| 56e20 | 22 3e 24 20 7a 69 67 20 74 65 73 74 20 63 6f 65 72 63 65 5f 61 72 72 61 79 73 5f 61 6e 64 5f 70 | ">$.zig.test.coerce_arrays_and_p |
| 56e40 | 74 72 73 2e 7a 69 67 0a 31 2f 37 20 74 65 73 74 20 26 71 75 6f 74 3b 5b 4e 5d 54 20 74 6f 20 5b | trs.zig.1/7.test."[N]T.to.[ |
| 56e60 | 5d 63 6f 6e 73 74 20 54 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 32 2f 37 20 74 65 73 74 20 26 71 | ]const.T"....OK.2/7.test.&q |
| 56e80 | 75 6f 74 3b 5b 4e 5d 54 20 74 6f 20 45 21 5b 5d 63 6f 6e 73 74 20 54 26 71 75 6f 74 3b 2e 2e 2e | uot;[N]T.to.E![]const.T"... |
| 56ea0 | 20 4f 4b 0a 33 2f 37 20 74 65 73 74 20 26 71 75 6f 74 3b 5b 4e 5d 54 20 74 6f 20 3f 5b 5d 63 6f | .OK.3/7.test."[N]T.to.?[]co |
| 56ec0 | 6e 73 74 20 54 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 34 2f 37 20 74 65 73 74 20 26 71 75 6f 74 | nst.T"....OK.4/7.test." |
| 56ee0 | 3b 2a 5b 4e 5d 54 20 74 6f 20 5b 5d 54 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 35 2f 37 20 74 65 | ;*[N]T.to.[]T"....OK.5/7.te |
| 56f00 | 73 74 20 26 71 75 6f 74 3b 2a 5b 4e 5d 54 20 74 6f 20 5b 2a 5d 54 26 71 75 6f 74 3b 2e 2e 2e 20 | st."*[N]T.to.[*]T".... |
| 56f20 | 4f 4b 0a 36 2f 37 20 74 65 73 74 20 26 71 75 6f 74 3b 2a 5b 4e 5d 54 20 74 6f 20 3f 5b 2a 5d 54 | OK.6/7.test."*[N]T.to.?[*]T |
| 56f40 | 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 37 2f 37 20 74 65 73 74 20 26 71 75 6f 74 3b 2a 54 20 74 | "....OK.7/7.test."*T.t |
| 56f60 | 6f 20 2a 5b 31 5d 54 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 41 6c 6c 20 37 20 74 65 73 74 73 20 | o.*[1]T"....OK.All.7.tests. |
| 56f80 | 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e | passed..</code></pre>........<p> |
| 56fa0 | 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="# |
| 56fc0 | 43 2d 50 6f 69 6e 74 65 72 73 22 3e 43 20 50 6f 69 6e 74 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a | C-Pointers">C.Pointers</a></li>. |
| 56fe0 | 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 54 79 70 65 | </ul>...............<h3.id="Type |
| 57000 | 2d 43 6f 65 72 63 69 6f 6e 2d 4f 70 74 69 6f 6e 61 6c 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 | -Coercion-Optionals"><a.href="#t |
| 57020 | 6f 63 2d 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 2d 4f 70 74 69 6f 6e 61 6c 73 22 3e 54 79 70 65 | oc-Type-Coercion-Optionals">Type |
| 57040 | 20 43 6f 65 72 63 69 6f 6e 3a 20 4f 70 74 69 6f 6e 61 6c 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 | .Coercion:.Optionals</a>.<a.clas |
| 57060 | 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 4f 70 74 | s="hdr".href="#Type-Coercion-Opt |
| 57080 | 69 6f 6e 61 6c 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 | ionals">..</a></h3>........<p>.. |
| 570a0 | 20 20 20 20 20 54 68 65 20 70 61 79 6c 6f 61 64 20 74 79 70 65 20 6f 66 20 3c 61 20 68 72 65 66 | .....The.payload.type.of.<a.href |
| 570c0 | 3d 22 23 4f 70 74 69 6f 6e 61 6c 73 22 3e 4f 70 74 69 6f 6e 61 6c 73 3c 2f 61 3e 2c 20 61 73 20 | ="#Optionals">Optionals</a>,.as. |
| 570e0 | 77 65 6c 6c 20 61 73 20 3c 61 20 68 72 65 66 3d 22 23 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 61 3e | well.as.<a.href="#null">null</a> |
| 57100 | 2c 20 63 6f 65 72 63 65 20 74 6f 20 74 68 65 20 6f 70 74 69 6f 6e 61 6c 20 74 79 70 65 2e 0a 20 | ,.coerce.to.the.optional.type... |
| 57120 | 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e | .....</p>.......<p.class="file"> |
| 57140 | 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | test.zig</p><pre><code.class="zi |
| 57160 | 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 | g"><span.class="tok-kw">const</s |
| 57180 | 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 |
| 571a0 | 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= |
| 571c0 | 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> |
| 571e0 | 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 |
| 57200 | 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 |
| 57220 | 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 |
| 57240 | 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">" |
| 57260 | 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 2f 73 70 61 6e 3e | coerce.to.optionals"</span> |
| 57280 | 20 7b 0a 20 20 20 20 3c 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 |
| 572a0 | 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 74 6f 6b 2d 74 79 | t</span>.x:.?<span.class="tok-ty |
| 572c0 | 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 |
| 572e0 | 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e | k-number">1234</span>;.....<span |
| 57300 | 20 63 6c 61 73 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 | .class="tok-kw">const</span>.y:. |
| 57320 | 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 |
| 57340 | 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 |
| 57360 | 3c 2f 73 70 61 6e 3e 3b 0a 0a 20 20 20 20 65 78 70 65 63 74 28 78 2e 3f 20 3d 3d 20 3c 73 70 61 | </span>;......expect(x.?.==.<spa |
| 57380 | 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> |
| 573a0 | 29 3b 0a 20 20 20 20 65 78 70 65 63 74 28 79 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | );.....expect(y.==.<span.class=" |
| 573c0 | 74 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e | tok-null">null</span>);.}</code> |
| 573e0 | 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 | </pre><pre><code.class="shell">$ |
| 57400 | 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 31 2f 31 20 74 65 73 74 20 26 71 75 6f | .zig.test.test.zig.1/1.test.&quo |
| 57420 | 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 2e 2e 2e 20 4f | t;coerce.to.optionals"....O |
| 57440 | 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 | K.All.1.tests.passed..</code></p |
| 57460 | 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 49 74 20 77 6f 72 6b 73 20 6e 65 73 74 65 64 20 69 6e | re>........<p>It.works.nested.in |
| 57480 | 73 69 64 65 20 74 68 65 20 3c 61 20 68 72 65 66 3d 22 23 45 72 72 6f 72 2d 55 6e 69 6f 6e 2d 54 | side.the.<a.href="#Error-Union-T |
| 574a0 | 79 70 65 22 3e 45 72 72 6f 72 20 55 6e 69 6f 6e 20 54 79 70 65 3c 2f 61 3e 2c 20 74 6f 6f 3a 3c | ype">Error.Union.Type</a>,.too:< |
| 574c0 | 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a | /p>.......<p.class="file">test.z |
| 574e0 | 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 | ig</p><pre><code.class="zig"><sp |
| 57500 | 61 6e 20 63 6c 61 73 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 |
| 57520 | 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">@ |
| 57540 | 69 6d 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 |
| 57560 | 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 |
| 57580 | 61 6e 20 63 6c 61 73 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 |
| 575a0 | 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 |
| 575c0 | 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 |
| 575e0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 63 6f 65 72 63 65 | pan.class="tok-str">"coerce |
| 57600 | 20 74 6f 20 6f 70 74 69 6f 6e 61 6c 73 20 77 72 61 70 70 65 64 20 69 6e 20 65 72 72 6f 72 20 75 | .to.optionals.wrapped.in.error.u |
| 57620 | 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 |
| 57640 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 78 3a 20 3c 73 70 | ass="tok-kw">const</span>.x:.<sp |
| 57660 | 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 |
| 57680 | 61 6e 3e 21 3f 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c | an>!?<span.class="tok-type">i32< |
| 576a0 | 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 |
| 576c0 | 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ">1234</span>;.....<span.class=" |
| 576e0 | 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 79 3a 20 3c 73 70 61 6e 20 63 6c | tok-kw">const</span>.y:.<span.cl |
| 57700 | 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 3f | ass="tok-type">anyerror</span>!? |
| 57720 | 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 |
| 57740 | 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 3c | >.=.<span.class="tok-null">null< |
| 57760 | 2f 73 70 61 6e 3e 3b 0a 0a 20 20 20 20 65 78 70 65 63 74 28 28 3c 73 70 61 6e 20 63 6c 61 73 73 | /span>;......expect((<span.class |
| 57780 | 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 78 29 2e 3f 20 3d 3d 20 3c 73 70 | ="tok-kw">try</span>.x).?.==.<sp |
| 577a0 | 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 |
| 577c0 | 3e 29 3b 0a 20 20 20 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 | >);.....expect((<span.class="tok |
| 577e0 | 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 79 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | -kw">try</span>.y).==.<span.clas |
| 57800 | 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f | s="tok-null">null</span>);.}</co |
| 57820 | 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c | de></pre><pre><code.class="shell |
| 57840 | 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 31 2f 31 20 74 65 73 74 20 26 | ">$.zig.test.test.zig.1/1.test.& |
| 57860 | 71 75 6f 74 3b 63 6f 65 72 63 65 20 74 6f 20 6f 70 74 69 6f 6e 61 6c 73 20 77 72 61 70 70 65 64 | quot;coerce.to.optionals.wrapped |
| 57880 | 20 69 6e 20 65 72 72 6f 72 20 75 6e 69 6f 6e 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 41 6c 6c 20 | .in.error.union"....OK.All. |
| 578a0 | 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 | 1.tests.passed..</code></pre>... |
| 578c0 | 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 54 79 70 65 2d 43 6f 65 72 63 69 6f | ............<h3.id="Type-Coercio |
| 578e0 | 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 2d 54 79 | n-Error-Unions"><a.href="#toc-Ty |
| 57900 | 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 |
| 57920 | 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 63 6c 61 | oercion:.Error.Unions</a>.<a.cla |
| 57940 | 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 2d 45 72 | ss="hdr".href="#Type-Coercion-Er |
| 57960 | 72 6f 72 2d 55 6e 69 6f 6e 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c | ror-Unions">..</a></h3>........< |
| 57980 | 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 72 65 66 | p>The.payload.type.of.an.<a.href |
| 579a0 | 3d 22 23 45 72 72 6f 72 2d 55 6e 69 6f 6e 2d 54 79 70 65 22 3e 45 72 72 6f 72 20 55 6e 69 6f 6e | ="#Error-Union-Type">Error.Union |
| 579c0 | 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 72 65 66 | .Type</a>.as.well.as.the.<a.href |
| 579e0 | 3d 22 23 45 72 72 6f 72 2d 53 65 74 2d 54 79 70 65 22 3e 45 72 72 6f 72 20 53 65 74 20 54 79 70 | ="#Error-Set-Type">Error.Set.Typ |
| 57a00 | 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 6f 72 20 | e</a>.......coerce.to.the.error. |
| 57a20 | 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 3c 70 20 | union.type:.......</p>.......<p. |
| 57a40 | 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 | class="file">test.zig</p><pre><c |
| 57a60 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ode.class="zig"><span.class="tok |
| 57a80 | 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 |
| 57aa0 | 61 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> |
| 57ac0 | 28 3c 73 70 61 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 |
| 57ae0 | 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 |
| 57b00 | 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 |
| 57b20 | 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 |
| 57b40 | 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 |
| 57b60 | 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 6f 72 20 75 | k-str">"coercion.to.error.u |
| 57b80 | 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 61 6e 20 63 | nions"</span>.{.....<span.c |
| 57ba0 | 6c 61 73 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 |
| 57bc0 | 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 |
| 57be0 | 70 61 6e 3e 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c | pan>!<span.class="tok-type">i32< |
| 57c00 | 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 |
| 57c20 | 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ">1234</span>;.....<span.class=" |
| 57c40 | 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 79 3a 20 3c 73 70 61 6e 20 63 6c | tok-kw">const</span>.y:.<span.cl |
| 57c60 | 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 3c | ass="tok-type">anyerror</span>!< |
| 57c80 | 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> |
| 57ca0 | 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 | .=.<span.class="tok-kw">error</s |
| 57cc0 | 70 61 6e 3e 2e 46 61 69 6c 75 72 65 3b 0a 0a 20 20 20 20 65 78 70 65 63 74 28 28 3c 73 70 61 6e | pan>.Failure;......expect((<span |
| 57ce0 | 20 63 6c 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 29 20 3d 3d | .class="tok-kw">try</span>.x).== |
| 57d00 | 20 3c 73 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</ |
| 57d20 | 73 70 61 6e 3e 29 3b 0a 20 20 20 20 73 74 64 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 45 72 | span>);.....std.testing.expectEr |
| 57d40 | 72 6f 72 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f | ror(<span.class="tok-kw">error</ |
| 57d60 | 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 2f 70 72 65 | span>.Failure,.y);.}</code></pre |
| 57d80 | 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 | ><pre><code.class="shell">$.zig. |
| 57da0 | 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 31 2f 31 20 74 65 73 74 20 26 71 75 6f 74 3b 63 6f 65 | test.test.zig.1/1.test."coe |
| 57dc0 | 72 63 69 6f 6e 20 74 6f 20 65 72 72 6f 72 20 75 6e 69 6f 6e 73 26 71 75 6f 74 3b 2e 2e 2e 20 4f | rcion.to.error.unions"....O |
| 57de0 | 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 | K.All.1.tests.passed..</code></p |
| 57e00 | 72 65 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 54 79 70 65 2d 43 | re>...............<h3.id="Type-C |
| 57e20 | 6f 65 72 63 69 6f 6e 2d 43 6f 6d 70 69 6c 65 2d 54 69 6d 65 2d 4b 6e 6f 77 6e 2d 4e 75 6d 62 65 | oercion-Compile-Time-Known-Numbe |
| 57e40 | 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 6e 2d | rs"><a.href="#toc-Type-Coercion- |
| 57e60 | 43 6f 6d 70 69 6c 65 2d 54 69 6d 65 2d 4b 6e 6f 77 6e 2d 4e 75 6d 62 65 72 73 22 3e 54 79 70 65 | Compile-Time-Known-Numbers">Type |
| 57e80 | 20 43 6f 65 72 63 69 6f 6e 3a 20 43 6f 6d 70 69 6c 65 2d 54 69 6d 65 20 4b 6e 6f 77 6e 20 4e 75 | .Coercion:.Compile-Time.Known.Nu |
| 57ea0 | 6d 62 65 72 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 | mbers</a>.<a.class="hdr".href="# |
| 57ec0 | 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 6e | Type-Coercion-Compile-Time-Known |
| 57ee0 | 2d 4e 75 6d 62 65 72 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e | -Numbers">..</a></h3>........<p> |
| 57f00 | 57 68 65 6e 20 61 20 6e 75 6d 62 65 72 20 69 73 20 3c 61 20 68 72 65 66 3d 22 23 63 6f 6d 70 74 | When.a.number.is.<a.href="#compt |
| 57f20 | 69 6d 65 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 61 3e 2d 6b 6e 6f 77 6e 20 74 6f 20 62 65 20 72 65 | ime">comptime</a>-known.to.be.re |
| 57f40 | 70 72 65 73 65 6e 74 61 62 6c 65 20 69 6e 20 74 68 65 20 64 65 73 74 69 6e 61 74 69 6f 6e 20 74 | presentable.in.the.destination.t |
| 57f60 | 79 70 65 2c 0a 20 20 20 20 20 20 69 74 20 6d 61 79 20 62 65 20 63 6f 65 72 63 65 64 3a 0a 20 20 | ype,.......it.may.be.coerced:... |
| 57f80 | 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 | ....</p>.......<p.class="file">t |
| 57fa0 | 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | est.zig</p><pre><code.class="zig |
| 57fc0 | 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 | "><span.class="tok-kw">const</sp |
| 57fe0 | 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 |
| 58000 | 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=" |
| 58020 | 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>) |
| 58040 | 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 |
| 58060 | 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; |
| 58080 | 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 |
| 580a0 | 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 63 | n>.<span.class="tok-str">"c |
| 580c0 | 6f 65 72 63 69 6e 67 20 6c 61 72 67 65 20 69 6e 74 65 67 65 72 20 74 79 70 65 20 74 6f 20 73 6d | oercing.large.integer.type.to.sm |
| 580e0 | 61 6c 6c 65 72 20 6f 6e 65 20 77 68 65 6e 20 76 61 6c 75 65 20 69 73 20 63 6f 6d 70 74 69 6d 65 | aller.one.when.value.is.comptime |
| 58100 | 20 6b 6e 6f 77 6e 20 74 6f 20 66 69 74 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 | .known.to.fit"</span>.{.... |
| 58120 | 20 3c 73 70 61 6e 20 63 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 |
| 58140 | 6e 3e 20 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 36 34 | n>.x:.<span.class="tok-type">u64 |
| 58160 | 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 |
| 58180 | 72 22 3e 32 35 35 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | r">255</span>;.....<span.class=" |
| 581a0 | 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 79 3a 20 3c 73 70 61 6e 20 63 6c | tok-kw">const</span>.y:.<span.cl |
| 581c0 | 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 78 3b 0a 20 20 | ass="tok-type">u8</span>.=.x;... |
| 581e0 | 20 20 65 78 70 65 63 74 28 79 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | ..expect(y.==.<span.class="tok-n |
| 58200 | 75 6d 62 65 72 22 3e 32 35 35 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 | umber">255</span>);.}</code></pr |
| 58220 | 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 | e><pre><code.class="shell">$.zig |
| 58240 | 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 31 2f 31 20 74 65 73 74 20 26 71 75 6f 74 3b 63 6f | .test.test.zig.1/1.test."co |
| 58260 | 65 72 63 69 6e 67 20 6c 61 72 67 65 20 69 6e 74 65 67 65 72 20 74 79 70 65 20 74 6f 20 73 6d 61 | ercing.large.integer.type.to.sma |
| 58280 | 6c 6c 65 72 20 6f 6e 65 20 77 68 65 6e 20 76 61 6c 75 65 20 69 73 20 63 6f 6d 70 74 69 6d 65 20 | ller.one.when.value.is.comptime. |
| 582a0 | 6b 6e 6f 77 6e 20 74 6f 20 66 69 74 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 41 6c 6c 20 31 20 74 | known.to.fit"....OK.All.1.t |
| 582c0 | 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 | ests.passed..</code></pre>...... |
| 582e0 | 20 20 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 2d 75 | .........<h3.id="Type-Coercion-u |
| 58300 | 6e 69 6f 6e 73 2d 61 6e 64 2d 65 6e 75 6d 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 54 | nions-and-enums"><a.href="#toc-T |
| 58320 | 79 70 65 2d 43 6f 65 72 63 69 6f 6e 2d 75 6e 69 6f 6e 73 2d 61 6e 64 2d 65 6e 75 6d 73 22 3e 54 | ype-Coercion-unions-and-enums">T |
| 58340 | 79 70 65 20 43 6f 65 72 63 69 6f 6e 3a 20 75 6e 69 6f 6e 73 20 61 6e 64 20 65 6e 75 6d 73 3c 2f | ype.Coercion:.unions.and.enums</ |
| 58360 | 61 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 |
| 58380 | 65 72 63 69 6f 6e 2d 75 6e 69 6f 6e 73 2d 61 6e 64 2d 65 6e 75 6d 73 22 3e c2 a7 3c 2f 61 3e 3c | ercion-unions-and-enums">..</a>< |
| 583a0 | 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 54 61 67 67 65 64 20 75 6e 69 6f 6e 73 20 63 61 6e | /h3>........<p>Tagged.unions.can |
| 583c0 | 20 62 65 20 63 6f 65 72 63 65 64 20 74 6f 20 65 6e 75 6d 73 2c 20 61 6e 64 20 65 6e 75 6d 73 20 | .be.coerced.to.enums,.and.enums. |
| 583e0 | 63 61 6e 20 62 65 20 63 6f 65 72 63 65 64 20 74 6f 20 74 61 67 67 65 64 20 75 6e 69 6f 6e 73 0a | can.be.coerced.to.tagged.unions. |
| 58400 | 20 20 20 20 20 20 77 68 65 6e 20 74 68 65 79 20 61 72 65 20 3c 61 20 68 72 65 66 3d 22 23 63 6f | ......when.they.are.<a.href="#co |
| 58420 | 6d 70 74 69 6d 65 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 61 3e 2d 6b 6e 6f 77 6e 20 74 6f 20 62 65 | mptime">comptime</a>-known.to.be |
| 58440 | 20 61 20 66 69 65 6c 64 20 6f 66 20 74 68 65 20 75 6e 69 6f 6e 20 74 68 61 74 20 68 61 73 20 6f | .a.field.of.the.union.that.has.o |
| 58460 | 6e 6c 79 20 6f 6e 65 20 70 6f 73 73 69 62 6c 65 20 76 61 6c 75 65 2c 20 73 75 63 68 20 61 73 0a | nly.one.possible.value,.such.as. |
| 58480 | 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 76 6f 69 64 22 3e 76 6f 69 64 3c 2f 61 3e 3a 0a | ......<a.href="#void">void</a>:. |
| 584a0 | 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 | ......</p>.......<p.class="file" |
| 584c0 | 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a | >test.zig</p><pre><code.class="z |
| 584e0 | 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f | ig"><span.class="tok-kw">const</ |
| 58500 | 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 |
| 58520 | 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 |
| 58540 | 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 |
| 58560 | 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</ |
| 58580 | 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 73 74 64 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 | span>.expect.=.std.testing.expec |
| 585a0 | 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f | t;..<span.class="tok-kw">const</ |
| 585c0 | 73 70 61 6e 3e 20 45 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 | span>.E.=.<span.class="tok-kw">e |
| 585e0 | 6e 75 6d 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 6f 6e 65 2c 0a 20 20 20 20 74 77 6f 2c 0a 20 | num</span>.{.....one,.....two,.. |
| 58600 | 20 20 20 74 68 72 65 65 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | ...three,.};..<span.class="tok-k |
| 58620 | 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 55 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | w">const</span>.U.=.<span.class= |
| 58640 | 22 74 6f 6b 2d 6b 77 22 3e 75 6e 69 6f 6e 3c 2f 73 70 61 6e 3e 28 45 29 20 7b 0a 20 20 20 20 6f | "tok-kw">union</span>(E).{.....o |
| 58660 | 6e 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f | ne:.<span.class="tok-type">i32</ |
| 58680 | 73 70 61 6e 3e 2c 0a 20 20 20 20 74 77 6f 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | span>,.....two:.<span.class="tok |
| 586a0 | 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 74 68 72 65 65 2c 0a 7d 3b | -type">f32</span>,.....three,.}; |
| 586c0 | 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 |
| 586e0 | 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 63 | n>.<span.class="tok-str">"c |
| 58700 | 6f 65 72 63 69 6f 6e 20 62 65 74 77 65 65 6e 20 75 6e 69 6f 6e 73 20 61 6e 64 20 65 6e 75 6d 73 | oercion.between.unions.and.enums |
| 58720 | 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= |
| 58740 | 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 75 20 3d 20 55 7b 20 2e 74 77 6f 20 | "tok-kw">var</span>.u.=.U{..two. |
| 58760 | 3d 20 3c 73 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 |
| 58780 | 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- |
| 587a0 | 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 65 3a 20 45 20 3d 20 75 3b 0a 20 20 20 20 65 78 70 | kw">var</span>.e:.E.=.u;.....exp |
| 587c0 | 65 63 74 28 65 20 3d 3d 20 45 2e 74 77 6f 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | ect(e.==.E.two);......<span.clas |
| 587e0 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 74 68 72 65 65 20 3d 20 | s="tok-kw">const</span>.three.=. |
| 58800 | 45 2e 74 68 72 65 65 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | E.three;.....<span.class="tok-kw |
| 58820 | 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 61 6e 6f 74 68 65 72 5f 75 3a 20 55 20 3d 20 74 68 72 65 | ">var</span>.another_u:.U.=.thre |
| 58840 | 65 3b 0a 20 20 20 20 65 78 70 65 63 74 28 61 6e 6f 74 68 65 72 5f 75 20 3d 3d 20 45 2e 74 68 72 | e;.....expect(another_u.==.E.thr |
| 58860 | 65 65 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c | ee);.}</code></pre><pre><code.cl |
| 58880 | 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a | ass="shell">$.zig.test.test.zig. |
| 588a0 | 31 2f 31 20 74 65 73 74 20 26 71 75 6f 74 3b 63 6f 65 72 63 69 6f 6e 20 62 65 74 77 65 65 6e 20 | 1/1.test."coercion.between. |
| 588c0 | 75 6e 69 6f 6e 73 20 61 6e 64 20 65 6e 75 6d 73 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 41 6c 6c | unions.and.enums"....OK.All |
| 588e0 | 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a | .1.tests.passed..</code></pre>.. |
| 58900 | 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>< |
| 58920 | 61 20 68 72 65 66 3d 22 23 75 6e 69 6f 6e 22 3e 75 6e 69 6f 6e 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c | a.href="#union">union</a></li>.< |
| 58940 | 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 65 6e 75 6d 22 3e 65 6e 75 6d 3c 2f 61 3e 3c 2f 6c 69 3e | li><a.href="#enum">enum</a></li> |
| 58960 | 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 54 79 70 | .</ul>...............<h3.id="Typ |
| 58980 | 65 2d 43 6f 65 72 63 69 6f 6e 2d 5a 65 72 6f 2d 42 69 74 2d 54 79 70 65 73 22 3e 3c 61 20 68 72 | e-Coercion-Zero-Bit-Types"><a.hr |
| 589a0 | 65 66 3d 22 23 74 6f 63 2d 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 2d 5a 65 72 6f 2d 42 69 74 2d | ef="#toc-Type-Coercion-Zero-Bit- |
| 589c0 | 54 79 70 65 73 22 3e 54 79 70 65 20 43 6f 65 72 63 69 6f 6e 3a 20 5a 65 72 6f 20 42 69 74 20 54 | Types">Type.Coercion:.Zero.Bit.T |
| 589e0 | 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 54 | ypes</a>.<a.class="hdr".href="#T |
| 58a00 | 79 70 65 2d 43 6f 65 72 63 69 6f 6e 2d 5a 65 72 6f 2d 42 69 74 2d 54 79 70 65 73 22 3e c2 a7 3c | ype-Coercion-Zero-Bit-Types">..< |
| 58a20 | 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 3c 61 20 68 72 65 66 3d 22 23 5a 65 72 | /a></h3>........<p><a.href="#Zer |
| 58a40 | 6f 2d 42 69 74 2d 54 79 70 65 73 22 3e 5a 65 72 6f 20 42 69 74 20 54 79 70 65 73 3c 2f 61 3e 20 | o-Bit-Types">Zero.Bit.Types</a>. |
| 58a60 | 6d 61 79 20 62 65 20 63 6f 65 72 63 65 64 20 74 6f 20 73 69 6e 67 6c 65 2d 69 74 65 6d 20 3c 61 | may.be.coerced.to.single-item.<a |
| 58a80 | 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 2c 0a | .href="#Pointers">Pointers</a>,. |
| 58aa0 | 20 20 20 20 20 20 72 65 67 61 72 64 6c 65 73 73 20 6f 66 20 63 6f 6e 73 74 2e 3c 2f 70 3e 0a 20 | ......regardless.of.const.</p>.. |
| 58ac0 | 20 20 20 20 20 3c 70 3e 54 4f 44 4f 20 64 6f 63 75 6d 65 6e 74 20 74 68 65 20 72 65 61 73 6f 6e | .....<p>TODO.document.the.reason |
| 58ae0 | 69 6e 67 20 66 6f 72 20 74 68 69 73 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 54 4f 44 4f 20 64 | ing.for.this</p>.......<p>TODO.d |
| 58b00 | 6f 63 75 6d 65 6e 74 20 77 68 65 74 68 65 72 20 76 69 63 65 20 76 65 72 73 61 20 73 68 6f 75 6c | ocument.whether.vice.versa.shoul |
| 58b20 | 64 20 77 6f 72 6b 20 61 6e 64 20 77 68 79 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 | d.work.and.why</p>.......<p.clas |
| 58b40 | 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 | s="file">test.zig</p><pre><code. |
| 58b60 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | class="zig"><span.class="tok-kw" |
| 58b80 | 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 |
| 58ba0 | 72 22 3e 26 71 75 6f 74 3b 63 6f 65 72 63 69 6f 6e 20 6f 66 20 7a 65 72 6f 20 62 69 74 20 74 79 | r">"coercion.of.zero.bit.ty |
| 58bc0 | 70 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 | pes"</span>.{.....<span.cla |
| 58be0 | 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 20 | ss="tok-kw">var</span>.x:.<span. |
| 58c00 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 3d 20 7b | class="tok-type">void</span>.=.{ |
| 58c20 | 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< |
| 58c40 | 2f 73 70 61 6e 3e 20 79 3a 20 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | /span>.y:.*<span.class="tok-type |
| 58c60 | 22 3e 76 6f 69 64 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 | ">void</span>.=.x;.....<span.cla |
| 58c80 | 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 76 61 72 20 7a 3a 20 76 6f 69 64 20 3d | ss="tok-comment">//var.z:.void.= |
| 58ca0 | 20 79 3b 20 2f 2f 20 54 4f 44 4f 3c 2f 73 70 61 6e 3e 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 | .y;.//.TODO</span>.}</code></pre |
| 58cc0 | 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 | ><pre><code.class="shell">$.zig. |
| 58ce0 | 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 31 2f 31 20 74 65 73 74 20 26 71 75 6f 74 3b 63 6f 65 | test.test.zig.1/1.test."coe |
| 58d00 | 72 63 69 6f 6e 20 6f 66 20 7a 65 72 6f 20 62 69 74 20 74 79 70 65 73 26 71 75 6f 74 3b 2e 2e 2e | rcion.of.zero.bit.types"... |
| 58d20 | 20 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c | .OK.All.1.tests.passed..</code>< |
| 58d40 | 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 54 79 70 65 | /pre>...............<h3.id="Type |
| 58d60 | 2d 43 6f 65 72 63 69 6f 6e 2d 75 6e 64 65 66 69 6e 65 64 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 | -Coercion-undefined"><a.href="#t |
| 58d80 | 6f 63 2d 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 2d 75 6e 64 65 66 69 6e 65 64 22 3e 54 79 70 65 | oc-Type-Coercion-undefined">Type |
| 58da0 | 20 43 6f 65 72 63 69 6f 6e 3a 20 75 6e 64 65 66 69 6e 65 64 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 | .Coercion:.undefined</a>.<a.clas |
| 58dc0 | 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 2d 75 6e 64 | s="hdr".href="#Type-Coercion-und |
| 58de0 | 65 66 69 6e 65 64 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 3c 61 | efined">..</a></h3>........<p><a |
| 58e00 | 20 68 72 65 66 3d 22 23 75 6e 64 65 66 69 6e 65 64 22 3e 75 6e 64 65 66 69 6e 65 64 3c 2f 61 3e | .href="#undefined">undefined</a> |
| 58e20 | 20 63 61 6e 20 62 65 20 63 61 73 74 20 74 6f 20 61 6e 79 20 74 79 70 65 2e 3c 2f 70 3e 0a 20 20 | .can.be.cast.to.any.type.</p>... |
| 58e40 | 20 20 20 20 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 45 78 70 6c 69 | ...................<h2.id="Expli |
| 58e60 | 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 |
| 58e80 | 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 |
| 58ea0 | 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 |
| 58ec0 | 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 45 | ">..</a></h2>........<p>.......E |
| 58ee0 | 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. |
| 58f00 | 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 |
| 58f20 | 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 |
| 58f40 | 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 |
| 58f60 | 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. |
| 58f80 | 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 |
| 58fa0 | 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 |
| 58fc0 | 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; |
| 58fe0 | 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>....... |
| 59000 | 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 |
| 59020 | 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 |
| 59040 | 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 |
| 59060 | 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 |
| 59080 | 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 |
| 590a0 | 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 |
| 590c0 | 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 62 6f 6f 6c 54 6f | >...........<li><a.href="#boolTo |
| 590e0 | 49 6e 74 22 3e 40 62 6f 6f 6c 54 6f 49 6e 74 3c 2f 61 3e 20 2d 20 63 6f 6e 76 65 72 74 20 74 72 | Int">@boolToInt</a>.-.convert.tr |
| 59100 | 75 65 20 74 6f 20 31 20 61 6e 64 20 66 61 6c 73 65 20 74 6f 20 30 3c 2f 6c 69 3e 0a 20 20 20 20 | ue.to.1.and.false.to.0</li>..... |
| 59120 | 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 65 6e 75 6d 54 6f 49 6e 74 22 3e 40 | ......<li><a.href="#enumToInt">@ |
| 59140 | 65 6e 75 6d 54 6f 49 6e 74 3c 2f 61 3e 20 2d 20 6f 62 74 61 69 6e 20 74 68 65 20 69 6e 74 65 67 | enumToInt</a>.-.obtain.the.integ |
| 59160 | 65 72 20 74 61 67 20 76 61 6c 75 65 20 6f 66 20 61 6e 20 65 6e 75 6d 20 6f 72 20 74 61 67 67 65 | er.tag.value.of.an.enum.or.tagge |
| 59180 | 64 20 75 6e 69 6f 6e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 | d.union</li>...........<li><a.hr |
| 591a0 | 65 66 3d 22 23 65 72 72 53 65 74 43 61 73 74 22 3e 40 65 72 72 53 65 74 43 61 73 74 3c 2f 61 3e | ef="#errSetCast">@errSetCast</a> |
| 591c0 | 20 2d 20 63 6f 6e 76 65 72 74 20 74 6f 20 61 20 73 6d 61 6c 6c 65 72 20 65 72 72 6f 72 20 73 65 | .-.convert.to.a.smaller.error.se |
| 591e0 | 74 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 65 | t</li>...........<li><a.href="#e |
| 59200 | 72 72 6f 72 54 6f 49 6e 74 22 3e 40 65 72 72 6f 72 54 6f 49 6e 74 3c 2f 61 3e 20 2d 20 6f 62 74 | rrorToInt">@errorToInt</a>.-.obt |
| 59220 | 61 69 6e 20 74 68 65 20 69 6e 74 65 67 65 72 20 76 61 6c 75 65 20 6f 66 20 61 6e 20 65 72 72 6f | ain.the.integer.value.of.an.erro |
| 59240 | 72 20 63 6f 64 65 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 | r.code</li>...........<li><a.hre |
| 59260 | 66 3d 22 23 66 6c 6f 61 74 43 61 73 74 22 3e 40 66 6c 6f 61 74 43 61 73 74 3c 2f 61 3e 20 2d 20 | f="#floatCast">@floatCast</a>.-. |
| 59280 | 63 6f 6e 76 65 72 74 20 61 20 6c 61 72 67 65 72 20 66 6c 6f 61 74 20 74 6f 20 61 20 73 6d 61 6c | convert.a.larger.float.to.a.smal |
| 592a0 | 6c 65 72 20 66 6c 6f 61 74 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 | ler.float</li>...........<li><a. |
| 592c0 | 68 72 65 66 3d 22 23 66 6c 6f 61 74 54 6f 49 6e 74 22 3e 40 66 6c 6f 61 74 54 6f 49 6e 74 3c 2f | href="#floatToInt">@floatToInt</ |
| 592e0 | 61 3e 20 2d 20 6f 62 74 61 69 6e 20 74 68 65 20 69 6e 74 65 67 65 72 20 70 61 72 74 20 6f 66 20 | a>.-.obtain.the.integer.part.of. |
| 59300 | 61 20 66 6c 6f 61 74 20 76 61 6c 75 65 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 | a.float.value</li>...........<li |
| 59320 | 3e 3c 61 20 68 72 65 66 3d 22 23 69 6e 74 43 61 73 74 22 3e 40 69 6e 74 43 61 73 74 3c 2f 61 3e | ><a.href="#intCast">@intCast</a> |
| 59340 | 20 2d 20 63 6f 6e 76 65 72 74 20 62 65 74 77 65 65 6e 20 69 6e 74 65 67 65 72 20 74 79 70 65 73 | .-.convert.between.integer.types |
| 59360 | 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 |
| 59380 | 74 54 6f 45 6e 75 6d 22 3e 40 69 6e 74 54 6f 45 6e 75 6d 3c 2f 61 3e 20 2d 20 6f 62 74 61 69 6e | tToEnum">@intToEnum</a>.-.obtain |
| 593a0 | 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 |
| 593c0 | 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 |
| 593e0 | 3e 3c 61 20 68 72 65 66 3d 22 23 69 6e 74 54 6f 45 72 72 6f 72 22 3e 40 69 6e 74 54 6f 45 72 72 | ><a.href="#intToError">@intToErr |
| 59400 | 6f 72 3c 2f 61 3e 20 2d 20 6f 62 74 61 69 6e 20 61 6e 20 65 72 72 6f 72 20 63 6f 64 65 20 62 61 | or</a>.-.obtain.an.error.code.ba |
| 59420 | 73 65 64 20 6f 6e 20 69 74 73 20 69 6e 74 65 67 65 72 20 76 61 6c 75 65 3c 2f 6c 69 3e 0a 20 20 | sed.on.its.integer.value</li>... |
| 59440 | 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 69 6e 74 54 6f 46 6c 6f 61 74 | ........<li><a.href="#intToFloat |
| 59460 | 22 3e 40 69 6e 74 54 6f 46 6c 6f 61 74 3c 2f 61 3e 20 2d 20 63 6f 6e 76 65 72 74 20 61 6e 20 69 | ">@intToFloat</a>.-.convert.an.i |
| 59480 | 6e 74 65 67 65 72 20 74 6f 20 61 20 66 6c 6f 61 74 20 76 61 6c 75 65 3c 2f 6c 69 3e 0a 20 20 20 | nteger.to.a.float.value</li>.... |
| 594a0 | 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 69 6e 74 54 6f 50 74 72 22 3e 40 | .......<li><a.href="#intToPtr">@ |
| 594c0 | 69 6e 74 54 6f 50 74 72 3c 2f 61 3e 20 2d 20 63 6f 6e 76 65 72 74 20 61 6e 20 61 64 64 72 65 73 | intToPtr</a>.-.convert.an.addres |
| 594e0 | 73 20 74 6f 20 61 20 70 6f 69 6e 74 65 72 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c | s.to.a.pointer</li>...........<l |
| 59500 | 69 3e 3c 61 20 68 72 65 66 3d 22 23 70 74 72 43 61 73 74 22 3e 40 70 74 72 43 61 73 74 3c 2f 61 | i><a.href="#ptrCast">@ptrCast</a |
| 59520 | 3e 20 2d 20 63 6f 6e 76 65 72 74 20 62 65 74 77 65 65 6e 20 70 6f 69 6e 74 65 72 20 74 79 70 65 | >.-.convert.between.pointer.type |
| 59540 | 73 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 70 | s</li>...........<li><a.href="#p |
| 59560 | 74 72 54 6f 49 6e 74 22 3e 40 70 74 72 54 6f 49 6e 74 3c 2f 61 3e 20 2d 20 6f 62 74 61 69 6e 20 | trToInt">@ptrToInt</a>.-.obtain. |
| 59580 | 74 68 65 20 61 64 64 72 65 73 73 20 6f 66 20 61 20 70 6f 69 6e 74 65 72 3c 2f 6c 69 3e 0a 20 20 | the.address.of.a.pointer</li>... |
| 595a0 | 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 74 72 75 6e 63 61 74 65 22 3e | ........<li><a.href="#truncate"> |
| 595c0 | 40 74 72 75 6e 63 61 74 65 3c 2f 61 3e 20 2d 20 63 6f 6e 76 65 72 74 20 62 65 74 77 65 65 6e 20 | @truncate</a>.-.convert.between. |
| 595e0 | 69 6e 74 65 67 65 72 20 74 79 70 65 73 2c 20 63 68 6f 70 70 69 6e 67 20 6f 66 66 20 62 69 74 73 | integer.types,.chopping.off.bits |
| 59600 | 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 | </li>.......</ul>............... |
| 59620 | 3c 68 32 20 69 64 3d 22 50 65 65 72 2d 54 79 70 65 2d 52 65 73 6f 6c 75 74 69 6f 6e 22 3e 3c 61 | <h2.id="Peer-Type-Resolution"><a |
| 59640 | 20 68 72 65 66 3d 22 23 74 6f 63 2d 50 65 65 72 2d 54 79 70 65 2d 52 65 73 6f 6c 75 74 69 6f 6e | .href="#toc-Peer-Type-Resolution |
| 59660 | 22 3e 50 65 65 72 20 54 79 70 65 20 52 65 73 6f 6c 75 74 69 6f 6e 3c 2f 61 3e 20 3c 61 20 63 6c | ">Peer.Type.Resolution</a>.<a.cl |
| 59680 | 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 50 65 65 72 2d 54 79 70 65 2d 52 65 73 6f 6c | ass="hdr".href="#Peer-Type-Resol |
| 596a0 | 75 74 69 6f 6e 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 50 65 65 | ution">..</a></h2>........<p>Pee |
| 596c0 | 72 20 54 79 70 65 20 52 65 73 6f 6c 75 74 69 6f 6e 20 6f 63 63 75 72 73 20 69 6e 20 74 68 65 73 | r.Type.Resolution.occurs.in.thes |
| 596e0 | 65 20 70 6c 61 63 65 73 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 | e.places:</p>.......<ul>........ |
| 59700 | 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 73 77 69 74 63 68 22 3e 73 77 69 74 63 68 3c 2f 61 | .<li><a.href="#switch">switch</a |
| 59720 | 3e 20 65 78 70 72 65 73 73 69 6f 6e 73 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c | >.expressions</li>.........<li>< |
| 59740 | 61 20 68 72 65 66 3d 22 23 69 66 22 3e 69 66 3c 2f 61 3e 20 65 78 70 72 65 73 73 69 6f 6e 73 3c | a.href="#if">if</a>.expressions< |
| 59760 | 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 77 68 69 6c 65 | /li>.........<li><a.href="#while |
| 59780 | 22 3e 77 68 69 6c 65 3c 2f 61 3e 20 65 78 70 72 65 73 73 69 6f 6e 73 3c 2f 6c 69 3e 0a 20 20 20 | ">while</a>.expressions</li>.... |
| 597a0 | 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 66 6f 72 22 3e 66 6f 72 3c 2f 61 3e 20 | .....<li><a.href="#for">for</a>. |
| 597c0 | 65 78 70 72 65 73 73 69 6f 6e 73 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 4d 75 6c | expressions</li>.........<li>Mul |
| 597e0 | 74 69 70 6c 65 20 62 72 65 61 6b 20 73 74 61 74 65 6d 65 6e 74 73 20 69 6e 20 61 20 62 6c 6f 63 | tiple.break.statements.in.a.bloc |
| 59800 | 6b 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 6f 6d 65 20 3c 61 20 68 72 65 66 3d | k</li>.........<li>Some.<a.href= |
| 59820 | 22 23 54 61 62 6c 65 2d 6f 66 2d 4f 70 65 72 61 74 6f 72 73 22 3e 62 69 6e 61 72 79 20 6f 70 65 | "#Table-of-Operators">binary.ope |
| 59840 | 72 61 74 69 6f 6e 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 | rations</a></li>.......</ul>.... |
| 59860 | 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 6b 69 6e 64 20 6f 66 20 74 79 70 65 20 72 | ...<p>.......This.kind.of.type.r |
| 59880 | 65 73 6f 6c 75 74 69 6f 6e 20 63 68 6f 6f 73 65 73 20 61 20 74 79 70 65 20 74 68 61 74 20 61 6c | esolution.chooses.a.type.that.al |
| 598a0 | 6c 20 70 65 65 72 20 74 79 70 65 73 20 63 61 6e 20 63 6f 65 72 63 65 20 69 6e 74 6f 2e 20 48 65 | l.peer.types.can.coerce.into..He |
| 598c0 | 72 65 20 61 72 65 0a 20 20 20 20 20 20 73 6f 6d 65 20 65 78 61 6d 70 6c 65 73 3a 0a 20 20 20 20 | re.are.......some.examples:..... |
| 598e0 | 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 70 65 65 | ..</p>.......<p.class="file">pee |
| 59900 | 72 5f 74 79 70 65 5f 72 65 73 6f 6c 75 74 69 6f 6e 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 | r_type_resolution.zig</p><pre><c |
| 59920 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ode.class="zig"><span.class="tok |
| 59940 | 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 |
| 59960 | 61 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> |
| 59980 | 28 3c 73 70 61 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 |
| 599a0 | 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 |
| 599c0 | 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 |
| 599e0 | 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | esting.expect;.<span.class="tok- |
| 59a00 | 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6d 65 6d 20 3d 20 73 74 64 2e 6d 65 6d 3b 0a | kw">const</span>.mem.=.std.mem;. |
| 59a20 | 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 |
| 59a40 | 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 |
| 59a60 | 65 72 20 72 65 73 6f 6c 76 65 20 69 6e 74 20 77 69 64 65 6e 69 6e 67 26 71 75 6f 74 3b 3c 2f 73 | er.resolve.int.widening"</s |
| 59a80 | 70 61 6e 3e 20 7b 0a 20 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"> |
| 59aa0 | 76 61 72 3c 2f 73 70 61 6e 3e 20 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | var</span>.a:.<span.class="tok-t |
| 59ac0 | 79 70 65 22 3e 69 38 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ype">i8</span>.=.<span.class="to |
| 59ae0 | 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 | k-number">12</span>;.....<span.c |
| 59b00 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 62 3a 20 3c 73 70 61 | lass="tok-kw">var</span>.b:.<spa |
| 59b20 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 31 36 3c 2f 73 70 61 6e 3e 20 3d 20 | n.class="tok-type">i16</span>.=. |
| 59b40 | 3c 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 |
| 59b60 | 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 | n>;.....<span.class="tok-kw">var |
| 59b80 | 3c 2f 73 70 61 6e 3e 20 63 20 3d 20 61 20 2b 20 62 3b 0a 20 20 20 20 65 78 70 65 63 74 28 63 20 | </span>.c.=.a.+.b;.....expect(c. |
| 59ba0 | 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 36 3c 2f | ==.<span.class="tok-number">46</ |
| 59bc0 | 73 70 61 6e 3e 29 3b 0a 20 20 20 20 65 78 70 65 63 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | span>);.....expect(<span.class=" |
| 59be0 | 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).= |
| 59c00 | 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 31 36 3c 2f 73 70 | =.<span.class="tok-type">i16</sp |
| 59c20 | 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 | an>);.}..<span.class="tok-kw">te |
| 59c40 | 73 74 3c 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"> |
| 59c60 | 26 71 75 6f 74 3b 70 65 65 72 20 72 65 73 6f 6c 76 65 20 61 72 72 61 79 73 20 6f 66 20 64 69 66 | "peer.resolve.arrays.of.dif |
| 59c80 | 66 65 72 65 6e 74 20 73 69 7a 65 20 74 6f 20 63 6f 6e 73 74 20 73 6c 69 63 65 26 71 75 6f 74 3b | ferent.size.to.const.slice" |
| 59ca0 | 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 65 78 70 65 63 74 28 6d 65 6d 2e 65 71 6c 28 3c 73 70 | </span>.{.....expect(mem.eql(<sp |
| 59cc0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 62 | an.class="tok-type">u8</span>,.b |
| 59ce0 | 6f 6f 6c 54 6f 53 74 72 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e | oolToStr(<span.class="tok-null"> |
| 59d00 | 74 72 75 65 3c 2f 73 70 61 6e 3e 29 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 | true</span>),.<span.class="tok-s |
| 59d20 | 74 72 22 3e 26 71 75 6f 74 3b 74 72 75 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 29 3b 0a 20 | tr">"true"</span>));.. |
| 59d40 | 20 20 20 65 78 70 65 63 74 28 6d 65 6d 2e 65 71 6c 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ...expect(mem.eql(<span.class="t |
| 59d60 | 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 62 6f 6f 6c 54 6f 53 74 72 28 3c 73 | ok-type">u8</span>,.boolToStr(<s |
| 59d80 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e | pan.class="tok-null">false</span |
| 59da0 | 3e 29 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b | >),.<span.class="tok-str">" |
| 59dc0 | 66 61 6c 73 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 | false"</span>));.....<span. |
| 59de0 | 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 65 | class="tok-kw">comptime</span>.e |
| 59e00 | 78 70 65 63 74 28 6d 65 6d 2e 65 71 6c 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | xpect(mem.eql(<span.class="tok-t |
| 59e20 | 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 62 6f 6f 6c 54 6f 53 74 72 28 3c 73 70 61 6e 20 | ype">u8</span>,.boolToStr(<span. |
| 59e40 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 29 2c 20 3c | class="tok-null">true</span>),.< |
| 59e60 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 74 72 75 65 26 | span.class="tok-str">"true& |
| 59e80 | 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | quot;</span>));.....<span.class= |
| 59ea0 | 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 28 | "tok-kw">comptime</span>.expect( |
| 59ec0 | 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 |
| 59ee0 | 38 3c 2f 73 70 61 6e 3e 2c 20 62 6f 6f 6c 54 6f 53 74 72 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d | 8</span>,.boolToStr(<span.class= |
| 59f00 | 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 29 2c 20 3c 73 70 61 6e 20 | "tok-null">false</span>),.<span. |
| 59f20 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 66 61 6c 73 65 26 71 75 6f 74 | class="tok-str">"false" |
| 59f40 | 3b 3c 2f 73 70 61 6e 3e 29 29 3b 0a 7d 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | ;</span>));.}.<span.class="tok-k |
| 59f60 | 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 |
| 59f80 | 22 3e 62 6f 6f 6c 54 6f 53 74 72 3c 2f 73 70 61 6e 3e 28 62 3a 20 3c 73 70 61 6e 20 63 6c 61 73 | ">boolToStr</span>(b:.<span.clas |
| 59fa0 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 29 20 5b 5d 3c 73 70 61 | s="tok-type">bool</span>).[]<spa |
| 59fc0 | 6e 20 63 6c 61 73 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 |
| 59fe0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 20 7b | pan.class="tok-type">u8</span>.{ |
| 5a000 | 0a 20 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 |
| 5a020 | 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c | </span>.<span.class="tok-kw">if< |
| 5a040 | 2f 73 70 61 6e 3e 20 28 62 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 | /span>.(b).<span.class="tok-str" |
| 5a060 | 3e 26 71 75 6f 74 3b 74 72 75 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 | >"true"</span>.<span.c |
| 5a080 | 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. |
| 5a0a0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 66 61 6c 73 65 26 71 75 6f 74 | class="tok-str">"false" |
| 5a0c0 | 3b 3c 2f 73 70 61 6e 3e 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | ;</span>;.}..<span.class="tok-kw |
| 5a0e0 | 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 |
| 5a100 | 74 72 22 3e 26 71 75 6f 74 3b 70 65 65 72 20 72 65 73 6f 6c 76 65 20 61 72 72 61 79 20 61 6e 64 | tr">"peer.resolve.array.and |
| 5a120 | 20 63 6f 6e 73 74 20 73 6c 69 63 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 | .const.slice"</span>.{..... |
| 5a140 | 74 65 73 74 50 65 65 72 52 65 73 6f 6c 76 65 41 72 72 61 79 43 6f 6e 73 74 53 6c 69 63 65 28 3c | testPeerResolveArrayConstSlice(< |
| 5a160 | 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 |
| 5a180 | 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d | >);.....<span.class="tok-kw">com |
| 5a1a0 | 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 74 65 73 74 50 65 65 72 52 65 73 6f 6c 76 65 41 72 72 61 | ptime</span>.testPeerResolveArra |
| 5a1c0 | 79 43 6f 6e 73 74 53 6c 69 63 65 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c | yConstSlice(<span.class="tok-nul |
| 5a1e0 | 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | l">true</span>);.}.<span.class=" |
| 5a200 | 74 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 |
| 5a220 | 6f 6b 2d 66 6e 22 3e 74 65 73 74 50 65 65 72 52 65 73 6f 6c 76 65 41 72 72 61 79 43 6f 6e 73 74 | ok-fn">testPeerResolveArrayConst |
| 5a240 | 53 6c 69 63 65 3c 2f 73 70 61 6e 3e 28 62 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | Slice</span>(b:.<span.class="tok |
| 5a260 | 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | -type">bool</span>).<span.class= |
| 5a280 | 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 |
| 5a2a0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 76 | an.class="tok-kw">const</span>.v |
| 5a2c0 | 61 6c 75 65 31 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c | alue1.=.<span.class="tok-kw">if< |
| 5a2e0 | 2f 73 70 61 6e 3e 20 28 62 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 | /span>.(b).<span.class="tok-str" |
| 5a300 | 3e 26 71 75 6f 74 3b 61 6f 65 75 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 | >"aoeu"</span>.<span.c |
| 5a320 | 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. |
| 5a340 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 61 73 3c 2f 73 70 61 6e 3e 28 5b | class="tok-builtin">@as</span>([ |
| 5a360 | 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 |
| 5a380 | 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 | n>.<span.class="tok-type">u8</sp |
| 5a3a0 | 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 | an>,.<span.class="tok-str">" |
| 5a3c0 | 3b 7a 7a 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | ;zz"</span>);.....<span.cla |
| 5a3e0 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 76 61 6c 75 65 32 20 | ss="tok-kw">const</span>.value2. |
| 5a400 | 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e | =.<span.class="tok-kw">if</span> |
| 5a420 | 20 28 62 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 | .(b).<span.class="tok-builtin">@ |
| 5a440 | 61 73 3c 2f 73 70 61 6e 3e 28 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | as</span>([]<span.class="tok-kw" |
| 5a460 | 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 |
| 5a480 | 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ype">u8</span>,.<span.class="tok |
| 5a4a0 | 2d 73 74 72 22 3e 26 71 75 6f 74 3b 7a 7a 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 | -str">"zz"</span>).<sp |
| 5a4c0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 3c 73 | an.class="tok-kw">else</span>.<s |
| 5a4e0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 61 6f 65 75 26 71 | pan.class="tok-str">"aoeu&q |
| 5a500 | 75 6f 74 3b 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 65 78 70 65 63 74 28 6d 65 6d 2e 65 71 6c 28 | uot;</span>;.....expect(mem.eql( |
| 5a520 | 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> |
| 5a540 | 2c 20 76 61 6c 75 65 31 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e | ,.value1,.<span.class="tok-str"> |
| 5a560 | 26 71 75 6f 74 3b 61 6f 65 75 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 29 3b 0a 20 20 20 20 65 | "aoeu"</span>));.....e |
| 5a580 | 78 70 65 63 74 28 6d 65 6d 2e 65 71 6c 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | xpect(mem.eql(<span.class="tok-t |
| 5a5a0 | 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 76 61 6c 75 65 32 2c 20 3c 73 70 61 6e 20 63 6c | ype">u8</span>,.value2,.<span.cl |
| 5a5c0 | 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 7a 7a 26 71 75 6f 74 3b 3c 2f 73 70 | ass="tok-str">"zz"</sp |
| 5a5e0 | 61 6e 3e 29 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 | an>));.}..<span.class="tok-kw">t |
| 5a600 | 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" |
| 5a620 | 3e 26 71 75 6f 74 3b 70 65 65 72 20 74 79 70 65 20 72 65 73 6f 6c 75 74 69 6f 6e 3a 20 3f 54 20 | >"peer.type.resolution:.?T. |
| 5a640 | 61 6e 64 20 54 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 65 78 70 65 63 74 28 | and.T"</span>.{.....expect( |
| 5a660 | 70 65 65 72 54 79 70 65 54 41 6e 64 4f 70 74 69 6f 6e 61 6c 54 28 3c 73 70 61 6e 20 63 6c 61 73 | peerTypeTAndOptionalT(<span.clas |
| 5a680 | 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 20 | s="tok-null">true</span>,.<span. |
| 5a6a0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 29 2e 3f | class="tok-null">false</span>).? |
| 5a6c0 | 20 3d 3d 20 3c 73 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</ |
| 5a6e0 | 73 70 61 6e 3e 29 3b 0a 20 20 20 20 65 78 70 65 63 74 28 70 65 65 72 54 79 70 65 54 41 6e 64 4f | span>);.....expect(peerTypeTAndO |
| 5a700 | 70 74 69 6f 6e 61 6c 54 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e | ptionalT(<span.class="tok-null"> |
| 5a720 | 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | false</span>,.<span.class="tok-n |
| 5a740 | 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 29 2e 3f 20 3d 3d 20 3c 73 70 61 6e 20 63 6c | ull">false</span>).?.==.<span.cl |
| 5a760 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 | ass="tok-number">3</span>);..... |
| 5a780 | 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 |
| 5a7a0 | 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 65 78 70 65 63 74 28 70 65 65 72 54 79 70 65 54 41 | pan>.{.........expect(peerTypeTA |
| 5a7c0 | 6e 64 4f 70 74 69 6f 6e 61 6c 54 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c | ndOptionalT(<span.class="tok-nul |
| 5a7e0 | 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | l">true</span>,.<span.class="tok |
| 5a800 | 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 29 2e 3f 20 3d 3d 20 3c 73 70 61 6e 20 | -null">false</span>).?.==.<span. |
| 5a820 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 | class="tok-number">0</span>);... |
| 5a840 | 20 20 20 20 20 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 | ......expect(peerTypeTAndOptiona |
| 5a860 | 6c 54 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c | lT(<span.class="tok-null">false< |
| 5a880 | 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 | /span>,.<span.class="tok-null">f |
| 5a8a0 | 61 6c 73 65 3c 2f 73 70 61 6e 3e 29 2e 3f 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | alse</span>).?.==.<span.class="t |
| 5a8c0 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 7d 0a 7d 0a 3c 73 | ok-number">3</span>);.....}.}.<s |
| 5a8e0 | 70 61 6e 20 63 6c 61 73 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 |
| 5a900 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 70 65 65 72 54 79 70 65 54 41 6e 64 4f 70 | an.class="tok-fn">peerTypeTAndOp |
| 5a920 | 74 69 6f 6e 61 6c 54 3c 2f 73 70 61 6e 3e 28 63 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | tionalT</span>(c:.<span.class="t |
| 5a940 | 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 2c 20 62 3a 20 3c 73 70 61 6e 20 63 | ok-type">bool</span>,.b:.<span.c |
| 5a960 | 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 29 20 3f 3c 73 | lass="tok-type">bool</span>).?<s |
| 5a980 | 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 |
| 5a9a0 | 3e 20 7b 0a 20 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< |
| 5a9c0 | 2f 73 70 61 6e 3e 20 28 63 29 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | /span>.(c).{.........<span.class |
| 5a9e0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c | ="tok-kw">return</span>.<span.cl |
| 5aa00 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 62 29 20 3c 73 70 61 6e | ass="tok-kw">if</span>.(b).<span |
| 5aa20 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 20 3c 73 | .class="tok-null">null</span>.<s |
| 5aa40 | 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>.< |
| 5aa60 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 61 73 3c 2f 73 70 | span.class="tok-builtin">@as</sp |
| 5aa80 | 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 | an>(<span.class="tok-type">usize |
| 5aaa0 | 3c 2f 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 |
| 5aac0 | 22 3e 30 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | ">0</span>);.....}......<span.cl |
| 5aae0 | 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 |
| 5ab00 | 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>( |
| 5ab20 | 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 |
| 5ab40 | 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c | an>,.<span.class="tok-number">3< |
| 5ab60 | 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" |
| 5ab80 | 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 |
| 5aba0 | 72 22 3e 26 71 75 6f 74 3b 70 65 65 72 20 74 79 70 65 20 72 65 73 6f 6c 75 74 69 6f 6e 3a 20 2a | r">"peer.type.resolution:.* |
| 5abc0 | 5b 30 5d 75 38 20 61 6e 64 20 5b 5d 63 6f 6e 73 74 20 75 38 26 71 75 6f 74 3b 3c 2f 73 70 61 6e | [0]u8.and.[]const.u8"</span |
| 5abe0 | 3e 20 7b 0a 20 20 20 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 | >.{.....expect(peerTypeEmptyArra |
| 5ac00 | 79 41 6e 64 53 6c 69 63 65 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 | yAndSlice(<span.class="tok-null" |
| 5ac20 | 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 | >true</span>,.<span.class="tok-s |
| 5ac40 | 74 72 22 3e 26 71 75 6f 74 3b 68 69 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 6c 65 6e 20 3d | tr">"hi"</span>).len.= |
| 5ac60 | 3d 20 3c 73 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 |
| 5ac80 | 61 6e 3e 29 3b 0a 20 20 20 20 65 78 70 65 63 74 28 70 65 65 72 54 79 70 65 45 6d 70 74 79 41 72 | an>);.....expect(peerTypeEmptyAr |
| 5aca0 | 72 61 79 41 6e 64 53 6c 69 63 65 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c | rayAndSlice(<span.class="tok-nul |
| 5acc0 | 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | l">false</span>,.<span.class="to |
| 5ace0 | 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 68 69 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 6c 65 | k-str">"hi"</span>).le |
| 5ad00 | 6e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c | n.==.<span.class="tok-number">1< |
| 5ad20 | 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 |
| 5ad40 | 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 65 78 70 65 | ">comptime</span>.{.........expe |
| 5ad60 | 63 74 28 70 65 65 72 54 79 70 65 45 6d 70 74 79 41 72 72 61 79 41 6e 64 53 6c 69 63 65 28 3c 73 | ct(peerTypeEmptyArrayAndSlice(<s |
| 5ad80 | 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> |
| 5ada0 | 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 |
| 5adc0 | 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 |
| 5ade0 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 20 20 | s="tok-number">0</span>);....... |
| 5ae00 | 20 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 | ..expect(peerTypeEmptyArrayAndSl |
| 5ae20 | 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 65 | ice(<span.class="tok-null">false |
| 5ae40 | 3c 2f 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">& |
| 5ae60 | 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 70 | quot;hi"</span>).len.==.<sp |
| 5ae80 | 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>); |
| 5aea0 | 0a 20 20 20 20 7d 0a 7d 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e | .....}.}.<span.class="tok-kw">fn |
| 5aec0 | 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 70 65 65 | </span>.<span.class="tok-fn">pee |
| 5aee0 | 72 54 79 70 65 45 6d 70 74 79 41 72 72 61 79 41 6e 64 53 6c 69 63 65 3c 2f 73 70 61 6e 3e 28 61 | rTypeEmptyArrayAndSlice</span>(a |
| 5af00 | 3a 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 |
| 5af20 | 70 61 6e 3e 2c 20 73 6c 69 63 65 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | pan>,.slice:.[]<span.class="tok- |
| 5af40 | 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 |
| 5af60 | 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 | k-type">u8</span>).[]<span.class |
| 5af80 | 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 |
| 5afa0 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 | ss="tok-type">u8</span>.{.....<s |
| 5afc0 | 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 29 | pan.class="tok-kw">if</span>.(a) |
| 5afe0 | 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"> |
| 5b000 | 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 26 61 6d 70 3b 5b 5f 5d 3c 73 70 61 6e 20 63 6c 61 73 | return</span>.&[_]<span.clas |
| 5b020 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 7b 7d 3b 0a 20 20 20 20 7d 0a | s="tok-type">u8</span>{};.....}. |
| 5b040 | 0a 20 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 |
| 5b060 | 3c 2f 73 70 61 6e 3e 20 73 6c 69 63 65 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | </span>.slice[<span.class="tok-n |
| 5b080 | 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 2e 2e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | umber">0</span>..<span.class="to |
| 5b0a0 | 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 5d 3b 0a 7d 0a 3c 73 70 61 6e 20 63 6c 61 | k-number">1</span>];.}.<span.cla |
| 5b0c0 | 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 |
| 5b0e0 | 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 70 65 65 72 20 74 79 70 65 20 72 65 | ass="tok-str">"peer.type.re |
| 5b100 | 73 6f 6c 75 74 69 6f 6e 3a 20 2a 5b 30 5d 75 38 2c 20 5b 5d 63 6f 6e 73 74 20 75 38 2c 20 61 6e | solution:.*[0]u8,.[]const.u8,.an |
| 5b120 | 64 20 61 6e 79 65 72 72 6f 72 21 5b 5d 75 38 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 | d.anyerror![]u8"</span>.{.. |
| 5b140 | 20 20 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | ...{.........<span.class="tok-kw |
| 5b160 | 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 64 61 74 61 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ">var</span>.data.=.<span.class= |
| 5b180 | 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 2e | "tok-str">"hi"</span>. |
| 5b1a0 | 2a 3b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | *;.........<span.class="tok-kw"> |
| 5b1c0 | 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 6c 69 63 65 20 3d 20 64 61 74 61 5b 3c 73 70 61 6e 20 | const</span>.slice.=.data[<span. |
| 5b1e0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 2e 2e 5d 3b 0a | class="tok-number">0</span>..];. |
| 5b200 | 20 20 20 20 20 20 20 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 | ........expect((<span.class="tok |
| 5b220 | 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 70 65 65 72 54 79 70 65 45 6d 70 74 79 41 72 72 | -kw">try</span>.peerTypeEmptyArr |
| 5b240 | 61 79 41 6e 64 53 6c 69 63 65 41 6e 64 45 72 72 6f 72 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ayAndSliceAndError(<span.class=" |
| 5b260 | 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 2c 20 73 6c 69 63 65 29 29 2e 6c | tok-null">true</span>,.slice)).l |
| 5b280 | 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 |
| 5b2a0 | 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 20 20 20 20 65 78 70 65 63 74 28 28 3c 73 70 61 6e 20 | </span>);.........expect((<span. |
| 5b2c0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 70 65 65 72 54 79 | class="tok-kw">try</span>.peerTy |
| 5b2e0 | 70 65 45 6d 70 74 79 41 72 72 61 79 41 6e 64 53 6c 69 63 65 41 6e 64 45 72 72 6f 72 28 3c 73 70 | peEmptyArrayAndSliceAndError(<sp |
| 5b300 | 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> |
| 5b320 | 2c 20 73 6c 69 63 65 29 29 2e 6c 65 6e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ,.slice)).len.==.<span.class="to |
| 5b340 | 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 7d 0a 20 20 20 20 3c | k-number">1</span>);.....}.....< |
| 5b360 | 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 |
| 5b380 | 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | an>.{.........<span.class="tok-k |
| 5b3a0 | 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 64 61 74 61 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | w">var</span>.data.=.<span.class |
| 5b3c0 | 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 68 69 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e | ="tok-str">"hi"</span> |
| 5b3e0 | 2e 2a 3b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | .*;.........<span.class="tok-kw" |
| 5b400 | 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 6c 69 63 65 20 3d 20 64 61 74 61 5b 3c 73 70 61 6e | >const</span>.slice.=.data[<span |
| 5b420 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 2e 2e 5d 3b | .class="tok-number">0</span>..]; |
| 5b440 | 0a 20 20 20 20 20 20 20 20 65 78 70 65 63 74 28 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | .........expect((<span.class="to |
| 5b460 | 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 70 65 65 72 54 79 70 65 45 6d 70 74 79 41 72 | k-kw">try</span>.peerTypeEmptyAr |
| 5b480 | 72 61 79 41 6e 64 53 6c 69 63 65 41 6e 64 45 72 72 6f 72 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d | rayAndSliceAndError(<span.class= |
| 5b4a0 | 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 2c 20 73 6c 69 63 65 29 29 2e | "tok-null">true</span>,.slice)). |
| 5b4c0 | 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"> |
| 5b4e0 | 30 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 20 20 20 20 65 78 70 65 63 74 28 28 3c 73 70 61 6e | 0</span>);.........expect((<span |
| 5b500 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 70 65 65 72 54 | .class="tok-kw">try</span>.peerT |
| 5b520 | 79 70 65 45 6d 70 74 79 41 72 72 61 79 41 6e 64 53 6c 69 63 65 41 6e 64 45 72 72 6f 72 28 3c 73 | ypeEmptyArrayAndSliceAndError(<s |
| 5b540 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e | pan.class="tok-null">false</span |
| 5b560 | 3e 2c 20 73 6c 69 63 65 29 29 2e 6c 65 6e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | >,.slice)).len.==.<span.class="t |
| 5b580 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 7d 0a 7d 0a 3c 73 | ok-number">1</span>);.....}.}.<s |
| 5b5a0 | 70 61 6e 20 63 6c 61 73 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 |
| 5b5c0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 70 65 65 72 54 79 70 65 45 6d 70 74 79 41 | an.class="tok-fn">peerTypeEmptyA |
| 5b5e0 | 72 72 61 79 41 6e 64 53 6c 69 63 65 41 6e 64 45 72 72 6f 72 3c 2f 73 70 61 6e 3e 28 61 3a 20 3c | rrayAndSliceAndError</span>(a:.< |
| 5b600 | 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 |
| 5b620 | 3e 2c 20 73 6c 69 63 65 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | >,.slice:.[]<span.class="tok-typ |
| 5b640 | 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | e">u8</span>).<span.class="tok-t |
| 5b660 | 79 70 65 22 3e 61 6e 79 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 21 5b 5d 3c 73 70 61 6e 20 63 6c 61 | ype">anyerror</span>![]<span.cla |
| 5b680 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 | ss="tok-type">u8</span>.{.....<s |
| 5b6a0 | 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 29 | pan.class="tok-kw">if</span>.(a) |
| 5b6c0 | 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"> |
| 5b6e0 | 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 26 61 6d 70 3b 5b 5f 5d 3c 73 70 61 6e 20 63 6c 61 73 | return</span>.&[_]<span.clas |
| 5b700 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 7b 7d 3b 0a 20 20 20 20 7d 0a | s="tok-type">u8</span>{};.....}. |
| 5b720 | 0a 20 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 |
| 5b740 | 3c 2f 73 70 61 6e 3e 20 73 6c 69 63 65 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | </span>.slice[<span.class="tok-n |
| 5b760 | 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 2e 2e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | umber">0</span>..<span.class="to |
| 5b780 | 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 5d 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c | k-number">1</span>];.}..<span.cl |
| 5b7a0 | 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 |
| 5b7c0 | 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 70 65 65 72 20 74 79 70 65 20 72 | lass="tok-str">"peer.type.r |
| 5b7e0 | 65 73 6f 6c 75 74 69 6f 6e 3a 20 2a 63 6f 6e 73 74 20 54 20 61 6e 64 20 3f 2a 54 26 71 75 6f 74 | esolution:.*const.T.and.?*T" |
| 5b800 | 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- |
| 5b820 | 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | kw">const</span>.a.=.<span.class |
| 5b840 | 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6e 74 54 6f 50 74 72 3c 2f 73 70 61 6e 3e 28 | ="tok-builtin">@intToPtr</span>( |
| 5b860 | 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 61 | *<span.class="tok-kw">const</spa |
| 5b880 | 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c | n>.<span.class="tok-type">usize< |
| 5b8a0 | 2f 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" |
| 5b8c0 | 3e 30 78 31 32 33 34 35 36 37 38 30 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 | >0x123456780</span>);.....<span. |
| 5b8e0 | 63 6c 61 73 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.=. |
| 5b900 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6e 74 54 6f | <span.class="tok-builtin">@intTo |
| 5b920 | 50 74 72 3c 2f 73 70 61 6e 3e 28 3f 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | Ptr</span>(?*<span.class="tok-ty |
| 5b940 | 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | pe">usize</span>,.<span.class="t |
| 5b960 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 31 32 33 34 35 36 37 38 30 3c 2f 73 70 61 6e 3e 29 3b 0a | ok-number">0x123456780</span>);. |
| 5b980 | 20 20 20 20 65 78 70 65 63 74 28 61 20 3d 3d 20 62 29 3b 0a 20 20 20 20 65 78 70 65 63 74 28 62 | ....expect(a.==.b);.....expect(b |
| 5b9a0 | 20 3d 3d 20 61 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 | .==.a);.}</code></pre><pre><code |
| 5b9c0 | 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 70 65 65 72 5f 74 | .class="shell">$.zig.test.peer_t |
| 5b9e0 | 79 70 65 5f 72 65 73 6f 6c 75 74 69 6f 6e 2e 7a 69 67 0a 31 2f 37 20 74 65 73 74 20 26 71 75 6f | ype_resolution.zig.1/7.test.&quo |
| 5ba00 | 74 3b 70 65 65 72 20 72 65 73 6f 6c 76 65 20 69 6e 74 20 77 69 64 65 6e 69 6e 67 26 71 75 6f 74 | t;peer.resolve.int.widening" |
| 5ba20 | 3b 2e 2e 2e 20 4f 4b 0a 32 2f 37 20 74 65 73 74 20 26 71 75 6f 74 3b 70 65 65 72 20 72 65 73 6f | ;....OK.2/7.test."peer.reso |
| 5ba40 | 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 74 6f 20 | lve.arrays.of.different.size.to. |
| 5ba60 | 63 6f 6e 73 74 20 73 6c 69 63 65 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 33 2f 37 20 74 65 73 74 | const.slice"....OK.3/7.test |
| 5ba80 | 20 26 71 75 6f 74 3b 70 65 65 72 20 72 65 73 6f 6c 76 65 20 61 72 72 61 79 20 61 6e 64 20 63 6f | ."peer.resolve.array.and.co |
| 5baa0 | 6e 73 74 20 73 6c 69 63 65 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 34 2f 37 20 74 65 73 74 20 26 | nst.slice"....OK.4/7.test.& |
| 5bac0 | 71 75 6f 74 3b 70 65 65 72 20 74 79 70 65 20 72 65 73 6f 6c 75 74 69 6f 6e 3a 20 3f 54 20 61 6e | quot;peer.type.resolution:.?T.an |
| 5bae0 | 64 20 54 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 35 2f 37 20 74 65 73 74 20 26 71 75 6f 74 3b 70 | d.T"....OK.5/7.test."p |
| 5bb00 | 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 6e 64 20 | eer.type.resolution:.*[0]u8.and. |
| 5bb20 | 5b 5d 63 6f 6e 73 74 20 75 38 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 36 2f 37 20 74 65 73 74 20 | []const.u8"....OK.6/7.test. |
| 5bb40 | 26 71 75 6f 74 3b 70 65 65 72 20 74 79 70 65 20 72 65 73 6f 6c 75 74 69 6f 6e 3a 20 2a 5b 30 5d | "peer.type.resolution:.*[0] |
| 5bb60 | 75 38 2c 20 5b 5d 63 6f 6e 73 74 20 75 38 2c 20 61 6e 64 20 61 6e 79 65 72 72 6f 72 21 5b 5d 75 | u8,.[]const.u8,.and.anyerror![]u |
| 5bb80 | 38 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 37 2f 37 20 74 65 73 74 20 26 71 75 6f 74 3b 70 65 65 | 8"....OK.7/7.test."pee |
| 5bba0 | 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 61 6e 64 20 | r.type.resolution:.*const.T.and. |
| 5bbc0 | 3f 2a 54 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 41 6c 6c 20 37 20 74 65 73 74 73 20 70 61 73 73 | ?*T"....OK.All.7.tests.pass |
| 5bbe0 | 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 | ed..</code></pre>............... |
| 5bc00 | 0a 0a 20 20 20 20 20 20 3c 68 31 20 69 64 3d 22 5a 65 72 6f 2d 42 69 74 2d 54 79 70 65 73 22 3e | ........<h1.id="Zero-Bit-Types"> |
| 5bc20 | 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 5a 65 72 6f 2d 42 69 74 2d 54 79 70 65 73 22 3e 5a 65 | <a.href="#toc-Zero-Bit-Types">Ze |
| 5bc40 | 72 6f 20 42 69 74 20 54 79 70 65 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 | ro.Bit.Types</a>.<a.class="hdr". |
| 5bc60 | 68 72 65 66 3d 22 23 5a 65 72 6f 2d 42 69 74 2d 54 79 70 65 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 | href="#Zero-Bit-Types">..</a></h |
| 5bc80 | 31 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 46 6f 72 20 73 6f 6d 65 20 74 79 70 65 73 2c 20 3c 61 20 | 1>........<p>For.some.types,.<a. |
| 5bca0 | 68 72 65 66 3d 22 23 73 69 7a 65 4f 66 22 3e 40 73 69 7a 65 4f 66 3c 2f 61 3e 20 69 73 20 30 3a | href="#sizeOf">@sizeOf</a>.is.0: |
| 5bcc0 | 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 61 | </p>.......<ul>...........<li><a |
| 5bce0 | 20 68 72 65 66 3d 22 23 76 6f 69 64 22 3e 76 6f 69 64 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 | .href="#void">void</a></li>..... |
| 5bd00 | 20 20 20 20 20 20 3c 6c 69 3e 54 68 65 20 3c 61 20 68 72 65 66 3d 22 23 49 6e 74 65 67 65 72 73 | ......<li>The.<a.href="#Integers |
| 5bd20 | 22 3e 49 6e 74 65 67 65 72 73 3c 2f 61 3e 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | ">Integers</a>.<code.class="zig" |
| 5bd40 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 30 3c 2f 73 70 61 6e | ><span.class="tok-type">u0</span |
| 5bd60 | 3e 3c 2f 63 6f 64 65 3e 20 61 6e 64 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c | ></code>.and.<code.class="zig">< |
| 5bd80 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 30 3c 2f 73 70 61 6e 3e 3c | span.class="tok-type">i0</span>< |
| 5bda0 | 2f 63 6f 64 65 3e 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 | /code>.</li>...........<li><a.hr |
| 5bdc0 | 65 66 3d 22 23 41 72 72 61 79 73 22 3e 41 72 72 61 79 73 3c 2f 61 3e 20 61 6e 64 20 3c 61 20 68 | ef="#Arrays">Arrays</a>.and.<a.h |
| 5bde0 | 72 65 66 3d 22 23 56 65 63 74 6f 72 73 22 3e 56 65 63 74 6f 72 73 3c 2f 61 3e 20 77 69 74 68 20 | ref="#Vectors">Vectors</a>.with. |
| 5be00 | 6c 65 6e 20 30 2c 20 6f 72 20 77 69 74 68 20 61 6e 20 65 6c 65 6d 65 6e 74 20 74 79 70 65 20 74 | len.0,.or.with.an.element.type.t |
| 5be20 | 68 61 74 20 69 73 20 61 20 7a 65 72 6f 20 62 69 74 20 74 79 70 65 2e 3c 2f 6c 69 3e 0a 20 20 20 | hat.is.a.zero.bit.type.</li>.... |
| 5be40 | 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 6e | .......<li>An.<a.href="#enum">en |
| 5be60 | 75 6d 3c 2f 61 3e 20 77 69 74 68 20 6f 6e 6c 79 20 31 20 74 61 67 2e 3c 2f 6c 69 3e 0a 20 20 20 | um</a>.with.only.1.tag.</li>.... |
| 5be80 | 20 20 20 20 20 20 20 3c 6c 69 3e 41 20 3c 61 20 68 72 65 66 3d 22 23 73 74 72 75 63 74 22 3e 73 | .......<li>A.<a.href="#struct">s |
| 5bea0 | 74 72 75 63 74 3c 2f 61 3e 20 77 69 74 68 20 61 6c 6c 20 66 69 65 6c 64 73 20 62 65 69 6e 67 20 | truct</a>.with.all.fields.being. |
| 5bec0 | 7a 65 72 6f 20 62 69 74 20 74 79 70 65 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c | zero.bit.types.</li>...........< |
| 5bee0 | 6c 69 3e 41 20 3c 61 20 68 72 65 66 3d 22 23 75 6e 69 6f 6e 22 3e 75 6e 69 6f 6e 3c 2f 61 3e 20 | li>A.<a.href="#union">union</a>. |
| 5bf00 | 77 69 74 68 20 6f 6e 6c 79 20 31 20 66 69 65 6c 64 20 77 68 69 63 68 20 69 73 20 61 20 7a 65 72 | with.only.1.field.which.is.a.zer |
| 5bf20 | 6f 20 62 69 74 20 74 79 70 65 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c | o.bit.type.</li>...........<li>< |
| 5bf40 | 61 20 68 72 65 66 3d 22 23 50 6f 69 6e 74 65 72 73 2d 74 6f 2d 5a 65 72 6f 2d 42 69 74 2d 54 79 | a.href="#Pointers-to-Zero-Bit-Ty |
| 5bf60 | 70 65 73 22 3e 50 6f 69 6e 74 65 72 73 20 74 6f 20 5a 65 72 6f 20 42 69 74 20 54 79 70 65 73 3c | pes">Pointers.to.Zero.Bit.Types< |
| 5bf80 | 2f 61 3e 20 61 72 65 20 74 68 65 6d 73 65 6c 76 65 73 20 7a 65 72 6f 20 62 69 74 20 74 79 70 65 | /a>.are.themselves.zero.bit.type |
| 5bfa0 | 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 20 20 | s.</li>.......</ul>.......<p>... |
| 5bfc0 | 20 20 20 20 54 68 65 73 65 20 74 79 70 65 73 20 63 61 6e 20 6f 6e 6c 79 20 65 76 65 72 20 68 61 | ....These.types.can.only.ever.ha |
| 5bfe0 | 76 65 20 6f 6e 65 20 70 6f 73 73 69 62 6c 65 20 76 61 6c 75 65 2c 20 61 6e 64 20 74 68 75 73 0a | ve.one.possible.value,.and.thus. |
| 5c000 | 20 20 20 20 20 20 72 65 71 75 69 72 65 20 30 20 62 69 74 73 20 74 6f 20 72 65 70 72 65 73 65 6e | ......require.0.bits.to.represen |
| 5c020 | 74 2e 20 43 6f 64 65 20 74 68 61 74 20 6d 61 6b 65 73 20 75 73 65 20 6f 66 20 74 68 65 73 65 20 | t..Code.that.makes.use.of.these. |
| 5c040 | 74 79 70 65 73 20 69 73 0a 20 20 20 20 20 20 6e 6f 74 20 69 6e 63 6c 75 64 65 64 20 69 6e 20 74 | types.is.......not.included.in.t |
| 5c060 | 68 65 20 66 69 6e 61 6c 20 67 65 6e 65 72 61 74 65 64 20 63 6f 64 65 3a 0a 20 20 20 20 20 20 3c | he.final.generated.code:.......< |
| 5c080 | 2f 70 3e 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | /p>.......<pre><code.class="zig" |
| 5c0a0 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 78 70 6f 72 74 3c 2f 73 70 | ><span.class="tok-kw">export</sp |
| 5c0c0 | 61 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 |
| 5c0e0 | 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 65 6e 74 72 79 3c 2f 73 | n>.<span.class="tok-fn">entry</s |
| 5c100 | 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 |
| 5c120 | 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 |
| 5c140 | 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=" |
| 5c160 | 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 3d 20 7b 7d 3b 0a 20 20 20 20 | tok-type">void</span>.=.{};..... |
| 5c180 | 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>. |
| 5c1a0 | 79 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f | y:.<span.class="tok-type">void</ |
| 5c1c0 | 73 70 61 6e 3e 20 3d 20 7b 7d 3b 0a 20 20 20 20 78 20 3d 20 79 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c | span>.=.{};.....x.=.y;.}</code>< |
| 5c1e0 | 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 57 68 65 6e 20 74 68 69 73 20 74 75 72 6e 73 20 69 | /pre>.......<p>When.this.turns.i |
| 5c200 | 6e 74 6f 20 6d 61 63 68 69 6e 65 20 63 6f 64 65 2c 20 74 68 65 72 65 20 69 73 20 6e 6f 20 63 6f | nto.machine.code,.there.is.no.co |
| 5c220 | 64 65 20 67 65 6e 65 72 61 74 65 64 20 69 6e 20 74 68 65 0a 20 20 20 20 20 20 62 6f 64 79 20 6f | de.generated.in.the.......body.o |
| 5c240 | 66 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 65 6e 74 72 79 3c 2f 63 6f 64 65 3e | f.<code.class="zig">entry</code> |
| 5c260 | 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 75 67 | ,.even.in.<a.href="#Debug">Debug |
| 5c280 | 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 5f 36 | </a>.mode..For.example,.on.x86_6 |
| 5c2a0 | 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 30 30 | 4:</p>.......<pre><code>00000000 |
| 5c2c0 | 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 35 35 | 00000010.<entry>:...10:.55 |
| 5c2e0 | 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 70 0a | ....................push...%rbp. |
| 5c300 | 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 76 20 | ..11:.48.89.e5..............mov. |
| 5c320 | 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 20 20 | ...%rsp,%rbp...14:.5d........... |
| 5c340 | 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 20 20 | .........pop....%rbp...15:.c3... |
| 5c360 | 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 3e 3c | .................retq...</code>< |
| 5c380 | 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 69 6e | /pre>.......<p>These.assembly.in |
| 5c3a0 | 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 65 20 | structions.do.not.have.any.code. |
| 5c3c0 | 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 73 20 | associated.with.the.void.values. |
| 5c3e0 | 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 66 75 | -.......they.only.perform.the.fu |
| 5c400 | 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 67 2e | nction.call.prologue.and.epilog. |
| 5c420 | 3c 2f 70 3e 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 76 6f 69 64 22 3e 3c 61 20 68 72 65 | </p>........<h2.id="void"><a.hre |
| 5c440 | 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 61 73 73 3d | f="#toc-void">void</a>.<a.class= |
| 5c460 | 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 32 3e 0a 0a | "hdr".href="#void">..</a></h2>.. |
| 5c480 | 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | ......<p>.......<code.class="zig |
| 5c4a0 | 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 | "><span.class="tok-type">void</s |
| 5c4c0 | 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 63 61 6e 20 62 65 20 75 73 65 66 75 6c 20 66 6f 72 20 69 6e | pan></code>.can.be.useful.for.in |
| 5c4e0 | 73 74 61 6e 74 69 61 74 69 6e 67 20 67 65 6e 65 72 69 63 20 74 79 70 65 73 2e 20 46 6f 72 20 65 | stantiating.generic.types..For.e |
| 5c500 | 78 61 6d 70 6c 65 2c 20 67 69 76 65 6e 20 61 0a 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 20 | xample,.given.a...........<code. |
| 5c520 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 4d 61 70 28 4b 65 79 2c 20 56 61 6c 75 65 29 3c 2f 63 6f 64 | class="zig">Map(Key,.Value)</cod |
| 5c540 | 65 3e 2c 20 6f 6e 65 20 63 61 6e 20 70 61 73 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | e>,.one.can.pass.<code.class="zi |
| 5c560 | 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f | g"><span.class="tok-type">void</ |
| 5c580 | 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 66 6f 72 20 74 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 | span></code>.for.the.<code.class |
| 5c5a0 | 3d 22 7a 69 67 22 3e 56 61 6c 75 65 3c 2f 63 6f 64 65 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | ="zig">Value</code>............. |
| 5c5c0 | 20 20 20 20 20 20 20 20 20 20 74 79 70 65 20 74 6f 20 6d 61 6b 65 20 69 74 20 69 6e 74 6f 20 61 | ..........type.to.make.it.into.a |
| 5c5e0 | 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 53 65 74 3c 2f 63 6f 64 65 3e 3a 0a 20 | .<code.class="zig">Set</code>:.. |
| 5c600 | 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e | .....</p>.......<p.class="file"> |
| 5c620 | 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | test.zig</p><pre><code.class="zi |
| 5c640 | 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 | g"><span.class="tok-kw">const</s |
| 5c660 | 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 |
| 5c680 | 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= |
| 5c6a0 | 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> |
| 5c6c0 | 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 |
| 5c6e0 | 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 |
| 5c700 | 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 |
| 5c720 | 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">" |
| 5c740 | 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 76 6f 69 | turn.HashMap.into.a.set.with.voi |
| 5c760 | 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 |
| 5c780 | 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 64 2e 41 | ="tok-kw">var</span>.map.=.std.A |
| 5c7a0 | 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 79 70 65 | utoHashMap(<span.class="tok-type |
| 5c7c0 | 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | ">i32</span>,.<span.class="tok-t |
| 5c7e0 | 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 73 74 69 | ype">void</span>).init(std.testi |
| 5c800 | 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 73 3d 22 | ng.allocator);.....<span.class=" |
| 5c820 | 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 69 74 28 | tok-kw">defer</span>.map.deinit( |
| 5c840 | 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 | );......<span.class="tok-kw">try |
| 5c860 | 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 74 6f 6b | </span>.map.put(<span.class="tok |
| 5c880 | 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 73 70 61 | -number">1</span>,.{});.....<spa |
| 5c8a0 | 6e 20 63 6c 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 61 70 2e | n.class="tok-kw">try</span>.map. |
| 5c8c0 | 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 32 3c 2f | put(<span.class="tok-number">2</ |
| 5c8e0 | 73 70 61 6e 3e 2c 20 7b 7d 29 3b 0a 0a 20 20 20 20 65 78 70 65 63 74 28 6d 61 70 2e 63 6f 6e 74 | span>,.{});......expect(map.cont |
| 5c900 | 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 32 3c | ains(<span.class="tok-number">2< |
| 5c920 | 2f 73 70 61 6e 3e 29 29 3b 0a 20 20 20 20 65 78 70 65 63 74 28 21 6d 61 70 2e 63 6f 6e 74 61 69 | /span>));.....expect(!map.contai |
| 5c940 | 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 3c 2f 73 | ns(<span.class="tok-number">3</s |
| 5c960 | 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 73 70 61 | pan>));......_.=.map.remove(<spa |
| 5c980 | 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>);. |
| 5c9a0 | 20 20 20 20 65 78 70 65 63 74 28 21 6d 61 70 2e 63 6f 6e 74 61 69 6e 73 28 3c 73 70 61 6e 20 63 | ....expect(!map.contains(<span.c |
| 5c9c0 | 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 0a 7d 3c | lass="tok-number">2</span>));.}< |
| 5c9e0 | 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 | /code></pre><pre><code.class="sh |
| 5ca00 | 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 31 2f 31 20 74 65 73 | ell">$.zig.test.test.zig.1/1.tes |
| 5ca20 | 74 20 26 71 75 6f 74 3b 74 75 72 6e 20 48 61 73 68 4d 61 70 20 69 6e 74 6f 20 61 20 73 65 74 20 | t."turn.HashMap.into.a.set. |
| 5ca40 | 77 69 74 68 20 76 6f 69 64 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 | with.void"....OK.All.1.test |
| 5ca60 | 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c | s.passed..</code></pre>........< |
| 5ca80 | 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 66 72 | p>Note.that.this.is.different.fr |
| 5caa0 | 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 20 68 | om.using.a.dummy.value.for.the.h |
| 5cac0 | 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 3c 63 | ash.map.value........By.using.<c |
| 5cae0 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ode.class="zig"><span.class="tok |
| 5cb00 | 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 61 73 20 74 68 65 | -type">void</span></code>.as.the |
| 5cb20 | 20 74 79 70 65 20 6f 66 20 74 68 65 20 76 61 6c 75 65 2c 20 74 68 65 20 68 61 73 68 20 6d 61 70 | .type.of.the.value,.the.hash.map |
| 5cb40 | 20 65 6e 74 72 79 20 74 79 70 65 20 68 61 73 20 6e 6f 20 76 61 6c 75 65 20 66 69 65 6c 64 2c 20 | .entry.type.has.no.value.field,. |
| 5cb60 | 61 6e 64 0a 20 20 20 20 20 20 74 68 75 73 20 74 68 65 20 68 61 73 68 20 6d 61 70 20 74 61 6b 65 | and.......thus.the.hash.map.take |
| 5cb80 | 73 20 75 70 20 6c 65 73 73 20 73 70 61 63 65 2e 20 46 75 72 74 68 65 72 2c 20 61 6c 6c 20 74 68 | s.up.less.space..Further,.all.th |
| 5cba0 | 65 20 63 6f 64 65 20 74 68 61 74 20 64 65 61 6c 73 20 77 69 74 68 20 73 74 6f 72 69 6e 67 20 61 | e.code.that.deals.with.storing.a |
| 5cbc0 | 6e 64 20 6c 6f 61 64 69 6e 67 20 74 68 65 0a 20 20 20 20 20 20 76 61 6c 75 65 20 69 73 20 64 65 | nd.loading.the.......value.is.de |
| 5cbe0 | 6c 65 74 65 64 2c 20 61 73 20 73 65 65 6e 20 61 62 6f 76 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e | leted,.as.seen.above........</p> |
| 5cc00 | 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | .......<p>.......<code.class="zi |
| 5cc20 | 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f | g"><span.class="tok-type">void</ |
| 5cc40 | 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 69 73 20 64 69 73 74 69 6e 63 74 20 66 72 6f 6d 20 3c 63 | span></code>.is.distinct.from.<c |
| 5cc60 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ode.class="zig"><span.class="tok |
| 5cc80 | 2d 74 79 70 65 22 3e 63 5f 76 6f 69 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 77 68 69 | -type">c_void</span></code>,.whi |
| 5cca0 | 63 68 20 69 73 20 64 65 66 69 6e 65 64 20 6c 69 6b 65 20 74 68 69 73 3a 0a 20 20 20 20 20 20 20 | ch.is.defined.like.this:........ |
| 5ccc0 | 20 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 | .......<code.class="zig"><span.c |
| 5cce0 | 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 |
| 5cd00 | 6c 61 73 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 |
| 5cd20 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 63 5f 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 | .class="tok-type">c_void</span>. |
| 5cd40 | 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 61 71 75 65 3c 2f 73 | =.<span.class="tok-kw">opaque</s |
| 5cd60 | 70 61 6e 3e 20 7b 7d 3b 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | pan>.{};</code>................. |
| 5cd80 | 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | ...<code.class="zig"><span.class |
| 5cda0 | 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 68 | ="tok-type">void</span></code>.h |
| 5cdc0 | 61 73 20 61 20 6b 6e 6f 77 6e 20 73 69 7a 65 20 6f 66 20 30 20 62 79 74 65 73 2c 20 61 6e 64 20 | as.a.known.size.of.0.bytes,.and. |
| 5cde0 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | <code.class="zig"><span.class="t |
| 5ce00 | 6f 6b 2d 74 79 70 65 22 3e 63 5f 76 6f 69 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 68 61 | ok-type">c_void</span></code>.ha |
| 5ce20 | 73 20 61 6e 20 75 6e 6b 6e 6f 77 6e 2c 20 62 75 74 20 6e 6f 6e 2d 7a 65 72 6f 2c 20 73 69 7a 65 | s.an.unknown,.but.non-zero,.size |
| 5ce40 | 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 45 78 70 | ........</p>.......<p>.......Exp |
| 5ce60 | 72 65 73 73 69 6f 6e 73 20 6f 66 20 74 79 70 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | ressions.of.type.<code.class="zi |
| 5ce80 | 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f | g"><span.class="tok-type">void</ |
| 5cea0 | 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 |
| 5cec0 | 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 |
| 5cee0 | 78 61 6d 70 6c 65 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 | xample:.......</p>.......<p.clas |
| 5cf00 | 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 | s="file">test.zig</p><pre><code. |
| 5cf20 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | class="zig"><span.class="tok-kw" |
| 5cf40 | 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 |
| 5cf60 | 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 61 6c | r">"ignoring.expression.val |
| 5cf80 | 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 0a 0a | ue"</span>.{.....foo();.}.. |
| 5cfa0 | 3c 73 70 61 6e 20 63 6c 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>.< |
| 5cfc0 | 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 29 | span.class="tok-fn">foo</span>() |
| 5cfe0 | 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 |
| 5d000 | 6e 3e 20 7b 0a 20 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 |
| 5d020 | 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 6d | turn</span>.<span.class="tok-num |
| 5d040 | 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 65 3e | ber">1234</span>;.}</code></pre> |
| 5d060 | 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 | <pre><code.class="shell">$.zig.t |
| 5d080 | 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e | est.test.zig.<span.class="t0_1"> |
| 5d0a0 | 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 32 3a 38 3a 20 3c 2f 73 70 61 | ./docgen_tmp/test.zig:2:8:.</spa |
| 5d0c0 | 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 31 5f 31 22 3e 65 72 72 6f 72 3a 20 3c 2f 73 | n><span.class="t31_1">error:.</s |
| 5d0e0 | 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 65 78 70 72 65 73 73 69 6f | pan><span.class="t0_1">expressio |
| 5d100 | 6e 20 76 61 6c 75 65 20 69 73 20 69 67 6e 6f 72 65 64 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 66 6f | n.value.is.ignored</span>.....fo |
| 5d120 | 6f 28 29 3b 0a 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e | o();........<span.class="t32_1"> |
| 5d140 | 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f | ^</span>.<span.class="t0_1">./do |
| 5d160 | 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 31 3a 33 34 3a 20 3c 2f 73 70 61 6e 3e 3c | cgen_tmp/test.zig:1:34:.</span>< |
| 5d180 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 36 5f 31 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e 3e | span.class="t36_1">note:.</span> |
| 5d1a0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 72 65 66 65 72 65 6e 63 65 64 20 68 65 | <span.class="t0_1">referenced.he |
| 5d1c0 | 72 65 3c 2f 73 70 61 6e 3e 0a 74 65 73 74 20 26 71 75 6f 74 3b 69 67 6e 6f 72 69 6e 67 20 65 78 | re</span>.test."ignoring.ex |
| 5d1e0 | 70 72 65 73 73 69 6f 6e 20 76 61 6c 75 65 26 71 75 6f 74 3b 20 7b 0a 20 20 20 20 20 20 20 20 20 | pression.value".{.......... |
| 5d200 | 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 |
| 5d220 | 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 | ass="t32_1">^</span>.</code></pr |
| 5d240 | 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 48 6f 77 65 76 65 72 2c 20 69 66 20 74 68 65 20 65 78 70 | e>........<p>However,.if.the.exp |
| 5d260 | 72 65 73 73 69 6f 6e 20 68 61 73 20 74 79 70 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | ression.has.type.<code.class="zi |
| 5d280 | 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f | g"><span.class="tok-type">void</ |
| 5d2a0 | 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 74 68 65 72 65 20 77 69 6c 6c 20 62 65 20 6e 6f 20 65 | span></code>,.there.will.be.no.e |
| 5d2c0 | 72 72 6f 72 2e 20 46 75 6e 63 74 69 6f 6e 20 72 65 74 75 72 6e 20 76 61 6c 75 65 73 20 63 61 6e | rror..Function.return.values.can |
| 5d2e0 | 20 61 6c 73 6f 20 62 65 20 65 78 70 6c 69 63 69 74 6c 79 20 69 67 6e 6f 72 65 64 20 62 79 20 61 | .also.be.explicitly.ignored.by.a |
| 5d300 | 73 73 69 67 6e 69 6e 67 20 74 68 65 6d 20 74 6f 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | ssigning.them.to.<code.class="zi |
| 5d320 | 67 22 3e 5f 3c 2f 63 6f 64 65 3e 2e 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 | g">_</code>..</p>.......<p.class |
| 5d340 | 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 | ="file">test.zig</p><pre><code.c |
| 5d360 | 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | lass="zig"><span.class="tok-kw"> |
| 5d380 | 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 |
| 5d3a0 | 22 3e 26 71 75 6f 74 3b 76 6f 69 64 20 69 73 20 69 67 6e 6f 72 65 64 26 71 75 6f 74 3b 3c 2f 73 | ">"void.is.ignored"</s |
| 5d3c0 | 70 61 6e 3e 20 7b 0a 20 20 20 20 72 65 74 75 72 6e 73 56 6f 69 64 28 29 3b 0a 7d 0a 0a 3c 73 70 | pan>.{.....returnsVoid();.}..<sp |
| 5d3e0 | 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 |
| 5d400 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 65 78 70 6c 69 63 | pan.class="tok-str">"explic |
| 5d420 | 69 74 6c 79 20 69 67 6e 6f 72 69 6e 67 20 65 78 70 72 65 73 73 69 6f 6e 20 76 61 6c 75 65 26 71 | itly.ignoring.expression.value&q |
| 5d440 | 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 5f 20 3d 20 66 6f 6f 28 29 3b 0a 7d 0a 0a | uot;</span>.{....._.=.foo();.}.. |
| 5d460 | 3c 73 70 61 6e 20 63 6c 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>.< |
| 5d480 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 72 65 74 75 72 6e 73 56 6f 69 64 3c | span.class="tok-fn">returnsVoid< |
| 5d4a0 | 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"> |
| 5d4c0 | 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | void</span>.{}..<span.class="tok |
| 5d4e0 | 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- |
| 5d500 | 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 |
| 5d520 | 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 |
| 5d540 | 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 |
| 5d560 | 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> |
| 5d580 | 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 | ;.}</code></pre><pre><code.class |
| 5d5a0 | 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 31 2f 32 | ="shell">$.zig.test.test.zig.1/2 |
| 5d5c0 | 20 74 65 73 74 20 26 71 75 6f 74 3b 76 6f 69 64 20 69 73 20 69 67 6e 6f 72 65 64 26 71 75 6f 74 | .test."void.is.ignored" |
| 5d5e0 | 3b 2e 2e 2e 20 4f 4b 0a 32 2f 32 20 74 65 73 74 20 26 71 75 6f 74 3b 65 78 70 6c 69 63 69 74 6c | ;....OK.2/2.test."explicitl |
| 5d600 | 79 20 69 67 6e 6f 72 69 6e 67 20 65 78 70 72 65 73 73 69 6f 6e 20 76 61 6c 75 65 26 71 75 6f 74 | y.ignoring.expression.value" |
| 5d620 | 3b 2e 2e 2e 20 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 63 6f | ;....OK.All.2.tests.passed..</co |
| 5d640 | 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d | de></pre>................<h2.id= |
| 5d660 | 22 50 6f 69 6e 74 65 72 73 2d 74 6f 2d 5a 65 72 6f 2d 42 69 74 2d 54 79 70 65 73 22 3e 3c 61 20 | "Pointers-to-Zero-Bit-Types"><a. |
| 5d680 | 68 72 65 66 3d 22 23 74 6f 63 2d 50 6f 69 6e 74 65 72 73 2d 74 6f 2d 5a 65 72 6f 2d 42 69 74 2d | href="#toc-Pointers-to-Zero-Bit- |
| 5d6a0 | 54 79 70 65 73 22 3e 50 6f 69 6e 74 65 72 73 20 74 6f 20 5a 65 72 6f 20 42 69 74 20 54 79 70 65 | Types">Pointers.to.Zero.Bit.Type |
| 5d6c0 | 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 6f 69 6e | s</a>.<a.class="hdr".href="#Poin |
| 5d6e0 | 74 65 72 73 2d 74 6f 2d 5a 65 72 6f 2d 42 69 74 2d 54 79 70 65 73 22 3e c2 a7 3c 2f 61 3e 3c 2f | ters-to-Zero-Bit-Types">..</a></ |
| 5d700 | 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 50 6f 69 6e 74 65 72 73 20 74 6f 20 7a 65 72 6f 20 62 | h2>........<p>Pointers.to.zero.b |
| 5d720 | 69 74 20 74 79 70 65 73 20 61 6c 73 6f 20 68 61 76 65 20 7a 65 72 6f 20 62 69 74 73 2e 20 54 68 | it.types.also.have.zero.bits..Th |
| 5d740 | 65 79 20 61 6c 77 61 79 73 20 63 6f 6d 70 61 72 65 20 65 71 75 61 6c 20 74 6f 20 65 61 63 68 20 | ey.always.compare.equal.to.each. |
| 5d760 | 6f 74 68 65 72 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 | other:</p>.......<p.class="file" |
| 5d780 | 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a | >test.zig</p><pre><code.class="z |
| 5d7a0 | 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f | ig"><span.class="tok-kw">const</ |
| 5d7c0 | 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 |
| 5d7e0 | 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 |
| 5d800 | 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 |
| 5d820 | 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</ |
| 5d840 | 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 73 74 64 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 | span>.expect.=.std.testing.expec |
| 5d860 | 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 |
| 5d880 | 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">" |
| 5d8a0 | 3b 70 6f 69 6e 74 65 72 20 74 6f 20 65 6d 70 74 79 20 73 74 72 75 63 74 26 71 75 6f 74 3b 3c 2f | ;pointer.to.empty.struct"</ |
| 5d8c0 | 73 70 61 6e 3e 20 7b 0a 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" |
| 5d8e0 | 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 45 6d 70 74 79 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | >const</span>.Empty.=.<span.clas |
| 5d900 | 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 3b 0a 20 20 20 | s="tok-kw">struct</span>.{};.... |
| 5d920 | 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> |
| 5d940 | 20 61 20 3d 20 45 6d 70 74 79 7b 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | .a.=.Empty{};.....<span.class="t |
| 5d960 | 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 62 20 3d 20 45 6d 70 74 79 7b 7d 3b 0a 20 | ok-kw">var</span>.b.=.Empty{};.. |
| 5d980 | 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 |
| 5d9a0 | 6e 3e 20 70 74 72 5f 61 20 3d 20 26 61 6d 70 3b 61 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | n>.ptr_a.=.&a;.....<span.cla |
| 5d9c0 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 70 74 72 5f 62 20 3d 20 26 | ss="tok-kw">var</span>.ptr_b.=.& |
| 5d9e0 | 61 6d 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 | amp;b;.....<span.class="tok-kw"> |
| 5da00 | 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 28 70 74 72 5f 61 20 3d 3d 20 | comptime</span>.expect(ptr_a.==. |
| 5da20 | 70 74 72 5f 62 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 | ptr_b);.}</code></pre><pre><code |
| 5da40 | 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a | .class="shell">$.zig.test.test.z |
| 5da60 | 69 67 0a 31 2f 31 20 74 65 73 74 20 26 71 75 6f 74 3b 70 6f 69 6e 74 65 72 20 74 6f 20 65 6d 70 | ig.1/1.test."pointer.to.emp |
| 5da80 | 74 79 20 73 74 72 75 63 74 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 | ty.struct"....OK.All.1.test |
| 5daa0 | 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c | s.passed..</code></pre>........< |
| 5dac0 | 70 3e 54 68 65 20 74 79 70 65 20 62 65 69 6e 67 20 70 6f 69 6e 74 65 64 20 74 6f 20 63 61 6e 20 | p>The.type.being.pointed.to.can. |
| 5dae0 | 6f 6e 6c 79 20 65 76 65 72 20 62 65 20 6f 6e 65 20 76 61 6c 75 65 3b 20 74 68 65 72 65 66 6f 72 | only.ever.be.one.value;.therefor |
| 5db00 | 65 20 6c 6f 61 64 73 20 61 6e 64 20 73 74 6f 72 65 73 20 61 72 65 0a 20 20 20 20 20 20 6e 65 76 | e.loads.and.stores.are.......nev |
| 5db20 | 65 72 20 67 65 6e 65 72 61 74 65 64 2e 20 3c 61 20 68 72 65 66 3d 22 23 70 74 72 54 6f 49 6e 74 | er.generated..<a.href="#ptrToInt |
| 5db40 | 22 3e 70 74 72 54 6f 49 6e 74 3c 2f 61 3e 20 61 6e 64 20 3c 61 20 68 72 65 66 3d 22 23 69 6e 74 | ">ptrToInt</a>.and.<a.href="#int |
| 5db60 | 54 6f 50 74 72 22 3e 69 6e 74 54 6f 50 74 72 3c 2f 61 3e 20 61 72 65 20 6e 6f 74 20 61 6c 6c 6f | ToPtr">intToPtr</a>.are.not.allo |
| 5db80 | 77 65 64 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 | wed:</p>.......<p.class="file">t |
| 5dba0 | 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | est.zig</p><pre><code.class="zig |
| 5dbc0 | 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 | "><span.class="tok-kw">const</sp |
| 5dbe0 | 61 6e 3e 20 45 6d 70 74 79 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | an>.Empty.=.<span.class="tok-kw" |
| 5dc00 | 3e 73 74 72 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | >struct</span>.{};..<span.class= |
| 5dc20 | 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 |
| 5dc40 | 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 40 70 74 72 54 6f 49 6e 74 20 66 6f 72 20 70 | ="tok-str">"@ptrToInt.for.p |
| 5dc60 | 6f 69 6e 74 65 72 20 74 6f 20 7a 65 72 6f 20 62 69 74 20 74 79 70 65 26 71 75 6f 74 3b 3c 2f 73 | ointer.to.zero.bit.type"</s |
| 5dc80 | 70 61 6e 3e 20 7b 0a 20 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"> |
| 5dca0 | 76 61 72 3c 2f 73 70 61 6e 3e 20 61 20 3d 20 45 6d 70 74 79 7b 7d 3b 0a 20 20 20 20 5f 20 3d 20 | var</span>.a.=.Empty{};....._.=. |
| 5dcc0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 70 74 72 54 6f | <span.class="tok-builtin">@ptrTo |
| 5dce0 | 49 6e 74 3c 2f 73 70 61 6e 3e 28 26 61 6d 70 3b 61 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 | Int</span>(&a);.}..<span.cla |
| 5dd00 | 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 |
| 5dd20 | 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 40 69 6e 74 54 6f 50 74 72 20 66 6f | ass="tok-str">"@intToPtr.fo |
| 5dd40 | 72 20 70 6f 69 6e 74 65 72 20 74 6f 20 7a 65 72 6f 20 62 69 74 20 74 79 70 65 26 71 75 6f 74 3b | r.pointer.to.zero.bit.type" |
| 5dd60 | 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 5f 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | </span>.{....._.=.<span.class="t |
| 5dd80 | 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6e 74 54 6f 50 74 72 3c 2f 73 70 61 6e 3e 28 2a 45 6d | ok-builtin">@intToPtr</span>(*Em |
| 5dda0 | 70 74 79 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 | pty,.<span.class="tok-number">0x |
| 5ddc0 | 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 70 72 65 3e 3c 63 | 1</span>);.}</code></pre><pre><c |
| 5dde0 | 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 | ode.class="shell">$.zig.test.tes |
| 5de00 | 74 2e 7a 69 67 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 | t.zig.<span.class="t0_1">./docge |
| 5de20 | 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 34 3a 35 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e | n_tmp/test.zig:4:5:.</span><span |
| 5de40 | 20 63 6c 61 73 73 3d 22 74 33 31 5f 31 22 3e 65 72 72 6f 72 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 | .class="t31_1">error:.</span><sp |
| 5de60 | 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 70 6f 69 6e 74 65 72 20 74 6f 20 73 69 7a 65 20 | an.class="t0_1">pointer.to.size. |
| 5de80 | 30 20 74 79 70 65 20 68 61 73 20 6e 6f 20 61 64 64 72 65 73 73 3c 2f 73 70 61 6e 3e 0a 20 20 20 | 0.type.has.no.address</span>.... |
| 5dea0 | 20 76 61 72 20 61 20 3d 20 45 6d 70 74 79 7b 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | .var.a.=.Empty{};.....<span.clas |
| 5dec0 | 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | s="t32_1">^</span>.<span.class=" |
| 5dee0 | 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 35 3a 39 3a | t0_1">./docgen_tmp/test.zig:5:9: |
| 5df00 | 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 36 5f 31 22 3e 6e 6f 74 65 | .</span><span.class="t36_1">note |
| 5df20 | 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 72 65 66 65 | :.</span><span.class="t0_1">refe |
| 5df40 | 72 65 6e 63 65 64 20 68 65 72 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 5f 20 3d 20 40 70 74 72 54 | renced.here</span>....._.=.@ptrT |
| 5df60 | 6f 49 6e 74 28 26 61 6d 70 3b 61 29 3b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | oInt(&a);.........<span.clas |
| 5df80 | 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | s="t32_1">^</span>.<span.class=" |
| 5dfa0 | 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 39 3a 31 39 | t0_1">./docgen_tmp/test.zig:9:19 |
| 5dfc0 | 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 31 5f 31 22 3e 65 72 72 | :.</span><span.class="t31_1">err |
| 5dfe0 | 6f 72 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 74 79 | or:.</span><span.class="t0_1">ty |
| 5e000 | 70 65 20 27 2a 45 6d 70 74 79 27 20 68 61 73 20 30 20 62 69 74 73 20 61 6e 64 20 63 61 6e 6e 6f | pe.'*Empty'.has.0.bits.and.canno |
| 5e020 | 74 20 73 74 6f 72 65 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 5f | t.store.information</span>....._ |
| 5e040 | 20 3d 20 40 69 6e 74 54 6f 50 74 72 28 2a 45 6d 70 74 79 2c 20 30 78 31 29 3b 0a 20 20 20 20 20 | .=.@intToPtr(*Empty,.0x1);...... |
| 5e060 | 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 | .............<span.class="t32_1" |
| 5e080 | 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 | >^</span>.<span.class="t0_1">./d |
| 5e0a0 | 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 39 3a 39 3a 20 3c 2f 73 70 61 6e 3e 3c | ocgen_tmp/test.zig:9:9:.</span>< |
| 5e0c0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 36 5f 31 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e 3e | span.class="t36_1">note:.</span> |
| 5e0e0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 72 65 66 65 72 65 6e 63 65 64 20 68 65 | <span.class="t0_1">referenced.he |
| 5e100 | 72 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 5f 20 3d 20 40 69 6e 74 54 6f 50 74 72 28 2a 45 6d 70 | re</span>....._.=.@intToPtr(*Emp |
| 5e120 | 74 79 2c 20 30 78 31 29 3b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ty,.0x1);.........<span.class="t |
| 5e140 | 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 | 32_1">^</span>.</code></pre>.... |
| 5e160 | 20 20 20 20 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 31 20 69 64 3d 22 52 65 73 75 6c | ...................<h1.id="Resul |
| 5e180 | 74 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 | t-Location-Semantics"><a.href="# |
| 5e1a0 | 74 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 | toc-Result-Location-Semantics">R |
| 5e1c0 | 65 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 | esult.Location.Semantics</a>.<a. |
| 5e1e0 | 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 |
| 5e200 | 6f 6e 2d 53 65 6d 61 6e 74 69 63 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 31 3e 0a 0a 20 20 20 20 20 | on-Semantics">..</a></h1>....... |
| 5e220 | 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 67 69 74 68 | .<p>.......<a.href="https://gith |
| 5e240 | 75 62 2e 63 6f 6d 2f 7a 69 67 6c 61 6e 67 2f 7a 69 67 2f 69 73 73 75 65 73 2f 32 38 30 39 22 3e | ub.com/ziglang/zig/issues/2809"> |
| 5e260 | 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 74 68 69 73 3c | TODO.add.documentation.for.this< |
| 5e280 | 2f 61 3e 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 31 | /a>.......</p>...............<h1 |
| 5e2a0 | 20 69 64 3d 22 75 73 69 6e 67 6e 61 6d 65 73 70 61 63 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 | .id="usingnamespace"><a.href="#t |
| 5e2c0 | 6f 63 2d 75 73 69 6e 67 6e 61 6d 65 73 70 61 63 65 22 3e 75 73 69 6e 67 6e 61 6d 65 73 70 61 63 | oc-usingnamespace">usingnamespac |
| 5e2e0 | 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 75 73 69 6e | e</a>.<a.class="hdr".href="#usin |
| 5e300 | 67 6e 61 6d 65 73 70 61 63 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 31 3e 0a 0a 20 20 20 20 20 20 3c | gnamespace">..</a></h1>........< |
| 5e320 | 70 3e 0a 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e | p>.......<code.class="zig"><span |
| 5e340 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 73 69 6e 67 6e 61 6d 65 73 70 61 63 65 3c 2f | .class="tok-kw">usingnamespace</ |
| 5e360 | 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 69 73 20 61 20 74 6f 70 20 6c 65 76 65 6c 20 64 65 63 6c | span></code>.is.a.top.level.decl |
| 5e380 | 61 72 61 74 69 6f 6e 20 74 68 61 74 20 69 6d 70 6f 72 74 73 20 61 6c 6c 20 74 68 65 20 70 75 62 | aration.that.imports.all.the.pub |
| 5e3a0 | 6c 69 63 20 64 65 63 6c 61 72 61 74 69 6f 6e 73 20 6f 66 0a 20 20 20 20 20 20 74 68 65 20 6f 70 | lic.declarations.of.......the.op |
| 5e3c0 | 65 72 61 6e 64 2c 20 77 68 69 63 68 20 6d 75 73 74 20 62 65 20 61 20 3c 61 20 68 72 65 66 3d 22 | erand,.which.must.be.a.<a.href=" |
| 5e3e0 | 23 73 74 72 75 63 74 22 3e 73 74 72 75 63 74 3c 2f 61 3e 2c 20 3c 61 20 68 72 65 66 3d 22 23 75 | #struct">struct</a>,.<a.href="#u |
| 5e400 | 6e 69 6f 6e 22 3e 75 6e 69 6f 6e 3c 2f 61 3e 2c 20 6f 72 20 3c 61 20 68 72 65 66 3d 22 23 65 6e | nion">union</a>,.or.<a.href="#en |
| 5e420 | 75 6d 22 3e 65 6e 75 6d 3c 2f 61 3e 2c 20 69 6e 74 6f 20 74 68 65 20 63 75 72 72 65 6e 74 20 73 | um">enum</a>,.into.the.current.s |
| 5e440 | 63 6f 70 65 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d | cope:.......</p>.......<p.class= |
| 5e460 | 22 66 69 6c 65 22 3e 75 73 69 6e 67 6e 61 6d 65 73 70 61 63 65 2e 7a 69 67 3c 2f 70 3e 3c 70 72 | "file">usingnamespace.zig</p><pr |
| 5e480 | 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | e><code.class="zig"><span.class= |
| 5e4a0 | 22 74 6f 6b 2d 6b 77 22 3e 75 73 69 6e 67 6e 61 6d 65 73 70 61 63 65 3c 2f 73 70 61 6e 3e 20 3c | "tok-kw">usingnamespace</span>.< |
| 5e4c0 | 73 70 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 |
| 5e4e0 | 3c 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 |
| 5e500 | 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 |
| 5e520 | 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 |
| 5e540 | 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 75 73 69 6e 67 20 73 74 64 20 6e | lass="tok-str">"using.std.n |
| 5e560 | 61 6d 65 73 70 61 63 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 74 65 73 74 | amespace"</span>.{.....test |
| 5e580 | 69 6e 67 2e 65 78 70 65 63 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c | ing.expect(<span.class="tok-null |
| 5e5a0 | 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 | ">true</span>);.}</code></pre><p |
| 5e5c0 | 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 | re><code.class="shell">$.zig.tes |
| 5e5e0 | 74 20 75 73 69 6e 67 6e 61 6d 65 73 70 61 63 65 2e 7a 69 67 0a 31 2f 31 20 74 65 73 74 20 26 71 | t.usingnamespace.zig.1/1.test.&q |
| 5e600 | 75 6f 74 3b 75 73 69 6e 67 20 73 74 64 20 6e 61 6d 65 73 70 61 63 65 26 71 75 6f 74 3b 2e 2e 2e | uot;using.std.namespace"... |
| 5e620 | 20 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c | .OK.All.1.tests.passed..</code>< |
| 5e640 | 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 6e 73 74 65 61 64 20 6f | /pre>........<p>.......Instead.o |
| 5e660 | 66 20 74 68 65 20 61 62 6f 76 65 20 70 61 74 74 65 72 6e 2c 20 69 74 20 69 73 20 67 65 6e 65 72 | f.the.above.pattern,.it.is.gener |
| 5e680 | 61 6c 6c 79 20 72 65 63 6f 6d 6d 65 6e 64 65 64 20 74 6f 20 65 78 70 6c 69 63 69 74 6c 79 20 61 | ally.recommended.to.explicitly.a |
| 5e6a0 | 6c 69 61 73 20 69 6e 64 69 76 69 64 75 61 6c 20 64 65 63 6c 61 72 61 74 69 6f 6e 73 2e 0a 20 20 | lias.individual.declarations.... |
| 5e6c0 | 20 20 20 20 48 6f 77 65 76 65 72 2c 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c | ....However,.<code.class="zig">< |
| 5e6e0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 73 69 6e 67 6e 61 6d 65 73 70 61 | span.class="tok-kw">usingnamespa |
| 5e700 | 63 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 68 61 73 20 61 6e 20 69 6d 70 6f 72 74 61 6e | ce</span></code>.has.an.importan |
| 5e720 | 74 20 75 73 65 20 63 61 73 65 20 77 68 65 6e 20 6f 72 67 61 6e 69 7a 69 6e 67 20 74 68 65 20 70 | t.use.case.when.organizing.the.p |
| 5e740 | 75 62 6c 69 63 0a 20 20 20 20 20 20 41 50 49 20 6f 66 20 61 20 66 69 6c 65 20 6f 72 20 70 61 63 | ublic.......API.of.a.file.or.pac |
| 5e760 | 6b 61 67 65 2e 20 46 6f 72 20 65 78 61 6d 70 6c 65 2c 20 6f 6e 65 20 6d 69 67 68 74 20 68 61 76 | kage..For.example,.one.might.hav |
| 5e780 | 65 20 3c 63 6f 64 65 3e 63 2e 7a 69 67 3c 2f 63 6f 64 65 3e 20 77 69 74 68 20 61 6c 6c 20 6f 66 | e.<code>c.zig</code>.with.all.of |
| 5e7a0 | 20 74 68 65 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 49 6d 70 6f 72 74 2d 66 72 6f 6d | .the.......<a.href="#Import-from |
| 5e7c0 | 2d 43 2d 48 65 61 64 65 72 2d 46 69 6c 65 22 3e 43 20 69 6d 70 6f 72 74 73 3c 2f 61 3e 3a 0a 20 | -C-Header-File">C.imports</a>:.. |
| 5e7e0 | 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 | .....</p>.......<pre><code.class |
| 5e800 | 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c | ="zig"><span.class="tok-kw">pub< |
| 5e820 | 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 73 69 6e | /span>.<span.class="tok-kw">usin |
| 5e840 | 67 6e 61 6d 65 73 70 61 63 65 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | gnamespace</span>.<span.class="t |
| 5e860 | 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 49 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 7b 0a 20 20 | ok-builtin">@cImport</span>({... |
| 5e880 | 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 49 6e | ..<span.class="tok-builtin">@cIn |
| 5e8a0 | 63 6c 75 64 65 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 | clude</span>(<span.class="tok-st |
| 5e8c0 | 72 22 3e 26 71 75 6f 74 3b 65 70 6f 78 79 2f 67 6c 2e 68 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e | r">"epoxy/gl.h"</span> |
| 5e8e0 | 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 | );.....<span.class="tok-builtin" |
| 5e900 | 3e 40 63 49 6e 63 6c 75 64 65 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | >@cInclude</span>(<span.class="t |
| 5e920 | 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 47 4c 46 57 2f 67 6c 66 77 33 2e 68 26 71 75 6f 74 3b | ok-str">"GLFW/glfw3.h" |
| 5e940 | 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 | </span>);.....<span.class="tok-b |
| 5e960 | 75 69 6c 74 69 6e 22 3e 40 63 44 65 66 69 6e 65 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c | uiltin">@cDefine</span>(<span.cl |
| 5e980 | 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 53 54 42 49 5f 4f 4e 4c 59 5f 50 4e | ass="tok-str">"STBI_ONLY_PN |
| 5e9a0 | 47 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 | G"</span>,.<span.class="tok |
| 5e9c0 | 2d 73 74 72 22 3e 26 71 75 6f 74 3b 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 | -str">""</span>);..... |
| 5e9e0 | 3c 73 70 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 | <span.class="tok-builtin">@cDefi |
| 5ea00 | 6e 65 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e | ne</span>(<span.class="tok-str"> |
| 5ea20 | 26 71 75 6f 74 3b 53 54 42 49 5f 4e 4f 5f 53 54 44 49 4f 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e | "STBI_NO_STDIO"</span> |
| 5ea40 | 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 26 71 | ,.<span.class="tok-str">"&q |
| 5ea60 | 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | uot;</span>);.....<span.class="t |
| 5ea80 | 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 49 6e 63 6c 75 64 65 3c 2f 73 70 61 6e 3e 28 3c 73 70 | ok-builtin">@cInclude</span>(<sp |
| 5eaa0 | 61 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 62 5f 69 6d 61 | an.class="tok-str">"stb_ima |
| 5eac0 | 67 65 2e 68 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 29 3b 3c 2f 63 6f 64 65 3e 3c 2f | ge.h"</span>);.});</code></ |
| 5eae0 | 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 20 61 62 6f 76 65 20 65 | pre>.......<p>.......The.above.e |
| 5eb00 | 78 61 6d 70 6c 65 20 64 65 6d 6f 6e 73 74 72 61 74 65 73 20 75 73 69 6e 67 20 3c 63 6f 64 65 20 | xample.demonstrates.using.<code. |
| 5eb20 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | class="zig"><span.class="tok-kw" |
| 5eb40 | 3e 70 75 62 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 74 6f 20 71 75 61 6c 69 66 79 20 74 68 | >pub</span></code>.to.qualify.th |
| 5eb60 | 65 0a 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 | e.......<code.class="zig"><span. |
| 5eb80 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 73 69 6e 67 6e 61 6d 65 73 70 61 63 65 3c 2f 73 | class="tok-kw">usingnamespace</s |
| 5eba0 | 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 61 64 64 69 74 69 6f 6e 61 6c 6c 79 20 6d 61 6b 65 73 20 74 | pan></code>.additionally.makes.t |
| 5ebc0 | 68 65 20 69 6d 70 6f 72 74 65 64 20 64 65 63 6c 61 72 61 74 69 6f 6e 73 0a 20 20 20 20 20 20 3c | he.imported.declarations.......< |
| 5ebe0 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | code.class="zig"><span.class="to |
| 5ec00 | 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 20 54 68 69 73 20 63 61 | k-kw">pub</span></code>..This.ca |
| 5ec20 | 6e 20 62 65 20 75 73 65 64 20 74 6f 20 66 6f 72 77 61 72 64 20 64 65 63 6c 61 72 61 74 69 6f 6e | n.be.used.to.forward.declaration |
| 5ec40 | 73 2c 20 67 69 76 69 6e 67 20 70 72 65 63 69 73 65 20 63 6f 6e 74 72 6f 6c 0a 20 20 20 20 20 20 | s,.giving.precise.control....... |
| 5ec60 | 6f 76 65 72 20 77 68 61 74 20 64 65 63 6c 61 72 61 74 69 6f 6e 73 20 61 20 67 69 76 65 6e 20 66 | over.what.declarations.a.given.f |
| 5ec80 | 69 6c 65 20 65 78 70 6f 73 65 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a | ile.exposes........</p>......... |
| 5eca0 | 20 20 20 20 20 20 3c 68 31 20 69 64 3d 22 63 6f 6d 70 74 69 6d 65 22 3e 3c 61 20 68 72 65 66 3d | ......<h1.id="comptime"><a.href= |
| 5ecc0 | 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 3c 61 20 | "#toc-comptime">comptime</a>.<a. |
| 5ece0 | 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 c2 a7 3c | class="hdr".href="#comptime">..< |
| 5ed00 | 2f 61 3e 3c 2f 68 31 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 5a 69 67 20 70 6c | /a></h1>........<p>.......Zig.pl |
| 5ed20 | 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 74 20 6f | aces.importance.on.the.concept.o |
| 5ed40 | 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 6f 77 6e | f.whether.an.expression.is.known |
| 5ed60 | 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 20 61 72 | .at.compile-time........There.ar |
| 5ed80 | 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 20 63 6f | e.a.few.different.places.this.co |
| 5eda0 | 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 64 69 6e | ncept.is.used,.and.these.buildin |
| 5edc0 | 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 65 70 20 | g.blocks.are.used.......to.keep. |
| 5ede0 | 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 20 61 6e | the.language.small,.readable,.an |
| 5ee00 | 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 3c 68 32 | d.powerful........</p>.......<h2 |
| 5ee20 | 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 54 69 6d | .id="Introducing-the-Compile-Tim |
| 5ee40 | 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 6f 64 75 | e-Concept"><a.href="#toc-Introdu |
| 5ee60 | 63 69 6e 67 2d 74 68 65 2d 43 6f 6d 70 69 6c 65 2d 54 69 6d 65 2d 43 6f 6e 63 65 70 74 22 3e 49 | cing-the-Compile-Time-Concept">I |
| 5ee80 | 6e 74 72 6f 64 75 63 69 6e 67 20 74 68 65 20 43 6f 6d 70 69 6c 65 2d 54 69 6d 65 20 43 6f 6e 63 | ntroducing.the.Compile-Time.Conc |
| 5eea0 | 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 23 49 6e | ept</a>.<a.class="hdr".href="#In |
| 5eec0 | 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 6e 63 65 | troducing-the-Compile-Time-Conce |
| 5eee0 | 70 74 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 43 | pt">..</a></h2>........<h3.id="C |
| 5ef00 | 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 65 66 3d | ompile-Time-Parameters"><a.href= |
| 5ef20 | 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 22 3e 43 | "#toc-Compile-Time-Parameters">C |
| 5ef40 | 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 20 63 6c | ompile-Time.Parameters</a>.<a.cl |
| 5ef60 | 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 50 61 | ass="hdr".href="#Compile-Time-Pa |
| 5ef80 | 72 61 6d 65 74 65 72 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e | rameters">..</a></h3>........<p> |
| 5efa0 | 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 73 20 69 | .......Compile-time.parameters.i |
| 5efc0 | 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 2e 20 49 | s.how.Zig.implements.generics..I |
| 5efe0 | 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 2e 0a 20 | t.is.compile-time.duck.typing... |
| 5f000 | 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 | .....</p>.......<pre><code.class |
| 5f020 | 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f | ="zig"><span.class="tok-kw">fn</ |
| 5f040 | 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 78 3c 2f | span>.<span.class="tok-fn">max</ |
| 5f060 | 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 | span>(<span.class="tok-kw">compt |
| 5f080 | 69 6d 65 3c 2f 73 70 61 6e 3e 20 54 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | ime</span>.T:.<span.class="tok-t |
| 5f0a0 | 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 61 3a 20 54 2c 20 62 3a 20 54 29 20 54 20 | ype">type</span>,.a:.T,.b:.T).T. |
| 5f0c0 | 7b 0a 20 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 |
| 5f0e0 | 6e 3c 2f 73 70 61 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 | n</span>.<span.class="tok-kw">if |
| 5f100 | 3c 2f 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 | </span>.(a.>.b).a.<span.class |
| 5f120 | 3d 22 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 | ="tok-kw">else</span>.b;.}.<span |
| 5f140 | 20 63 6c 61 73 73 3d 22 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. |
| 5f160 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 67 69 6d 6d 65 54 68 65 42 69 67 67 65 72 46 6c 6f | class="tok-fn">gimmeTheBiggerFlo |
| 5f180 | 61 74 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 | at</span>(a:.<span.class="tok-ty |
| 5f1a0 | 70 65 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 | pe">f32</span>,.b:.<span.class=" |
| 5f1c0 | 74 6f 6b 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 | tok-type">f32</span>).<span.clas |
| 5f1e0 | 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 3c 73 | s="tok-type">f32</span>.{.....<s |
| 5f200 | 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> |
| 5f220 | 20 6d 61 78 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 33 32 3c | .max(<span.class="tok-type">f32< |
| 5f240 | 2f 73 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 | /span>,.a,.b);.}.<span.class="to |
| 5f260 | 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 |
| 5f280 | 2d 66 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 | -fn">gimmeTheBiggerInteger</span |
| 5f2a0 | 3e 28 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 36 34 3c | >(a:.<span.class="tok-type">u64< |
| 5f2c0 | 2f 73 70 61 6e 3e 2c 20 62 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | /span>,.b:.<span.class="tok-type |
| 5f2e0 | 22 3e 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 | ">u64</span>).<span.class="tok-t |
| 5f300 | 79 70 65 22 3e 75 36 34 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | ype">u64</span>.{.....<span.clas |
| 5f320 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 6d 61 78 28 3c 73 70 | s="tok-kw">return</span>.max(<sp |
| 5f340 | 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 2c 20 | an.class="tok-type">u64</span>,. |
| 5f360 | 61 2c 20 62 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a | a,.b);.}</code></pre>.......<p>. |
| 5f380 | 20 20 20 20 20 20 49 6e 20 5a 69 67 2c 20 74 79 70 65 73 20 61 72 65 20 66 69 72 73 74 2d 63 6c | ......In.Zig,.types.are.first-cl |
| 5f3a0 | 61 73 73 20 63 69 74 69 7a 65 6e 73 2e 20 54 68 65 79 20 63 61 6e 20 62 65 20 61 73 73 69 67 6e | ass.citizens..They.can.be.assign |
| 5f3c0 | 65 64 20 74 6f 20 76 61 72 69 61 62 6c 65 73 2c 20 70 61 73 73 65 64 20 61 73 20 70 61 72 61 6d | ed.to.variables,.passed.as.param |
| 5f3e0 | 65 74 65 72 73 20 74 6f 20 66 75 6e 63 74 69 6f 6e 73 2c 0a 20 20 20 20 20 20 61 6e 64 20 72 65 | eters.to.functions,.......and.re |
| 5f400 | 74 75 72 6e 65 64 20 66 72 6f 6d 20 66 75 6e 63 74 69 6f 6e 73 2e 20 48 6f 77 65 76 65 72 2c 20 | turned.from.functions..However,. |
| 5f420 | 74 68 65 79 20 63 61 6e 20 6f 6e 6c 79 20 62 65 20 75 73 65 64 20 69 6e 20 65 78 70 72 65 73 73 | they.can.only.be.used.in.express |
| 5f440 | 69 6f 6e 73 20 77 68 69 63 68 20 61 72 65 20 6b 6e 6f 77 6e 20 61 74 20 3c 65 6d 3e 63 6f 6d 70 | ions.which.are.known.at.<em>comp |
| 5f460 | 69 6c 65 2d 74 69 6d 65 3c 2f 65 6d 3e 2c 0a 20 20 20 20 20 20 77 68 69 63 68 20 69 73 20 77 68 | ile-time</em>,.......which.is.wh |
| 5f480 | 79 20 74 68 65 20 70 61 72 61 6d 65 74 65 72 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | y.the.parameter.<code.class="zig |
| 5f4a0 | 22 3e 54 3c 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 | ">T</code>.in.the.above.snippet. |
| 5f4c0 | 6d 75 73 74 20 62 65 20 6d 61 72 6b 65 64 20 77 69 74 68 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d | must.be.marked.with.<code.class= |
| 5f4e0 | 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 | "zig"><span.class="tok-kw">compt |
| 5f500 | 69 6d 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 | ime</span></code>........</p>... |
| 5f520 | 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 41 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | ....<p>.......A.<code.class="zig |
| 5f540 | 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c | "><span.class="tok-kw">comptime< |
| 5f560 | 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 73 20 74 68 | /span></code>.parameter.means.th |
| 5f580 | 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 20 20 20 20 | at:.......</p>.......<ul>....... |
| 5f5a0 | 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 61 6c 75 65 | ..<li>At.the.callsite,.the.value |
| 5f5c0 | 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 6d 65 2c 20 | .must.be.known.at.compile-time,. |
| 5f5e0 | 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 69 3e 0a 20 | or.it.is.a.compile.error.</li>.. |
| 5f600 | 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 65 66 69 6e | .......<li>In.the.function.defin |
| 5f620 | 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 20 63 6f 6d | ition,.the.value.is.known.at.com |
| 5f640 | 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 20 20 20 20 | pile-time.</li>.......</ul>..... |
| 5f660 | 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 77 65 20 77 | ..<p>.......For.example,.if.we.w |
| 5f680 | 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 63 74 69 6f | ere.to.introduce.another.functio |
| 5f6a0 | 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 20 20 3c 2f | n.to.the.above.snippet:.......</ |
| 5f6c0 | 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 | p>.......<p.class="file">test.zi |
| 5f6e0 | 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 | g</p><pre><code.class="zig"><spa |
| 5f700 | 6e 20 63 6c 61 73 73 3d 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 |
| 5f720 | 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 |
| 5f740 | 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>. |
| 5f760 | 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</ |
| 5f780 | 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 |
| 5f7a0 | 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 |
| 5f7c0 | 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. |
| 5f7e0 | 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 |
| 5f800 | 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 |
| 5f820 | 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 |
| 5f840 | 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 74 72 79 20 74 6f 20 70 61 73 73 20 61 20 72 75 6e 74 69 | k-str">"try.to.pass.a.runti |
| 5f860 | 6d 65 20 74 79 70 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 66 6f 6f 28 3c | me.type"</span>.{.....foo(< |
| 5f880 | 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 |
| 5f8a0 | 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 2f | n>);.}.<span.class="tok-kw">fn</ |
| 5f8c0 | 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</ |
| 5f8e0 | 73 70 61 6e 3e 28 63 6f 6e 64 69 74 69 6f 6e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | span>(condition:.<span.class="to |
| 5f900 | 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 | k-type">bool</span>).<span.class |
| 5f920 | 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 |
| 5f940 | 70 61 6e 20 63 6c 61 73 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>. |
| 5f960 | 72 65 73 75 6c 74 20 3d 20 6d 61 78 28 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | result.=.max(.........<span.clas |
| 5f980 | 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) |
| 5f9a0 | 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 |
| 5f9c0 | 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 |
| 5f9e0 | 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</ |
| 5fa00 | 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | span>,.........<span.class="tok- |
| 5fa20 | 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 20 20 20 20 3c 73 70 | number">1234</span>,.........<sp |
| 5fa40 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 36 37 38 3c 2f 73 70 61 6e | an.class="tok-number">5678</span |
| 5fa60 | 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 | >);.}</code></pre><pre><code.cla |
| 5fa80 | 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 3c | ss="shell">$.zig.test.test.zig.< |
| 5faa0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 | span.class="t0_1">./docgen_tmp/t |
| 5fac0 | 65 73 74 2e 7a 69 67 3a 39 3a 39 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | est.zig:9:9:.</span><span.class= |
| 5fae0 | 22 74 33 31 5f 31 22 3e 65 72 72 6f 72 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 | "t31_1">error:.</span><span.clas |
| 5fb00 | 73 3d 22 74 30 5f 31 22 3e 76 61 6c 75 65 73 20 6f 66 20 74 79 70 65 20 27 74 79 70 65 27 20 6d | s="t0_1">values.of.type.'type'.m |
| 5fb20 | 75 73 74 20 62 65 20 63 6f 6d 70 74 69 6d 65 20 6b 6e 6f 77 6e 3c 2f 73 70 61 6e 3e 0a 20 20 20 | ust.be.comptime.known</span>.... |
| 5fb40 | 20 20 20 20 20 69 66 20 28 63 6f 6e 64 69 74 69 6f 6e 29 20 66 33 32 20 65 6c 73 65 20 75 36 34 | .....if.(condition).f32.else.u64 |
| 5fb60 | 2c 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c | ,.........<span.class="t32_1">^< |
| 5fb80 | 2f 73 70 61 6e 3e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a | /span>.</code></pre>........<p>. |
| 5fba0 | 20 20 20 20 20 20 54 68 69 73 20 69 73 20 61 6e 20 65 72 72 6f 72 20 62 65 63 61 75 73 65 20 74 | ......This.is.an.error.because.t |
| 5fbc0 | 68 65 20 70 72 6f 67 72 61 6d 6d 65 72 20 61 74 74 65 6d 70 74 65 64 20 74 6f 20 70 61 73 73 20 | he.programmer.attempted.to.pass. |
| 5fbe0 | 61 20 76 61 6c 75 65 20 6f 6e 6c 79 20 6b 6e 6f 77 6e 20 61 74 20 72 75 6e 2d 74 69 6d 65 0a 20 | a.value.only.known.at.run-time.. |
| 5fc00 | 20 20 20 20 20 74 6f 20 61 20 66 75 6e 63 74 69 6f 6e 20 77 68 69 63 68 20 65 78 70 65 63 74 73 | .....to.a.function.which.expects |
| 5fc20 | 20 61 20 76 61 6c 75 65 20 6b 6e 6f 77 6e 20 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 2e 0a | .a.value.known.at.compile-time.. |
| 5fc40 | 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 6e 6f 74 68 | ......</p>.......<p>.......Anoth |
| 5fc60 | 65 72 20 77 61 79 20 74 6f 20 67 65 74 20 61 6e 20 65 72 72 6f 72 20 69 73 20 69 66 20 77 65 20 | er.way.to.get.an.error.is.if.we. |
| 5fc80 | 70 61 73 73 20 61 20 74 79 70 65 20 74 68 61 74 20 76 69 6f 6c 61 74 65 73 20 74 68 65 20 74 79 | pass.a.type.that.violates.the.ty |
| 5fca0 | 70 65 20 63 68 65 63 6b 65 72 20 77 68 65 6e 20 74 68 65 0a 20 20 20 20 20 20 66 75 6e 63 74 69 | pe.checker.when.the.......functi |
| 5fcc0 | 6f 6e 20 69 73 20 61 6e 61 6c 79 7a 65 64 2e 20 54 68 69 73 20 69 73 20 77 68 61 74 20 69 74 20 | on.is.analyzed..This.is.what.it. |
| 5fce0 | 6d 65 61 6e 73 20 74 6f 20 68 61 76 65 20 3c 65 6d 3e 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 64 | means.to.have.<em>compile-time.d |
| 5fd00 | 75 63 6b 20 74 79 70 69 6e 67 3c 2f 65 6d 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 | uck.typing</em>........</p>..... |
| 5fd20 | 20 20 3c 70 3e 0a 20 20 20 20 20 20 46 6f 72 20 65 78 61 6d 70 6c 65 3a 0a 20 20 20 20 20 20 3c | ..<p>.......For.example:.......< |
| 5fd40 | 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a | /p>.......<p.class="file">test.z |
| 5fd60 | 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 | ig</p><pre><code.class="zig"><sp |
| 5fd80 | 61 6e 20 63 6c 61 73 73 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 |
| 5fda0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 6d 61 78 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 | n.class="tok-fn">max</span>(<spa |
| 5fdc0 | 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> |
| 5fde0 | 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< |
| 5fe00 | 2f 73 70 61 6e 3e 2c 20 61 3a 20 54 2c 20 62 3a 20 54 29 20 54 20 7b 0a 20 20 20 20 3c 73 70 61 | /span>,.a:.T,.b:.T).T.{.....<spa |
| 5fe20 | 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>.< |
| 5fe40 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 61 | span.class="tok-kw">if</span>.(a |
| 5fe60 | 20 26 67 74 3b 20 62 29 20 61 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | .>.b).a.<span.class="tok-kw"> |
| 5fe80 | 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 62 3b 0a 7d 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | else</span>.b;.}.<span.class="to |
| 5fea0 | 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 |
| 5fec0 | 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 6f | ok-str">"try.to.compare.boo |
| 5fee0 | 6c 73 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 5f 20 3d 20 6d 61 78 28 3c 73 | ls"</span>.{....._.=.max(<s |
| 5ff00 | 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> |
| 5ff20 | 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 | ,.<span.class="tok-null">true</s |
| 5ff40 | 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 6c | pan>,.<span.class="tok-null">fal |
| 5ff60 | 73 65 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c | se</span>);.}</code></pre><pre>< |
| 5ff80 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 | code.class="shell">$.zig.test.te |
| 5ffa0 | 73 74 2e 7a 69 67 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 | st.zig.<span.class="t0_1">./docg |
| 5ffc0 | 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 32 3a 31 38 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 | en_tmp/test.zig:2:18:.</span><sp |
| 5ffe0 | 61 6e 20 63 6c 61 73 73 3d 22 74 33 31 5f 31 22 3e 65 72 72 6f 72 3a 20 3c 2f 73 70 61 6e 3e 3c | an.class="t31_1">error:.</span>< |
| 60000 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 6f 70 65 72 61 74 6f 72 20 6e 6f 74 20 61 | span.class="t0_1">operator.not.a |
| 60020 | 6c 6c 6f 77 65 64 20 66 6f 72 20 74 79 70 65 20 27 62 6f 6f 6c 27 3c 2f 73 70 61 6e 3e 0a 20 20 | llowed.for.type.'bool'</span>... |
| 60040 | 20 20 72 65 74 75 72 6e 20 69 66 20 28 61 20 26 67 74 3b 20 62 29 20 61 20 65 6c 73 65 20 62 3b | ..return.if.(a.>.b).a.else.b; |
| 60060 | 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 74 | ..................<span.class="t |
| 60080 | 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 | 32_1">^</span>.<span.class="t0_1 |
| 600a0 | 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 35 3a 31 32 3a 20 3c 2f | ">./docgen_tmp/test.zig:5:12:.</ |
| 600c0 | 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 36 5f 31 22 3e 6e 6f 74 65 3a 20 3c | span><span.class="t36_1">note:.< |
| 600e0 | 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 63 61 6c 6c 65 64 20 | /span><span.class="t0_1">called. |
| 60100 | 66 72 6f 6d 20 68 65 72 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 5f 20 3d 20 6d 61 78 28 62 6f 6f | from.here</span>....._.=.max(boo |
| 60120 | 6c 2c 20 74 72 75 65 2c 20 66 61 6c 73 65 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 | l,.true,.false);............<spa |
| 60140 | 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 | n.class="t32_1">^</span>.<span.c |
| 60160 | 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 | lass="t0_1">./docgen_tmp/test.zi |
| 60180 | 67 3a 34 3a 32 39 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 36 5f | g:4:29:.</span><span.class="t36_ |
| 601a0 | 31 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f | 1">note:.</span><span.class="t0_ |
| 601c0 | 31 22 3e 63 61 6c 6c 65 64 20 66 72 6f 6d 20 68 65 72 65 3c 2f 73 70 61 6e 3e 0a 74 65 73 74 20 | 1">called.from.here</span>.test. |
| 601e0 | 26 71 75 6f 74 3b 74 72 79 20 74 6f 20 63 6f 6d 70 61 72 65 20 62 6f 6f 6c 73 26 71 75 6f 74 3b | "try.to.compare.bools" |
| 60200 | 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 3c | .{.............................< |
| 60220 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 2f 63 6f | span.class="t32_1">^</span>.</co |
| 60240 | 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 4f 6e 20 74 68 | de></pre>........<p>.......On.th |
| 60260 | 65 20 66 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 | e.flip.side,.inside.the.function |
| 60280 | 20 64 65 66 69 6e 69 74 69 6f 6e 20 77 69 74 68 20 74 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 | .definition.with.the.<code.class |
| 602a0 | 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 | ="zig"><span.class="tok-kw">comp |
| 602c0 | 74 69 6d 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 70 61 72 61 6d 65 74 65 72 2c 20 74 68 | time</span></code>.parameter,.th |
| 602e0 | 65 0a 20 20 20 20 20 20 76 61 6c 75 65 20 69 73 20 6b 6e 6f 77 6e 20 61 74 20 63 6f 6d 70 69 6c | e.......value.is.known.at.compil |
| 60300 | 65 2d 74 69 6d 65 2e 20 54 68 69 73 20 6d 65 61 6e 73 20 74 68 61 74 20 77 65 20 61 63 74 75 61 | e-time..This.means.that.we.actua |
| 60320 | 6c 6c 79 20 63 6f 75 6c 64 20 6d 61 6b 65 20 74 68 69 73 20 77 6f 72 6b 20 66 6f 72 20 74 68 65 | lly.could.make.this.work.for.the |
| 60340 | 20 62 6f 6f 6c 20 74 79 70 65 0a 20 20 20 20 20 20 69 66 20 77 65 20 77 61 6e 74 65 64 20 74 6f | .bool.type.......if.we.wanted.to |
| 60360 | 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c | :.......</p>.......<p.class="fil |
| 60380 | 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d | e">test.zig</p><pre><code.class= |
| 603a0 | 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 | "zig"><span.class="tok-kw">fn</s |
| 603c0 | 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 78 3c 2f 73 | pan>.<span.class="tok-fn">max</s |
| 603e0 | 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 |
| 60400 | 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 |
| 60420 | 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 61 3a 20 54 2c 20 62 3a 20 54 29 20 54 20 7b | pe">type</span>,.a:.T,.b:.T).T.{ |
| 60440 | 0a 20 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 |
| 60460 | 61 6e 3e 20 28 54 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 | an>.(T.==.<span.class="tok-type" |
| 60480 | 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c | >bool</span>).{.........<span.cl |
| 604a0 | 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 70 | ass="tok-kw">return</span>.a.<sp |
| 604c0 | 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 20 | an.class="tok-kw">or</span>.b;.. |
| 604e0 | 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</ |
| 60500 | 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 | span>.<span.class="tok-kw">if</s |
| 60520 | 70 61 6e 3e 20 28 61 20 26 67 74 3b 20 62 29 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 | pan>.(a.>.b).{.........<span. |
| 60540 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 61 3b 0a | class="tok-kw">return</span>.a;. |
| 60560 | 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< |
| 60580 | 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | /span>.{.........<span.class="to |
| 605a0 | 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 62 3b 0a 20 20 20 20 7d 0a 7d 0a 3c | k-kw">return</span>.b;.....}.}.< |
| 605c0 | 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>. |
| 605e0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 74 72 79 20 | <span.class="tok-str">"try. |
| 60600 | 74 6f 20 63 6f 6d 70 61 72 65 20 62 6f 6f 6c 73 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a | to.compare.bools"</span>.{. |
| 60620 | 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 69 | ....<span.class="tok-builtin">@i |
| 60640 | 6d 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 |
| 60660 | 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 |
| 60680 | 6e 67 2e 65 78 70 65 63 74 28 6d 61 78 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | ng.expect(max(<span.class="tok-t |
| 606a0 | 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ype">bool</span>,.<span.class="t |
| 606c0 | 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 | ok-null">false</span>,.<span.cla |
| 606e0 | 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 3d 3d 20 3c 73 | ss="tok-null">true</span>).==.<s |
| 60700 | 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> |
| 60720 | 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 | );.}</code></pre><pre><code.clas |
| 60740 | 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 31 2f | s="shell">$.zig.test.test.zig.1/ |
| 60760 | 31 20 74 65 73 74 20 26 71 75 6f 74 3b 74 72 79 20 74 6f 20 63 6f 6d 70 61 72 65 20 62 6f 6f 6c | 1.test."try.to.compare.bool |
| 60780 | 73 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 | s"....OK.All.1.tests.passed |
| 607a0 | 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 | ..</code></pre>........<p>...... |
| 607c0 | 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 |
| 607e0 | 6c 79 20 69 6e 6c 69 6e 65 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 | ly.inlines.<code.class="zig"><sp |
| 60800 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 | an.class="tok-kw">if</span></cod |
| 60820 | 65 3e 20 65 78 70 72 65 73 73 69 6f 6e 73 20 77 68 65 6e 20 74 68 65 20 63 6f 6e 64 69 74 69 6f | e>.expressions.when.the.conditio |
| 60840 | 6e 0a 20 20 20 20 20 20 69 73 20 6b 6e 6f 77 6e 20 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 | n.......is.known.at.compile-time |
| 60860 | 2c 20 61 6e 64 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 20 67 75 61 72 61 6e 74 65 65 73 20 74 68 | ,.and.the.compiler.guarantees.th |
| 60880 | 61 74 20 69 74 20 77 69 6c 6c 20 73 6b 69 70 20 61 6e 61 6c 79 73 69 73 20 6f 66 0a 20 20 20 20 | at.it.will.skip.analysis.of..... |
| 608a0 | 20 20 74 68 65 20 62 72 61 6e 63 68 20 6e 6f 74 20 74 61 6b 65 6e 2e 0a 20 20 20 20 20 20 3c 2f | ..the.branch.not.taken........</ |
| 608c0 | 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 6d 65 61 6e 73 20 74 68 | p>.......<p>.......This.means.th |
| 608e0 | 61 74 20 74 68 65 20 61 63 74 75 61 6c 20 66 75 6e 63 74 69 6f 6e 20 67 65 6e 65 72 61 74 65 64 | at.the.actual.function.generated |
| 60900 | 20 66 6f 72 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 6d 61 78 3c 2f 63 6f 64 65 | .for.<code.class="zig">max</code |
| 60920 | 3e 20 69 6e 20 74 68 69 73 20 73 69 74 75 61 74 69 6f 6e 20 6c 6f 6f 6b 73 20 6c 69 6b 65 0a 20 | >.in.this.situation.looks.like.. |
| 60940 | 20 20 20 20 20 74 68 69 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 72 65 | .....this:.......</p>.......<pre |
| 60960 | 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ><code.class="zig"><span.class=" |
| 60980 | 74 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 |
| 609a0 | 6f 6b 2d 66 6e 22 3e 6d 61 78 3c 2f 73 70 61 6e 3e 28 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ok-fn">max</span>(a:.<span.class |
| 609c0 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 2c 20 62 3a 20 3c 73 70 61 | ="tok-type">bool</span>,.b:.<spa |
| 609e0 | 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 20 | n.class="tok-type">bool</span>). |
| 60a00 | 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 |
| 60a20 | 6e 3e 20 7b 0a 20 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 |
| 60a40 | 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 2d 6b | turn</span>.a.<span.class="tok-k |
| 60a60 | 77 22 3e 6f 72 3c 2f 73 70 61 6e 3e 20 62 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 | w">or</span>.b;.}</code></pre>.. |
| 60a80 | 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 |
| 60aa0 | 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 |
| 60ac0 | 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 |
| 60ae0 | 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 |
| 60b00 | 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 |
| 60b20 | 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>.... |
| 60b40 | 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.< |
| 60b60 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | code.class="zig"><span.class="to |
| 60b80 | 6b 2d 6b 77 22 3e 73 77 69 74 63 68 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 65 78 70 72 65 | k-kw">switch</span></code>.expre |
| 60ba0 | 73 73 69 6f 6e 73 20 2d 20 74 68 65 79 20 61 72 65 20 69 6d 70 6c 69 63 69 74 6c 79 20 69 6e 6c | ssions.-.they.are.implicitly.inl |
| 60bc0 | 69 6e 65 64 0a 20 20 20 20 20 20 77 68 65 6e 20 74 68 65 20 74 61 72 67 65 74 20 65 78 70 72 65 | ined.......when.the.target.expre |
| 60be0 | 73 73 69 6f 6e 20 69 73 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 6b 6e 6f 77 6e 2e 0a 20 20 20 | ssion.is.compile-time.known..... |
| 60c00 | 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 43 6f 6d | ...</p>..............<h3.id="Com |
| 60c20 | 70 69 6c 65 2d 54 69 6d 65 2d 56 61 72 69 61 62 6c 65 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 | pile-Time-Variables"><a.href="#t |
| 60c40 | 6f 63 2d 43 6f 6d 70 69 6c 65 2d 54 69 6d 65 2d 56 61 72 69 61 62 6c 65 73 22 3e 43 6f 6d 70 69 | oc-Compile-Time-Variables">Compi |
| 60c60 | 6c 65 2d 54 69 6d 65 20 56 61 72 69 61 62 6c 65 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 | le-Time.Variables</a>.<a.class=" |
| 60c80 | 68 64 72 22 20 68 72 65 66 3d 22 23 43 6f 6d 70 69 6c 65 2d 54 69 6d 65 2d 56 61 72 69 61 62 6c | hdr".href="#Compile-Time-Variabl |
| 60ca0 | 65 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 | es">..</a></h3>........<p>...... |
| 60cc0 | 20 49 6e 20 5a 69 67 2c 20 74 68 65 20 70 72 6f 67 72 61 6d 6d 65 72 20 63 61 6e 20 6c 61 62 65 | .In.Zig,.the.programmer.can.labe |
| 60ce0 | 6c 20 76 61 72 69 61 62 6c 65 73 20 61 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | l.variables.as.<code.class="zig" |
| 60d00 | 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</ |
| 60d20 | 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 20 54 68 69 73 20 67 75 61 72 61 6e 74 65 65 73 20 74 6f | span></code>..This.guarantees.to |
| 60d40 | 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 0a 20 20 20 20 20 20 74 68 61 74 20 65 76 65 72 79 20 6c | .the.compiler.......that.every.l |
| 60d60 | 6f 61 64 20 61 6e 64 20 73 74 6f 72 65 20 6f 66 20 74 68 65 20 76 61 72 69 61 62 6c 65 20 69 73 | oad.and.store.of.the.variable.is |
| 60d80 | 20 70 65 72 66 6f 72 6d 65 64 20 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 2e 20 41 6e 79 20 | .performed.at.compile-time..Any. |
| 60da0 | 76 69 6f 6c 61 74 69 6f 6e 20 6f 66 20 74 68 69 73 20 72 65 73 75 6c 74 73 20 69 6e 20 61 0a 20 | violation.of.this.results.in.a.. |
| 60dc0 | 20 20 20 20 20 63 6f 6d 70 69 6c 65 20 65 72 72 6f 72 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 | .....compile.error........</p>.. |
| 60de0 | 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 63 6f 6d 62 69 6e 65 64 20 77 69 74 | .....<p>.......This.combined.wit |
| 60e00 | 68 20 74 68 65 20 66 61 63 74 20 74 68 61 74 20 77 65 20 63 61 6e 20 3c 63 6f 64 65 20 63 6c 61 | h.the.fact.that.we.can.<code.cla |
| 60e20 | 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 6e | ss="zig"><span.class="tok-kw">in |
| 60e40 | 6c 69 6e 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6c 6f 6f 70 73 20 61 6c 6c 6f 77 73 20 | line</span></code>.loops.allows. |
| 60e60 | 75 73 20 74 6f 20 77 72 69 74 65 0a 20 20 20 20 20 20 61 20 66 75 6e 63 74 69 6f 6e 20 77 68 69 | us.to.write.......a.function.whi |
| 60e80 | 63 68 20 69 73 20 70 61 72 74 69 61 6c 6c 79 20 65 76 61 6c 75 61 74 65 64 20 61 74 20 63 6f 6d | ch.is.partially.evaluated.at.com |
| 60ea0 | 70 69 6c 65 2d 74 69 6d 65 20 61 6e 64 20 70 61 72 74 69 61 6c 6c 79 20 61 74 20 72 75 6e 2d 74 | pile-time.and.partially.at.run-t |
| 60ec0 | 69 6d 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 | ime........</p>.......<p>....... |
| 60ee0 | 46 6f 72 20 65 78 61 6d 70 6c 65 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 | For.example:.......</p>.......<p |
| 60f00 | 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 63 6f 6d 70 74 69 6d 65 5f 76 61 72 73 2e 7a 69 67 3c | .class="file">comptime_vars.zig< |
| 60f20 | 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 | /p><pre><code.class="zig"><span. |
| 60f40 | 63 6c 61 73 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 |
| 60f60 | 63 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 | ct.=.<span.class="tok-builtin">@ |
| 60f80 | 69 6d 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 |
| 60fa0 | 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 74 65 73 74 | tr">"std"</span>).test |
| 60fc0 | 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 |
| 60fe0 | 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 43 6d 64 46 6e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 | ">const</span>.CmdFn.=.<span.cla |
| 61000 | 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>.{..... |
| 61020 | 6e 61 6d 65 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e | name:.[]<span.class="tok-kw">con |
| 61040 | 73 74 3c 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" |
| 61060 | 3e 75 38 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 66 75 6e 63 3a 20 3c 73 70 61 6e 20 63 6c 61 73 | >u8</span>,.....func:.<span.clas |
| 61080 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 | s="tok-kw">fn</span>(<span.class |
| 610a0 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c | ="tok-type">i32</span>).<span.cl |
| 610c0 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 2c 0a 7d 3b 0a 0a 3c | ass="tok-type">i32</span>,.};..< |
| 610e0 | 73 70 61 6e 20 63 6c 61 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> |
| 61100 | 20 63 6d 64 5f 66 6e 73 20 3d 20 5b 5f 5d 43 6d 64 46 6e 7b 0a 20 20 20 20 43 6d 64 46 6e 20 7b | .cmd_fns.=.[_]CmdFn{.....CmdFn.{ |
| 61120 | 2e 6e 61 6d 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 | .name.=.<span.class="tok-str">&q |
| 61140 | 75 6f 74 3b 6f 6e 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 66 75 6e 63 20 3d 20 6f 6e | uot;one"</span>,..func.=.on |
| 61160 | 65 7d 2c 0a 20 20 20 20 43 6d 64 46 6e 20 7b 2e 6e 61 6d 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 | e},.....CmdFn.{.name.=.<span.cla |
| 61180 | 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 74 77 6f 26 71 75 6f 74 3b 3c 2f 73 70 | ss="tok-str">"two"</sp |
| 611a0 | 61 6e 3e 2c 20 2e 66 75 6e 63 20 3d 20 74 77 6f 7d 2c 0a 20 20 20 20 43 6d 64 46 6e 20 7b 2e 6e | an>,..func.=.two},.....CmdFn.{.n |
| 611c0 | 61 6d 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f | ame.=.<span.class="tok-str">&quo |
| 611e0 | 74 3b 74 68 72 65 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 66 75 6e 63 20 3d 20 74 68 | t;three"</span>,..func.=.th |
| 61200 | 72 65 65 7d 2c 0a 7d 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e | ree},.};.<span.class="tok-kw">fn |
| 61220 | 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 6f 6e 65 | </span>.<span.class="tok-fn">one |
| 61240 | 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- |
| 61260 | 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 |
| 61280 | 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 7b 20 3c 73 70 61 6e 20 63 6c 61 73 | ok-type">i32</span>.{.<span.clas |
| 612a0 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 76 61 6c 75 65 20 2b | s="tok-kw">return</span>.value.+ |
| 612c0 | 20 3c 73 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 |
| 612e0 | 6e 3e 3b 20 7d 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 | n>;.}.<span.class="tok-kw">fn</s |
| 61300 | 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 74 77 6f 3c 2f 73 | pan>.<span.class="tok-fn">two</s |
| 61320 | 70 61 6e 3e 28 76 61 6c 75 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | pan>(value:.<span.class="tok-typ |
| 61340 | 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | e">i32</span>).<span.class="tok- |
| 61360 | 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 7b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | type">i32</span>.{.<span.class=" |
| 61380 | 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 73 | tok-kw">return</span>.value.+.<s |
| 613a0 | 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>; |
| 613c0 | 20 7d 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e | .}.<span.class="tok-kw">fn</span |
| 613e0 | 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 74 68 72 65 65 3c 2f 73 70 | >.<span.class="tok-fn">three</sp |
| 61400 | 61 6e 3e 28 76 61 6c 75 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | an>(value:.<span.class="tok-type |
| 61420 | 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 |
| 61440 | 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 7b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ype">i32</span>.{.<span.class="t |
| 61460 | 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 73 70 | ok-kw">return</span>.value.+.<sp |
| 61480 | 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 20 | an.class="tok-number">3</span>;. |
| 614a0 | 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 |
| 614c0 | 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 6e | >.<span.class="tok-fn">performFn |
| 614e0 | 3c 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 |
| 61500 | 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 6e 20 | ptime</span>.prefix_char:.<span. |
| 61520 | 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 61 72 | class="tok-type">u8</span>,.star |
| 61540 | 74 5f 76 61 6c 75 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | t_value:.<span.class="tok-type"> |
| 61560 | 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 |
| 61580 | 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= |
| 615a0 | 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 72 65 73 75 6c 74 3a 20 3c 73 70 61 | "tok-kw">var</span>.result:.<spa |
| 615c0 | 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>.=. |
| 615e0 | 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 74 6f | start_value;.....<span.class="to |
| 61600 | 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 | k-kw">comptime</span>.<span.clas |
| 61620 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 69 20 3d 20 3c 73 70 61 6e 20 | s="tok-kw">var</span>.i.=.<span. |
| 61640 | 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>;.... |
| 61660 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 6e 6c 69 6e 65 3c 2f 73 70 | .<span.class="tok-kw">inline</sp |
| 61680 | 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 77 68 69 6c 65 3c 2f | an>.<span.class="tok-kw">while</ |
| 616a0 | 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 69 20 | span>.(i.<.cmd_fns.len).:.(i. |
| 616c0 | 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 |
| 616e0 | 70 61 6e 3e 29 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | pan>).{.........<span.class="tok |
| 61700 | 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 65 5b | -kw">if</span>.(cmd_fns[i].name[ |
| 61720 | 3c 73 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 |
| 61740 | 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 20 20 | >].==.prefix_char).{............ |
| 61760 | 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 6c 74 | .result.=.cmd_fns[i].func(result |
| 61780 | 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 6c 61 | );.........}.....}.....<span.cla |
| 617a0 | 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 6c 74 | ss="tok-kw">return</span>.result |
| 617c0 | 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</ |
| 617e0 | 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 |
| 61800 | 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 20 20 | t;perform.fn"</span>.{..... |
| 61820 | 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 74 6f | expect(performFn(<span.class="to |
| 61840 | 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 3d 22 | k-str">'t'</span>,.<span.class=" |
| 61860 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 3c 73 70 61 6e 20 63 | tok-number">1</span>).==.<span.c |
| 61880 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 36 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 | lass="tok-number">6</span>);.... |
| 618a0 | 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 74 | .expect(performFn(<span.class="t |
| 618c0 | 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= |
| 618e0 | 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 6e 20 | "tok-number">0</span>).==.<span. |
| 61900 | 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 20 | class="tok-number">1</span>);... |
| 61920 | 20 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=" |
| 61940 | 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 73 73 | tok-str">'w'</span>,.<span.class |
| 61960 | 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 70 61 | ="tok-number">99</span>).==.<spa |
| 61980 | 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 29 3b | n.class="tok-number">99</span>); |
| 619a0 | 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d | .}</code></pre><pre><code.class= |
| 619c0 | 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 63 6f 6d 70 74 69 6d 65 5f 76 61 72 73 | "shell">$.zig.test.comptime_vars |
| 619e0 | 2e 7a 69 67 0a 31 2f 31 20 74 65 73 74 20 26 71 75 6f 74 3b 70 65 72 66 6f 72 6d 20 66 6e 26 71 | .zig.1/1.test."perform.fn&q |
| 61a00 | 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c | uot;....OK.All.1.tests.passed..< |
| 61a20 | 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 | /code></pre>........<p>.......Th |
| 61a40 | 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 |
| 61a60 | 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 |
| 61a80 | 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;.... |
| 61aa0 | 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. |
| 61ac0 | 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 |
| 61ae0 | 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...... |
| 61b00 | 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 |
| 61b20 | 2c 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | ,.the.function.<code.class="zig" |
| 61b40 | 3e 70 65 72 66 6f 72 6d 46 6e 3c 2f 63 6f 64 65 3e 20 69 73 20 67 65 6e 65 72 61 74 65 64 20 74 | >performFn</code>.is.generated.t |
| 61b60 | 68 72 65 65 20 64 69 66 66 65 72 65 6e 74 20 74 69 6d 65 73 2c 0a 20 20 20 20 20 20 20 20 20 20 | hree.different.times,........... |
| 61b80 | 66 6f 72 20 74 68 65 20 64 69 66 66 65 72 65 6e 74 20 76 61 6c 75 65 73 20 6f 66 20 3c 63 6f 64 | for.the.different.values.of.<cod |
| 61ba0 | 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 70 72 65 66 69 78 5f 63 68 61 72 3c 2f 63 6f 64 65 3e | e.class="zig">prefix_char</code> |
| 61bc0 | 20 70 72 6f 76 69 64 65 64 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 72 65 | .provided:.......</p>.......<pre |
| 61be0 | 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ><code.class="zig"><span.class=" |
| 61c00 | 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 3a 3c 2f | tok-comment">//.From.the.line:</ |
| 61c20 | 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"> |
| 61c40 | 2f 2f 20 65 78 70 65 63 74 28 70 65 72 66 6f 72 6d 46 6e 28 27 74 27 2c 20 31 29 20 3d 3d 20 36 | //.expect(performFn('t',.1).==.6 |
| 61c60 | 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 22 3e 66 | );</span>.<span.class="tok-kw">f |
| 61c80 | 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 70 65 | n</span>.<span.class="tok-fn">pe |
| 61ca0 | 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 73 70 61 | rformFn</span>(start_value:.<spa |
| 61cc0 | 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>).< |
| 61ce0 | 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> |
| 61d00 | 20 7b 0a 20 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< |
| 61d20 | 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 6f 6b 2d | /span>.result:.<span.class="tok- |
| 61d40 | 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 65 3b 0a | type">i32</span>.=.start_value;. |
| 61d60 | 20 20 20 20 72 65 73 75 6c 74 20 3d 20 74 77 6f 28 72 65 73 75 6c 74 29 3b 0a 20 20 20 20 72 65 | ....result.=.two(result);.....re |
| 61d80 | 73 75 6c 74 20 3d 20 74 68 72 65 65 28 72 65 73 75 6c 74 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 | sult.=.three(result);.....<span. |
| 61da0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 72 65 73 | class="tok-kw">return</span>.res |
| 61dc0 | 75 6c 74 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c | ult;.}</code></pre>.......<pre>< |
| 61de0 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | code.class="zig"><span.class="to |
| 61e00 | 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 3a 3c 2f 73 70 | k-comment">//.From.the.line:</sp |
| 61e20 | 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">// |
| 61e40 | 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 3d 20 31 29 3b | .expect(performFn('o',.0).==.1); |
| 61e60 | 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c | </span>.<span.class="tok-kw">fn< |
| 61e80 | 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 70 65 72 66 | /span>.<span.class="tok-fn">perf |
| 61ea0 | 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 73 70 61 6e 20 | ormFn</span>(start_value:.<span. |
| 61ec0 | 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 |
| 61ee0 | 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>.{ |
| 61f00 | 0a 20 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 |
| 61f20 | 70 61 6e 3e 20 72 65 73 75 6c 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | pan>.result:.<span.class="tok-ty |
| 61f40 | 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 65 3b 0a 20 20 | pe">i32</span>.=.start_value;... |
| 61f60 | 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 20 3c 73 70 61 | ..result.=.one(result);.....<spa |
| 61f80 | 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 |
| 61fa0 | 65 73 75 6c 74 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 72 65 | esult;.}</code></pre>.......<pre |
| 61fc0 | 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ><code.class="zig"><span.class=" |
| 61fe0 | 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 3a 3c 2f | tok-comment">//.From.the.line:</ |
| 62000 | 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"> |
| 62020 | 2f 2f 20 65 78 70 65 63 74 28 70 65 72 66 6f 72 6d 46 6e 28 27 77 27 2c 20 39 39 29 20 3d 3d 20 | //.expect(performFn('w',.99).==. |
| 62040 | 39 39 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 22 | 99);</span>.<span.class="tok-kw" |
| 62060 | 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"> |
| 62080 | 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 73 | performFn</span>(start_value:.<s |
| 620a0 | 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>) |
| 620c0 | 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 |
| 620e0 | 6e 3e 20 7b 0a 20 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 |
| 62100 | 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 6f | r</span>.result:.<span.class="to |
| 62120 | 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 65 | k-type">i32</span>.=.start_value |
| 62140 | 3b 0a 20 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 |
| 62160 | 6e 3c 2f 73 70 61 6e 3e 20 72 65 73 75 6c 74 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a | n</span>.result;.}</code></pre>. |
| 62180 | 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 4e 6f 74 65 20 74 68 61 74 20 74 68 69 73 20 68 | ......<p>.......Note.that.this.h |
| 621a0 | 61 70 70 65 6e 73 20 65 76 65 6e 20 69 6e 20 61 20 64 65 62 75 67 20 62 75 69 6c 64 3b 20 69 6e | appens.even.in.a.debug.build;.in |
| 621c0 | 20 61 20 72 65 6c 65 61 73 65 20 62 75 69 6c 64 20 74 68 65 73 65 20 67 65 6e 65 72 61 74 65 64 | .a.release.build.these.generated |
| 621e0 | 20 66 75 6e 63 74 69 6f 6e 73 20 73 74 69 6c 6c 0a 20 20 20 20 20 20 70 61 73 73 20 74 68 72 6f | .functions.still.......pass.thro |
| 62200 | 75 67 68 20 72 69 67 6f 72 6f 75 73 20 4c 4c 56 4d 20 6f 70 74 69 6d 69 7a 61 74 69 6f 6e 73 2e | ugh.rigorous.LLVM.optimizations. |
| 62220 | 20 54 68 65 20 69 6d 70 6f 72 74 61 6e 74 20 74 68 69 6e 67 20 74 6f 20 6e 6f 74 65 2c 20 68 6f | .The.important.thing.to.note,.ho |
| 62240 | 77 65 76 65 72 2c 20 69 73 20 6e 6f 74 20 74 68 61 74 20 74 68 69 73 0a 20 20 20 20 20 20 69 73 | wever,.is.not.that.this.......is |
| 62260 | 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 7a 65 64 20 63 | .a.way.to.write.more.optimized.c |
| 62280 | 6f 64 65 2c 20 62 75 74 20 74 68 61 74 20 69 74 20 69 73 20 61 20 77 61 79 20 74 6f 20 6d 61 6b | ode,.but.that.it.is.a.way.to.mak |
| 622a0 | 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> |
| 622c0 | 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,.< |
| 622e0 | 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 |
| 62300 | 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 |
| 62320 | 64 20 61 73 20 64 65 6d 6f 6e 73 74 72 61 74 65 64 0a 20 20 20 20 20 20 6c 61 74 65 72 20 69 6e | d.as.demonstrated.......later.in |
| 62340 | 20 74 68 69 73 20 61 72 74 69 63 6c 65 2c 20 61 6c 6c 6f 77 73 20 65 78 70 72 65 73 73 69 76 65 | .this.article,.allows.expressive |
| 62360 | 6e 65 73 73 20 74 68 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 | ness.that.in.other.languages.req |
| 62380 | 75 69 72 65 73 20 75 73 69 6e 67 20 6d 61 63 72 6f 73 2c 0a 20 20 20 20 20 20 67 65 6e 65 72 61 | uires.using.macros,.......genera |
| 623a0 | 74 65 64 20 63 6f 64 65 2c 20 6f 72 20 61 20 70 72 65 70 72 6f 63 65 73 73 6f 72 20 74 6f 20 61 | ted.code,.or.a.preprocessor.to.a |
| 623c0 | 63 63 6f 6d 70 6c 69 73 68 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 | ccomplish........</p>........... |
| 623e0 | 20 20 20 3c 68 33 20 69 64 3d 22 43 6f 6d 70 69 6c 65 2d 54 69 6d 65 2d 45 78 70 72 65 73 73 69 | ...<h3.id="Compile-Time-Expressi |
| 62400 | 6f 6e 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 43 6f 6d 70 69 6c 65 2d 54 69 6d 65 2d | ons"><a.href="#toc-Compile-Time- |
| 62420 | 45 78 70 72 65 73 73 69 6f 6e 73 22 3e 43 6f 6d 70 69 6c 65 2d 54 69 6d 65 20 45 78 70 72 65 73 | Expressions">Compile-Time.Expres |
| 62440 | 73 69 6f 6e 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 | sions</a>.<a.class="hdr".href="# |
| 62460 | 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 c2 a7 3c 2f 61 3e | Compile-Time-Expressions">..</a> |
| 62480 | 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 6e 20 5a 69 67 2c 20 69 | </h3>........<p>.......In.Zig,.i |
| 624a0 | 74 20 6d 61 74 74 65 72 73 20 77 68 65 74 68 65 72 20 61 20 67 69 76 65 6e 20 65 78 70 72 65 73 | t.matters.whether.a.given.expres |
| 624c0 | 73 69 6f 6e 20 69 73 20 6b 6e 6f 77 6e 20 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 6f 72 | sion.is.known.at.compile-time.or |
| 624e0 | 20 72 75 6e 2d 74 69 6d 65 2e 20 41 20 70 72 6f 67 72 61 6d 6d 65 72 20 63 61 6e 0a 20 20 20 20 | .run-time..A.programmer.can..... |
| 62500 | 20 20 75 73 65 20 61 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 | ..use.a.<code.class="zig"><span. |
| 62520 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 3c 2f | class="tok-kw">comptime</span></ |
| 62540 | 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 6e 74 65 65 20 74 68 | code>.expression.to.guarantee.th |
| 62560 | 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 20 65 76 61 6c 75 61 | at.the.expression.will.be.evalua |
| 62580 | 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 20 20 49 66 20 74 68 | ted.at.compile-time........If.th |
| 625a0 | 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 2c 20 74 68 65 20 63 | is.cannot.be.accomplished,.the.c |
| 625c0 | 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 72 2e 20 46 6f 72 20 | ompiler.will.emit.an.error..For. |
| 625e0 | 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 70 20 63 6c 61 | example:.......</p>.......<p.cla |
| 62600 | 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 | ss="file">test.zig</p><pre><code |
| 62620 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | .class="zig"><span.class="tok-kw |
| 62640 | 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 6f 6b | ">extern</span>.<span.class="tok |
| 62660 | 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- |
| 62680 | 66 6e 22 3e 65 78 69 74 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | fn">exit</span>().<span.class="t |
| 626a0 | 6f 6b 2d 74 79 70 65 22 3e 6e 6f 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 3b 0a 0a 3c 73 70 61 6e | ok-type">noreturn</span>;..<span |
| 626c0 | 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 |
| 626e0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 66 6f 6f 26 71 75 6f 74 | n.class="tok-str">"foo" |
| 62700 | 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- |
| 62720 | 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 65 78 | kw">comptime</span>.{.........ex |
| 62740 | 69 74 28 29 3b 0a 20 20 20 20 7d 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c | it();.....}.}</code></pre><pre>< |
| 62760 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 | code.class="shell">$.zig.test.te |
| 62780 | 73 74 2e 7a 69 67 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 | st.zig.<span.class="t0_1">./docg |
| 627a0 | 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 35 3a 39 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 | en_tmp/test.zig:5:9:.</span><spa |
| 627c0 | 6e 20 63 6c 61 73 73 3d 22 74 33 31 5f 31 22 3e 65 72 72 6f 72 3a 20 3c 2f 73 70 61 6e 3e 3c 73 | n.class="t31_1">error:.</span><s |
| 627e0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 75 6e 61 62 6c 65 20 74 6f 20 65 76 61 6c 75 | pan.class="t0_1">unable.to.evalu |
| 62800 | 61 74 65 20 63 6f 6e 73 74 61 6e 74 20 65 78 70 72 65 73 73 69 6f 6e 3c 2f 73 70 61 6e 3e 0a 20 | ate.constant.expression</span>.. |
| 62820 | 20 20 20 20 20 20 20 65 78 69 74 28 29 3b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | .......exit();.........<span.cla |
| 62840 | 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ss="t32_1">^</span>.<span.class= |
| 62860 | 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 35 3a 31 | "t0_1">./docgen_tmp/test.zig:5:1 |
| 62880 | 33 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 36 5f 31 22 3e 6e 6f | 3:.</span><span.class="t36_1">no |
| 628a0 | 74 65 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 72 65 | te:.</span><span.class="t0_1">re |
| 628c0 | 66 65 72 65 6e 63 65 64 20 68 65 72 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 65 78 69 | ferenced.here</span>.........exi |
| 628e0 | 74 28 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 33 | t();.............<span.class="t3 |
| 62900 | 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 | 2_1">^</span>.</code></pre>..... |
| 62920 | 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 6e | ...<p>.......It.doesn't.make.sen |
| 62940 | 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 6f | se.that.a.program.could.call.<co |
| 62960 | 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 65 78 69 74 28 29 3c 2f 63 6f 64 65 3e 20 28 6f 72 | de.class="zig">exit()</code>.(or |
| 62980 | 20 61 6e 79 20 6f 74 68 65 72 20 65 78 74 65 72 6e 61 6c 20 66 75 6e 63 74 69 6f 6e 29 0a 20 20 | .any.other.external.function)... |
| 629a0 | 20 20 20 20 20 20 20 20 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 2c 20 73 6f 20 74 68 69 73 | ........at.compile-time,.so.this |
| 629c0 | 20 69 73 20 61 20 63 6f 6d 70 69 6c 65 20 65 72 72 6f 72 2e 20 48 6f 77 65 76 65 72 2c 20 61 20 | .is.a.compile.error..However,.a. |
| 629e0 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | <code.class="zig"><span.class="t |
| 62a00 | 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 65 78 | ok-kw">comptime</span></code>.ex |
| 62a20 | 70 72 65 73 73 69 6f 6e 20 64 6f 65 73 20 6d 75 63 68 0a 20 20 20 20 20 20 6d 6f 72 65 20 74 68 | pression.does.much.......more.th |
| 62a40 | 61 6e 20 73 6f 6d 65 74 69 6d 65 73 20 63 61 75 73 65 20 61 20 63 6f 6d 70 69 6c 65 20 65 72 72 | an.sometimes.cause.a.compile.err |
| 62a60 | 6f 72 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 57 | or........</p>.......<p>.......W |
| 62a80 | 69 74 68 69 6e 20 61 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 | ithin.a.<code.class="zig"><span. |
| 62aa0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 3c 2f | class="tok-kw">comptime</span></ |
| 62ac0 | 63 6f 64 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 | code>.expression:.......</p>.... |
| 62ae0 | 20 20 20 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 | ...<ul>...........<li>All.variab |
| 62b00 | 6c 65 73 20 61 72 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 | les.are.<code.class="zig"><span. |
| 62b20 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 3c 2f | class="tok-kw">comptime</span></ |
| 62b40 | 63 6f 64 65 3e 20 76 61 72 69 61 62 6c 65 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 | code>.variables.</li>........... |
| 62b60 | 3c 6c 69 3e 41 6c 6c 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 | <li>All.<code.class="zig"><span. |
| 62b80 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c | class="tok-kw">if</span></code>, |
| 62ba0 | 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | .<code.class="zig"><span.class=" |
| 62bc0 | 74 6f 6b 2d 6b 77 22 3e 77 68 69 6c 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 3c 63 6f | tok-kw">while</span></code>,.<co |
| 62be0 | 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | de.class="zig"><span.class="tok- |
| 62c00 | 6b 77 22 3e 66 6f 72 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 61 6e 64 20 3c 63 6f 64 65 | kw">for</span></code>,.and.<code |
| 62c20 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | .class="zig"><span.class="tok-kw |
| 62c40 | 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 20 | ">switch</span></code>.......... |
| 62c60 | 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 6f | .expressions.are.evaluated.at.co |
| 62c80 | 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 72 | mpile-time,.or.emit.a.compile.er |
| 62ca0 | 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 69 | ror.if.this.is.not.possible.</li |
| 62cc0 | 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 41 6c 6c 20 66 75 6e 63 74 69 6f 6e 20 63 61 6c 6c 73 | >.........<li>All.function.calls |
| 62ce0 | 20 63 61 75 73 65 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 20 74 6f 20 69 6e 74 65 72 70 72 65 74 | .cause.the.compiler.to.interpret |
| 62d00 | 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 2c 20 65 | .the.function.at.compile-time,.e |
| 62d20 | 6d 69 74 74 69 6e 67 20 61 0a 20 20 20 20 20 20 20 20 20 20 63 6f 6d 70 69 6c 65 20 65 72 72 6f | mitting.a...........compile.erro |
| 62d40 | 72 20 69 66 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 74 72 69 65 73 20 74 6f 20 64 6f 20 73 6f | r.if.the.function.tries.to.do.so |
| 62d60 | 6d 65 74 68 69 6e 67 20 74 68 61 74 20 68 61 73 20 67 6c 6f 62 61 6c 20 72 75 6e 2d 74 69 6d 65 | mething.that.has.global.run-time |
| 62d80 | 20 73 69 64 65 20 65 66 66 65 63 74 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a | .side.effects.</li>.......</ul>. |
| 62da0 | 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 6d 65 61 6e 73 20 74 68 61 74 20 | ......<p>.......This.means.that. |
| 62dc0 | 61 20 70 72 6f 67 72 61 6d 6d 65 72 20 63 61 6e 20 63 72 65 61 74 65 20 61 20 66 75 6e 63 74 69 | a.programmer.can.create.a.functi |
| 62de0 | 6f 6e 20 77 68 69 63 68 20 69 73 20 63 61 6c 6c 65 64 20 62 6f 74 68 20 61 74 20 63 6f 6d 70 69 | on.which.is.called.both.at.compi |
| 62e00 | 6c 65 2d 74 69 6d 65 20 61 6e 64 20 72 75 6e 2d 74 69 6d 65 2c 20 77 69 74 68 0a 20 20 20 20 20 | le-time.and.run-time,.with...... |
| 62e20 | 20 6e 6f 20 6d 6f 64 69 66 69 63 61 74 69 6f 6e 20 74 6f 20 74 68 65 20 66 75 6e 63 74 69 6f 6e | .no.modification.to.the.function |
| 62e40 | 20 72 65 71 75 69 72 65 64 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a | .required........</p>.......<p>. |
| 62e60 | 20 20 20 20 20 20 4c 65 74 27 73 20 6c 6f 6f 6b 20 61 74 20 61 6e 20 65 78 61 6d 70 6c 65 3a 0a | ......Let's.look.at.an.example:. |
| 62e80 | 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 | ......</p>.......<p.class="file" |
| 62ea0 | 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a | >test.zig</p><pre><code.class="z |
| 62ec0 | 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f | ig"><span.class="tok-kw">const</ |
| 62ee0 | 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | span>.expect.=.<span.class="tok- |
| 62f00 | 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 |
| 62f20 | 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 |
| 62f40 | 70 61 6e 3e 29 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 | pan>).testing.expect;..<span.cla |
| 62f60 | 73 73 3d 22 74 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 |
| 62f80 | 73 3d 22 74 6f 6b 2d 66 6e 22 3e 66 69 62 6f 6e 61 63 63 69 3c 2f 73 70 61 6e 3e 28 69 6e 64 65 | s="tok-fn">fibonacci</span>(inde |
| 62fa0 | 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 | x:.<span.class="tok-type">u32</s |
| 62fc0 | 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 | pan>).<span.class="tok-type">u32 |
| 62fe0 | 3c 2f 73 70 61 6e 3e 20 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 |
| 63000 | 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 69 6e 64 65 78 20 26 6c 74 3b 20 3c 73 70 61 6e 20 63 | w">if</span>.(index.<.<span.c |
| 63020 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 | lass="tok-number">2</span>).<spa |
| 63040 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 69 | n.class="tok-kw">return</span>.i |
| 63060 | 6e 64 65 78 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 | ndex;.....<span.class="tok-kw">r |
| 63080 | 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 20 3c | eturn</span>.fibonacci(index.-.< |
| 630a0 | 73 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> |
| 630c0 | 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 61 73 | ).+.fibonacci(index.-.<span.clas |
| 630e0 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 | s="tok-number">2</span>);.}..<sp |
| 63100 | 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 |
| 63120 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 66 69 62 6f 6e 61 | pan.class="tok-str">"fibona |
| 63140 | 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 6c 61 | cci"</span>.{.....<span.cla |
| 63160 | 73 73 3d 22 74 6f 6b 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 | ss="tok-comment">//.test.fibonac |
| 63180 | 63 69 20 61 74 20 72 75 6e 2d 74 69 6d 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 65 78 70 65 63 74 | ci.at.run-time</span>.....expect |
| 631a0 | 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 6d 62 | (fibonacci(<span.class="tok-numb |
| 631c0 | 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 74 6f | er">7</span>).==.<span.class="to |
| 631e0 | 6b 2d 6e 75 6d 62 65 72 22 3e 31 33 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e | k-number">13</span>);......<span |
| 63200 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 74 65 73 74 20 66 69 62 | .class="tok-comment">//.test.fib |
| 63220 | 6f 6e 61 63 63 69 20 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 3c 2f 73 70 61 6e 3e 0a 20 20 | onacci.at.compile-time</span>... |
| 63240 | 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c | ..<span.class="tok-kw">comptime< |
| 63260 | 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 65 78 70 65 63 74 28 66 69 62 6f 6e 61 63 63 | /span>.{.........expect(fibonacc |
| 63280 | 69 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 37 3c 2f 73 70 | i(<span.class="tok-number">7</sp |
| 632a0 | 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" |
| 632c0 | 3e 31 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 | >13</span>);.....}.}</code></pre |
| 632e0 | 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 | ><pre><code.class="shell">$.zig. |
| 63300 | 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 31 2f 31 20 74 65 73 74 20 26 71 75 6f 74 3b 66 69 62 | test.test.zig.1/1.test."fib |
| 63320 | 6f 6e 61 63 63 69 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 | onacci"....OK.All.1.tests.p |
| 63340 | 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a | assed..</code></pre>........<p>. |
| 63360 | 20 20 20 20 20 20 49 6d 61 67 69 6e 65 20 69 66 20 77 65 20 68 61 64 20 66 6f 72 67 6f 74 74 65 | ......Imagine.if.we.had.forgotte |
| 63380 | 6e 20 74 68 65 20 62 61 73 65 20 63 61 73 65 20 6f 66 20 74 68 65 20 72 65 63 75 72 73 69 76 65 | n.the.base.case.of.the.recursive |
| 633a0 | 20 66 75 6e 63 74 69 6f 6e 20 61 6e 64 20 74 72 69 65 64 20 74 6f 20 72 75 6e 20 74 68 65 20 74 | .function.and.tried.to.run.the.t |
| 633c0 | 65 73 74 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d | ests:.......</p>.......<p.class= |
| 633e0 | 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c | "file">test.zig</p><pre><code.cl |
| 63400 | 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 | ass="zig"><span.class="tok-kw">c |
| 63420 | 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | onst</span>.expect.=.<span.class |
| 63440 | 3d 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 |
| 63460 | 70 61 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 |
| 63480 | 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 0a 3c 73 70 | ot;</span>).testing.expect;..<sp |
| 634a0 | 61 6e 20 63 6c 61 73 73 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 |
| 634c0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 66 69 62 6f 6e 61 63 63 69 3c 2f 73 70 61 6e | n.class="tok-fn">fibonacci</span |
| 634e0 | 3e 28 69 6e 64 65 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | >(index:.<span.class="tok-type"> |
| 63500 | 75 33 32 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | u32</span>).<span.class="tok-typ |
| 63520 | 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | e">u32</span>.{.....<span.class= |
| 63540 | 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 69 66 20 28 69 6e 64 65 78 20 26 6c 74 3b 20 32 | "tok-comment">//if.(index.<.2 |
| 63560 | 29 20 72 65 74 75 72 6e 20 69 6e 64 65 78 3b 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e | ).return.index;</span>.....<span |
| 63580 | 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 66 69 | .class="tok-kw">return</span>.fi |
| 635a0 | 62 6f 6e 61 63 63 69 28 69 6e 64 65 78 20 2d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | bonacci(index.-.<span.class="tok |
| 635c0 | 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 20 2b 20 66 69 62 6f 6e 61 63 63 69 28 69 | -number">1</span>).+.fibonacci(i |
| 635e0 | 6e 64 65 78 20 2d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e | ndex.-.<span.class="tok-number"> |
| 63600 | 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 6b | 2</span>);.}..<span.class="tok-k |
| 63620 | 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- |
| 63640 | 73 74 72 22 3e 26 71 75 6f 74 3b 66 69 62 6f 6e 61 63 63 69 26 71 75 6f 74 3b 3c 2f 73 70 61 6e | str">"fibonacci"</span |
| 63660 | 3e 20 7b 0a 20 20 20 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 |
| 63680 | 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 65 78 70 65 63 74 28 66 69 | ptime</span>.{.........expect(fi |
| 636a0 | 62 6f 6e 61 63 63 69 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 | bonacci(<span.class="tok-number" |
| 636c0 | 3e 37 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | >7</span>).==.<span.class="tok-n |
| 636e0 | 75 6d 62 65 72 22 3e 31 33 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 7d 0a 7d 3c 2f 63 6f 64 65 | umber">13</span>);.....}.}</code |
| 63700 | 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e | ></pre><pre><code.class="shell"> |
| 63720 | 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | $.zig.test.test.zig.<span.class= |
| 63740 | 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 35 3a 32 | "t0_1">./docgen_tmp/test.zig:5:2 |
| 63760 | 38 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 31 5f 31 22 3e 65 72 | 8:.</span><span.class="t31_1">er |
| 63780 | 72 6f 72 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 6f | ror:.</span><span.class="t0_1">o |
| 637a0 | 70 65 72 61 74 69 6f 6e 20 63 61 75 73 65 64 20 6f 76 65 72 66 6c 6f 77 3c 2f 73 70 61 6e 3e 0a | peration.caused.overflow</span>. |
| 637c0 | 20 20 20 20 72 65 74 75 72 6e 20 66 69 62 6f 6e 61 63 63 69 28 69 6e 64 65 78 20 2d 20 31 29 20 | ....return.fibonacci(index.-.1). |
| 637e0 | 2b 20 66 69 62 6f 6e 61 63 63 69 28 69 6e 64 65 78 20 2d 20 32 29 3b 0a 20 20 20 20 20 20 20 20 | +.fibonacci(index.-.2);......... |
| 63800 | 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=" |
| 63820 | 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f | t32_1">^</span>.<span.class="t0_ |
| 63840 | 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 35 3a 32 31 3a 20 3c | 1">./docgen_tmp/test.zig:5:21:.< |
| 63860 | 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 36 5f 31 22 3e 6e 6f 74 65 3a 20 | /span><span.class="t36_1">note:. |
| 63880 | 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 63 61 6c 6c 65 64 | </span><span.class="t0_1">called |
| 638a0 | 20 66 72 6f 6d 20 68 65 72 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 72 65 74 75 72 6e 20 66 69 62 | .from.here</span>.....return.fib |
| 638c0 | 6f 6e 61 63 63 69 28 69 6e 64 65 78 20 2d 20 31 29 20 2b 20 66 69 62 6f 6e 61 63 63 69 28 69 6e | onacci(index.-.1).+.fibonacci(in |
| 638e0 | 64 65 78 20 2d 20 32 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 | dex.-.2);.....................<s |
| 63900 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e | pan.class="t32_1">^</span>.<span |
| 63920 | 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e | .class="t0_1">./docgen_tmp/test. |
| 63940 | 7a 69 67 3a 35 3a 32 31 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 | zig:5:21:.</span><span.class="t3 |
| 63960 | 36 5f 31 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | 6_1">note:.</span><span.class="t |
| 63980 | 30 5f 31 22 3e 63 61 6c 6c 65 64 20 66 72 6f 6d 20 68 65 72 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 | 0_1">called.from.here</span>.... |
| 639a0 | 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 |
| 639c0 | 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);............ |
| 639e0 | 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f | .........<span.class="t32_1">^</ |
| 63a00 | 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 | span>.<span.class="t0_1">./docge |
| 63a20 | 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 35 3a 32 31 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 | n_tmp/test.zig:5:21:.</span><spa |
| 63a40 | 6e 20 63 6c 61 73 73 3d 22 74 33 36 5f 31 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 | n.class="t36_1">note:.</span><sp |
| 63a60 | 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 63 61 6c 6c 65 64 20 66 72 6f 6d 20 68 65 72 65 | an.class="t0_1">called.from.here |
| 63a80 | 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 72 65 74 75 72 6e 20 66 69 62 6f 6e 61 63 63 69 28 69 6e 64 | </span>.....return.fibonacci(ind |
| 63aa0 | 65 78 20 2d 20 31 29 20 2b 20 66 69 62 6f 6e 61 63 63 69 28 69 6e 64 65 78 20 2d 20 32 29 3b 0a | ex.-.1).+.fibonacci(index.-.2);. |
| 63ac0 | 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= |
| 63ae0 | 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 | "t32_1">^</span>.<span.class="t0 |
| 63b00 | 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 35 3a 32 31 3a 20 | _1">./docgen_tmp/test.zig:5:21:. |
| 63b20 | 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 36 5f 31 22 3e 6e 6f 74 65 3a | </span><span.class="t36_1">note: |
| 63b40 | 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 63 61 6c 6c 65 | .</span><span.class="t0_1">calle |
| 63b60 | 64 20 66 72 6f 6d 20 68 65 72 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 72 65 74 75 72 6e 20 66 69 | d.from.here</span>.....return.fi |
| 63b80 | 62 6f 6e 61 63 63 69 28 69 6e 64 65 78 20 2d 20 31 29 20 2b 20 66 69 62 6f 6e 61 63 63 69 28 69 | bonacci(index.-.1).+.fibonacci(i |
| 63ba0 | 6e 64 65 78 20 2d 20 32 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c | ndex.-.2);.....................< |
| 63bc0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 | span.class="t32_1">^</span>.<spa |
| 63be0 | 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 | n.class="t0_1">./docgen_tmp/test |
| 63c00 | 2e 7a 69 67 3a 35 3a 32 31 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | .zig:5:21:.</span><span.class="t |
| 63c20 | 33 36 5f 31 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | 36_1">note:.</span><span.class=" |
| 63c40 | 74 30 5f 31 22 3e 63 61 6c 6c 65 64 20 66 72 6f 6d 20 68 65 72 65 3c 2f 73 70 61 6e 3e 0a 20 20 | t0_1">called.from.here</span>... |
| 63c60 | 20 20 72 65 74 75 72 6e 20 66 69 62 6f 6e 61 63 63 69 28 69 6e 64 65 78 20 2d 20 31 29 20 2b 20 | ..return.fibonacci(index.-.1).+. |
| 63c80 | 66 69 62 6f 6e 61 63 63 69 28 69 6e 64 65 78 20 2d 20 32 29 3b 0a 20 20 20 20 20 20 20 20 20 20 | fibonacci(index.-.2);........... |
| 63ca0 | 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c | ..........<span.class="t32_1">^< |
| 63cc0 | 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 | /span>.<span.class="t0_1">./docg |
| 63ce0 | 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 35 3a 32 31 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 | en_tmp/test.zig:5:21:.</span><sp |
| 63d00 | 61 6e 20 63 6c 61 73 73 3d 22 74 33 36 5f 31 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e 3e 3c 73 | an.class="t36_1">note:.</span><s |
| 63d20 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 63 61 6c 6c 65 64 20 66 72 6f 6d 20 68 65 72 | pan.class="t0_1">called.from.her |
| 63d40 | 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 72 65 74 75 72 6e 20 66 69 62 6f 6e 61 63 63 69 28 69 6e | e</span>.....return.fibonacci(in |
| 63d60 | 64 65 78 20 2d 20 31 29 20 2b 20 66 69 62 6f 6e 61 63 63 69 28 69 6e 64 65 78 20 2d 20 32 29 3b | dex.-.1).+.fibonacci(index.-.2); |
| 63d80 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | .....................<span.class |
| 63da0 | 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ="t32_1">^</span>.<span.class="t |
| 63dc0 | 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 35 3a 32 31 3a | 0_1">./docgen_tmp/test.zig:5:21: |
| 63de0 | 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 36 5f 31 22 3e 6e 6f 74 65 | .</span><span.class="t36_1">note |
| 63e00 | 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 63 61 6c 6c | :.</span><span.class="t0_1">call |
| 63e20 | 65 64 20 66 72 6f 6d 20 68 65 72 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 72 65 74 75 72 6e 20 66 | ed.from.here</span>.....return.f |
| 63e40 | 69 62 6f 6e 61 63 63 69 28 69 6e 64 65 78 20 2d 20 31 29 20 2b 20 66 69 62 6f 6e 61 63 63 69 28 | ibonacci(index.-.1).+.fibonacci( |
| 63e60 | 69 6e 64 65 78 20 2d 20 32 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | index.-.2);..................... |
| 63e80 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 | <span.class="t32_1">^</span>.<sp |
| 63ea0 | 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 | an.class="t0_1">./docgen_tmp/tes |
| 63ec0 | 74 2e 7a 69 67 3a 31 30 3a 32 35 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | t.zig:10:25:.</span><span.class= |
| 63ee0 | 22 74 33 36 5f 31 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | "t36_1">note:.</span><span.class |
| 63f00 | 3d 22 74 30 5f 31 22 3e 63 61 6c 6c 65 64 20 66 72 6f 6d 20 68 65 72 65 3c 2f 73 70 61 6e 3e 0a | ="t0_1">called.from.here</span>. |
| 63f20 | 20 20 20 20 20 20 20 20 65 78 70 65 63 74 28 66 69 62 6f 6e 61 63 63 69 28 37 29 20 3d 3d 20 31 | ........expect(fibonacci(7).==.1 |
| 63f40 | 33 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 | 3);.........................<spa |
| 63f60 | 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 | n.class="t32_1">^</span>.<span.c |
| 63f80 | 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 | lass="t0_1">./docgen_tmp/test.zi |
| 63fa0 | 67 3a 38 3a 31 38 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 36 5f | g:8:18:.</span><span.class="t36_ |
| 63fc0 | 31 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f | 1">note:.</span><span.class="t0_ |
| 63fe0 | 31 22 3e 63 61 6c 6c 65 64 20 66 72 6f 6d 20 68 65 72 65 3c 2f 73 70 61 6e 3e 0a 74 65 73 74 20 | 1">called.from.here</span>.test. |
| 64000 | 26 71 75 6f 74 3b 66 69 62 6f 6e 61 63 63 69 26 71 75 6f 74 3b 20 7b 0a 20 20 20 20 20 20 20 20 | "fibonacci".{......... |
| 64020 | 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f | .........<span.class="t32_1">^</ |
| 64040 | 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 | span>.<span.class="t0_1">./docge |
| 64060 | 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 35 3a 32 31 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 | n_tmp/test.zig:5:21:.</span><spa |
| 64080 | 6e 20 63 6c 61 73 73 3d 22 74 33 36 5f 31 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 | n.class="t36_1">note:.</span><sp |
| 640a0 | 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 72 65 66 65 72 65 6e 63 65 64 20 68 65 72 65 3c | an.class="t0_1">referenced.here< |
| 640c0 | 2f 73 70 61 6e 3e 0a 20 20 20 20 72 65 74 75 72 6e 20 66 69 62 6f 6e 61 63 63 69 28 69 6e 64 65 | /span>.....return.fibonacci(inde |
| 640e0 | 78 20 2d 20 31 29 20 2b 20 66 69 62 6f 6e 61 63 63 69 28 69 6e 64 65 78 20 2d 20 32 29 3b 0a 20 | x.-.1).+.fibonacci(index.-.2);.. |
| 64100 | 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=" |
| 64120 | 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f | t32_1">^</span>.<span.class="t0_ |
| 64140 | 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 31 30 3a 32 35 3a 20 | 1">./docgen_tmp/test.zig:10:25:. |
| 64160 | 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 36 5f 31 22 3e 6e 6f 74 65 3a | </span><span.class="t36_1">note: |
| 64180 | 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 72 65 66 65 72 | .</span><span.class="t0_1">refer |
| 641a0 | 65 6e 63 65 64 20 68 65 72 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 65 78 70 65 63 74 | enced.here</span>.........expect |
| 641c0 | 28 66 69 62 6f 6e 61 63 63 69 28 37 29 20 3d 3d 20 31 33 29 3b 0a 20 20 20 20 20 20 20 20 20 20 | (fibonacci(7).==.13);........... |
| 641e0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 | ..............<span.class="t32_1 |
| 64200 | 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 | ">^</span>.</code></pre>........ |
| 64220 | 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 20 63 6f 6d 70 69 6c 65 72 20 70 72 6f 64 75 63 65 73 20 | <p>.......The.compiler.produces. |
| 64240 | 61 6e 20 65 72 72 6f 72 20 77 68 69 63 68 20 69 73 20 61 20 73 74 61 63 6b 20 74 72 61 63 65 20 | an.error.which.is.a.stack.trace. |
| 64260 | 66 72 6f 6d 20 74 72 79 69 6e 67 20 74 6f 20 65 76 61 6c 75 61 74 65 20 74 68 65 0a 20 20 20 20 | from.trying.to.evaluate.the..... |
| 64280 | 20 20 66 75 6e 63 74 69 6f 6e 20 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 2e 0a 20 20 20 20 | ..function.at.compile-time...... |
| 642a0 | 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 4c 75 63 6b 69 6c 79 2c 20 | ..</p>.......<p>.......Luckily,. |
| 642c0 | 77 65 20 75 73 65 64 20 61 6e 20 75 6e 73 69 67 6e 65 64 20 69 6e 74 65 67 65 72 2c 20 61 6e 64 | we.used.an.unsigned.integer,.and |
| 642e0 | 20 73 6f 20 77 68 65 6e 20 77 65 20 74 72 69 65 64 20 74 6f 20 73 75 62 74 72 61 63 74 20 31 20 | .so.when.we.tried.to.subtract.1. |
| 64300 | 66 72 6f 6d 20 30 2c 20 69 74 20 74 72 69 67 67 65 72 65 64 0a 20 20 20 20 20 20 75 6e 64 65 66 | from.0,.it.triggered.......undef |
| 64320 | 69 6e 65 64 20 62 65 68 61 76 69 6f 72 2c 20 77 68 69 63 68 20 69 73 20 61 6c 77 61 79 73 20 61 | ined.behavior,.which.is.always.a |
| 64340 | 20 63 6f 6d 70 69 6c 65 20 65 72 72 6f 72 20 69 66 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 20 6b | .compile.error.if.the.compiler.k |
| 64360 | 6e 6f 77 73 20 69 74 20 68 61 70 70 65 6e 65 64 2e 0a 20 20 20 20 20 20 42 75 74 20 77 68 61 74 | nows.it.happened........But.what |
| 64380 | 20 77 6f 75 6c 64 20 68 61 76 65 20 68 61 70 70 65 6e 65 64 20 69 66 20 77 65 20 75 73 65 64 20 | .would.have.happened.if.we.used. |
| 643a0 | 61 20 73 69 67 6e 65 64 20 69 6e 74 65 67 65 72 3f 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 | a.signed.integer?.......</p>.... |
| 643c0 | 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c | ...<p.class="file">test.zig</p>< |
| 643e0 | 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 | pre><code.class="zig"><span.clas |
| 64400 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 20 3d | s="tok-kw">const</span>.expect.= |
| 64420 | 20 3c 73 70 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 |
| 64440 | 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"> |
| 64460 | 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 74 65 73 74 69 6e 67 2e | "std"</span>).testing. |
| 64480 | 65 78 70 65 63 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e | expect;..<span.class="tok-kw">fn |
| 644a0 | 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 66 69 62 | </span>.<span.class="tok-fn">fib |
| 644c0 | 6f 6e 61 63 63 69 3c 2f 73 70 61 6e 3e 28 69 6e 64 65 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 | onacci</span>(index:.<span.class |
| 644e0 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c | ="tok-type">i32</span>).<span.cl |
| 64500 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 | ass="tok-type">i32</span>.{..... |
| 64520 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 69 66 20 28 | <span.class="tok-comment">//if.( |
| 64540 | 69 6e 64 65 78 20 26 6c 74 3b 20 32 29 20 72 65 74 75 72 6e 20 69 6e 64 65 78 3b 3c 2f 73 70 61 | index.<.2).return.index;</spa |
| 64560 | 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 | n>.....<span.class="tok-kw">retu |
| 64580 | 72 6e 3c 2f 73 70 61 6e 3e 20 66 69 62 6f 6e 61 63 63 69 28 69 6e 64 65 78 20 2d 20 3c 73 70 61 | rn</span>.fibonacci(index.-.<spa |
| 645a0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 20 2b | n.class="tok-number">1</span>).+ |
| 645c0 | 20 66 69 62 6f 6e 61 63 63 69 28 69 6e 64 65 78 20 2d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | .fibonacci(index.-.<span.class=" |
| 645e0 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 | tok-number">2</span>);.}..<span. |
| 64600 | 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 |
| 64620 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 66 69 62 6f 6e 61 63 63 69 | .class="tok-str">"fibonacci |
| 64640 | 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= |
| 64660 | 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 | "tok-kw">comptime</span>.{...... |
| 64680 | 20 20 20 65 78 70 65 63 74 28 66 69 62 6f 6e 61 63 63 69 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ...expect(fibonacci(<span.class= |
| 646a0 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 37 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 3c 73 70 61 6e 20 | "tok-number">7</span>).==.<span. |
| 646c0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 33 3c 2f 73 70 61 6e 3e 29 3b 0a 20 | class="tok-number">13</span>);.. |
| 646e0 | 20 20 20 7d 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c | ...}.}</code></pre><pre><code.cl |
| 64700 | 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a | ass="shell">$.zig.test.test.zig. |
| 64720 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f | <span.class="t0_1">./docgen_tmp/ |
| 64740 | 74 65 73 74 2e 7a 69 67 3a 35 3a 32 31 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 | test.zig:5:21:.</span><span.clas |
| 64760 | 73 3d 22 74 33 31 5f 31 22 3e 65 72 72 6f 72 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c | s="t31_1">error:.</span><span.cl |
| 64780 | 61 73 73 3d 22 74 30 5f 31 22 3e 65 76 61 6c 75 61 74 69 6f 6e 20 65 78 63 65 65 64 65 64 20 31 | ass="t0_1">evaluation.exceeded.1 |
| 647a0 | 30 30 30 20 62 61 63 6b 77 61 72 64 73 20 62 72 61 6e 63 68 65 73 3c 2f 73 70 61 6e 3e 0a 20 20 | 000.backwards.branches</span>... |
| 647c0 | 20 20 72 65 74 75 72 6e 20 66 69 62 6f 6e 61 63 63 69 28 69 6e 64 65 78 20 2d 20 31 29 20 2b 20 | ..return.fibonacci(index.-.1).+. |
| 647e0 | 66 69 62 6f 6e 61 63 63 69 28 69 6e 64 65 78 20 2d 20 32 29 3b 0a 20 20 20 20 20 20 20 20 20 20 | fibonacci(index.-.2);........... |
| 64800 | 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c | ..........<span.class="t32_1">^< |
| 64820 | 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 | /span>.<span.class="t0_1">./docg |
| 64840 | 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 35 3a 32 31 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 | en_tmp/test.zig:5:21:.</span><sp |
| 64860 | 61 6e 20 63 6c 61 73 73 3d 22 74 33 36 5f 31 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e 3e 3c 73 | an.class="t36_1">note:.</span><s |
| 64880 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 63 61 6c 6c 65 64 20 66 72 6f 6d 20 68 65 72 | pan.class="t0_1">called.from.her |
| 648a0 | 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 72 65 74 75 72 6e 20 66 69 62 6f 6e 61 63 63 69 28 69 6e | e</span>.....return.fibonacci(in |
| 648c0 | 64 65 78 20 2d 20 31 29 20 2b 20 66 69 62 6f 6e 61 63 63 69 28 69 6e 64 65 78 20 2d 20 32 29 3b | dex.-.1).+.fibonacci(index.-.2); |
| 648e0 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | .....................<span.class |
| 64900 | 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ="t32_1">^</span>.<span.class="t |
| 64920 | 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 35 3a 32 31 3a | 0_1">./docgen_tmp/test.zig:5:21: |
| 64940 | 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 36 5f 31 22 3e 6e 6f 74 65 | .</span><span.class="t36_1">note |
| 64960 | 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 63 61 6c 6c | :.</span><span.class="t0_1">call |
| 64980 | 65 64 20 66 72 6f 6d 20 68 65 72 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 72 65 74 75 72 6e 20 66 | ed.from.here</span>.....return.f |
| 649a0 | 69 62 6f 6e 61 63 63 69 28 69 6e 64 65 78 20 2d 20 31 29 20 2b 20 66 69 62 6f 6e 61 63 63 69 28 | ibonacci(index.-.1).+.fibonacci( |
| 649c0 | 69 6e 64 65 78 20 2d 20 32 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | index.-.2);..................... |
| 649e0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 | <span.class="t32_1">^</span>.<sp |
| 64a00 | 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 | an.class="t0_1">./docgen_tmp/tes |
| 64a20 | 74 2e 7a 69 67 3a 35 3a 32 31 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | t.zig:5:21:.</span><span.class=" |
| 64a40 | 74 33 36 5f 31 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | t36_1">note:.</span><span.class= |
| 64a60 | 22 74 30 5f 31 22 3e 63 61 6c 6c 65 64 20 66 72 6f 6d 20 68 65 72 65 3c 2f 73 70 61 6e 3e 0a 20 | "t0_1">called.from.here</span>.. |
| 64a80 | 20 20 20 72 65 74 75 72 6e 20 66 69 62 6f 6e 61 63 63 69 28 69 6e 64 65 78 20 2d 20 31 29 20 2b | ...return.fibonacci(index.-.1).+ |
| 64aa0 | 20 66 69 62 6f 6e 61 63 63 69 28 69 6e 64 65 78 20 2d 20 32 29 3b 0a 20 20 20 20 20 20 20 20 20 | .fibonacci(index.-.2);.......... |
| 64ac0 | 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e | ...........<span.class="t32_1">^ |
| 64ae0 | 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 | </span>.<span.class="t0_1">./doc |
| 64b00 | 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 35 3a 32 31 3a 20 3c 2f 73 70 61 6e 3e 3c 73 | gen_tmp/test.zig:5:21:.</span><s |
| 64b20 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 36 5f 31 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e 3e 3c | pan.class="t36_1">note:.</span>< |
| 64b40 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 63 61 6c 6c 65 64 20 66 72 6f 6d 20 68 65 | span.class="t0_1">called.from.he |
| 64b60 | 72 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 72 65 74 75 72 6e 20 66 69 62 6f 6e 61 63 63 69 28 69 | re</span>.....return.fibonacci(i |
| 64b80 | 6e 64 65 78 20 2d 20 31 29 20 2b 20 66 69 62 6f 6e 61 63 63 69 28 69 6e 64 65 78 20 2d 20 32 29 | ndex.-.1).+.fibonacci(index.-.2) |
| 64ba0 | 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | ;.....................<span.clas |
| 64bc0 | 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | s="t32_1">^</span>.<span.class=" |
| 64be0 | 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 35 3a 32 31 | t0_1">./docgen_tmp/test.zig:5:21 |
| 64c00 | 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 36 5f 31 22 3e 6e 6f 74 | :.</span><span.class="t36_1">not |
| 64c20 | 65 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 63 61 6c | e:.</span><span.class="t0_1">cal |
| 64c40 | 6c 65 64 20 66 72 6f 6d 20 68 65 72 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 72 65 74 75 72 6e 20 | led.from.here</span>.....return. |
| 64c60 | 66 69 62 6f 6e 61 63 63 69 28 69 6e 64 65 78 20 2d 20 31 29 20 2b 20 66 69 62 6f 6e 61 63 63 69 | fibonacci(index.-.1).+.fibonacci |
| 64c80 | 28 69 6e 64 65 78 20 2d 20 32 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | (index.-.2);.................... |
| 64ca0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 | .<span.class="t32_1">^</span>.<s |
| 64cc0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 | pan.class="t0_1">./docgen_tmp/te |
| 64ce0 | 73 74 2e 7a 69 67 3a 35 3a 32 31 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | st.zig:5:21:.</span><span.class= |
| 64d00 | 22 74 33 36 5f 31 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | "t36_1">note:.</span><span.class |
| 64d20 | 3d 22 74 30 5f 31 22 3e 63 61 6c 6c 65 64 20 66 72 6f 6d 20 68 65 72 65 3c 2f 73 70 61 6e 3e 0a | ="t0_1">called.from.here</span>. |
| 64d40 | 20 20 20 20 72 65 74 75 72 6e 20 66 69 62 6f 6e 61 63 63 69 28 69 6e 64 65 78 20 2d 20 31 29 20 | ....return.fibonacci(index.-.1). |
| 64d60 | 2b 20 66 69 62 6f 6e 61 63 63 69 28 69 6e 64 65 78 20 2d 20 32 29 3b 0a 20 20 20 20 20 20 20 20 | +.fibonacci(index.-.2);......... |
| 64d80 | 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e | ............<span.class="t32_1"> |
| 64da0 | 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f | ^</span>.<span.class="t0_1">./do |
| 64dc0 | 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 35 3a 32 31 3a 20 3c 2f 73 70 61 6e 3e 3c | cgen_tmp/test.zig:5:21:.</span>< |
| 64de0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 36 5f 31 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e 3e | span.class="t36_1">note:.</span> |
| 64e00 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 63 61 6c 6c 65 64 20 66 72 6f 6d 20 68 | <span.class="t0_1">called.from.h |
| 64e20 | 65 72 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 72 65 74 75 72 6e 20 66 69 62 6f 6e 61 63 63 69 28 | ere</span>.....return.fibonacci( |
| 64e40 | 69 6e 64 65 78 20 2d 20 31 29 20 2b 20 66 69 62 6f 6e 61 63 63 69 28 69 6e 64 65 78 20 2d 20 32 | index.-.1).+.fibonacci(index.-.2 |
| 64e60 | 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | );.....................<span.cla |
| 64e80 | 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ss="t32_1">^</span>.<span.class= |
| 64ea0 | 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 35 3a 32 | "t0_1">./docgen_tmp/test.zig:5:2 |
| 64ec0 | 31 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 36 5f 31 22 3e 6e 6f | 1:.</span><span.class="t36_1">no |
| 64ee0 | 74 65 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 63 61 | te:.</span><span.class="t0_1">ca |
| 64f00 | 6c 6c 65 64 20 66 72 6f 6d 20 68 65 72 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 72 65 74 75 72 6e | lled.from.here</span>.....return |
| 64f20 | 20 66 69 62 6f 6e 61 63 63 69 28 69 6e 64 65 78 20 2d 20 31 29 20 2b 20 66 69 62 6f 6e 61 63 63 | .fibonacci(index.-.1).+.fibonacc |
| 64f40 | 69 28 69 6e 64 65 78 20 2d 20 32 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | i(index.-.2);................... |
| 64f60 | 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c | ..<span.class="t32_1">^</span>.< |
| 64f80 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 | span.class="t0_1">./docgen_tmp/t |
| 64fa0 | 65 73 74 2e 7a 69 67 3a 35 3a 32 31 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | est.zig:5:21:.</span><span.class |
| 64fc0 | 3d 22 74 33 36 5f 31 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 | ="t36_1">note:.</span><span.clas |
| 64fe0 | 73 3d 22 74 30 5f 31 22 3e 63 61 6c 6c 65 64 20 66 72 6f 6d 20 68 65 72 65 3c 2f 73 70 61 6e 3e | s="t0_1">called.from.here</span> |
| 65000 | 0a 20 20 20 20 72 65 74 75 72 6e 20 66 69 62 6f 6e 61 63 63 69 28 69 6e 64 65 78 20 2d 20 31 29 | .....return.fibonacci(index.-.1) |
| 65020 | 20 2b 20 66 69 62 6f 6e 61 63 63 69 28 69 6e 64 65 78 20 2d 20 32 29 3b 0a 20 20 20 20 20 20 20 | .+.fibonacci(index.-.2);........ |
| 65040 | 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 | .............<span.class="t32_1" |
| 65060 | 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 | >^</span>.<span.class="t0_1">./d |
| 65080 | 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 35 3a 32 31 3a 20 3c 2f 73 70 61 6e 3e | ocgen_tmp/test.zig:5:21:.</span> |
| 650a0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 36 5f 31 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e | <span.class="t36_1">note:.</span |
| 650c0 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 63 61 6c 6c 65 64 20 66 72 6f 6d 20 | ><span.class="t0_1">called.from. |
| 650e0 | 68 65 72 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 72 65 74 75 72 6e 20 66 69 62 6f 6e 61 63 63 69 | here</span>.....return.fibonacci |
| 65100 | 28 69 6e 64 65 78 20 2d 20 31 29 20 2b 20 66 69 62 6f 6e 61 63 63 69 28 69 6e 64 65 78 20 2d 20 | (index.-.1).+.fibonacci(index.-. |
| 65120 | 32 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c | 2);.....................<span.cl |
| 65140 | 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | ass="t32_1">^</span>.<span.class |
| 65160 | 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 35 3a | ="t0_1">./docgen_tmp/test.zig:5: |
| 65180 | 32 31 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 36 5f 31 22 3e 6e | 21:.</span><span.class="t36_1">n |
| 651a0 | 6f 74 65 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 63 | ote:.</span><span.class="t0_1">c |
| 651c0 | 61 6c 6c 65 64 20 66 72 6f 6d 20 68 65 72 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 72 65 74 75 72 | alled.from.here</span>.....retur |
| 651e0 | 6e 20 66 69 62 6f 6e 61 63 63 69 28 69 6e 64 65 78 20 2d 20 31 29 20 2b 20 66 69 62 6f 6e 61 63 | n.fibonacci(index.-.1).+.fibonac |
| 65200 | 63 69 28 69 6e 64 65 78 20 2d 20 32 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ci(index.-.2);.................. |
| 65220 | 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a | ...<span.class="t32_1">^</span>. |
| 65240 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f | <span.class="t0_1">./docgen_tmp/ |
| 65260 | 74 65 73 74 2e 7a 69 67 3a 31 30 3a 32 35 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 | test.zig:10:25:.</span><span.cla |
| 65280 | 73 73 3d 22 74 33 36 5f 31 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c | ss="t36_1">note:.</span><span.cl |
| 652a0 | 61 73 73 3d 22 74 30 5f 31 22 3e 72 65 66 65 72 65 6e 63 65 64 20 68 65 72 65 3c 2f 73 70 61 6e | ass="t0_1">referenced.here</span |
| 652c0 | 3e 0a 20 20 20 20 20 20 20 20 65 78 70 65 63 74 28 66 69 62 6f 6e 61 63 63 69 28 37 29 20 3d 3d | >.........expect(fibonacci(7).== |
| 652e0 | 20 31 33 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 | .13);.........................<s |
| 65300 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 2f 63 6f 64 | pan.class="t32_1">^</span>.</cod |
| 65320 | 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 20 63 6f | e></pre>........<p>.......The.co |
| 65340 | 6d 70 69 6c 65 72 20 6e 6f 74 69 63 65 64 20 74 68 61 74 20 65 76 61 6c 75 61 74 69 6e 67 20 74 | mpiler.noticed.that.evaluating.t |
| 65360 | 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 74 6f 6f | his.function.at.compile-time.too |
| 65380 | 6b 20 61 20 6c 6f 6e 67 20 74 69 6d 65 2c 0a 20 20 20 20 20 20 61 6e 64 20 74 68 75 73 20 65 6d | k.a.long.time,.......and.thus.em |
| 653a0 | 69 74 74 65 64 20 61 20 63 6f 6d 70 69 6c 65 20 65 72 72 6f 72 20 61 6e 64 20 67 61 76 65 20 75 | itted.a.compile.error.and.gave.u |
| 653c0 | 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 6e | p..If.the.programmer.wants.to.in |
| 653e0 | 63 72 65 61 73 65 0a 20 20 20 20 20 20 74 68 65 20 62 75 64 67 65 74 20 66 6f 72 20 63 6f 6d 70 | crease.......the.budget.for.comp |
| 65400 | 69 6c 65 2d 74 69 6d 65 20 63 6f 6d 70 75 74 61 74 69 6f 6e 2c 20 74 68 65 79 20 63 61 6e 20 75 | ile-time.computation,.they.can.u |
| 65420 | 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 20 | se.a.built-in.function.called... |
| 65440 | 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 61 | ....<a.href="#setEvalBranchQuota |
| 65460 | 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 61 | ">@setEvalBranchQuota</a>.to.cha |
| 65480 | 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 20 73 | nge.the.default.number.1000.to.s |
| 654a0 | 6f 6d 65 74 68 69 6e 67 20 65 6c 73 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 | omething.else........</p>....... |
| 654c0 | 3c 70 3e 0a 20 20 20 20 20 20 57 68 61 74 20 69 66 20 77 65 20 66 69 78 20 74 68 65 20 62 61 73 | <p>.......What.if.we.fix.the.bas |
| 654e0 | 65 20 63 61 73 65 2c 20 62 75 74 20 70 75 74 20 74 68 65 20 77 72 6f 6e 67 20 76 61 6c 75 65 20 | e.case,.but.put.the.wrong.value. |
| 65500 | 69 6e 20 74 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 65 78 70 65 63 74 3c | in.the.<code.class="zig">expect< |
| 65520 | 2f 63 6f 64 65 3e 20 6c 69 6e 65 3f 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 | /code>.line?.......</p>.......<p |
| 65540 | 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c | .class="file">test.zig</p><pre>< |
| 65560 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | code.class="zig"><span.class="to |
| 65580 | 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 |
| 655a0 | 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 |
| 655c0 | 70 61 6e 3e 28 3c 73 70 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">" |
| 655e0 | 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 |
| 65600 | 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 | t;..<span.class="tok-kw">fn</spa |
| 65620 | 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 66 69 62 6f 6e 61 63 63 | n>.<span.class="tok-fn">fibonacc |
| 65640 | 69 3c 2f 73 70 61 6e 3e 28 69 6e 64 65 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | i</span>(index:.<span.class="tok |
| 65660 | 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 22 | -type">i32</span>).<span.class=" |
| 65680 | 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 6e | tok-type">i32</span>.{.....<span |
| 656a0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 69 6e 64 65 78 | .class="tok-kw">if</span>.(index |
| 656c0 | 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 |
| 656e0 | 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 | </span>).<span.class="tok-kw">re |
| 65700 | 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 69 6e 64 65 78 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | turn</span>.index;.....<span.cla |
| 65720 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 66 69 62 6f 6e 61 | ss="tok-kw">return</span>.fibona |
| 65740 | 63 63 69 28 69 6e 64 65 78 20 2d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | cci(index.-.<span.class="tok-num |
| 65760 | 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 20 2b 20 66 69 62 6f 6e 61 63 63 69 28 69 6e 64 65 78 | ber">1</span>).+.fibonacci(index |
| 65780 | 20 2d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 | .-.<span.class="tok-number">2</s |
| 657a0 | 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 |
| 657c0 | 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" |
| 657e0 | 3e 26 71 75 6f 74 3b 66 69 62 6f 6e 61 63 63 69 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a | >"fibonacci"</span>.{. |
| 65800 | 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d | ....<span.class="tok-kw">comptim |
| 65820 | 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 65 78 70 65 63 74 28 66 69 62 6f 6e 61 | e</span>.{.........expect(fibona |
| 65840 | 63 63 69 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 37 3c 2f | cci(<span.class="tok-number">7</ |
| 65860 | 73 70 61 6e 3e 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | span>).==.<span.class="tok-numbe |
| 65880 | 72 22 3e 39 39 39 39 39 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 7d 0a 7d 3c 2f 63 6f 64 65 3e | r">99999</span>);.....}.}</code> |
| 658a0 | 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 | </pre><pre><code.class="shell">$ |
| 658c0 | 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | .zig.test.test.zig.<span.class=" |
| 658e0 | 74 30 5f 31 22 3e 2e 2f 6c 69 62 2f 73 74 64 2f 74 65 73 74 69 6e 67 2e 7a 69 67 3a 32 37 30 3a | t0_1">./lib/std/testing.zig:270: |
| 65900 | 31 34 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 31 5f 31 22 3e 65 | 14:.</span><span.class="t31_1">e |
| 65920 | 72 72 6f 72 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e | rror:.</span><span.class="t0_1"> |
| 65940 | 65 6e 63 6f 75 6e 74 65 72 65 64 20 40 70 61 6e 69 63 20 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 | encountered.@panic.at.compile-ti |
| 65960 | 6d 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 69 66 20 28 21 6f 6b 29 20 40 70 61 6e 69 63 28 26 71 | me</span>.....if.(!ok).@panic(&q |
| 65980 | 75 6f 74 3b 74 65 73 74 20 66 61 69 6c 75 72 65 26 71 75 6f 74 3b 29 3b 0a 20 20 20 20 20 20 20 | uot;test.failure");........ |
| 659a0 | 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 | ......<span.class="t32_1">^</spa |
| 659c0 | 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 | n>.<span.class="t0_1">./docgen_t |
| 659e0 | 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 31 30 3a 31 35 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 | mp/test.zig:10:15:.</span><span. |
| 65a00 | 63 6c 61 73 73 3d 22 74 33 36 5f 31 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e | class="t36_1">note:.</span><span |
| 65a20 | 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 63 61 6c 6c 65 64 20 66 72 6f 6d 20 68 65 72 65 3c 2f | .class="t0_1">called.from.here</ |
| 65a40 | 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 65 78 70 65 63 74 28 66 69 62 6f 6e 61 63 63 69 28 37 | span>.........expect(fibonacci(7 |
| 65a60 | 29 20 3d 3d 20 39 39 39 39 39 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e | ).==.99999);...............<span |
| 65a80 | 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c | .class="t32_1">^</span>.<span.cl |
| 65aa0 | 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 | ass="t0_1">./docgen_tmp/test.zig |
| 65ac0 | 3a 38 3a 31 38 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 36 5f 31 | :8:18:.</span><span.class="t36_1 |
| 65ae0 | 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 | ">note:.</span><span.class="t0_1 |
| 65b00 | 22 3e 63 61 6c 6c 65 64 20 66 72 6f 6d 20 68 65 72 65 3c 2f 73 70 61 6e 3e 0a 74 65 73 74 20 26 | ">called.from.here</span>.test.& |
| 65b20 | 71 75 6f 74 3b 66 69 62 6f 6e 61 63 63 69 26 71 75 6f 74 3b 20 7b 0a 20 20 20 20 20 20 20 20 20 | quot;fibonacci".{.......... |
| 65b40 | 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 | ........<span.class="t32_1">^</s |
| 65b60 | 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e | pan>.<span.class="t0_1">./docgen |
| 65b80 | 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 31 30 3a 31 35 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 | _tmp/test.zig:10:15:.</span><spa |
| 65ba0 | 6e 20 63 6c 61 73 73 3d 22 74 33 36 5f 31 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 | n.class="t36_1">note:.</span><sp |
| 65bc0 | 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 72 65 66 65 72 65 6e 63 65 64 20 68 65 72 65 3c | an.class="t0_1">referenced.here< |
| 65be0 | 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 65 78 70 65 63 74 28 66 69 62 6f 6e 61 63 63 69 28 | /span>.........expect(fibonacci( |
| 65c00 | 37 29 20 3d 3d 20 39 39 39 39 39 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 | 7).==.99999);...............<spa |
| 65c20 | 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 2f 63 6f 64 65 3e | n.class="t32_1">^</span>.</code> |
| 65c40 | 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 57 68 61 74 20 68 61 70 | </pre>........<p>.......What.hap |
| 65c60 | 70 65 6e 65 64 20 69 73 20 5a 69 67 20 73 74 61 72 74 65 64 20 69 6e 74 65 72 70 72 65 74 69 6e | pened.is.Zig.started.interpretin |
| 65c80 | 67 20 74 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 65 78 70 65 63 74 3c 2f | g.the.<code.class="zig">expect</ |
| 65ca0 | 63 6f 64 65 3e 20 66 75 6e 63 74 69 6f 6e 20 77 69 74 68 20 74 68 65 0a 20 20 20 20 20 20 20 20 | code>.function.with.the......... |
| 65cc0 | 20 20 70 61 72 61 6d 65 74 65 72 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 6f 6b | ..parameter.<code.class="zig">ok |
| 65ce0 | 3c 2f 63 6f 64 65 3e 20 73 65 74 20 74 6f 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | </code>.set.to.<code.class="zig" |
| 65d00 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 | ><span.class="tok-null">false</s |
| 65d20 | 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 20 57 68 65 6e 20 74 68 65 20 69 6e 74 65 72 70 72 65 74 65 | pan></code>..When.the.interprete |
| 65d40 | 72 20 68 69 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c | r.hit...................<code.cl |
| 65d60 | 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 | ass="zig"><span.class="tok-built |
| 65d80 | 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 69 74 20 65 6d 69 74 | in">@panic</span></code>.it.emit |
| 65da0 | 74 65 64 20 61 20 63 6f 6d 70 69 6c 65 20 65 72 72 6f 72 20 62 65 63 61 75 73 65 20 61 20 70 61 | ted.a.compile.error.because.a.pa |
| 65dc0 | 6e 69 63 20 64 75 72 69 6e 67 20 63 6f 6d 70 69 6c 65 0a 20 20 20 20 20 20 63 61 75 73 65 73 20 | nic.during.compile.......causes. |
| 65de0 | 61 20 63 6f 6d 70 69 6c 65 20 65 72 72 6f 72 20 69 66 20 69 74 20 69 73 20 64 65 74 65 63 74 65 | a.compile.error.if.it.is.detecte |
| 65e00 | 64 20 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 0a 20 | d.at.compile-time........</p>... |
| 65e20 | 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 6e 20 74 68 65 20 67 6c 6f 62 61 6c 20 73 63 6f | .....<p>.......In.the.global.sco |
| 65e40 | 70 65 20 28 6f 75 74 73 69 64 65 20 6f 66 20 61 6e 79 20 66 75 6e 63 74 69 6f 6e 29 2c 20 61 6c | pe.(outside.of.any.function),.al |
| 65e60 | 6c 20 65 78 70 72 65 73 73 69 6f 6e 73 20 61 72 65 20 69 6d 70 6c 69 63 69 74 6c 79 0a 20 20 20 | l.expressions.are.implicitly.... |
| 65e80 | 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | ...<code.class="zig"><span.class |
| 65ea0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e | ="tok-kw">comptime</span></code> |
| 65ec0 | 20 65 78 70 72 65 73 73 69 6f 6e 73 2e 20 54 68 69 73 20 6d 65 61 6e 73 20 74 68 61 74 20 77 65 | .expressions..This.means.that.we |
| 65ee0 | 20 63 61 6e 20 75 73 65 20 66 75 6e 63 74 69 6f 6e 73 20 74 6f 0a 20 20 20 20 20 20 69 6e 69 74 | .can.use.functions.to.......init |
| 65f00 | 69 61 6c 69 7a 65 20 63 6f 6d 70 6c 65 78 20 73 74 61 74 69 63 20 64 61 74 61 2e 20 46 6f 72 20 | ialize.complex.static.data..For. |
| 65f20 | 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 70 20 63 6c 61 | example:.......</p>.......<p.cla |
| 65f40 | 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 | ss="file">test.zig</p><pre><code |
| 65f60 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | .class="zig"><span.class="tok-kw |
| 65f80 | 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 66 69 72 73 74 5f 32 35 5f 70 72 69 6d 65 73 20 3d | ">const</span>.first_25_primes.= |
| 65fa0 | 20 66 69 72 73 74 4e 50 72 69 6d 65 73 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | .firstNPrimes(<span.class="tok-n |
| 65fc0 | 75 6d 62 65 72 22 3e 32 35 3c 2f 73 70 61 6e 3e 29 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | umber">25</span>);.<span.class=" |
| 65fe0 | 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 75 6d 5f 6f 66 5f 66 69 72 73 | tok-kw">const</span>.sum_of_firs |
| 66000 | 74 5f 32 35 5f 70 72 69 6d 65 73 20 3d 20 73 75 6d 28 26 61 6d 70 3b 66 69 72 73 74 5f 32 35 5f | t_25_primes.=.sum(&first_25_ |
| 66020 | 70 72 69 6d 65 73 29 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 | primes);..<span.class="tok-kw">f |
| 66040 | 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 66 69 | n</span>.<span.class="tok-fn">fi |
| 66060 | 72 73 74 4e 50 72 69 6d 65 73 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | rstNPrimes</span>(<span.class="t |
| 66080 | 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 6e 3a 20 3c 73 70 61 6e 20 | ok-kw">comptime</span>.n:.<span. |
| 660a0 | 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 5b | class="tok-type">usize</span>).[ |
| 660c0 | 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 69 33 32 3c 2f 73 70 | n]<span.class="tok-type">i32</sp |
| 660e0 | 61 6e 3e 20 7b 0a 20 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 |
| 66100 | 61 72 3c 2f 73 70 61 6e 3e 20 70 72 69 6d 65 5f 6c 69 73 74 3a 20 5b 6e 5d 3c 73 70 61 6e 20 63 | ar</span>.prime_list:.[n]<span.c |
| 66120 | 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 |
| 66140 | 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 |
| 66160 | 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 | pan>;.....<span.class="tok-kw">v |
| 66180 | 61 72 3c 2f 73 70 61 6e 3e 20 6e 65 78 74 5f 69 6e 64 65 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 | ar</span>.next_index:.<span.clas |
| 661a0 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 | s="tok-type">usize</span>.=.<spa |
| 661c0 | 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>;.. |
| 661e0 | 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 |
| 66200 | 6e 3e 20 74 65 73 74 5f 6e 75 6d 62 65 72 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | n>.test_number:.<span.class="tok |
| 66220 | 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= |
| 66240 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e | "tok-number">2</span>;.....<span |
| 66260 | 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 6e 65 | .class="tok-kw">while</span>.(ne |
| 66280 | 78 74 5f 69 6e 64 65 78 20 26 6c 74 3b 20 70 72 69 6d 65 5f 6c 69 73 74 2e 6c 65 6e 29 20 3a 20 | xt_index.<.prime_list.len).:. |
| 662a0 | 28 74 65 73 74 5f 6e 75 6d 62 65 72 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | (test_number.+=.<span.class="tok |
| 662c0 | 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 | -number">1</span>).{.........<sp |
| 662e0 | 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 74 65 73 | an.class="tok-kw">var</span>.tes |
| 66300 | 74 5f 70 72 69 6d 65 5f 69 6e 64 65 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | t_prime_index:.<span.class="tok- |
| 66320 | 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 |
| 66340 | 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 20 20 20 20 | ="tok-number">0</span>;......... |
| 66360 | 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>. |
| 66380 | 69 73 5f 70 72 69 6d 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c | is_prime.=.<span.class="tok-null |
| 663a0 | 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | ">true</span>;.........<span.cla |
| 663c0 | 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 74 65 73 74 5f 70 | ss="tok-kw">while</span>.(test_p |
| 663e0 | 72 69 6d 65 5f 69 6e 64 65 78 20 26 6c 74 3b 20 6e 65 78 74 5f 69 6e 64 65 78 29 20 3a 20 28 74 | rime_index.<.next_index).:.(t |
| 66400 | 65 73 74 5f 70 72 69 6d 65 5f 69 6e 64 65 78 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | est_prime_index.+=.<span.class=" |
| 66420 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 20 20 20 20 | tok-number">1</span>).{......... |
| 66440 | 20 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 |
| 66460 | 6e 3e 20 28 74 65 73 74 5f 6e 75 6d 62 65 72 20 25 20 70 72 69 6d 65 5f 6c 69 73 74 5b 74 65 73 | n>.(test_number.%.prime_list[tes |
| 66480 | 74 5f 70 72 69 6d 65 5f 69 6e 64 65 78 5d 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | t_prime_index].==.<span.class="t |
| 664a0 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 20 20 20 20 20 | ok-number">0</span>).{.......... |
| 664c0 | 20 20 20 20 20 20 20 69 73 5f 70 72 69 6d 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | .......is_prime.=.<span.class="t |
| 664e0 | 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 20 20 20 20 20 | ok-null">false</span>;.......... |
| 66500 | 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 62 72 65 61 | .......<span.class="tok-kw">brea |
| 66520 | 6b 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 | k</span>;.............}......... |
| 66540 | 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 69 | }.........<span.class="tok-kw">i |
| 66560 | 66 3c 2f 73 70 61 6e 3e 20 28 69 73 5f 70 72 69 6d 65 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 | f</span>.(is_prime).{........... |
| 66580 | 20 20 70 72 69 6d 65 5f 6c 69 73 74 5b 6e 65 78 74 5f 69 6e 64 65 78 5d 20 3d 20 74 65 73 74 5f | ..prime_list[next_index].=.test_ |
| 665a0 | 6e 75 6d 62 65 72 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 6e 65 78 74 5f 69 6e 64 65 78 20 2b | number;.............next_index.+ |
| 665c0 | 3d 20 3c 73 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 |
| 665e0 | 61 6e 3e 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 7d 0a 20 20 20 20 3c 73 70 61 6e 20 63 | an>;.........}.....}.....<span.c |
| 66600 | 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 70 72 69 6d | lass="tok-kw">return</span>.prim |
| 66620 | 65 5f 6c 69 73 74 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | e_list;.}..<span.class="tok-kw"> |
| 66640 | 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 73 | fn</span>.<span.class="tok-fn">s |
| 66660 | 75 6d 3c 2f 73 70 61 6e 3e 28 6e 75 6d 62 65 72 73 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 | um</span>(numbers:.[]<span.class |
| 66680 | 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 |
| 666a0 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 | ss="tok-type">i32</span>).<span. |
| 666c0 | 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>.{... |
| 666e0 | 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 |
| 66700 | 3e 20 72 65 73 75 6c 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 | >.result:.<span.class="tok-type" |
| 66720 | 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 |
| 66740 | 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | umber">0</span>;.....<span.class |
| 66760 | 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 62 65 72 73 29 20 7c | ="tok-kw">for</span>.(numbers).| |
| 66780 | 78 7c 20 7b 0a 20 20 20 20 20 20 20 20 72 65 73 75 6c 74 20 2b 3d 20 78 3b 0a 20 20 20 20 7d 0a | x|.{.........result.+=.x;.....}. |
| 667a0 | 20 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< |
| 667c0 | 2f 73 70 61 6e 3e 20 72 65 73 75 6c 74 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | /span>.result;.}..<span.class="t |
| 667e0 | 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=" |
| 66800 | 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 76 61 72 69 61 62 6c 65 20 76 61 6c 75 65 73 26 71 | tok-str">"variable.values&q |
| 66820 | 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 |
| 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 28 73 75 6d 5f 6f 66 5f 66 | </span>).testing.expect(sum_of_f |
| 668a0 | 69 72 73 74 5f 32 35 5f 70 72 69 6d 65 73 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | irst_25_primes.==.<span.class="t |
| 668c0 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 36 30 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 | ok-number">1060</span>);.}</code |
| 668e0 | 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e | ></pre><pre><code.class="shell"> |
| 66900 | 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 31 2f 31 20 74 65 73 74 20 26 71 75 | $.zig.test.test.zig.1/1.test.&qu |
| 66920 | 6f 74 3b 76 61 72 69 61 62 6c 65 20 76 61 6c 75 65 73 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 41 | ot;variable.values"....OK.A |
| 66940 | 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e | ll.1.tests.passed..</code></pre> |
| 66960 | 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 57 68 65 6e 20 77 65 20 63 6f 6d 70 69 6c | ........<p>.......When.we.compil |
| 66980 | 65 20 74 68 69 73 20 70 72 6f 67 72 61 6d 2c 20 5a 69 67 20 67 65 6e 65 72 61 74 65 73 20 74 68 | e.this.program,.Zig.generates.th |
| 669a0 | 65 20 63 6f 6e 73 74 61 6e 74 73 0a 20 20 20 20 20 20 77 69 74 68 20 74 68 65 20 61 6e 73 77 65 | e.constants.......with.the.answe |
| 669c0 | 72 20 70 72 65 2d 63 6f 6d 70 75 74 65 64 2e 20 48 65 72 65 20 61 72 65 20 74 68 65 20 6c 69 6e | r.pre-computed..Here.are.the.lin |
| 669e0 | 65 73 20 66 72 6f 6d 20 74 68 65 20 67 65 6e 65 72 61 74 65 64 20 4c 4c 56 4d 20 49 52 3a 0a 20 | es.from.the.generated.LLVM.IR:.. |
| 66a00 | 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 | .....</p>.......<pre><code.class |
| 66a20 | 3d 22 6c 6c 76 6d 22 3e 40 30 20 3d 20 69 6e 74 65 72 6e 61 6c 20 75 6e 6e 61 6d 65 64 5f 61 64 | ="llvm">@0.=.internal.unnamed_ad |
| 66a40 | 64 72 20 63 6f 6e 73 74 61 6e 74 20 5b 32 35 20 78 20 69 33 32 5d 20 5b 69 33 32 20 32 2c 20 69 | dr.constant.[25.x.i32].[i32.2,.i |
| 66a60 | 33 32 20 33 2c 20 69 33 32 20 35 2c 20 69 33 32 20 37 2c 20 69 33 32 20 31 31 2c 20 69 33 32 20 | 32.3,.i32.5,.i32.7,.i32.11,.i32. |
| 66a80 | 31 33 2c 20 69 33 32 20 31 37 2c 20 69 33 32 20 31 39 2c 20 69 33 32 20 32 33 2c 20 69 33 32 20 | 13,.i32.17,.i32.19,.i32.23,.i32. |
| 66aa0 | 32 39 2c 20 69 33 32 20 33 31 2c 20 69 33 32 20 33 37 2c 20 69 33 32 20 34 31 2c 20 69 33 32 20 | 29,.i32.31,.i32.37,.i32.41,.i32. |
| 66ac0 | 34 33 2c 20 69 33 32 20 34 37 2c 20 69 33 32 20 35 33 2c 20 69 33 32 20 35 39 2c 20 69 33 32 20 | 43,.i32.47,.i32.53,.i32.59,.i32. |
| 66ae0 | 36 31 2c 20 69 33 32 20 36 37 2c 20 69 33 32 20 37 31 2c 20 69 33 32 20 37 33 2c 20 69 33 32 20 | 61,.i32.67,.i32.71,.i32.73,.i32. |
| 66b00 | 37 39 2c 20 69 33 32 20 38 33 2c 20 69 33 32 20 38 39 2c 20 69 33 32 20 39 37 5d 0a 40 31 20 3d | 79,.i32.83,.i32.89,.i32.97].@1.= |
| 66b20 | 20 69 6e 74 65 72 6e 61 6c 20 75 6e 6e 61 6d 65 64 5f 61 64 64 72 20 63 6f 6e 73 74 61 6e 74 20 | .internal.unnamed_addr.constant. |
| 66b40 | 69 33 32 20 31 30 36 30 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a | i32.1060</code></pre>.......<p>. |
| 66b60 | 20 20 20 20 20 20 4e 6f 74 65 20 74 68 61 74 20 77 65 20 64 69 64 20 6e 6f 74 20 68 61 76 65 20 | ......Note.that.we.did.not.have. |
| 66b80 | 74 6f 20 64 6f 20 61 6e 79 74 68 69 6e 67 20 73 70 65 63 69 61 6c 20 77 69 74 68 20 74 68 65 20 | to.do.anything.special.with.the. |
| 66ba0 | 73 79 6e 74 61 78 20 6f 66 20 74 68 65 73 65 20 66 75 6e 63 74 69 6f 6e 73 2e 20 46 6f 72 20 65 | syntax.of.these.functions..For.e |
| 66bc0 | 78 61 6d 70 6c 65 2c 0a 20 20 20 20 20 20 77 65 20 63 6f 75 6c 64 20 63 61 6c 6c 20 74 68 65 20 | xample,.......we.could.call.the. |
| 66be0 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 73 75 6d 3c 2f 63 6f 64 65 3e 20 66 75 6e | <code.class="zig">sum</code>.fun |
| 66c00 | 63 74 69 6f 6e 20 61 73 20 69 73 20 77 69 74 68 20 61 20 73 6c 69 63 65 20 6f 66 20 6e 75 6d 62 | ction.as.is.with.a.slice.of.numb |
| 66c20 | 65 72 73 20 77 68 6f 73 65 20 6c 65 6e 67 74 68 20 61 6e 64 20 76 61 6c 75 65 73 20 77 65 72 65 | ers.whose.length.and.values.were |
| 66c40 | 0a 20 20 20 20 20 20 6f 6e 6c 79 20 6b 6e 6f 77 6e 20 61 74 20 72 75 6e 2d 74 69 6d 65 2e 0a 20 | .......only.known.at.run-time... |
| 66c60 | 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 3c 68 | .....</p>.....................<h |
| 66c80 | 32 20 69 64 3d 22 47 65 6e 65 72 69 63 2d 44 61 74 61 2d 53 74 72 75 63 74 75 72 65 73 22 3e 3c | 2.id="Generic-Data-Structures">< |
| 66ca0 | 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 47 65 6e 65 72 69 63 2d 44 61 74 61 2d 53 74 72 75 63 74 | a.href="#toc-Generic-Data-Struct |
| 66cc0 | 75 72 65 73 22 3e 47 65 6e 65 72 69 63 20 44 61 74 61 20 53 74 72 75 63 74 75 72 65 73 3c 2f 61 | ures">Generic.Data.Structures</a |
| 66ce0 | 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 47 65 6e 65 72 69 63 2d | >.<a.class="hdr".href="#Generic- |
| 66d00 | 44 61 74 61 2d 53 74 72 75 63 74 75 72 65 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 | Data-Structures">..</a></h2>.... |
| 66d20 | 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 5a 69 67 20 75 73 65 73 20 74 68 65 73 65 20 63 61 70 | ....<p>.......Zig.uses.these.cap |
| 66d40 | 61 62 69 6c 69 74 69 65 73 20 74 6f 20 69 6d 70 6c 65 6d 65 6e 74 20 67 65 6e 65 72 69 63 20 64 | abilities.to.implement.generic.d |
| 66d60 | 61 74 61 20 73 74 72 75 63 74 75 72 65 73 20 77 69 74 68 6f 75 74 20 69 6e 74 72 6f 64 75 63 69 | ata.structures.without.introduci |
| 66d80 | 6e 67 20 61 6e 79 0a 20 20 20 20 20 20 73 70 65 63 69 61 6c 2d 63 61 73 65 20 73 79 6e 74 61 78 | ng.any.......special-case.syntax |
| 66da0 | 2e 20 49 66 20 79 6f 75 20 66 6f 6c 6c 6f 77 65 64 20 61 6c 6f 6e 67 20 73 6f 20 66 61 72 2c 20 | ..If.you.followed.along.so.far,. |
| 66dc0 | 79 6f 75 20 6d 61 79 20 61 6c 72 65 61 64 79 20 6b 6e 6f 77 20 68 6f 77 20 74 6f 20 63 72 65 61 | you.may.already.know.how.to.crea |
| 66de0 | 74 65 20 61 0a 20 20 20 20 20 20 67 65 6e 65 72 69 63 20 64 61 74 61 20 73 74 72 75 63 74 75 72 | te.a.......generic.data.structur |
| 66e00 | 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 48 65 | e........</p>.......<p>.......He |
| 66e20 | 72 65 20 69 73 20 61 6e 20 65 78 61 6d 70 6c 65 20 6f 66 20 61 20 67 65 6e 65 72 69 63 20 3c 63 | re.is.an.example.of.a.generic.<c |
| 66e40 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 4c 69 73 74 3c 2f 63 6f 64 65 3e 20 64 61 74 61 | ode.class="zig">List</code>.data |
| 66e60 | 20 73 74 72 75 63 74 75 72 65 2c 20 74 68 61 74 20 77 65 20 77 69 6c 6c 20 69 6e 73 74 61 6e 74 | .structure,.that.we.will.instant |
| 66e80 | 69 61 74 65 20 77 69 74 68 0a 20 20 20 20 20 20 20 20 20 20 74 68 65 20 74 79 70 65 20 3c 63 6f | iate.with...........the.type.<co |
| 66ea0 | 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | de.class="zig"><span.class="tok- |
| 66ec0 | 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 20 49 6e 20 5a 69 67 20 | type">i32</span></code>..In.Zig. |
| 66ee0 | 77 65 20 72 65 66 65 72 20 74 6f 20 74 68 65 20 74 79 70 65 20 61 73 20 3c 63 6f 64 65 20 63 6c | we.refer.to.the.type.as.<code.cl |
| 66f00 | 61 73 73 3d 22 7a 69 67 22 3e 4c 69 73 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ass="zig">List(<span.class="tok- |
| 66f20 | 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 | type">i32</span>)</code>........ |
| 66f40 | 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | </p>.......<pre><code.class="zig |
| 66f60 | 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e | "><span.class="tok-kw">fn</span> |
| 66f80 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 4c 69 73 74 3c 2f 73 70 61 6e | .<span.class="tok-fn">List</span |
| 66fa0 | 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< |
| 66fc0 | 2f 73 70 61 6e 3e 20 54 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 | /span>.T:.<span.class="tok-type" |
| 66fe0 | 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | >type</span>).<span.class="tok-t |
| 67000 | 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | ype">type</span>.{.....<span.cla |
| 67020 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 | ss="tok-kw">return</span>.<span. |
| 67040 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 74 72 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 | class="tok-kw">struct</span>.{.. |
| 67060 | 20 20 20 20 20 20 20 69 74 65 6d 73 3a 20 5b 5d 54 2c 0a 20 20 20 20 20 20 20 20 6c 65 6e 3a 20 | .......items:.[]T,.........len:. |
| 67080 | 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 |
| 670a0 | 61 6e 3e 2c 0a 20 20 20 20 7d 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 | an>,.....};.}</code></pre>...... |
| 670c0 | 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 |
| 670e0 | 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. |
| 67100 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | <code.class="zig"><span.class="t |
| 67120 | 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 2e 20 46 6f 72 | ok-kw">struct</span></code>..For |
| 67140 | 20 74 68 65 20 70 75 72 70 6f 73 65 73 20 6f 66 20 65 72 72 6f 72 20 6d 65 73 73 61 67 65 73 0a | .the.purposes.of.error.messages. |
| 67160 | 20 20 20 20 20 20 20 20 20 20 61 6e 64 20 64 65 62 75 67 67 69 6e 67 2c 20 5a 69 67 20 69 6e 66 | ..........and.debugging,.Zig.inf |
| 67180 | 65 72 73 20 74 68 65 20 6e 61 6d 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c | ers.the.name.<code.class="zig">< |
| 671a0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 4c 69 73 74 28 | span.class="tok-str">"List( |
| 671c0 | 69 33 32 29 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 66 72 6f 6d 20 74 68 | i32)"</span></code>.from.th |
| 671e0 | 65 20 66 75 6e 63 74 69 6f 6e 20 6e 61 6d 65 20 61 6e 64 20 70 61 72 61 6d 65 74 65 72 73 20 69 | e.function.name.and.parameters.i |
| 67200 | 6e 76 6f 6b 65 64 20 77 68 65 6e 20 63 72 65 61 74 69 6e 67 0a 20 20 20 20 20 20 74 68 65 20 61 | nvoked.when.creating.......the.a |
| 67220 | 6e 6f 6e 79 6d 6f 75 73 20 73 74 72 75 63 74 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 | nonymous.struct........</p>..... |
| 67240 | 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 6f 20 6b 65 65 70 20 74 68 65 20 6c 61 6e 67 75 61 67 65 | ..<p>.......To.keep.the.language |
| 67260 | 20 73 6d 61 6c 6c 20 61 6e 64 20 75 6e 69 66 6f 72 6d 2c 20 61 6c 6c 20 61 67 67 72 65 67 61 74 | .small.and.uniform,.all.aggregat |
| 67280 | 65 20 74 79 70 65 73 20 69 6e 20 5a 69 67 20 61 72 65 20 61 6e 6f 6e 79 6d 6f 75 73 2e 20 54 6f | e.types.in.Zig.are.anonymous..To |
| 672a0 | 20 67 69 76 65 20 61 20 74 79 70 65 0a 20 20 20 20 20 20 61 20 6e 61 6d 65 2c 20 77 65 20 61 73 | .give.a.type.......a.name,.we.as |
| 672c0 | 73 69 67 6e 20 69 74 20 74 6f 20 61 20 63 6f 6e 73 74 61 6e 74 3a 0a 20 20 20 20 20 20 3c 2f 70 | sign.it.to.a.constant:.......</p |
| 672e0 | 3e 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c | >.......<pre><code.class="zig">< |
| 67300 | 73 70 61 6e 20 63 6c 61 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> |
| 67320 | 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 73 74 72 | .Node.=.<span.class="tok-kw">str |
| 67340 | 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 6e 65 78 74 3a 20 2a 4e 6f 64 65 2c 0a 20 20 | uct</span>.{.....next:.*Node,... |
| 67360 | 20 20 6e 61 6d 65 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 | ..name:.[]<span.class="tok-type" |
| 67380 | 3e 75 38 3c 2f 73 70 61 6e 3e 2c 0a 7d 3b 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 | >u8</span>,.};</code></pre>..... |
| 673a0 | 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 77 6f 72 6b 73 20 62 65 63 61 75 73 65 20 61 | ..<p>.......This.works.because.a |
| 673c0 | 6c 6c 20 74 6f 70 20 6c 65 76 65 6c 20 64 65 63 6c 61 72 61 74 69 6f 6e 73 20 61 72 65 20 6f 72 | ll.top.level.declarations.are.or |
| 673e0 | 64 65 72 2d 69 6e 64 65 70 65 6e 64 65 6e 74 2c 20 61 6e 64 20 61 73 20 6c 6f 6e 67 20 61 73 20 | der-independent,.and.as.long.as. |
| 67400 | 74 68 65 72 65 20 69 73 6e 27 74 0a 20 20 20 20 20 20 61 6e 20 61 63 74 75 61 6c 20 69 6e 66 69 | there.isn't.......an.actual.infi |
| 67420 | 6e 69 74 65 20 72 65 67 72 65 73 73 69 6f 6e 2c 20 76 61 6c 75 65 73 20 63 61 6e 20 72 65 66 65 | nite.regression,.values.can.refe |
| 67440 | 72 20 74 6f 20 74 68 65 6d 73 65 6c 76 65 73 2c 20 64 69 72 65 63 74 6c 79 20 6f 72 20 69 6e 64 | r.to.themselves,.directly.or.ind |
| 67460 | 69 72 65 63 74 6c 79 2e 20 49 6e 20 74 68 69 73 20 63 61 73 65 2c 0a 20 20 20 20 20 20 3c 63 6f | irectly..In.this.case,.......<co |
| 67480 | 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 4e 6f 64 65 3c 2f 63 6f 64 65 3e 20 72 65 66 65 72 | de.class="zig">Node</code>.refer |
| 674a0 | 73 20 74 6f 20 69 74 73 65 6c 66 20 61 73 20 61 20 70 6f 69 6e 74 65 72 2c 20 77 68 69 63 68 20 | s.to.itself.as.a.pointer,.which. |
| 674c0 | 69 73 20 6e 6f 74 20 61 63 74 75 61 6c 6c 79 20 61 6e 20 69 6e 66 69 6e 69 74 65 20 72 65 67 72 | is.not.actually.an.infinite.regr |
| 674e0 | 65 73 73 69 6f 6e 2c 20 73 6f 0a 20 20 20 20 20 20 69 74 20 77 6f 72 6b 73 20 66 69 6e 65 2e 0a | ession,.so.......it.works.fine.. |
| 67500 | 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 | ......</p>..............<h2.id=" |
| 67520 | 43 61 73 65 2d 53 74 75 64 79 2d 70 72 69 6e 74 66 2d 69 6e 2d 5a 69 67 22 3e 3c 61 20 68 72 65 | Case-Study-printf-in-Zig"><a.hre |
| 67540 | 66 3d 22 23 74 6f 63 2d 43 61 73 65 2d 53 74 75 64 79 2d 70 72 69 6e 74 66 2d 69 6e 2d 5a 69 67 | f="#toc-Case-Study-printf-in-Zig |
| 67560 | 22 3e 43 61 73 65 20 53 74 75 64 79 3a 20 70 72 69 6e 74 66 20 69 6e 20 5a 69 67 3c 2f 61 3e 20 | ">Case.Study:.printf.in.Zig</a>. |
| 67580 | 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 65 2d 53 74 75 64 79 | <a.class="hdr".href="#Case-Study |
| 675a0 | 2d 70 72 69 6e 74 66 2d 69 6e 2d 5a 69 67 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 | -printf-in-Zig">..</a></h2>..... |
| 675c0 | 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 50 75 74 74 69 6e 67 20 61 6c 6c 20 6f 66 20 74 68 69 73 | ...<p>.......Putting.all.of.this |
| 675e0 | 20 74 6f 67 65 74 68 65 72 2c 20 6c 65 74 27 73 20 73 65 65 20 68 6f 77 20 3c 63 6f 64 65 20 63 | .together,.let's.see.how.<code.c |
| 67600 | 6c 61 73 73 3d 22 7a 69 67 22 3e 70 72 69 6e 74 66 3c 2f 63 6f 64 65 3e 20 77 6f 72 6b 73 20 69 | lass="zig">printf</code>.works.i |
| 67620 | 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 70 20 63 6c 61 73 73 | n.Zig........</p>.......<p.class |
| 67640 | 3d 22 66 69 6c 65 22 3e 70 72 69 6e 74 66 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 | ="file">printf.zig</p><pre><code |
| 67660 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | .class="zig"><span.class="tok-kw |
| 67680 | 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 70 72 69 6e 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 | ">const</span>.print.=.<span.cla |
| 676a0 | 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>( |
| 676c0 | 3c 73 70 61 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& |
| 676e0 | 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 64 65 62 75 67 2e 70 72 69 6e 74 3b 0a 0a 3c 73 70 61 | quot;</span>).debug.print;..<spa |
| 67700 | 6e 20 63 6c 61 73 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_ |
| 67720 | 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 |
| 67740 | 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 |
| 67760 | 62 65 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ber">1234</span>;.<span.class="t |
| 67780 | 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 5f 73 74 72 69 6e 67 20 3d 20 3c | ok-kw">const</span>.a_string.=.< |
| 677a0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 66 6f 6f 62 61 | span.class="tok-str">"fooba |
| 677c0 | 72 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | r"</span>;..<span.class="to |
| 677e0 | 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 |
| 67800 | 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 |
| 67820 | 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=" |
| 67840 | 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 6e | tok-type">void</span>.{.....prin |
| 67860 | 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 |
| 67880 | 72 65 20 69 73 20 61 20 73 74 72 69 6e 67 3a 20 27 7b 7d 27 20 68 65 72 65 20 69 73 20 61 20 6e | re.is.a.string:.'{}'.here.is.a.n |
| 678a0 | 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 61 5f 73 74 | umber:.{}\n"</span>,..{a_st |
| 678c0 | 72 69 6e 67 2c 20 61 5f 6e 75 6d 62 65 72 7d 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e | ring,.a_number});.}</code></pre> |
| 678e0 | 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 62 | <pre><code.class="shell">$.zig.b |
| 67900 | 75 69 6c 64 2d 65 78 65 20 70 72 69 6e 74 66 2e 7a 69 67 0a 24 20 2e 2f 70 72 69 6e 74 66 0a 68 | uild-exe.printf.zig.$../printf.h |
| 67920 | 65 72 65 20 69 73 20 61 20 73 74 72 69 6e 67 3a 20 27 66 6f 6f 62 61 72 27 20 68 65 72 65 20 69 | ere.is.a.string:.'foobar'.here.i |
| 67940 | 73 20 61 20 6e 75 6d 62 65 72 3a 20 31 32 33 34 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a | s.a.number:.1234.</code></pre>.. |
| 67960 | 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 4c 65 74 27 73 20 63 72 61 63 6b 20 6f 70 65 | .......<p>.......Let's.crack.ope |
| 67980 | 6e 20 74 68 65 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 20 6f 66 20 74 68 69 73 20 61 6e 64 | n.the.implementation.of.this.and |
| 679a0 | 20 73 65 65 20 68 6f 77 20 69 74 20 77 6f 72 6b 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 0a 20 | .see.how.it.works:.......</p>... |
| 679c0 | 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 | .....<pre><code.class="zig"><spa |
| 679e0 | 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. |
| 67a00 | 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 |
| 67a20 | 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 77 22 3e 70 | r.</span>.<span.class="tok-kw">p |
| 67a40 | 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 |
| 67a60 | 6e 3c 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 | n</span>.<span.class="tok-fn">pr |
| 67a80 | 69 6e 74 66 3c 2f 73 70 61 6e 3e 28 73 65 6c 66 3a 20 2a 4f 75 74 53 74 72 65 61 6d 2c 20 3c 73 | intf</span>(self:.*OutStream,.<s |
| 67aa0 | 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 |
| 67ac0 | 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 |
| 67ae0 | 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- |
| 67b00 | 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 |
| 67b20 | 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 |
| 67b40 | 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 |
| 67b60 | 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</ |
| 67b80 | 73 70 61 6e 3e 20 7b 0a 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" |
| 67ba0 | 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 53 74 61 74 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | >const</span>.State.=.<span.clas |
| 67bc0 | 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 20 20 20 | s="tok-kw">enum</span>.{........ |
| 67be0 | 20 73 74 61 72 74 2c 0a 20 20 20 20 20 20 20 20 6f 70 65 6e 5f 62 72 61 63 65 2c 0a 20 20 20 20 | .start,.........open_brace,..... |
| 67c00 | 20 20 20 20 63 6c 6f 73 65 5f 62 72 61 63 65 2c 0a 20 20 20 20 7d 3b 0a 0a 20 20 20 20 3c 73 70 | ....close_brace,.....};......<sp |
| 67c20 | 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 |
| 67c40 | 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e | >.<span.class="tok-kw">var</span |
| 67c60 | 3e 20 73 74 61 72 74 5f 69 6e 64 65 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | >.start_index:.<span.class="tok- |
| 67c80 | 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 |
| 67ca0 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 | ="tok-number">0</span>;.....<spa |
| 67cc0 | 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> |
| 67ce0 | 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> |
| 67d00 | 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 3c 73 70 61 6e 20 | .state.=.State.start;.....<span. |
| 67d20 | 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>.< |
| 67d40 | 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 |
| 67d60 | 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"> |
| 67d80 | 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- |
| 67da0 | 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 6c 61 | number">0</span>;......<span.cla |
| 67dc0 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 6e 6c 69 6e 65 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 | ss="tok-kw">inline</span>.<span. |
| 67de0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6f 72 3c 2f 73 70 61 6e 3e 20 28 66 6f 72 6d 61 | class="tok-kw">for</span>.(forma |
| 67e00 | 74 29 20 7c 63 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 | t).|c,.i|.{.........<span.class= |
| 67e20 | 22 74 6f 6b 2d 6b 77 22 3e 73 77 69 74 63 68 3c 2f 73 70 61 6e 3e 20 28 73 74 61 74 65 29 20 7b | "tok-kw">switch</span>.(state).{ |
| 67e40 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 53 74 61 74 65 2e 73 74 61 72 74 20 3d 26 67 74 3b 20 3c | .............State.start.=>.< |
| 67e60 | 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 |
| 67e80 | 3e 20 28 63 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c | >.(c).{.................<span.cl |
| 67ea0 | 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 7b 27 3c 2f 73 70 61 6e 3e 20 3d 26 67 74 3b 20 7b | ass="tok-str">'{'</span>.=>.{ |
| 67ec0 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | .....................<span.class |
| 67ee0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 73 74 61 72 74 5f 69 6e 64 65 78 | ="tok-kw">if</span>.(start_index |
| 67f00 | 20 26 6c 74 3b 20 69 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 | .<.i).<span.class="tok-kw">tr |
| 67f20 | 79 3c 2f 73 70 61 6e 3e 20 73 65 6c 66 2e 77 72 69 74 65 28 66 6f 72 6d 61 74 5b 73 74 61 72 74 | y</span>.self.write(format[start |
| 67f40 | 5f 69 6e 64 65 78 2e 2e 69 5d 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | _index..i]);.................... |
| 67f60 | 20 73 74 61 74 65 20 3d 20 53 74 61 74 65 2e 6f 70 65 6e 5f 62 72 61 63 65 3b 0a 20 20 20 20 20 | .state.=.State.open_brace;...... |
| 67f80 | 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 3c 73 | ...........},.................<s |
| 67fa0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 7d 27 3c 2f 73 70 61 6e 3e 20 3d | pan.class="tok-str">'}'</span>.= |
| 67fc0 | 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 3c 73 70 61 6e | >.{.....................<span |
| 67fe0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 73 74 61 72 74 | .class="tok-kw">if</span>.(start |
| 68000 | 5f 69 6e 64 65 78 20 26 6c 74 3b 20 69 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | _index.<.i).<span.class="tok- |
| 68020 | 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 73 65 6c 66 2e 77 72 69 74 65 28 66 6f 72 6d 61 74 | kw">try</span>.self.write(format |
| 68040 | 5b 73 74 61 72 74 5f 69 6e 64 65 78 2e 2e 69 5d 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 | [start_index..i]);.............. |
| 68060 | 20 20 20 20 20 20 20 73 74 61 74 65 20 3d 20 53 74 61 74 65 2e 63 6c 6f 73 65 5f 62 72 61 63 65 | .......state.=.State.close_brace |
| 68080 | 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 | ;.................},............ |
| 680a0 | 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</ |
| 680c0 | 73 70 61 6e 3e 20 3d 26 67 74 3b 20 7b 7d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 2c 0a 20 | span>.=>.{},.............},.. |
| 680e0 | 20 20 20 20 20 20 20 20 20 20 20 53 74 61 74 65 2e 6f 70 65 6e 5f 62 72 61 63 65 20 3d 26 67 74 | ...........State.open_brace.=> |
| 68100 | 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 77 69 74 63 68 3c 2f 73 | ;.<span.class="tok-kw">switch</s |
| 68120 | 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 3c 73 70 61 6e | pan>.(c).{.................<span |
| 68140 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 7b 27 3c 2f 73 70 61 6e 3e 20 3d 26 67 74 | .class="tok-str">'{'</span>.=> |
| 68160 | 3b 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 74 61 74 65 20 3d 20 | ;.{.....................state.=. |
| 68180 | 53 74 61 74 65 2e 73 74 61 72 74 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | State.start;.................... |
| 681a0 | 20 73 74 61 72 74 5f 69 6e 64 65 78 20 3d 20 69 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | .start_index.=.i;............... |
| 681c0 | 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ..},.................<span.class |
| 681e0 | 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 7d 27 3c 2f 73 70 61 6e 3e 20 3d 26 67 74 3b 20 7b 0a 20 20 | ="tok-str">'}'</span>.=>.{... |
| 68200 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ..................<span.class="t |
| 68220 | 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 73 65 6c 66 2e 70 72 69 6e 74 56 61 6c 75 | ok-kw">try</span>.self.printValu |
| 68240 | 65 28 61 72 67 73 5b 6e 65 78 74 5f 61 72 67 5d 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 | e(args[next_arg]);.............. |
| 68260 | 20 20 20 20 20 20 20 6e 65 78 74 5f 61 72 67 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | .......next_arg.+=.<span.class=" |
| 68280 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 20 20 20 20 20 20 | tok-number">1</span>;........... |
| 682a0 | 20 20 20 20 20 20 20 20 20 20 73 74 61 74 65 20 3d 20 53 74 61 74 65 2e 73 74 61 72 74 3b 0a 20 | ..........state.=.State.start;.. |
| 682c0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 74 61 72 74 5f 69 6e 64 65 78 20 3d | ...................start_index.= |
| 682e0 | 20 69 20 2b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c | .i.+.<span.class="tok-number">1< |
| 68300 | 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 2c 0a 20 20 20 20 20 | /span>;.................},...... |
| 68320 | 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"> |
| 68340 | 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 |
| 68360 | 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> |
| 68380 | 28 3c 73 70 61 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 | (<span.class="tok-str">"Unk |
| 683a0 | 6e 6f 77 6e 20 66 6f 72 6d 61 74 20 63 68 61 72 61 63 74 65 72 3a 20 26 71 75 6f 74 3b 3c 2f 73 | nown.format.character:."</s |
| 683c0 | 70 61 6e 3e 20 2b 2b 20 63 29 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 | pan>.++.c),.............},...... |
| 683e0 | 20 20 20 20 20 20 20 53 74 61 74 65 2e 63 6c 6f 73 65 5f 62 72 61 63 65 20 3d 26 67 74 3b 20 3c | .......State.close_brace.=>.< |
| 68400 | 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 |
| 68420 | 3e 20 28 63 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c | >.(c).{.................<span.cl |
| 68440 | 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 7d 27 3c 2f 73 70 61 6e 3e 20 3d 26 67 74 3b 20 7b | ass="tok-str">'}'</span>.=>.{ |
| 68460 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 74 61 74 65 20 3d 20 53 74 61 | .....................state.=.Sta |
| 68480 | 74 65 2e 73 74 61 72 74 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 74 | te.start;.....................st |
| 684a0 | 61 72 74 5f 69 6e 64 65 78 20 3d 20 69 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d | art_index.=.i;.................} |
| 684c0 | 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ,.................<span.class="t |
| 684e0 | 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 20 63 | ok-kw">else</span>.=>.<span.c |
| 68500 | 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 6f 6d 70 69 6c 65 45 72 72 6f 72 | lass="tok-builtin">@compileError |
| 68520 | 3c 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 |
| 68540 | 75 6f 74 3b 53 69 6e 67 6c 65 20 27 7d 27 20 65 6e 63 6f 75 6e 74 65 72 65 64 20 69 6e 20 66 6f | uot;Single.'}'.encountered.in.fo |
| 68560 | 72 6d 61 74 20 73 74 72 69 6e 67 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2c 0a 20 20 20 20 20 | rmat.string"</span>),...... |
| 68580 | 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 20 20 20 20 3c 73 | .......},.........}.....}.....<s |
| 685a0 | 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 |
| 685c0 | 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | n>.{.........<span.class="tok-kw |
| 685e0 | 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 61 72 67 73 2e 6c 65 6e 20 21 3d 20 6e 65 78 74 5f 61 72 | ">if</span>.(args.len.!=.next_ar |
| 68600 | 67 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 | g).{.............<span.class="to |
| 68620 | 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 6f 6d 70 69 6c 65 45 72 72 6f 72 3c 2f 73 70 61 6e 3e 28 | k-builtin">@compileError</span>( |
| 68640 | 3c 73 70 61 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 75 73 | <span.class="tok-str">"Unus |
| 68660 | 65 64 20 61 72 67 75 6d 65 6e 74 73 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 | ed.arguments"</span>);..... |
| 68680 | 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | ....}.........<span.class="tok-k |
| 686a0 | 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 73 74 61 74 65 20 21 3d 20 53 74 61 74 65 2e 53 74 61 | w">if</span>.(state.!=.State.Sta |
| 686c0 | 72 74 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 | rt).{.............<span.class="t |
| 686e0 | 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> |
| 68700 | 28 3c 73 70 61 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 |
| 68720 | 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 |
| 68740 | 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 7d 0a 20 20 20 20 7d | pan>.++.format);.........}.....} |
| 68760 | 0a 20 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 |
| 68780 | 61 6e 3e 20 28 73 74 61 72 74 5f 69 6e 64 65 78 20 26 6c 74 3b 20 66 6f 72 6d 61 74 2e 6c 65 6e | an>.(start_index.<.format.len |
| 687a0 | 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" |
| 687c0 | 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 73 65 6c 66 2e 77 72 69 74 65 28 66 6f 72 6d 61 74 5b 73 74 | >try</span>.self.write(format[st |
| 687e0 | 61 72 74 5f 69 6e 64 65 78 2e 2e 66 6f 72 6d 61 74 2e 6c 65 6e 5d 29 3b 0a 20 20 20 20 7d 0a 20 | art_index..format.len]);.....}.. |
| 68800 | 20 20 20 3c 73 70 61 6e 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 |
| 68820 | 6e 3e 20 73 65 6c 66 2e 66 6c 75 73 68 28 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a | n>.self.flush();.}</code></pre>. |
| 68840 | 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 69 73 20 61 20 70 72 6f 6f 66 20 | ......<p>.......This.is.a.proof. |
| 68860 | 6f 66 20 63 6f 6e 63 65 70 74 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 3b 20 74 68 65 20 61 | of.concept.implementation;.the.a |
| 68880 | 63 74 75 61 6c 20 66 75 6e 63 74 69 6f 6e 20 69 6e 20 74 68 65 20 73 74 61 6e 64 61 72 64 20 6c | ctual.function.in.the.standard.l |
| 688a0 | 69 62 72 61 72 79 20 68 61 73 20 6d 6f 72 65 0a 20 20 20 20 20 20 66 6f 72 6d 61 74 74 69 6e 67 | ibrary.has.more.......formatting |
| 688c0 | 20 63 61 70 61 62 69 6c 69 74 69 65 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 | .capabilities........</p>....... |
| 688e0 | 3c 70 3e 0a 20 20 20 20 20 20 4e 6f 74 65 20 74 68 61 74 20 74 68 69 73 20 69 73 20 6e 6f 74 20 | <p>.......Note.that.this.is.not. |
| 68900 | 68 61 72 64 2d 63 6f 64 65 64 20 69 6e 74 6f 20 74 68 65 20 5a 69 67 20 63 6f 6d 70 69 6c 65 72 | hard-coded.into.the.Zig.compiler |
| 68920 | 3b 20 74 68 69 73 20 69 73 20 75 73 65 72 6c 61 6e 64 20 63 6f 64 65 20 69 6e 20 74 68 65 20 73 | ;.this.is.userland.code.in.the.s |
| 68940 | 74 61 6e 64 61 72 64 20 6c 69 62 72 61 72 79 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 | tandard.library........</p>..... |
| 68960 | 20 20 3c 70 3e 0a 20 20 20 20 20 20 57 68 65 6e 20 74 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 69 | ..<p>.......When.this.function.i |
| 68980 | 73 20 61 6e 61 6c 79 7a 65 64 20 66 72 6f 6d 20 6f 75 72 20 65 78 61 6d 70 6c 65 20 63 6f 64 65 | s.analyzed.from.our.example.code |
| 689a0 | 20 61 62 6f 76 65 2c 20 5a 69 67 20 70 61 72 74 69 61 6c 6c 79 20 65 76 61 6c 75 61 74 65 73 20 | .above,.Zig.partially.evaluates. |
| 689c0 | 74 68 65 20 66 75 6e 63 74 69 6f 6e 0a 20 20 20 20 20 20 61 6e 64 20 65 6d 69 74 73 20 61 20 66 | the.function.......and.emits.a.f |
| 689e0 | 75 6e 63 74 69 6f 6e 20 74 68 61 74 20 61 63 74 75 61 6c 6c 79 20 6c 6f 6f 6b 73 20 6c 69 6b 65 | unction.that.actually.looks.like |
| 68a00 | 20 74 68 69 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f | .this:.......</p>.......<pre><co |
| 68a20 | 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | de.class="zig"><span.class="tok- |
| 68a40 | 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- |
| 68a60 | 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 |
| 68a80 | 6e 22 3e 70 72 69 6e 74 66 3c 2f 73 70 61 6e 3e 28 73 65 6c 66 3a 20 2a 4f 75 74 53 74 72 65 61 | n">printf</span>(self:.*OutStrea |
| 68aa0 | 6d 2c 20 61 72 67 30 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | m,.arg0:.<span.class="tok-type"> |
| 68ac0 | 69 33 32 3c 2f 73 70 61 6e 3e 2c 20 61 72 67 31 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d | i32</span>,.arg1:.[]<span.class= |
| 68ae0 | 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 |
| 68b00 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 20 21 3c 73 70 61 6e 20 63 | s="tok-type">u8</span>).!<span.c |
| 68b20 | 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>.{... |
| 68b40 | 20 20 3c 73 70 61 6e 20 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 |
| 68b60 | 3e 20 73 65 6c 66 2e 77 72 69 74 65 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 | >.self.write(<span.class="tok-st |
| 68b80 | 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 26 71 75 6f | r">"here.is.a.string:.'&quo |
| 68ba0 | 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 |
| 68bc0 | 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 73 65 6c 66 2e 70 72 69 6e 74 56 61 6c 75 65 28 | -kw">try</span>.self.printValue( |
| 68be0 | 61 72 67 30 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 | arg0);.....<span.class="tok-kw"> |
| 68c00 | 74 72 79 3c 2f 73 70 61 6e 3e 20 73 65 6c 66 2e 77 72 69 74 65 28 3c 73 70 61 6e 20 63 6c 61 73 | try</span>.self.write(<span.clas |
| 68c20 | 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 27 20 68 65 72 65 20 69 73 20 61 20 6e 75 | s="tok-str">"'.here.is.a.nu |
| 68c40 | 6d 62 65 72 3a 20 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 | mber:."</span>);.....<span. |
| 68c60 | 63 6c 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 70 | class="tok-kw">try</span>.self.p |
| 68c80 | 72 69 6e 74 56 61 6c 75 65 28 61 72 67 31 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | rintValue(arg1);.....<span.class |
| 68ca0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 73 65 6c 66 2e 77 72 69 74 65 28 | ="tok-kw">try</span>.self.write( |
| 68cc0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 5c 6e 26 71 | <span.class="tok-str">"\n&q |
| 68ce0 | 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | uot;</span>);.....<span.class="t |
| 68d00 | 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 73 65 6c 66 2e 66 6c 75 73 68 28 29 3b 0a | ok-kw">try</span>.self.flush();. |
| 68d20 | 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 3c | }</code></pre>.......<p>.......< |
| 68d40 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 70 72 69 6e 74 56 61 6c 75 65 3c 2f 63 6f 64 | code.class="zig">printValue</cod |
| 68d60 | 65 3e 20 69 73 20 61 20 66 75 6e 63 74 69 6f 6e 20 74 68 61 74 20 74 61 6b 65 73 20 61 20 70 61 | e>.is.a.function.that.takes.a.pa |
| 68d80 | 72 61 6d 65 74 65 72 20 6f 66 20 61 6e 79 20 74 79 70 65 2c 20 61 6e 64 20 64 6f 65 73 20 64 69 | rameter.of.any.type,.and.does.di |
| 68da0 | 66 66 65 72 65 6e 74 20 74 68 69 6e 67 73 20 64 65 70 65 6e 64 69 6e 67 0a 20 20 20 20 20 20 6f | fferent.things.depending.......o |
| 68dc0 | 6e 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 3c 70 72 | n.the.type:.......</p>.......<pr |
| 68de0 | 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | e><code.class="zig"><span.class= |
| 68e00 | 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= |
| 68e20 | 22 74 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=" |
| 68e40 | 74 6f 6b 2d 66 6e 22 3e 70 72 69 6e 74 56 61 6c 75 65 3c 2f 73 70 61 6e 3e 28 73 65 6c 66 3a 20 | tok-fn">printValue</span>(self:. |
| 68e60 | 2a 4f 75 74 53 74 72 65 61 6d 2c 20 76 61 6c 75 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | *OutStream,.value:.<span.class=" |
| 68e80 | 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 |
| 68ea0 | 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>.{... |
| 68ec0 | 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 77 69 74 63 68 3c 2f 73 | ..<span.class="tok-kw">switch</s |
| 68ee0 | 70 61 6e 3e 20 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e | pan>.(<span.class="tok-builtin"> |
| 68f00 | 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 |
| 68f20 | 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 76 61 6c 75 65 29 | k-builtin">@TypeOf</span>(value) |
| 68f40 | 29 29 20 7b 0a 20 20 20 20 20 20 20 20 2e 49 6e 74 20 3d 26 67 74 3b 20 7b 0a 20 20 20 20 20 20 | )).{..........Int.=>.{....... |
| 68f60 | 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 | ......<span.class="tok-kw">retur |
| 68f80 | 6e 3c 2f 73 70 61 6e 3e 20 73 65 6c 66 2e 70 72 69 6e 74 49 6e 74 28 54 2c 20 76 61 6c 75 65 29 | n</span>.self.printInt(T,.value) |
| 68fa0 | 3b 0a 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 2e 46 6c 6f 61 74 20 3d 26 67 74 | ;.........},..........Float.=> |
| 68fc0 | 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 22 74 6f 6b | ;.{.............<span.class="tok |
| 68fe0 | 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 73 65 6c 66 2e 70 72 69 6e 74 46 6c 6f | -kw">return</span>.self.printFlo |
| 69000 | 61 74 28 54 2c 20 76 61 6c 75 65 29 3b 0a 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 | at(T,.value);.........},........ |
| 69020 | 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 |
| 69040 | 3e 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 | >.=>.{.............<span.clas |
| 69060 | 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 6f 6d 70 69 6c 65 45 72 72 6f 72 3c 2f 73 | s="tok-builtin">@compileError</s |
| 69080 | 70 61 6e 3e 28 3c 73 70 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">" |
| 690a0 | 3b 55 6e 61 62 6c 65 20 74 6f 20 70 72 69 6e 74 20 74 79 70 65 20 27 26 71 75 6f 74 3b 3c 2f 73 | ;Unable.to.print.type.'"</s |
| 690c0 | 70 61 6e 3e 20 2b 2b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e | pan>.++.<span.class="tok-builtin |
| 690e0 | 22 3e 40 74 79 70 65 4e 61 6d 65 3c 2f 73 70 61 6e 3e 28 54 29 20 2b 2b 20 3c 73 70 61 6e 20 63 | ">@typeName</span>(T).++.<span.c |
| 69100 | 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 27 26 71 75 6f 74 3b 3c 2f 73 70 | lass="tok-str">"'"</sp |
| 69120 | 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 6f 64 65 3e 3c | an>);.........},.....}.}</code>< |
| 69140 | 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 41 6e 64 20 6e 6f 77 2c 20 77 | /pre>.......<p>.......And.now,.w |
| 69160 | 68 61 74 20 68 61 70 70 65 6e 73 20 69 66 20 77 65 20 67 69 76 65 20 74 6f 6f 20 6d 61 6e 79 20 | hat.happens.if.we.give.too.many. |
| 69180 | 61 72 67 75 6d 65 6e 74 73 20 74 6f 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 70 | arguments.to.<code.class="zig">p |
| 691a0 | 72 69 6e 74 66 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 | rintf</code>?.......</p>.......< |
| 691c0 | 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e | p.class="file">test.zig</p><pre> |
| 691e0 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | <code.class="zig"><span.class="t |
| 69200 | 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 61 | ok-kw">const</span>.print.=.<spa |
| 69220 | 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 |
| 69240 | 70 61 6e 3e 28 3c 73 70 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">" |
| 69260 | 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 0a | ;std"</span>).debug.print;. |
| 69280 | 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 |
| 692a0 | 6e 3e 20 61 5f 6e 75 6d 62 65 72 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | n>.a_number:.<span.class="tok-ty |
| 692c0 | 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 |
| 692e0 | 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 | k-number">1234</span>;.<span.cla |
| 69300 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 5f 73 74 72 69 6e | ss="tok-kw">const</span>.a_strin |
| 69320 | 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 6f 74 3b | g.=.<span.class="tok-str">" |
| 69340 | 66 6f 6f 62 61 72 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 | foobar"</span>;..<span.clas |
| 69360 | 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 |
| 69380 | 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 70 72 69 6e 74 66 20 74 6f 6f 20 6d 61 | ss="tok-str">"printf.too.ma |
| 693a0 | 6e 79 20 61 72 67 75 6d 65 6e 74 73 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 | ny.arguments"</span>.{..... |
| 693c0 | 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 |
| 693e0 | 74 3b 68 65 72 65 20 69 73 20 61 20 73 74 72 69 6e 67 3a 20 27 7b 7d 27 20 68 65 72 65 20 69 73 | t;here.is.a.string:.'{}'.here.is |
| 69400 | 20 61 20 6e 75 6d 62 65 72 3a 20 7b 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b | .a.number:.{}\n"</span>,..{ |
| 69420 | 0a 20 20 20 20 20 20 20 20 61 5f 73 74 72 69 6e 67 2c 0a 20 20 20 20 20 20 20 20 61 5f 6e 75 6d | .........a_string,.........a_num |
| 69440 | 62 65 72 2c 0a 20 20 20 20 20 20 20 20 61 5f 6e 75 6d 62 65 72 2c 0a 20 20 20 20 7d 29 3b 0a 7d | ber,.........a_number,.....});.} |
| 69460 | 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 | </code></pre><pre><code.class="s |
| 69480 | 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 3c 73 70 61 6e 20 | hell">$.zig.test.test.zig.<span. |
| 694a0 | 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 6c 69 62 2f 73 74 64 2f 66 6d 74 2e 7a 69 67 3a 33 | class="t0_1">./lib/std/fmt.zig:3 |
| 694c0 | 31 35 3a 31 33 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 31 5f 31 | 15:13:.</span><span.class="t31_1 |
| 694e0 | 22 3e 65 72 72 6f 72 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f | ">error:.</span><span.class="t0_ |
| 69500 | 31 22 3e 55 6e 75 73 65 64 20 61 72 67 75 6d 65 6e 74 73 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 | 1">Unused.arguments</span>...... |
| 69520 | 20 20 20 20 20 20 20 40 63 6f 6d 70 69 6c 65 45 72 72 6f 72 28 26 71 75 6f 74 3b 55 6e 75 73 65 | .......@compileError("Unuse |
| 69540 | 64 20 61 72 67 75 6d 65 6e 74 73 26 71 75 6f 74 3b 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 | d.arguments");............. |
| 69560 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 | <span.class="t32_1">^</span>.<sp |
| 69580 | 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 6c 69 62 2f 73 74 64 2f 69 6f 2f 77 72 69 | an.class="t0_1">./lib/std/io/wri |
| 695a0 | 74 65 72 2e 7a 69 67 3a 33 33 3a 33 34 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 | ter.zig:33:34:.</span><span.clas |
| 695c0 | 73 3d 22 74 33 36 5f 31 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 | s="t36_1">note:.</span><span.cla |
| 695e0 | 73 73 3d 22 74 30 5f 31 22 3e 63 61 6c 6c 65 64 20 66 72 6f 6d 20 68 65 72 65 3c 2f 73 70 61 6e | ss="t0_1">called.from.here</span |
| 69600 | 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 73 74 64 2e 66 6d 74 2e 66 6f 72 | >.............return.std.fmt.for |
| 69620 | 6d 61 74 28 73 65 6c 66 2c 20 66 6f 72 6d 61 74 2c 20 61 72 67 73 29 3b 0a 20 20 20 20 20 20 20 | mat(self,.format,.args);........ |
| 69640 | 20 20 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. |
| 69660 | 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 | class="t32_1">^</span>.<span.cla |
| 69680 | 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 6c 69 62 2f 73 74 64 2f 64 65 62 75 67 2e 7a 69 67 3a 36 37 | ss="t0_1">./lib/std/debug.zig:67 |
| 696a0 | 3a 32 37 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 36 5f 31 22 3e | :27:.</span><span.class="t36_1"> |
| 696c0 | 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e | note:.</span><span.class="t0_1"> |
| 696e0 | 63 61 6c 6c 65 64 20 66 72 6f 6d 20 68 65 72 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 6e 6f 73 75 | called.from.here</span>.....nosu |
| 69700 | 73 70 65 6e 64 20 73 74 64 65 72 72 2e 70 72 69 6e 74 28 66 6d 74 2c 20 61 72 67 73 29 20 63 61 | spend.stderr.print(fmt,.args).ca |
| 69720 | 74 63 68 20 72 65 74 75 72 6e 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | tch.return;..................... |
| 69740 | 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 | ......<span.class="t32_1">^</spa |
| 69760 | 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 | n>.<span.class="t0_1">./docgen_t |
| 69780 | 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 37 3a 31 30 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 | mp/test.zig:7:10:.</span><span.c |
| 697a0 | 6c 61 73 73 3d 22 74 33 36 5f 31 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 | lass="t36_1">note:.</span><span. |
| 697c0 | 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 63 61 6c 6c 65 64 20 66 72 6f 6d 20 68 65 72 65 3c 2f 73 | class="t0_1">called.from.here</s |
| 697e0 | 70 61 6e 3e 0a 20 20 20 20 70 72 69 6e 74 28 26 71 75 6f 74 3b 68 65 72 65 20 69 73 20 61 20 73 | pan>.....print("here.is.a.s |
| 69800 | 74 72 69 6e 67 3a 20 27 7b 7d 27 20 68 65 72 65 20 69 73 20 61 20 6e 75 6d 62 65 72 3a 20 7b 7d | tring:.'{}'.here.is.a.number:.{} |
| 69820 | 5c 6e 26 71 75 6f 74 3b 2c 20 2e 7b 0a 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | \n",..{..........<span.clas |
| 69840 | 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | s="t32_1">^</span>.<span.class=" |
| 69860 | 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 36 3a 33 34 | t0_1">./docgen_tmp/test.zig:6:34 |
| 69880 | 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 36 5f 31 22 3e 6e 6f 74 | :.</span><span.class="t36_1">not |
| 698a0 | 65 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 63 61 6c | e:.</span><span.class="t0_1">cal |
| 698c0 | 6c 65 64 20 66 72 6f 6d 20 68 65 72 65 3c 2f 73 70 61 6e 3e 0a 74 65 73 74 20 26 71 75 6f 74 3b | led.from.here</span>.test." |
| 698e0 | 70 72 69 6e 74 66 20 74 6f 6f 20 6d 61 6e 79 20 61 72 67 75 6d 65 6e 74 73 26 71 75 6f 74 3b 20 | printf.too.many.arguments". |
| 69900 | 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | {............................... |
| 69920 | 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a | ...<span.class="t32_1">^</span>. |
| 69940 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 6c 69 62 2f 73 74 64 2f 69 6f 2f | <span.class="t0_1">./lib/std/io/ |
| 69960 | 77 72 69 74 65 72 2e 7a 69 67 3a 33 33 3a 33 34 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 | writer.zig:33:34:.</span><span.c |
| 69980 | 6c 61 73 73 3d 22 74 33 31 5f 31 22 3e 65 72 72 6f 72 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e | lass="t31_1">error:.</span><span |
| 699a0 | 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 65 78 70 65 63 74 65 64 20 74 79 70 65 20 27 73 74 64 | .class="t0_1">expected.type.'std |
| 699c0 | 2e 6f 73 2e 57 72 69 74 65 45 72 72 6f 72 21 76 6f 69 64 27 2c 20 66 6f 75 6e 64 20 27 40 74 79 | .os.WriteError!void',.found.'@ty |
| 699e0 | 70 65 49 6e 66 6f 28 40 74 79 70 65 49 6e 66 6f 28 40 54 79 70 65 4f 66 28 73 74 64 2e 66 6d 74 | peInfo(@typeInfo(@TypeOf(std.fmt |
| 69a00 | 2e 66 6f 72 6d 61 74 29 29 2e 46 6e 2e 72 65 74 75 72 6e 5f 74 79 70 65 2e 3f 29 2e 45 72 72 6f | .format)).Fn.return_type.?).Erro |
| 69a20 | 72 55 6e 69 6f 6e 2e 65 72 72 6f 72 5f 73 65 74 21 76 6f 69 64 27 3c 2f 73 70 61 6e 3e 0a 20 20 | rUnion.error_set!void'</span>... |
| 69a40 | 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 73 74 64 2e 66 6d 74 2e 66 6f 72 6d 61 74 28 | ..........return.std.fmt.format( |
| 69a60 | 73 65 6c 66 2c 20 66 6f 72 6d 61 74 2c 20 61 72 67 73 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 | self,.format,.args);............ |
| 69a80 | 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 |
| 69aa0 | 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | s="t32_1">^</span>.<span.class=" |
| 69ac0 | 74 30 5f 31 22 3e 2e 2f 6c 69 62 2f 73 74 64 2f 64 65 62 75 67 2e 7a 69 67 3a 36 37 3a 32 37 3a | t0_1">./lib/std/debug.zig:67:27: |
| 69ae0 | 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 36 5f 31 22 3e 6e 6f 74 65 | .</span><span.class="t36_1">note |
| 69b00 | 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 63 61 6c 6c | :.</span><span.class="t0_1">call |
| 69b20 | 65 64 20 66 72 6f 6d 20 68 65 72 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 6e 6f 73 75 73 70 65 6e | ed.from.here</span>.....nosuspen |
| 69b40 | 64 20 73 74 64 65 72 72 2e 70 72 69 6e 74 28 66 6d 74 2c 20 61 72 67 73 29 20 63 61 74 63 68 20 | d.stderr.print(fmt,.args).catch. |
| 69b60 | 72 65 74 75 72 6e 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 | return;......................... |
| 69b80 | 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c | ..<span.class="t32_1">^</span>.< |
| 69ba0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 | span.class="t0_1">./docgen_tmp/t |
| 69bc0 | 65 73 74 2e 7a 69 67 3a 37 3a 31 30 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | est.zig:7:10:.</span><span.class |
| 69be0 | 3d 22 74 33 36 5f 31 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 | ="t36_1">note:.</span><span.clas |
| 69c00 | 73 3d 22 74 30 5f 31 22 3e 63 61 6c 6c 65 64 20 66 72 6f 6d 20 68 65 72 65 3c 2f 73 70 61 6e 3e | s="t0_1">called.from.here</span> |
| 69c20 | 0a 20 20 20 20 70 72 69 6e 74 28 26 71 75 6f 74 3b 68 65 72 65 20 69 73 20 61 20 73 74 72 69 6e | .....print("here.is.a.strin |
| 69c40 | 67 3a 20 27 7b 7d 27 20 68 65 72 65 20 69 73 20 61 20 6e 75 6d 62 65 72 3a 20 7b 7d 5c 6e 26 71 | g:.'{}'.here.is.a.number:.{}\n&q |
| 69c60 | 75 6f 74 3b 2c 20 2e 7b 0a 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | uot;,..{..........<span.class="t |
| 69c80 | 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 | 32_1">^</span>.<span.class="t0_1 |
| 69ca0 | 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 36 3a 33 34 3a 20 3c 2f | ">./docgen_tmp/test.zig:6:34:.</ |
| 69cc0 | 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 36 5f 31 22 3e 6e 6f 74 65 3a 20 3c | span><span.class="t36_1">note:.< |
| 69ce0 | 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 63 61 6c 6c 65 64 20 | /span><span.class="t0_1">called. |
| 69d00 | 66 72 6f 6d 20 68 65 72 65 3c 2f 73 70 61 6e 3e 0a 74 65 73 74 20 26 71 75 6f 74 3b 70 72 69 6e | from.here</span>.test."prin |
| 69d20 | 74 66 20 74 6f 6f 20 6d 61 6e 79 20 61 72 67 75 6d 65 6e 74 73 26 71 75 6f 74 3b 20 7b 0a 20 20 | tf.too.many.arguments".{... |
| 69d40 | 20 20 20 20 20 20 20 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 | ...............................< |
| 69d60 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 | span.class="t32_1">^</span>.<spa |
| 69d80 | 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 6c 69 62 2f 73 74 64 2f 69 6f 2f 77 72 69 74 | n.class="t0_1">./lib/std/io/writ |
| 69da0 | 65 72 2e 7a 69 67 3a 33 33 3a 33 34 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | er.zig:33:34:.</span><span.class |
| 69dc0 | 3d 22 74 33 36 5f 31 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 | ="t36_1">note:.</span><span.clas |
| 69de0 | 73 3d 22 74 30 5f 31 22 3e 65 72 72 6f 72 20 73 65 74 20 27 40 74 79 70 65 49 6e 66 6f 28 40 74 | s="t0_1">error.set.'@typeInfo(@t |
| 69e00 | 79 70 65 49 6e 66 6f 28 40 54 79 70 65 4f 66 28 73 74 64 2e 66 6d 74 2e 66 6f 72 6d 61 74 29 29 | ypeInfo(@TypeOf(std.fmt.format)) |
| 69e20 | 2e 46 6e 2e 72 65 74 75 72 6e 5f 74 79 70 65 2e 3f 29 2e 45 72 72 6f 72 55 6e 69 6f 6e 2e 65 72 | .Fn.return_type.?).ErrorUnion.er |
| 69e40 | 72 6f 72 5f 73 65 74 27 20 63 61 6e 6e 6f 74 20 63 61 73 74 20 69 6e 74 6f 20 65 72 72 6f 72 20 | ror_set'.cannot.cast.into.error. |
| 69e60 | 73 65 74 20 27 73 74 64 2e 6f 73 2e 57 72 69 74 65 45 72 72 6f 72 27 3c 2f 73 70 61 6e 3e 0a 20 | set.'std.os.WriteError'</span>.. |
| 69e80 | 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 73 74 64 2e 66 6d 74 2e 66 6f 72 6d 61 74 | ...........return.std.fmt.format |
| 69ea0 | 28 73 65 6c 66 2c 20 66 6f 72 6d 61 74 2c 20 61 72 67 73 29 3b 0a 20 20 20 20 20 20 20 20 20 20 | (self,.format,.args);........... |
| 69ec0 | 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 |
| 69ee0 | 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 | ss="t32_1">^</span>.</code></pre |
| 69f00 | 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 5a 69 67 20 67 69 76 65 73 20 70 72 6f | >........<p>.......Zig.gives.pro |
| 69f20 | 67 72 61 6d 6d 65 72 73 20 74 68 65 20 74 6f 6f 6c 73 20 6e 65 65 64 65 64 20 74 6f 20 70 72 6f | grammers.the.tools.needed.to.pro |
| 69f40 | 74 65 63 74 20 74 68 65 6d 73 65 6c 76 65 73 20 61 67 61 69 6e 73 74 20 74 68 65 69 72 20 6f 77 | tect.themselves.against.their.ow |
| 69f60 | 6e 20 6d 69 73 74 61 6b 65 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e | n.mistakes........</p>.......<p> |
| 69f80 | 0a 20 20 20 20 20 20 5a 69 67 20 64 6f 65 73 6e 27 74 20 63 61 72 65 20 77 68 65 74 68 65 72 20 | .......Zig.doesn't.care.whether. |
| 69fa0 | 74 68 65 20 66 6f 72 6d 61 74 20 61 72 67 75 6d 65 6e 74 20 69 73 20 61 20 73 74 72 69 6e 67 20 | the.format.argument.is.a.string. |
| 69fc0 | 6c 69 74 65 72 61 6c 2c 0a 20 20 20 20 20 20 6f 6e 6c 79 20 74 68 61 74 20 69 74 20 69 73 20 61 | literal,.......only.that.it.is.a |
| 69fe0 | 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 6b 6e 6f 77 6e 20 76 61 6c 75 65 20 74 68 61 74 20 63 | .compile-time.known.value.that.c |
| 6a000 | 61 6e 20 62 65 20 63 6f 65 72 63 65 64 20 74 6f 20 61 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | an.be.coerced.to.a.<code.class=" |
| 6a020 | 7a 69 67 22 3e 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 | zig">[]<span.class="tok-kw">cons |
| 6a040 | 74 3c 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"> |
| 6a060 | 75 38 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 | u8</span></code>:.......</p>.... |
| 6a080 | 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 70 72 69 6e 74 66 2e 7a 69 67 3c 2f 70 | ...<p.class="file">printf.zig</p |
| 6a0a0 | 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c | ><pre><code.class="zig"><span.cl |
| 6a0c0 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 70 72 69 6e 74 20 | ass="tok-kw">const</span>.print. |
| 6a0e0 | 3d 20 3c 73 70 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 |
| 6a100 | 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" |
| 6a120 | 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 64 65 62 75 67 2e 70 | >"std"</span>).debug.p |
| 6a140 | 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 63 6f 6e 73 | rint;..<span.class="tok-kw">cons |
| 6a160 | 74 3c 2f 73 70 61 6e 3e 20 61 5f 6e 75 6d 62 65 72 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | t</span>.a_number:.<span.class=" |
| 6a180 | 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 |
| 6a1a0 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 | ss="tok-number">1234</span>;.<sp |
| 6a1c0 | 61 6e 20 63 6c 61 73 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 |
| 6a1e0 | 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"> |
| 6a200 | 26 71 75 6f 74 3b 66 6f 6f 62 61 72 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e | "foobar"</span>;.<span |
| 6a220 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 66 6d 74 | .class="tok-kw">const</span>.fmt |
| 6a240 | 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 |
| 6a260 | 65 72 65 20 69 73 20 61 20 73 74 72 69 6e 67 3a 20 27 7b 7d 27 20 68 65 72 65 20 69 73 20 61 20 | ere.is.a.string:.'{}'.here.is.a. |
| 6a280 | 6e 75 6d 62 65 72 3a 20 7b 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 3b 0a 0a 3c 73 70 61 | number:.{}\n"</span>;..<spa |
| 6a2a0 | 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 |
| 6a2c0 | 6e 20 63 6c 61 73 73 3d 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 |
| 6a2e0 | 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 |
| 6a300 | 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> |
| 6a320 | 20 7b 0a 20 20 20 20 70 72 69 6e 74 28 66 6d 74 2c 20 2e 7b 61 5f 73 74 72 69 6e 67 2c 20 61 5f | .{.....print(fmt,..{a_string,.a_ |
| 6a340 | 6e 75 6d 62 65 72 7d 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f | number});.}</code></pre><pre><co |
| 6a360 | 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 | de.class="shell">$.zig.build-exe |
| 6a380 | 20 70 72 69 6e 74 66 2e 7a 69 67 0a 24 20 2e 2f 70 72 69 6e 74 66 0a 68 65 72 65 20 69 73 20 61 | .printf.zig.$../printf.here.is.a |
| 6a3a0 | 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 |
| 6a3c0 | 65 72 3a 20 31 32 33 34 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 | er:.1234.</code></pre>........<p |
| 6a3e0 | 3e 0a 20 20 20 20 20 20 54 68 69 73 20 77 6f 72 6b 73 20 66 69 6e 65 2e 0a 20 20 20 20 20 20 3c | >.......This.works.fine........< |
| 6a400 | 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 5a 69 67 20 64 6f 65 73 20 6e 6f 74 | /p>.......<p>.......Zig.does.not |
| 6a420 | 20 73 70 65 63 69 61 6c 20 63 61 73 65 20 73 74 72 69 6e 67 20 66 6f 72 6d 61 74 74 69 6e 67 20 | .special.case.string.formatting. |
| 6a440 | 69 6e 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 20 61 6e 64 20 69 6e 73 74 65 61 64 20 65 78 70 6f | in.the.compiler.and.instead.expo |
| 6a460 | 73 65 73 20 65 6e 6f 75 67 68 20 70 6f 77 65 72 20 74 6f 20 61 63 63 6f 6d 70 6c 69 73 68 20 74 | ses.enough.power.to.accomplish.t |
| 6a480 | 68 69 73 0a 20 20 20 20 20 20 74 61 73 6b 20 69 6e 20 75 73 65 72 6c 61 6e 64 2e 20 49 74 20 64 | his.......task.in.userland..It.d |
| 6a4a0 | 6f 65 73 20 73 6f 20 77 69 74 68 6f 75 74 20 69 6e 74 72 6f 64 75 63 69 6e 67 20 61 6e 6f 74 68 | oes.so.without.introducing.anoth |
| 6a4c0 | 65 72 20 6c 61 6e 67 75 61 67 65 20 6f 6e 20 74 6f 70 20 6f 66 20 5a 69 67 2c 20 73 75 63 68 20 | er.language.on.top.of.Zig,.such. |
| 6a4e0 | 61 73 0a 20 20 20 20 20 20 61 20 6d 61 63 72 6f 20 6c 61 6e 67 75 61 67 65 20 6f 72 20 61 20 70 | as.......a.macro.language.or.a.p |
| 6a500 | 72 65 70 72 6f 63 65 73 73 6f 72 20 6c 61 6e 67 75 61 67 65 2e 20 49 74 27 73 20 5a 69 67 20 61 | reprocessor.language..It's.Zig.a |
| 6a520 | 6c 6c 20 74 68 65 20 77 61 79 20 64 6f 77 6e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 | ll.the.way.down........</p>..... |
| 6a540 | 20 20 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c | .........<p>See.also:</p><ul>.<l |
| 6a560 | 69 3e 3c 61 20 68 72 65 66 3d 22 23 69 6e 6c 69 6e 65 2d 77 68 69 6c 65 22 3e 69 6e 6c 69 6e 65 | i><a.href="#inline-while">inline |
| 6a580 | 20 77 68 69 6c 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 69 6e | .while</a></li>.<li><a.href="#in |
| 6a5a0 | 6c 69 6e 65 2d 66 6f 72 22 3e 69 6e 6c 69 6e 65 20 66 6f 72 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f | line-for">inline.for</a></li>.</ |
| 6a5c0 | 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 31 20 69 64 3d 22 41 73 73 65 6d 62 | ul>...............<h1.id="Assemb |
| 6a5e0 | 6c 79 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 41 73 73 65 6d 62 6c 79 22 3e 41 73 73 65 | ly"><a.href="#toc-Assembly">Asse |
| 6a600 | 6d 62 6c 79 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 41 | mbly</a>.<a.class="hdr".href="#A |
| 6a620 | 73 73 65 6d 62 6c 79 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 31 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a | ssembly">..</a></h1>........<p>. |
| 6a640 | 20 20 20 20 20 20 46 6f 72 20 73 6f 6d 65 20 75 73 65 20 63 61 73 65 73 2c 20 69 74 20 6d 61 79 | ......For.some.use.cases,.it.may |
| 6a660 | 20 62 65 20 6e 65 63 65 73 73 61 72 79 20 74 6f 20 64 69 72 65 63 74 6c 79 20 63 6f 6e 74 72 6f | .be.necessary.to.directly.contro |
| 6a680 | 6c 20 74 68 65 20 6d 61 63 68 69 6e 65 20 63 6f 64 65 20 67 65 6e 65 72 61 74 65 64 0a 20 20 20 | l.the.machine.code.generated.... |
| 6a6a0 | 20 20 20 62 79 20 5a 69 67 20 70 72 6f 67 72 61 6d 73 2c 20 72 61 74 68 65 72 20 74 68 61 6e 20 | ...by.Zig.programs,.rather.than. |
| 6a6c0 | 72 65 6c 79 69 6e 67 20 6f 6e 20 5a 69 67 27 73 20 63 6f 64 65 20 67 65 6e 65 72 61 74 69 6f 6e | relying.on.Zig's.code.generation |
| 6a6e0 | 2e 20 46 6f 72 20 74 68 65 73 65 20 63 61 73 65 73 2c 20 6f 6e 65 0a 20 20 20 20 20 20 63 61 6e | ..For.these.cases,.one.......can |
| 6a700 | 20 75 73 65 20 69 6e 6c 69 6e 65 20 61 73 73 65 6d 62 6c 79 2e 20 48 65 72 65 20 69 73 20 61 6e | .use.inline.assembly..Here.is.an |
| 6a720 | 20 65 78 61 6d 70 6c 65 20 6f 66 20 69 6d 70 6c 65 6d 65 6e 74 69 6e 67 20 48 65 6c 6c 6f 2c 20 | .example.of.implementing.Hello,. |
| 6a740 | 57 6f 72 6c 64 20 6f 6e 20 78 38 36 5f 36 34 20 4c 69 6e 75 78 0a 20 20 20 20 20 20 75 73 69 6e | World.on.x86_64.Linux.......usin |
| 6a760 | 67 20 69 6e 6c 69 6e 65 20 61 73 73 65 6d 62 6c 79 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 | g.inline.assembly:.......</p>... |
| 6a780 | 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e | ....<p.class="file">test.zig</p> |
| 6a7a0 | 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 | <pre><code.class="zig"><span.cla |
| 6a7c0 | 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 |
| 6a7e0 | 73 73 3d 22 74 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 |
| 6a800 | 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 |
| 6a820 | 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 20 | lass="tok-type">noreturn</span>. |
| 6a840 | 7b 0a 20 20 20 20 3c 73 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 |
| 6a860 | 3c 2f 73 70 61 6e 3e 20 6d 73 67 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 | </span>.msg.=.<span.class="tok-s |
| 6a880 | 74 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 | tr">"hello.world\n"</s |
| 6a8a0 | 70 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 | pan>;....._.=.syscall3(SYS_write |
| 6a8c0 | 2c 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 | ,.STDOUT_FILENO,.<span.class="to |
| 6a8e0 | 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 70 74 72 54 6f 49 6e 74 3c 2f 73 70 61 6e 3e 28 6d 73 67 29 | k-builtin">@ptrToInt</span>(msg) |
| 6a900 | 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 53 | ,.msg.len);....._.=.syscall1(SYS |
| 6a920 | 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 3e | _exit,.<span.class="tok-number"> |
| 6a940 | 30 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | 0</span>);.....<span.class="tok- |
| 6a960 | 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 6e | kw">unreachable</span>;.}..<span |
| 6a980 | 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 |
| 6a9a0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 53 59 53 | .class="tok-kw">const</span>.SYS |
| 6a9c0 | 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 72 | _write.=.<span.class="tok-number |
| 6a9e0 | 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 22 | ">1</span>;.<span.class="tok-kw" |
| 6aa00 | 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" |
| 6aa20 | 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 63 | >const</span>.SYS_exit.=.<span.c |
| 6aa40 | 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 73 | lass="tok-number">60</span>;..<s |
| 6aa60 | 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 |
| 6aa80 | 70 61 6e 20 63 6c 61 73 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>. |
| 6aaa0 | 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 6b | STDOUT_FILENO.=.<span.class="tok |
| 6aac0 | 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 3d | -number">1</span>;..<span.class= |
| 6aae0 | 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= |
| 6ab00 | 22 74 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=" |
| 6ab20 | 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 20 | tok-fn">syscall1</span>(number:. |
| 6ab40 | 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 |
| 6ab60 | 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 65 | an>,.arg1:.<span.class="tok-type |
| 6ab80 | 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ">usize</span>).<span.class="tok |
| 6aba0 | 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 | -type">usize</span>.{.....<span. |
| 6abc0 | 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 |
| 6abe0 | 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 70 | an.class="tok-kw">asm</span>.<sp |
| 6ac00 | 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 6e | an.class="tok-kw">volatile</span |
| 6ac20 | 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 73 | >.(<span.class="tok-str">"s |
| 6ac40 | 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 72 | yscall"</span>.........:.[r |
| 6ac60 | 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 3b | et].<span.class="tok-str">" |
| 6ac80 | 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 6e | ={rax}"</span>.(->.<span |
| 6aca0 | 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 0a | .class="tok-type">usize</span>). |
| 6acc0 | 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 3d 22 | ........:.[number].<span.class=" |
| 6ace0 | 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 61 6e | tok-str">"{rax}"</span |
| 6ad00 | 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 73 70 | >.(number),...........[arg1].<sp |
| 6ad20 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 7b 72 64 69 7d 26 71 | an.class="tok-str">"{rdi}&q |
| 6ad40 | 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 28 61 72 67 31 29 0a 20 20 20 20 20 20 20 20 3a 20 3c 73 70 | uot;</span>.(arg1).........:.<sp |
| 6ad60 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 72 63 78 26 71 75 6f | an.class="tok-str">"rcx&quo |
| 6ad80 | 74 3b 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 | t;</span>,.<span.class="tok-str" |
| 6ada0 | 3e 26 71 75 6f 74 3b 72 31 31 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 29 3b 0a 7d | >"r11"</span>.....);.} |
| 6adc0 | 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 |
| 6ade0 | 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> |
| 6ae00 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 73 79 73 63 61 6c 6c 33 3c 2f | .<span.class="tok-fn">syscall3</ |
| 6ae20 | 73 70 61 6e 3e 28 6e 75 6d 62 65 72 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | span>(number:.<span.class="tok-t |
| 6ae40 | 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 2c 20 61 72 67 31 3a 20 3c 73 70 61 6e 20 63 | ype">usize</span>,.arg1:.<span.c |
| 6ae60 | 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 2c 20 61 72 | lass="tok-type">usize</span>,.ar |
| 6ae80 | 67 32 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 | g2:.<span.class="tok-type">usize |
| 6aea0 | 3c 2f 73 70 61 6e 3e 2c 20 61 72 67 33 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | </span>,.arg3:.<span.class="tok- |
| 6aec0 | 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= |
| 6aee0 | 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 |
| 6af00 | 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> |
| 6af20 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 73 6d 3c 2f 73 70 61 6e 3e | .<span.class="tok-kw">asm</span> |
| 6af40 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 6f 6c 61 74 69 6c 65 3c 2f | .<span.class="tok-kw">volatile</ |
| 6af60 | 73 70 61 6e 3e 20 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 | span>.(<span.class="tok-str">&qu |
| 6af80 | 6f 74 3b 73 79 73 63 61 6c 6c 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 | ot;syscall"</span>......... |
| 6afa0 | 3a 20 5b 72 65 74 5d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 | :.[ret].<span.class="tok-str">&q |
| 6afc0 | 75 6f 74 3b 3d 7b 72 61 78 7d 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 28 2d 26 67 74 3b 20 3c | uot;={rax}"</span>.(->.< |
| 6afe0 | 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 |
| 6b000 | 6e 3e 29 0a 20 20 20 20 20 20 20 20 3a 20 5b 6e 75 6d 62 65 72 5d 20 3c 73 70 61 6e 20 63 6c 61 | n>).........:.[number].<span.cla |
| 6b020 | 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 7b 72 61 78 7d 26 71 75 6f 74 3b 3c 2f | ss="tok-str">"{rax}"</ |
| 6b040 | 73 70 61 6e 3e 20 28 6e 75 6d 62 65 72 29 2c 0a 20 20 20 20 20 20 20 20 20 20 5b 61 72 67 31 5d | span>.(number),...........[arg1] |
| 6b060 | 20 3c 73 70 61 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 | .<span.class="tok-str">"{rd |
| 6b080 | 69 7d 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 28 61 72 67 31 29 2c 0a 20 20 20 20 20 20 20 20 | i}"</span>.(arg1),......... |
| 6b0a0 | 20 20 5b 61 72 67 32 5d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 | ..[arg2].<span.class="tok-str">& |
| 6b0c0 | 71 75 6f 74 3b 7b 72 73 69 7d 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 28 61 72 67 32 29 2c 0a | quot;{rsi}"</span>.(arg2),. |
| 6b0e0 | 20 20 20 20 20 20 20 20 20 20 5b 61 72 67 33 5d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ..........[arg3].<span.class="to |
| 6b100 | 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 7b 72 64 78 7d 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 | k-str">"{rdx}"</span>. |
| 6b120 | 28 61 72 67 33 29 0a 20 20 20 20 20 20 20 20 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | (arg3).........:.<span.class="to |
| 6b140 | 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 72 63 78 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 3c | k-str">"rcx"</span>,.< |
| 6b160 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 72 31 31 26 71 | span.class="tok-str">"r11&q |
| 6b180 | 75 6f 74 3b 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 | uot;</span>.....);.}</code></pre |
| 6b1a0 | 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 | ><pre><code.class="shell">$.zig. |
| 6b1c0 | 62 75 69 6c 64 2d 65 78 65 20 74 65 73 74 2e 7a 69 67 20 2d 74 61 72 67 65 74 20 78 38 36 5f 36 | build-exe.test.zig.-target.x86_6 |
| 6b1e0 | 34 2d 6c 69 6e 75 78 0a 24 20 2e 2f 74 65 73 74 0a 68 65 6c 6c 6f 20 77 6f 72 6c 64 0a 3c 2f 63 | 4-linux.$../test.hello.world.</c |
| 6b200 | 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 44 69 73 73 | ode></pre>........<p>.......Diss |
| 6b220 | 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 20 | ecting.the.syntax:.......</p>... |
| 6b240 | 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e | ....<pre><code.class="zig"><span |
| 6b260 | 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 65 20 61 | .class="tok-comment">//.Inline.a |
| 6b280 | 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 68 20 72 | ssembly.is.an.expression.which.r |
| 6b2a0 | 65 74 75 72 6e 73 20 61 20 76 61 6c 75 65 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 | eturns.a.value.</span>.<span.cla |
| 6b2c0 | 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 61 73 6d 60 20 6b 65 | ss="tok-comment">//.the.`asm`.ke |
| 6b2e0 | 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 6f 6e 2e 3c 2f 73 70 | yword.begins.the.expression.</sp |
| 6b300 | 61 6e 3e 0a 5f 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 73 6d | an>._.=.<span.class="tok-kw">asm |
| 6b320 | 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 |
| 6b340 | 22 3e 2f 2f 20 60 76 6f 6c 61 74 69 6c 65 60 20 69 73 20 61 6e 20 6f 70 74 69 6f 6e 61 6c 20 6d | ">//.`volatile`.is.an.optional.m |
| 6b360 | 6f 64 69 66 69 65 72 20 74 68 61 74 20 74 65 6c 6c 73 20 5a 69 67 20 74 68 69 73 3c 2f 73 70 61 | odifier.that.tells.Zig.this</spa |
| 6b380 | 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">//. |
| 6b3a0 | 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 68 61 73 20 73 | inline.assembly.expression.has.s |
| 6b3c0 | 69 64 65 2d 65 66 66 65 63 74 73 2e 20 57 69 74 68 6f 75 74 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 | ide-effects..Without</span>.<spa |
| 6b3e0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 60 76 6f 6c 61 74 69 | n.class="tok-comment">//.`volati |
| 6b400 | 6c 65 60 2c 20 5a 69 67 20 69 73 20 61 6c 6c 6f 77 65 64 20 74 6f 20 64 65 6c 65 74 65 20 74 68 | le`,.Zig.is.allowed.to.delete.th |
| 6b420 | 65 20 69 6e 6c 69 6e 65 20 61 73 73 65 6d 62 6c 79 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 | e.inline.assembly</span>.<span.c |
| 6b440 | 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 63 6f 64 65 20 69 66 20 74 68 | lass="tok-comment">//.code.if.th |
| 6b460 | 65 20 72 65 73 75 6c 74 20 69 73 20 75 6e 75 73 65 64 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e | e.result.is.unused.</span>.<span |
| 6b480 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 6f 6c 61 74 69 6c 65 3c 2f 73 70 61 6e 3e 20 | .class="tok-kw">volatile</span>. |
| 6b4a0 | 28 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 4e | (.<span.class="tok-comment">//.N |
| 6b4c0 | 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 20 69 | ext.is.a.comptime.string.which.i |
| 6b4e0 | 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 3c 73 70 61 | s.the.assembly.code.</span>.<spa |
| 6b500 | 6e 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 73 69 64 65 20 | n.class="tok-comment">//.Inside. |
| 6b520 | 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 5b 72 65 74 5d 60 | this.string.one.may.use.`%[ret]` |
| 6b540 | 2c 20 60 25 5b 6e 75 6d 62 65 72 5d 60 2c 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 | ,.`%[number]`,</span>.<span.clas |
| 6b560 | 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 6f 72 20 60 25 5b 61 72 67 31 5d 60 20 | s="tok-comment">//.or.`%[arg1]`. |
| 6b580 | 77 68 65 72 65 20 61 20 72 65 67 69 73 74 65 72 20 69 73 20 65 78 70 65 63 74 65 64 2c 20 74 6f | where.a.register.is.expected,.to |
| 6b5a0 | 20 73 70 65 63 69 66 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 | .specify</span>.<span.class="tok |
| 6b5c0 | 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 74 68 65 20 72 65 67 69 73 74 65 72 20 74 68 61 74 20 5a | -comment">//.the.register.that.Z |
| 6b5e0 | 69 67 20 75 73 65 73 20 66 6f 72 20 74 68 65 20 61 72 67 75 6d 65 6e 74 20 6f 72 20 72 65 74 75 | ig.uses.for.the.argument.or.retu |
| 6b600 | 72 6e 20 76 61 6c 75 65 2c 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | rn.value,</span>.<span.class="to |
| 6b620 | 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 69 66 20 74 68 65 20 72 65 67 69 73 74 65 72 20 63 6f | k-comment">//.if.the.register.co |
| 6b640 | 6e 73 74 72 61 69 6e 74 20 73 74 72 69 6e 67 73 20 61 72 65 20 75 73 65 64 2e 20 48 6f 77 65 76 | nstraint.strings.are.used..Howev |
| 6b660 | 65 72 20 69 6e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f | er.in</span>.<span.class="tok-co |
| 6b680 | 6d 6d 65 6e 74 22 3e 2f 2f 20 74 68 65 20 62 65 6c 6f 77 20 63 6f 64 65 2c 20 74 68 69 73 20 69 | mment">//.the.below.code,.this.i |
| 6b6a0 | 73 20 6e 6f 74 20 75 73 65 64 2e 20 41 20 6c 69 74 65 72 61 6c 20 60 25 60 20 63 61 6e 20 62 65 | s.not.used..A.literal.`%`.can.be |
| 6b6c0 | 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 |
| 6b6e0 | 22 3e 2f 2f 20 6f 62 74 61 69 6e 65 64 20 62 79 20 65 73 63 61 70 69 6e 67 20 69 74 20 77 69 74 | ">//.obtained.by.escaping.it.wit |
| 6b700 | 68 20 61 20 64 6f 75 62 6c 65 20 70 65 72 63 65 6e 74 3a 20 60 25 25 60 2e 3c 2f 73 70 61 6e 3e | h.a.double.percent:.`%%`.</span> |
| 6b720 | 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 4f 66 | .<span.class="tok-comment">//.Of |
| 6b740 | 74 65 6e 20 6d 75 6c 74 69 6c 69 6e 65 20 73 74 72 69 6e 67 20 73 79 6e 74 61 78 20 63 6f 6d 65 | ten.multiline.string.syntax.come |
| 6b760 | 73 20 69 6e 20 68 61 6e 64 79 20 68 65 72 65 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 | s.in.handy.here.</span>.....<spa |
| 6b780 | 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 0a 3c 2f 73 70 | n.class="tok-str">\\syscall.</sp |
| 6b7a0 | 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 | an><span.class="tok-comment">//. |
| 6b7c0 | 4e 65 78 74 20 69 73 20 74 68 65 20 6f 75 74 70 75 74 2e 20 49 74 20 69 73 20 70 6f 73 73 69 62 | Next.is.the.output..It.is.possib |
| 6b7e0 | 6c 65 20 69 6e 20 74 68 65 20 66 75 74 75 72 65 20 5a 69 67 20 77 69 6c 6c 3c 2f 73 70 61 6e 3e | le.in.the.future.Zig.will</span> |
| 6b800 | 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 73 75 | .<span.class="tok-comment">//.su |
| 6b820 | 70 70 6f 72 74 20 6d 75 6c 74 69 70 6c 65 20 6f 75 74 70 75 74 73 2c 20 64 65 70 65 6e 64 69 6e | pport.multiple.outputs,.dependin |
| 6b840 | 67 20 6f 6e 20 68 6f 77 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | g.on.how</span>.<span.class="tok |
| 6b860 | 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f | -comment">//.https://github.com/ |
| 6b880 | 7a 69 67 6c 61 6e 67 2f 7a 69 67 2f 69 73 73 75 65 73 2f 32 31 35 20 69 73 20 72 65 73 6f 6c 76 | ziglang/zig/issues/215.is.resolv |
| 6b8a0 | 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 63 6f 6d 6d | ed.</span>.<span.class="tok-comm |
| 6b8c0 | 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 65 20 | ent">//.It.is.allowed.for.there. |
| 6b8e0 | 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 65 3c | to.be.no.outputs,.in.which.case< |
| 6b900 | 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" |
| 6b920 | 3e 2f 2f 20 74 68 69 73 20 63 6f 6c 6f 6e 20 77 6f 75 6c 64 20 62 65 20 64 69 72 65 63 74 6c 79 | >//.this.colon.would.be.directly |
| 6b940 | 20 66 6f 6c 6c 6f 77 65 64 20 62 79 20 74 68 65 20 63 6f 6c 6f 6e 20 66 6f 72 20 74 68 65 20 69 | .followed.by.the.colon.for.the.i |
| 6b960 | 6e 70 75 74 73 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | nputs.</span>.....:.<span.class= |
| 6b980 | 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 69 73 20 73 70 65 63 69 66 69 65 73 20 | "tok-comment">//.This.specifies. |
| 6b9a0 | 74 68 65 20 6e 61 6d 65 20 74 6f 20 62 65 20 75 73 65 64 20 69 6e 20 60 25 5b 72 65 74 5d 60 20 | the.name.to.be.used.in.`%[ret]`. |
| 6b9c0 | 73 79 6e 74 61 78 20 69 6e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | syntax.in</span>.<span.class="to |
| 6b9e0 | 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 74 68 65 20 61 62 6f 76 65 20 61 73 73 65 6d 62 6c 79 | k-comment">//.the.above.assembly |
| 6ba00 | 20 73 74 72 69 6e 67 2e 20 54 68 69 73 20 65 78 61 6d 70 6c 65 20 64 6f 65 73 20 6e 6f 74 20 75 | .string..This.example.does.not.u |
| 6ba20 | 73 65 20 69 74 2c 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 | se.it,</span>.<span.class="tok-c |
| 6ba40 | 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 69 73 20 6d 61 6e | omment">//.but.the.syntax.is.man |
| 6ba60 | 64 61 74 6f 72 79 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 5b 72 65 74 5d 0a 3c 73 70 61 6e 20 63 | datory.</span>.....[ret].<span.c |
| 6ba80 | 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 4e 65 78 74 20 69 73 20 74 68 | lass="tok-comment">//.Next.is.th |
| 6baa0 | 65 20 6f 75 74 70 75 74 20 63 6f 6e 73 74 72 61 69 6e 74 20 73 74 72 69 6e 67 2e 20 54 68 69 73 | e.output.constraint.string..This |
| 6bac0 | 20 66 65 61 74 75 72 65 20 69 73 20 73 74 69 6c 6c 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 | .feature.is.still</span>.<span.c |
| 6bae0 | 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 |
| 6bb00 | 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 |
| 6bb20 | 43 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 | C.documentation</span>.<span.cla |
| 6bb40 | 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 6d 75 73 74 20 62 65 20 75 73 65 64 | ss="tok-comment">//.must.be.used |
| 6bb60 | 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 3c 2f 73 | .to.understand.the.semantics.</s |
| 6bb80 | 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">/ |
| 6bba0 | 2f 20 68 74 74 70 3a 2f 2f 72 65 6c 65 61 73 65 73 2e 6c 6c 76 6d 2e 6f 72 67 2f 31 30 2e 30 2e | /.http://releases.llvm.org/10.0. |
| 6bbc0 | 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 6d 2d 63 | 0/docs/LangRef.html#inline-asm-c |
| 6bbe0 | 6f 6e 73 74 72 61 69 6e 74 2d 73 74 72 69 6e 67 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c | onstraint-string</span>.<span.cl |
| 6bc00 | 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 63 63 | ass="tok-comment">//.https://gcc |
| 6bc20 | 2e 67 6e 75 2e 6f 72 67 2f 6f 6e 6c 69 6e 65 64 6f 63 73 2f 67 63 63 2f 45 78 74 65 6e 64 65 64 | .gnu.org/onlinedocs/gcc/Extended |
| 6bc40 | 2d 41 73 6d 2e 68 74 6d 6c 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | -Asm.html</span>.<span.class="to |
| 6bc60 | 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 49 6e 20 74 68 69 73 20 65 78 61 6d 70 6c 65 2c 20 74 | k-comment">//.In.this.example,.t |
| 6bc80 | 68 65 20 63 6f 6e 73 74 72 61 69 6e 74 20 73 74 72 69 6e 67 20 6d 65 61 6e 73 20 26 71 75 6f 74 | he.constraint.string.means." |
| 6bca0 | 3b 74 68 65 20 72 65 73 75 6c 74 20 76 61 6c 75 65 20 6f 66 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 | ;the.result.value.of</span>.<spa |
| 6bcc0 | 6e 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 69 73 20 69 6e | n.class="tok-comment">//.this.in |
| 6bce0 | 6c 69 6e 65 20 61 73 73 65 6d 62 6c 79 20 69 6e 73 74 72 75 63 74 69 6f 6e 20 69 73 20 77 68 61 | line.assembly.instruction.is.wha |
| 6bd00 | 74 65 76 65 72 20 69 73 20 69 6e 20 24 72 61 78 26 71 75 6f 74 3b 2e 3c 2f 73 70 61 6e 3e 0a 20 | tever.is.in.$rax".</span>.. |
| 6bd20 | 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 3d | ...<span.class="tok-str">"= |
| 6bd40 | 7b 72 61 78 7d 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | {rax}"</span>.<span.class=" |
| 6bd60 | 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 20 61 | tok-comment">//.Next.is.either.a |
| 6bd80 | 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 20 74 | .value.binding,.or.`->`.and.t |
| 6bda0 | 68 65 6e 20 61 20 74 79 70 65 2e 20 54 68 65 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 | hen.a.type..The</span>.<span.cla |
| 6bdc0 | 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 74 79 70 65 20 69 73 20 74 68 65 20 | ss="tok-comment">//.type.is.the. |
| 6bde0 | 72 65 73 75 6c 74 20 74 79 70 65 20 6f 66 20 74 68 65 20 69 6e 6c 69 6e 65 20 61 73 73 65 6d 62 | result.type.of.the.inline.assemb |
| 6be00 | 6c 79 20 65 78 70 72 65 73 73 69 6f 6e 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 | ly.expression.</span>.<span.clas |
| 6be20 | 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 49 66 20 69 74 20 69 73 20 61 20 76 61 | s="tok-comment">//.If.it.is.a.va |
| 6be40 | 6c 75 65 20 62 69 6e 64 69 6e 67 2c 20 74 68 65 6e 20 60 25 5b 72 65 74 5d 60 20 73 79 6e 74 61 | lue.binding,.then.`%[ret]`.synta |
| 6be60 | 78 20 77 6f 75 6c 64 20 62 65 20 75 73 65 64 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 | x.would.be.used</span>.<span.cla |
| 6be80 | 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. |
| 6bea0 | 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. |
| 6bec0 | 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 28 2d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | </span>.....(->.<span.class=" |
| 6bee0 | 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 29 0a 3c 73 70 61 6e 20 63 6c | tok-type">usize</span>).<span.cl |
| 6bf00 | 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 4e 65 78 74 20 69 73 20 74 68 65 | ass="tok-comment">//.Next.is.the |
| 6bf20 | 20 6c 69 73 74 20 6f 66 20 69 6e 70 75 74 73 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c | .list.of.inputs.</span>.<span.cl |
| 6bf40 | 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 65 20 63 6f 6e 73 74 72 61 | ass="tok-comment">//.The.constra |
| 6bf60 | 69 6e 74 20 66 6f 72 20 74 68 65 73 65 20 69 6e 70 75 74 73 20 6d 65 61 6e 73 2c 20 26 71 75 6f | int.for.these.inputs.means,.&quo |
| 6bf80 | 74 3b 77 68 65 6e 20 74 68 65 20 61 73 73 65 6d 62 6c 79 20 63 6f 64 65 20 69 73 3c 2f 73 70 61 | t;when.the.assembly.code.is</spa |
| 6bfa0 | 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">//. |
| 6bfc0 | 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 68 65 20 76 61 | executed,.$rax.shall.have.the.va |
| 6bfe0 | 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 61 6c 6c 20 68 | lue.of.`number`.and.$rdi.shall.h |
| 6c000 | 61 76 65 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d | ave</span>.<span.class="tok-comm |
| 6c020 | 65 6e 74 22 3e 2f 2f 20 74 68 65 20 76 61 6c 75 65 20 6f 66 20 60 61 72 67 31 60 26 71 75 6f 74 | ent">//.the.value.of.`arg1`" |
| 6c040 | 3b 2e 20 41 6e 79 20 6e 75 6d 62 65 72 20 6f 66 20 69 6e 70 75 74 20 70 61 72 61 6d 65 74 65 72 | ;..Any.number.of.input.parameter |
| 6c060 | 73 20 69 73 20 61 6c 6c 6f 77 65 64 2c 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | s.is.allowed,</span>.<span.class |
| 6c080 | 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 69 6e 63 6c 75 64 69 6e 67 20 6e 6f 6e 65 | ="tok-comment">//.including.none |
| 6c0a0 | 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3a 20 5b 6e 75 6d 62 65 72 5d 20 3c 73 70 61 6e 20 63 6c | .</span>.....:.[number].<span.cl |
| 6c0c0 | 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 7b 72 61 78 7d 26 71 75 6f 74 3b 3c | ass="tok-str">"{rax}"< |
| 6c0e0 | 2f 73 70 61 6e 3e 20 28 6e 75 6d 62 65 72 29 2c 0a 20 20 20 20 20 20 20 20 5b 61 72 67 31 5d 20 | /span>.(number),.........[arg1]. |
| 6c100 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 7b 72 64 69 | <span.class="tok-str">"{rdi |
| 6c120 | 7d 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 28 61 72 67 31 29 0a 3c 73 70 61 6e 20 63 6c 61 73 | }"</span>.(arg1).<span.clas |
| 6c140 | 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 4e 65 78 74 20 69 73 20 74 68 65 20 6c | s="tok-comment">//.Next.is.the.l |
| 6c160 | 69 73 74 20 6f 66 20 63 6c 6f 62 62 65 72 73 2e 20 54 68 65 73 65 20 64 65 63 6c 61 72 65 20 61 | ist.of.clobbers..These.declare.a |
| 6c180 | 20 73 65 74 20 6f 66 20 72 65 67 69 73 74 65 72 73 20 77 68 6f 73 65 3c 2f 73 70 61 6e 3e 0a 3c | .set.of.registers.whose</span>.< |
| 6c1a0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 76 61 6c 75 | span.class="tok-comment">//.valu |
| 6c1c0 | 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 20 74 68 65 20 | es.will.not.be.preserved.by.the. |
| 6c1e0 | 65 78 65 63 75 74 69 6f 6e 20 6f 66 20 74 68 69 73 20 61 73 73 65 6d 62 6c 79 20 63 6f 64 65 2e | execution.of.this.assembly.code. |
| 6c200 | 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 |
| 6c220 | 22 3e 2f 2f 20 54 68 65 73 65 20 64 6f 20 6e 6f 74 20 69 6e 63 6c 75 64 65 20 6f 75 74 70 75 74 | ">//.These.do.not.include.output |
| 6c240 | 20 6f 72 20 69 6e 70 75 74 20 72 65 67 69 73 74 65 72 73 2e 20 54 68 65 20 73 70 65 63 69 61 6c | .or.input.registers..The.special |
| 6c260 | 20 63 6c 6f 62 62 65 72 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | .clobber</span>.<span.class="tok |
| 6c280 | 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 76 61 6c 75 65 20 6f 66 20 26 71 75 6f 74 3b 6d 65 6d 6f | -comment">//.value.of."memo |
| 6c2a0 | 72 79 26 71 75 6f 74 3b 20 6d 65 61 6e 73 20 74 68 61 74 20 74 68 65 20 61 73 73 65 6d 62 6c 79 | ry".means.that.the.assembly |
| 6c2c0 | 20 77 72 69 74 65 73 20 74 6f 20 61 72 62 69 74 72 61 72 79 20 75 6e 64 65 63 6c 61 72 65 64 3c | .writes.to.arbitrary.undeclared< |
| 6c2e0 | 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" |
| 6c300 | 3e 2f 2f 20 6d 65 6d 6f 72 79 20 6c 6f 63 61 74 69 6f 6e 73 20 2d 20 6e 6f 74 20 6f 6e 6c 79 20 | >//.memory.locations.-.not.only. |
| 6c320 | 74 68 65 20 6d 65 6d 6f 72 79 20 70 6f 69 6e 74 65 64 20 74 6f 20 62 79 20 61 20 64 65 63 6c 61 | the.memory.pointed.to.by.a.decla |
| 6c340 | 72 65 64 20 69 6e 64 69 72 65 63 74 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | red.indirect</span>.<span.class= |
| 6c360 | 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 6f 75 74 70 75 74 2e 20 49 6e 20 74 68 69 73 | "tok-comment">//.output..In.this |
| 6c380 | 20 65 78 61 6d 70 6c 65 20 77 65 20 6c 69 73 74 20 24 72 63 78 20 61 6e 64 20 24 72 31 31 20 62 | .example.we.list.$rcx.and.$r11.b |
| 6c3a0 | 65 63 61 75 73 65 20 69 74 20 69 73 20 6b 6e 6f 77 6e 20 74 68 65 3c 2f 73 70 61 6e 3e 0a 3c 73 | ecause.it.is.known.the</span>.<s |
| 6c3c0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 6b 65 72 6e 65 | pan.class="tok-comment">//.kerne |
| 6c3e0 | 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 65 20 74 68 65 73 | l.syscall.does.not.preserve.thes |
| 6c400 | 65 20 72 65 67 69 73 74 65 72 73 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3a 20 3c 73 70 61 6e 20 | e.registers.</span>.....:.<span. |
| 6c420 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 72 63 78 26 71 75 6f 74 3b 3c | class="tok-str">"rcx"< |
| 6c440 | 2f 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 |
| 6c460 | 75 6f 74 3b 72 31 31 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 0a 29 3b 3c 2f 63 6f 64 65 3e 3c 2f | uot;r11"</span>.);</code></ |
| 6c480 | 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 46 6f 72 20 69 33 38 36 20 61 6e | pre>.......<p>.......For.i386.an |
| 6c4a0 | 64 20 78 38 36 5f 36 34 20 74 61 72 67 65 74 73 2c 20 74 68 65 20 73 79 6e 74 61 78 20 69 73 20 | d.x86_64.targets,.the.syntax.is. |
| 6c4c0 | 41 54 26 61 6d 70 3b 54 20 73 79 6e 74 61 78 2c 20 72 61 74 68 65 72 20 74 68 61 6e 20 74 68 65 | AT&T.syntax,.rather.than.the |
| 6c4e0 | 20 6d 6f 72 65 0a 20 20 20 20 20 20 70 6f 70 75 6c 61 72 20 49 6e 74 65 6c 20 73 79 6e 74 61 78 | .more.......popular.Intel.syntax |
| 6c500 | 2e 20 54 68 69 73 20 69 73 20 64 75 65 20 74 6f 20 74 65 63 68 6e 69 63 61 6c 20 63 6f 6e 73 74 | ..This.is.due.to.technical.const |
| 6c520 | 72 61 69 6e 74 73 3b 20 61 73 73 65 6d 62 6c 79 20 70 61 72 73 69 6e 67 20 69 73 0a 20 20 20 20 | raints;.assembly.parsing.is..... |
| 6c540 | 20 20 70 72 6f 76 69 64 65 64 20 62 79 20 4c 4c 56 4d 20 61 6e 64 20 69 74 73 20 73 75 70 70 6f | ..provided.by.LLVM.and.its.suppo |
| 6c560 | 72 74 20 66 6f 72 20 49 6e 74 65 6c 20 73 79 6e 74 61 78 20 69 73 20 62 75 67 67 79 20 61 6e 64 | rt.for.Intel.syntax.is.buggy.and |
| 6c580 | 20 6e 6f 74 20 77 65 6c 6c 20 74 65 73 74 65 64 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 | .not.well.tested........</p>.... |
| 6c5a0 | 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 53 6f 6d 65 20 64 61 79 20 5a 69 67 20 6d 61 79 20 68 61 | ...<p>.......Some.day.Zig.may.ha |
| 6c5c0 | 76 65 20 69 74 73 20 6f 77 6e 20 61 73 73 65 6d 62 6c 65 72 2e 20 54 68 69 73 20 77 6f 75 6c 64 | ve.its.own.assembler..This.would |
| 6c5e0 | 20 61 6c 6c 6f 77 20 69 74 20 74 6f 20 69 6e 74 65 67 72 61 74 65 20 6d 6f 72 65 20 73 65 61 6d | .allow.it.to.integrate.more.seam |
| 6c600 | 6c 65 73 73 6c 79 0a 20 20 20 20 20 20 69 6e 74 6f 20 74 68 65 20 6c 61 6e 67 75 61 67 65 2c 20 | lessly.......into.the.language,. |
| 6c620 | 61 73 20 77 65 6c 6c 20 61 73 20 62 65 20 63 6f 6d 70 61 74 69 62 6c 65 20 77 69 74 68 20 74 68 | as.well.as.be.compatible.with.th |
| 6c640 | 65 20 70 6f 70 75 6c 61 72 20 4e 41 53 4d 20 73 79 6e 74 61 78 2e 20 54 68 69 73 20 64 6f 63 75 | e.popular.NASM.syntax..This.docu |
| 6c660 | 6d 65 6e 74 61 74 69 6f 6e 0a 20 20 20 20 20 20 73 65 63 74 69 6f 6e 20 77 69 6c 6c 20 62 65 20 | mentation.......section.will.be. |
| 6c680 | 75 70 64 61 74 65 64 20 62 65 66 6f 72 65 20 31 2e 30 2e 30 20 69 73 20 72 65 6c 65 61 73 65 64 | updated.before.1.0.0.is.released |
| 6c6a0 | 2c 20 77 69 74 68 20 61 20 63 6f 6e 63 6c 75 73 69 76 65 20 73 74 61 74 65 6d 65 6e 74 20 61 62 | ,.with.a.conclusive.statement.ab |
| 6c6c0 | 6f 75 74 20 74 68 65 20 73 74 61 74 75 73 0a 20 20 20 20 20 20 6f 66 20 41 54 26 61 6d 70 3b 54 | out.the.status.......of.AT&T |
| 6c6e0 | 20 76 73 20 49 6e 74 65 6c 2f 4e 41 53 4d 20 73 79 6e 74 61 78 2e 0a 20 20 20 20 20 20 3c 2f 70 | .vs.Intel/NASM.syntax........</p |
| 6c700 | 3e 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 4f 75 74 70 75 74 2d 43 6f 6e 73 74 72 61 69 6e | >.......<h2.id="Output-Constrain |
| 6c720 | 74 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 4f 75 74 70 75 74 2d 43 6f 6e 73 74 72 61 | ts"><a.href="#toc-Output-Constra |
| 6c740 | 69 6e 74 73 22 3e 4f 75 74 70 75 74 20 43 6f 6e 73 74 72 61 69 6e 74 73 3c 2f 61 3e 20 3c 61 20 | ints">Output.Constraints</a>.<a. |
| 6c760 | 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 4f 75 74 70 75 74 2d 43 6f 6e 73 74 72 | class="hdr".href="#Output-Constr |
| 6c780 | 61 69 6e 74 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 | aints">..</a></h2>........<p>... |
| 6c7a0 | 20 20 20 20 4f 75 74 70 75 74 20 63 6f 6e 73 74 72 61 69 6e 74 73 20 61 72 65 20 73 74 69 6c 6c | ....Output.constraints.are.still |
| 6c7c0 | 20 63 6f 6e 73 69 64 65 72 65 64 20 74 6f 20 62 65 20 75 6e 73 74 61 62 6c 65 20 69 6e 20 5a 69 | .considered.to.be.unstable.in.Zi |
| 6c7e0 | 67 2c 20 61 6e 64 0a 20 20 20 20 20 20 73 6f 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 68 | g,.and.......so.......<a.href="h |
| 6c800 | 74 74 70 3a 2f 2f 72 65 6c 65 61 73 65 73 2e 6c 6c 76 6d 2e 6f 72 67 2f 31 30 2e 30 2e 30 2f 64 | ttp://releases.llvm.org/10.0.0/d |
| 6c820 | 6f 63 73 2f 4c 61 6e 67 52 65 66 2e 68 74 6d 6c 23 69 6e 6c 69 6e 65 2d 61 73 6d 2d 63 6f 6e 73 | ocs/LangRef.html#inline-asm-cons |
| 6c840 | 74 72 61 69 6e 74 2d 73 74 72 69 6e 67 22 3e 4c 4c 56 4d 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f | traint-string">LLVM.documentatio |
| 6c860 | 6e 3c 2f 61 3e 0a 20 20 20 20 20 20 61 6e 64 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 68 | n</a>.......and.......<a.href="h |
| 6c880 | 74 74 70 73 3a 2f 2f 67 63 63 2e 67 6e 75 2e 6f 72 67 2f 6f 6e 6c 69 6e 65 64 6f 63 73 2f 67 63 | ttps://gcc.gnu.org/onlinedocs/gc |
| 6c8a0 | 63 2f 45 78 74 65 6e 64 65 64 2d 41 73 6d 2e 68 74 6d 6c 22 3e 47 43 43 20 64 6f 63 75 6d 65 6e | c/Extended-Asm.html">GCC.documen |
| 6c8c0 | 74 61 74 69 6f 6e 3c 2f 61 3e 0a 20 20 20 20 20 20 6d 75 73 74 20 62 65 20 75 73 65 64 20 74 6f | tation</a>.......must.be.used.to |
| 6c8e0 | 20 75 6e 64 65 72 73 74 61 6e 64 20 74 68 65 20 73 65 6d 61 6e 74 69 63 73 2e 0a 20 20 20 20 20 | .understand.the.semantics....... |
| 6c900 | 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 4e 6f 74 65 20 74 68 61 74 20 | .</p>.......<p>.......Note.that. |
| 6c920 | 73 6f 6d 65 20 62 72 65 61 6b 69 6e 67 20 63 68 61 6e 67 65 73 20 74 6f 20 6f 75 74 70 75 74 20 | some.breaking.changes.to.output. |
| 6c940 | 63 6f 6e 73 74 72 61 69 6e 74 73 20 61 72 65 20 70 6c 61 6e 6e 65 64 20 77 69 74 68 0a 20 20 20 | constraints.are.planned.with.... |
| 6c960 | 20 20 20 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 7a | ...<a.href="https://github.com/z |
| 6c980 | 69 67 6c 61 6e 67 2f 7a 69 67 2f 69 73 73 75 65 73 2f 32 31 35 22 3e 69 73 73 75 65 20 23 32 31 | iglang/zig/issues/215">issue.#21 |
| 6c9a0 | 35 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 | 5</a>........</p>............... |
| 6c9c0 | 3c 68 32 20 69 64 3d 22 49 6e 70 75 74 2d 43 6f 6e 73 74 72 61 69 6e 74 73 22 3e 3c 61 20 68 72 | <h2.id="Input-Constraints"><a.hr |
| 6c9e0 | 65 66 3d 22 23 74 6f 63 2d 49 6e 70 75 74 2d 43 6f 6e 73 74 72 61 69 6e 74 73 22 3e 49 6e 70 75 | ef="#toc-Input-Constraints">Inpu |
| 6ca00 | 74 20 43 6f 6e 73 74 72 61 69 6e 74 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 | t.Constraints</a>.<a.class="hdr" |
| 6ca20 | 20 68 72 65 66 3d 22 23 49 6e 70 75 74 2d 43 6f 6e 73 74 72 61 69 6e 74 73 22 3e c2 a7 3c 2f 61 | .href="#Input-Constraints">..</a |
| 6ca40 | 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 6e 70 75 74 20 63 6f | ></h2>........<p>.......Input.co |
| 6ca60 | 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 |
| 6ca80 | 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....... |
| 6caa0 | 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 |
| 6cac0 | 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 |
| 6cae0 | 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 |
| 6cb00 | 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 |
| 6cb20 | 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 |
| 6cb40 | 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 |
| 6cb60 | 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>... |
| 6cb80 | 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 |
| 6cba0 | 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>.......< |
| 6cbc0 | 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 |
| 6cbe0 | 20 63 68 61 6e 67 65 73 20 74 6f 20 69 6e 70 75 74 20 63 6f 6e 73 74 72 61 69 6e 74 73 20 61 72 | .changes.to.input.constraints.ar |
| 6cc00 | 65 20 70 6c 61 6e 6e 65 64 20 77 69 74 68 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 68 74 | e.planned.with.......<a.href="ht |
| 6cc20 | 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 |
| 6cc40 | 75 65 73 2f 32 31 35 22 3e 69 73 73 75 65 20 23 32 31 35 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c | ues/215">issue.#215</a>........< |
| 6cc60 | 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 43 6c 6f 62 62 65 | /p>...............<h2.id="Clobbe |
| 6cc80 | 72 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 43 6c 6f 62 62 65 72 73 22 3e 43 6c 6f 62 | rs"><a.href="#toc-Clobbers">Clob |
| 6cca0 | 62 65 72 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 43 | bers</a>.<a.class="hdr".href="#C |
| 6ccc0 | 6c 6f 62 62 65 72 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a | lobbers">..</a></h2>........<p>. |
| 6cce0 | 20 20 20 20 20 20 43 6c 6f 62 62 65 72 73 20 61 72 65 20 74 68 65 20 73 65 74 20 6f 66 20 72 65 | ......Clobbers.are.the.set.of.re |
| 6cd00 | 67 69 73 74 65 72 73 20 77 68 6f 73 65 20 76 61 6c 75 65 73 20 77 69 6c 6c 20 6e 6f 74 20 62 65 | gisters.whose.values.will.not.be |
| 6cd20 | 20 70 72 65 73 65 72 76 65 64 20 62 79 20 74 68 65 20 65 78 65 63 75 74 69 6f 6e 20 6f 66 0a 20 | .preserved.by.the.execution.of.. |
| 6cd40 | 20 20 20 20 20 74 68 65 20 61 73 73 65 6d 62 6c 79 20 63 6f 64 65 2e 20 54 68 65 73 65 20 64 6f | .....the.assembly.code..These.do |
| 6cd60 | 20 6e 6f 74 20 69 6e 63 6c 75 64 65 20 6f 75 74 70 75 74 20 6f 72 20 69 6e 70 75 74 20 72 65 67 | .not.include.output.or.input.reg |
| 6cd80 | 69 73 74 65 72 73 2e 20 54 68 65 20 73 70 65 63 69 61 6c 20 63 6c 6f 62 62 65 72 0a 20 20 20 20 | isters..The.special.clobber..... |
| 6cda0 | 20 20 76 61 6c 75 65 20 6f 66 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 | ..value.of.<code.class="zig"><sp |
| 6cdc0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 6d 65 6d 6f 72 79 26 | an.class="tok-str">"memory& |
| 6cde0 | 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 20 74 68 61 74 20 74 | quot;</span></code>.means.that.t |
| 6ce00 | 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 20 74 6f 0a 20 20 20 | he.assembly.causes.writes.to.... |
| 6ce20 | 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 65 6d 6f 72 79 20 6c | ...arbitrary.undeclared.memory.l |
| 6ce40 | 6f 63 61 74 69 6f 6e 73 20 2d 20 6e 6f 74 20 6f 6e 6c 79 20 74 68 65 20 6d 65 6d 6f 72 79 20 70 | ocations.-.not.only.the.memory.p |
| 6ce60 | 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 20 20 20 20 20 69 6e | ointed.to.by.a.declared.......in |
| 6ce80 | 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 0a 20 20 20 20 20 20 | direct.output........</p>....... |
| 6cea0 | 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 61 72 65 20 74 68 65 | <p>.......Failure.to.declare.the |
| 6cec0 | 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 20 61 20 67 69 76 65 | .full.set.of.clobbers.for.a.give |
| 6cee0 | 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 78 70 72 65 73 73 69 | n.inline.assembly.......expressi |
| 6cf00 | 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 23 55 6e 64 65 66 69 | on.is.unchecked.<a.href="#Undefi |
| 6cf20 | 6e 65 64 2d 42 65 68 61 76 69 6f 72 22 3e 55 6e 64 65 66 69 6e 65 64 20 42 65 68 61 76 69 6f 72 | ned-Behavior">Undefined.Behavior |
| 6cf40 | 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c | </a>........</p>...............< |
| 6cf60 | 68 32 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 65 66 3d | h2.id="Global-Assembly"><a.href= |
| 6cf80 | 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 20 41 73 | "#toc-Global-Assembly">Global.As |
| 6cfa0 | 73 65 6d 62 6c 79 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 | sembly</a>.<a.class="hdr".href=" |
| 6cfc0 | 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 32 3e 0a 0a 20 | #Global-Assembly">..</a></h2>... |
| 6cfe0 | 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 6c 79 20 | .....<p>.......When.an.assembly. |
| 6d000 | 65 78 70 72 65 73 73 69 6f 6e 20 6f 63 63 75 72 73 20 69 6e 20 61 20 74 6f 70 20 6c 65 76 65 6c | expression.occurs.in.a.top.level |
| 6d020 | 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 |
| 6d040 | 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 67 3e 67 | >.block,.this.is.......<strong>g |
| 6d060 | 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 20 20 3c | lobal.assembly</strong>........< |
| 6d080 | 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 20 6f 66 | /p>.......<p>.......This.kind.of |
| 6d0a0 | 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 20 74 68 | .assembly.has.different.rules.th |
| 6d0c0 | 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 6f 64 65 | an.inline.assembly..First,.<code |
| 6d0e0 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | .class="zig"><span.class="tok-kw |
| 6d100 | 22 3e 76 6f 6c 61 74 69 6c 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 0a 20 20 20 20 20 20 69 | ">volatile</span></code>.......i |
| 6d120 | 73 20 6e 6f 74 20 76 61 6c 69 64 20 62 65 63 61 75 73 65 20 61 6c 6c 20 67 6c 6f 62 61 6c 20 61 | s.not.valid.because.all.global.a |
| 6d140 | 73 73 65 6d 62 6c 79 20 69 73 20 75 6e 63 6f 6e 64 69 74 69 6f 6e 61 6c 6c 79 20 69 6e 63 6c 75 | ssembly.is.unconditionally.inclu |
| 6d160 | 64 65 64 2e 0a 20 20 20 20 20 20 53 65 63 6f 6e 64 2c 20 74 68 65 72 65 20 61 72 65 20 6e 6f 20 | ded........Second,.there.are.no. |
| 6d180 | 69 6e 70 75 74 73 2c 20 6f 75 74 70 75 74 73 2c 20 6f 72 20 63 6c 6f 62 62 65 72 73 2e 20 41 6c | inputs,.outputs,.or.clobbers..Al |
| 6d1a0 | 6c 20 67 6c 6f 62 61 6c 20 61 73 73 65 6d 62 6c 79 20 69 73 20 63 6f 6e 63 61 74 65 6e 61 74 65 | l.global.assembly.is.concatenate |
| 6d1c0 | 64 0a 20 20 20 20 20 20 76 65 72 62 61 74 69 6d 20 69 6e 74 6f 20 6f 6e 65 20 6c 6f 6e 67 20 73 | d.......verbatim.into.one.long.s |
| 6d1e0 | 74 72 69 6e 67 20 61 6e 64 20 61 73 73 65 6d 62 6c 65 64 20 74 6f 67 65 74 68 65 72 2e 20 54 68 | tring.and.assembled.together..Th |
| 6d200 | 65 72 65 20 61 72 65 20 6e 6f 20 74 65 6d 70 6c 61 74 65 20 73 75 62 73 74 69 74 75 74 69 6f 6e | ere.are.no.template.substitution |
| 6d220 | 20 72 75 6c 65 73 20 72 65 67 61 72 64 69 6e 67 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 25 3c 2f | .rules.regarding.......<code>%</ |
| 6d240 | 63 6f 64 65 3e 20 61 73 20 74 68 65 72 65 20 61 72 65 20 69 6e 20 69 6e 6c 69 6e 65 20 61 73 73 | code>.as.there.are.in.inline.ass |
| 6d260 | 65 6d 62 6c 79 20 65 78 70 72 65 73 73 69 6f 6e 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 | embly.expressions........</p>... |
| 6d280 | 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 67 6c 6f 62 61 6c 2d 61 73 6d 2e 7a | ....<p.class="file">global-asm.z |
| 6d2a0 | 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 | ig</p><pre><code.class="zig"><sp |
| 6d2c0 | 61 6e 20 63 6c 61 73 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 |
| 6d2e0 | 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">@ |
| 6d300 | 69 6d 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 |
| 6d320 | 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 |
| 6d340 | 61 6e 20 63 6c 61 73 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 |
| 6d360 | 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 |
| 6d380 | 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 |
| 6d3a0 | 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 73 6d | >.{.....<span.class="tok-kw">asm |
| 6d3c0 | 3c 2f 73 70 61 6e 3e 20 28 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | </span>.(.........<span.class="t |
| 6d3e0 | 6f 6b 2d 73 74 72 22 3e 5c 5c 2e 67 6c 6f 62 61 6c 20 6d 79 5f 66 75 6e 63 3b 0a 3c 2f 73 70 61 | ok-str">\\.global.my_func;.</spa |
| 6d400 | 6e 3e 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e | n>........<span.class="tok-str"> |
| 6d420 | 5c 5c 2e 74 79 70 65 20 6d 79 5f 66 75 6e 63 2c 20 40 66 75 6e 63 74 69 6f 6e 3b 0a 3c 2f 73 70 | \\.type.my_func,.@function;.</sp |
| 6d440 | 61 6e 3e 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 | an>........<span.class="tok-str" |
| 6d460 | 3e 5c 5c 6d 79 5f 66 75 6e 63 3a 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 20 20 20 20 3c 73 70 61 6e | >\\my_func:.</span>........<span |
| 6d480 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 5c 5c 20 20 6c 65 61 20 28 25 72 64 69 2c 25 | .class="tok-str">\\..lea.(%rdi,% |
| 6d4a0 | 72 73 69 2c 31 29 2c 25 65 61 78 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 20 20 20 20 3c 73 70 61 6e | rsi,1),%eax.</span>........<span |
| 6d4c0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 5c 5c 20 20 72 65 74 71 0a 3c 2f 73 70 61 6e | .class="tok-str">\\..retq.</span |
| 6d4e0 | 3e 20 20 20 20 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | >....);.}..<span.class="tok-kw"> |
| 6d500 | 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 |
| 6d520 | 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 |
| 6d540 | 22 3e 6d 79 5f 66 75 6e 63 3c 2f 73 70 61 6e 3e 28 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ">my_func</span>(a:.<span.class= |
| 6d560 | 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 70 61 6e 20 | "tok-type">i32</span>,.b:.<span. |
| 6d580 | 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 |
| 6d5a0 | 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 3b 0a | an.class="tok-type">i32</span>;. |
| 6d5c0 | 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 |
| 6d5e0 | 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 67 6c | >.<span.class="tok-str">"gl |
| 6d600 | 6f 62 61 6c 20 61 73 73 65 6d 62 6c 79 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 | obal.assembly"</span>.{.... |
| 6d620 | 20 65 78 70 65 63 74 28 6d 79 5f 66 75 6e 63 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | .expect(my_func(<span.class="tok |
| 6d640 | 2d 6e 75 6d 62 65 72 22 3e 31 32 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | -number">12</span>,.<span.class= |
| 6d660 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 34 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 3c 73 70 61 6e | "tok-number">34</span>).==.<span |
| 6d680 | 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>);. |
| 6d6a0 | 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | }</code></pre><pre><code.class=" |
| 6d6c0 | 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 67 6c 6f 62 61 6c 2d 61 73 6d 2e 7a 69 67 | shell">$.zig.test.global-asm.zig |
| 6d6e0 | 20 2d 74 61 72 67 65 74 20 78 38 36 5f 36 34 2d 6c 69 6e 75 78 0a 31 2f 31 20 74 65 73 74 20 26 | .-target.x86_64-linux.1/1.test.& |
| 6d700 | 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 2e 2e 2e 20 4f 4b | quot;global.assembly"....OK |
| 6d720 | 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 | .All.1.tests.passed..</code></pr |
| 6d740 | 65 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 31 20 69 64 3d | e>.......................<h1.id= |
| 6d760 | 22 41 74 6f 6d 69 63 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 41 74 6f 6d 69 63 73 22 | "Atomics"><a.href="#toc-Atomics" |
| 6d780 | 3e 41 74 6f 6d 69 63 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 | >Atomics</a>.<a.class="hdr".href |
| 6d7a0 | 3d 22 23 41 74 6f 6d 69 63 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 31 3e 0a 0a 20 20 20 20 20 20 3c | ="#Atomics">..</a></h1>........< |
| 6d7c0 | 70 3e 54 4f 44 4f 3a 20 40 66 65 6e 63 65 28 29 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 54 4f | p>TODO:.@fence()</p>.......<p>TO |
| 6d7e0 | 44 4f 3a 20 40 61 74 6f 6d 69 63 20 72 6d 77 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 54 4f 44 | DO:.@atomic.rmw</p>.......<p>TOD |
| 6d800 | 4f 3a 20 62 75 69 6c 74 69 6e 20 61 74 6f 6d 69 63 20 6d 65 6d 6f 72 79 20 6f 72 64 65 72 69 6e | O:.builtin.atomic.memory.orderin |
| 6d820 | 67 20 65 6e 75 6d 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 31 20 69 64 3d 22 | g.enum</p>..............<h1.id=" |
| 6d840 | 41 73 79 6e 63 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 41 | Async-Functions"><a.href="#toc-A |
| 6d860 | 73 79 6e 63 2d 46 75 6e 63 74 69 6f 6e 73 22 3e 41 73 79 6e 63 20 46 75 6e 63 74 69 6f 6e 73 3c | sync-Functions">Async.Functions< |
| 6d880 | 2f 61 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 79 6e 63 2d | /a>.<a.class="hdr".href="#Async- |
| 6d8a0 | 46 75 6e 63 74 69 6f 6e 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 31 3e 0a 0a 20 20 20 20 20 20 3c 70 | Functions">..</a></h1>........<p |
| 6d8c0 | 3e 0a 20 20 20 20 20 20 57 68 65 6e 20 61 20 66 75 6e 63 74 69 6f 6e 20 69 73 20 63 61 6c 6c 65 | >.......When.a.function.is.calle |
| 6d8e0 | 64 2c 20 61 20 66 72 61 6d 65 20 69 73 20 70 75 73 68 65 64 20 74 6f 20 74 68 65 20 73 74 61 63 | d,.a.frame.is.pushed.to.the.stac |
| 6d900 | 6b 2c 0a 20 20 20 20 20 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 72 75 6e 73 20 75 6e 74 69 6c | k,.......the.function.runs.until |
| 6d920 | 20 69 74 20 72 65 61 63 68 65 73 20 61 20 72 65 74 75 72 6e 20 73 74 61 74 65 6d 65 6e 74 2c 20 | .it.reaches.a.return.statement,. |
| 6d940 | 61 6e 64 20 74 68 65 6e 20 74 68 65 20 66 72 61 6d 65 20 69 73 20 70 6f 70 70 65 64 20 66 72 6f | and.then.the.frame.is.popped.fro |
| 6d960 | 6d 20 74 68 65 20 73 74 61 63 6b 2e 0a 20 20 20 20 20 20 41 74 20 74 68 65 20 63 61 6c 6c 73 69 | m.the.stack........At.the.callsi |
| 6d980 | 74 65 2c 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 63 6f 64 65 20 64 6f 65 73 20 6e 6f 74 20 | te,.the.following.code.does.not. |
| 6d9a0 | 72 75 6e 20 75 6e 74 69 6c 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 72 65 74 75 72 6e 73 2e 0a | run.until.the.function.returns.. |
| 6d9c0 | 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 6e 20 61 73 | ......</p>.......<p>.......An.as |
| 6d9e0 | 79 6e 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 20 61 20 66 75 6e 63 74 69 6f 6e 20 77 68 6f 73 65 | ync.function.is.a.function.whose |
| 6da00 | 20 63 61 6c 6c 73 69 74 65 20 69 73 20 73 70 6c 69 74 20 69 6e 74 6f 20 61 6e 20 3c 63 6f 64 65 | .callsite.is.split.into.an.<code |
| 6da20 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | .class="zig"><span.class="tok-kw |
| 6da40 | 22 3e 61 73 79 6e 63 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 69 6e 69 74 69 61 74 69 6f 6e | ">async</span></code>.initiation |
| 6da60 | 2c 0a 20 20 20 20 20 20 66 6f 6c 6c 6f 77 65 64 20 62 79 20 61 6e 20 3c 63 6f 64 65 20 63 6c 61 | ,.......followed.by.an.<code.cla |
| 6da80 | 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 77 | ss="zig"><span.class="tok-kw">aw |
| 6daa0 | 61 69 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 63 6f 6d 70 6c 65 74 69 6f 6e 2e 20 49 74 | ait</span></code>.completion..It |
| 6dac0 | 73 20 66 72 61 6d 65 20 69 73 0a 20 20 20 20 20 20 70 72 6f 76 69 64 65 64 20 65 78 70 6c 69 63 | s.frame.is.......provided.explic |
| 6dae0 | 69 74 6c 79 20 62 79 20 74 68 65 20 63 61 6c 6c 65 72 2c 20 61 6e 64 20 69 74 20 63 61 6e 20 62 | itly.by.the.caller,.and.it.can.b |
| 6db00 | 65 20 73 75 73 70 65 6e 64 65 64 20 61 6e 64 20 72 65 73 75 6d 65 64 20 61 6e 79 20 6e 75 6d 62 | e.suspended.and.resumed.any.numb |
| 6db20 | 65 72 20 6f 66 20 74 69 6d 65 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 | er.of.times........</p>.......<p |
| 6db40 | 3e 0a 20 20 20 20 20 20 5a 69 67 20 69 6e 66 65 72 73 20 74 68 61 74 20 61 20 66 75 6e 63 74 69 | >.......Zig.infers.that.a.functi |
| 6db60 | 6f 6e 20 69 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c | on.is.<code.class="zig"><span.cl |
| 6db80 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 73 79 6e 63 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e | ass="tok-kw">async</span></code> |
| 6dba0 | 20 77 68 65 6e 20 69 74 20 6f 62 73 65 72 76 65 73 20 74 68 61 74 20 74 68 65 20 66 75 6e 63 74 | .when.it.observes.that.the.funct |
| 6dbc0 | 69 6f 6e 20 63 6f 6e 74 61 69 6e 73 0a 20 20 20 20 20 20 61 20 3c 73 74 72 6f 6e 67 3e 73 75 73 | ion.contains.......a.<strong>sus |
| 6dbe0 | 70 65 6e 73 69 6f 6e 20 70 6f 69 6e 74 3c 2f 73 74 72 6f 6e 67 3e 2e 20 41 73 79 6e 63 20 66 75 | pension.point</strong>..Async.fu |
| 6dc00 | 6e 63 74 69 6f 6e 73 20 63 61 6e 20 62 65 20 63 61 6c 6c 65 64 20 74 68 65 20 73 61 6d 65 20 61 | nctions.can.be.called.the.same.a |
| 6dc20 | 73 20 6e 6f 72 6d 61 6c 20 66 75 6e 63 74 69 6f 6e 73 2e 20 41 0a 20 20 20 20 20 20 66 75 6e 63 | s.normal.functions..A.......func |
| 6dc40 | 74 69 6f 6e 20 63 61 6c 6c 20 6f 66 20 61 6e 20 61 73 79 6e 63 20 66 75 6e 63 74 69 6f 6e 20 69 | tion.call.of.an.async.function.i |
| 6dc60 | 73 20 61 20 73 75 73 70 65 6e 64 20 70 6f 69 6e 74 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 | s.a.suspend.point........</p>... |
| 6dc80 | 20 20 20 20 3c 68 32 20 69 64 3d 22 53 75 73 70 65 6e 64 2d 61 6e 64 2d 52 65 73 75 6d 65 22 3e | ....<h2.id="Suspend-and-Resume"> |
| 6dca0 | 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 53 75 73 70 65 6e 64 2d 61 6e 64 2d 52 65 73 75 6d 65 | <a.href="#toc-Suspend-and-Resume |
| 6dcc0 | 22 3e 53 75 73 70 65 6e 64 20 61 6e 64 20 52 65 73 75 6d 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 | ">Suspend.and.Resume</a>.<a.clas |
| 6dce0 | 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 53 75 73 70 65 6e 64 2d 61 6e 64 2d 52 65 73 75 6d | s="hdr".href="#Suspend-and-Resum |
| 6dd00 | 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 | e">..</a></h2>........<p>....... |
| 6dd20 | 41 74 20 61 6e 79 20 70 6f 69 6e 74 2c 20 61 20 66 75 6e 63 74 69 6f 6e 20 6d 61 79 20 73 75 73 | At.any.point,.a.function.may.sus |
| 6dd40 | 70 65 6e 64 20 69 74 73 65 6c 66 2e 20 54 68 69 73 20 63 61 75 73 65 73 20 63 6f 6e 74 72 6f 6c | pend.itself..This.causes.control |
| 6dd60 | 20 66 6c 6f 77 20 74 6f 0a 20 20 20 20 20 20 72 65 74 75 72 6e 20 74 6f 20 74 68 65 20 63 61 6c | .flow.to.......return.to.the.cal |
| 6dd80 | 6c 73 69 74 65 20 28 69 6e 20 74 68 65 20 63 61 73 65 20 6f 66 20 74 68 65 20 66 69 72 73 74 20 | lsite.(in.the.case.of.the.first. |
| 6dda0 | 73 75 73 70 65 6e 73 69 6f 6e 29 2c 0a 20 20 20 20 20 20 6f 72 20 72 65 73 75 6d 65 72 20 28 69 | suspension),.......or.resumer.(i |
| 6ddc0 | 6e 20 74 68 65 20 63 61 73 65 20 6f 66 20 73 75 62 73 65 71 75 65 6e 74 20 73 75 73 70 65 6e 73 | n.the.case.of.subsequent.suspens |
| 6dde0 | 69 6f 6e 73 29 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 | ions)........</p>.......<p.class |
| 6de00 | 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 | ="file">test.zig</p><pre><code.c |
| 6de20 | 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | lass="zig"><span.class="tok-kw"> |
| 6de40 | 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=" |
| 6de60 | 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 |
| 6de80 | 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" |
| 6dea0 | 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"> |
| 6dec0 | 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 |
| 6dee0 | 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"> |
| 6df00 | 76 61 72 3c 2f 73 70 61 6e 3e 20 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | var</span>.x:.<span.class="tok-t |
| 6df20 | 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 |
| 6df40 | 6f 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 | ok-number">1</span>;..<span.clas |
| 6df60 | 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 |
| 6df80 | 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 75 73 70 65 6e 64 20 77 69 74 68 20 | ss="tok-str">"suspend.with. |
| 6dfa0 | 6e 6f 20 72 65 73 75 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 | no.resume"</span>.{.....<sp |
| 6dfc0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 66 72 61 | an.class="tok-kw">var</span>.fra |
| 6dfe0 | 6d 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 73 79 6e 63 3c | me.=.<span.class="tok-kw">async< |
| 6e000 | 2f 73 70 61 6e 3e 20 66 75 6e 63 28 29 3b 0a 20 20 20 20 65 78 70 65 63 74 28 78 20 3d 3d 20 3c | /span>.func();.....expect(x.==.< |
| 6e020 | 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> |
| 6e040 | 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 |
| 6e060 | 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 75 6e 63 3c 2f | pan>.<span.class="tok-fn">func</ |
| 6e080 | 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 |
| 6e0a0 | 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 78 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | oid</span>.{.....x.+=.<span.clas |
| 6e0c0 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 | s="tok-number">1</span>;.....<sp |
| 6e0e0 | 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> |
| 6e100 | 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e | ;.....<span.class="tok-comment"> |
| 6e120 | 2f 2f 20 54 68 69 73 20 6c 69 6e 65 20 69 73 20 6e 65 76 65 72 20 72 65 61 63 68 65 64 20 62 65 | //.This.line.is.never.reached.be |
| 6e140 | 63 61 75 73 65 20 74 68 65 20 73 75 73 70 65 6e 64 20 68 61 73 20 6e 6f 20 6d 61 74 63 68 69 6e | cause.the.suspend.has.no.matchin |
| 6e160 | 67 20 72 65 73 75 6d 65 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 78 20 2b 3d 20 3c 73 70 61 6e 20 | g.resume.</span>.....x.+=.<span. |
| 6e180 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 7d 3c 2f | class="tok-number">1</span>;.}</ |
| 6e1a0 | 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 | code></pre><pre><code.class="she |
| 6e1c0 | 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 31 2f 31 20 74 65 73 74 | ll">$.zig.test.test.zig.1/1.test |
| 6e1e0 | 20 26 71 75 6f 74 3b 73 75 73 70 65 6e 64 20 77 69 74 68 20 6e 6f 20 72 65 73 75 6d 65 26 71 75 | ."suspend.with.no.resume&qu |
| 6e200 | 6f 74 3b 2e 2e 2e 20 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f | ot;....OK.All.1.tests.passed..</ |
| 6e220 | 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 6e 20 | code></pre>........<p>.......In. |
| 6e240 | 74 68 65 20 73 61 6d 65 20 77 61 79 20 74 68 61 74 20 65 61 63 68 20 61 6c 6c 6f 63 61 74 69 6f | the.same.way.that.each.allocatio |
| 6e260 | 6e 20 73 68 6f 75 6c 64 20 68 61 76 65 20 61 20 63 6f 72 72 65 73 70 6f 6e 64 69 6e 67 20 66 72 | n.should.have.a.corresponding.fr |
| 6e280 | 65 65 2c 0a 20 20 20 20 20 20 45 61 63 68 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | ee,.......Each.<code.class="zig" |
| 6e2a0 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 75 73 70 65 6e 64 3c 2f 73 | ><span.class="tok-kw">suspend</s |
| 6e2c0 | 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 73 68 6f 75 6c 64 20 68 61 76 65 20 61 20 63 6f 72 72 65 73 | pan></code>.should.have.a.corres |
| 6e2e0 | 70 6f 6e 64 69 6e 67 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 | ponding.<code.class="zig"><span. |
| 6e300 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 73 75 6d 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f | class="tok-kw">resume</span></co |
| 6e320 | 64 65 3e 2e 0a 20 20 20 20 20 20 41 20 3c 73 74 72 6f 6e 67 3e 73 75 73 70 65 6e 64 20 62 6c 6f | de>........A.<strong>suspend.blo |
| 6e340 | 63 6b 3c 2f 73 74 72 6f 6e 67 3e 20 61 6c 6c 6f 77 73 20 61 20 66 75 6e 63 74 69 6f 6e 20 74 6f | ck</strong>.allows.a.function.to |
| 6e360 | 20 70 75 74 20 61 20 70 6f 69 6e 74 65 72 20 74 6f 20 69 74 73 20 6f 77 6e 0a 20 20 20 20 20 20 | .put.a.pointer.to.its.own....... |
| 6e380 | 66 72 61 6d 65 20 73 6f 6d 65 77 68 65 72 65 2c 20 66 6f 72 20 65 78 61 6d 70 6c 65 20 69 6e 74 | frame.somewhere,.for.example.int |
| 6e3a0 | 6f 20 61 6e 20 65 76 65 6e 74 20 6c 6f 6f 70 2c 20 65 76 65 6e 20 69 66 20 74 68 61 74 20 61 63 | o.an.event.loop,.even.if.that.ac |
| 6e3c0 | 74 69 6f 6e 20 77 69 6c 6c 20 70 65 72 66 6f 72 6d 20 61 0a 20 20 20 20 20 20 3c 63 6f 64 65 20 | tion.will.perform.a.......<code. |
| 6e3e0 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | class="zig"><span.class="tok-kw" |
| 6e400 | 3e 72 65 73 75 6d 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6f 70 65 72 61 74 69 6f 6e 20 | >resume</span></code>.operation. |
| 6e420 | 6f 6e 20 61 20 64 69 66 66 65 72 65 6e 74 20 74 68 72 65 61 64 2e 0a 20 20 20 20 20 20 3c 61 20 | on.a.different.thread........<a. |
| 6e440 | 68 72 65 66 3d 22 23 66 72 61 6d 65 22 3e 40 66 72 61 6d 65 3c 2f 61 3e 20 70 72 6f 76 69 64 65 | href="#frame">@frame</a>.provide |
| 6e460 | 73 20 61 63 63 65 73 73 20 74 6f 20 74 68 65 20 61 73 79 6e 63 20 66 75 6e 63 74 69 6f 6e 20 66 | s.access.to.the.async.function.f |
| 6e480 | 72 61 6d 65 20 70 6f 69 6e 74 65 72 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c | rame.pointer........</p>.......< |
| 6e4a0 | 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e | p.class="file">test.zig</p><pre> |
| 6e4c0 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | <code.class="zig"><span.class="t |
| 6e4e0 | 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. |
| 6e500 | 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 |
| 6e520 | 6e 3e 28 3c 73 70 61 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 |
| 6e540 | 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 |
| 6e560 | 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 |
| 6e580 | 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 |
| 6e5a0 | 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 74 68 65 5f 66 72 61 6d 65 3a 20 3c 73 70 | ok-kw">var</span>.the_frame:.<sp |
| 6e5c0 | 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 |
| 6e5e0 | 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 |
| 6e600 | 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 |
| 6e620 | 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 72 65 73 75 6c 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | ">var</span>.result.=.<span.clas |
| 6e640 | 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 0a 3c 73 70 61 | s="tok-null">false</span>;..<spa |
| 6e660 | 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 |
| 6e680 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 61 73 79 6e 63 20 66 | an.class="tok-str">"async.f |
| 6e6a0 | 75 6e 63 74 69 6f 6e 20 73 75 73 70 65 6e 64 20 77 69 74 68 20 62 6c 6f 63 6b 26 71 75 6f 74 3b | unction.suspend.with.block" |
| 6e6c0 | 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 5f 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | </span>.{....._.=.<span.class="t |
| 6e6e0 | 6f 6b 2d 6b 77 22 3e 61 73 79 6e 63 3c 2f 73 70 61 6e 3e 20 74 65 73 74 53 75 73 70 65 6e 64 42 | ok-kw">async</span>.testSuspendB |
| 6e700 | 6c 6f 63 6b 28 29 3b 0a 20 20 20 20 65 78 70 65 63 74 28 21 72 65 73 75 6c 74 29 3b 0a 20 20 20 | lock();.....expect(!result);.... |
| 6e720 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 73 75 6d 65 3c 2f 73 70 | .<span.class="tok-kw">resume</sp |
| 6e740 | 61 6e 3e 20 74 68 65 5f 66 72 61 6d 65 3b 0a 20 20 20 20 65 78 70 65 63 74 28 72 65 73 75 6c 74 | an>.the_frame;.....expect(result |
| 6e760 | 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 |
| 6e780 | 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 65 73 74 53 75 | pan>.<span.class="tok-fn">testSu |
| 6e7a0 | 73 70 65 6e 64 42 6c 6f 63 6b 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | spendBlock</span>().<span.class= |
| 6e7c0 | 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 |
| 6e7e0 | 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> |
| 6e800 | 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"> |
| 6e820 | 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 61 | comptime</span>.expect(<span.cla |
| 6e840 | 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 | ss="tok-builtin">@TypeOf</span>( |
| 6e860 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 66 72 61 6d 65 | <span.class="tok-builtin">@frame |
| 6e880 | 3c 2f 73 70 61 6e 3e 28 29 29 20 3d 3d 20 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | </span>()).==.*<span.class="tok- |
| 6e8a0 | 62 75 69 6c 74 69 6e 22 3e 40 46 72 61 6d 65 3c 2f 73 70 61 6e 3e 28 74 65 73 74 53 75 73 70 65 | builtin">@Frame</span>(testSuspe |
| 6e8c0 | 6e 64 42 6c 6f 63 6b 29 29 3b 0a 20 20 20 20 20 20 20 20 74 68 65 5f 66 72 61 6d 65 20 3d 20 3c | ndBlock));.........the_frame.=.< |
| 6e8e0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 66 72 61 6d 65 3c | span.class="tok-builtin">@frame< |
| 6e900 | 2f 73 70 61 6e 3e 28 29 3b 0a 20 20 20 20 7d 0a 20 20 20 20 72 65 73 75 6c 74 20 3d 20 3c 73 70 | /span>();.....}.....result.=.<sp |
| 6e920 | 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>; |
| 6e940 | 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d | .}</code></pre><pre><code.class= |
| 6e960 | 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 31 2f 31 20 | "shell">$.zig.test.test.zig.1/1. |
| 6e980 | 74 65 73 74 20 26 71 75 6f 74 3b 61 73 79 6e 63 20 66 75 6e 63 74 69 6f 6e 20 73 75 73 70 65 6e | test."async.function.suspen |
| 6e9a0 | 64 20 77 69 74 68 20 62 6c 6f 63 6b 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 41 6c 6c 20 31 20 74 | d.with.block"....OK.All.1.t |
| 6e9c0 | 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 | ests.passed..</code></pre>...... |
| 6e9e0 | 20 20 3c 70 3e 0a 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 | ..<p>.......<code.class="zig"><s |
| 6ea00 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 75 73 70 65 6e 64 3c 2f 73 70 61 6e | pan.class="tok-kw">suspend</span |
| 6ea20 | 3e 3c 2f 63 6f 64 65 3e 20 63 61 75 73 65 73 20 61 20 66 75 6e 63 74 69 6f 6e 20 74 6f 20 62 65 | ></code>.causes.a.function.to.be |
| 6ea40 | 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | .<code.class="zig"><span.class=" |
| 6ea60 | 74 6f 6b 2d 6b 77 22 3e 61 73 79 6e 63 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 | tok-kw">async</span></code>..... |
| 6ea80 | 20 20 20 3c 2f 70 3e 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 52 65 73 75 6d 69 6e 67 2d | ...</p>........<h3.id="Resuming- |
| 6eaa0 | 66 72 6f 6d 2d 53 75 73 70 65 6e 64 2d 42 6c 6f 63 6b 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 | from-Suspend-Blocks"><a.href="#t |
| 6eac0 | 6f 63 2d 52 65 73 75 6d 69 6e 67 2d 66 72 6f 6d 2d 53 75 73 70 65 6e 64 2d 42 6c 6f 63 6b 73 22 | oc-Resuming-from-Suspend-Blocks" |
| 6eae0 | 3e 52 65 73 75 6d 69 6e 67 20 66 72 6f 6d 20 53 75 73 70 65 6e 64 20 42 6c 6f 63 6b 73 3c 2f 61 | >Resuming.from.Suspend.Blocks</a |
| 6eb00 | 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 52 65 73 75 6d 69 6e 67 | >.<a.class="hdr".href="#Resuming |
| 6eb20 | 2d 66 72 6f 6d 2d 53 75 73 70 65 6e 64 2d 42 6c 6f 63 6b 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 | -from-Suspend-Blocks">..</a></h3 |
| 6eb40 | 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 55 70 6f 6e 20 65 6e 74 65 72 69 6e 67 | >........<p>.......Upon.entering |
| 6eb60 | 20 61 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | .a.<code.class="zig"><span.class |
| 6eb80 | 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 64 65 3e 20 | ="tok-kw">suspend</span></code>. |
| 6eba0 | 62 6c 6f 63 6b 2c 20 74 68 65 20 61 73 79 6e 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 20 61 6c 72 | block,.the.async.function.is.alr |
| 6ebc0 | 65 61 64 79 20 63 6f 6e 73 69 64 65 72 65 64 0a 20 20 20 20 20 20 73 75 73 70 65 6e 64 65 64 2c | eady.considered.......suspended, |
| 6ebe0 | 20 61 6e 64 20 63 61 6e 20 62 65 20 72 65 73 75 6d 65 64 2e 20 46 6f 72 20 65 78 61 6d 70 6c 65 | .and.can.be.resumed..For.example |
| 6ec00 | 2c 20 69 66 20 79 6f 75 20 73 74 61 72 74 65 64 20 61 6e 6f 74 68 65 72 20 6b 65 72 6e 65 6c 20 | ,.if.you.started.another.kernel. |
| 6ec20 | 74 68 72 65 61 64 2c 0a 20 20 20 20 20 20 61 6e 64 20 68 61 64 20 74 68 61 74 20 74 68 72 65 61 | thread,.......and.had.that.threa |
| 6ec40 | 64 20 63 61 6c 6c 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 | d.call.<code.class="zig"><span.c |
| 6ec60 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 73 75 6d 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 | lass="tok-kw">resume</span></cod |
| 6ec80 | 65 3e 20 6f 6e 20 74 68 65 20 66 72 61 6d 65 20 70 6f 69 6e 74 65 72 20 70 72 6f 76 69 64 65 64 | e>.on.the.frame.pointer.provided |
| 6eca0 | 20 62 79 20 74 68 65 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 66 72 61 6d 65 22 3e 40 | .by.the.......<a.href="#frame">@ |
| 6ecc0 | 66 72 61 6d 65 3c 2f 61 3e 2c 20 74 68 65 20 6e 65 77 20 74 68 72 65 61 64 20 77 6f 75 6c 64 20 | frame</a>,.the.new.thread.would. |
| 6ece0 | 62 65 67 69 6e 20 65 78 65 63 75 74 69 6e 67 20 61 66 74 65 72 20 74 68 65 20 73 75 73 70 65 6e | begin.executing.after.the.suspen |
| 6ed00 | 64 0a 20 20 20 20 20 20 62 6c 6f 63 6b 2c 20 77 68 69 6c 65 20 74 68 65 20 6f 6c 64 20 74 68 72 | d.......block,.while.the.old.thr |
| 6ed20 | 65 61 64 20 63 6f 6e 74 69 6e 75 65 64 20 65 78 65 63 75 74 69 6e 67 20 74 68 65 20 73 75 73 70 | ead.continued.executing.the.susp |
| 6ed40 | 65 6e 64 20 62 6c 6f 63 6b 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a | end.block........</p>.......<p>. |
| 6ed60 | 20 20 20 20 20 20 48 6f 77 65 76 65 72 2c 20 74 68 65 20 61 73 79 6e 63 20 66 75 6e 63 74 69 6f | ......However,.the.async.functio |
| 6ed80 | 6e 20 63 61 6e 20 62 65 20 64 69 72 65 63 74 6c 79 20 72 65 73 75 6d 65 64 20 66 72 6f 6d 20 74 | n.can.be.directly.resumed.from.t |
| 6eda0 | 68 65 20 73 75 73 70 65 6e 64 20 62 6c 6f 63 6b 2c 20 69 6e 20 77 68 69 63 68 20 63 61 73 65 20 | he.suspend.block,.in.which.case. |
| 6edc0 | 69 74 0a 20 20 20 20 20 20 6e 65 76 65 72 20 72 65 74 75 72 6e 73 20 74 6f 20 69 74 73 20 72 65 | it.......never.returns.to.its.re |
| 6ede0 | 73 75 6d 65 72 20 61 6e 64 20 63 6f 6e 74 69 6e 75 65 73 20 65 78 65 63 75 74 69 6e 67 2e 0a 20 | sumer.and.continues.executing... |
| 6ee00 | 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e | .....</p>.......<p.class="file"> |
| 6ee20 | 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | test.zig</p><pre><code.class="zi |
| 6ee40 | 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 | g"><span.class="tok-kw">const</s |
| 6ee60 | 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 |
| 6ee80 | 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= |
| 6eea0 | 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> |
| 6eec0 | 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 |
| 6eee0 | 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 |
| 6ef00 | 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 |
| 6ef20 | 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">" |
| 6ef40 | 72 65 73 75 6d 65 20 66 72 6f 6d 20 73 75 73 70 65 6e 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e | resume.from.suspend"</span> |
| 6ef60 | 20 7b 0a 20 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< |
| 6ef80 | 2f 73 70 61 6e 3e 20 6d 79 5f 72 65 73 75 6c 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | /span>.my_result:.<span.class="t |
| 6efa0 | 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 |
| 6efc0 | 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 5f 20 3d | s="tok-number">1</span>;....._.= |
| 6efe0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 73 79 6e 63 3c 2f 73 70 61 | .<span.class="tok-kw">async</spa |
| 6f000 | 6e 3e 20 74 65 73 74 52 65 73 75 6d 65 46 72 6f 6d 53 75 73 70 65 6e 64 28 26 61 6d 70 3b 6d 79 | n>.testResumeFromSuspend(&my |
| 6f020 | 5f 72 65 73 75 6c 74 29 3b 0a 20 20 20 20 73 74 64 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 | _result);.....std.testing.expect |
| 6f040 | 28 6d 79 5f 72 65 73 75 6c 74 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | (my_result.==.<span.class="tok-n |
| 6f060 | 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | umber">2</span>);.}.<span.class= |
| 6f080 | 22 74 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=" |
| 6f0a0 | 74 6f 6b 2d 66 6e 22 3e 74 65 73 74 52 65 73 75 6d 65 46 72 6f 6d 53 75 73 70 65 6e 64 3c 2f 73 | tok-fn">testResumeFromSuspend</s |
| 6f0c0 | 70 61 6e 3e 28 6d 79 5f 72 65 73 75 6c 74 3a 20 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | pan>(my_result:.*<span.class="to |
| 6f0e0 | 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= |
| 6f100 | 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 |
| 6f120 | 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> |
| 6f140 | 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"> |
| 6f160 | 72 65 73 75 6d 65 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 | resume</span>.<span.class="tok-b |
| 6f180 | 75 69 6c 74 69 6e 22 3e 40 66 72 61 6d 65 3c 2f 73 70 61 6e 3e 28 29 3b 0a 20 20 20 20 7d 0a 20 | uiltin">@frame</span>();.....}.. |
| 6f1a0 | 20 20 20 6d 79 5f 72 65 73 75 6c 74 2e 2a 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ...my_result.*.+=.<span.class="t |
| 6f1c0 | 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 |
| 6f1e0 | 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 3b 0a 20 20 | lass="tok-kw">suspend</span>;... |
| 6f200 | 20 20 6d 79 5f 72 65 73 75 6c 74 2e 2a 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ..my_result.*.+=.<span.class="to |
| 6f220 | 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 70 72 | k-number">1</span>;.}</code></pr |
| 6f240 | 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 | e><pre><code.class="shell">$.zig |
| 6f260 | 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 31 2f 31 20 74 65 73 74 20 26 71 75 6f 74 3b 72 65 | .test.test.zig.1/1.test."re |
| 6f280 | 73 75 6d 65 20 66 72 6f 6d 20 73 75 73 70 65 6e 64 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 41 6c | sume.from.suspend"....OK.Al |
| 6f2a0 | 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a | l.1.tests.passed..</code></pre>. |
| 6f2c0 | 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 67 75 61 72 61 6e 74 | .......<p>.......This.is.guarant |
| 6f2e0 | 65 65 64 20 74 6f 20 74 61 69 6c 20 63 61 6c 6c 2c 20 61 6e 64 20 74 68 65 72 65 66 6f 72 65 20 | eed.to.tail.call,.and.therefore. |
| 6f300 | 77 69 6c 6c 20 6e 6f 74 20 63 61 75 73 65 20 61 20 6e 65 77 20 73 74 61 63 6b 20 66 72 61 6d 65 | will.not.cause.a.new.stack.frame |
| 6f320 | 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 | ........</p>.................... |
| 6f340 | 20 20 3c 68 32 20 69 64 3d 22 41 73 79 6e 63 2d 61 6e 64 2d 41 77 61 69 74 22 3e 3c 61 20 68 72 | ..<h2.id="Async-and-Await"><a.hr |
| 6f360 | 65 66 3d 22 23 74 6f 63 2d 41 73 79 6e 63 2d 61 6e 64 2d 41 77 61 69 74 22 3e 41 73 79 6e 63 20 | ef="#toc-Async-and-Await">Async. |
| 6f380 | 61 6e 64 20 41 77 61 69 74 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 | and.Await</a>.<a.class="hdr".hre |
| 6f3a0 | 66 3d 22 23 41 73 79 6e 63 2d 61 6e 64 2d 41 77 61 69 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e | f="#Async-and-Await">..</a></h2> |
| 6f3c0 | 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 6e 20 74 68 65 20 73 61 6d 65 20 77 61 | ........<p>.......In.the.same.wa |
| 6f3e0 | 79 20 74 68 61 74 20 65 76 65 72 79 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c | y.that.every.<code.class="zig">< |
| 6f400 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 75 73 70 65 6e 64 3c 2f 73 70 61 | span.class="tok-kw">suspend</spa |
| 6f420 | 6e 3e 3c 2f 63 6f 64 65 3e 20 68 61 73 20 61 20 6d 61 74 63 68 69 6e 67 0a 20 20 20 20 20 20 3c | n></code>.has.a.matching.......< |
| 6f440 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | code.class="zig"><span.class="to |
| 6f460 | 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 2c 20 65 76 65 72 | k-kw">resume</span></code>,.ever |
| 6f480 | 79 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | y.<code.class="zig"><span.class= |
| 6f4a0 | 22 74 6f 6b 2d 6b 77 22 3e 61 73 79 6e 63 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 68 61 73 | "tok-kw">async</span></code>.has |
| 6f4c0 | 20 61 20 6d 61 74 63 68 69 6e 67 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 | .a.matching.<code.class="zig"><s |
| 6f4e0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 77 61 69 74 3c 2f 73 70 61 6e 3e 3c | pan.class="tok-kw">await</span>< |
| 6f500 | 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 20 63 6c 61 73 | /code>........</p>.......<p.clas |
| 6f520 | 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 | s="file">test.zig</p><pre><code. |
| 6f540 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | class="zig"><span.class="tok-kw" |
| 6f560 | 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= |
| 6f580 | 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 |
| 6f5a0 | 61 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 |
| 6f5c0 | 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" |
| 6f5e0 | 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 |
| 6f600 | 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" |
| 6f620 | 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 |
| 6f640 | 72 22 3e 26 71 75 6f 74 3b 61 73 79 6e 63 20 61 6e 64 20 61 77 61 69 74 26 71 75 6f 74 3b 3c 2f | r">"async.and.await"</ |
| 6f660 | 73 70 61 6e 3e 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 |
| 6f680 | 6d 65 6e 74 22 3e 2f 2f 20 48 65 72 65 20 77 65 20 68 61 76 65 20 61 6e 20 65 78 63 65 70 74 69 | ment">//.Here.we.have.an.excepti |
| 6f6a0 | 6f 6e 20 77 68 65 72 65 20 77 65 20 64 6f 20 6e 6f 74 20 6d 61 74 63 68 20 61 6e 20 61 73 79 6e | on.where.we.do.not.match.an.asyn |
| 6f6c0 | 63 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 | c</span>.....<span.class="tok-co |
| 6f6e0 | 6d 6d 65 6e 74 22 3e 2f 2f 20 77 69 74 68 20 61 6e 20 61 77 61 69 74 2e 20 54 68 65 20 74 65 73 | mment">//.with.an.await..The.tes |
| 6f700 | 74 20 62 6c 6f 63 6b 20 69 73 20 6e 6f 74 20 61 73 79 6e 63 20 61 6e 64 20 73 6f 20 63 61 6e 6e | t.block.is.not.async.and.so.cann |
| 6f720 | 6f 74 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 | ot</span>.....<span.class="tok-c |
| 6f740 | 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 68 61 76 65 20 61 20 73 75 73 70 65 6e 64 20 70 6f 69 6e 74 20 | omment">//.have.a.suspend.point. |
| 6f760 | 69 6e 20 69 74 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 | in.it.</span>.....<span.class="t |
| 6f780 | 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 69 73 20 69 73 20 77 65 6c 6c 2d 64 65 66 69 | ok-comment">//.This.is.well-defi |
| 6f7a0 | 6e 65 64 20 62 65 68 61 76 69 6f 72 2c 20 61 6e 64 20 65 76 65 72 79 74 68 69 6e 67 20 69 73 20 | ned.behavior,.and.everything.is. |
| 6f7c0 | 4f 4b 20 68 65 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 | OK.here.</span>.....<span.class= |
| 6f7e0 | 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 4e 6f 74 65 20 68 6f 77 65 76 65 72 20 74 68 | "tok-comment">//.Note.however.th |
| 6f800 | 61 74 20 74 68 65 72 65 20 77 6f 75 6c 64 20 62 65 20 6e 6f 20 77 61 79 20 74 6f 20 63 6f 6c 6c | at.there.would.be.no.way.to.coll |
| 6f820 | 65 63 74 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 | ect.the</span>.....<span.class=" |
| 6f840 | 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 72 65 74 75 72 6e 20 76 61 6c 75 65 20 6f 66 20 | tok-comment">//.return.value.of. |
| 6f860 | 61 6d 61 69 6e 2c 20 69 66 20 69 74 20 77 65 72 65 20 73 6f 6d 65 74 68 69 6e 67 20 6f 74 68 65 | amain,.if.it.were.something.othe |
| 6f880 | 72 20 74 68 61 6e 20 76 6f 69 64 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 5f 20 3d 20 3c 73 70 61 | r.than.void.</span>....._.=.<spa |
| 6f8a0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 73 79 6e 63 3c 2f 73 70 61 6e 3e 20 61 6d | n.class="tok-kw">async</span>.am |
| 6f8c0 | 61 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 66 | ain();.}..<span.class="tok-kw">f |
| 6f8e0 | 6e 3c 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 6d | n</span>.<span.class="tok-fn">am |
| 6f900 | 61 69 6e 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | ain</span>().<span.class="tok-ty |
| 6f920 | 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 |
| 6f940 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 66 72 61 6d 65 20 3d 20 3c 73 | s="tok-kw">var</span>.frame.=.<s |
| 6f960 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 73 79 6e 63 3c 2f 73 70 61 6e 3e 20 | pan.class="tok-kw">async</span>. |
| 6f980 | 66 75 6e 63 28 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | func();.....<span.class="tok-kw" |
| 6f9a0 | 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 |
| 6f9c0 | 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> |
| 6f9e0 | 28 66 72 61 6d 65 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 | (frame).==.<span.class="tok-buil |
| 6fa00 | 74 69 6e 22 3e 40 46 72 61 6d 65 3c 2f 73 70 61 6e 3e 28 66 75 6e 63 29 29 3b 0a 0a 20 20 20 20 | tin">@Frame</span>(func));...... |
| 6fa20 | 3c 73 70 61 6e 20 63 6c 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 |
| 6fa40 | 3e 20 70 74 72 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 79 66 | >.ptr:.<span.class="tok-kw">anyf |
| 6fa60 | 72 61 6d 65 3c 2f 73 70 61 6e 3e 2d 26 67 74 3b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | rame</span>-><span.class="tok |
| 6fa80 | 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 3d 20 26 61 6d 70 3b 66 72 61 6d 65 3b | -type">void</span>.=.&frame; |
| 6faa0 | 0a 20 20 20 20 3c 73 70 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< |
| 6fac0 | 2f 73 70 61 6e 3e 20 61 6e 79 5f 70 74 72 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | /span>.any_ptr:.<span.class="tok |
| 6fae0 | 2d 6b 77 22 3e 61 6e 79 66 72 61 6d 65 3c 2f 73 70 61 6e 3e 20 3d 20 70 74 72 3b 0a 0a 20 20 20 | -kw">anyframe</span>.=.ptr;..... |
| 6fb00 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 73 75 6d 65 3c 2f 73 70 | .<span.class="tok-kw">resume</sp |
| 6fb20 | 61 6e 3e 20 61 6e 79 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 | an>.any_ptr;.....<span.class="to |
| 6fb40 | 6b 2d 6b 77 22 3e 61 77 61 69 74 3c 2f 73 70 61 6e 3e 20 70 74 72 3b 0a 7d 0a 0a 3c 73 70 61 6e | k-kw">await</span>.ptr;.}..<span |
| 6fb60 | 20 63 6c 61 73 73 3d 22 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. |
| 6fb80 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 66 75 6e 63 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 | class="tok-fn">func</span>().<sp |
| 6fba0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 | an.class="tok-type">void</span>. |
| 6fbc0 | 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 75 73 70 65 | {.....<span.class="tok-kw">suspe |
| 6fbe0 | 6e 64 3c 2f 73 70 61 6e 3e 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 | nd</span>;.}</code></pre><pre><c |
| 6fc00 | 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 | ode.class="shell">$.zig.test.tes |
| 6fc20 | 74 2e 7a 69 67 0a 31 2f 31 20 74 65 73 74 20 26 71 75 6f 74 3b 61 73 79 6e 63 20 61 6e 64 20 61 | t.zig.1/1.test."async.and.a |
| 6fc40 | 77 61 69 74 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 | wait"....OK.All.1.tests.pas |
| 6fc60 | 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 | sed..</code></pre>........<p>... |
| 6fc80 | 20 20 20 20 54 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 | ....The.<code.class="zig"><span. |
| 6fca0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 77 61 69 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 | class="tok-kw">await</span></cod |
| 6fcc0 | 65 3e 20 6b 65 79 77 6f 72 64 20 69 73 20 75 73 65 64 20 74 6f 20 63 6f 6f 72 64 69 6e 61 74 65 | e>.keyword.is.used.to.coordinate |
| 6fce0 | 20 77 69 74 68 20 61 6e 20 61 73 79 6e 63 20 66 75 6e 63 74 69 6f 6e 27 73 0a 20 20 20 20 20 20 | .with.an.async.function's....... |
| 6fd00 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | <code.class="zig"><span.class="t |
| 6fd20 | 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 73 74 61 74 | ok-kw">return</span></code>.stat |
| 6fd40 | 65 6d 65 6e 74 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 | ement........</p>.......<p>..... |
| 6fd60 | 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ..<code.class="zig"><span.class= |
| 6fd80 | 22 74 6f 6b 2d 6b 77 22 3e 61 77 61 69 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 69 73 20 | "tok-kw">await</span></code>.is. |
| 6fda0 | 61 20 73 75 73 70 65 6e 64 20 70 6f 69 6e 74 2c 20 61 6e 64 20 74 61 6b 65 73 20 61 73 20 61 6e | a.suspend.point,.and.takes.as.an |
| 6fdc0 | 20 6f 70 65 72 61 6e 64 20 61 6e 79 74 68 69 6e 67 20 74 68 61 74 0a 20 20 20 20 20 20 63 6f 65 | .operand.anything.that.......coe |
| 6fde0 | 72 63 65 73 20 74 6f 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 | rces.to.<code.class="zig"><span. |
| 6fe00 | 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 2d 26 | class="tok-kw">anyframe</span>-& |
| 6fe20 | 67 74 3b 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 | gt;T</code>........</p>.......<p |
| 6fe40 | 3e 0a 20 20 20 20 20 20 54 68 65 72 65 20 69 73 20 61 20 63 6f 6d 6d 6f 6e 20 6d 69 73 63 6f 6e | >.......There.is.a.common.miscon |
| 6fe60 | 63 65 70 74 69 6f 6e 20 74 68 61 74 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c | ception.that.<code.class="zig">< |
| 6fe80 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 77 61 69 74 3c 2f 73 70 61 6e 3e | span.class="tok-kw">await</span> |
| 6fea0 | 3c 2f 63 6f 64 65 3e 20 72 65 73 75 6d 65 73 20 74 68 65 20 74 61 72 67 65 74 20 66 75 6e 63 74 | </code>.resumes.the.target.funct |
| 6fec0 | 69 6f 6e 2e 0a 20 20 20 20 20 20 49 74 20 69 73 20 74 68 65 20 6f 74 68 65 72 20 77 61 79 20 61 | ion........It.is.the.other.way.a |
| 6fee0 | 72 6f 75 6e 64 3a 20 69 74 20 73 75 73 70 65 6e 64 73 20 75 6e 74 69 6c 20 74 68 65 20 74 61 72 | round:.it.suspends.until.the.tar |
| 6ff00 | 67 65 74 20 66 75 6e 63 74 69 6f 6e 20 63 6f 6d 70 6c 65 74 65 73 2e 0a 20 20 20 20 20 20 49 6e | get.function.completes........In |
| 6ff20 | 20 74 68 65 20 65 76 65 6e 74 20 74 68 61 74 20 74 68 65 20 74 61 72 67 65 74 20 66 75 6e 63 74 | .the.event.that.the.target.funct |
| 6ff40 | 69 6f 6e 20 68 61 73 20 61 6c 72 65 61 64 79 20 63 6f 6d 70 6c 65 74 65 64 2c 20 3c 63 6f 64 65 | ion.has.already.completed,.<code |
| 6ff60 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | .class="zig"><span.class="tok-kw |
| 6ff80 | 22 3e 61 77 61 69 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 0a 20 20 20 20 20 20 64 6f 65 73 | ">await</span></code>.......does |
| 6ffa0 | 20 6e 6f 74 20 73 75 73 70 65 6e 64 3b 20 69 6e 73 74 65 61 64 20 69 74 20 63 6f 70 69 65 73 20 | .not.suspend;.instead.it.copies. |
| 6ffc0 | 74 68 65 0a 20 20 20 20 20 20 72 65 74 75 72 6e 20 76 61 6c 75 65 20 64 69 72 65 63 74 6c 79 20 | the.......return.value.directly. |
| 6ffe0 | 66 72 6f 6d 20 74 68 65 20 74 61 72 67 65 74 20 66 75 6e 63 74 69 6f 6e 27 73 20 66 72 61 6d 65 | from.the.target.function's.frame |
| 70000 | 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c | ........</p>.......<p.class="fil |
| 70020 | 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d | e">test.zig</p><pre><code.class= |
| 70040 | 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 | "zig"><span.class="tok-kw">const |
| 70060 | 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 |
| 70080 | 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 |
| 700a0 | 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 |
| 700c0 | 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 |
| 700e0 | 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 |
| 70100 | 65 63 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f | ect;..<span.class="tok-kw">var</ |
| 70120 | 73 70 61 6e 3e 20 74 68 65 5f 66 72 61 6d 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | span>.the_frame:.<span.class="to |
| 70140 | 6b 2d 6b 77 22 3e 61 6e 79 66 72 61 6d 65 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c | k-kw">anyframe</span>.=.<span.cl |
| 70160 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 75 6e 64 65 66 69 6e 65 64 3c 2f 73 70 61 6e 3e 3b | ass="tok-null">undefined</span>; |
| 70180 | 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e | .<span.class="tok-kw">var</span> |
| 701a0 | 20 66 69 6e 61 6c 5f 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 | .final_result:.<span.class="tok- |
| 701c0 | 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=" |
| 701e0 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 | tok-number">0</span>;..<span.cla |
| 70200 | 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 |
| 70220 | 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 61 73 79 6e 63 20 66 75 6e 63 74 69 | ass="tok-str">"async.functi |
| 70240 | 6f 6e 20 61 77 61 69 74 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 73 65 71 28 | on.await"</span>.{.....seq( |
| 70260 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 61 27 3c 2f 73 70 61 6e 3e | <span.class="tok-str">'a'</span> |
| 70280 | 29 3b 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 6b 77 22 3e | );....._.=.<span.class="tok-kw"> |
| 702a0 | 61 73 79 6e 63 3c 2f 73 70 61 6e 3e 20 61 6d 61 69 6e 28 29 3b 0a 20 20 20 20 73 65 71 28 3c 73 | async</span>.amain();.....seq(<s |
| 702c0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 66 27 3c 2f 73 70 61 6e 3e 29 3b | pan.class="tok-str">'f'</span>); |
| 702e0 | 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 73 75 6d 65 | .....<span.class="tok-kw">resume |
| 70300 | 3c 2f 73 70 61 6e 3e 20 74 68 65 5f 66 72 61 6d 65 3b 0a 20 20 20 20 73 65 71 28 3c 73 70 61 6e | </span>.the_frame;.....seq(<span |
| 70320 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 69 27 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 | .class="tok-str">'i'</span>);... |
| 70340 | 20 20 65 78 70 65 63 74 28 66 69 6e 61 6c 5f 72 65 73 75 6c 74 20 3d 3d 20 3c 73 70 61 6e 20 63 | ..expect(final_result.==.<span.c |
| 70360 | 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>);. |
| 70380 | 20 20 20 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 | ....expect(std.mem.eql(<span.cla |
| 703a0 | 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 3b 73 65 | ss="tok-type">u8</span>,.&se |
| 703c0 | 71 5f 70 6f 69 6e 74 73 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e | q_points,.<span.class="tok-str"> |
| 703e0 | 26 71 75 6f 74 3b 61 62 63 64 65 66 67 68 69 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 29 3b 0a | "abcdefghi"</span>));. |
| 70400 | 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> |
| 70420 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 61 6d 61 69 6e 3c 2f 73 70 61 | .<span.class="tok-fn">amain</spa |
| 70440 | 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 |
| 70460 | 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 73 65 71 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | </span>.{.....seq(<span.class="t |
| 70480 | 6f 6b 2d 73 74 72 22 3e 27 62 27 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 | ok-str">'b'</span>);.....<span.c |
| 704a0 | 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 20 3d 20 3c 73 70 | lass="tok-kw">var</span>.f.=.<sp |
| 704c0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 73 79 6e 63 3c 2f 73 70 61 6e 3e 20 61 | an.class="tok-kw">async</span>.a |
| 704e0 | 6e 6f 74 68 65 72 28 29 3b 0a 20 20 20 20 73 65 71 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | nother();.....seq(<span.class="t |
| 70500 | 6f 6b 2d 73 74 72 22 3e 27 65 27 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 66 69 6e 61 6c 5f 72 | ok-str">'e'</span>);.....final_r |
| 70520 | 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 61 77 61 | esult.=.<span.class="tok-kw">awa |
| 70540 | 69 74 3c 2f 73 70 61 6e 3e 20 66 3b 0a 20 20 20 20 73 65 71 28 3c 73 70 61 6e 20 63 6c 61 73 73 | it</span>.f;.....seq(<span.class |
| 70560 | 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 68 27 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 3c 73 70 61 6e 20 | ="tok-str">'h'</span>);.}.<span. |
| 70580 | 63 6c 61 73 73 3d 22 74 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 |
| 705a0 | 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 61 6e 6f 74 68 65 72 3c 2f 73 70 61 6e 3e 28 29 20 3c | lass="tok-fn">another</span>().< |
| 705c0 | 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> |
| 705e0 | 20 7b 0a 20 20 20 20 73 65 71 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 | .{.....seq(<span.class="tok-str" |
| 70600 | 3e 27 63 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 | >'c'</span>);.....<span.class="t |
| 70620 | 6f 6b 2d 6b 77 22 3e 73 75 73 70 65 6e 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 | ok-kw">suspend</span>.{......... |
| 70640 | 73 65 71 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 64 27 3c 2f 73 | seq(<span.class="tok-str">'d'</s |
| 70660 | 70 61 6e 3e 29 3b 0a 20 20 20 20 20 20 20 20 74 68 65 5f 66 72 61 6d 65 20 3d 20 3c 73 70 61 6e | pan>);.........the_frame.=.<span |
| 70680 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 66 72 61 6d 65 3c 2f 73 70 61 | .class="tok-builtin">@frame</spa |
| 706a0 | 6e 3e 28 29 3b 0a 20 20 20 20 7d 0a 20 20 20 20 73 65 71 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d | n>();.....}.....seq(<span.class= |
| 706c0 | 22 74 6f 6b 2d 73 74 72 22 3e 27 67 27 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e | "tok-str">'g'</span>);.....<span |
| 706e0 | 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 |
| 70700 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 34 3c 2f 73 70 61 | pan.class="tok-number">1234</spa |
| 70720 | 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 76 61 72 3c | n>;.}..<span.class="tok-kw">var< |
| 70740 | 2f 73 70 61 6e 3e 20 73 65 71 5f 70 6f 69 6e 74 73 20 3d 20 5b 5f 5d 3c 73 70 61 6e 20 63 6c 61 | /span>.seq_points.=.[_]<span.cla |
| 70760 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 7b 3c 73 70 61 6e 20 63 6c | ss="tok-type">u8</span>{<span.cl |
| 70780 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 7d 20 2a 2a 20 3c 73 | ass="tok-number">0</span>}.**.<s |
| 707a0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 61 62 63 64 65 66 | pan.class="tok-str">"abcdef |
| 707c0 | 67 68 69 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2e 6c 65 6e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 | ghi"</span>.len;.<span.clas |
| 707e0 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 73 65 71 5f 69 6e 64 65 78 3a | s="tok-kw">var</span>.seq_index: |
| 70800 | 20 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 |
| 70820 | 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"> |
| 70840 | 30 3c 2f 73 70 61 6e 3e 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | 0</span>;..<span.class="tok-kw"> |
| 70860 | 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 73 | fn</span>.<span.class="tok-fn">s |
| 70880 | 65 71 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 | eq</span>(c:.<span.class="tok-ty |
| 708a0 | 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | pe">u8</span>).<span.class="tok- |
| 708c0 | 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 73 65 71 5f 70 6f 69 6e | type">void</span>.{.....seq_poin |
| 708e0 | 74 73 5b 73 65 71 5f 69 6e 64 65 78 5d 20 3d 20 63 3b 0a 20 20 20 20 73 65 71 5f 69 6e 64 65 78 | ts[seq_index].=.c;.....seq_index |
| 70900 | 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</ |
| 70920 | 73 70 61 6e 3e 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 | span>;.}</code></pre><pre><code. |
| 70940 | 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 | class="shell">$.zig.test.test.zi |
| 70960 | 67 0a 31 2f 31 20 74 65 73 74 20 26 71 75 6f 74 3b 61 73 79 6e 63 20 66 75 6e 63 74 69 6f 6e 20 | g.1/1.test."async.function. |
| 70980 | 61 77 61 69 74 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 | await"....OK.All.1.tests.pa |
| 709a0 | 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 | ssed..</code></pre>........<p>.. |
| 709c0 | 20 20 20 20 20 49 6e 20 67 65 6e 65 72 61 6c 2c 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | .....In.general,.<code.class="zi |
| 709e0 | 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 75 73 70 65 6e 64 3c | g"><span.class="tok-kw">suspend< |
| 70a00 | 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 69 73 20 6c 6f 77 65 72 20 6c 65 76 65 6c 20 74 68 61 | /span></code>.is.lower.level.tha |
| 70a20 | 6e 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | n.<code.class="zig"><span.class= |
| 70a40 | 22 74 6f 6b 2d 6b 77 22 3e 61 77 61 69 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 20 4d 6f | "tok-kw">await</span></code>..Mo |
| 70a60 | 73 74 20 61 70 70 6c 69 63 61 74 69 6f 6e 0a 20 20 20 20 20 20 63 6f 64 65 20 77 69 6c 6c 20 75 | st.application.......code.will.u |
| 70a80 | 73 65 20 6f 6e 6c 79 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 | se.only.<code.class="zig"><span. |
| 70aa0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 73 79 6e 63 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 | class="tok-kw">async</span></cod |
| 70ac0 | 65 3e 20 61 6e 64 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 | e>.and.<code.class="zig"><span.c |
| 70ae0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 77 61 69 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 | lass="tok-kw">await</span></code |
| 70b00 | 3e 2c 20 62 75 74 20 65 76 65 6e 74 20 6c 6f 6f 70 0a 20 20 20 20 20 20 69 6d 70 6c 65 6d 65 6e | >,.but.event.loop.......implemen |
| 70b20 | 74 61 74 69 6f 6e 73 20 77 69 6c 6c 20 6d 61 6b 65 20 75 73 65 20 6f 66 20 3c 63 6f 64 65 20 63 | tations.will.make.use.of.<code.c |
| 70b40 | 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | lass="zig"><span.class="tok-kw"> |
| 70b60 | 73 75 73 70 65 6e 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 69 6e 74 65 72 6e 61 6c 6c 79 | suspend</span></code>.internally |
| 70b80 | 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 | ........</p>...............<h2.i |
| 70ba0 | 64 3d 22 41 73 79 6e 63 2d 46 75 6e 63 74 69 6f 6e 2d 45 78 61 6d 70 6c 65 22 3e 3c 61 20 68 72 | d="Async-Function-Example"><a.hr |
| 70bc0 | 65 66 3d 22 23 74 6f 63 2d 41 73 79 6e 63 2d 46 75 6e 63 74 69 6f 6e 2d 45 78 61 6d 70 6c 65 22 | ef="#toc-Async-Function-Example" |
| 70be0 | 3e 41 73 79 6e 63 20 46 75 6e 63 74 69 6f 6e 20 45 78 61 6d 70 6c 65 3c 2f 61 3e 20 3c 61 20 63 | >Async.Function.Example</a>.<a.c |
| 70c00 | 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 41 73 79 6e 63 2d 46 75 6e 63 74 69 6f 6e | lass="hdr".href="#Async-Function |
| 70c20 | 2d 45 78 61 6d 70 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 | -Example">..</a></h2>........<p> |
| 70c40 | 0a 20 20 20 20 20 20 50 75 74 74 69 6e 67 20 61 6c 6c 20 6f 66 20 74 68 69 73 20 74 6f 67 65 74 | .......Putting.all.of.this.toget |
| 70c60 | 68 65 72 2c 20 68 65 72 65 20 69 73 20 61 6e 20 65 78 61 6d 70 6c 65 20 6f 66 20 74 79 70 69 63 | her,.here.is.an.example.of.typic |
| 70c80 | 61 6c 0a 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e | al.......<code.class="zig"><span |
| 70ca0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 73 79 6e 63 3c 2f 73 70 61 6e 3e 3c 2f 63 6f | .class="tok-kw">async</span></co |
| 70cc0 | 64 65 3e 2f 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 | de>/<code.class="zig"><span.clas |
| 70ce0 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 77 61 69 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 75 | s="tok-kw">await</span></code>.u |
| 70d00 | 73 61 67 65 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d | sage:.......</p>.......<p.class= |
| 70d20 | 22 66 69 6c 65 22 3e 61 73 79 6e 63 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 | "file">async.zig</p><pre><code.c |
| 70d40 | 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | lass="zig"><span.class="tok-kw"> |
| 70d60 | 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=" |
| 70d80 | 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 |
| 70da0 | 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" |
| 70dc0 | 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"> |
| 70de0 | 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 41 6c 6c 6f 63 61 74 6f 72 20 3d 20 73 74 64 2e 6d 65 6d | const</span>.Allocator.=.std.mem |
| 70e00 | 2e 41 6c 6c 6f 63 61 74 6f 72 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | .Allocator;..<span.class="tok-kw |
| 70e20 | 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 |
| 70e40 | 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" |
| 70e60 | 3e 6d 61 69 6e 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | >main</span>().<span.class="tok- |
| 70e80 | 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 3c 73 70 61 | type">void</span>.{....._.=.<spa |
| 70ea0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 73 79 6e 63 3c 2f 73 70 61 6e 3e 20 61 6d | n.class="tok-kw">async</span>.am |
| 70ec0 | 61 69 6e 57 72 61 70 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 | ainWrap();......<span.class="tok |
| 70ee0 | 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 79 70 69 63 61 6c 6c 79 20 77 65 20 77 6f 75 6c 64 20 | -comment">//.Typically.we.would. |
| 70f00 | 75 73 65 20 61 6e 20 65 76 65 6e 74 20 6c 6f 6f 70 20 74 6f 20 6d 61 6e 61 67 65 20 72 65 73 75 | use.an.event.loop.to.manage.resu |
| 70f20 | 6d 69 6e 67 20 61 73 79 6e 63 20 66 75 6e 63 74 69 6f 6e 73 2c 3c 2f 73 70 61 6e 3e 0a 20 20 20 | ming.async.functions,</span>.... |
| 70f40 | 20 3c 73 70 61 6e 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 | .<span.class="tok-comment">//.bu |
| 70f60 | 74 20 69 6e 20 74 68 69 73 20 65 78 61 6d 70 6c 65 20 77 65 20 68 61 72 64 20 63 6f 64 65 20 77 | t.in.this.example.we.hard.code.w |
| 70f80 | 68 61 74 20 74 68 65 20 65 76 65 6e 74 20 6c 6f 6f 70 20 77 6f 75 6c 64 20 64 6f 2c 3c 2f 73 70 | hat.the.event.loop.would.do,</sp |
| 70fa0 | 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 |
| 70fc0 | 22 3e 2f 2f 20 74 6f 20 6d 61 6b 65 20 74 68 69 6e 67 73 20 64 65 74 65 72 6d 69 6e 69 73 74 69 | ">//.to.make.things.deterministi |
| 70fe0 | 63 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | c.</span>.....<span.class="tok-k |
| 71000 | 77 22 3e 72 65 73 75 6d 65 3c 2f 73 70 61 6e 3e 20 67 6c 6f 62 61 6c 5f 66 69 6c 65 5f 66 72 61 | w">resume</span>.global_file_fra |
| 71020 | 6d 65 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 73 | me;.....<span.class="tok-kw">res |
| 71040 | 75 6d 65 3c 2f 73 70 61 6e 3e 20 67 6c 6f 62 61 6c 5f 64 6f 77 6e 6c 6f 61 64 5f 66 72 61 6d 65 | ume</span>.global_download_frame |
| 71060 | 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 |
| 71080 | 61 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 6d 61 69 6e 57 72 | an>.<span.class="tok-fn">amainWr |
| 710a0 | 61 70 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | ap</span>().<span.class="tok-typ |
| 710c0 | 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 61 6d 61 69 6e 28 29 20 3c 73 70 | e">void</span>.{.....amain().<sp |
| 710e0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 61 74 63 68 3c 2f 73 70 61 6e 3e 20 7c | an.class="tok-kw">catch</span>.| |
| 71100 | 65 7c 20 7b 0a 20 20 20 20 20 20 20 20 73 74 64 2e 64 65 62 75 67 2e 70 72 69 6e 74 28 3c 73 70 | e|.{.........std.debug.print(<sp |
| 71120 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 7b 7d 5c 6e 26 71 75 | an.class="tok-str">"{}\n&qu |
| 71140 | 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 65 7d 29 3b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e | ot;</span>,..{e});.........<span |
| 71160 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 3c 73 70 61 6e | .class="tok-kw">if</span>.(<span |
| 71180 | 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 52 65 74 75 72 | .class="tok-builtin">@errorRetur |
| 711a0 | 6e 54 72 61 63 65 3c 2f 73 70 61 6e 3e 28 29 29 20 7c 74 72 61 63 65 7c 20 7b 0a 20 20 20 20 20 | nTrace</span>()).|trace|.{...... |
| 711c0 | 20 20 20 20 20 20 20 73 74 64 2e 64 65 62 75 67 2e 64 75 6d 70 53 74 61 63 6b 54 72 61 63 65 28 | .......std.debug.dumpStackTrace( |
| 711e0 | 74 72 61 63 65 2e 2a 29 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 73 74 64 2e | trace.*);.........}.........std. |
| 71200 | 70 72 6f 63 65 73 73 2e 65 78 69 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | process.exit(<span.class="tok-nu |
| 71220 | 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 7d 3b 0a 7d 0a 0a 3c 73 70 61 6e | mber">1</span>);.....};.}..<span |
| 71240 | 20 63 6c 61 73 73 3d 22 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. |
| 71260 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 61 6d 61 69 6e 3c 2f 73 70 61 6e 3e 28 29 20 21 3c | class="tok-fn">amain</span>().!< |
| 71280 | 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 |
| 712a0 | 3e 20 7b 0a 20 20 20 20 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 |
| 712c0 | 73 74 3c 2f 73 70 61 6e 3e 20 61 6c 6c 6f 63 61 74 6f 72 20 3d 20 73 74 64 2e 68 65 61 70 2e 70 | st</span>.allocator.=.std.heap.p |
| 712e0 | 61 67 65 5f 61 6c 6c 6f 63 61 74 6f 72 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | age_allocator;.....<span.class=" |
| 71300 | 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 64 6f 77 6e 6c 6f 61 64 5f 66 72 61 6d | tok-kw">var</span>.download_fram |
| 71320 | 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 73 79 6e 63 3c 2f | e.=.<span.class="tok-kw">async</ |
| 71340 | 73 70 61 6e 3e 20 66 65 74 63 68 55 72 6c 28 61 6c 6c 6f 63 61 74 6f 72 2c 20 3c 73 70 61 6e 20 | span>.fetchUrl(allocator,.<span. |
| 71360 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 68 74 74 70 73 3a 2f 2f 65 78 | class="tok-str">"https://ex |
| 71380 | 61 6d 70 6c 65 2e 63 6f 6d 2f 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 | ample.com/"</span>);.....<s |
| 713a0 | 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 77 | pan.class="tok-kw">var</span>.aw |
| 713c0 | 61 69 74 65 64 5f 64 6f 77 6e 6c 6f 61 64 5f 66 72 61 6d 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 | aited_download_frame.=.<span.cla |
| 713e0 | 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 20 20 20 20 | ss="tok-null">false</span>;..... |
| 71400 | 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 |
| 71420 | 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 | pan>.<span.class="tok-kw">if</sp |
| 71440 | 61 6e 3e 20 28 21 61 77 61 69 74 65 64 5f 64 6f 77 6e 6c 6f 61 64 5f 66 72 61 6d 65 29 20 7b 0a | an>.(!awaited_download_frame).{. |
| 71460 | 20 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< |
| 71480 | 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 6b 77 22 3e 61 77 61 | /span>.(<span.class="tok-kw">awa |
| 714a0 | 69 74 3c 2f 73 70 61 6e 3e 20 64 6f 77 6e 6c 6f 61 64 5f 66 72 61 6d 65 29 20 7c 72 7c 20 61 6c | it</span>.download_frame).|r|.al |
| 714c0 | 6c 6f 63 61 74 6f 72 2e 66 72 65 65 28 72 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | locator.free(r).<span.class="tok |
| 714e0 | 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 7c 5f 7c 20 7b 7d 0a 20 20 20 20 7d 3b 0a 0a | -kw">else</span>.|_|.{}.....};.. |
| 71500 | 20 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 |
| 71520 | 61 6e 3e 20 66 69 6c 65 5f 66 72 61 6d 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | an>.file_frame.=.<span.class="to |
| 71540 | 6b 2d 6b 77 22 3e 61 73 79 6e 63 3c 2f 73 70 61 6e 3e 20 72 65 61 64 46 69 6c 65 28 61 6c 6c 6f | k-kw">async</span>.readFile(allo |
| 71560 | 63 61 74 6f 72 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 | cator,.<span.class="tok-str">&qu |
| 71580 | 6f 74 3b 73 6f 6d 65 74 68 69 6e 67 2e 74 78 74 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a | ot;something.txt"</span>);. |
| 715a0 | 20 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 |
| 715c0 | 61 6e 3e 20 61 77 61 69 74 65 64 5f 66 69 6c 65 5f 66 72 61 6d 65 20 3d 20 3c 73 70 61 6e 20 63 | an>.awaited_file_frame.=.<span.c |
| 715e0 | 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 20 20 | lass="tok-null">false</span>;... |
| 71600 | 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 64 65 66 65 72 3c | ..<span.class="tok-kw">errdefer< |
| 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 6b 77 22 3e 69 66 3c 2f | /span>.<span.class="tok-kw">if</ |
| 71640 | 73 70 61 6e 3e 20 28 21 61 77 61 69 74 65 64 5f 66 69 6c 65 5f 66 72 61 6d 65 29 20 7b 0a 20 20 | span>.(!awaited_file_frame).{... |
| 71660 | 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 | ......<span.class="tok-kw">if</s |
| 71680 | 70 61 6e 3e 20 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 77 61 69 74 | pan>.(<span.class="tok-kw">await |
| 716a0 | 3c 2f 73 70 61 6e 3e 20 66 69 6c 65 5f 66 72 61 6d 65 29 20 7c 72 7c 20 61 6c 6c 6f 63 61 74 6f | </span>.file_frame).|r|.allocato |
| 716c0 | 72 2e 66 72 65 65 28 72 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 | r.free(r).<span.class="tok-kw">e |
| 716e0 | 6c 73 65 3c 2f 73 70 61 6e 3e 20 7c 5f 7c 20 7b 7d 0a 20 20 20 20 7d 3b 0a 0a 20 20 20 20 61 77 | lse</span>.|_|.{}.....};......aw |
| 71700 | 61 69 74 65 64 5f 66 69 6c 65 5f 66 72 61 6d 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | aited_file_frame.=.<span.class=" |
| 71720 | 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e | tok-null">true</span>;.....<span |
| 71740 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 66 69 6c | .class="tok-kw">const</span>.fil |
| 71760 | 65 5f 74 65 78 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 | e_text.=.<span.class="tok-kw">tr |
| 71780 | 79 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 77 | y</span>.<span.class="tok-kw">aw |
| 717a0 | 61 69 74 3c 2f 73 70 61 6e 3e 20 66 69 6c 65 5f 66 72 61 6d 65 3b 0a 20 20 20 20 3c 73 70 61 6e | ait</span>.file_frame;.....<span |
| 717c0 | 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 6c 6c | .class="tok-kw">defer</span>.all |
| 717e0 | 6f 63 61 74 6f 72 2e 66 72 65 65 28 66 69 6c 65 5f 74 65 78 74 29 3b 0a 0a 20 20 20 20 61 77 61 | ocator.free(file_text);......awa |
| 71800 | 69 74 65 64 5f 64 6f 77 6e 6c 6f 61 64 5f 66 72 61 6d 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | ited_download_frame.=.<span.clas |
| 71820 | 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 | s="tok-null">true</span>;.....<s |
| 71840 | 70 61 6e 20 63 6c 61 73 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>. |
| 71860 | 64 6f 77 6e 6c 6f 61 64 5f 74 65 78 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | download_text.=.<span.class="tok |
| 71880 | 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | -kw">try</span>.<span.class="tok |
| 718a0 | 2d 6b 77 22 3e 61 77 61 69 74 3c 2f 73 70 61 6e 3e 20 64 6f 77 6e 6c 6f 61 64 5f 66 72 61 6d 65 | -kw">await</span>.download_frame |
| 718c0 | 3b 0a 20 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 |
| 718e0 | 3c 2f 73 70 61 6e 3e 20 61 6c 6c 6f 63 61 74 6f 72 2e 66 72 65 65 28 64 6f 77 6e 6c 6f 61 64 5f | </span>.allocator.free(download_ |
| 71900 | 74 65 78 74 29 3b 0a 0a 20 20 20 20 73 74 64 2e 64 65 62 75 67 2e 70 72 69 6e 74 28 3c 73 70 61 | text);......std.debug.print(<spa |
| 71920 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 64 6f 77 6e 6c 6f 61 64 | n.class="tok-str">"download |
| 71940 | 5f 74 65 78 74 3a 20 7b 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 64 6f 77 6e | _text:.{}\n"</span>,..{down |
| 71960 | 6c 6f 61 64 5f 74 65 78 74 7d 29 3b 0a 20 20 20 20 73 74 64 2e 64 65 62 75 67 2e 70 72 69 6e 74 | load_text});.....std.debug.print |
| 71980 | 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 66 69 6c | (<span.class="tok-str">"fil |
| 719a0 | 65 5f 74 65 78 74 3a 20 7b 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 66 69 6c | e_text:.{}\n"</span>,..{fil |
| 719c0 | 65 5f 74 65 78 74 7d 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | e_text});.}..<span.class="tok-kw |
| 719e0 | 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 67 6c 6f 62 61 6c 5f 64 6f 77 6e 6c 6f 61 64 5f 66 72 61 | ">var</span>.global_download_fra |
| 71a00 | 6d 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 79 66 72 61 6d | me:.<span.class="tok-kw">anyfram |
| 71a20 | 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 6c 6c | e</span>.=.<span.class="tok-null |
| 71a40 | 22 3e 75 6e 64 65 66 69 6e 65 64 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ">undefined</span>;.<span.class= |
| 71a60 | 22 74 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=" |
| 71a80 | 74 6f 6b 2d 66 6e 22 3e 66 65 74 63 68 55 72 6c 3c 2f 73 70 61 6e 3e 28 61 6c 6c 6f 63 61 74 6f | tok-fn">fetchUrl</span>(allocato |
| 71aa0 | 72 3a 20 2a 41 6c 6c 6f 63 61 74 6f 72 2c 20 75 72 6c 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 | r:.*Allocator,.url:.[]<span.clas |
| 71ac0 | 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 |
| 71ae0 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 20 21 5b 5d 3c 73 70 | ass="tok-type">u8</span>).![]<sp |
| 71b00 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 20 7b 0a | an.class="tok-type">u8</span>.{. |
| 71b20 | 20 20 20 20 3c 73 70 61 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</ |
| 71b40 | 73 70 61 6e 3e 20 72 65 73 75 6c 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | span>.result.=.<span.class="tok- |
| 71b60 | 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 73 74 64 2e 6d 65 6d 2e 64 75 70 65 28 61 6c 6c 6f | kw">try</span>.std.mem.dupe(allo |
| 71b80 | 63 61 74 6f 72 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 | cator,.<span.class="tok-type">u8 |
| 71ba0 | 3c 2f 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">& |
| 71bc0 | 71 75 6f 74 3b 74 68 69 73 20 69 73 20 74 68 65 20 64 6f 77 6e 6c 6f 61 64 65 64 20 75 72 6c 20 | quot;this.is.the.downloaded.url. |
| 71be0 | 63 6f 6e 74 65 6e 74 73 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 | contents"</span>);.....<spa |
| 71c00 | 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 3e | n.class="tok-kw">errdefer</span> |
| 71c20 | 20 61 6c 6c 6f 63 61 74 6f 72 2e 66 72 65 65 28 72 65 73 75 6c 74 29 3b 0a 20 20 20 20 3c 73 70 | .allocator.free(result);.....<sp |
| 71c40 | 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> |
| 71c60 | 20 7b 0a 20 20 20 20 20 20 20 20 67 6c 6f 62 61 6c 5f 64 6f 77 6e 6c 6f 61 64 5f 66 72 61 6d 65 | .{.........global_download_frame |
| 71c80 | 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 66 72 | .=.<span.class="tok-builtin">@fr |
| 71ca0 | 61 6d 65 3c 2f 73 70 61 6e 3e 28 29 3b 0a 20 20 20 20 7d 0a 20 20 20 20 73 74 64 2e 64 65 62 75 | ame</span>();.....}.....std.debu |
| 71cc0 | 67 2e 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 | g.print(<span.class="tok-str">&q |
| 71ce0 | 75 6f 74 3b 66 65 74 63 68 55 72 6c 20 72 65 74 75 72 6e 69 6e 67 5c 6e 26 71 75 6f 74 3b 3c 2f | uot;fetchUrl.returning\n"</ |
| 71d00 | 73 70 61 6e 3e 2c 20 2e 7b 7d 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | span>,..{});.....<span.class="to |
| 71d20 | 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 72 65 73 75 6c 74 3b 0a 7d 0a 0a 3c | k-kw">return</span>.result;.}..< |
| 71d40 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 67 | span.class="tok-kw">var</span>.g |
| 71d60 | 6c 6f 62 61 6c 5f 66 69 6c 65 5f 66 72 61 6d 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | lobal_file_frame:.<span.class="t |
| 71d80 | 6f 6b 2d 6b 77 22 3e 61 6e 79 66 72 61 6d 65 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 | ok-kw">anyframe</span>.=.<span.c |
| 71da0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 75 6e 64 65 66 69 6e 65 64 3c 2f 73 70 61 6e 3e | lass="tok-null">undefined</span> |
| 71dc0 | 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e | ;.<span.class="tok-kw">fn</span> |
| 71de0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 72 65 61 64 46 69 6c 65 3c 2f | .<span.class="tok-fn">readFile</ |
| 71e00 | 73 70 61 6e 3e 28 61 6c 6c 6f 63 61 74 6f 72 3a 20 2a 41 6c 6c 6f 63 61 74 6f 72 2c 20 66 69 6c | span>(allocator:.*Allocator,.fil |
| 71e20 | 65 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 | ename:.[]<span.class="tok-kw">co |
| 71e40 | 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 |
| 71e60 | 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 20 21 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ">u8</span>).![]<span.class="tok |
| 71e80 | 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 |
| 71ea0 | 73 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. |
| 71ec0 | 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 |
| 71ee0 | 3e 20 73 74 64 2e 6d 65 6d 2e 64 75 70 65 28 61 6c 6c 6f 63 61 74 6f 72 2c 20 3c 73 70 61 6e 20 | >.std.mem.dupe(allocator,.<span. |
| 71f00 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 | class="tok-type">u8</span>,.<spa |
| 71f20 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 74 68 69 73 20 69 73 20 | n.class="tok-str">"this.is. |
| 71f40 | 74 68 65 20 66 69 6c 65 20 63 6f 6e 74 65 6e 74 73 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b | the.file.contents"</span>); |
| 71f60 | 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 64 65 66 | .....<span.class="tok-kw">errdef |
| 71f80 | 65 72 3c 2f 73 70 61 6e 3e 20 61 6c 6c 6f 63 61 74 6f 72 2e 66 72 65 65 28 72 65 73 75 6c 74 29 | er</span>.allocator.free(result) |
| 71fa0 | 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 75 73 70 65 | ;.....<span.class="tok-kw">suspe |
| 71fc0 | 6e 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 67 6c 6f 62 61 6c 5f 66 69 6c 65 5f | nd</span>.{.........global_file_ |
| 71fe0 | 66 72 61 6d 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e | frame.=.<span.class="tok-builtin |
| 72000 | 22 3e 40 66 72 61 6d 65 3c 2f 73 70 61 6e 3e 28 29 3b 0a 20 20 20 20 7d 0a 20 20 20 20 73 74 64 | ">@frame</span>();.....}.....std |
| 72020 | 2e 64 65 62 75 67 2e 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 | .debug.print(<span.class="tok-st |
| 72040 | 72 22 3e 26 71 75 6f 74 3b 72 65 61 64 46 69 6c 65 20 72 65 74 75 72 6e 69 6e 67 5c 6e 26 71 75 | r">"readFile.returning\n&qu |
| 72060 | 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 7d 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | ot;</span>,..{});.....<span.clas |
| 72080 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 72 65 73 75 6c 74 3b | s="tok-kw">return</span>.result; |
| 720a0 | 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d | .}</code></pre><pre><code.class= |
| 720c0 | 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 61 73 79 6e 63 2e 7a 69 | "shell">$.zig.build-exe.async.zi |
| 720e0 | 67 0a 24 20 2e 2f 61 73 79 6e 63 0a 72 65 61 64 46 69 6c 65 20 72 65 74 75 72 6e 69 6e 67 0a 66 | g.$../async.readFile.returning.f |
| 72100 | 65 74 63 68 55 72 6c 20 72 65 74 75 72 6e 69 6e 67 0a 64 6f 77 6e 6c 6f 61 64 5f 74 65 78 74 3a | etchUrl.returning.download_text: |
| 72120 | 20 74 68 69 73 20 69 73 20 74 68 65 20 64 6f 77 6e 6c 6f 61 64 65 64 20 75 72 6c 20 63 6f 6e 74 | .this.is.the.downloaded.url.cont |
| 72140 | 65 6e 74 73 0a 66 69 6c 65 5f 74 65 78 74 3a 20 74 68 69 73 20 69 73 20 74 68 65 20 66 69 6c 65 | ents.file_text:.this.is.the.file |
| 72160 | 20 63 6f 6e 74 65 6e 74 73 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c | .contents.</code></pre>........< |
| 72180 | 70 3e 0a 20 20 20 20 20 20 4e 6f 77 20 77 65 20 72 65 6d 6f 76 65 20 74 68 65 20 3c 63 6f 64 65 | p>.......Now.we.remove.the.<code |
| 721a0 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | .class="zig"><span.class="tok-kw |
| 721c0 | 22 3e 73 75 73 70 65 6e 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 61 6e 64 20 3c 63 6f 64 | ">suspend</span></code>.and.<cod |
| 721e0 | 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | e.class="zig"><span.class="tok-k |
| 72200 | 77 22 3e 72 65 73 75 6d 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 63 6f 64 65 2c 20 61 6e | w">resume</span></code>.code,.an |
| 72220 | 64 0a 20 20 20 20 20 20 6f 62 73 65 72 76 65 20 74 68 65 20 73 61 6d 65 20 62 65 68 61 76 69 6f | d.......observe.the.same.behavio |
| 72240 | 72 2c 20 77 69 74 68 20 6f 6e 65 20 74 69 6e 79 20 64 69 66 66 65 72 65 6e 63 65 3a 0a 20 20 20 | r,.with.one.tiny.difference:.... |
| 72260 | 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 62 6c | ...</p>.......<p.class="file">bl |
| 72280 | 6f 63 6b 69 6e 67 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | ocking.zig</p><pre><code.class=" |
| 722a0 | 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c | zig"><span.class="tok-kw">const< |
| 722c0 | 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 |
| 722e0 | 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 |
| 72300 | 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 |
| 72320 | 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< |
| 72340 | 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 63 | /span>.Allocator.=.std.mem.Alloc |
| 72360 | 61 74 6f 72 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c | ator;..<span.class="tok-kw">pub< |
| 72380 | 2f 73 70 61 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</ |
| 723a0 | 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< |
| 723c0 | 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"> |
| 723e0 | 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 5f 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | void</span>.{....._.=.<span.clas |
| 72400 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 73 79 6e 63 3c 2f 73 70 61 6e 3e 20 61 6d 61 69 6e 57 72 61 | s="tok-kw">async</span>.amainWra |
| 72420 | 70 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 | p();.}..<span.class="tok-kw">fn< |
| 72440 | 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 6d 61 69 | /span>.<span.class="tok-fn">amai |
| 72460 | 6e 57 72 61 70 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | nWrap</span>().<span.class="tok- |
| 72480 | 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 6d 61 69 6e 28 29 20 | type">void</span>.{.....amain(). |
| 724a0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 61 74 63 68 3c 2f 73 70 61 6e | <span.class="tok-kw">catch</span |
| 724c0 | 3e 20 7c 65 7c 20 7b 0a 20 20 20 20 20 20 20 20 73 74 64 2e 64 65 62 75 67 2e 70 72 69 6e 74 28 | >.|e|.{.........std.debug.print( |
| 724e0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 7b 7d 5c 6e | <span.class="tok-str">"{}\n |
| 72500 | 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 65 7d 29 3b 0a 20 20 20 20 20 20 20 20 3c 73 | "</span>,..{e});.........<s |
| 72520 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 3c 73 | pan.class="tok-kw">if</span>.(<s |
| 72540 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 65 72 72 6f 72 52 65 | pan.class="tok-builtin">@errorRe |
| 72560 | 74 75 72 6e 54 72 61 63 65 3c 2f 73 70 61 6e 3e 28 29 29 20 7c 74 72 61 63 65 7c 20 7b 0a 20 20 | turnTrace</span>()).|trace|.{... |
| 72580 | 20 20 20 20 20 20 20 20 20 20 73 74 64 2e 64 65 62 75 67 2e 64 75 6d 70 53 74 61 63 6b 54 72 61 | ..........std.debug.dumpStackTra |
| 725a0 | 63 65 28 74 72 61 63 65 2e 2a 29 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 73 | ce(trace.*);.........}.........s |
| 725c0 | 74 64 2e 70 72 6f 63 65 73 73 2e 65 78 69 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | td.process.exit(<span.class="tok |
| 725e0 | 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 3b 0a 7d 0a 0a 3c 73 | -number">1</span>);.....};.}..<s |
| 72600 | 70 61 6e 20 63 6c 61 73 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 |
| 72620 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 61 6d 61 69 6e 3c 2f 73 70 61 6e 3e 28 29 | an.class="tok-fn">amain</span>() |
| 72640 | 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 |
| 72660 | 70 61 6e 3e 20 7b 0a 20 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"> |
| 72680 | 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 6c 6c 6f 63 61 74 6f 72 20 3d 20 73 74 64 2e 68 65 61 | const</span>.allocator.=.std.hea |
| 726a0 | 70 2e 70 61 67 65 5f 61 6c 6c 6f 63 61 74 6f 72 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | p.page_allocator;.....<span.clas |
| 726c0 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 64 6f 77 6e 6c 6f 61 64 5f 66 | s="tok-kw">var</span>.download_f |
| 726e0 | 72 61 6d 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 73 79 6e | rame.=.<span.class="tok-kw">asyn |
| 72700 | 63 3c 2f 73 70 61 6e 3e 20 66 65 74 63 68 55 72 6c 28 61 6c 6c 6f 63 61 74 6f 72 2c 20 3c 73 70 | c</span>.fetchUrl(allocator,.<sp |
| 72720 | 61 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 74 74 70 73 3a 2f | an.class="tok-str">"https:/ |
| 72740 | 2f 65 78 61 6d 70 6c 65 2e 63 6f 6d 2f 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 | /example.com/"</span>);.... |
| 72760 | 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> |
| 72780 | 20 61 77 61 69 74 65 64 5f 64 6f 77 6e 6c 6f 61 64 5f 66 72 61 6d 65 20 3d 20 3c 73 70 61 6e 20 | .awaited_download_frame.=.<span. |
| 727a0 | 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 20 | class="tok-null">false</span>;.. |
| 727c0 | 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 64 65 66 65 72 | ...<span.class="tok-kw">errdefer |
| 727e0 | 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c | </span>.<span.class="tok-kw">if< |
| 72800 | 2f 73 70 61 6e 3e 20 28 21 61 77 61 69 74 65 64 5f 64 6f 77 6e 6c 6f 61 64 5f 66 72 61 6d 65 29 | /span>.(!awaited_download_frame) |
| 72820 | 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"> |
| 72840 | 69 66 3c 2f 73 70 61 6e 3e 20 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | if</span>.(<span.class="tok-kw"> |
| 72860 | 61 77 61 69 74 3c 2f 73 70 61 6e 3e 20 64 6f 77 6e 6c 6f 61 64 5f 66 72 61 6d 65 29 20 7c 72 7c | await</span>.download_frame).|r| |
| 72880 | 20 61 6c 6c 6f 63 61 74 6f 72 2e 66 72 65 65 28 72 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | .allocator.free(r).<span.class=" |
| 728a0 | 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 7d 0a 20 20 20 20 7d | tok-kw">else</span>.|_|.{}.....} |
| 728c0 | 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c | ;......<span.class="tok-kw">var< |
| 728e0 | 2f 73 70 61 6e 3e 20 66 69 6c 65 5f 66 72 61 6d 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | /span>.file_frame.=.<span.class= |
| 72900 | 22 74 6f 6b 2d 6b 77 22 3e 61 73 79 6e 63 3c 2f 73 70 61 6e 3e 20 72 65 61 64 46 69 6c 65 28 61 | "tok-kw">async</span>.readFile(a |
| 72920 | 6c 6c 6f 63 61 74 6f 72 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e | llocator,.<span.class="tok-str"> |
| 72940 | 26 71 75 6f 74 3b 73 6f 6d 65 74 68 69 6e 67 2e 74 78 74 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e | "something.txt"</span> |
| 72960 | 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 76 61 72 3c | );.....<span.class="tok-kw">var< |
| 72980 | 2f 73 70 61 6e 3e 20 61 77 61 69 74 65 64 5f 66 69 6c 65 5f 66 72 61 6d 65 20 3d 20 3c 73 70 61 | /span>.awaited_file_frame.=.<spa |
| 729a0 | 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 3b | n.class="tok-null">false</span>; |
| 729c0 | 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 64 65 66 | .....<span.class="tok-kw">errdef |
| 729e0 | 65 72 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 | er</span>.<span.class="tok-kw">i |
| 72a00 | 66 3c 2f 73 70 61 6e 3e 20 28 21 61 77 61 69 74 65 64 5f 66 69 6c 65 5f 66 72 61 6d 65 29 20 7b | f</span>.(!awaited_file_frame).{ |
| 72a20 | 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 66 | .........<span.class="tok-kw">if |
| 72a40 | 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 6b 77 22 3e 61 77 | </span>.(<span.class="tok-kw">aw |
| 72a60 | 61 69 74 3c 2f 73 70 61 6e 3e 20 66 69 6c 65 5f 66 72 61 6d 65 29 20 7c 72 7c 20 61 6c 6c 6f 63 | ait</span>.file_frame).|r|.alloc |
| 72a80 | 61 74 6f 72 2e 66 72 65 65 28 72 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | ator.free(r).<span.class="tok-kw |
| 72aa0 | 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 7c 5f 7c 20 7b 7d 0a 20 20 20 20 7d 3b 0a 0a 20 20 20 | ">else</span>.|_|.{}.....};..... |
| 72ac0 | 20 61 77 61 69 74 65 64 5f 66 69 6c 65 5f 66 72 61 6d 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | .awaited_file_frame.=.<span.clas |
| 72ae0 | 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 | s="tok-null">true</span>;.....<s |
| 72b00 | 70 61 6e 20 63 6c 61 73 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>. |
| 72b20 | 66 69 6c 65 5f 74 65 78 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | file_text.=.<span.class="tok-kw" |
| 72b40 | 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" |
| 72b60 | 3e 61 77 61 69 74 3c 2f 73 70 61 6e 3e 20 66 69 6c 65 5f 66 72 61 6d 65 3b 0a 20 20 20 20 3c 73 | >await</span>.file_frame;.....<s |
| 72b80 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 64 65 66 65 72 3c 2f 73 70 61 6e 3e 20 | pan.class="tok-kw">defer</span>. |
| 72ba0 | 61 6c 6c 6f 63 61 74 6f 72 2e 66 72 65 65 28 66 69 6c 65 5f 74 65 78 74 29 3b 0a 0a 20 20 20 20 | allocator.free(file_text);...... |
| 72bc0 | 61 77 61 69 74 65 64 5f 64 6f 77 6e 6c 6f 61 64 5f 66 72 61 6d 65 20 3d 20 3c 73 70 61 6e 20 63 | awaited_download_frame.=.<span.c |
| 72be0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 | lass="tok-null">true</span>;.... |
| 72c00 | 20 3c 73 70 61 6e 20 63 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 |
| 72c20 | 6e 3e 20 64 6f 77 6e 6c 6f 61 64 5f 74 65 78 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | n>.download_text.=.<span.class=" |
| 72c40 | 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=" |
| 72c60 | 74 6f 6b 2d 6b 77 22 3e 61 77 61 69 74 3c 2f 73 70 61 6e 3e 20 64 6f 77 6e 6c 6f 61 64 5f 66 72 | tok-kw">await</span>.download_fr |
| 72c80 | 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 22 3e 64 65 | ame;.....<span.class="tok-kw">de |
| 72ca0 | 66 65 72 3c 2f 73 70 61 6e 3e 20 61 6c 6c 6f 63 61 74 6f 72 2e 66 72 65 65 28 64 6f 77 6e 6c 6f | fer</span>.allocator.free(downlo |
| 72cc0 | 61 64 5f 74 65 78 74 29 3b 0a 0a 20 20 20 20 73 74 64 2e 64 65 62 75 67 2e 70 72 69 6e 74 28 3c | ad_text);......std.debug.print(< |
| 72ce0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 64 6f 77 6e 6c | span.class="tok-str">"downl |
| 72d00 | 6f 61 64 5f 74 65 78 74 3a 20 7b 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 64 | oad_text:.{}\n"</span>,..{d |
| 72d20 | 6f 77 6e 6c 6f 61 64 5f 74 65 78 74 7d 29 3b 0a 20 20 20 20 73 74 64 2e 64 65 62 75 67 2e 70 72 | ownload_text});.....std.debug.pr |
| 72d40 | 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">" |
| 72d60 | 66 69 6c 65 5f 74 65 78 74 3a 20 7b 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b | file_text:.{}\n"</span>,..{ |
| 72d80 | 66 69 6c 65 5f 74 65 78 74 7d 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | file_text});.}..<span.class="tok |
| 72da0 | 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- |
| 72dc0 | 66 6e 22 3e 66 65 74 63 68 55 72 6c 3c 2f 73 70 61 6e 3e 28 61 6c 6c 6f 63 61 74 6f 72 3a 20 2a | fn">fetchUrl</span>(allocator:.* |
| 72de0 | 41 6c 6c 6f 63 61 74 6f 72 2c 20 75 72 6c 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | Allocator,.url:.[]<span.class="t |
| 72e00 | 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= |
| 72e20 | 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 20 21 5b 5d 3c 73 70 61 6e 20 63 | "tok-type">u8</span>).![]<span.c |
| 72e40 | 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>.{..... |
| 72e60 | 3c 73 70 61 6e 20 63 6c 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 |
| 72e80 | 3e 20 72 65 73 75 6c 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | >.result.=.<span.class="tok-kw"> |
| 72ea0 | 74 72 79 3c 2f 73 70 61 6e 3e 20 73 74 64 2e 6d 65 6d 2e 64 75 70 65 28 61 6c 6c 6f 63 61 74 6f | try</span>.std.mem.dupe(allocato |
| 72ec0 | 72 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 73 70 | r,.<span.class="tok-type">u8</sp |
| 72ee0 | 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 | an>,.<span.class="tok-str">" |
| 72f00 | 3b 74 68 69 73 20 69 73 20 74 68 65 20 64 6f 77 6e 6c 6f 61 64 65 64 20 75 72 6c 20 63 6f 6e 74 | ;this.is.the.downloaded.url.cont |
| 72f20 | 65 6e 74 73 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | ents"</span>);.....<span.cl |
| 72f40 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 64 65 66 65 72 3c 2f 73 70 61 6e 3e 20 61 6c 6c | ass="tok-kw">errdefer</span>.all |
| 72f60 | 6f 63 61 74 6f 72 2e 66 72 65 65 28 72 65 73 75 6c 74 29 3b 0a 20 20 20 20 73 74 64 2e 64 65 62 | ocator.free(result);.....std.deb |
| 72f80 | 75 67 2e 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 | ug.print(<span.class="tok-str">& |
| 72fa0 | 71 75 6f 74 3b 66 65 74 63 68 55 72 6c 20 72 65 74 75 72 6e 69 6e 67 5c 6e 26 71 75 6f 74 3b 3c | quot;fetchUrl.returning\n"< |
| 72fc0 | 2f 73 70 61 6e 3e 2c 20 2e 7b 7d 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | /span>,..{});.....<span.class="t |
| 72fe0 | 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 0a 0a | ok-kw">return</span>.result;.}.. |
| 73000 | 3c 73 70 61 6e 20 63 6c 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>.< |
| 73020 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 72 65 61 64 46 69 6c 65 3c 2f 73 70 | span.class="tok-fn">readFile</sp |
| 73040 | 61 6e 3e 28 61 6c 6c 6f 63 61 74 6f 72 3a 20 2a 41 6c 6c 6f 63 61 74 6f 72 2c 20 66 69 6c 65 6e | an>(allocator:.*Allocator,.filen |
| 73060 | 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 |
| 73080 | 74 3c 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"> |
| 730a0 | 75 38 3c 2f 73 70 61 6e 3e 29 20 21 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | u8</span>).![]<span.class="tok-t |
| 730c0 | 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ype">u8</span>.{.....<span.class |
| 730e0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 72 65 73 75 6c 74 20 3d 20 | ="tok-kw">const</span>.result.=. |
| 73100 | 3c 73 70 61 6e 20 63 6c 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>. |
| 73120 | 73 74 64 2e 6d 65 6d 2e 64 75 70 65 28 61 6c 6c 6f 63 61 74 6f 72 2c 20 3c 73 70 61 6e 20 63 6c | std.mem.dupe(allocator,.<span.cl |
| 73140 | 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. |
| 73160 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 74 68 69 73 20 69 73 20 74 68 | class="tok-str">"this.is.th |
| 73180 | 65 20 66 69 6c 65 20 63 6f 6e 74 65 6e 74 73 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 20 | e.file.contents"</span>);.. |
| 731a0 | 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 64 65 66 65 72 | ...<span.class="tok-kw">errdefer |
| 731c0 | 3c 2f 73 70 61 6e 3e 20 61 6c 6c 6f 63 61 74 6f 72 2e 66 72 65 65 28 72 65 73 75 6c 74 29 3b 0a | </span>.allocator.free(result);. |
| 731e0 | 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= |
| 73200 | 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 72 65 61 64 46 69 6c 65 20 72 65 74 75 72 6e 69 | "tok-str">"readFile.returni |
| 73220 | 6e 67 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 7d 29 3b 0a 20 20 20 20 3c 73 70 | ng\n"</span>,..{});.....<sp |
| 73240 | 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>. |
| 73260 | 72 65 73 75 6c 74 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 | result;.}</code></pre><pre><code |
| 73280 | 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 62 | .class="shell">$.zig.build-exe.b |
| 732a0 | 6c 6f 63 6b 69 6e 67 2e 7a 69 67 0a 24 20 2e 2f 62 6c 6f 63 6b 69 6e 67 0a 66 65 74 63 68 55 72 | locking.zig.$../blocking.fetchUr |
| 732c0 | 6c 20 72 65 74 75 72 6e 69 6e 67 0a 72 65 61 64 46 69 6c 65 20 72 65 74 75 72 6e 69 6e 67 0a 64 | l.returning.readFile.returning.d |
| 732e0 | 6f 77 6e 6c 6f 61 64 5f 74 65 78 74 3a 20 74 68 69 73 20 69 73 20 74 68 65 20 64 6f 77 6e 6c 6f | ownload_text:.this.is.the.downlo |
| 73300 | 61 64 65 64 20 75 72 6c 20 63 6f 6e 74 65 6e 74 73 0a 66 69 6c 65 5f 74 65 78 74 3a 20 74 68 69 | aded.url.contents.file_text:.thi |
| 73320 | 73 20 69 73 20 74 68 65 20 66 69 6c 65 20 63 6f 6e 74 65 6e 74 73 0a 3c 2f 63 6f 64 65 3e 3c 2f | s.is.the.file.contents.</code></ |
| 73340 | 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 50 72 65 76 69 6f 75 73 6c 79 | pre>........<p>.......Previously |
| 73360 | 2c 20 74 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 66 65 74 63 68 55 72 6c | ,.the.<code.class="zig">fetchUrl |
| 73380 | 3c 2f 63 6f 64 65 3e 20 61 6e 64 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 72 65 | </code>.and.<code.class="zig">re |
| 733a0 | 61 64 46 69 6c 65 3c 2f 63 6f 64 65 3e 20 66 75 6e 63 74 69 6f 6e 73 20 73 75 73 70 65 6e 64 65 | adFile</code>.functions.suspende |
| 733c0 | 64 2c 0a 20 20 20 20 20 20 61 6e 64 20 77 65 72 65 20 72 65 73 75 6d 65 64 20 69 6e 20 61 6e 20 | d,.......and.were.resumed.in.an. |
| 733e0 | 6f 72 64 65 72 20 64 65 74 65 72 6d 69 6e 65 64 20 62 79 20 74 68 65 20 3c 63 6f 64 65 20 63 6c | order.determined.by.the.<code.cl |
| 73400 | 61 73 73 3d 22 7a 69 67 22 3e 6d 61 69 6e 3c 2f 63 6f 64 65 3e 20 66 75 6e 63 74 69 6f 6e 2e 20 | ass="zig">main</code>.function.. |
| 73420 | 4e 6f 77 2c 0a 20 20 20 20 20 20 73 69 6e 63 65 20 74 68 65 72 65 20 61 72 65 20 6e 6f 20 73 75 | Now,.......since.there.are.no.su |
| 73440 | 73 70 65 6e 64 20 70 6f 69 6e 74 73 2c 20 74 68 65 20 6f 72 64 65 72 20 6f 66 20 74 68 65 20 70 | spend.points,.the.order.of.the.p |
| 73460 | 72 69 6e 74 65 64 20 22 2e 2e 2e 20 72 65 74 75 72 6e 69 6e 67 22 20 6d 65 73 73 61 67 65 73 0a | rinted."....returning".messages. |
| 73480 | 20 20 20 20 20 20 69 73 20 64 65 74 65 72 6d 69 6e 65 64 20 62 79 20 74 68 65 20 6f 72 64 65 72 | ......is.determined.by.the.order |
| 734a0 | 20 6f 66 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 | .of.<code.class="zig"><span.clas |
| 734c0 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 73 79 6e 63 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 63 | s="tok-kw">async</span></code>.c |
| 734e0 | 61 6c 6c 73 69 74 65 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 | allsites........</p>............ |
| 73500 | 20 20 20 0a 20 20 20 20 20 20 20 20 3c 68 31 20 69 64 3d 22 42 75 69 6c 74 69 6e 2d 46 75 6e 63 | ............<h1.id="Builtin-Func |
| 73520 | 74 69 6f 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 | tions"><a.href="#toc-Builtin-Fun |
| 73540 | 63 74 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 20 3c 61 | ctions">Builtin.Functions</a>.<a |
| 73560 | 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 46 75 6e 63 | .class="hdr".href="#Builtin-Func |
| 73580 | 74 69 6f 6e 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 31 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 | tions">..</a></h1>........<p>... |
| 735a0 | 20 20 20 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 | ....Builtin.functions.are.provid |
| 735c0 | 65 64 20 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 | ed.by.the.compiler.and.are.prefi |
| 735e0 | 78 65 64 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 | xed.with.<code>@</code>........T |
| 73600 | 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | he.<code.class="zig"><span.class |
| 73620 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e | ="tok-kw">comptime</span></code> |
| 73640 | 20 6b 65 79 77 6f 72 64 20 6f 6e 20 61 20 70 61 72 61 6d 65 74 65 72 20 6d 65 61 6e 73 20 74 68 | .keyword.on.a.parameter.means.th |
| 73660 | 61 74 20 74 68 65 20 70 61 72 61 6d 65 74 65 72 20 6d 75 73 74 20 62 65 20 6b 6e 6f 77 6e 0a 20 | at.the.parameter.must.be.known.. |
| 73680 | 20 20 20 20 20 61 74 20 63 6f 6d 70 69 6c 65 20 74 69 6d 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e | .....at.compile.time........</p> |
| 736a0 | 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 61 64 64 57 69 74 68 4f 76 65 72 66 6c 6f 77 22 3e | .......<h2.id="addWithOverflow"> |
| 736c0 | 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 61 64 64 57 69 74 68 4f 76 65 72 66 6c 6f 77 22 3e 40 | <a.href="#toc-addWithOverflow">@ |
| 736e0 | 61 64 64 57 69 74 68 4f 76 65 72 66 6c 6f 77 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 | addWithOverflow</a>.<a.class="hd |
| 73700 | 72 22 20 68 72 65 66 3d 22 23 61 64 64 57 69 74 68 4f 76 65 72 66 6c 6f 77 22 3e c2 a7 3c 2f 61 | r".href="#addWithOverflow">..</a |
| 73720 | 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | ></h2>........<pre><code.class=" |
| 73740 | 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 | zig"><span.class="tok-builtin">@ |
| 73760 | 61 64 64 57 69 74 68 4f 76 65 72 66 6c 6f 77 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 | addWithOverflow</span>(<span.cla |
| 73780 | 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:.< |
| 737a0 | 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 |
| 737c0 | 3e 2c 20 61 3a 20 54 2c 20 62 3a 20 54 2c 20 72 65 73 75 6c 74 3a 20 2a 54 29 20 3c 73 70 61 6e | >,.a:.T,.b:.T,.result:.*T).<span |
| 737e0 | 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 |
| 73800 | 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 50 65 72 66 6f | ode></pre>.......<p>.......Perfo |
| 73820 | 72 6d 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 72 65 73 75 6c 74 2e 2a 20 3d | rms.<code.class="zig">result.*.= |
| 73840 | 20 61 20 2b 20 62 3c 2f 63 6f 64 65 3e 2e 20 49 66 20 6f 76 65 72 66 6c 6f 77 20 6f 72 20 75 6e | .a.+.b</code>..If.overflow.or.un |
| 73860 | 64 65 72 66 6c 6f 77 20 6f 63 63 75 72 73 2c 0a 20 20 20 20 20 20 20 20 20 20 73 74 6f 72 65 73 | derflow.occurs,...........stores |
| 73880 | 20 74 68 65 20 6f 76 65 72 66 6c 6f 77 65 64 20 62 69 74 73 20 69 6e 20 3c 63 6f 64 65 20 63 6c | .the.overflowed.bits.in.<code.cl |
| 738a0 | 61 73 73 3d 22 7a 69 67 22 3e 72 65 73 75 6c 74 3c 2f 63 6f 64 65 3e 20 61 6e 64 20 72 65 74 75 | ass="zig">result</code>.and.retu |
| 738c0 | 72 6e 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 | rns.<code.class="zig"><span.clas |
| 738e0 | 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e | s="tok-null">true</span></code>. |
| 73900 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 49 66 20 6e 6f 20 6f 76 65 72 66 6c 6f | ...................If.no.overflo |
| 73920 | 77 20 6f 72 20 75 6e 64 65 72 66 6c 6f 77 20 6f 63 63 75 72 73 2c 20 72 65 74 75 72 6e 73 20 3c | w.or.underflow.occurs,.returns.< |
| 73940 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | code.class="zig"><span.class="to |
| 73960 | 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>..... |
| 73980 | 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 61 6c 69 | ...</p>..............<h2.id="ali |
| 739a0 | 67 6e 43 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 | gnCast"><a.href="#toc-alignCast" |
| 739c0 | 3e 40 61 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 | >@alignCast</a>.<a.class="hdr".h |
| 739e0 | 72 65 66 3d 22 23 61 6c 69 67 6e 43 61 73 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 | ref="#alignCast">..</a></h2>.... |
| 73a00 | 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e | ....<pre><code.class="zig"><span |
| 73a20 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 61 6c 69 67 6e 43 61 73 74 3c | .class="tok-builtin">@alignCast< |
| 73a40 | 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 |
| 73a60 | 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 61 6c 69 67 6e 6d 65 6e 74 3a 20 3c 73 70 61 6e 20 63 6c 61 | time</span>.alignment:.<span.cla |
| 73a80 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 32 39 3c 2f 73 70 61 6e 3e 2c 20 70 74 72 3a 20 3c | ss="tok-type">u29</span>,.ptr:.< |
| 73aa0 | 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 |
| 73ac0 | 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 79 74 79 70 65 | n>).<span.class="tok-kw">anytype |
| 73ae0 | 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 | </span></code></pre>.......<p>.. |
| 73b00 | 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 70 74 72 3c 2f 63 6f 64 65 | .....<code.class="zig">ptr</code |
| 73b20 | 3e 20 63 61 6e 20 62 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 2a 54 3c 2f 63 | >.can.be.<code.class="zig">*T</c |
| 73b40 | 6f 64 65 3e 2c 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c | ode>,.<code.class="zig"><span.cl |
| 73b60 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 28 29 3c 2f 63 6f 64 65 3e 2c | ass="tok-kw">fn</span>()</code>, |
| 73b80 | 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3f 2a 54 3c 2f 63 6f 64 65 3e 2c 0a 20 | .<code.class="zig">?*T</code>,.. |
| 73ba0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 | .....................<code.class |
| 73bc0 | 3d 22 7a 69 67 22 3e 3f 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c | ="zig">?<span.class="tok-kw">fn< |
| 73be0 | 2f 73 70 61 6e 3e 28 29 3c 2f 63 6f 64 65 3e 2c 20 6f 72 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d | /span>()</code>,.or.<code.class= |
| 73c00 | 22 7a 69 67 22 3e 5b 5d 54 3c 2f 63 6f 64 65 3e 2e 20 49 74 20 72 65 74 75 72 6e 73 20 74 68 65 | "zig">[]T</code>..It.returns.the |
| 73c20 | 20 73 61 6d 65 20 74 79 70 65 20 61 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e | .same.type.as.<code.class="zig"> |
| 73c40 | 70 74 72 3c 2f 63 6f 64 65 3e 0a 20 20 20 20 20 20 65 78 63 65 70 74 20 77 69 74 68 20 74 68 65 | ptr</code>.......except.with.the |
| 73c60 | 20 61 6c 69 67 6e 6d 65 6e 74 20 61 64 6a 75 73 74 65 64 20 74 6f 20 74 68 65 20 6e 65 77 20 76 | .alignment.adjusted.to.the.new.v |
| 73c80 | 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 41 20 3c 61 20 68 | alue........</p>.......<p>A.<a.h |
| 73ca0 | 72 65 66 3d 22 23 49 6e 63 6f 72 72 65 63 74 2d 50 6f 69 6e 74 65 72 2d 41 6c 69 67 6e 6d 65 6e | ref="#Incorrect-Pointer-Alignmen |
| 73cc0 | 74 22 3e 70 6f 69 6e 74 65 72 20 61 6c 69 67 6e 6d 65 6e 74 20 73 61 66 65 74 79 20 63 68 65 63 | t">pointer.alignment.safety.chec |
| 73ce0 | 6b 3c 2f 61 3e 20 69 73 20 61 64 64 65 64 0a 20 20 20 20 20 20 74 6f 20 74 68 65 20 67 65 6e 65 | k</a>.is.added.......to.the.gene |
| 73d00 | 72 61 74 65 64 20 63 6f 64 65 20 74 6f 20 6d 61 6b 65 20 73 75 72 65 20 74 68 65 20 70 6f 69 6e | rated.code.to.make.sure.the.poin |
| 73d20 | 74 65 72 20 69 73 20 61 6c 69 67 6e 65 64 20 61 73 20 70 72 6f 6d 69 73 65 64 2e 3c 2f 70 3e 0a | ter.is.aligned.as.promised.</p>. |
| 73d40 | 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 61 6c 69 67 6e 4f 66 22 3e 3c | ..............<h2.id="alignOf">< |
| 73d60 | 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 61 6c 69 67 6e 4f 66 22 3e 40 61 6c 69 67 6e 4f 66 3c 2f | a.href="#toc-alignOf">@alignOf</ |
| 73d80 | 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 61 6c 69 67 6e 4f 66 | a>.<a.class="hdr".href="#alignOf |
| 73da0 | 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 | ">..</a></h2>........<pre><code. |
| 73dc0 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 | class="zig"><span.class="tok-bui |
| 73de0 | 6c 74 69 6e 22 3e 40 61 6c 69 67 6e 4f 66 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 | ltin">@alignOf</span>(<span.clas |
| 73e00 | 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 |
| 73e20 | 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> |
| 73e40 | 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 63 6f 6d 70 74 69 6d | ).<span.class="tok-type">comptim |
| 73e60 | 65 5f 69 6e 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 | e_int</span></code></pre>....... |
| 73e80 | 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 72 65 74 75 72 6e 73 20 | <p>.......This.function.returns. |
| 73ea0 | 74 68 65 20 6e 75 6d 62 65 72 20 6f 66 20 62 79 74 65 73 20 74 68 61 74 20 74 68 69 73 20 74 79 | the.number.of.bytes.that.this.ty |
| 73ec0 | 70 65 20 73 68 6f 75 6c 64 20 62 65 20 61 6c 69 67 6e 65 64 20 74 6f 0a 20 20 20 20 20 20 66 6f | pe.should.be.aligned.to.......fo |
| 73ee0 | 72 20 74 68 65 20 63 75 72 72 65 6e 74 20 74 61 72 67 65 74 20 74 6f 20 6d 61 74 63 68 20 74 68 | r.the.current.target.to.match.th |
| 73f00 | 65 20 43 20 41 42 49 2e 20 57 68 65 6e 20 74 68 65 20 63 68 69 6c 64 20 74 79 70 65 20 6f 66 20 | e.C.ABI..When.the.child.type.of. |
| 73f20 | 61 20 70 6f 69 6e 74 65 72 20 68 61 73 0a 20 20 20 20 20 20 74 68 69 73 20 61 6c 69 67 6e 6d 65 | a.pointer.has.......this.alignme |
| 73f40 | 6e 74 2c 20 74 68 65 20 61 6c 69 67 6e 6d 65 6e 74 20 63 61 6e 20 62 65 20 6f 6d 69 74 74 65 64 | nt,.the.alignment.can.be.omitted |
| 73f60 | 20 66 72 6f 6d 20 74 68 65 20 74 79 70 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 | .from.the.type........</p>...... |
| 73f80 | 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c | .<pre><code.class="zig"><span.cl |
| 73fa0 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 74 | ass="tok-kw">const</span>.expect |
| 73fc0 | 20 3d 20 3c 73 70 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 |
| 73fe0 | 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 |
| 74000 | 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 74 65 73 74 69 6e | ">"std"</span>).testin |
| 74020 | 67 2e 65 78 70 65 63 74 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 | g.expect;.<span.class="tok-kw">c |
| 74040 | 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 65 78 70 65 63 74 28 2a 3c 73 70 | omptime</span>.{.....expect(*<sp |
| 74060 | 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>.= |
| 74080 | 3d 20 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6c 69 67 6e 3c 2f 73 | =.*<span.class="tok-kw">align</s |
| 740a0 | 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">@ |
| 740c0 | 61 6c 69 67 6e 4f 66 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | alignOf</span>(<span.class="tok- |
| 740e0 | 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 29 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | type">u32</span>)).<span.class=" |
| 74100 | 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c | tok-type">u32</span>);.}</code>< |
| 74120 | 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 20 72 65 73 75 6c 74 | /pre>.......<p>.......The.result |
| 74140 | 20 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 | .is.a.target-specific.compile.ti |
| 74160 | 6d 65 20 63 6f 6e 73 74 61 6e 74 2e 20 49 74 20 69 73 20 67 75 61 72 61 6e 74 65 65 64 20 74 6f | me.constant..It.is.guaranteed.to |
| 74180 | 20 62 65 0a 20 20 20 20 20 20 6c 65 73 73 20 74 68 61 6e 20 6f 72 20 65 71 75 61 6c 20 74 6f 20 | .be.......less.than.or.equal.to. |
| 741a0 | 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 28 54 29 3c 2f 61 3e | <a.href="#sizeOf">@sizeOf(T)</a> |
| 741c0 | 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:< |
| 741e0 | 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 41 6c 69 67 6e 6d 65 6e 74 22 | /p><ul>.<li><a.href="#Alignment" |
| 74200 | 3e 41 6c 69 67 6e 6d 65 6e 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 | >Alignment</a></li>.</ul>....... |
| 74220 | 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 61 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 | .........<h2.id="as"><a.href="#t |
| 74240 | 6f 63 2d 61 73 22 3e 40 61 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 | oc-as">@as</a>.<a.class="hdr".hr |
| 74260 | 65 66 3d 22 23 61 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 | ef="#as">..</a></h2>........<pre |
| 74280 | 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ><code.class="zig"><span.class=" |
| 742a0 | 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 |
| 742c0 | 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:. |
| 742e0 | 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 |
| 74300 | 6e 3e 2c 20 65 78 70 72 65 73 73 69 6f 6e 29 20 54 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 | n>,.expression).T</code></pre>.. |
| 74320 | 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 50 65 72 66 6f 72 6d 73 20 3c 61 20 68 72 65 66 3d | .....<p>.......Performs.<a.href= |
| 74340 | 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</ |
| 74360 | 61 3e 2e 20 54 68 69 73 20 63 61 73 74 20 69 73 20 61 6c 6c 6f 77 65 64 20 77 68 65 6e 20 74 68 | a>..This.cast.is.allowed.when.th |
| 74380 | 65 20 63 6f 6e 76 65 72 73 69 6f 6e 20 69 73 20 75 6e 61 6d 62 69 67 75 6f 75 73 20 61 6e 64 20 | e.conversion.is.unambiguous.and. |
| 743a0 | 73 61 66 65 2c 0a 20 20 20 20 20 20 61 6e 64 20 69 73 20 74 68 65 20 70 72 65 66 65 72 72 65 64 | safe,.......and.is.the.preferred |
| 743c0 | 20 77 61 79 20 74 6f 20 63 6f 6e 76 65 72 74 20 62 65 74 77 65 65 6e 20 74 79 70 65 73 2c 20 77 | .way.to.convert.between.types,.w |
| 743e0 | 68 65 6e 65 76 65 72 20 70 6f 73 73 69 62 6c 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 | henever.possible........</p>.... |
| 74400 | 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 61 73 79 6e 63 43 61 6c 6c 22 3e 3c 61 | ...........<h2.id="asyncCall"><a |
| 74420 | 20 68 72 65 66 3d 22 23 74 6f 63 2d 61 73 79 6e 63 43 61 6c 6c 22 3e 40 61 73 79 6e 63 43 61 6c | .href="#toc-asyncCall">@asyncCal |
| 74440 | 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 61 73 79 6e | l</a>.<a.class="hdr".href="#asyn |
| 74460 | 63 43 61 6c 6c 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c | cCall">..</a></h2>........<pre>< |
| 74480 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | code.class="zig"><span.class="to |
| 744a0 | 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 61 73 79 6e 63 43 61 6c 6c 3c 2f 73 70 61 6e 3e 28 66 72 61 | k-builtin">@asyncCall</span>(fra |
| 744c0 | 6d 65 5f 62 75 66 66 65 72 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | me_buffer:.[]<span.class="tok-kw |
| 744e0 | 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- |
| 74500 | 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 |
| 74520 | 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 46 72 61 6d 65 3c 2f 73 70 61 6e 3e | lass="tok-builtin">@Frame</span> |
| 74540 | 28 61 6e 79 41 73 79 6e 63 46 75 6e 63 74 69 6f 6e 29 29 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 | (anyAsyncFunction))).<span.class |
| 74560 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 72 65 73 75 6c 74 5f 70 74 | ="tok-type">u8</span>,.result_pt |
| 74580 | 72 2c 20 66 75 6e 63 74 69 6f 6e 5f 70 74 72 2c 20 61 72 67 73 3a 20 3c 73 70 61 6e 20 63 6c 61 | r,.function_ptr,.args:.<span.cla |
| 745a0 | 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 |
| 745c0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 79 66 72 61 6d 65 3c 2f 73 70 61 6e 3e | n.class="tok-kw">anyframe</span> |
| 745e0 | 2d 26 67 74 3b 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 | ->T</code></pre>.......<p>... |
| 74600 | 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 | ....<code.class="zig"><span.clas |
| 74620 | 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 61 73 79 6e 63 43 61 6c 6c 3c 2f 73 70 61 6e | s="tok-builtin">@asyncCall</span |
| 74640 | 3e 3c 2f 63 6f 64 65 3e 20 70 65 72 66 6f 72 6d 73 20 61 6e 20 3c 63 6f 64 65 20 63 6c 61 73 73 | ></code>.performs.an.<code.class |
| 74660 | 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 73 79 6e | ="zig"><span.class="tok-kw">asyn |
| 74680 | 63 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 63 61 6c 6c 20 6f 6e 20 61 20 66 75 6e 63 74 69 | c</span></code>.call.on.a.functi |
| 746a0 | 6f 6e 20 70 6f 69 6e 74 65 72 2c 0a 20 20 20 20 20 20 77 68 69 63 68 20 6d 61 79 20 6f 72 20 6d | on.pointer,.......which.may.or.m |
| 746c0 | 61 79 20 6e 6f 74 20 62 65 20 61 6e 20 3c 61 20 68 72 65 66 3d 22 23 41 73 79 6e 63 2d 46 75 6e | ay.not.be.an.<a.href="#Async-Fun |
| 746e0 | 63 74 69 6f 6e 73 22 3e 61 73 79 6e 63 20 66 75 6e 63 74 69 6f 6e 3c 2f 61 3e 2e 0a 20 20 20 20 | ctions">async.function</a>...... |
| 74700 | 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 70 72 6f 76 69 | ..</p>.......<p>.......The.provi |
| 74720 | 64 65 64 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 66 72 61 6d 65 5f 62 75 66 66 | ded.<code.class="zig">frame_buff |
| 74740 | 65 72 3c 2f 63 6f 64 65 3e 20 6d 75 73 74 20 62 65 20 6c 61 72 67 65 20 65 6e 6f 75 67 68 20 74 | er</code>.must.be.large.enough.t |
| 74760 | 6f 20 66 69 74 20 74 68 65 20 65 6e 74 69 72 65 20 66 75 6e 63 74 69 6f 6e 20 66 72 61 6d 65 2e | o.fit.the.entire.function.frame. |
| 74780 | 0a 20 20 20 20 20 20 54 68 69 73 20 73 69 7a 65 20 63 61 6e 20 62 65 20 64 65 74 65 72 6d 69 6e | .......This.size.can.be.determin |
| 747a0 | 65 64 20 77 69 74 68 20 3c 61 20 68 72 65 66 3d 22 23 66 72 61 6d 65 53 69 7a 65 22 3e 40 66 72 | ed.with.<a.href="#frameSize">@fr |
| 747c0 | 61 6d 65 53 69 7a 65 3c 2f 61 3e 2e 20 54 6f 20 70 72 6f 76 69 64 65 20 61 20 74 6f 6f 2d 73 6d | ameSize</a>..To.provide.a.too-sm |
| 747e0 | 61 6c 6c 20 62 75 66 66 65 72 0a 20 20 20 20 20 20 69 6e 76 6f 6b 65 73 20 73 61 66 65 74 79 2d | all.buffer.......invokes.safety- |
| 74800 | 63 68 65 63 6b 65 64 20 3c 61 20 68 72 65 66 3d 22 23 55 6e 64 65 66 69 6e 65 64 2d 42 65 68 61 | checked.<a.href="#Undefined-Beha |
| 74820 | 76 69 6f 72 22 3e 55 6e 64 65 66 69 6e 65 64 20 42 65 68 61 76 69 6f 72 3c 2f 61 3e 2e 0a 20 20 | vior">Undefined.Behavior</a>.... |
| 74840 | 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 20 63 | ....</p>.......<p>.......<code.c |
| 74860 | 6c 61 73 73 3d 22 7a 69 67 22 3e 72 65 73 75 6c 74 5f 70 74 72 3c 2f 63 6f 64 65 3e 20 69 73 20 | lass="zig">result_ptr</code>.is. |
| 74880 | 6f 70 74 69 6f 6e 61 6c 20 28 3c 61 20 68 72 65 66 3d 22 23 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f | optional.(<a.href="#null">null</ |
| 748a0 | 61 3e 20 6d 61 79 20 62 65 20 70 72 6f 76 69 64 65 64 29 2e 20 49 66 20 70 72 6f 76 69 64 65 64 | a>.may.be.provided)..If.provided |
| 748c0 | 2c 0a 20 20 20 20 20 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 63 61 6c 6c 20 77 69 6c 6c 20 77 | ,.......the.function.call.will.w |
| 748e0 | 72 69 74 65 20 69 74 73 20 72 65 73 75 6c 74 20 64 69 72 65 63 74 6c 79 20 74 6f 20 74 68 65 20 | rite.its.result.directly.to.the. |
| 74900 | 72 65 73 75 6c 74 20 70 6f 69 6e 74 65 72 2c 20 77 68 69 63 68 20 77 69 6c 6c 20 62 65 20 61 76 | result.pointer,.which.will.be.av |
| 74920 | 61 69 6c 61 62 6c 65 20 74 6f 0a 20 20 20 20 20 20 72 65 61 64 20 61 66 74 65 72 20 3c 61 20 68 | ailable.to.......read.after.<a.h |
| 74940 | 72 65 66 3d 22 23 41 73 79 6e 63 2d 61 6e 64 2d 41 77 61 69 74 22 3e 61 77 61 69 74 3c 2f 61 3e | ref="#Async-and-Await">await</a> |
| 74960 | 20 63 6f 6d 70 6c 65 74 65 73 2e 20 41 6e 79 20 72 65 73 75 6c 74 20 6c 6f 63 61 74 69 6f 6e 20 | .completes..Any.result.location. |
| 74980 | 70 72 6f 76 69 64 65 64 20 74 6f 0a 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a | provided.to.......<code.class="z |
| 749a0 | 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 77 61 69 74 3c 2f | ig"><span.class="tok-kw">await</ |
| 749c0 | 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 77 69 6c 6c 20 63 6f 70 79 20 74 68 65 20 72 65 73 75 6c | span></code>.will.copy.the.resul |
| 749e0 | 74 20 66 72 6f 6d 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 72 65 73 75 6c 74 5f | t.from.<code.class="zig">result_ |
| 74a00 | 70 74 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 70 20 | ptr</code>........</p>.......<p. |
| 74a20 | 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 | class="file">test.zig</p><pre><c |
| 74a40 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ode.class="zig"><span.class="tok |
| 74a60 | 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 |
| 74a80 | 61 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> |
| 74aa0 | 28 3c 73 70 61 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 |
| 74ac0 | 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 |
| 74ae0 | 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 |
| 74b00 | 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 |
| 74b20 | 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 |
| 74b40 | 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 61 73 79 6e 63 20 66 6e 20 70 6f 69 6e 74 65 72 20 69 6e | k-str">"async.fn.pointer.in |
| 74b60 | 20 61 20 73 74 72 75 63 74 20 66 69 65 6c 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 | .a.struct.field"</span>.{.. |
| 74b80 | 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 |
| 74ba0 | 6e 3e 20 64 61 74 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | n>.data:.<span.class="tok-type"> |
| 74bc0 | 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 |
| 74be0 | 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | mber">1</span>;.....<span.class= |
| 74c00 | 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 46 6f 6f 20 3d 20 3c 73 70 61 | "tok-kw">const</span>.Foo.=.<spa |
| 74c20 | 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>.{ |
| 74c40 | 0a 20 20 20 20 20 20 20 20 62 61 72 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | .........bar:.<span.class="tok-k |
| 74c60 | 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 28 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | w">fn</span>.(*<span.class="tok- |
| 74c80 | 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 |
| 74ca0 | 6f 6b 2d 6b 77 22 3e 63 61 6c 6c 63 6f 6e 76 3c 2f 73 70 61 6e 3e 28 2e 41 73 79 6e 63 29 20 3c | ok-kw">callconv</span>(.Async).< |
| 74cc0 | 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 |
| 74ce0 | 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 6b | >,.....};.....<span.class="tok-k |
| 74d00 | 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 66 6f 6f 20 3d 20 46 6f 6f 7b 20 2e 62 61 72 20 3d 20 | w">var</span>.foo.=.Foo{..bar.=. |
| 74d20 | 66 75 6e 63 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 | func.};.....<span.class="tok-kw" |
| 74d40 | 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 62 79 74 65 73 3a 20 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d | >var</span>.bytes:.[<span.class= |
| 74d60 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 36 34 3c 2f 73 70 61 6e 3e 5d 3c 73 70 61 6e 20 63 6c 61 | "tok-number">64</span>]<span.cla |
| 74d80 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c | ss="tok-type">u8</span>.<span.cl |
| 74da0 | 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. |
| 74dc0 | 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 |
| 74de0 | 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 46 | an>(<span.class="tok-builtin">@F |
| 74e00 | 72 61 6d 65 3c 2f 73 70 61 6e 3e 28 66 75 6e 63 29 29 29 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | rame</span>(func))).=.<span.clas |
| 74e20 | 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 75 6e 64 65 66 69 6e 65 64 3c 2f 73 70 61 6e 3e 3b 0a 20 | s="tok-null">undefined</span>;.. |
| 74e40 | 20 20 20 3c 73 70 61 6e 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 |
| 74e60 | 70 61 6e 3e 20 66 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 | pan>.f.=.<span.class="tok-builti |
| 74e80 | 6e 22 3e 40 61 73 79 6e 63 43 61 6c 6c 3c 2f 73 70 61 6e 3e 28 26 61 6d 70 3b 62 79 74 65 73 2c | n">@asyncCall</span>(&bytes, |
| 74ea0 | 20 7b 7d 2c 20 66 6f 6f 2e 62 61 72 2c 20 2e 7b 26 61 6d 70 3b 64 61 74 61 7d 29 3b 0a 20 20 20 | .{},.foo.bar,..{&data});.... |
| 74ec0 | 20 65 78 70 65 63 74 28 64 61 74 61 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | .expect(data.==.<span.class="tok |
| 74ee0 | 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 6c | -number">2</span>);.....<span.cl |
| 74f00 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 73 75 6d 65 3c 2f 73 70 61 6e 3e 20 66 3b 0a 20 20 | ass="tok-kw">resume</span>.f;... |
| 74f20 | 20 20 65 78 70 65 63 74 28 64 61 74 61 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ..expect(data.==.<span.class="to |
| 74f40 | 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c | k-number">4</span>);.}..<span.cl |
| 74f60 | 61 73 73 3d 22 74 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 |
| 74f80 | 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 66 75 6e 63 3c 2f 73 70 61 6e 3e 28 79 3a 20 2a 3c 73 70 61 | ss="tok-fn">func</span>(y:.*<spa |
| 74fa0 | 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>).< |
| 74fc0 | 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 |
| 74fe0 | 3e 20 7b 0a 20 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 | >.{.....<span.class="tok-kw">def |
| 75000 | 65 72 3c 2f 73 70 61 6e 3e 20 79 2e 2a 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | er</span>.y.*.+=.<span.class="to |
| 75020 | 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 79 2e 2a 20 2b 3d 20 3c | k-number">2</span>;.....y.*.+=.< |
| 75040 | 73 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> |
| 75060 | 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 75 73 70 65 | ;.....<span.class="tok-kw">suspe |
| 75080 | 6e 64 3c 2f 73 70 61 6e 3e 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 | nd</span>;.}</code></pre><pre><c |
| 750a0 | 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 | ode.class="shell">$.zig.test.tes |
| 750c0 | 74 2e 7a 69 67 0a 31 2f 31 20 74 65 73 74 20 26 71 75 6f 74 3b 61 73 79 6e 63 20 66 6e 20 70 6f | t.zig.1/1.test."async.fn.po |
| 750e0 | 69 6e 74 65 72 20 69 6e 20 61 20 73 74 72 75 63 74 20 66 69 65 6c 64 26 71 75 6f 74 3b 2e 2e 2e | inter.in.a.struct.field"... |
| 75100 | 20 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c | .OK.All.1.tests.passed..</code>< |
| 75120 | 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 61 74 6f | /pre>................<h2.id="ato |
| 75140 | 6d 69 63 4c 6f 61 64 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 61 74 6f 6d 69 63 4c 6f 61 | micLoad"><a.href="#toc-atomicLoa |
| 75160 | 64 22 3e 40 61 74 6f 6d 69 63 4c 6f 61 64 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 | d">@atomicLoad</a>.<a.class="hdr |
| 75180 | 22 20 68 72 65 66 3d 22 23 61 74 6f 6d 69 63 4c 6f 61 64 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e | ".href="#atomicLoad">..</a></h2> |
| 751a0 | 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c | ........<pre><code.class="zig">< |
| 751c0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 61 74 6f 6d 69 63 | span.class="tok-builtin">@atomic |
| 751e0 | 4c 6f 61 64 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | Load</span>(<span.class="tok-kw" |
| 75200 | 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 54 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | >comptime</span>.T:.<span.class= |
| 75220 | 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 70 74 72 3a 20 2a 3c 73 | "tok-type">type</span>,.ptr:.*<s |
| 75240 | 70 61 6e 20 63 6c 61 73 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>. |
| 75260 | 54 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 | T,.<span.class="tok-kw">comptime |
| 75280 | 3c 2f 73 70 61 6e 3e 20 6f 72 64 65 72 69 6e 67 3a 20 62 75 69 6c 74 69 6e 2e 41 74 6f 6d 69 63 | </span>.ordering:.builtin.Atomic |
| 752a0 | 4f 72 64 65 72 29 20 54 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a | Order).T</code></pre>.......<p>. |
| 752c0 | 20 20 20 20 20 20 54 68 69 73 20 62 75 69 6c 74 69 6e 20 66 75 6e 63 74 69 6f 6e 20 61 74 6f 6d | ......This.builtin.function.atom |
| 752e0 | 69 63 61 6c 6c 79 20 64 65 72 65 66 65 72 65 6e 63 65 73 20 61 20 70 6f 69 6e 74 65 72 20 61 6e | ically.dereferences.a.pointer.an |
| 75300 | 64 20 72 65 74 75 72 6e 73 20 74 68 65 20 76 61 6c 75 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a | d.returns.the.value........</p>. |
| 75320 | 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | ......<p>.......<code.class="zig |
| 75340 | 22 3e 54 3c 2f 63 6f 64 65 3e 20 6d 75 73 74 20 62 65 20 61 20 70 6f 69 6e 74 65 72 2c 20 61 20 | ">T</code>.must.be.a.pointer,.a. |
| 75360 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | <code.class="zig"><span.class="t |
| 75380 | 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 |
| 753a0 | 6c 6f 61 74 2c 0a 20 20 20 20 20 20 61 6e 20 69 6e 74 65 67 65 72 20 6f 72 20 61 6e 20 65 6e 75 | loat,.......an.integer.or.an.enu |
| 753c0 | 6d 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 | m........</p>..............<h2.i |
| 753e0 | 64 3d 22 61 74 6f 6d 69 63 52 6d 77 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 61 74 6f 6d | d="atomicRmw"><a.href="#toc-atom |
| 75400 | 69 63 52 6d 77 22 3e 40 61 74 6f 6d 69 63 52 6d 77 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 | icRmw">@atomicRmw</a>.<a.class=" |
| 75420 | 68 64 72 22 20 68 72 65 66 3d 22 23 61 74 6f 6d 69 63 52 6d 77 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 | hdr".href="#atomicRmw">..</a></h |
| 75440 | 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | 2>........<pre><code.class="zig" |
| 75460 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 61 74 6f 6d | ><span.class="tok-builtin">@atom |
| 75480 | 69 63 52 6d 77 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | icRmw</span>(<span.class="tok-kw |
| 754a0 | 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 54 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ">comptime</span>.T:.<span.class |
| 754c0 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 70 74 72 3a 20 2a 54 | ="tok-type">type</span>,.ptr:.*T |
| 754e0 | 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c | ,.<span.class="tok-kw">comptime< |
| 75500 | 2f 73 70 61 6e 3e 20 6f 70 3a 20 62 75 69 6c 74 69 6e 2e 41 74 6f 6d 69 63 52 6d 77 4f 70 2c 20 | /span>.op:.builtin.AtomicRmwOp,. |
| 75520 | 6f 70 65 72 61 6e 64 3a 20 54 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | operand:.T,.<span.class="tok-kw" |
| 75540 | 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 6f 72 64 65 72 69 6e 67 3a 20 62 75 69 6c 74 | >comptime</span>.ordering:.built |
| 75560 | 69 6e 2e 41 74 6f 6d 69 63 4f 72 64 65 72 29 20 54 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 | in.AtomicOrder).T</code></pre>.. |
| 75580 | 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 6e 63 | .....<p>.......This.builtin.func |
| 755a0 | 74 69 6f 6e 20 61 74 6f 6d 69 63 61 6c 6c 79 20 6d 6f 64 69 66 69 65 73 20 6d 65 6d 6f 72 79 20 | tion.atomically.modifies.memory. |
| 755c0 | 61 6e 64 20 74 68 65 6e 20 72 65 74 75 72 6e 73 20 74 68 65 20 70 72 65 76 69 6f 75 73 20 76 61 | and.then.returns.the.previous.va |
| 755e0 | 6c 75 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 | lue........</p>.......<p>....... |
| 75600 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 54 3c 2f 63 6f 64 65 3e 20 6d 75 73 74 20 | <code.class="zig">T</code>.must. |
| 75620 | 62 65 20 61 20 70 6f 69 6e 74 65 72 2c 20 61 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | be.a.pointer,.a.<code.class="zig |
| 75640 | 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 | "><span.class="tok-type">bool</s |
| 75660 | 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 61 20 66 6c 6f 61 74 2c 0a 20 20 20 20 20 20 61 6e 20 69 | pan></code>,.a.float,.......an.i |
| 75680 | 6e 74 65 67 65 72 20 6f 72 20 61 6e 20 65 6e 75 6d 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 | nteger.or.an.enum........</p>... |
| 756a0 | 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 53 75 70 70 6f 72 74 65 64 20 6f 70 65 72 61 74 69 6f | ....<p>.......Supported.operatio |
| 756c0 | 6e 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 | ns:.......</p>.......<ul>....... |
| 756e0 | 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 2e 58 63 68 67 3c 2f 63 | ..<li><code.class="zig">.Xchg</c |
| 75700 | 6f 64 65 3e 20 2d 20 73 74 6f 72 65 73 20 74 68 65 20 6f 70 65 72 61 6e 64 20 75 6e 6d 6f 64 69 | ode>.-.stores.the.operand.unmodi |
| 75720 | 66 69 65 64 2e 20 53 75 70 70 6f 72 74 73 20 65 6e 75 6d 73 2c 20 69 6e 74 65 67 65 72 73 20 61 | fied..Supports.enums,.integers.a |
| 75740 | 6e 64 20 66 6c 6f 61 74 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 | nd.floats.</li>.........<li><cod |
| 75760 | 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 2e 41 64 64 3c 2f 63 6f 64 65 3e 20 2d 20 66 6f 72 20 | e.class="zig">.Add</code>.-.for. |
| 75780 | 69 6e 74 65 67 65 72 73 2c 20 74 77 6f 73 20 63 6f 6d 70 6c 65 6d 65 6e 74 20 77 72 61 70 61 72 | integers,.twos.complement.wrapar |
| 757a0 | 6f 75 6e 64 20 61 64 64 69 74 69 6f 6e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 41 6c 73 6f 20 | ound.addition..............Also. |
| 757c0 | 73 75 70 70 6f 72 74 73 20 3c 61 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 73 22 3e 46 6c 6f 61 74 | supports.<a.href="#Floats">Float |
| 757e0 | 73 3c 2f 61 3e 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c | s</a>.</li>.........<li><code.cl |
| 75800 | 61 73 73 3d 22 7a 69 67 22 3e 2e 53 75 62 3c 2f 63 6f 64 65 3e 20 2d 20 66 6f 72 20 69 6e 74 65 | ass="zig">.Sub</code>.-.for.inte |
| 75820 | 67 65 72 73 2c 20 74 77 6f 73 20 63 6f 6d 70 6c 65 6d 65 6e 74 20 77 72 61 70 61 72 6f 75 6e 64 | gers,.twos.complement.wraparound |
| 75840 | 20 73 75 62 74 72 61 63 74 69 6f 6e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 41 6c 73 6f 20 73 | .subtraction..............Also.s |
| 75860 | 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 74 73 | upports.<a.href="#Floats">Floats |
| 75880 | 3c 2f 61 3e 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 | </a>.</li>.........<li><code.cla |
| 758a0 | 73 73 3d 22 7a 69 67 22 3e 2e 41 6e 64 3c 2f 63 6f 64 65 3e 20 2d 20 62 69 74 77 69 73 65 20 61 | ss="zig">.And</code>.-.bitwise.a |
| 758c0 | 6e 64 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d | nd</li>.........<li><code.class= |
| 758e0 | 22 7a 69 67 22 3e 2e 4e 61 6e 64 3c 2f 63 6f 64 65 3e 20 2d 20 62 69 74 77 69 73 65 20 6e 61 6e | "zig">.Nand</code>.-.bitwise.nan |
| 75900 | 64 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | d</li>.........<li><code.class=" |
| 75920 | 7a 69 67 22 3e 2e 4f 72 3c 2f 63 6f 64 65 3e 20 2d 20 62 69 74 77 69 73 65 20 6f 72 3c 2f 6c 69 | zig">.Or</code>.-.bitwise.or</li |
| 75940 | 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e | >.........<li><code.class="zig"> |
| 75960 | 2e 58 6f 72 3c 2f 63 6f 64 65 3e 20 2d 20 62 69 74 77 69 73 65 20 78 6f 72 3c 2f 6c 69 3e 0a 20 | .Xor</code>.-.bitwise.xor</li>.. |
| 75980 | 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 2e 4d 61 | .......<li><code.class="zig">.Ma |
| 759a0 | 78 3c 2f 63 6f 64 65 3e 20 2d 20 73 74 6f 72 65 73 20 74 68 65 20 6f 70 65 72 61 6e 64 20 69 66 | x</code>.-.stores.the.operand.if |
| 759c0 | 20 69 74 20 69 73 20 6c 61 72 67 65 72 2e 20 53 75 70 70 6f 72 74 73 20 69 6e 74 65 67 65 72 73 | .it.is.larger..Supports.integers |
| 759e0 | 20 61 6e 64 20 66 6c 6f 61 74 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 | .and.floats.</li>.........<li><c |
| 75a00 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 2e 4d 69 6e 3c 2f 63 6f 64 65 3e 20 2d 20 73 74 | ode.class="zig">.Min</code>.-.st |
| 75a20 | 6f 72 65 73 20 74 68 65 20 6f 70 65 72 61 6e 64 20 69 66 20 69 74 20 69 73 20 73 6d 61 6c 6c 65 | ores.the.operand.if.it.is.smalle |
| 75a40 | 72 2e 20 53 75 70 70 6f 72 74 73 20 69 6e 74 65 67 65 72 73 20 61 6e 64 20 66 6c 6f 61 74 73 2e | r..Supports.integers.and.floats. |
| 75a60 | 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 3c | </li>.......</ul>..............< |
| 75a80 | 68 32 20 69 64 3d 22 61 74 6f 6d 69 63 53 74 6f 72 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f | h2.id="atomicStore"><a.href="#to |
| 75aa0 | 63 2d 61 74 6f 6d 69 63 53 74 6f 72 65 22 3e 40 61 74 6f 6d 69 63 53 74 6f 72 65 3c 2f 61 3e 20 | c-atomicStore">@atomicStore</a>. |
| 75ac0 | 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 61 74 6f 6d 69 63 53 74 6f 72 | <a.class="hdr".href="#atomicStor |
| 75ae0 | 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 | e">..</a></h2>........<pre><code |
| 75b00 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 | .class="zig"><span.class="tok-bu |
| 75b20 | 69 6c 74 69 6e 22 3e 40 61 74 6f 6d 69 63 53 74 6f 72 65 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e | iltin">@atomicStore</span>(<span |
| 75b40 | 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>. |
| 75b60 | 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</ |
| 75b80 | 73 70 61 6e 3e 2c 20 70 74 72 3a 20 2a 54 2c 20 76 61 6c 75 65 3a 20 54 2c 20 3c 73 70 61 6e 20 | span>,.ptr:.*T,.value:.T,.<span. |
| 75ba0 | 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 6f | class="tok-kw">comptime</span>.o |
| 75bc0 | 72 64 65 72 69 6e 67 3a 20 62 75 69 6c 74 69 6e 2e 41 74 6f 6d 69 63 4f 72 64 65 72 29 20 3c 73 | rdering:.builtin.AtomicOrder).<s |
| 75be0 | 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> |
| 75c00 | 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 | </code></pre>.......<p>.......Th |
| 75c20 | 69 73 20 62 75 69 6c 74 69 6e 20 66 75 6e 63 74 69 6f 6e 20 61 74 6f 6d 69 63 61 6c 6c 79 20 73 | is.builtin.function.atomically.s |
| 75c40 | 74 6f 72 65 73 20 61 20 76 61 6c 75 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 | tores.a.value........</p>....... |
| 75c60 | 3c 70 3e 0a 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 54 3c 2f 63 | <p>.......<code.class="zig">T</c |
| 75c80 | 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 65 20 | ode>.must.be.a.pointer,.a.<code. |
| 75ca0 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | class="zig"><span.class="tok-typ |
| 75cc0 | 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 61 20 66 6c 6f 61 74 2c 0a | e">bool</span></code>,.a.float,. |
| 75ce0 | 20 20 20 20 20 20 61 6e 20 69 6e 74 65 67 65 72 20 6f 72 20 61 6e 20 65 6e 75 6d 2e 0a 20 20 20 | ......an.integer.or.an.enum..... |
| 75d00 | 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 62 69 74 | ...</p>..............<h2.id="bit |
| 75d20 | 43 61 73 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 62 69 74 43 61 73 74 22 3e 40 62 69 | Cast"><a.href="#toc-bitCast">@bi |
| 75d40 | 74 43 61 73 74 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 | tCast</a>.<a.class="hdr".href="# |
| 75d60 | 62 69 74 43 61 73 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 | bitCast">..</a></h2>........<pre |
| 75d80 | 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ><code.class="zig"><span.class=" |
| 75da0 | 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 62 69 74 43 61 73 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 | tok-builtin">@bitCast</span>(<sp |
| 75dc0 | 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 |
| 75de0 | 3e 20 44 65 73 74 54 79 70 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | >.DestType:.<span.class="tok-typ |
| 75e00 | 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 76 61 6c 75 65 3a 20 3c 73 70 61 6e 20 63 6c 61 | e">type</span>,.value:.<span.cla |
| 75e20 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 79 74 79 70 65 3c 2f 73 70 61 6e 3e 29 20 44 65 73 74 | ss="tok-kw">anytype</span>).Dest |
| 75e40 | 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>..... |
| 75e60 | 20 20 43 6f 6e 76 65 72 74 73 20 61 20 76 61 6c 75 65 20 6f 66 20 6f 6e 65 20 74 79 70 65 20 74 | ..Converts.a.value.of.one.type.t |
| 75e80 | 6f 20 61 6e 6f 74 68 65 72 20 74 79 70 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 | o.another.type........</p>...... |
| 75ea0 | 20 3c 70 3e 0a 20 20 20 20 20 20 41 73 73 65 72 74 73 20 74 68 61 74 20 3c 63 6f 64 65 20 63 6c | .<p>.......Asserts.that.<code.cl |
| 75ec0 | 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 | ass="zig"><span.class="tok-built |
| 75ee0 | 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=" |
| 75f00 | 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 |
| 75f20 | 65 29 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 | e)).==.<span.class="tok-builtin" |
| 75f40 | 3e 40 73 69 7a 65 4f 66 3c 2f 73 70 61 6e 3e 28 44 65 73 74 54 79 70 65 29 3c 2f 63 6f 64 65 3e | >@sizeOf</span>(DestType)</code> |
| 75f60 | 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 73 73 | ........</p>.......<p>.......Ass |
| 75f80 | 65 72 74 73 20 74 68 61 74 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 | erts.that.<code.class="zig"><spa |
| 75fa0 | 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< |
| 75fc0 | 2f 73 70 61 6e 3e 28 44 65 73 74 54 79 70 65 29 20 21 3d 20 2e 50 6f 69 6e 74 65 72 3c 2f 63 6f | /span>(DestType).!=..Pointer</co |
| 75fe0 | 64 65 3e 2e 20 55 73 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e | de>..Use.<code.class="zig"><span |
| 76000 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 70 74 72 43 61 73 74 3c 2f 73 | .class="tok-builtin">@ptrCast</s |
| 76020 | 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6f 72 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | pan></code>.or.<code.class="zig" |
| 76040 | 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 54 | ><span.class="tok-builtin">@intT |
| 76060 | 6f 50 74 72 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 69 66 20 79 6f 75 20 6e 65 65 64 20 74 | oPtr</span></code>.if.you.need.t |
| 76080 | 68 69 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 | his........</p>.......<p>....... |
| 760a0 | 43 61 6e 20 62 65 20 75 73 65 64 20 66 6f 72 20 74 68 65 73 65 20 74 68 69 6e 67 73 20 66 6f 72 | Can.be.used.for.these.things.for |
| 760c0 | 20 65 78 61 6d 70 6c 65 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a | .example:.......</p>.......<ul>. |
| 760e0 | 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 43 6f 6e 76 65 72 74 20 3c 63 6f 64 65 20 63 6c 61 73 | ..........<li>Convert.<code.clas |
| 76100 | 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 | s="zig"><span.class="tok-type">f |
| 76120 | 33 32 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 74 6f 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d | 32</span></code>.to.<code.class= |
| 76140 | 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 | "zig"><span.class="tok-type">u32 |
| 76160 | 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 62 69 74 73 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 | </span></code>.bits</li>........ |
| 76180 | 20 20 20 3c 6c 69 3e 43 6f 6e 76 65 72 74 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | ...<li>Convert.<code.class="zig" |
| 761a0 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 | ><span.class="tok-type">i32</spa |
| 761c0 | 6e 3e 3c 2f 63 6f 64 65 3e 20 74 6f 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c | n></code>.to.<code.class="zig">< |
| 761e0 | 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> |
| 76200 | 3c 2f 63 6f 64 65 3e 20 70 72 65 73 65 72 76 69 6e 67 20 74 77 6f 73 20 63 6f 6d 70 6c 65 6d 65 | </code>.preserving.twos.compleme |
| 76220 | 6e 74 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 | nt</li>.......</ul>.......<p>... |
| 76240 | 20 20 20 20 57 6f 72 6b 73 20 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 69 66 20 3c 63 6f | ....Works.at.compile-time.if.<co |
| 76260 | 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 76 61 6c 75 65 3c 2f 63 6f 64 65 3e 20 69 73 20 6b | de.class="zig">value</code>.is.k |
| 76280 | 6e 6f 77 6e 20 61 74 20 63 6f 6d 70 69 6c 65 20 74 69 6d 65 2e 20 49 74 27 73 20 61 20 63 6f 6d | nown.at.compile.time..It's.a.com |
| 762a0 | 70 69 6c 65 20 65 72 72 6f 72 20 74 6f 20 62 69 74 63 61 73 74 20 61 20 73 74 72 75 63 74 20 74 | pile.error.to.bitcast.a.struct.t |
| 762c0 | 6f 20 61 20 73 63 61 6c 61 72 20 74 79 70 65 20 6f 66 20 74 68 65 20 73 61 6d 65 20 73 69 7a 65 | o.a.scalar.type.of.the.same.size |
| 762e0 | 20 73 69 6e 63 65 20 73 74 72 75 63 74 73 20 68 61 76 65 20 75 6e 64 65 66 69 6e 65 64 20 6c 61 | .since.structs.have.undefined.la |
| 76300 | 79 6f 75 74 2e 20 48 6f 77 65 76 65 72 20 69 66 20 74 68 65 20 73 74 72 75 63 74 20 69 73 20 70 | yout..However.if.the.struct.is.p |
| 76320 | 61 63 6b 65 64 20 74 68 65 6e 20 69 74 20 77 6f 72 6b 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a | acked.then.it.works........</p>. |
| 76340 | 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 62 69 74 4f 66 66 73 65 74 4f | ..............<h2.id="bitOffsetO |
| 76360 | 66 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 62 69 74 4f 66 66 73 65 74 4f 66 22 3e 40 62 | f"><a.href="#toc-bitOffsetOf">@b |
| 76380 | 69 74 4f 66 66 73 65 74 4f 66 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 | itOffsetOf</a>.<a.class="hdr".hr |
| 763a0 | 65 66 3d 22 23 62 69 74 4f 66 66 73 65 74 4f 66 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 | ef="#bitOffsetOf">..</a></h2>... |
| 763c0 | 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 | .....<pre><code.class="zig"><spa |
| 763e0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 62 69 74 4f 66 66 73 65 74 | n.class="tok-builtin">@bitOffset |
| 76400 | 4f 66 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 | Of</span>(<span.class="tok-kw">c |
| 76420 | 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 54 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | omptime</span>.T:.<span.class="t |
| 76440 | 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 | ok-type">type</span>,.<span.clas |
| 76460 | 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 |
| 76480 | 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 |
| 764a0 | 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 |
| 764c0 | 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 |
| 764e0 | 70 65 22 3e 63 6f 6d 70 74 69 6d 65 5f 69 6e 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f | pe">comptime_int</span></code></ |
| 76500 | 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 52 65 74 75 72 6e 73 20 74 68 65 | pre>.......<p>.......Returns.the |
| 76520 | 20 62 69 74 20 6f 66 66 73 65 74 20 6f 66 20 61 20 66 69 65 6c 64 20 72 65 6c 61 74 69 76 65 20 | .bit.offset.of.a.field.relative. |
| 76540 | 74 6f 20 69 74 73 20 63 6f 6e 74 61 69 6e 69 6e 67 20 73 74 72 75 63 74 2e 0a 20 20 20 20 20 20 | to.its.containing.struct........ |
| 76560 | 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 46 6f 72 20 6e 6f 6e 20 3c 61 20 | </p>.......<p>.......For.non.<a. |
| 76580 | 68 72 65 66 3d 22 23 70 61 63 6b 65 64 2d 73 74 72 75 63 74 22 3e 70 61 63 6b 65 64 20 73 74 72 | href="#packed-struct">packed.str |
| 765a0 | 75 63 74 73 3c 2f 61 3e 2c 20 74 68 69 73 20 77 69 6c 6c 20 61 6c 77 61 79 73 20 62 65 20 64 69 | ucts</a>,.this.will.always.be.di |
| 765c0 | 76 69 73 69 62 6c 65 20 62 79 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 | visible.by.<code.class="zig"><sp |
| 765e0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 38 3c 2f 73 70 61 6e 3e 3c 2f | an.class="tok-number">8</span></ |
| 76600 | 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 46 6f 72 20 70 61 63 6b 65 64 20 73 74 72 75 63 74 73 2c | code>........For.packed.structs, |
| 76620 | 20 6e 6f 6e 2d 62 79 74 65 2d 61 6c 69 67 6e 65 64 20 66 69 65 6c 64 73 20 77 69 6c 6c 20 73 68 | .non-byte-aligned.fields.will.sh |
| 76640 | 61 72 65 20 61 20 62 79 74 65 20 6f 66 66 73 65 74 2c 20 62 75 74 20 74 68 65 79 20 77 69 6c 6c | are.a.byte.offset,.but.they.will |
| 76660 | 20 68 61 76 65 20 64 69 66 66 65 72 65 6e 74 0a 20 20 20 20 20 20 62 69 74 20 6f 66 66 73 65 74 | .have.different.......bit.offset |
| 76680 | 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a | s........</p>.......<p>See.also: |
| 766a0 | 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 62 79 74 65 4f 66 66 73 65 | </p><ul>.<li><a.href="#byteOffse |
| 766c0 | 74 4f 66 22 3e 40 62 79 74 65 4f 66 66 73 65 74 4f 66 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c | tOf">@byteOffsetOf</a></li>.</ul |
| 766e0 | 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 62 6f 6f 6c 54 6f 49 | >................<h2.id="boolToI |
| 76700 | 6e 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 62 6f 6f 6c 54 6f 49 6e 74 22 3e 40 62 6f | nt"><a.href="#toc-boolToInt">@bo |
| 76720 | 6f 6c 54 6f 49 6e 74 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d | olToInt</a>.<a.class="hdr".href= |
| 76740 | 22 23 62 6f 6f 6c 54 6f 49 6e 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 | "#boolToInt">..</a></h2>........ |
| 76760 | 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 | <pre><code.class="zig"><span.cla |
| 76780 | 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 62 6f 6f 6c 54 6f 49 6e 74 3c 2f 73 70 61 | ss="tok-builtin">@boolToInt</spa |
| 767a0 | 6e 3e 28 76 61 6c 75 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 | n>(value:.<span.class="tok-type" |
| 767c0 | 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | >bool</span>).<span.class="tok-t |
| 767e0 | 79 70 65 22 3e 75 31 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 | ype">u1</span></code></pre>..... |
| 76800 | 20 20 3c 70 3e 0a 20 20 20 20 20 20 43 6f 6e 76 65 72 74 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 | ..<p>.......Converts.<code.class |
| 76820 | 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 | ="zig"><span.class="tok-null">tr |
| 76840 | 75 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 74 6f 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d | ue</span></code>.to.<code.class= |
| 76860 | 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 31 3c | "zig"><span.class="tok-type">u1< |
| 76880 | 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"> |
| 768a0 | 31 3c 2f 73 70 61 6e 3e 29 3c 2f 63 6f 64 65 3e 20 61 6e 64 20 3c 63 6f 64 65 20 63 6c 61 73 73 | 1</span>)</code>.and.<code.class |
| 768c0 | 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 | ="zig"><span.class="tok-null">fa |
| 768e0 | 6c 73 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 74 6f 0a 20 20 20 20 20 20 20 20 20 20 20 | lse</span></code>.to............ |
| 76900 | 20 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 | .......<code.class="zig"><span.c |
| 76920 | 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 31 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 | lass="tok-type">u1</span>(<span. |
| 76940 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 29 3c 2f 63 6f | class="tok-number">0</span>)</co |
| 76960 | 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>....... |
| 76980 | 49 66 20 74 68 65 20 76 61 6c 75 65 20 69 73 20 6b 6e 6f 77 6e 20 61 74 20 63 6f 6d 70 69 6c 65 | If.the.value.is.known.at.compile |
| 769a0 | 2d 74 69 6d 65 2c 20 74 68 65 20 72 65 74 75 72 6e 20 74 79 70 65 20 69 73 20 3c 63 6f 64 65 20 | -time,.the.return.type.is.<code. |
| 769c0 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | class="zig"><span.class="tok-typ |
| 769e0 | 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>... |
| 76a00 | 20 20 20 20 20 20 20 20 69 6e 73 74 65 61 64 20 6f 66 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | ........instead.of.<code.class=" |
| 76a20 | 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 31 3c 2f | zig"><span.class="tok-type">u1</ |
| 76a40 | 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 0a | span></code>........</p>........ |
| 76a60 | 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 62 69 74 53 69 7a 65 4f 66 22 3e 3c 61 20 68 72 65 | .......<h2.id="bitSizeOf"><a.hre |
| 76a80 | 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 61 | f="#toc-bitSizeOf">@bitSizeOf</a |
| 76aa0 | 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 4f | >.<a.class="hdr".href="#bitSizeO |
| 76ac0 | 66 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 | f">..</a></h2>........<pre><code |
| 76ae0 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 | .class="zig"><span.class="tok-bu |
| 76b00 | 69 6c 74 69 6e 22 3e 40 62 69 74 53 69 7a 65 4f 66 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 | iltin">@bitSizeOf</span>(<span.c |
| 76b20 | 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: |
| 76b40 | 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 |
| 76b60 | 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 |
| 76b80 | 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>.... |
| 76ba0 | 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 |
| 76bc0 | 6e 73 20 74 68 65 20 6e 75 6d 62 65 72 20 6f 66 20 62 69 74 73 20 69 74 20 74 61 6b 65 73 20 74 | ns.the.number.of.bits.it.takes.t |
| 76be0 | 6f 20 73 74 6f 72 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 54 3c 2f 63 6f 64 | o.store.<code.class="zig">T</cod |
| 76c00 | 65 3e 20 69 6e 20 6d 65 6d 6f 72 79 2e 0a 20 20 20 20 20 20 54 68 65 20 72 65 73 75 6c 74 20 69 | e>.in.memory........The.result.i |
| 76c20 | 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 65 | s.a.target-specific.compile.time |
| 76c40 | 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 0a | .constant........</p>.......<p>. |
| 76c60 | 20 20 20 20 20 20 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 6d 65 61 73 75 72 65 73 20 74 68 65 | ......This.function.measures.the |
| 76c80 | 20 73 69 7a 65 20 61 74 20 72 75 6e 74 69 6d 65 2e 20 46 6f 72 20 74 79 70 65 73 20 74 68 61 74 | .size.at.runtime..For.types.that |
| 76ca0 | 20 61 72 65 20 64 69 73 61 6c 6c 6f 77 65 64 20 61 74 20 72 75 6e 74 69 6d 65 2c 20 73 75 63 68 | .are.disallowed.at.runtime,.such |
| 76cc0 | 20 61 73 0a 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 | .as.......<code.class="zig"><spa |
| 76ce0 | 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< |
| 76d00 | 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 61 6e 64 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a | /span></code>.and.<code.class="z |
| 76d20 | 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c | ig"><span.class="tok-type">type< |
| 76d40 | 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 20 3c 63 6f | /span></code>,.the.result.is.<co |
| 76d60 | 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | de.class="zig"><span.class="tok- |
| 76d80 | 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c | number">0</span></code>........< |
| 76da0 | 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>.< |
| 76dc0 | 6c 69 3e 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 | li><a.href="#sizeOf">@sizeOf</a> |
| 76de0 | 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 74 79 70 65 49 6e 66 6f 22 3e 40 74 | </li>.<li><a.href="#typeInfo">@t |
| 76e00 | 79 70 65 49 6e 66 6f 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 0a | ypeInfo</a></li>.</ul>.......... |
| 76e20 | 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 62 72 65 61 6b 70 6f 69 6e 74 22 3e 3c 61 20 68 72 65 | ......<h2.id="breakpoint"><a.hre |
| 76e40 | 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 6b 70 6f 69 6e 74 3c | f="#toc-breakpoint">@breakpoint< |
| 76e60 | 2f 61 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 72 65 61 6b 70 | /a>.<a.class="hdr".href="#breakp |
| 76e80 | 6f 69 6e 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 | oint">..</a></h2>........<pre><c |
| 76ea0 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ode.class="zig"><span.class="tok |
| 76ec0 | 2d 62 75 69 6c 74 69 6e 22 3e 40 62 72 65 61 6b 70 6f 69 6e 74 3c 2f 73 70 61 6e 3e 28 29 3c 2f | -builtin">@breakpoint</span>()</ |
| 76ee0 | 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 |
| 76f00 | 20 66 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 | .function.inserts.a.platform-spe |
| 76f20 | 63 69 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 | cific.debug.trap.instruction.whi |
| 76f40 | 63 68 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 | ch.causes.......debuggers.to.bre |
| 76f60 | 61 6b 20 74 68 65 72 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 | ak.there........</p>.......<p>.. |
| 76f80 | 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 6c 69 64 | .....This.function.is.only.valid |
| 76fa0 | 20 77 69 74 68 69 6e 20 66 75 6e 63 74 69 6f 6e 20 73 63 6f 70 65 2e 0a 20 20 20 20 20 20 3c 2f | .within.function.scope........</ |
| 76fc0 | 70 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 6d 75 6c 41 64 64 22 | p>...............<h2.id="mulAdd" |
| 76fe0 | 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 6d 75 6c 41 64 64 22 3e 40 6d 75 6c 41 64 64 3c 2f | ><a.href="#toc-mulAdd">@mulAdd</ |
| 77000 | 61 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 75 6c 41 64 64 22 | a>.<a.class="hdr".href="#mulAdd" |
| 77020 | 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 | >..</a></h2>........<pre><code.c |
| 77040 | 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c | lass="zig"><span.class="tok-buil |
| 77060 | 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 73 3d | tin">@mulAdd</span>(<span.class= |
| 77080 | 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 |
| 770a0 | 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 20 | n.class="tok-type">type</span>,. |
| 770c0 | 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 65 3e | a:.T,.b:.T,.c:.T).T</code></pre> |
| 770e0 | 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 79 20 | .......<p>.......Fused.multiply. |
| 77100 | 61 64 64 2c 20 73 69 6d 69 6c 61 72 20 74 6f 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | add,.similar.to.<code.class="zig |
| 77120 | 22 3e 28 61 20 2a 20 62 29 20 2b 20 63 3c 2f 63 6f 64 65 3e 2c 20 65 78 63 65 70 74 0a 20 20 20 | ">(a.*.b).+.c</code>,.except.... |
| 77140 | 20 20 20 6f 6e 6c 79 20 72 6f 75 6e 64 73 20 6f 6e 63 65 2c 20 61 6e 64 20 69 73 20 74 68 75 73 | ...only.rounds.once,.and.is.thus |
| 77160 | 20 6d 6f 72 65 20 61 63 63 75 72 61 74 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 | .more.accurate........</p>...... |
| 77180 | 20 3c 70 3e 0a 20 20 20 20 20 20 53 75 70 70 6f 72 74 73 20 46 6c 6f 61 74 73 20 61 6e 64 20 56 | .<p>.......Supports.Floats.and.V |
| 771a0 | 65 63 74 6f 72 73 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 | ectors.of.floats........</p>.... |
| 771c0 | 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 62 79 74 65 53 77 61 70 22 3e 3c 61 20 | ...........<h2.id="byteSwap"><a. |
| 771e0 | 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 70 3c 2f | href="#toc-byteSwap">@byteSwap</ |
| 77200 | 61 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 53 77 61 | a>.<a.class="hdr".href="#byteSwa |
| 77220 | 70 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 | p">..</a></h2>........<pre><code |
| 77240 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 | .class="zig"><span.class="tok-bu |
| 77260 | 69 6c 74 69 6e 22 3e 40 62 79 74 65 53 77 61 70 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c | iltin">@byteSwap</span>(<span.cl |
| 77280 | 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:. |
| 772a0 | 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 |
| 772c0 | 6e 3e 2c 20 6f 70 65 72 61 6e 64 3a 20 54 29 20 54 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 | n>,.operand:.T).T</code></pre>.. |
| 772e0 | 20 20 20 20 20 3c 70 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 54 3c 2f 63 6f 64 | .....<p><code.class="zig">T</cod |
| 77300 | 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 77 69 74 68 20 | e>.must.be.an.integer.type.with. |
| 77320 | 62 69 74 20 63 6f 75 6e 74 20 65 76 65 6e 6c 79 20 64 69 76 69 73 69 62 6c 65 20 62 79 20 38 2e | bit.count.evenly.divisible.by.8. |
| 77340 | 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e | </p>.......<p><code.class="zig"> |
| 77360 | 6f 70 65 72 61 6e 64 3c 2f 63 6f 64 65 3e 20 6d 61 79 20 62 65 20 61 6e 20 3c 61 20 68 72 65 66 | operand</code>.may.be.an.<a.href |
| 77380 | 3d 22 23 49 6e 74 65 67 65 72 73 22 3e 69 6e 74 65 67 65 72 3c 2f 61 3e 20 6f 72 20 3c 61 20 68 | ="#Integers">integer</a>.or.<a.h |
| 773a0 | 72 65 66 3d 22 23 56 65 63 74 6f 72 73 22 3e 76 65 63 74 6f 72 3c 2f 61 3e 2e 3c 2f 70 3e 0a 20 | ref="#Vectors">vector</a>.</p>.. |
| 773c0 | 20 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 | .....<p>.......Swaps.the.byte.or |
| 773e0 | 64 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 | der.of.the.integer..This.convert |
| 77400 | 73 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 | s.a.big.endian.integer.to.a.litt |
| 77420 | 6c 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 | le.endian.integer,.......and.con |
| 77440 | 76 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 | verts.a.little.endian.integer.to |
| 77460 | 20 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 | .a.big.endian.integer........</p |
| 77480 | 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 4e 6f 74 65 20 74 68 61 74 20 66 6f 72 20 | >.......<p>.......Note.that.for. |
| 774a0 | 74 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 | the.purposes.of.memory.layout.wi |
| 774c0 | 74 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 | th.respect.to.endianness,.the.in |
| 774e0 | 74 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 | teger.type.should.be.......relat |
| 77500 | 65 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 | ed.to.the.number.of.bytes.report |
| 77520 | 65 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 | ed.by.<a.href="#sizeOf">@sizeOf< |
| 77540 | 2f 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 | /a>.bytes..This.is.demonstrated. |
| 77560 | 77 69 74 68 0a 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 | with.......<code.class="zig"><sp |
| 77580 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 32 34 3c 2f 73 70 61 6e 3e 3c 2f | an.class="tok-type">u24</span></ |
| 775a0 | 63 6f 64 65 3e 2e 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 | code>..<code.class="zig"><span.c |
| 775c0 | 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 |
| 775e0 | 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 32 34 3c 2f 73 70 | >(<span.class="tok-type">u24</sp |
| 77600 | 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" |
| 77620 | 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 65 61 6e 73 20 74 68 | >4</span></code>,.which.means.th |
| 77640 | 61 74 20 61 0a 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 | at.a.......<code.class="zig"><sp |
| 77660 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 32 34 3c 2f 73 70 61 6e 3e 3c 2f | an.class="tok-type">u24</span></ |
| 77680 | 63 6f 64 65 3e 20 73 74 6f 72 65 64 20 69 6e 20 6d 65 6d 6f 72 79 20 74 61 6b 65 73 20 34 20 62 | code>.stored.in.memory.takes.4.b |
| 776a0 | 79 74 65 73 2c 20 61 6e 64 20 74 68 6f 73 65 20 34 20 62 79 74 65 73 20 61 72 65 20 77 68 61 74 | ytes,.and.those.4.bytes.are.what |
| 776c0 | 20 61 72 65 20 73 77 61 70 70 65 64 20 6f 6e 0a 20 20 20 20 20 20 61 20 6c 69 74 74 6c 65 20 76 | .are.swapped.on.......a.little.v |
| 776e0 | 73 20 62 69 67 20 65 6e 64 69 61 6e 20 73 79 73 74 65 6d 2e 20 4f 6e 20 74 68 65 20 6f 74 68 65 | s.big.endian.system..On.the.othe |
| 77700 | 72 20 68 61 6e 64 2c 20 69 66 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 54 3c 2f | r.hand,.if.<code.class="zig">T</ |
| 77720 | 63 6f 64 65 3e 20 69 73 20 73 70 65 63 69 66 69 65 64 20 74 6f 0a 20 20 20 20 20 20 62 65 20 3c | code>.is.specified.to.......be.< |
| 77740 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | code.class="zig"><span.class="to |
| 77760 | 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 65 6e 20 | k-type">u24</span></code>,.then. |
| 77780 | 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 20 20 20 | only.3.bytes.are.reversed....... |
| 777a0 | 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 62 69 74 52 | .</p>...............<h2.id="bitR |
| 777c0 | 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 72 73 65 | everse"><a.href="#toc-bitReverse |
| 777e0 | 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 64 72 22 | ">@bitReverse</a>.<a.class="hdr" |
| 77800 | 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 32 3e 0a | .href="#bitReverse">..</a></h2>. |
| 77820 | 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 | .......<pre><code.class="zig"><s |
| 77840 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 62 69 74 52 65 76 65 | pan.class="tok-builtin">@bitReve |
| 77860 | 72 73 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 | rse</span>(<span.class="tok-kw"> |
| 77880 | 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 54 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | comptime</span>.T:.<span.class=" |
| 778a0 | 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 69 6e 74 65 67 65 72 3a 20 | tok-type">type</span>,.integer:. |
| 778c0 | 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 3c 63 6f 64 65 | T).T</code></pre>.......<p><code |
| 778e0 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 54 3c 2f 63 6f 64 65 3e 20 61 63 63 65 70 74 73 20 61 6e | .class="zig">T</code>.accepts.an |
| 77900 | 79 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 0a 20 20 | y.integer.type.</p>.......<p>... |
| 77920 | 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 6f 66 20 61 | ....Reverses.the.bitpattern.of.a |
| 77940 | 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 68 65 20 73 | n.integer.value,.including.the.s |
| 77960 | 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 20 3c 2f 70 | ign.bit.if.applicable........</p |
| 77980 | 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 46 6f 72 20 65 78 61 6d 70 6c 65 20 30 62 | >.......<p>.......For.example.0b |
| 779a0 | 31 30 31 31 30 31 31 30 20 28 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 | 10110110.(<code.class="zig"><spa |
| 779c0 | 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>.=.< |
| 779e0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 38 32 3c 2f 73 70 61 | span.class="tok-number">182</spa |
| 77a00 | 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 | n></code>,.<code.class="zig"><sp |
| 77a20 | 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 3d 20 | an.class="tok-type">i8</span>.=. |
| 77a40 | 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 37 34 3c 2f 73 70 | -<span.class="tok-number">74</sp |
| 77a60 | 61 6e 3e 3c 2f 63 6f 64 65 3e 29 0a 20 20 20 20 20 20 62 65 63 6f 6d 65 73 20 30 62 30 31 31 30 | an></code>).......becomes.0b0110 |
| 77a80 | 31 31 30 31 20 28 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c | 1101.(<code.class="zig"><span.cl |
| 77aa0 | 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 |
| 77ac0 | 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></ |
| 77ae0 | 63 6f 64 65 3e 2c 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 | code>,.<code.class="zig"><span.c |
| 77b00 | 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 38 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 | lass="tok-type">i8</span>.=.<spa |
| 77b20 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 39 3c 2f 73 70 61 6e 3e 3c | n.class="tok-number">109</span>< |
| 77b40 | 2f 63 6f 64 65 3e 29 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 | /code>)........</p>............. |
| 77b60 | 20 20 3c 68 32 20 69 64 3d 22 62 79 74 65 4f 66 66 73 65 74 4f 66 22 3e 3c 61 20 68 72 65 66 3d | ..<h2.id="byteOffsetOf"><a.href= |
| 77b80 | 22 23 74 6f 63 2d 62 79 74 65 4f 66 66 73 65 74 4f 66 22 3e 40 62 79 74 65 4f 66 66 73 65 74 4f | "#toc-byteOffsetOf">@byteOffsetO |
| 77ba0 | 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 79 74 65 | f</a>.<a.class="hdr".href="#byte |
| 77bc0 | 4f 66 66 73 65 74 4f 66 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 | OffsetOf">..</a></h2>........<pr |
| 77be0 | 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | e><code.class="zig"><span.class= |
| 77c00 | 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 62 79 74 65 4f 66 66 73 65 74 4f 66 3c 2f 73 70 61 | "tok-builtin">@byteOffsetOf</spa |
| 77c20 | 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 | n>(<span.class="tok-kw">comptime |
| 77c40 | 3c 2f 73 70 61 6e 3e 20 54 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | </span>.T:.<span.class="tok-type |
| 77c60 | 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ">type</span>,.<span.class="tok- |
| 77c80 | 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 66 69 65 6c 64 5f 6e 61 6d 65 3a 20 | kw">comptime</span>.field_name:. |
| 77ca0 | 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 | []<span.class="tok-kw">const</sp |
| 77cc0 | 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 | an>.<span.class="tok-type">u8</s |
| 77ce0 | 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 63 6f 6d | pan>).<span.class="tok-type">com |
| 77d00 | 70 74 69 6d 65 5f 69 6e 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 | ptime_int</span></code></pre>... |
| 77d20 | 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 52 65 74 75 72 6e 73 20 74 68 65 20 62 79 74 65 20 6f | ....<p>.......Returns.the.byte.o |
| 77d40 | 66 66 73 65 74 20 6f 66 20 61 20 66 69 65 6c 64 20 72 65 6c 61 74 69 76 65 20 74 6f 20 69 74 73 | ffset.of.a.field.relative.to.its |
| 77d60 | 20 63 6f 6e 74 61 69 6e 69 6e 67 20 73 74 72 75 63 74 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 | .containing.struct........</p>.. |
| 77d80 | 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 |
| 77da0 | 20 68 72 65 66 3d 22 23 62 69 74 4f 66 66 73 65 74 4f 66 22 3e 40 62 69 74 4f 66 66 73 65 74 4f | .href="#bitOffsetOf">@bitOffsetO |
| 77dc0 | 66 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 | f</a></li>.</ul>................ |
| 77de0 | 3c 68 32 20 69 64 3d 22 63 61 6c 6c 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 63 61 6c 6c | <h2.id="call"><a.href="#toc-call |
| 77e00 | 22 3e 40 63 61 6c 6c 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d | ">@call</a>.<a.class="hdr".href= |
| 77e20 | 22 23 63 61 6c 6c 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e | "#call">..</a></h2>........<pre> |
| 77e40 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | <code.class="zig"><span.class="t |
| 77e60 | 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 6f 70 74 69 6f 6e 73 | ok-builtin">@call</span>(options |
| 77e80 | 3a 20 73 74 64 2e 62 75 69 6c 74 69 6e 2e 43 61 6c 6c 4f 70 74 69 6f 6e 73 2c 20 66 75 6e 63 74 | :.std.builtin.CallOptions,.funct |
| 77ea0 | 69 6f 6e 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 | ion:.<span.class="tok-kw">anytyp |
| 77ec0 | 65 3c 2f 73 70 61 6e 3e 2c 20 61 72 67 73 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | e</span>,.args:.<span.class="tok |
| 77ee0 | 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 |
| 77f00 | 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>< |
| 77f20 | 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 43 61 6c 6c 73 20 61 20 66 75 | /pre>.......<p>.......Calls.a.fu |
| 77f40 | 6e 63 74 69 6f 6e 2c 20 69 6e 20 74 68 65 20 73 61 6d 65 20 77 61 79 20 74 68 61 74 20 69 6e 76 | nction,.in.the.same.way.that.inv |
| 77f60 | 6f 6b 69 6e 67 20 61 6e 20 65 78 70 72 65 73 73 69 6f 6e 20 77 69 74 68 20 70 61 72 65 6e 74 68 | oking.an.expression.with.parenth |
| 77f80 | 65 73 65 73 20 64 6f 65 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 | eses.does:.......</p>.......<p.c |
| 77fa0 | 6c 61 73 73 3d 22 66 69 6c 65 22 3e 63 61 6c 6c 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f | lass="file">call.zig</p><pre><co |
| 77fc0 | 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | de.class="zig"><span.class="tok- |
| 77fe0 | 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. |
| 78000 | 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 |
| 78020 | 6e 3e 28 3c 73 70 61 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 |
| 78040 | 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; |
| 78060 | 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 |
| 78080 | 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 6e | n>.<span.class="tok-str">"n |
| 780a0 | 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 70 61 | oinline.function.call"</spa |
| 780c0 | 6e 3e 20 7b 0a 20 20 20 20 65 78 70 65 63 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | n>.{.....expect(<span.class="tok |
| 780e0 | 2d 62 75 69 6c 74 69 6e 22 3e 40 63 61 6c 6c 3c 2f 73 70 61 6e 3e 28 2e 7b 7d 2c 20 61 64 64 2c | -builtin">@call</span>(.{},.add, |
| 78100 | 20 2e 7b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 | ..{<span.class="tok-number">3</s |
| 78120 | 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 39 | pan>,.<span.class="tok-number">9 |
| 78140 | 3c 2f 73 70 61 6e 3e 7d 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | </span>}).==.<span.class="tok-nu |
| 78160 | 6d 62 65 72 22 3e 31 32 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | mber">12</span>);.}..<span.class |
| 78180 | 3d 22 74 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= |
| 781a0 | 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 6c 61 | "tok-fn">add</span>(a:.<span.cla |
| 781c0 | 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 70 | ss="tok-type">i32</span>,.b:.<sp |
| 781e0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 20 | an.class="tok-type">i32</span>). |
| 78200 | 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 |
| 78220 | 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 | >.{.....<span.class="tok-kw">ret |
| 78240 | 75 72 6e 3c 2f 73 70 61 6e 3e 20 61 20 2b 20 62 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e | urn</span>.a.+.b;.}</code></pre> |
| 78260 | 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 | <pre><code.class="shell">$.zig.t |
| 78280 | 65 73 74 20 63 61 6c 6c 2e 7a 69 67 0a 31 2f 31 20 74 65 73 74 20 26 71 75 6f 74 3b 6e 6f 69 6e | est.call.zig.1/1.test."noin |
| 782a0 | 6c 69 6e 65 20 66 75 6e 63 74 69 6f 6e 20 63 61 6c 6c 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 41 | line.function.call"....OK.A |
| 782c0 | 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e | ll.1.tests.passed..</code></pre> |
| 782e0 | 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a | ........<p>.......<code.class="z |
| 78300 | 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 | ig"><span.class="tok-builtin">@c |
| 78320 | 61 6c 6c 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 61 6c 6c 6f 77 73 20 6d 6f 72 65 20 66 6c | all</span></code>.allows.more.fl |
| 78340 | 65 78 69 62 69 6c 69 74 79 20 74 68 61 6e 20 6e 6f 72 6d 61 6c 20 66 75 6e 63 74 69 6f 6e 20 63 | exibility.than.normal.function.c |
| 78360 | 61 6c 6c 20 73 79 6e 74 61 78 20 64 6f 65 73 2e 20 54 68 65 0a 20 20 20 20 20 20 3c 63 6f 64 65 | all.syntax.does..The.......<code |
| 78380 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 43 61 6c 6c 4f 70 74 69 6f 6e 73 3c 2f 63 6f 64 65 3e 20 | .class="zig">CallOptions</code>. |
| 783a0 | 73 74 72 75 63 74 20 69 73 20 72 65 70 72 6f 64 75 63 65 64 20 68 65 72 65 3a 0a 20 20 20 20 20 | struct.is.reproduced.here:...... |
| 783c0 | 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | .</p>.......<pre><code.class="zi |
| 783e0 | 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 70 61 | g"><span.class="tok-kw">pub</spa |
| 78400 | 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 | n>.<span.class="tok-kw">const</s |
| 78420 | 70 61 6e 3e 20 43 61 6c 6c 4f 70 74 69 6f 6e 73 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | pan>.CallOptions.=.<span.class=" |
| 78440 | 74 6f 6b 2d 6b 77 22 3e 73 74 72 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 6d 6f 64 69 | tok-kw">struct</span>.{.....modi |
| 78460 | 66 69 65 72 3a 20 4d 6f 64 69 66 69 65 72 20 3d 20 2e 61 75 74 6f 2c 0a 20 20 20 20 73 74 61 63 | fier:.Modifier.=..auto,.....stac |
| 78480 | 6b 3a 20 3f 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6c 69 67 6e | k:.?[]<span.class="tok-kw">align |
| 784a0 | 3c 2f 73 70 61 6e 3e 28 73 74 64 2e 54 61 72 67 65 74 2e 73 74 61 63 6b 5f 61 6c 69 67 6e 29 20 | </span>(std.Target.stack_align). |
| 784c0 | 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> |
| 784e0 | 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</ |
| 78500 | 73 70 61 6e 3e 2c 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | span>,......<span.class="tok-kw" |
| 78520 | 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" |
| 78540 | 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 4d 6f 64 69 66 69 65 72 20 3d 20 3c 73 70 61 6e 20 63 | >const</span>.Modifier.=.<span.c |
| 78560 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6e 75 6d 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 | lass="tok-kw">enum</span>.{..... |
| 78580 | 20 20 20 20 3c 73 70 61 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">// |
| 785a0 | 2f 20 45 71 75 69 76 61 6c 65 6e 74 20 74 6f 20 66 75 6e 63 74 69 6f 6e 20 63 61 6c 6c 20 73 79 | /.Equivalent.to.function.call.sy |
| 785c0 | 6e 74 61 78 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 61 75 74 6f 2c 0a 0a 20 20 20 20 | ntax.</span>.........auto,...... |
| 785e0 | 20 20 20 20 3c 73 70 61 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">// |
| 78600 | 2f 20 45 71 75 69 76 61 6c 65 6e 74 20 74 6f 20 61 73 79 6e 63 20 6b 65 79 77 6f 72 64 20 75 73 | /.Equivalent.to.async.keyword.us |
| 78620 | 65 64 20 77 69 74 68 20 66 75 6e 63 74 69 6f 6e 20 63 61 6c 6c 20 73 79 6e 74 61 78 2e 3c 2f 73 | ed.with.function.call.syntax.</s |
| 78640 | 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 61 73 79 6e 63 5f 6b 77 2c 0a 0a 20 20 20 20 20 20 20 20 | pan>.........async_kw,.......... |
| 78660 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 50 72 | <span.class="tok-comment">///.Pr |
| 78680 | 65 76 65 6e 74 73 20 74 61 69 6c 20 63 61 6c 6c 20 6f 70 74 69 6d 69 7a 61 74 69 6f 6e 2e 20 54 | events.tail.call.optimization..T |
| 786a0 | 68 69 73 20 67 75 61 72 61 6e 74 65 65 73 20 74 68 61 74 20 74 68 65 20 72 65 74 75 72 6e 3c 2f | his.guarantees.that.the.return</ |
| 786c0 | 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 |
| 786e0 | 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 61 64 64 72 65 73 73 20 77 69 6c 6c 20 70 6f 69 6e 74 20 74 | omment">///.address.will.point.t |
| 78700 | 6f 20 74 68 65 20 63 61 6c 6c 73 69 74 65 2c 20 61 73 20 6f 70 70 6f 73 65 64 20 74 6f 20 74 68 | o.the.callsite,.as.opposed.to.th |
| 78720 | 65 20 63 61 6c 6c 73 69 74 65 27 73 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 3c 73 70 61 | e.callsite's</span>.........<spa |
| 78740 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 63 61 6c 6c 73 69 | n.class="tok-comment">///.callsi |
| 78760 | 74 65 2e 20 49 66 20 74 68 65 20 63 61 6c 6c 20 69 73 20 6f 74 68 65 72 77 69 73 65 20 72 65 71 | te..If.the.call.is.otherwise.req |
| 78780 | 75 69 72 65 64 20 74 6f 20 62 65 20 74 61 69 6c 2d 63 61 6c 6c 65 64 3c 2f 73 70 61 6e 3e 0a 20 | uired.to.be.tail-called</span>.. |
| 787a0 | 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" |
| 787c0 | 3e 2f 2f 2f 20 6f 72 20 69 6e 6c 69 6e 65 64 2c 20 61 20 63 6f 6d 70 69 6c 65 20 65 72 72 6f 72 | >///.or.inlined,.a.compile.error |
| 787e0 | 20 69 73 20 65 6d 69 74 74 65 64 20 69 6e 73 74 65 61 64 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 | .is.emitted.instead.</span>..... |
| 78800 | 20 20 20 20 6e 65 76 65 72 5f 74 61 69 6c 2c 0a 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 | ....never_tail,..........<span.c |
| 78820 | 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 47 75 61 72 61 6e 74 65 65 | lass="tok-comment">///.Guarantee |
| 78840 | 73 20 74 68 61 74 20 74 68 65 20 63 61 6c 6c 20 77 69 6c 6c 20 6e 6f 74 20 62 65 20 69 6e 6c 69 | s.that.the.call.will.not.be.inli |
| 78860 | 6e 65 64 2e 20 49 66 20 74 68 65 20 63 61 6c 6c 20 69 73 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 | ned..If.the.call.is</span>...... |
| 78880 | 20 20 20 3c 73 70 61 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">/// |
| 788a0 | 20 6f 74 68 65 72 77 69 73 65 20 72 65 71 75 69 72 65 64 20 74 6f 20 62 65 20 69 6e 6c 69 6e 65 | .otherwise.required.to.be.inline |
| 788c0 | 64 2c 20 61 20 63 6f 6d 70 69 6c 65 20 65 72 72 6f 72 20 69 73 20 65 6d 69 74 74 65 64 20 69 6e | d,.a.compile.error.is.emitted.in |
| 788e0 | 73 74 65 61 64 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 6e 65 76 65 72 5f 69 6e 6c 69 | stead.</span>.........never_inli |
| 78900 | 6e 65 2c 0a 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f | ne,..........<span.class="tok-co |
| 78920 | 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 41 73 73 65 72 74 73 20 74 68 61 74 20 74 68 65 20 66 75 6e 63 | mment">///.Asserts.that.the.func |
| 78940 | 74 69 6f 6e 20 63 61 6c 6c 20 77 69 6c 6c 20 6e 6f 74 20 73 75 73 70 65 6e 64 2e 20 54 68 69 73 | tion.call.will.not.suspend..This |
| 78960 | 20 61 6c 6c 6f 77 73 20 61 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 | .allows.a</span>.........<span.c |
| 78980 | 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 6e 6f 6e 2d 61 73 79 6e 63 | lass="tok-comment">///.non-async |
| 789a0 | 20 66 75 6e 63 74 69 6f 6e 20 74 6f 20 63 61 6c 6c 20 61 6e 20 61 73 79 6e 63 20 66 75 6e 63 74 | .function.to.call.an.async.funct |
| 789c0 | 69 6f 6e 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 6e 6f 5f 61 73 79 6e 63 2c 0a 0a 20 | ion.</span>.........no_async,... |
| 789e0 | 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" |
| 78a00 | 3e 2f 2f 2f 20 47 75 61 72 61 6e 74 65 65 73 20 74 68 61 74 20 74 68 65 20 63 61 6c 6c 20 77 69 | >///.Guarantees.that.the.call.wi |
| 78a20 | 6c 6c 20 62 65 20 67 65 6e 65 72 61 74 65 64 20 77 69 74 68 20 74 61 69 6c 20 63 61 6c 6c 20 6f | ll.be.generated.with.tail.call.o |
| 78a40 | 70 74 69 6d 69 7a 61 74 69 6f 6e 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 3c 73 70 61 | ptimization.</span>.........<spa |
| 78a60 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 49 66 20 74 68 69 | n.class="tok-comment">///.If.thi |
| 78a80 | 73 20 69 73 20 6e 6f 74 20 70 6f 73 73 69 62 6c 65 2c 20 61 20 63 6f 6d 70 69 6c 65 20 65 72 72 | s.is.not.possible,.a.compile.err |
| 78aa0 | 6f 72 20 69 73 20 65 6d 69 74 74 65 64 20 69 6e 73 74 65 61 64 2e 3c 2f 73 70 61 6e 3e 0a 20 20 | or.is.emitted.instead.</span>... |
| 78ac0 | 20 20 20 20 20 20 61 6c 77 61 79 73 5f 74 61 69 6c 2c 0a 0a 20 20 20 20 20 20 20 20 3c 73 70 61 | ......always_tail,..........<spa |
| 78ae0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 47 75 61 72 61 6e | n.class="tok-comment">///.Guaran |
| 78b00 | 74 65 65 73 20 74 68 61 74 20 74 68 65 20 63 61 6c 6c 20 77 69 6c 6c 20 69 6e 6c 69 6e 65 64 20 | tees.that.the.call.will.inlined. |
| 78b20 | 61 74 20 74 68 65 20 63 61 6c 6c 73 69 74 65 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 | at.the.callsite.</span>......... |
| 78b40 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 49 66 | <span.class="tok-comment">///.If |
| 78b60 | 20 74 68 69 73 20 69 73 20 6e 6f 74 20 70 6f 73 73 69 62 6c 65 2c 20 61 20 63 6f 6d 70 69 6c 65 | .this.is.not.possible,.a.compile |
| 78b80 | 20 65 72 72 6f 72 20 69 73 20 65 6d 69 74 74 65 64 20 69 6e 73 74 65 61 64 2e 3c 2f 73 70 61 6e | .error.is.emitted.instead.</span |
| 78ba0 | 3e 0a 20 20 20 20 20 20 20 20 61 6c 77 61 79 73 5f 69 6e 6c 69 6e 65 2c 0a 0a 20 20 20 20 20 20 | >.........always_inline,........ |
| 78bc0 | 20 20 3c 73 70 61 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">///. |
| 78be0 | 45 76 61 6c 75 61 74 65 73 20 74 68 65 20 63 61 6c 6c 20 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 | Evaluates.the.call.at.compile-ti |
| 78c00 | 6d 65 2e 20 49 66 20 74 68 65 20 63 61 6c 6c 20 63 61 6e 6e 6f 74 20 62 65 20 63 6f 6d 70 6c 65 | me..If.the.call.cannot.be.comple |
| 78c20 | 74 65 64 20 61 74 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | ted.at</span>.........<span.clas |
| 78c40 | 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 | s="tok-comment">///.compile-time |
| 78c60 | 2c 20 61 20 63 6f 6d 70 69 6c 65 20 65 72 72 6f 72 20 69 73 20 65 6d 69 74 74 65 64 20 69 6e 73 | ,.a.compile.error.is.emitted.ins |
| 78c80 | 74 65 61 64 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 63 6f 6d 70 69 6c 65 5f 74 69 6d | tead.</span>.........compile_tim |
| 78ca0 | 65 2c 0a 20 20 20 20 7d 3b 0a 7d 3b 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 | e,.....};.};</code></pre>....... |
| 78cc0 | 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 63 44 65 66 69 6e 65 22 3e 3c 61 20 68 72 65 66 | ........<h2.id="cDefine"><a.href |
| 78ce0 | 3d 22 23 74 6f 63 2d 63 44 65 66 69 6e 65 22 3e 40 63 44 65 66 69 6e 65 3c 2f 61 3e 20 3c 61 20 | ="#toc-cDefine">@cDefine</a>.<a. |
| 78d00 | 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 63 44 65 66 69 6e 65 22 3e c2 a7 3c 2f | class="hdr".href="#cDefine">..</ |
| 78d20 | 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d | a></h2>........<pre><code.class= |
| 78d40 | 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e | "zig"><span.class="tok-builtin"> |
| 78d60 | 40 63 44 65 66 69 6e 65 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | @cDefine</span>(<span.class="tok |
| 78d80 | 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 6e 61 6d 65 3a 20 5b 5d 3c 73 70 | -kw">comptime</span>.name:.[]<sp |
| 78da0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 76 | an.class="tok-type">u8</span>,.v |
| 78dc0 | 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>.... |
| 78de0 | 20 20 20 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 63 61 6e 20 6f 6e 6c 79 20 6f 63 63 75 72 20 | ...This.function.can.only.occur. |
| 78e00 | 69 6e 73 69 64 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 | inside.<code.class="zig"><span.c |
| 78e20 | 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 49 6d 70 6f 72 74 3c 2f 73 70 61 | lass="tok-builtin">@cImport</spa |
| 78e40 | 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a | n></code>........</p>.......<p>. |
| 78e60 | 20 20 20 20 20 20 54 68 69 73 20 61 70 70 65 6e 64 73 20 3c 63 6f 64 65 3e 23 64 65 66 69 6e 65 | ......This.appends.<code>#define |
| 78e80 | 20 24 6e 61 6d 65 20 24 76 61 6c 75 65 3c 2f 63 6f 64 65 3e 20 74 6f 20 74 68 65 20 3c 63 6f 64 | .$name.$value</code>.to.the.<cod |
| 78ea0 | 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 | e.class="zig"><span.class="tok-b |
| 78ec0 | 75 69 6c 74 69 6e 22 3e 40 63 49 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 0a 20 | uiltin">@cImport</span></code>.. |
| 78ee0 | 20 20 20 20 20 74 65 6d 70 6f 72 61 72 79 20 62 75 66 66 65 72 2e 0a 20 20 20 20 20 20 3c 2f 70 | .....temporary.buffer........</p |
| 78f00 | 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 6f 20 64 65 66 69 6e 65 20 77 69 74 68 | >.......<p>.......To.define.with |
| 78f20 | 6f 75 74 20 61 20 76 61 6c 75 65 2c 20 6c 69 6b 65 20 74 68 69 73 3a 0a 20 20 20 20 20 20 3c 2f | out.a.value,.like.this:.......</ |
| 78f40 | 70 3e 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 63 22 3e 23 64 | p>.......<pre><code.class="c">#d |
| 78f60 | 65 66 69 6e 65 20 5f 47 4e 55 5f 53 4f 55 52 43 45 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 | efine._GNU_SOURCE</code></pre>.. |
| 78f80 | 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 55 73 65 20 74 68 65 20 76 6f 69 64 20 76 61 6c 75 | .....<p>.......Use.the.void.valu |
| 78fa0 | 65 2c 20 6c 69 6b 65 20 74 68 69 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c | e,.like.this:.......</p>.......< |
| 78fc0 | 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 | pre><code.class="zig"><span.clas |
| 78fe0 | 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 44 65 66 69 6e 65 3c 2f 73 70 61 6e 3e 28 | s="tok-builtin">@cDefine</span>( |
| 79000 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 5f 47 4e 55 | <span.class="tok-str">"_GNU |
| 79020 | 5f 53 4f 55 52 43 45 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 7b 7d 29 3c 2f 63 6f 64 65 3e | _SOURCE"</span>,.{})</code> |
| 79040 | 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c | </pre>.......<p>See.also:</p><ul |
| 79060 | 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 49 6d 70 6f 72 74 2d 66 72 6f 6d 2d 43 2d 48 65 | >.<li><a.href="#Import-from-C-He |
| 79080 | 61 64 65 72 2d 46 69 6c 65 22 3e 49 6d 70 6f 72 74 20 66 72 6f 6d 20 43 20 48 65 61 64 65 72 20 | ader-File">Import.from.C.Header. |
| 790a0 | 46 69 6c 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 63 49 6e 63 | File</a></li>.<li><a.href="#cInc |
| 790c0 | 6c 75 64 65 22 3e 40 63 49 6e 63 6c 75 64 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 | lude">@cInclude</a></li>.<li><a. |
| 790e0 | 68 72 65 66 3d 22 23 63 49 6d 70 6f 72 74 22 3e 40 63 49 6d 70 6f 72 74 3c 2f 61 3e 3c 2f 6c 69 | href="#cImport">@cImport</a></li |
| 79100 | 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 63 55 6e 64 65 66 22 3e 40 63 55 6e 64 65 66 3c | >.<li><a.href="#cUndef">@cUndef< |
| 79120 | 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 76 6f 69 64 22 3e 76 6f 69 | /a></li>.<li><a.href="#void">voi |
| 79140 | 64 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c | d</a></li>.</ul>...............< |
| 79160 | 68 32 20 69 64 3d 22 63 49 6d 70 6f 72 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 63 49 | h2.id="cImport"><a.href="#toc-cI |
| 79180 | 6d 70 6f 72 74 22 3e 40 63 49 6d 70 6f 72 74 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 | mport">@cImport</a>.<a.class="hd |
| 791a0 | 72 22 20 68 72 65 66 3d 22 23 63 49 6d 70 6f 72 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a | r".href="#cImport">..</a></h2>.. |
| 791c0 | 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 | ......<pre><code.class="zig"><sp |
| 791e0 | 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< |
| 79200 | 2f 73 70 61 6e 3e 28 65 78 70 72 65 73 73 69 6f 6e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | /span>(expression).<span.class=" |
| 79220 | 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 | tok-type">type</span></code></pr |
| 79240 | 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 |
| 79260 | 20 70 61 72 73 65 73 20 43 20 63 6f 64 65 20 61 6e 64 20 69 6d 70 6f 72 74 73 20 74 68 65 20 66 | .parses.C.code.and.imports.the.f |
| 79280 | 75 6e 63 74 69 6f 6e 73 2c 20 74 79 70 65 73 2c 20 76 61 72 69 61 62 6c 65 73 2c 0a 20 20 20 20 | unctions,.types,.variables,..... |
| 792a0 | 20 20 61 6e 64 20 63 6f 6d 70 61 74 69 62 6c 65 20 6d 61 63 72 6f 20 64 65 66 69 6e 69 74 69 6f | ..and.compatible.macro.definitio |
| 792c0 | 6e 73 20 69 6e 74 6f 20 61 20 6e 65 77 20 65 6d 70 74 79 20 73 74 72 75 63 74 20 74 79 70 65 2c | ns.into.a.new.empty.struct.type, |
| 792e0 | 20 61 6e 64 20 74 68 65 6e 0a 20 20 20 20 20 20 72 65 74 75 72 6e 73 20 74 68 61 74 20 74 79 70 | .and.then.......returns.that.typ |
| 79300 | 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 3c 63 | e........</p>.......<p>.......<c |
| 79320 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 65 78 70 72 65 73 73 69 6f 6e 3c 2f 63 6f 64 65 | ode.class="zig">expression</code |
| 79340 | 3e 20 69 73 20 69 6e 74 65 72 70 72 65 74 65 64 20 61 74 20 63 6f 6d 70 69 6c 65 20 74 69 6d 65 | >.is.interpreted.at.compile.time |
| 79360 | 2e 20 54 68 65 20 62 75 69 6c 74 69 6e 20 66 75 6e 63 74 69 6f 6e 73 0a 20 20 20 20 20 20 20 20 | ..The.builtin.functions......... |
| 79380 | 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ..<code.class="zig"><span.class= |
| 793a0 | 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 49 6e 63 6c 75 64 65 3c 2f 73 70 61 6e 3e 3c 2f | "tok-builtin">@cInclude</span></ |
| 793c0 | 63 6f 64 65 3e 2c 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 | code>,.<code.class="zig"><span.c |
| 793e0 | 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 44 65 66 69 6e 65 3c 2f 73 70 61 | lass="tok-builtin">@cDefine</spa |
| 79400 | 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 61 6e 64 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | n></code>,.and.<code.class="zig" |
| 79420 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 55 6e 64 | ><span.class="tok-builtin">@cUnd |
| 79440 | 65 66 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 77 6f 72 6b 0a 20 20 20 20 20 20 77 69 74 68 | ef</span></code>.work.......with |
| 79460 | 69 6e 20 74 68 69 73 20 65 78 70 72 65 73 73 69 6f 6e 2c 20 61 70 70 65 6e 64 69 6e 67 20 74 6f | in.this.expression,.appending.to |
| 79480 | 20 61 20 74 65 6d 70 6f 72 61 72 79 20 62 75 66 66 65 72 20 77 68 69 63 68 20 69 73 20 74 68 65 | .a.temporary.buffer.which.is.the |
| 794a0 | 6e 20 70 61 72 73 65 64 20 61 73 20 43 20 63 6f 64 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 | n.parsed.as.C.code........</p>.. |
| 794c0 | 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 55 73 75 61 6c 6c 79 20 79 6f 75 20 73 68 6f 75 6c | .....<p>.......Usually.you.shoul |
| 794e0 | 64 20 6f 6e 6c 79 20 68 61 76 65 20 6f 6e 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | d.only.have.one.<code.class="zig |
| 79500 | 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 49 6d | "><span.class="tok-builtin">@cIm |
| 79520 | 70 6f 72 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 69 6e 20 79 6f 75 72 20 65 6e 74 69 72 | port</span></code>.in.your.entir |
| 79540 | 65 20 61 70 70 6c 69 63 61 74 69 6f 6e 2c 20 62 65 63 61 75 73 65 20 69 74 20 73 61 76 65 73 20 | e.application,.because.it.saves. |
| 79560 | 74 68 65 20 63 6f 6d 70 69 6c 65 72 0a 20 20 20 20 20 20 66 72 6f 6d 20 69 6e 76 6f 6b 69 6e 67 | the.compiler.......from.invoking |
| 79580 | 20 63 6c 61 6e 67 20 6d 75 6c 74 69 70 6c 65 20 74 69 6d 65 73 2c 20 61 6e 64 20 70 72 65 76 65 | .clang.multiple.times,.and.preve |
| 795a0 | 6e 74 73 20 69 6e 6c 69 6e 65 20 66 75 6e 63 74 69 6f 6e 73 20 66 72 6f 6d 20 62 65 69 6e 67 20 | nts.inline.functions.from.being. |
| 795c0 | 64 75 70 6c 69 63 61 74 65 64 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e | duplicated........</p>.......<p> |
| 795e0 | 0a 20 20 20 20 20 20 52 65 61 73 6f 6e 73 20 66 6f 72 20 68 61 76 69 6e 67 20 6d 75 6c 74 69 70 | .......Reasons.for.having.multip |
| 79600 | 6c 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | le.<code.class="zig"><span.class |
| 79620 | 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></ |
| 79640 | 63 6f 64 65 3e 20 65 78 70 72 65 73 73 69 6f 6e 73 20 77 6f 75 6c 64 20 62 65 3a 0a 20 20 20 20 | code>.expressions.would.be:..... |
| 79660 | 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e | ..</p>.......<ul>...........<li> |
| 79680 | 54 6f 20 61 76 6f 69 64 20 61 20 73 79 6d 62 6f 6c 20 63 6f 6c 6c 69 73 69 6f 6e 2c 20 66 6f 72 | To.avoid.a.symbol.collision,.for |
| 796a0 | 20 65 78 61 6d 70 6c 65 20 69 66 20 66 6f 6f 2e 68 20 61 6e 64 20 62 61 72 2e 68 20 62 6f 74 68 | .example.if.foo.h.and.bar.h.both |
| 796c0 | 20 3c 63 6f 64 65 3e 23 64 65 66 69 6e 65 20 43 4f 4e 4e 45 43 54 49 4f 4e 5f 43 4f 55 4e 54 3c | .<code>#define.CONNECTION_COUNT< |
| 796e0 | 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 54 6f 20 61 6e 61 6c 79 | /code></li>.........<li>To.analy |
| 79700 | 7a 65 20 74 68 65 20 43 20 63 6f 64 65 20 77 69 74 68 20 64 69 66 66 65 72 65 6e 74 20 70 72 65 | ze.the.C.code.with.different.pre |
| 79720 | 70 72 6f 63 65 73 73 6f 72 20 64 65 66 69 6e 65 73 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 | processor.defines</li>.......</u |
| 79740 | 6c 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c | l>.......<p>See.also:</p><ul>.<l |
| 79760 | 69 3e 3c 61 20 68 72 65 66 3d 22 23 49 6d 70 6f 72 74 2d 66 72 6f 6d 2d 43 2d 48 65 61 64 65 72 | i><a.href="#Import-from-C-Header |
| 79780 | 2d 46 69 6c 65 22 3e 49 6d 70 6f 72 74 20 66 72 6f 6d 20 43 20 48 65 61 64 65 72 20 46 69 6c 65 | -File">Import.from.C.Header.File |
| 797a0 | 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 63 49 6e 63 6c 75 64 65 | </a></li>.<li><a.href="#cInclude |
| 797c0 | 22 3e 40 63 49 6e 63 6c 75 64 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 | ">@cInclude</a></li>.<li><a.href |
| 797e0 | 3d 22 23 63 44 65 66 69 6e 65 22 3e 40 63 44 65 66 69 6e 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c | ="#cDefine">@cDefine</a></li>.<l |
| 79800 | 69 3e 3c 61 20 68 72 65 66 3d 22 23 63 55 6e 64 65 66 22 3e 40 63 55 6e 64 65 66 3c 2f 61 3e 3c | i><a.href="#cUndef">@cUndef</a>< |
| 79820 | 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d | /li>.</ul>...............<h2.id= |
| 79840 | 22 63 49 6e 63 6c 75 64 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 63 49 6e 63 6c 75 64 | "cInclude"><a.href="#toc-cInclud |
| 79860 | 65 22 3e 40 63 49 6e 63 6c 75 64 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 | e">@cInclude</a>.<a.class="hdr". |
| 79880 | 68 72 65 66 3d 22 23 63 49 6e 63 6c 75 64 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 | href="#cInclude">..</a></h2>.... |
| 798a0 | 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e | ....<pre><code.class="zig"><span |
| 798c0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 49 6e 63 6c 75 64 65 3c 2f | .class="tok-builtin">@cInclude</ |
| 798e0 | 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 | span>(<span.class="tok-kw">compt |
| 79900 | 69 6d 65 3c 2f 73 70 61 6e 3e 20 70 61 74 68 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ime</span>.path:.[]<span.class=" |
| 79920 | 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 | tok-type">u8</span>)</code></pre |
| 79940 | 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. |
| 79960 | 63 61 6e 20 6f 6e 6c 79 20 6f 63 63 75 72 20 69 6e 73 69 64 65 20 3c 63 6f 64 65 20 63 6c 61 73 | can.only.occur.inside.<code.clas |
| 79980 | 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e | s="zig"><span.class="tok-builtin |
| 799a0 | 22 3e 40 63 49 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 | ">@cImport</span></code>........ |
| 799c0 | 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 61 70 70 65 6e 64 | </p>.......<p>.......This.append |
| 799e0 | 73 20 3c 63 6f 64 65 3e 23 69 6e 63 6c 75 64 65 20 26 6c 74 3b 24 70 61 74 68 26 67 74 3b 5c 6e | s.<code>#include.<$path>\n |
| 79a00 | 3c 2f 63 6f 64 65 3e 20 74 6f 20 74 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | </code>.to.the.<code.class="zig" |
| 79a20 | 3e 63 5f 69 6d 70 6f 72 74 3c 2f 63 6f 64 65 3e 0a 20 20 20 20 20 20 74 65 6d 70 6f 72 61 72 79 | >c_import</code>.......temporary |
| 79a40 | 20 62 75 66 66 65 72 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 | .buffer........</p>.......<p>See |
| 79a60 | 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 49 6d 70 | .also:</p><ul>.<li><a.href="#Imp |
| 79a80 | 6f 72 74 2d 66 72 6f 6d 2d 43 2d 48 65 61 64 65 72 2d 46 69 6c 65 22 3e 49 6d 70 6f 72 74 20 66 | ort-from-C-Header-File">Import.f |
| 79aa0 | 72 6f 6d 20 43 20 48 65 61 64 65 72 20 46 69 6c 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c | rom.C.Header.File</a></li>.<li>< |
| 79ac0 | 61 20 68 72 65 66 3d 22 23 63 49 6d 70 6f 72 74 22 3e 40 63 49 6d 70 6f 72 74 3c 2f 61 3e 3c 2f | a.href="#cImport">@cImport</a></ |
| 79ae0 | 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 63 44 65 66 69 6e 65 22 3e 40 63 44 65 66 | li>.<li><a.href="#cDefine">@cDef |
| 79b00 | 69 6e 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 63 55 6e 64 65 | ine</a></li>.<li><a.href="#cUnde |
| 79b20 | 66 22 3e 40 63 55 6e 64 65 66 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 | f">@cUndef</a></li>.</ul>....... |
| 79b40 | 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 63 6c 7a 22 3e 3c 61 20 68 72 65 66 3d 22 23 | .........<h2.id="clz"><a.href="# |
| 79b60 | 74 6f 63 2d 63 6c 7a 22 3e 40 63 6c 7a 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 | toc-clz">@clz</a>.<a.class="hdr" |
| 79b80 | 20 68 72 65 66 3d 22 23 63 6c 7a 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 | .href="#clz">..</a></h2>........ |
| 79ba0 | 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 | <pre><code.class="zig"><span.cla |
| 79bc0 | 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 6c 7a 3c 2f 73 70 61 6e 3e 28 3c 73 70 | ss="tok-builtin">@clz</span>(<sp |
| 79be0 | 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 |
| 79c00 | 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 |
| 79c20 | 3c 2f 73 70 61 6e 3e 2c 20 69 6e 74 65 67 65 72 3a 20 54 29 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 | </span>,.integer:.T)</code></pre |
| 79c40 | 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. |
| 79c60 | 63 6f 75 6e 74 73 20 74 68 65 20 6e 75 6d 62 65 72 20 6f 66 20 6d 6f 73 74 2d 73 69 67 6e 69 66 | counts.the.number.of.most-signif |
| 79c80 | 69 63 61 6e 74 20 28 6c 65 61 64 69 6e 67 20 69 6e 20 61 20 62 69 67 2d 45 6e 64 69 61 6e 20 73 | icant.(leading.in.a.big-Endian.s |
| 79ca0 | 65 6e 73 65 29 20 7a 65 72 6f 65 73 20 69 6e 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | ense).zeroes.in.<code.class="zig |
| 79cc0 | 22 3e 69 6e 74 65 67 65 72 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 | ">integer</code>........</p>.... |
| 79ce0 | 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 66 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | ...<p>.......If.<code.class="zig |
| 79d00 | 22 3e 69 6e 74 65 67 65 72 3c 2f 63 6f 64 65 3e 20 69 73 20 6b 6e 6f 77 6e 20 61 74 20 3c 61 20 | ">integer</code>.is.known.at.<a. |
| 79d20 | 68 72 65 66 3d 22 23 63 6f 6d 70 74 69 6d 65 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 61 3e 2c 0a 20 | href="#comptime">comptime</a>,.. |
| 79d40 | 20 20 20 20 20 74 68 65 20 72 65 74 75 72 6e 20 74 79 70 65 20 69 73 20 3c 63 6f 64 65 20 63 6c | .....the.return.type.is.<code.cl |
| 79d60 | 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 | ass="zig"><span.class="tok-type" |
| 79d80 | 3e 63 6f 6d 70 74 69 6d 65 5f 69 6e 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 | >comptime_int</span></code>..... |
| 79da0 | 20 20 20 4f 74 68 65 72 77 69 73 65 2c 20 74 68 65 20 72 65 74 75 72 6e 20 74 79 70 65 20 69 73 | ...Otherwise,.the.return.type.is |
| 79dc0 | 20 61 6e 20 75 6e 73 69 67 6e 65 64 20 69 6e 74 65 67 65 72 20 77 69 74 68 20 74 68 65 20 6d 69 | .an.unsigned.integer.with.the.mi |
| 79de0 | 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. |
| 79e00 | 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 |
| 79e20 | 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>..... |
| 79e40 | 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 66 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | ..<p>.......If.<code.class="zig" |
| 79e60 | 3e 69 6e 74 65 67 65 72 3c 2f 63 6f 64 65 3e 20 69 73 20 7a 65 72 6f 2c 20 3c 63 6f 64 65 20 63 | >integer</code>.is.zero,.<code.c |
| 79e80 | 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c | lass="zig"><span.class="tok-buil |
| 79ea0 | 74 69 6e 22 3e 40 63 6c 7a 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 72 65 74 75 72 6e 73 20 | tin">@clz</span></code>.returns. |
| 79ec0 | 74 68 65 20 62 69 74 20 77 69 64 74 68 0a 20 20 20 20 20 20 6f 66 20 69 6e 74 65 67 65 72 20 74 | the.bit.width.......of.integer.t |
| 79ee0 | 79 70 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 54 3c 2f 63 6f 64 65 3e 2e 0a | ype.<code.class="zig">T</code>.. |
| 79f00 | 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 |
| 79f20 | 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 63 74 7a 22 3e 40 63 74 7a 3c 2f 61 | ><ul>.<li><a.href="#ctz">@ctz</a |
| 79f40 | 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 70 6f 70 43 6f 75 6e 74 22 3e 40 | ></li>.<li><a.href="#popCount">@ |
| 79f60 | 70 6f 70 43 6f 75 6e 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a | popCount</a></li>.</ul>......... |
| 79f80 | 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 63 6d 70 78 63 68 67 53 74 72 6f 6e 67 22 3e 3c 61 | .......<h2.id="cmpxchgStrong"><a |
| 79fa0 | 20 68 72 65 66 3d 22 23 74 6f 63 2d 63 6d 70 78 63 68 67 53 74 72 6f 6e 67 22 3e 40 63 6d 70 78 | .href="#toc-cmpxchgStrong">@cmpx |
| 79fc0 | 63 68 67 53 74 72 6f 6e 67 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 | chgStrong</a>.<a.class="hdr".hre |
| 79fe0 | 66 3d 22 23 63 6d 70 78 63 68 67 53 74 72 6f 6e 67 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a | f="#cmpxchgStrong">..</a></h2>.. |
| 7a000 | 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 | ......<pre><code.class="zig"><sp |
| 7a020 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 6d 70 78 63 68 67 53 | an.class="tok-builtin">@cmpxchgS |
| 7a040 | 74 72 6f 6e 67 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | trong</span>(<span.class="tok-kw |
| 7a060 | 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 54 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ">comptime</span>.T:.<span.class |
| 7a080 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 70 74 72 3a 20 2a 54 | ="tok-type">type</span>,.ptr:.*T |
| 7a0a0 | 2c 20 65 78 70 65 63 74 65 64 5f 76 61 6c 75 65 3a 20 54 2c 20 6e 65 77 5f 76 61 6c 75 65 3a 20 | ,.expected_value:.T,.new_value:. |
| 7a0c0 | 54 2c 20 73 75 63 63 65 73 73 5f 6f 72 64 65 72 3a 20 41 74 6f 6d 69 63 4f 72 64 65 72 2c 20 66 | T,.success_order:.AtomicOrder,.f |
| 7a0e0 | 61 69 6c 5f 6f 72 64 65 72 3a 20 41 74 6f 6d 69 63 4f 72 64 65 72 29 20 3f 54 3c 2f 63 6f 64 65 | ail_order:.AtomicOrder).?T</code |
| 7a100 | 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 66 75 6e | ></pre>.......<p>.......This.fun |
| 7a120 | 63 74 69 6f 6e 20 70 65 72 66 6f 72 6d 73 20 61 20 73 74 72 6f 6e 67 20 61 74 6f 6d 69 63 20 63 | ction.performs.a.strong.atomic.c |
| 7a140 | 6f 6d 70 61 72 65 20 65 78 63 68 61 6e 67 65 20 6f 70 65 72 61 74 69 6f 6e 2e 20 49 74 27 73 20 | ompare.exchange.operation..It's. |
| 7a160 | 74 68 65 20 65 71 75 69 76 61 6c 65 6e 74 20 6f 66 20 74 68 69 73 20 63 6f 64 65 2c 0a 20 20 20 | the.equivalent.of.this.code,.... |
| 7a180 | 20 20 20 65 78 63 65 70 74 20 61 74 6f 6d 69 63 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 | ...except.atomic:.......</p>.... |
| 7a1a0 | 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 | ...<pre><code.class="zig"><span. |
| 7a1c0 | 63 6c 61 73 73 3d 22 74 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 |
| 7a1e0 | 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 63 6d 70 78 63 68 67 53 74 72 6f 6e 67 42 75 74 4e 6f | lass="tok-fn">cmpxchgStrongButNo |
| 7a200 | 74 41 74 6f 6d 69 63 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | tAtomic</span>(<span.class="tok- |
| 7a220 | 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 54 3a 20 3c 73 70 61 6e 20 63 6c 61 | kw">comptime</span>.T:.<span.cla |
| 7a240 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 70 74 72 3a 20 | ss="tok-type">type</span>,.ptr:. |
| 7a260 | 2a 54 2c 20 65 78 70 65 63 74 65 64 5f 76 61 6c 75 65 3a 20 54 2c 20 6e 65 77 5f 76 61 6c 75 65 | *T,.expected_value:.T,.new_value |
| 7a280 | 3a 20 54 29 20 3f 54 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | :.T).?T.{.....<span.class="tok-k |
| 7a2a0 | 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6f 6c 64 5f 76 61 6c 75 65 20 3d 20 70 74 72 2e | w">const</span>.old_value.=.ptr. |
| 7a2c0 | 2a 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f | *;.....<span.class="tok-kw">if</ |
| 7a2e0 | 73 70 61 6e 3e 20 28 6f 6c 64 5f 76 61 6c 75 65 20 3d 3d 20 65 78 70 65 63 74 65 64 5f 76 61 6c | span>.(old_value.==.expected_val |
| 7a300 | 75 65 29 20 7b 0a 20 20 20 20 20 20 20 20 70 74 72 2e 2a 20 3d 20 6e 65 77 5f 76 61 6c 75 65 3b | ue).{.........ptr.*.=.new_value; |
| 7a320 | 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 |
| 7a340 | 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c | turn</span>.<span.class="tok-nul |
| 7a360 | 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 7d 20 3c 73 70 61 6e 20 63 6c 61 73 | l">null</span>;.....}.<span.clas |
| 7a380 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 | s="tok-kw">else</span>.{........ |
| 7a3a0 | 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 |
| 7a3c0 | 61 6e 3e 20 6f 6c 64 5f 76 61 6c 75 65 3b 0a 20 20 20 20 7d 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 | an>.old_value;.....}.}</code></p |
| 7a3e0 | 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 66 20 79 6f 75 20 61 72 65 20 75 | re>.......<p>.......If.you.are.u |
| 7a400 | 73 69 6e 67 20 63 6d 70 78 63 68 67 20 69 6e 20 61 20 6c 6f 6f 70 2c 20 3c 61 20 68 72 65 66 3d | sing.cmpxchg.in.a.loop,.<a.href= |
| 7a420 | 22 23 63 6d 70 78 63 68 67 57 65 61 6b 22 3e 40 63 6d 70 78 63 68 67 57 65 61 6b 3c 2f 61 3e 20 | "#cmpxchgWeak">@cmpxchgWeak</a>. |
| 7a440 | 69 73 20 74 68 65 20 62 65 74 74 65 72 20 63 68 6f 69 63 65 2c 20 62 65 63 61 75 73 65 20 69 74 | is.the.better.choice,.because.it |
| 7a460 | 20 63 61 6e 20 62 65 20 69 6d 70 6c 65 6d 65 6e 74 65 64 0a 20 20 20 20 20 20 6d 6f 72 65 20 65 | .can.be.implemented.......more.e |
| 7a480 | 66 66 69 63 69 65 6e 74 6c 79 20 69 6e 20 6d 61 63 68 69 6e 65 20 69 6e 73 74 72 75 63 74 69 6f | fficiently.in.machine.instructio |
| 7a4a0 | 6e 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 3c | ns........</p>.......<p>.......< |
| 7a4c0 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 54 3c 2f 63 6f 64 65 3e 20 6d 75 73 74 20 62 | code.class="zig">T</code>.must.b |
| 7a4e0 | 65 20 61 20 70 6f 69 6e 74 65 72 2c 20 61 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | e.a.pointer,.a.<code.class="zig" |
| 7a500 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 | ><span.class="tok-type">bool</sp |
| 7a520 | 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 61 20 66 6c 6f 61 74 2c 0a 20 20 20 20 20 20 61 6e 20 69 6e | an></code>,.a.float,.......an.in |
| 7a540 | 74 65 67 65 72 20 6f 72 20 61 6e 20 65 6e 75 6d 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 | teger.or.an.enum........</p>.... |
| 7a560 | 20 20 20 3c 70 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c | ...<p><code.class="zig"><span.cl |
| 7a580 | 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 74 79 70 65 49 6e 66 6f 3c 2f 73 70 61 | ass="tok-builtin">@typeInfo</spa |
| 7a5a0 | 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 | n>(<span.class="tok-builtin">@Ty |
| 7a5c0 | 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 70 74 72 29 29 2e 50 6f 69 6e 74 65 72 2e 61 6c 69 67 6e 6d | peOf</span>(ptr)).Pointer.alignm |
| 7a5e0 | 65 6e 74 3c 2f 63 6f 64 65 3e 20 6d 75 73 74 20 62 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | ent</code>.must.be.<code.class=" |
| 7a600 | 7a 69 67 22 3e 26 67 74 3b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c | zig">>=.<span.class="tok-buil |
| 7a620 | 74 69 6e 22 3e 40 73 69 7a 65 4f 66 3c 2f 73 70 61 6e 3e 28 54 29 2e 3c 2f 63 6f 64 65 3e 3c 2f | tin">@sizeOf</span>(T).</code></ |
| 7a640 | 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 |
| 7a660 | 69 3e 3c 61 20 68 72 65 66 3d 22 23 43 6f 6d 70 69 6c 65 2d 56 61 72 69 61 62 6c 65 73 22 3e 43 | i><a.href="#Compile-Variables">C |
| 7a680 | 6f 6d 70 69 6c 65 20 56 61 72 69 61 62 6c 65 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 | ompile.Variables</a></li>.<li><a |
| 7a6a0 | 20 68 72 65 66 3d 22 23 63 6d 70 78 63 68 67 57 65 61 6b 22 3e 63 6d 70 78 63 68 67 57 65 61 6b | .href="#cmpxchgWeak">cmpxchgWeak |
| 7a6c0 | 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 |
| 7a6e0 | 32 20 69 64 3d 22 63 6d 70 78 63 68 67 57 65 61 6b 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 | 2.id="cmpxchgWeak"><a.href="#toc |
| 7a700 | 2d 63 6d 70 78 63 68 67 57 65 61 6b 22 3e 40 63 6d 70 78 63 68 67 57 65 61 6b 3c 2f 61 3e 20 3c | -cmpxchgWeak">@cmpxchgWeak</a>.< |
| 7a720 | 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 63 6d 70 78 63 68 67 57 65 61 6b | a.class="hdr".href="#cmpxchgWeak |
| 7a740 | 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 | ">..</a></h2>........<pre><code. |
| 7a760 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 | class="zig"><span.class="tok-bui |
| 7a780 | 6c 74 69 6e 22 3e 40 63 6d 70 78 63 68 67 57 65 61 6b 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 | ltin">@cmpxchgWeak</span>(<span. |
| 7a7a0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 54 | class="tok-kw">comptime</span>.T |
| 7a7c0 | 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 | :.<span.class="tok-type">type</s |
| 7a7e0 | 70 61 6e 3e 2c 20 70 74 72 3a 20 2a 54 2c 20 65 78 70 65 63 74 65 64 5f 76 61 6c 75 65 3a 20 54 | pan>,.ptr:.*T,.expected_value:.T |
| 7a800 | 2c 20 6e 65 77 5f 76 61 6c 75 65 3a 20 54 2c 20 73 75 63 63 65 73 73 5f 6f 72 64 65 72 3a 20 41 | ,.new_value:.T,.success_order:.A |
| 7a820 | 74 6f 6d 69 63 4f 72 64 65 72 2c 20 66 61 69 6c 5f 6f 72 64 65 72 3a 20 41 74 6f 6d 69 63 4f 72 | tomicOrder,.fail_order:.AtomicOr |
| 7a840 | 64 65 72 29 20 3f 54 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 | der).?T</code></pre>.......<p>.. |
| 7a860 | 20 20 20 20 20 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 70 65 72 66 6f 72 6d 73 20 61 20 77 65 | .....This.function.performs.a.we |
| 7a880 | 61 6b 20 61 74 6f 6d 69 63 20 63 6f 6d 70 61 72 65 20 65 78 63 68 61 6e 67 65 20 6f 70 65 72 61 | ak.atomic.compare.exchange.opera |
| 7a8a0 | 74 69 6f 6e 2e 20 49 74 27 73 20 74 68 65 20 65 71 75 69 76 61 6c 65 6e 74 20 6f 66 20 74 68 69 | tion..It's.the.equivalent.of.thi |
| 7a8c0 | 73 20 63 6f 64 65 2c 0a 20 20 20 20 20 20 65 78 63 65 70 74 20 61 74 6f 6d 69 63 3a 0a 20 20 20 | s.code,.......except.atomic:.... |
| 7a8e0 | 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | ...</p>.......<pre><code.class=" |
| 7a900 | 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 | zig"><span.class="tok-kw">fn</sp |
| 7a920 | 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 63 6d 70 78 63 68 67 | an>.<span.class="tok-fn">cmpxchg |
| 7a940 | 57 65 61 6b 42 75 74 4e 6f 74 41 74 6f 6d 69 63 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c | WeakButNotAtomic</span>(<span.cl |
| 7a960 | 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:. |
| 7a980 | 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 |
| 7a9a0 | 6e 3e 2c 20 70 74 72 3a 20 2a 54 2c 20 65 78 70 65 63 74 65 64 5f 76 61 6c 75 65 3a 20 54 2c 20 | n>,.ptr:.*T,.expected_value:.T,. |
| 7a9c0 | 6e 65 77 5f 76 61 6c 75 65 3a 20 54 29 20 3f 54 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | new_value:.T).?T.{.....<span.cla |
| 7a9e0 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6f 6c 64 5f 76 61 6c | ss="tok-kw">const</span>.old_val |
| 7aa00 | 75 65 20 3d 20 70 74 72 2e 2a 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ue.=.ptr.*;.....<span.class="tok |
| 7aa20 | 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 6f 6c 64 5f 76 61 6c 75 65 20 3d 3d 20 65 78 70 | -kw">if</span>.(old_value.==.exp |
| 7aa40 | 65 63 74 65 64 5f 76 61 6c 75 65 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | ected_value.<span.class="tok-kw" |
| 7aa60 | 3e 61 6e 64 3c 2f 73 70 61 6e 3e 20 75 73 75 61 6c 6c 79 54 72 75 65 42 75 74 53 6f 6d 65 74 69 | >and</span>.usuallyTrueButSometi |
| 7aa80 | 6d 65 73 46 61 6c 73 65 28 29 29 20 7b 0a 20 20 20 20 20 20 20 20 70 74 72 2e 2a 20 3d 20 6e 65 | mesFalse()).{.........ptr.*.=.ne |
| 7aaa0 | 77 5f 76 61 6c 75 65 3b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | w_value;.........<span.class="to |
| 7aac0 | 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= |
| 7aae0 | 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 7d 20 3c 73 | "tok-null">null</span>;.....}.<s |
| 7ab00 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 7b | pan.class="tok-kw">else</span>.{ |
| 7ab20 | 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 |
| 7ab40 | 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 6f 6c 64 5f 76 61 6c 75 65 3b 0a 20 20 20 20 7d 0a 7d 3c 2f | turn</span>.old_value;.....}.}</ |
| 7ab60 | 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 66 20 79 | code></pre>.......<p>.......If.y |
| 7ab80 | 6f 75 20 61 72 65 20 75 73 69 6e 67 20 63 6d 70 78 63 68 67 20 69 6e 20 61 20 6c 6f 6f 70 2c 20 | ou.are.using.cmpxchg.in.a.loop,. |
| 7aba0 | 74 68 65 20 73 70 6f 72 61 64 69 63 20 66 61 69 6c 75 72 65 20 77 69 6c 6c 20 62 65 20 6e 6f 20 | the.sporadic.failure.will.be.no. |
| 7abc0 | 70 72 6f 62 6c 65 6d 2c 20 61 6e 64 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 63 | problem,.and.<code.class="zig">c |
| 7abe0 | 6d 70 78 63 68 67 57 65 61 6b 3c 2f 63 6f 64 65 3e 0a 20 20 20 20 20 20 69 73 20 74 68 65 20 62 | mpxchgWeak</code>.......is.the.b |
| 7ac00 | 65 74 74 65 72 20 63 68 6f 69 63 65 2c 20 62 65 63 61 75 73 65 20 69 74 20 63 61 6e 20 62 65 20 | etter.choice,.because.it.can.be. |
| 7ac20 | 69 6d 70 6c 65 6d 65 6e 74 65 64 20 6d 6f 72 65 20 65 66 66 69 63 69 65 6e 74 6c 79 20 69 6e 20 | implemented.more.efficiently.in. |
| 7ac40 | 6d 61 63 68 69 6e 65 20 69 6e 73 74 72 75 63 74 69 6f 6e 73 2e 0a 20 20 20 20 20 20 48 6f 77 65 | machine.instructions........Howe |
| 7ac60 | 76 65 72 20 69 66 20 79 6f 75 20 6e 65 65 64 20 61 20 73 74 72 6f 6e 67 65 72 20 67 75 61 72 61 | ver.if.you.need.a.stronger.guara |
| 7ac80 | 6e 74 65 65 2c 20 75 73 65 20 3c 61 20 68 72 65 66 3d 22 23 63 6d 70 78 63 68 67 53 74 72 6f 6e | ntee,.use.<a.href="#cmpxchgStron |
| 7aca0 | 67 22 3e 40 63 6d 70 78 63 68 67 53 74 72 6f 6e 67 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 | g">@cmpxchgStrong</a>........</p |
| 7acc0 | 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a | >.......<p>.......<code.class="z |
| 7ace0 | 69 67 22 3e 54 3c 2f 63 6f 64 65 3e 20 6d 75 73 74 20 62 65 20 61 20 70 6f 69 6e 74 65 72 2c 20 | ig">T</code>.must.be.a.pointer,. |
| 7ad00 | 61 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | a.<code.class="zig"><span.class= |
| 7ad20 | 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 61 | "tok-type">bool</span></code>,.a |
| 7ad40 | 20 66 6c 6f 61 74 2c 0a 20 20 20 20 20 20 61 6e 20 69 6e 74 65 67 65 72 20 6f 72 20 61 6e 20 65 | .float,.......an.integer.or.an.e |
| 7ad60 | 6e 75 6d 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 3c 63 6f 64 65 20 63 | num........</p>.......<p><code.c |
| 7ad80 | 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c | lass="zig"><span.class="tok-buil |
| 7ada0 | 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 |
| 7adc0 | 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 70 | s="tok-builtin">@TypeOf</span>(p |
| 7ade0 | 74 72 29 29 2e 50 6f 69 6e 74 65 72 2e 61 6c 69 67 6e 6d 65 6e 74 3c 2f 63 6f 64 65 3e 20 6d 75 | tr)).Pointer.alignment</code>.mu |
| 7ae00 | 73 74 20 62 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 26 67 74 3b 3d 20 3c 73 | st.be.<code.class="zig">>=.<s |
| 7ae20 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 69 7a 65 4f 66 3c | pan.class="tok-builtin">@sizeOf< |
| 7ae40 | 2f 73 70 61 6e 3e 28 54 29 2e 3c 2f 63 6f 64 65 3e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 53 | /span>(T).</code></p>.......<p>S |
| 7ae60 | 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 43 | ee.also:</p><ul>.<li><a.href="#C |
| 7ae80 | 6f 6d 70 69 6c 65 2d 56 61 72 69 61 62 6c 65 73 22 3e 43 6f 6d 70 69 6c 65 20 56 61 72 69 61 62 | ompile-Variables">Compile.Variab |
| 7aea0 | 6c 65 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 63 6d 70 78 63 | les</a></li>.<li><a.href="#cmpxc |
| 7aec0 | 68 67 53 74 72 6f 6e 67 22 3e 63 6d 70 78 63 68 67 53 74 72 6f 6e 67 3c 2f 61 3e 3c 2f 6c 69 3e | hgStrong">cmpxchgStrong</a></li> |
| 7aee0 | 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 63 6f | .</ul>................<h2.id="co |
| 7af00 | 6d 70 69 6c 65 45 72 72 6f 72 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 63 6f 6d 70 69 6c | mpileError"><a.href="#toc-compil |
| 7af20 | 65 45 72 72 6f 72 22 3e 40 63 6f 6d 70 69 6c 65 45 72 72 6f 72 3c 2f 61 3e 20 3c 61 20 63 6c 61 | eError">@compileError</a>.<a.cla |
| 7af40 | 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 63 6f 6d 70 69 6c 65 45 72 72 6f 72 22 3e c2 a7 | ss="hdr".href="#compileError">.. |
| 7af60 | 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 | </a></h2>........<pre><code.clas |
| 7af80 | 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e | s="zig"><span.class="tok-builtin |
| 7afa0 | 22 3e 40 63 6f 6d 70 69 6c 65 45 72 72 6f 72 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 | ">@compileError</span>(<span.cla |
| 7afc0 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 6d 73 67 3a | ss="tok-kw">comptime</span>.msg: |
| 7afe0 | 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 |
| 7b000 | 61 6e 3e 29 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 | an>)</code></pre>.......<p>..... |
| 7b020 | 20 20 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 2c 20 77 68 65 6e 20 73 65 6d 61 6e 74 69 63 61 6c | ..This.function,.when.semantical |
| 7b040 | 6c 79 20 61 6e 61 6c 79 7a 65 64 2c 20 63 61 75 73 65 73 20 61 20 63 6f 6d 70 69 6c 65 20 65 72 | ly.analyzed,.causes.a.compile.er |
| 7b060 | 72 6f 72 20 77 69 74 68 20 74 68 65 0a 20 20 20 20 20 20 6d 65 73 73 61 67 65 20 3c 63 6f 64 65 | ror.with.the.......message.<code |
| 7b080 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 6d 73 67 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c | .class="zig">msg</code>........< |
| 7b0a0 | 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 72 65 20 61 72 65 20 73 65 | /p>.......<p>.......There.are.se |
| 7b0c0 | 76 65 72 61 6c 20 77 61 79 73 20 74 68 61 74 20 63 6f 64 65 20 61 76 6f 69 64 73 20 62 65 69 6e | veral.ways.that.code.avoids.bein |
| 7b0e0 | 67 20 73 65 6d 61 6e 74 69 63 61 6c 6c 79 20 63 68 65 63 6b 65 64 2c 20 73 75 63 68 20 61 73 0a | g.semantically.checked,.such.as. |
| 7b100 | 20 20 20 20 20 20 75 73 69 6e 67 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 | ......using.<code.class="zig"><s |
| 7b120 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 3c 2f 63 6f | pan.class="tok-kw">if</span></co |
| 7b140 | 64 65 3e 20 6f 72 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 | de>.or.<code.class="zig"><span.c |
| 7b160 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 77 69 74 63 68 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 | lass="tok-kw">switch</span></cod |
| 7b180 | 65 3e 20 77 69 74 68 20 63 6f 6d 70 69 6c 65 20 74 69 6d 65 20 63 6f 6e 73 74 61 6e 74 73 2c 0a | e>.with.compile.time.constants,. |
| 7b1a0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 61 6e 64 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a | ..............and.<code.class="z |
| 7b1c0 | 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d | ig"><span.class="tok-kw">comptim |
| 7b1e0 | 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 66 75 6e 63 74 69 6f 6e 73 2e 0a 20 20 20 20 20 | e</span></code>.functions....... |
| 7b200 | 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 63 6f 6d 70 | .</p>...............<h2.id="comp |
| 7b220 | 69 6c 65 4c 6f 67 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 63 6f 6d 70 69 6c 65 4c 6f 67 | ileLog"><a.href="#toc-compileLog |
| 7b240 | 22 3e 40 63 6f 6d 70 69 6c 65 4c 6f 67 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 | ">@compileLog</a>.<a.class="hdr" |
| 7b260 | 20 68 72 65 66 3d 22 23 63 6f 6d 70 69 6c 65 4c 6f 67 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a | .href="#compileLog">..</a></h2>. |
| 7b280 | 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 | .......<pre><code.class="zig"><s |
| 7b2a0 | 70 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 |
| 7b2c0 | 4c 6f 67 3c 2f 73 70 61 6e 3e 28 61 72 67 73 3a 20 2e 2e 2e 29 3c 2f 63 6f 64 65 3e 3c 2f 70 72 | Log</span>(args:....)</code></pr |
| 7b2e0 | 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 |
| 7b300 | 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. |
| 7b320 | 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>.. |
| 7b340 | 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 |
| 7b360 | 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 |
| 7b380 | 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 |
| 7b3a0 | 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 |
| 7b3c0 | 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... |
| 7b3e0 | 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 |
| 7b400 | 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 |
| 7b420 | 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 |
| 7b440 | 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........</ |
| 7b460 | 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 |
| 7b480 | 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 |
| 7b4a0 | 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 |
| 7b4c0 | 75 74 69 6e 67 20 63 6f 64 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 | uting.code........</p>.......<p. |
| 7b4e0 | 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 | class="file">test.zig</p><pre><c |
| 7b500 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ode.class="zig"><span.class="tok |
| 7b520 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 70 72 69 6e 74 20 3d 20 3c 73 70 61 6e 20 | -kw">const</span>.print.=.<span. |
| 7b540 | 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 |
| 7b560 | 6e 3e 28 3c 73 70 61 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 |
| 7b580 | 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 64 65 62 75 67 2e 70 72 69 6e 74 3b 0a 0a 3c | td"</span>).debug.print;..< |
| 7b5a0 | 73 70 61 6e 20 63 6c 61 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> |
| 7b5c0 | 20 6e 75 6d 31 20 3d 20 62 6c 6b 3a 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | .num1.=.blk:.{.....<span.class=" |
| 7b5e0 | 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 76 61 6c 31 3a 20 3c 73 70 61 6e 20 63 | tok-kw">var</span>.val1:.<span.c |
| 7b600 | 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 |
| 7b620 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 39 39 3c 2f 73 70 61 6e 3e 3b | an.class="tok-number">99</span>; |
| 7b640 | 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">@ |
| 7b660 | 63 6f 6d 70 69 6c 65 4c 6f 67 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | compileLog</span>(<span.class="t |
| 7b680 | 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 63 6f 6d 70 74 69 6d 65 20 76 61 6c 31 20 3d 20 26 71 | ok-str">"comptime.val1.=.&q |
| 7b6a0 | 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 76 61 6c 31 29 3b 0a 20 20 20 20 76 61 6c 31 20 3d 20 76 | uot;</span>,.val1);.....val1.=.v |
| 7b6c0 | 61 6c 31 20 2b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 | al1.+.<span.class="tok-number">1 |
| 7b6e0 | 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 |
| 7b700 | 22 3e 62 72 65 61 6b 3c 2f 73 70 61 6e 3e 20 3a 62 6c 6b 20 76 61 6c 31 3b 0a 7d 3b 0a 0a 3c 73 | ">break</span>.:blk.val1;.};..<s |
| 7b720 | 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>.< |
| 7b740 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 6d 61 69 6e 26 | span.class="tok-str">"main& |
| 7b760 | 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=" |
| 7b780 | 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 6f 6d 70 69 6c 65 4c 6f 67 3c 2f 73 70 61 6e 3e 28 | tok-builtin">@compileLog</span>( |
| 7b7a0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 63 6f 6d 70 | <span.class="tok-str">"comp |
| 7b7c0 | 74 69 6d 65 20 69 6e 20 6d 61 69 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 20 20 20 | time.in.main"</span>);..... |
| 7b7e0 | 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 |
| 7b800 | 6f 74 3b 52 75 6e 74 69 6d 65 20 69 6e 20 6d 61 69 6e 2c 20 6e 75 6d 31 20 3d 20 7b 7d 2e 5c 6e | ot;Runtime.in.main,.num1.=.{}.\n |
| 7b820 | 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 6e 75 6d 31 7d 29 3b 0a 7d 3c 2f 63 6f 64 65 | "</span>,..{num1});.}</code |
| 7b840 | 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e | ></pre><pre><code.class="shell"> |
| 7b860 | 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 7c 20 2a 26 71 75 6f 74 3b 63 6f 6d | $.zig.test.test.zig.|.*"com |
| 7b880 | 70 74 69 6d 65 20 69 6e 20 6d 61 69 6e 26 71 75 6f 74 3b 0a 7c 20 2a 26 71 75 6f 74 3b 63 6f 6d | ptime.in.main".|.*"com |
| 7b8a0 | 70 74 69 6d 65 20 76 61 6c 31 20 3d 20 26 71 75 6f 74 3b 2c 20 39 39 0a 3c 73 70 61 6e 20 63 6c | ptime.val1.=.",.99.<span.cl |
| 7b8c0 | 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 | ass="t0_1">./docgen_tmp/test.zig |
| 7b8e0 | 3a 31 31 3a 35 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 31 5f 31 | :11:5:.</span><span.class="t31_1 |
| 7b900 | 22 3e 65 72 72 6f 72 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f | ">error:.</span><span.class="t0_ |
| 7b920 | 31 22 3e 66 6f 75 6e 64 20 63 6f 6d 70 69 6c 65 20 6c 6f 67 20 73 74 61 74 65 6d 65 6e 74 3c 2f | 1">found.compile.log.statement</ |
| 7b940 | 73 70 61 6e 3e 0a 20 20 20 20 40 63 6f 6d 70 69 6c 65 4c 6f 67 28 26 71 75 6f 74 3b 63 6f 6d 70 | span>.....@compileLog("comp |
| 7b960 | 74 69 6d 65 20 69 6e 20 6d 61 69 6e 26 71 75 6f 74 3b 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 | time.in.main");.....<span.c |
| 7b980 | 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 | lass="t32_1">^</span>.<span.clas |
| 7b9a0 | 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 31 | s="t0_1">./docgen_tmp/test.zig:1 |
| 7b9c0 | 3a 33 35 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 36 5f 31 22 3e | :35:.</span><span.class="t36_1"> |
| 7b9e0 | 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e | note:.</span><span.class="t0_1"> |
| 7ba00 | 72 65 66 65 72 65 6e 63 65 64 20 68 65 72 65 3c 2f 73 70 61 6e 3e 0a 63 6f 6e 73 74 20 70 72 69 | referenced.here</span>.const.pri |
| 7ba20 | 6e 74 20 3d 20 40 69 6d 70 6f 72 74 28 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 29 2e 64 65 | nt.=.@import("std").de |
| 7ba40 | 62 75 67 2e 70 72 69 6e 74 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | bug.print;...................... |
| 7ba60 | 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 | .............<span.class="t32_1" |
| 7ba80 | 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 | >^</span>.<span.class="t0_1">./d |
| 7baa0 | 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 31 33 3a 35 3a 20 3c 2f 73 70 61 6e 3e | ocgen_tmp/test.zig:13:5:.</span> |
| 7bac0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 36 5f 31 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e | <span.class="t36_1">note:.</span |
| 7bae0 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 72 65 66 65 72 65 6e 63 65 64 20 68 | ><span.class="t0_1">referenced.h |
| 7bb00 | 65 72 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 70 72 69 6e 74 28 26 71 75 6f 74 3b 52 75 6e 74 69 | ere</span>.....print("Runti |
| 7bb20 | 6d 65 20 69 6e 20 6d 61 69 6e 2c 20 6e 75 6d 31 20 3d 20 7b 7d 2e 5c 6e 26 71 75 6f 74 3b 2c 20 | me.in.main,.num1.=.{}.\n",. |
| 7bb40 | 2e 7b 6e 75 6d 31 7d 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 | .{num1});.....<span.class="t32_1 |
| 7bb60 | 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f | ">^</span>.<span.class="t0_1">./ |
| 7bb80 | 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 35 3a 35 3a 20 3c 2f 73 70 61 6e 3e | docgen_tmp/test.zig:5:5:.</span> |
| 7bba0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 31 5f 31 22 3e 65 72 72 6f 72 3a 20 3c 2f 73 70 61 | <span.class="t31_1">error:.</spa |
| 7bbc0 | 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 66 6f 75 6e 64 20 63 6f 6d 70 69 | n><span.class="t0_1">found.compi |
| 7bbe0 | 6c 65 20 6c 6f 67 20 73 74 61 74 65 6d 65 6e 74 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 40 63 6f 6d | le.log.statement</span>.....@com |
| 7bc00 | 70 69 6c 65 4c 6f 67 28 26 71 75 6f 74 3b 63 6f 6d 70 74 69 6d 65 20 76 61 6c 31 20 3d 20 26 71 | pileLog("comptime.val1.=.&q |
| 7bc20 | 75 6f 74 3b 2c 20 76 61 6c 31 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 | uot;,.val1);.....<span.class="t3 |
| 7bc40 | 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 | 2_1">^</span>.<span.class="t0_1" |
| 7bc60 | 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 31 33 3a 34 36 3a 20 3c 2f | >./docgen_tmp/test.zig:13:46:.</ |
| 7bc80 | 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 36 5f 31 22 3e 6e 6f 74 65 3a 20 3c | span><span.class="t36_1">note:.< |
| 7bca0 | 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 72 65 66 65 72 65 6e | /span><span.class="t0_1">referen |
| 7bcc0 | 63 65 64 20 68 65 72 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 70 72 69 6e 74 28 26 71 75 6f 74 3b | ced.here</span>.....print(" |
| 7bce0 | 52 75 6e 74 69 6d 65 20 69 6e 20 6d 61 69 6e 2c 20 6e 75 6d 31 20 3d 20 7b 7d 2e 5c 6e 26 71 75 | Runtime.in.main,.num1.=.{}.\n&qu |
| 7bd00 | 6f 74 3b 2c 20 2e 7b 6e 75 6d 31 7d 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ot;,..{num1});.................. |
| 7bd20 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 | ............................<spa |
| 7bd40 | 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 2f 63 6f 64 65 3e | n.class="t32_1">^</span>.</code> |
| 7bd60 | 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 77 69 6c 6c 20 6f 75 70 | </pre>........<p>.......will.oup |
| 7bd80 | 75 74 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 | ut:.......</p>.......<p>.......I |
| 7bda0 | 66 20 61 6c 6c 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c | f.all.<code.class="zig"><span.cl |
| 7bdc0 | 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 6f 6d 70 69 6c 65 4c 6f 67 3c 2f 73 | ass="tok-builtin">@compileLog</s |
| 7bde0 | 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 63 61 6c 6c 73 20 61 72 65 20 72 65 6d 6f 76 65 64 20 6f 72 | pan></code>.calls.are.removed.or |
| 7be00 | 0a 20 20 20 20 20 20 6e 6f 74 20 65 6e 63 6f 75 6e 74 65 72 65 64 20 62 79 20 61 6e 61 6c 79 73 | .......not.encountered.by.analys |
| 7be20 | 69 73 2c 20 74 68 65 0a 20 20 20 20 20 20 70 72 6f 67 72 61 6d 20 63 6f 6d 70 69 6c 65 73 20 73 | is,.the.......program.compiles.s |
| 7be40 | 75 63 63 65 73 73 66 75 6c 6c 79 20 61 6e 64 20 74 68 65 20 67 65 6e 65 72 61 74 65 64 20 65 78 | uccessfully.and.the.generated.ex |
| 7be60 | 65 63 75 74 61 62 6c 65 20 70 72 69 6e 74 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 | ecutable.prints:.......</p>..... |
| 7be80 | 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 | ..<p.class="file">test.zig</p><p |
| 7bea0 | 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | re><code.class="zig"><span.class |
| 7bec0 | 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.=.< |
| 7bee0 | 73 70 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 |
| 7bf00 | 3c 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 |
| 7bf20 | 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 |
| 7bf40 | 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f | t;..<span.class="tok-kw">const</ |
| 7bf60 | 73 70 61 6e 3e 20 6e 75 6d 31 20 3d 20 62 6c 6b 3a 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | span>.num1.=.blk:.{.....<span.cl |
| 7bf80 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 76 61 6c 31 3a 20 3c 73 | ass="tok-kw">var</span>.val1:.<s |
| 7bfa0 | 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>. |
| 7bfc0 | 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 39 39 3c 2f 73 | =.<span.class="tok-number">99</s |
| 7bfe0 | 70 61 6e 3e 3b 0a 20 20 20 20 76 61 6c 31 20 3d 20 76 61 6c 31 20 2b 20 3c 73 70 61 6e 20 63 6c | pan>;.....val1.=.val1.+.<span.cl |
| 7c000 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c | ass="tok-number">1</span>;.....< |
| 7c020 | 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> |
| 7c040 | 20 3a 62 6c 6b 20 76 61 6c 31 3b 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | .:blk.val1;.};..<span.class="tok |
| 7c060 | 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 |
| 7c080 | 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 6d 61 69 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b | k-str">"main"</span>.{ |
| 7c0a0 | 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" |
| 7c0c0 | 3e 26 71 75 6f 74 3b 52 75 6e 74 69 6d 65 20 69 6e 20 6d 61 69 6e 2c 20 6e 75 6d 31 20 3d 20 7b | >"Runtime.in.main,.num1.=.{ |
| 7c0e0 | 7d 2e 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 6e 75 6d 31 7d 29 3b 0a 7d 3c 2f | }.\n"</span>,..{num1});.}</ |
| 7c100 | 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 | code></pre><pre><code.class="she |
| 7c120 | 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 31 2f 31 20 74 65 73 74 | ll">$.zig.test.test.zig.1/1.test |
| 7c140 | 20 26 71 75 6f 74 3b 6d 61 69 6e 26 71 75 6f 74 3b 2e 2e 2e 20 52 75 6e 74 69 6d 65 20 69 6e 20 | ."main"....Runtime.in. |
| 7c160 | 6d 61 69 6e 2c 20 6e 75 6d 31 20 3d 20 31 30 30 2e 0a 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 | main,.num1.=.100..OK.All.1.tests |
| 7c180 | 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 0a 0a | .passed..</code></pre>.......... |
| 7c1a0 | 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 63 74 7a 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 | ......<h2.id="ctz"><a.href="#toc |
| 7c1c0 | 2d 63 74 7a 22 3e 40 63 74 7a 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 | -ctz">@ctz</a>.<a.class="hdr".hr |
| 7c1e0 | 65 66 3d 22 23 63 74 7a 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 | ef="#ctz">..</a></h2>........<pr |
| 7c200 | 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | e><code.class="zig"><span.class= |
| 7c220 | 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 3c 73 70 61 6e 20 | "tok-builtin">@ctz</span>(<span. |
| 7c240 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 54 | class="tok-kw">comptime</span>.T |
| 7c260 | 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 | :.<span.class="tok-type">type</s |
| 7c280 | 70 61 6e 3e 2c 20 69 6e 74 65 67 65 72 3a 20 54 29 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 | pan>,.integer:.T)</code></pre>.. |
| 7c2a0 | 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 6f 75 | .....<p>.......This.function.cou |
| 7c2c0 | 6e 74 73 20 74 68 65 20 6e 75 6d 62 65 72 20 6f 66 20 6c 65 61 73 74 2d 73 69 67 6e 69 66 69 63 | nts.the.number.of.least-signific |
| 7c2e0 | 61 6e 74 20 28 74 72 61 69 6c 69 6e 67 20 69 6e 20 61 20 62 69 67 2d 45 6e 64 69 61 6e 20 73 65 | ant.(trailing.in.a.big-Endian.se |
| 7c300 | 6e 73 65 29 20 7a 65 72 6f 65 73 20 69 6e 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | nse).zeroes.in.<code.class="zig" |
| 7c320 | 3e 69 6e 74 65 67 65 72 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 | >integer</code>........</p>..... |
| 7c340 | 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 66 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | ..<p>.......If.<code.class="zig" |
| 7c360 | 3e 69 6e 74 65 67 65 72 3c 2f 63 6f 64 65 3e 20 69 73 20 6b 6e 6f 77 6e 20 61 74 20 3c 61 20 68 | >integer</code>.is.known.at.<a.h |
| 7c380 | 72 65 66 3d 22 23 63 6f 6d 70 74 69 6d 65 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 61 3e 2c 0a 20 20 | ref="#comptime">comptime</a>,... |
| 7c3a0 | 20 20 20 20 74 68 65 20 72 65 74 75 72 6e 20 74 79 70 65 20 69 73 20 3c 63 6f 64 65 20 63 6c 61 | ....the.return.type.is.<code.cla |
| 7c3c0 | 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | ss="zig"><span.class="tok-type"> |
| 7c3e0 | 63 6f 6d 70 74 69 6d 65 5f 69 6e 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 | comptime_int</span></code>...... |
| 7c400 | 20 20 4f 74 68 65 72 77 69 73 65 2c 20 74 68 65 20 72 65 74 75 72 6e 20 74 79 70 65 20 69 73 20 | ..Otherwise,.the.return.type.is. |
| 7c420 | 61 6e 20 75 6e 73 69 67 6e 65 64 20 69 6e 74 65 67 65 72 20 77 69 74 68 20 74 68 65 20 6d 69 6e | an.unsigned.integer.with.the.min |
| 7c440 | 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 63 | imum.number.......of.bits.that.c |
| 7c460 | 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 68 | an.represent.the.bit.count.of.th |
| 7c480 | 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 20 | e.integer.type........</p>...... |
| 7c4a0 | 20 3c 70 3e 0a 20 20 20 20 20 20 49 66 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e | .<p>.......If.<code.class="zig"> |
| 7c4c0 | 69 6e 74 65 67 65 72 3c 2f 63 6f 64 65 3e 20 69 73 20 7a 65 72 6f 2c 20 3c 63 6f 64 65 20 63 6c | integer</code>.is.zero,.<code.cl |
| 7c4e0 | 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 | ass="zig"><span.class="tok-built |
| 7c500 | 69 6e 22 3e 40 63 74 7a 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 72 65 74 75 72 6e 73 0a 20 | in">@ctz</span></code>.returns.. |
| 7c520 | 20 20 20 20 20 74 68 65 20 62 69 74 20 77 69 64 74 68 20 6f 66 20 69 6e 74 65 67 65 72 20 74 79 | .....the.bit.width.of.integer.ty |
| 7c540 | 70 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 54 3c 2f 63 6f 64 65 3e 2e 0a 20 | pe.<code.class="zig">T</code>... |
| 7c560 | 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> |
| 7c580 | 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 63 6c 7a 22 3e 40 63 6c 7a 3c 2f 61 3e | <ul>.<li><a.href="#clz">@clz</a> |
| 7c5a0 | 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 70 6f 70 43 6f 75 6e 74 22 3e 40 70 | </li>.<li><a.href="#popCount">@p |
| 7c5c0 | 6f 70 43 6f 75 6e 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 0a | opCount</a></li>.</ul>.......... |
| 7c5e0 | 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 63 55 6e 64 65 66 22 3e 3c 61 20 68 72 65 66 3d 22 23 | ......<h2.id="cUndef"><a.href="# |
| 7c600 | 74 6f 63 2d 63 55 6e 64 65 66 22 3e 40 63 55 6e 64 65 66 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 | toc-cUndef">@cUndef</a>.<a.class |
| 7c620 | 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 63 55 6e 64 65 66 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 | ="hdr".href="#cUndef">..</a></h2 |
| 7c640 | 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e | >........<pre><code.class="zig"> |
| 7c660 | 3c 73 70 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 |
| 7c680 | 66 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f | f</span>(<span.class="tok-kw">co |
| 7c6a0 | 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 |
| 7c6c0 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 3c 2f 63 6f 64 65 3e 3c 2f | s="tok-type">u8</span>)</code></ |
| 7c6e0 | 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 66 75 6e 63 74 69 | pre>.......<p>.......This.functi |
| 7c700 | 6f 6e 20 63 61 6e 20 6f 6e 6c 79 20 6f 63 63 75 72 20 69 6e 73 69 64 65 20 3c 63 6f 64 65 20 63 | on.can.only.occur.inside.<code.c |
| 7c720 | 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c | lass="zig"><span.class="tok-buil |
| 7c740 | 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>..... |
| 7c760 | 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 |
| 7c780 | 65 6e 64 73 20 3c 63 6f 64 65 3e 23 75 6e 64 65 66 20 24 6e 61 6d 65 3c 2f 63 6f 64 65 3e 20 74 | ends.<code>#undef.$name</code>.t |
| 7c7a0 | 6f 20 74 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c | o.the.<code.class="zig"><span.cl |
| 7c7c0 | 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 49 6d 70 6f 72 74 3c 2f 73 70 61 6e | ass="tok-builtin">@cImport</span |
| 7c7e0 | 3e 3c 2f 63 6f 64 65 3e 0a 20 20 20 20 20 20 74 65 6d 70 6f 72 61 72 79 20 62 75 66 66 65 72 2e | ></code>.......temporary.buffer. |
| 7c800 | 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:</ |
| 7c820 | 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 49 6d 70 6f 72 74 2d 66 72 6f 6d | p><ul>.<li><a.href="#Import-from |
| 7c840 | 2d 43 2d 48 65 61 64 65 72 2d 46 69 6c 65 22 3e 49 6d 70 6f 72 74 20 66 72 6f 6d 20 43 20 48 65 | -C-Header-File">Import.from.C.He |
| 7c860 | 61 64 65 72 20 46 69 6c 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 | ader.File</a></li>.<li><a.href=" |
| 7c880 | 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> |
| 7c8a0 | 3c 61 20 68 72 65 66 3d 22 23 63 44 65 66 69 6e 65 22 3e 40 63 44 65 66 69 6e 65 3c 2f 61 3e 3c | <a.href="#cDefine">@cDefine</a>< |
| 7c8c0 | 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 63 49 6e 63 6c 75 64 65 22 3e 40 63 49 | /li>.<li><a.href="#cInclude">@cI |
| 7c8e0 | 6e 63 6c 75 64 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 | nclude</a></li>.</ul>........... |
| 7c900 | 20 20 20 20 20 3c 68 32 20 69 64 3d 22 64 69 76 45 78 61 63 74 22 3e 3c 61 20 68 72 65 66 3d 22 | .....<h2.id="divExact"><a.href=" |
| 7c920 | 23 74 6f 63 2d 64 69 76 45 78 61 63 74 22 3e 40 64 69 76 45 78 61 63 74 3c 2f 61 3e 20 3c 61 20 | #toc-divExact">@divExact</a>.<a. |
| 7c940 | 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 64 69 76 45 78 61 63 74 22 3e c2 a7 3c | class="hdr".href="#divExact">..< |
| 7c960 | 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 | /a></h2>........<pre><code.class |
| 7c980 | 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 | ="zig"><span.class="tok-builtin" |
| 7c9a0 | 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 3a 20 54 2c 20 | >@divExact</span>(numerator:.T,. |
| 7c9c0 | 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 72 65 3e 0a 20 | denominator:.T).T</code></pre>.. |
| 7c9e0 | 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 6f 6e 2e 20 43 | .....<p>.......Exact.division..C |
| 7ca00 | 61 6c 6c 65 72 20 67 75 61 72 61 6e 74 65 65 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | aller.guarantees.<code.class="zi |
| 7ca20 | 67 22 3e 64 65 6e 6f 6d 69 6e 61 74 6f 72 20 21 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | g">denominator.!=.<span.class="t |
| 7ca40 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 61 6e 64 0a 20 | ok-number">0</span></code>.and.. |
| 7ca60 | 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e | .........<code.class="zig"><span |
| 7ca80 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 64 69 76 54 72 75 6e 63 3c 2f | .class="tok-builtin">@divTrunc</ |
| 7caa0 | 73 70 61 6e 3e 28 6e 75 6d 65 72 61 74 6f 72 2c 20 64 65 6e 6f 6d 69 6e 61 74 6f 72 29 20 2a 20 | span>(numerator,.denominator).*. |
| 7cac0 | 64 65 6e 6f 6d 69 6e 61 74 6f 72 20 3d 3d 20 6e 75 6d 65 72 61 74 6f 72 3c 2f 63 6f 64 65 3e 2e | denominator.==.numerator</code>. |
| 7cae0 | 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 | .......</p>.......<ul>.......... |
| 7cb00 | 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 | .<li><code.class="zig"><span.cla |
| 7cb20 | 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 6e | ss="tok-builtin">@divExact</span |
| 7cb40 | 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 |
| 7cb60 | 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c | an>,.<span.class="tok-number">3< |
| 7cb80 | 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 |
| 7cba0 | 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 20 | er">2</span></code></li>........ |
| 7cbc0 | 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 | ...<li><code.class="zig"><span.c |
| 7cbe0 | 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 64 69 76 45 78 61 63 74 3c 2f 73 70 | lass="tok-builtin">@divExact</sp |
| 7cc00 | 61 6e 3e 28 61 2c 20 62 29 20 2a 20 62 20 3d 3d 20 61 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 | an>(a,.b).*.b.==.a</code></li>.. |
| 7cc20 | 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c 70 3e 46 6f 72 20 61 20 66 75 6e 63 74 69 | .....</ul>.......<p>For.a.functi |
| 7cc40 | 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 72 | on.that.returns.a.possible.error |
| 7cc60 | 20 63 6f 64 65 2c 20 75 73 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 | .code,.use.<code.class="zig"><sp |
| 7cc80 | 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</ |
| 7cca0 | 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 |
| 7ccc0 | 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 45 78 61 63 | t;std"</span>).math.divExac |
| 7cce0 | 74 3c 2f 63 6f 64 65 3e 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a | t</code>.</p>.......<p>See.also: |
| 7cd00 | 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 64 69 76 54 72 75 6e 63 22 | </p><ul>.<li><a.href="#divTrunc" |
| 7cd20 | 3e 40 64 69 76 54 72 75 6e 63 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d | >@divTrunc</a></li>.<li><a.href= |
| 7cd40 | 22 23 64 69 76 46 6c 6f 6f 72 22 3e 40 64 69 76 46 6c 6f 6f 72 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c | "#divFloor">@divFloor</a></li>.< |
| 7cd60 | 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 64 69 76 46 6c | /ul>...............<h2.id="divFl |
| 7cd80 | 6f 6f 72 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 64 69 76 46 6c 6f 6f 72 22 3e 40 64 69 | oor"><a.href="#toc-divFloor">@di |
| 7cda0 | 76 46 6c 6f 6f 72 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 | vFloor</a>.<a.class="hdr".href=" |
| 7cdc0 | 23 64 69 76 46 6c 6f 6f 72 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 | #divFloor">..</a></h2>........<p |
| 7cde0 | 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | re><code.class="zig"><span.class |
| 7ce00 | 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 28 | ="tok-builtin">@divFloor</span>( |
| 7ce20 | 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 54 3c | numerator:.T,.denominator:.T).T< |
| 7ce40 | 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 46 6c 6f | /code></pre>.......<p>.......Flo |
| 7ce60 | 6f 72 65 64 20 64 69 76 69 73 69 6f 6e 2e 20 52 6f 75 6e 64 73 20 74 6f 77 61 72 64 20 6e 65 67 | ored.division..Rounds.toward.neg |
| 7ce80 | 61 74 69 76 65 20 69 6e 66 69 6e 69 74 79 2e 20 46 6f 72 20 75 6e 73 69 67 6e 65 64 20 69 6e 74 | ative.infinity..For.unsigned.int |
| 7cea0 | 65 67 65 72 73 20 69 74 20 69 73 0a 20 20 20 20 20 20 74 68 65 20 73 61 6d 65 20 61 73 20 3c 63 | egers.it.is.......the.same.as.<c |
| 7cec0 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 6e 75 6d 65 72 61 74 6f 72 20 2f 20 64 65 6e 6f | ode.class="zig">numerator./.deno |
| 7cee0 | 6d 69 6e 61 74 6f 72 3c 2f 63 6f 64 65 3e 2e 20 43 61 6c 6c 65 72 20 67 75 61 72 61 6e 74 65 65 | minator</code>..Caller.guarantee |
| 7cf00 | 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 64 65 6e 6f 6d 69 6e 61 74 6f 72 20 | s.<code.class="zig">denominator. |
| 7cf20 | 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 30 3c 2f 73 | !=.<span.class="tok-number">0</s |
| 7cf40 | 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 20 20 20 3c 63 | pan></code>.and...............<c |
| 7cf60 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 21 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ode.class="zig">!(<span.class="t |
| 7cf80 | 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 29 20 | ok-builtin">@typeInfo</span>(T). |
| 7cfa0 | 3d 3d 20 2e 49 6e 74 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 64 | ==..Int.<span.class="tok-kw">and |
| 7cfc0 | 3c 2f 73 70 61 6e 3e 20 54 2e 69 73 5f 73 69 67 6e 65 64 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | </span>.T.is_signed.<span.class= |
| 7cfe0 | 22 74 6f 6b 2d 6b 77 22 3e 61 6e 64 3c 2f 73 70 61 6e 3e 20 6e 75 6d 65 72 61 74 6f 72 20 3d 3d | "tok-kw">and</span>.numerator.== |
| 7d000 | 20 73 74 64 2e 6d 61 74 68 2e 6d 69 6e 49 6e 74 28 54 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | .std.math.minInt(T).<span.class= |
| 7d020 | 22 74 6f 6b 2d 6b 77 22 3e 61 6e 64 3c 2f 73 70 61 6e 3e 20 64 65 6e 6f 6d 69 6e 61 74 6f 72 20 | "tok-kw">and</span>.denominator. |
| 7d040 | 3d 3d 20 2d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f | ==.-<span.class="tok-number">1</ |
| 7d060 | 73 70 61 6e 3e 29 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 | span>)</code>........</p>....... |
| 7d080 | 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | <ul>...........<li><code.class=" |
| 7d0a0 | 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 | zig"><span.class="tok-builtin">@ |
| 7d0c0 | 64 69 76 46 6c 6f 6f 72 3c 2f 73 70 61 6e 3e 28 2d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | divFloor</span>(-<span.class="to |
| 7d0e0 | 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= |
| 7d100 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 2d 3c 73 70 61 6e | "tok-number">3</span>).==.-<span |
| 7d120 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 3c 2f 63 6f | .class="tok-number">2</span></co |
| 7d140 | 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 | de></li>...........<li><code.cla |
| 7d160 | 73 73 3d 22 7a 69 67 22 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 | ss="zig">(<span.class="tok-built |
| 7d180 | 69 6e 22 3e 40 64 69 76 46 6c 6f 6f 72 3c 2f 73 70 61 6e 3e 28 61 2c 20 62 29 20 2a 20 62 29 20 | in">@divFloor</span>(a,.b).*.b). |
| 7d1a0 | 2b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 6d 6f 64 | +.<span.class="tok-builtin">@mod |
| 7d1c0 | 3c 2f 73 70 61 6e 3e 28 61 2c 20 62 29 20 3d 3d 20 61 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 | </span>(a,.b).==.a</code></li>.. |
| 7d1e0 | 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c 70 3e 46 6f 72 20 61 20 66 75 6e 63 74 69 | .....</ul>.......<p>For.a.functi |
| 7d200 | 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 72 | on.that.returns.a.possible.error |
| 7d220 | 20 63 6f 64 65 2c 20 75 73 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 | .code,.use.<code.class="zig"><sp |
| 7d240 | 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</ |
| 7d260 | 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 |
| 7d280 | 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 6d 61 74 68 2e 64 69 76 46 6c 6f 6f | t;std"</span>).math.divFloo |
| 7d2a0 | 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 3a | r</code>.</p>.......<p>See.also: |
| 7d2c0 | 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 64 69 76 54 72 75 6e 63 22 | </p><ul>.<li><a.href="#divTrunc" |
| 7d2e0 | 3e 40 64 69 76 54 72 75 6e 63 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d | >@divTrunc</a></li>.<li><a.href= |
| 7d300 | 22 23 64 69 76 45 78 61 63 74 22 3e 40 64 69 76 45 78 61 63 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c | "#divExact">@divExact</a></li>.< |
| 7d320 | 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 64 69 76 54 72 | /ul>...............<h2.id="divTr |
| 7d340 | 75 6e 63 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 64 69 76 54 72 75 6e 63 22 3e 40 64 69 | unc"><a.href="#toc-divTrunc">@di |
| 7d360 | 76 54 72 75 6e 63 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 | vTrunc</a>.<a.class="hdr".href=" |
| 7d380 | 23 64 69 76 54 72 75 6e 63 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 | #divTrunc">..</a></h2>........<p |
| 7d3a0 | 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | re><code.class="zig"><span.class |
| 7d3c0 | 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 64 69 76 54 72 75 6e 63 3c 2f 73 70 61 6e 3e 28 | ="tok-builtin">@divTrunc</span>( |
| 7d3e0 | 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 54 3c | numerator:.T,.denominator:.T).T< |
| 7d400 | 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 72 75 | /code></pre>.......<p>.......Tru |
| 7d420 | 6e 63 61 74 65 64 20 64 69 76 69 73 69 6f 6e 2e 20 52 6f 75 6e 64 73 20 74 6f 77 61 72 64 20 7a | ncated.division..Rounds.toward.z |
| 7d440 | 65 72 6f 2e 20 46 6f 72 20 75 6e 73 69 67 6e 65 64 20 69 6e 74 65 67 65 72 73 20 69 74 20 69 73 | ero..For.unsigned.integers.it.is |
| 7d460 | 0a 20 20 20 20 20 20 74 68 65 20 73 61 6d 65 20 61 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | .......the.same.as.<code.class=" |
| 7d480 | 7a 69 67 22 3e 6e 75 6d 65 72 61 74 6f 72 20 2f 20 64 65 6e 6f 6d 69 6e 61 74 6f 72 3c 2f 63 6f | zig">numerator./.denominator</co |
| 7d4a0 | 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 20 63 6c 61 | de>..Caller.guarantees.<code.cla |
| 7d4c0 | 73 73 3d 22 7a 69 67 22 3e 64 65 6e 6f 6d 69 6e 61 74 6f 72 20 21 3d 20 3c 73 70 61 6e 20 63 6c | ss="zig">denominator.!=.<span.cl |
| 7d4e0 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e | ass="tok-number">0</span></code> |
| 7d500 | 20 61 6e 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | .and...............<code.class=" |
| 7d520 | 7a 69 67 22 3e 21 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 | zig">!(<span.class="tok-builtin" |
| 7d540 | 3e 40 74 79 70 65 49 6e 66 6f 3c 2f 73 70 61 6e 3e 28 54 29 20 3d 3d 20 2e 49 6e 74 20 3c 73 70 | >@typeInfo</span>(T).==..Int.<sp |
| 7d560 | 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 54 2e 69 | an.class="tok-kw">and</span>.T.i |
| 7d580 | 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 22 3e 61 6e | s_signed.<span.class="tok-kw">an |
| 7d5a0 | 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 74 68 2e 6d | d</span>.numerator.==.std.math.m |
| 7d5c0 | 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 22 3e 61 6e | inInt(T).<span.class="tok-kw">an |
| 7d5e0 | 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 61 6e 20 63 | d</span>.denominator.==.-<span.c |
| 7d600 | 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 2f 63 6f 64 | lass="tok-number">1</span>)</cod |
| 7d620 | 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 | e>........</p>.......<ul>....... |
| 7d640 | 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 | ....<li><code.class="zig"><span. |
| 7d660 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 64 69 76 54 72 75 6e 63 3c 2f 73 | class="tok-builtin">@divTrunc</s |
| 7d680 | 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 72 22 3e 35 | pan>(-<span.class="tok-number">5 |
| 7d6a0 | 3c 2f 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 |
| 7d6c0 | 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 22 74 6f 6b | ">3</span>).==.-<span.class="tok |
| 7d6e0 | 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 | -number">1</span></code></li>... |
| 7d700 | 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 28 3c | ........<li><code.class="zig">(< |
| 7d720 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 64 69 76 54 72 75 | span.class="tok-builtin">@divTru |
| 7d740 | 6e 63 3c 2f 73 70 61 6e 3e 28 61 2c 20 62 29 20 2a 20 62 29 20 2b 20 3c 73 70 61 6e 20 63 6c 61 | nc</span>(a,.b).*.b).+.<span.cla |
| 7d760 | 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 72 65 6d 3c 2f 73 70 61 6e 3e 28 61 2c 20 | ss="tok-builtin">@rem</span>(a,. |
| 7d780 | 62 29 20 3d 3d 20 61 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a | b).==.a</code></li>.......</ul>. |
| 7d7a0 | 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 |
| 7d7c0 | 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. |
| 7d7e0 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | <code.class="zig"><span.class="t |
| 7d800 | 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 |
| 7d820 | 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" |
| 7d840 | 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 2f | </span>).math.divTrunc</code>.</ |
| 7d860 | 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 |
| 7d880 | 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 3c | i><a.href="#divFloor">@divFloor< |
| 7d8a0 | 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" |
| 7d8c0 | 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>....... |
| 7d8e0 | 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 65 6d 62 65 64 46 69 6c 65 22 3e 3c 61 20 68 72 | ........<h2.id="embedFile"><a.hr |
| 7d900 | 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 3c 2f | ef="#toc-embedFile">@embedFile</ |
| 7d920 | 61 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 46 69 | a>.<a.class="hdr".href="#embedFi |
| 7d940 | 6c 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 | le">..</a></h2>........<pre><cod |
| 7d960 | 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 | e.class="zig"><span.class="tok-b |
| 7d980 | 75 69 6c 74 69 6e 22 3e 40 65 6d 62 65 64 46 69 6c 65 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 | uiltin">@embedFile</span>(<span. |
| 7d9a0 | 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 70 | class="tok-kw">comptime</span>.p |
| 7d9c0 | 61 74 68 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 | ath:.[]<span.class="tok-kw">cons |
| 7d9e0 | 74 3c 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"> |
| 7da00 | 75 38 3c 2f 73 70 61 6e 3e 29 20 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | u8</span>).*<span.class="tok-kw" |
| 7da20 | 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 5b 58 3a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | >const</span>.[X:<span.class="to |
| 7da40 | 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=" |
| 7da60 | 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 72 65 3e | tok-type">u8</span></code></pre> |
| 7da80 | 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 72 | .......<p>.......This.function.r |
| 7daa0 | 65 74 75 72 6e 73 20 61 20 63 6f 6d 70 69 6c 65 20 74 69 6d 65 20 63 6f 6e 73 74 61 6e 74 20 70 | eturns.a.compile.time.constant.p |
| 7dac0 | 6f 69 6e 74 65 72 20 74 6f 20 6e 75 6c 6c 2d 74 65 72 6d 69 6e 61 74 65 64 2c 0a 20 20 20 20 20 | ointer.to.null-terminated,...... |
| 7dae0 | 20 66 69 78 65 64 2d 73 69 7a 65 20 61 72 72 61 79 20 77 69 74 68 20 6c 65 6e 67 74 68 20 65 71 | .fixed-size.array.with.length.eq |
| 7db00 | 75 61 6c 20 74 6f 20 74 68 65 20 62 79 74 65 20 63 6f 75 6e 74 20 6f 66 20 74 68 65 20 66 69 6c | ual.to.the.byte.count.of.the.fil |
| 7db20 | 65 20 67 69 76 65 6e 20 62 79 0a 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | e.given.by.......<code.class="zi |
| 7db40 | 67 22 3e 70 61 74 68 3c 2f 63 6f 64 65 3e 2e 20 54 68 65 20 63 6f 6e 74 65 6e 74 73 20 6f 66 20 | g">path</code>..The.contents.of. |
| 7db60 | 74 68 65 20 61 72 72 61 79 20 61 72 65 20 74 68 65 20 63 6f 6e 74 65 6e 74 73 20 6f 66 20 74 68 | the.array.are.the.contents.of.th |
| 7db80 | 65 20 66 69 6c 65 2e 0a 20 20 20 20 20 20 54 68 69 73 20 69 73 20 65 71 75 69 76 61 6c 65 6e 74 | e.file........This.is.equivalent |
| 7dba0 | 20 74 6f 20 61 20 3c 61 20 68 72 65 66 3d 22 23 53 74 72 69 6e 67 2d 4c 69 74 65 72 61 6c 73 2d | .to.a.<a.href="#String-Literals- |
| 7dbc0 | 61 6e 64 2d 43 68 61 72 61 63 74 65 72 2d 4c 69 74 65 72 61 6c 73 22 3e 73 74 72 69 6e 67 20 6c | and-Character-Literals">string.l |
| 7dbe0 | 69 74 65 72 61 6c 3c 2f 61 3e 0a 20 20 20 20 20 20 77 69 74 68 20 74 68 65 20 66 69 6c 65 20 63 | iteral</a>.......with.the.file.c |
| 7dc00 | 6f 6e 74 65 6e 74 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 | ontents........</p>.......<p>... |
| 7dc20 | 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 70 61 74 68 3c 2f 63 6f 64 65 | ....<code.class="zig">path</code |
| 7dc40 | 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 20 74 6f 20 74 68 65 | >.is.absolute.or.relative.to.the |
| 7dc60 | 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 3c 63 6f 64 65 20 63 | .current.file,.just.like.<code.c |
| 7dc80 | 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c | lass="zig"><span.class="tok-buil |
| 7dca0 | 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 2e 0a 20 20 20 20 | tin">@import</span></code>...... |
| 7dcc0 | 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 |
| 7dce0 | 3e 0a 3c 6c 69 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 | >.<li><a.href="#import">@import< |
| 7dd00 | 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 |
| 7dd20 | 32 20 69 64 3d 22 65 6e 75 6d 54 6f 49 6e 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 65 | 2.id="enumToInt"><a.href="#toc-e |
| 7dd40 | 6e 75 6d 54 6f 49 6e 74 22 3e 40 65 6e 75 6d 54 6f 49 6e 74 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 | numToInt">@enumToInt</a>.<a.clas |
| 7dd60 | 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 65 6e 75 6d 54 6f 49 6e 74 22 3e c2 a7 3c 2f 61 3e | s="hdr".href="#enumToInt">..</a> |
| 7dd80 | 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a | </h2>........<pre><code.class="z |
| 7dda0 | 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 65 | ig"><span.class="tok-builtin">@e |
| 7ddc0 | 6e 75 6d 54 6f 49 6e 74 3c 2f 73 70 61 6e 3e 28 65 6e 75 6d 5f 6f 72 5f 74 61 67 67 65 64 5f 75 | numToInt</span>(enum_or_tagged_u |
| 7dde0 | 6e 69 6f 6e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 79 74 79 | nion:.<span.class="tok-kw">anyty |
| 7de00 | 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"> |
| 7de20 | 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>..... |
| 7de40 | 20 20 3c 70 3e 0a 20 20 20 20 20 20 43 6f 6e 76 65 72 74 73 20 61 6e 20 65 6e 75 6d 65 72 61 74 | ..<p>.......Converts.an.enumerat |
| 7de60 | 69 6f 6e 20 76 61 6c 75 65 20 69 6e 74 6f 20 69 74 73 20 69 6e 74 65 67 65 72 20 74 61 67 20 74 | ion.value.into.its.integer.tag.t |
| 7de80 | 79 70 65 2e 20 57 68 65 6e 20 61 20 74 61 67 67 65 64 20 75 6e 69 6f 6e 20 69 73 20 70 61 73 73 | ype..When.a.tagged.union.is.pass |
| 7dea0 | 65 64 2c 0a 20 20 20 20 20 20 74 68 65 20 74 61 67 20 76 61 6c 75 65 20 69 73 20 75 73 65 64 20 | ed,.......the.tag.value.is.used. |
| 7dec0 | 61 73 20 74 68 65 20 65 6e 75 6d 65 72 61 74 69 6f 6e 20 76 61 6c 75 65 2e 0a 20 20 20 20 20 20 | as.the.enumeration.value........ |
| 7dee0 | 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 65 20 69 73 | </p>.......<p>.......If.there.is |
| 7df00 | 20 6f 6e 6c 79 20 6f 6e 65 20 70 6f 73 73 69 62 6c 65 20 65 6e 75 6d 20 76 61 6c 75 65 2c 20 74 | .only.one.possible.enum.value,.t |
| 7df20 | 68 65 20 72 65 73 75 74 20 69 73 20 61 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e | he.resut.is.a.<code.class="zig"> |
| 7df40 | 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_ |
| 7df60 | 69 6e 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 0a 20 20 20 20 20 20 6b 6e 6f 77 6e 20 61 74 | int</span></code>.......known.at |
| 7df80 | 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 |
| 7dfa0 | 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a | >........</p>.......<p>See.also: |
| 7dfc0 | 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 69 6e 74 54 6f 45 6e 75 6d | </p><ul>.<li><a.href="#intToEnum |
| 7dfe0 | 22 3e 40 69 6e 74 54 6f 45 6e 75 6d 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 | ">@intToEnum</a></li>.</ul>..... |
| 7e000 | 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 65 72 72 6f 72 4e 61 6d 65 22 3e 3c 61 | ...........<h2.id="errorName"><a |
| 7e020 | 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 6d | .href="#toc-errorName">@errorNam |
| 7e040 | 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 6f | e</a>.<a.class="hdr".href="#erro |
| 7e060 | 72 4e 61 6d 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c | rName">..</a></h2>........<pre>< |
| 7e080 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | code.class="zig"><span.class="to |
| 7e0a0 | 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 65 72 72 6f 72 4e 61 6d 65 3c 2f 73 70 61 6e 3e 28 65 72 72 | k-builtin">@errorName</span>(err |
| 7e0c0 | 3a 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 |
| 7e0e0 | 72 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 77 22 | r</span>).[]<span.class="tok-kw" |
| 7e100 | 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 |
| 7e120 | 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 | ype">u8</span></code></pre>..... |
| 7e140 | 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 72 65 74 75 72 6e | ..<p>.......This.function.return |
| 7e160 | 73 20 74 68 65 20 73 74 72 69 6e 67 20 72 65 70 72 65 73 65 6e 74 61 74 69 6f 6e 20 6f 66 20 61 | s.the.string.representation.of.a |
| 7e180 | 6e 20 65 72 72 6f 72 2e 20 54 68 65 20 73 74 72 69 6e 67 20 72 65 70 72 65 73 65 6e 74 61 74 69 | n.error..The.string.representati |
| 7e1a0 | 6f 6e 0a 20 20 20 20 20 20 6f 66 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 | on.......of.<code.class="zig"><s |
| 7e1c0 | 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>. |
| 7e1e0 | 4f 75 74 4f 66 4d 65 6d 3c 2f 63 6f 64 65 3e 20 69 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | OutOfMem</code>.is.<code.class=" |
| 7e200 | 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 | zig"><span.class="tok-str">" |
| 7e220 | 3b 4f 75 74 4f 66 4d 65 6d 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 | ;OutOfMem"</span></code>... |
| 7e240 | 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 66 20 74 68 65 | .....</p>.......<p>.......If.the |
| 7e260 | 72 65 20 61 72 65 20 6e 6f 20 63 61 6c 6c 73 20 74 6f 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | re.are.no.calls.to.<code.class=" |
| 7e280 | 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 | zig"><span.class="tok-builtin">@ |
| 7e2a0 | 65 72 72 6f 72 4e 61 6d 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 69 6e 20 61 6e 20 65 6e | errorName</span></code>.in.an.en |
| 7e2c0 | 74 69 72 65 20 61 70 70 6c 69 63 61 74 69 6f 6e 2c 0a 20 20 20 20 20 20 6f 72 20 61 6c 6c 20 63 | tire.application,.......or.all.c |
| 7e2e0 | 61 6c 6c 73 20 68 61 76 65 20 61 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 6b 6e 6f 77 6e 20 76 | alls.have.a.compile-time.known.v |
| 7e300 | 61 6c 75 65 20 66 6f 72 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 65 72 72 3c 2f | alue.for.<code.class="zig">err</ |
| 7e320 | 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 72 20 6e 61 6d 65 20 | code>,.then.no.......error.name. |
| 7e340 | 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 20 20 20 20 20 20 3c | table.will.be.generated........< |
| 7e360 | 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 65 72 72 6f 72 52 | /p>...............<h2.id="errorR |
| 7e380 | 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 2d 65 72 72 6f 72 52 | eturnTrace"><a.href="#toc-errorR |
| 7e3a0 | 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 72 61 63 65 3c 2f 61 | eturnTrace">@errorReturnTrace</a |
| 7e3c0 | 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 52 65 74 | >.<a.class="hdr".href="#errorRet |
| 7e3e0 | 75 72 6e 54 72 61 63 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 | urnTrace">..</a></h2>........<pr |
| 7e400 | 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | e><code.class="zig"><span.class= |
| 7e420 | 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 65 72 72 6f 72 52 65 74 75 72 6e 54 72 61 63 65 3c | "tok-builtin">@errorReturnTrace< |
| 7e440 | 2f 73 70 61 6e 3e 28 29 20 3f 2a 62 75 69 6c 74 69 6e 2e 53 74 61 63 6b 54 72 61 63 65 3c 2f 63 | /span>().?*builtin.StackTrace</c |
| 7e460 | 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 66 20 74 68 | ode></pre>.......<p>.......If.th |
| 7e480 | 65 20 62 69 6e 61 72 79 20 69 73 20 62 75 69 6c 74 20 77 69 74 68 20 65 72 72 6f 72 20 72 65 74 | e.binary.is.built.with.error.ret |
| 7e4a0 | 75 72 6e 20 74 72 61 63 69 6e 67 2c 20 61 6e 64 20 74 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 69 | urn.tracing,.and.this.function.i |
| 7e4c0 | 73 20 69 6e 76 6f 6b 65 64 20 69 6e 20 61 0a 20 20 20 20 20 20 66 75 6e 63 74 69 6f 6e 20 74 68 | s.invoked.in.a.......function.th |
| 7e4e0 | 61 74 20 63 61 6c 6c 73 20 61 20 66 75 6e 63 74 69 6f 6e 20 77 69 74 68 20 61 6e 20 65 72 72 6f | at.calls.a.function.with.an.erro |
| 7e500 | 72 20 6f 72 20 65 72 72 6f 72 20 75 6e 69 6f 6e 20 72 65 74 75 72 6e 20 74 79 70 65 2c 20 72 65 | r.or.error.union.return.type,.re |
| 7e520 | 74 75 72 6e 73 20 61 0a 20 20 20 20 20 20 73 74 61 63 6b 20 74 72 61 63 65 20 6f 62 6a 65 63 74 | turns.a.......stack.trace.object |
| 7e540 | 2e 20 4f 74 68 65 72 77 69 73 65 20 72 65 74 75 72 6e 73 20 3c 61 20 68 72 65 66 3d 22 23 6e 75 | ..Otherwise.returns.<a.href="#nu |
| 7e560 | 6c 6c 22 3e 6e 75 6c 6c 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a | ll">null</a>........</p>........ |
| 7e580 | 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 65 72 72 6f 72 54 6f 49 6e 74 22 3e 3c 61 20 68 72 | .......<h2.id="errorToInt"><a.hr |
| 7e5a0 | 65 66 3d 22 23 74 6f 63 2d 65 72 72 6f 72 54 6f 49 6e 74 22 3e 40 65 72 72 6f 72 54 6f 49 6e 74 | ef="#toc-errorToInt">@errorToInt |
| 7e5c0 | 3c 2f 61 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 | </a>.<a.class="hdr".href="#error |
| 7e5e0 | 54 6f 49 6e 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c | ToInt">..</a></h2>........<pre>< |
| 7e600 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | code.class="zig"><span.class="to |
| 7e620 | 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 65 72 72 6f 72 54 6f 49 6e 74 3c 2f 73 70 61 6e 3e 28 65 72 | k-builtin">@errorToInt</span>(er |
| 7e640 | 72 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 79 74 79 70 65 3c | r:.<span.class="tok-kw">anytype< |
| 7e660 | 2f 73 70 61 6e 3e 29 20 73 74 64 2e 6d 65 74 61 2e 49 6e 74 54 79 70 65 28 3c 73 70 61 6e 20 63 | /span>).std.meta.IntType(<span.c |
| 7e680 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 2c 20 3c 73 | lass="tok-null">false</span>,.<s |
| 7e6a0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 69 7a 65 4f 66 3c | pan.class="tok-builtin">@sizeOf< |
| 7e6c0 | 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 61 6e | /span>(<span.class="tok-type">an |
| 7e6e0 | 79 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 29 20 2a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | yerror</span>).*.<span.class="to |
| 7e700 | 6b 2d 6e 75 6d 62 65 72 22 3e 38 3c 2f 73 70 61 6e 3e 29 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e | k-number">8</span>)</code></pre> |
| 7e720 | 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 53 75 70 70 6f 72 74 73 20 74 68 65 20 66 6f | .......<p>.......Supports.the.fo |
| 7e740 | 6c 6c 6f 77 69 6e 67 20 74 79 70 65 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 | llowing.types:.......</p>....... |
| 7e760 | 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 54 68 65 | <ul>...........<li><a.href="#The |
| 7e780 | 2d 47 6c 6f 62 61 6c 2d 45 72 72 6f 72 2d 53 65 74 22 3e 54 68 65 20 47 6c 6f 62 61 6c 20 45 72 | -Global-Error-Set">The.Global.Er |
| 7e7a0 | 72 6f 72 20 53 65 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c | ror.Set</a></li>...........<li>< |
| 7e7c0 | 61 20 68 72 65 66 3d 22 23 45 72 72 6f 72 2d 53 65 74 2d 54 79 70 65 22 3e 45 72 72 6f 72 20 53 | a.href="#Error-Set-Type">Error.S |
| 7e7e0 | 65 74 20 54 79 70 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c | et.Type</a></li>...........<li>< |
| 7e800 | 61 20 68 72 65 66 3d 22 23 45 72 72 6f 72 2d 55 6e 69 6f 6e 2d 54 79 70 65 22 3e 45 72 72 6f 72 | a.href="#Error-Union-Type">Error |
| 7e820 | 20 55 6e 69 6f 6e 20 54 79 70 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e | .Union.Type</a></li>.......</ul> |
| 7e840 | 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 43 6f 6e 76 65 72 74 73 20 61 6e 20 65 72 72 | .......<p>.......Converts.an.err |
| 7e860 | 6f 72 20 74 6f 20 74 68 65 20 69 6e 74 65 67 65 72 20 72 65 70 72 65 73 65 6e 74 61 74 69 6f 6e | or.to.the.integer.representation |
| 7e880 | 20 6f 66 20 61 6e 20 65 72 72 6f 72 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c | .of.an.error........</p>.......< |
| 7e8a0 | 70 3e 0a 20 20 20 20 20 20 49 74 20 69 73 20 67 65 6e 65 72 61 6c 6c 79 20 72 65 63 6f 6d 6d 65 | p>.......It.is.generally.recomme |
| 7e8c0 | 6e 64 65 64 20 74 6f 20 61 76 6f 69 64 20 74 68 69 73 0a 20 20 20 20 20 20 63 61 73 74 2c 20 61 | nded.to.avoid.this.......cast,.a |
| 7e8e0 | 73 20 74 68 65 20 69 6e 74 65 67 65 72 20 72 65 70 72 65 73 65 6e 74 61 74 69 6f 6e 20 6f 66 20 | s.the.integer.representation.of. |
| 7e900 | 61 6e 20 65 72 72 6f 72 20 69 73 20 6e 6f 74 20 73 74 61 62 6c 65 20 61 63 72 6f 73 73 20 73 6f | an.error.is.not.stable.across.so |
| 7e920 | 75 72 63 65 20 63 6f 64 65 20 63 68 61 6e 67 65 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 | urce.code.changes........</p>... |
| 7e940 | 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. |
| 7e960 | 68 72 65 66 3d 22 23 69 6e 74 54 6f 45 72 72 6f 72 22 3e 40 69 6e 74 54 6f 45 72 72 6f 72 3c 2f | href="#intToError">@intToError</ |
| 7e980 | 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 32 | a></li>.</ul>................<h2 |
| 7e9a0 | 20 69 64 3d 22 65 72 72 53 65 74 43 61 73 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 65 | .id="errSetCast"><a.href="#toc-e |
| 7e9c0 | 72 72 53 65 74 43 61 73 74 22 3e 40 65 72 72 53 65 74 43 61 73 74 3c 2f 61 3e 20 3c 61 20 63 6c | rrSetCast">@errSetCast</a>.<a.cl |
| 7e9e0 | 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 65 72 72 53 65 74 43 61 73 74 22 3e c2 a7 3c | ass="hdr".href="#errSetCast">..< |
| 7ea00 | 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 | /a></h2>........<pre><code.class |
| 7ea20 | 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 | ="zig"><span.class="tok-builtin" |
| 7ea40 | 3e 40 65 72 72 53 65 74 43 61 73 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d | >@errSetCast</span>(<span.class= |
| 7ea60 | 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 44 65 73 74 | "tok-kw">comptime</span>.T:.Dest |
| 7ea80 | 54 79 70 65 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 | Type,.value:.<span.class="tok-kw |
| 7eaa0 | 22 3e 61 6e 79 74 79 70 65 3c 2f 73 70 61 6e 3e 29 20 44 65 73 74 54 79 70 65 3c 2f 63 6f 64 65 | ">anytype</span>).DestType</code |
| 7eac0 | 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 |
| 7eae0 | 20 61 6e 20 65 72 72 6f 72 20 76 61 6c 75 65 20 66 72 6f 6d 20 6f 6e 65 20 65 72 72 6f 72 20 73 | .an.error.value.from.one.error.s |
| 7eb00 | 65 74 20 74 6f 20 61 6e 6f 74 68 65 72 20 65 72 72 6f 72 20 73 65 74 2e 20 41 74 74 65 6d 70 74 | et.to.another.error.set..Attempt |
| 7eb20 | 69 6e 67 20 74 6f 20 63 6f 6e 76 65 72 74 20 61 6e 20 65 72 72 6f 72 0a 20 20 20 20 20 20 77 68 | ing.to.convert.an.error.......wh |
| 7eb40 | 69 63 68 20 69 73 20 6e 6f 74 20 69 6e 20 74 68 65 20 64 65 73 74 69 6e 61 74 69 6f 6e 20 65 72 | ich.is.not.in.the.destination.er |
| 7eb60 | 72 6f 72 20 73 65 74 20 72 65 73 75 6c 74 73 20 69 6e 20 73 61 66 65 74 79 2d 70 72 6f 74 65 63 | ror.set.results.in.safety-protec |
| 7eb80 | 74 65 64 20 3c 61 20 68 72 65 66 3d 22 23 55 6e 64 65 66 69 6e 65 64 2d 42 65 68 61 76 69 6f 72 | ted.<a.href="#Undefined-Behavior |
| 7eba0 | 22 3e 55 6e 64 65 66 69 6e 65 64 20 42 65 68 61 76 69 6f 72 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 | ">Undefined.Behavior</a>........ |
| 7ebc0 | 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 65 78 70 6f 72 | </p>...............<h2.id="expor |
| 7ebe0 | 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 65 78 70 6f 72 74 22 3e 40 65 78 70 6f 72 74 | t"><a.href="#toc-export">@export |
| 7ec00 | 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 65 78 70 6f 72 | </a>.<a.class="hdr".href="#expor |
| 7ec20 | 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 | t">..</a></h2>........<pre><code |
| 7ec40 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 | .class="zig"><span.class="tok-bu |
| 7ec60 | 69 6c 74 69 6e 22 3e 40 65 78 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 74 61 72 67 65 74 3a 20 3c 73 | iltin">@export</span>(target:.<s |
| 7ec80 | 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 |
| 7eca0 | 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 |
| 7ecc0 | 3c 2f 73 70 61 6e 3e 20 6f 70 74 69 6f 6e 73 3a 20 73 74 64 2e 62 75 69 6c 74 69 6e 2e 45 78 70 | </span>.options:.std.builtin.Exp |
| 7ece0 | 6f 72 74 4f 70 74 69 6f 6e 73 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | ortOptions).<span.class="tok-typ |
| 7ed00 | 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>..... |
| 7ed20 | 20 20 3c 70 3e 0a 20 20 20 20 20 20 43 72 65 61 74 65 73 20 61 20 73 79 6d 62 6f 6c 20 69 6e 20 | ..<p>.......Creates.a.symbol.in. |
| 7ed40 | 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 3c 2f | the.output.object.file........</ |
| 7ed60 | 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 |
| 7ed80 | 20 63 61 6e 20 62 65 20 63 61 6c 6c 65 64 20 66 72 6f 6d 20 61 20 3c 61 20 68 72 65 66 3d 22 23 | .can.be.called.from.a.<a.href="# |
| 7eda0 | 63 6f 6d 70 74 69 6d 65 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 61 3e 20 62 6c 6f 63 6b 20 74 6f 20 | comptime">comptime</a>.block.to. |
| 7edc0 | 63 6f 6e 64 69 74 69 6f 6e 61 6c 6c 79 20 65 78 70 6f 72 74 20 73 79 6d 62 6f 6c 73 2e 0a 20 20 | conditionally.export.symbols.... |
| 7ede0 | 20 20 20 20 57 68 65 6e 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 74 61 72 67 65 | ....When.<code.class="zig">targe |
| 7ee00 | 74 3c 2f 63 6f 64 65 3e 20 69 73 20 61 20 66 75 6e 63 74 69 6f 6e 20 77 69 74 68 20 74 68 65 20 | t</code>.is.a.function.with.the. |
| 7ee20 | 43 20 63 61 6c 6c 69 6e 67 20 63 6f 6e 76 65 6e 74 69 6f 6e 20 61 6e 64 0a 20 20 20 20 20 20 3c | C.calling.convention.and.......< |
| 7ee40 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 6f 70 74 69 6f 6e 73 2e 6c 69 6e 6b 61 67 65 | code.class="zig">options.linkage |
| 7ee60 | 3c 2f 63 6f 64 65 3e 20 69 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 53 74 72 | </code>.is.<code.class="zig">Str |
| 7ee80 | 6f 6e 67 3c 2f 63 6f 64 65 3e 2c 20 74 68 69 73 20 69 73 20 65 71 75 69 76 61 6c 65 6e 74 20 74 | ong</code>,.this.is.equivalent.t |
| 7eea0 | 6f 0a 20 20 20 20 20 20 74 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 | o.......the.<code.class="zig"><s |
| 7eec0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 78 70 6f 72 74 3c 2f 73 70 61 6e 3e | pan.class="tok-kw">export</span> |
| 7eee0 | 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 75 6e 63 74 69 | </code>.keyword.used.on.a.functi |
| 7ef00 | 6f 6e 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 | on:.......</p>.......<p.class="f |
| 7ef20 | 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 | ile">test.zig</p><pre><code.clas |
| 7ef40 | 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d | s="zig"><span.class="tok-kw">com |
| 7ef60 | 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 22 | ptime</span>.{.....<span.class=" |
| 7ef80 | 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 28 69 6e 74 65 | tok-builtin">@export</span>(inte |
| 7efa0 | 72 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 | rnalName,..{..name.=.<span.class |
| 7efc0 | 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 6e | ="tok-str">"foo"</span |
| 7efe0 | 3e 2c 20 2e 6c 69 6e 6b 61 67 65 20 3d 20 2e 53 74 72 6f 6e 67 20 7d 29 3b 0a 7d 0a 0a 3c 73 70 | >,..linkage.=..Strong.});.}..<sp |
| 7f000 | 61 6e 20 63 6c 61 73 73 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 |
| 7f020 | 6e 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 | n.class="tok-fn">internalName</s |
| 7f040 | 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 61 6c 6c | pan>().<span.class="tok-kw">call |
| 7f060 | 63 6f 6e 76 3c 2f 73 70 61 6e 3e 28 2e 43 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | conv</span>(.C).<span.class="tok |
| 7f080 | 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 | -type">void</span>.{}</code></pr |
| 7f0a0 | 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 | e><pre><code.class="shell">$.zig |
| 7f0c0 | 20 62 75 69 6c 64 2d 6f 62 6a 20 74 65 73 74 2e 7a 69 67 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e | .build-obj.test.zig</code></pre> |
| 7f0e0 | 0a 0a 20 20 20 20 20 20 3c 70 3e 54 68 69 73 20 69 73 20 65 71 75 69 76 61 6c 65 6e 74 20 74 6f | ........<p>This.is.equivalent.to |
| 7f100 | 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 | :</p>.......<p.class="file">test |
| 7f120 | 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c | .zig</p><pre><code.class="zig">< |
| 7f140 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 78 70 6f 72 74 3c 2f 73 70 61 6e | span.class="tok-kw">export</span |
| 7f160 | 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> |
| 7f180 | 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> |
| 7f1a0 | 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f | ().<span.class="tok-type">void</ |
| 7f1c0 | 73 70 61 6e 3e 20 7b 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 | span>.{}</code></pre><pre><code. |
| 7f1e0 | 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 62 75 69 6c 64 2d 6f 62 6a 20 74 65 | class="shell">$.zig.build-obj.te |
| 7f200 | 73 74 2e 7a 69 67 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 4e 6f | st.zig</code></pre>........<p>No |
| 7f220 | 74 65 20 74 68 61 74 20 65 76 65 6e 20 77 68 65 6e 20 75 73 69 6e 67 20 3c 63 6f 64 65 20 63 6c | te.that.even.when.using.<code.cl |
| 7f240 | 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 | ass="zig"><span.class="tok-kw">e |
| 7f260 | 78 70 6f 72 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 3c 63 6f 64 65 20 63 6c 61 73 73 | xport</span></code>,.<code.class |
| 7f280 | 3d 22 7a 69 67 22 3e 40 26 71 75 6f 74 3b 66 6f 6f 26 71 75 6f 74 3b 3c 2f 63 6f 64 65 3e 20 73 | ="zig">@"foo"</code>.s |
| 7f2a0 | 79 6e 74 61 78 20 63 61 6e 0a 20 20 20 20 20 20 62 65 20 75 73 65 64 20 74 6f 20 63 68 6f 6f 73 | yntax.can.......be.used.to.choos |
| 7f2c0 | 65 20 61 6e 79 20 73 74 72 69 6e 67 20 66 6f 72 20 74 68 65 20 73 79 6d 62 6f 6c 20 6e 61 6d 65 | e.any.string.for.the.symbol.name |
| 7f2e0 | 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 | :</p>.......<p.class="file">test |
| 7f300 | 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c | .zig</p><pre><code.class="zig">< |
| 7f320 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 78 70 6f 72 74 3c 2f 73 70 61 6e | span.class="tok-kw">export</span |
| 7f340 | 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> |
| 7f360 | 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 41 20 66 | .<span.class="tok-fn">@"A.f |
| 7f380 | 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 65 20 | unction.name.that.is.a.complete. |
| 7f3a0 | 73 65 6e 74 65 6e 63 65 2e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 | sentence."</span>().<span.c |
| 7f3c0 | 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>.{}</ |
| 7f3e0 | 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 | code></pre><pre><code.class="she |
| 7f400 | 6c 6c 22 3e 24 20 7a 69 67 20 62 75 69 6c 64 2d 6f 62 6a 20 74 65 73 74 2e 7a 69 67 3c 2f 63 6f | ll">$.zig.build-obj.test.zig</co |
| 7f420 | 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 57 68 65 6e 20 | de></pre>........<p>.......When. |
| 7f440 | 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 62 6a 65 63 74 2c | looking.at.the.resulting.object, |
| 7f460 | 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 20 75 73 65 64 20 | .you.can.see.the.symbol.is.used. |
| 7f480 | 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 20 3c 70 72 65 3e | verbatim:.......</p>.......<pre> |
| 7f4a0 | 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 20 66 75 6e 63 74 | <code>00000000000001f0.T.A.funct |
| 7f4c0 | 69 6f 6e 20 6e 61 6d 65 20 74 68 61 74 20 69 73 20 61 20 63 6f 6d 70 6c 65 74 65 20 73 65 6e 74 | ion.name.that.is.a.complete.sent |
| 7f4e0 | 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 70 3e 53 65 65 20 | ence.</code></pre>.......<p>See. |
| 7f500 | 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 45 78 70 6f | also:</p><ul>.<li><a.href="#Expo |
| 7f520 | 72 74 69 6e 67 2d 61 2d 43 2d 4c 69 62 72 61 72 79 22 3e 45 78 70 6f 72 74 69 6e 67 20 61 20 43 | rting-a-C-Library">Exporting.a.C |
| 7f540 | 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 20 20 20 20 20 0a | .Library</a></li>.</ul>......... |
| 7f560 | 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 66 65 6e 63 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 | .......<h2.id="fence"><a.href="# |
| 7f580 | 74 6f 63 2d 66 65 6e 63 65 22 3e 40 66 65 6e 63 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 | toc-fence">@fence</a>.<a.class=" |
| 7f5a0 | 68 64 72 22 20 68 72 65 66 3d 22 23 66 65 6e 63 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a | hdr".href="#fence">..</a></h2>.. |
| 7f5c0 | 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 | ......<pre><code.class="zig"><sp |
| 7f5e0 | 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 65 6e 63 65 3c 2f 73 | an.class="tok-builtin">@fence</s |
| 7f600 | 70 61 6e 3e 28 6f 72 64 65 72 3a 20 41 74 6f 6d 69 63 4f 72 64 65 72 29 3c 2f 63 6f 64 65 3e 3c | pan>(order:.AtomicOrder)</code>< |
| 7f620 | 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 20 3c 63 6f 64 65 20 | /pre>.......<p>.......The.<code. |
| 7f640 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 66 65 6e 63 65 3c 2f 63 6f 64 65 3e 20 66 75 6e 63 74 69 6f | class="zig">fence</code>.functio |
| 7f660 | 6e 20 69 73 20 75 73 65 64 20 74 6f 20 69 6e 74 72 6f 64 75 63 65 20 68 61 70 70 65 6e 73 2d 62 | n.is.used.to.introduce.happens-b |
| 7f680 | 65 66 6f 72 65 20 65 64 67 65 73 20 62 65 74 77 65 65 6e 20 6f 70 65 72 61 74 69 6f 6e 73 2e 0a | efore.edges.between.operations.. |
| 7f6a0 | 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 65 | ......</p>.......<p>.......<code |
| 7f6c0 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 41 74 6f 6d 69 63 4f 72 64 65 72 3c 2f 63 6f 64 65 3e 20 | .class="zig">AtomicOrder</code>. |
| 7f6e0 | 63 61 6e 20 62 65 20 66 6f 75 6e 64 20 77 69 74 68 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a | can.be.found.with.<code.class="z |
| 7f700 | 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 | ig"><span.class="tok-builtin">@i |
| 7f720 | 6d 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 |
| 7f740 | 72 22 3e 26 71 75 6f 74 3b 62 75 69 6c 74 69 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 41 | r">"builtin"</span>).A |
| 7f760 | 74 6f 6d 69 63 4f 72 64 65 72 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 | tomicOrder</code>........</p>... |
| 7f780 | 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. |
| 7f7a0 | 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 |
| 7f7c0 | 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 20 20 20 20 | e.Variables</a></li>.</ul>...... |
| 7f7e0 | 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 66 69 65 6c 64 22 3e 3c 61 20 68 72 65 66 | ..........<h2.id="field"><a.href |
| 7f800 | 3d 22 23 74 6f 63 2d 66 69 65 6c 64 22 3e 40 66 69 65 6c 64 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 | ="#toc-field">@field</a>.<a.clas |
| 7f820 | 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 66 69 65 6c 64 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 | s="hdr".href="#field">..</a></h2 |
| 7f840 | 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e | >........<pre><code.class="zig"> |
| 7f860 | 3c 73 70 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 | <span.class="tok-builtin">@field |
| 7f880 | 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 6b 2d 6b 77 | </span>(lhs:.<span.class="tok-kw |
| 7f8a0 | 22 3e 61 6e 79 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ">anytype</span>,.<span.class="t |
| 7f8c0 | 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 66 69 65 6c 64 5f 6e 61 6d | ok-kw">comptime</span>.field_nam |
| 7f8e0 | 65 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c | e:.[]<span.class="tok-kw">const< |
| 7f900 | 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 |
| 7f920 | 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 3e 0a 20 20 | </span>).(field)</code></pre>... |
| 7f940 | 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 20 62 79 20 | ....<p>Performs.field.access.by. |
| 7f960 | 61 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 73 74 72 69 6e 67 2e 0a 20 20 20 20 20 20 3c 2f 70 | a.compile-time.string........</p |
| 7f980 | 3e 0a 20 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 | >........<p.class="file">test.zi |
| 7f9a0 | 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 | g</p><pre><code.class="zig"><spa |
| 7f9c0 | 6e 20 63 6c 61 73 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 |
| 7f9e0 | 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 |
| 7fa00 | 6d 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 |
| 7fa20 | 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 |
| 7fa40 | 61 6e 20 63 6c 61 73 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 |
| 7fa60 | 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 74 72 75 | oint.=.<span.class="tok-kw">stru |
| 7fa80 | 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 73 3d 22 | ct</span>.{.....x:.<span.class=" |
| 7faa0 | 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 3c 73 70 | tok-type">u32</span>,.....y:.<sp |
| 7fac0 | 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 0a 7d | an.class="tok-type">u32</span>.} |
| 7fae0 | 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 |
| 7fb00 | 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">" |
| 7fb20 | 66 69 65 6c 64 20 61 63 63 65 73 73 20 62 79 20 73 74 72 69 6e 67 26 71 75 6f 74 3b 3c 2f 73 70 | field.access.by.string"</sp |
| 7fb40 | 61 6e 3e 20 7b 0a 20 20 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 |
| 7fb60 | 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 |
| 7fb80 | 2e 65 78 70 65 63 74 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | .expect;.....<span.class="tok-kw |
| 7fba0 | 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 70 20 3d 20 50 6f 69 6e 74 20 7b 2e 78 20 3d 20 3c 73 70 | ">var</span>.p.=.Point.{.x.=.<sp |
| 7fbc0 | 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>,. |
| 7fbe0 | 2e 79 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c | .y.=.<span.class="tok-number">0< |
| 7fc00 | 2f 73 70 61 6e 3e 7d 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 | /span>};......<span.class="tok-b |
| 7fc20 | 75 69 6c 74 69 6e 22 3e 40 66 69 65 6c 64 3c 2f 73 70 61 6e 3e 28 70 2c 20 3c 73 70 61 6e 20 63 | uiltin">@field</span>(p,.<span.c |
| 7fc40 | 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 78 26 71 75 6f 74 3b 3c 2f 73 70 | lass="tok-str">"x"</sp |
| 7fc60 | 61 6e 3e 29 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e | an>).=.<span.class="tok-number"> |
| 7fc80 | 34 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 | 4</span>;.....<span.class="tok-b |
| 7fca0 | 75 69 6c 74 69 6e 22 3e 40 66 69 65 6c 64 3c 2f 73 70 61 6e 3e 28 70 2c 20 3c 73 70 61 6e 20 63 | uiltin">@field</span>(p,.<span.c |
| 7fcc0 | 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 79 26 71 75 6f 74 3b 3c 2f 73 70 | lass="tok-str">"y"</sp |
| 7fce0 | 61 6e 3e 29 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 | an>).=.<span.class="tok-builtin" |
| 7fd00 | 3e 40 66 69 65 6c 64 3c 2f 73 70 61 6e 3e 28 70 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | >@field</span>(p,.<span.class="t |
| 7fd20 | 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 78 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 20 2b 20 | ok-str">"x"</span>).+. |
| 7fd40 | 3c 73 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 |
| 7fd60 | 3e 3b 0a 0a 20 20 20 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 | >;......expect(<span.class="tok- |
| 7fd80 | 62 75 69 6c 74 69 6e 22 3e 40 66 69 65 6c 64 3c 2f 73 70 61 6e 3e 28 70 2c 20 3c 73 70 61 6e 20 | builtin">@field</span>(p,.<span. |
| 7fda0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 78 26 71 75 6f 74 3b 3c 2f 73 | class="tok-str">"x"</s |
| 7fdc0 | 70 61 6e 3e 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | pan>).==.<span.class="tok-number |
| 7fde0 | 22 3e 34 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 65 78 70 65 63 74 28 3c 73 70 61 6e 20 63 6c | ">4</span>);.....expect(<span.cl |
| 7fe00 | 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 66 69 65 6c 64 3c 2f 73 70 61 6e 3e 28 | ass="tok-builtin">@field</span>( |
| 7fe20 | 70 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 79 | p,.<span.class="tok-str">"y |
| 7fe40 | 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | "</span>).==.<span.class="t |
| 7fe60 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f | ok-number">5</span>);.}</code></ |
| 7fe80 | 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a | pre><pre><code.class="shell">$.z |
| 7fea0 | 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 31 2f 31 20 74 65 73 74 20 26 71 75 6f 74 3b | ig.test.test.zig.1/1.test." |
| 7fec0 | 66 69 65 6c 64 20 61 63 63 65 73 73 20 62 79 20 73 74 72 69 6e 67 26 71 75 6f 74 3b 2e 2e 2e 20 | field.access.by.string".... |
| 7fee0 | 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 63 6f 64 65 3e 3c 2f | OK.All.1.tests.passed..</code></ |
| 7ff00 | 70 72 65 3e 0a 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 66 69 65 | pre>.................<h2.id="fie |
| 7ff20 | 6c 64 50 61 72 65 6e 74 50 74 72 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 66 69 65 6c 64 | ldParentPtr"><a.href="#toc-field |
| 7ff40 | 50 61 72 65 6e 74 50 74 72 22 3e 40 66 69 65 6c 64 50 61 72 65 6e 74 50 74 72 3c 2f 61 3e 20 3c | ParentPtr">@fieldParentPtr</a>.< |
| 7ff60 | 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 66 69 65 6c 64 50 61 72 65 6e 74 | a.class="hdr".href="#fieldParent |
| 7ff80 | 50 74 72 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f | Ptr">..</a></h2>........<pre><co |
| 7ffa0 | 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | de.class="zig"><span.class="tok- |
| 7ffc0 | 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 3e 28 | builtin">@fieldParentPtr</span>( |
| 7ffe0 | 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 |
| 80000 | 70 61 6e 3e 20 50 61 72 65 6e 74 54 79 70 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | pan>.ParentType:.<span.class="to |
| 80020 | 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 |
| 80040 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 66 69 65 6c 64 5f | ="tok-kw">comptime</span>.field_ |
| 80060 | 6e 61 6d 65 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e | name:.[]<span.class="tok-kw">con |
| 80080 | 73 74 3c 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" |
| 800a0 | 3e 75 38 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 66 69 65 6c 64 5f 70 74 72 3a 20 2a 54 29 20 2a | >u8</span>,.....field_ptr:.*T).* |
| 800c0 | 50 61 72 65 6e 74 54 79 70 65 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 | ParentType</code></pre>.......<p |
| 800e0 | 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 66 69 65 | >.......Given.a.pointer.to.a.fie |
| 80100 | 6c 64 2c 20 72 65 74 75 72 6e 73 20 74 68 65 20 62 61 73 65 20 70 6f 69 6e 74 65 72 20 6f 66 20 | ld,.returns.the.base.pointer.of. |
| 80120 | 61 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 0a 0a 20 20 20 | a.struct........</p>............ |
| 80140 | 20 20 20 3c 68 32 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 | ...<h2.id="floatCast"><a.href="# |
| 80160 | 74 6f 63 2d 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 | toc-floatCast">@floatCast</a>.<a |
| 80180 | 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 66 6c 6f 61 74 43 61 73 74 22 3e c2 | .class="hdr".href="#floatCast">. |
| 801a0 | a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 | .</a></h2>........<pre><code.cla |
| 801c0 | 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 | ss="zig"><span.class="tok-builti |
| 801e0 | 6e 22 3e 40 66 6c 6f 61 74 43 61 73 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 | n">@floatCast</span>(<span.class |
| 80200 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 44 65 73 74 54 79 | ="tok-kw">comptime</span>.DestTy |
| 80220 | 70 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c | pe:.<span.class="tok-type">type< |
| 80240 | 2f 73 70 61 6e 3e 2c 20 76 61 6c 75 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | /span>,.value:.<span.class="tok- |
| 80260 | 6b 77 22 3e 61 6e 79 74 79 70 65 3c 2f 73 70 61 6e 3e 29 20 44 65 73 74 54 79 70 65 3c 2f 63 6f | kw">anytype</span>).DestType</co |
| 80280 | 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 43 6f 6e 76 65 72 | de></pre>.......<p>.......Conver |
| 802a0 | 74 20 66 72 6f 6d 20 6f 6e 65 20 66 6c 6f 61 74 20 74 79 70 65 20 74 6f 20 61 6e 6f 74 68 65 72 | t.from.one.float.type.to.another |
| 802c0 | 2e 20 54 68 69 73 20 63 61 73 74 20 69 73 20 73 61 66 65 2c 20 62 75 74 20 6d 61 79 20 63 61 75 | ..This.cast.is.safe,.but.may.cau |
| 802e0 | 73 65 20 74 68 65 0a 20 20 20 20 20 20 6e 75 6d 65 72 69 63 20 76 61 6c 75 65 20 74 6f 20 6c 6f | se.the.......numeric.value.to.lo |
| 80300 | 73 65 20 70 72 65 63 69 73 69 6f 6e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a | se.precision........</p>........ |
| 80320 | 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 66 6c 6f 61 74 54 6f 49 6e 74 22 3e 3c 61 20 68 72 | .......<h2.id="floatToInt"><a.hr |
| 80340 | 65 66 3d 22 23 74 6f 63 2d 66 6c 6f 61 74 54 6f 49 6e 74 22 3e 40 66 6c 6f 61 74 54 6f 49 6e 74 | ef="#toc-floatToInt">@floatToInt |
| 80360 | 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 66 6c 6f 61 74 | </a>.<a.class="hdr".href="#float |
| 80380 | 54 6f 49 6e 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c | ToInt">..</a></h2>........<pre>< |
| 803a0 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | code.class="zig"><span.class="to |
| 803c0 | 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 66 6c 6f 61 74 54 6f 49 6e 74 3c 2f 73 70 61 6e 3e 28 3c 73 | k-builtin">@floatToInt</span>(<s |
| 803e0 | 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 |
| 80400 | 6e 3e 20 44 65 73 74 54 79 70 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | n>.DestType:.<span.class="tok-ty |
| 80420 | 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 66 6c 6f 61 74 3a 20 3c 73 70 61 6e 20 63 6c | pe">type</span>,.float:.<span.cl |
| 80440 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 79 74 79 70 65 3c 2f 73 70 61 6e 3e 29 20 44 65 73 | ass="tok-kw">anytype</span>).Des |
| 80460 | 74 54 79 70 65 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 | tType</code></pre>.......<p>.... |
| 80480 | 20 20 20 43 6f 6e 76 65 72 74 73 20 74 68 65 20 69 6e 74 65 67 65 72 20 70 61 72 74 20 6f 66 20 | ...Converts.the.integer.part.of. |
| 804a0 | 61 20 66 6c 6f 61 74 69 6e 67 20 70 6f 69 6e 74 20 6e 75 6d 62 65 72 20 74 6f 20 74 68 65 20 64 | a.floating.point.number.to.the.d |
| 804c0 | 65 73 74 69 6e 61 74 69 6f 6e 20 74 79 70 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 | estination.type........</p>..... |
| 804e0 | 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 66 20 74 68 65 20 69 6e 74 65 67 65 72 20 70 61 72 74 20 | ..<p>.......If.the.integer.part. |
| 80500 | 6f 66 20 74 68 65 20 66 6c 6f 61 74 69 6e 67 20 70 6f 69 6e 74 20 6e 75 6d 62 65 72 20 63 61 6e | of.the.floating.point.number.can |
| 80520 | 6e 6f 74 20 66 69 74 20 69 6e 20 74 68 65 20 64 65 73 74 69 6e 61 74 69 6f 6e 20 74 79 70 65 2c | not.fit.in.the.destination.type, |
| 80540 | 0a 20 20 20 20 20 20 69 74 20 69 6e 76 6f 6b 65 73 20 73 61 66 65 74 79 2d 63 68 65 63 6b 65 64 | .......it.invokes.safety-checked |
| 80560 | 20 3c 61 20 68 72 65 66 3d 22 23 55 6e 64 65 66 69 6e 65 64 2d 42 65 68 61 76 69 6f 72 22 3e 55 | .<a.href="#Undefined-Behavior">U |
| 80580 | 6e 64 65 66 69 6e 65 64 20 42 65 68 61 76 69 6f 72 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 | ndefined.Behavior</a>........</p |
| 805a0 | 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 |
| 805c0 | 3e 3c 61 20 68 72 65 66 3d 22 23 69 6e 74 54 6f 46 6c 6f 61 74 22 3e 40 69 6e 74 54 6f 46 6c 6f | ><a.href="#intToFloat">@intToFlo |
| 805e0 | 61 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 20 20 | at</a></li>.</ul>............... |
| 80600 | 20 3c 68 32 20 69 64 3d 22 66 72 61 6d 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 66 72 | .<h2.id="frame"><a.href="#toc-fr |
| 80620 | 61 6d 65 22 3e 40 66 72 61 6d 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 | ame">@frame</a>.<a.class="hdr".h |
| 80640 | 72 65 66 3d 22 23 66 72 61 6d 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 | ref="#frame">..</a></h2>........ |
| 80660 | 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 | <pre><code.class="zig"><span.cla |
| 80680 | 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 66 72 61 6d 65 3c 2f 73 70 61 6e 3e 28 29 | ss="tok-builtin">@frame</span>() |
| 806a0 | 20 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 46 72 61 | .*<span.class="tok-builtin">@Fra |
| 806c0 | 6d 65 3c 2f 73 70 61 6e 3e 28 66 75 6e 63 29 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 | me</span>(func)</code></pre>.... |
| 806e0 | 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 |
| 80700 | 6e 73 20 61 20 70 6f 69 6e 74 65 72 20 74 6f 20 74 68 65 20 66 72 61 6d 65 20 66 6f 72 20 61 20 | ns.a.pointer.to.the.frame.for.a. |
| 80720 | 67 69 76 65 6e 20 66 75 6e 63 74 69 6f 6e 2e 20 54 68 69 73 20 74 79 70 65 0a 20 20 20 20 20 20 | given.function..This.type....... |
| 80740 | 63 61 6e 20 62 65 20 3c 61 20 68 72 65 66 3d 22 23 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 22 3e | can.be.<a.href="#Type-Coercion"> |
| 80760 | 63 6f 65 72 63 65 64 3c 2f 61 3e 20 74 6f 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | coerced</a>.to.<code.class="zig" |
| 80780 | 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 66 72 61 6d 65 3c 2f | ><span.class="tok-kw">anyframe</ |
| 807a0 | 73 70 61 6e 3e 2d 26 67 74 3b 54 3c 2f 63 6f 64 65 3e 20 61 6e 64 0a 20 20 20 20 20 20 74 6f 20 | span>->T</code>.and.......to. |
| 807c0 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | <code.class="zig"><span.class="t |
| 807e0 | 6f 6b 2d 6b 77 22 3e 61 6e 79 66 72 61 6d 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 77 | ok-kw">anyframe</span></code>,.w |
| 80800 | 68 65 72 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 54 3c 2f 63 6f 64 65 3e 20 | here.<code.class="zig">T</code>. |
| 80820 | 69 73 20 74 68 65 20 72 65 74 75 72 6e 20 74 79 70 65 0a 20 20 20 20 20 20 6f 66 20 74 68 65 20 | is.the.return.type.......of.the. |
| 80840 | 66 75 6e 63 74 69 6f 6e 20 69 6e 20 73 63 6f 70 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 | function.in.scope........</p>... |
| 80860 | 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 64 6f 65 73 | ....<p>.......This.function.does |
| 80880 | 20 6e 6f 74 20 6d 61 72 6b 20 61 20 73 75 73 70 65 6e 73 69 6f 6e 20 70 6f 69 6e 74 2c 20 62 75 | .not.mark.a.suspension.point,.bu |
| 808a0 | 74 20 69 74 20 64 6f 65 73 20 63 61 75 73 65 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 69 6e 20 | t.it.does.cause.the.function.in. |
| 808c0 | 73 63 6f 70 65 0a 20 20 20 20 20 20 74 6f 20 62 65 63 6f 6d 65 20 61 6e 20 3c 61 20 68 72 65 66 | scope.......to.become.an.<a.href |
| 808e0 | 3d 22 23 41 73 79 6e 63 2d 46 75 6e 63 74 69 6f 6e 73 22 3e 61 73 79 6e 63 20 66 75 6e 63 74 69 | ="#Async-Functions">async.functi |
| 80900 | 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 0a 0a 20 20 20 20 20 | on</a>........</p>.............. |
| 80920 | 20 3c 68 32 20 69 64 3d 22 46 72 61 6d 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 46 72 | .<h2.id="Frame"><a.href="#toc-Fr |
| 80940 | 61 6d 65 22 3e 40 46 72 61 6d 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 | ame">@Frame</a>.<a.class="hdr".h |
| 80960 | 72 65 66 3d 22 23 46 72 61 6d 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 | ref="#Frame">..</a></h2>........ |
| 80980 | 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 | <pre><code.class="zig"><span.cla |
| 809a0 | 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 46 72 61 6d 65 3c 2f 73 70 61 6e 3e 28 66 | ss="tok-builtin">@Frame</span>(f |
| 809c0 | 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 61 6e 79 74 79 70 | unc:.<span.class="tok-kw">anytyp |
| 809e0 | 65 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 | e</span>).<span.class="tok-type" |
| 80a00 | 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 | >type</span></code></pre>....... |
| 80a20 | 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 72 65 74 75 72 6e 73 20 | <p>.......This.function.returns. |
| 80a40 | 74 68 65 20 66 72 61 6d 65 20 74 79 70 65 20 6f 66 20 61 20 66 75 6e 63 74 69 6f 6e 2e 20 54 68 | the.frame.type.of.a.function..Th |
| 80a60 | 69 73 20 77 6f 72 6b 73 20 66 6f 72 20 3c 61 20 68 72 65 66 3d 22 23 41 73 79 6e 63 2d 46 75 6e | is.works.for.<a.href="#Async-Fun |
| 80a80 | 63 74 69 6f 6e 73 22 3e 41 73 79 6e 63 20 46 75 6e 63 74 69 6f 6e 73 3c 2f 61 3e 0a 20 20 20 20 | ctions">Async.Functions</a>..... |
| 80aa0 | 20 20 61 73 20 77 65 6c 6c 20 61 73 20 61 6e 79 20 66 75 6e 63 74 69 6f 6e 20 77 69 74 68 6f 75 | ..as.well.as.any.function.withou |
| 80ac0 | 74 20 61 20 73 70 65 63 69 66 69 63 20 63 61 6c 6c 69 6e 67 20 63 6f 6e 76 65 6e 74 69 6f 6e 2e | t.a.specific.calling.convention. |
| 80ae0 | 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 | .......</p>.......<p>.......This |
| 80b00 | 20 74 79 70 65 20 69 73 20 73 75 69 74 61 62 6c 65 20 74 6f 20 62 65 20 75 73 65 64 20 61 73 20 | .type.is.suitable.to.be.used.as. |
| 80b20 | 74 68 65 20 72 65 74 75 72 6e 20 74 79 70 65 20 6f 66 20 3c 61 20 68 72 65 66 3d 22 23 41 73 79 | the.return.type.of.<a.href="#Asy |
| 80b40 | 6e 63 2d 61 6e 64 2d 41 77 61 69 74 22 3e 61 73 79 6e 63 3c 2f 61 3e 20 77 68 69 63 68 0a 20 20 | nc-and-Await">async</a>.which... |
| 80b60 | 20 20 20 20 61 6c 6c 6f 77 73 20 6f 6e 65 20 74 6f 2c 20 66 6f 72 20 65 78 61 6d 70 6c 65 2c 20 | ....allows.one.to,.for.example,. |
| 80b80 | 68 65 61 70 2d 61 6c 6c 6f 63 61 74 65 20 61 6e 20 61 73 79 6e 63 20 66 75 6e 63 74 69 6f 6e 20 | heap-allocate.an.async.function. |
| 80ba0 | 66 72 61 6d 65 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 | frame:.......</p>.......<p.class |
| 80bc0 | 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 | ="file">test.zig</p><pre><code.c |
| 80be0 | 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | lass="zig"><span.class="tok-kw"> |
| 80c00 | 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=" |
| 80c20 | 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 |
| 80c40 | 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" |
| 80c60 | 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | ;</span>);..<span.class="tok-kw" |
| 80c80 | 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 |
| 80ca0 | 72 22 3e 26 71 75 6f 74 3b 68 65 61 70 20 61 6c 6c 6f 63 61 74 65 64 20 66 72 61 6d 65 26 71 75 | r">"heap.allocated.frame&qu |
| 80cc0 | 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 |
| 80ce0 | 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 66 72 61 6d 65 20 3d 20 3c 73 70 61 6e | k-kw">const</span>.frame.=.<span |
| 80d00 | 20 63 6c 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 68 | .class="tok-kw">try</span>.std.h |
| 80d20 | 65 61 70 2e 70 61 67 65 5f 61 6c 6c 6f 63 61 74 6f 72 2e 63 72 65 61 74 65 28 3c 73 70 61 6e 20 | eap.page_allocator.create(<span. |
| 80d40 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 46 72 61 6d 65 3c 2f 73 70 61 6e | class="tok-builtin">@Frame</span |
| 80d60 | 3e 28 66 75 6e 63 29 29 3b 0a 20 20 20 20 66 72 61 6d 65 2e 2a 20 3d 20 3c 73 70 61 6e 20 63 6c | >(func));.....frame.*.=.<span.cl |
| 80d80 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 73 79 6e 63 3c 2f 73 70 61 6e 3e 20 66 75 6e 63 28 29 | ass="tok-kw">async</span>.func() |
| 80da0 | 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 |
| 80dc0 | 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 66 75 6e 63 3c 2f 73 | an>.<span.class="tok-fn">func</s |
| 80de0 | 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 |
| 80e00 | 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 |
| 80e20 | 2d 6b 77 22 3e 73 75 73 70 65 6e 64 3c 2f 73 70 61 6e 3e 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 | -kw">suspend</span>;.}</code></p |
| 80e40 | 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 | re><pre><code.class="shell">$.zi |
| 80e60 | 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 31 2f 31 20 74 65 73 74 20 26 71 75 6f 74 3b 68 | g.test.test.zig.1/1.test."h |
| 80e80 | 65 61 70 20 61 6c 6c 6f 63 61 74 65 64 20 66 72 61 6d 65 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a | eap.allocated.frame"....OK. |
| 80ea0 | 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 | All.1.tests.passed..</code></pre |
| 80ec0 | 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 66 72 61 6d 65 41 64 | >................<h2.id="frameAd |
| 80ee0 | 64 72 65 73 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 66 72 61 6d 65 41 64 64 72 65 73 | dress"><a.href="#toc-frameAddres |
| 80f00 | 73 22 3e 40 66 72 61 6d 65 41 64 64 72 65 73 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 | s">@frameAddress</a>.<a.class="h |
| 80f20 | 64 72 22 20 68 72 65 66 3d 22 23 66 72 61 6d 65 41 64 64 72 65 73 73 22 3e c2 a7 3c 2f 61 3e 3c | dr".href="#frameAddress">..</a>< |
| 80f40 | 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | /h2>........<pre><code.class="zi |
| 80f60 | 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 66 72 | g"><span.class="tok-builtin">@fr |
| 80f80 | 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 63 6c 61 73 73 3d | ameAddress</span>().<span.class= |
| 80fa0 | 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f | "tok-type">usize</span></code></ |
| 80fc0 | 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 66 75 6e 63 74 69 | pre>.......<p>.......This.functi |
| 80fe0 | 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 72 20 6f 66 20 74 | on.returns.the.base.pointer.of.t |
| 81000 | 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 20 20 20 20 3c 2f | he.current.stack.frame........</ |
| 81020 | 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 6c 69 63 61 74 69 | p>.......<p>.......The.implicati |
| 81040 | 6f 6e 73 20 6f 66 20 74 68 69 73 20 61 72 65 20 74 61 72 67 65 74 20 73 70 65 63 69 66 69 63 20 | ons.of.this.are.target.specific. |
| 81060 | 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 61 6c 6c 0a 20 20 | and.not.consistent.across.all... |
| 81080 | 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 64 64 72 65 73 73 | ....platforms..The.frame.address |
| 810a0 | 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 65 6c 65 61 73 65 | .may.not.be.available.in.release |
| 810c0 | 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 69 76 65 20 6f 70 | .mode.due.to.......aggressive.op |
| 810e0 | 74 69 6d 69 7a 61 74 69 6f 6e 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 | timizations........</p>.......<p |
| 81100 | 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 |
| 81120 | 6c 69 64 20 77 69 74 68 69 6e 20 66 75 6e 63 74 69 6f 6e 20 73 63 6f 70 65 2e 0a 20 20 20 20 20 | lid.within.function.scope....... |
| 81140 | 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 66 72 61 6d | .</p>...............<h2.id="fram |
| 81160 | 65 53 69 7a 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 66 72 61 6d 65 53 69 7a 65 22 3e | eSize"><a.href="#toc-frameSize"> |
| 81180 | 40 66 72 61 6d 65 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 | @frameSize</a>.<a.class="hdr".hr |
| 811a0 | 65 66 3d 22 23 66 72 61 6d 65 53 69 7a 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 | ef="#frameSize">..</a></h2>..... |
| 811c0 | 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 | ...<pre><code.class="zig"><span. |
| 811e0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 66 72 61 6d 65 53 69 7a 65 3c 2f | class="tok-builtin">@frameSize</ |
| 81200 | 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 75 | span>().<span.class="tok-type">u |
| 81220 | 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 3c | size</span></code></pre>.......< |
| 81240 | 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 69 73 20 74 68 65 20 73 61 6d 65 20 61 73 20 3c 63 6f | p>.......This.is.the.same.as.<co |
| 81260 | 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | de.class="zig"><span.class="tok- |
| 81280 | 62 75 69 6c 74 69 6e 22 3e 40 73 69 7a 65 4f 66 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c | builtin">@sizeOf</span>(<span.cl |
| 812a0 | 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 46 72 61 6d 65 3c 2f 73 70 61 6e 3e 28 | ass="tok-builtin">@Frame</span>( |
| 812c0 | 66 75 6e 63 29 29 3c 2f 63 6f 64 65 3e 2c 20 77 68 65 72 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 | func))</code>,.where.<code.class |
| 812e0 | 3d 22 7a 69 67 22 3e 66 75 6e 63 3c 2f 63 6f 64 65 3e 0a 20 20 20 20 20 20 6d 61 79 20 62 65 20 | ="zig">func</code>.......may.be. |
| 81300 | 72 75 6e 74 69 6d 65 2d 6b 6e 6f 77 6e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 | runtime-known........</p>....... |
| 81320 | 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 74 79 70 69 63 | <p>.......This.function.is.typic |
| 81340 | 61 6c 6c 79 20 75 73 65 64 20 69 6e 20 63 6f 6e 6a 75 6e 63 74 69 6f 6e 20 77 69 74 68 20 3c 61 | ally.used.in.conjunction.with.<a |
| 81360 | 20 68 72 65 66 3d 22 23 61 73 79 6e 63 43 61 6c 6c 22 3e 40 61 73 79 6e 63 43 61 6c 6c 3c 2f 61 | .href="#asyncCall">@asyncCall</a |
| 81380 | 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 | >........</p>...............<h2. |
| 813a0 | 69 64 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 | id="hasDecl"><a.href="#toc-hasDe |
| 813c0 | 63 6c 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 | cl">@hasDecl</a>.<a.class="hdr". |
| 813e0 | 68 72 65 66 3d 22 23 68 61 73 44 65 63 6c 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 | href="#hasDecl">..</a></h2>..... |
| 81400 | 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 | ...<pre><code.class="zig"><span. |
| 81420 | 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 70 | class="tok-builtin">@hasDecl</sp |
| 81440 | 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 |
| 81460 | 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 3d | e</span>.Container:.<span.class= |
| 81480 | 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c | "tok-type">type</span>,.<span.cl |
| 814a0 | 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 6d | ass="tok-kw">comptime</span>.nam |
| 814c0 | 65 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c | e:.[]<span.class="tok-kw">const< |
| 814e0 | 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 |
| 81500 | 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"> |
| 81520 | 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 3c | bool</span></code></pre>.......< |
| 81540 | 70 3e 0a 20 20 20 20 20 20 52 65 74 75 72 6e 73 20 77 68 65 74 68 65 72 20 6f 72 20 6e 6f 74 20 | p>.......Returns.whether.or.not. |
| 81560 | 61 20 3c 61 20 68 72 65 66 3d 22 23 73 74 72 75 63 74 22 3e 73 74 72 75 63 74 3c 2f 61 3e 2c 20 | a.<a.href="#struct">struct</a>,. |
| 81580 | 3c 61 20 68 72 65 66 3d 22 23 65 6e 75 6d 22 3e 65 6e 75 6d 3c 2f 61 3e 2c 20 6f 72 20 3c 61 20 | <a.href="#enum">enum</a>,.or.<a. |
| 815a0 | 68 72 65 66 3d 22 23 75 6e 69 6f 6e 22 3e 75 6e 69 6f 6e 3c 2f 61 3e 20 68 61 73 20 61 20 64 65 | href="#union">union</a>.has.a.de |
| 815c0 | 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 20 63 | claration.......matching.<code.c |
| 815e0 | 6c 61 73 73 3d 22 7a 69 67 22 3e 6e 61 6d 65 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f | lass="zig">name</code>........</ |
| 81600 | 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 | p>.......<p.class="file">test.zi |
| 81620 | 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 | g</p><pre><code.class="zig"><spa |
| 81640 | 6e 20 63 6c 61 73 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 |
| 81660 | 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 |
| 81680 | 6d 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 |
| 816a0 | 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 3c 73 70 61 | r">"std"</span>);.<spa |
| 816c0 | 6e 20 63 6c 61 73 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 |
| 816e0 | 70 65 63 74 20 3d 20 73 74 64 2e 74 65 73 74 69 6e 67 2e 65 78 70 65 63 74 3b 0a 0a 3c 73 70 61 | pect.=.std.testing.expect;..<spa |
| 81700 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 46 6f | n.class="tok-kw">const</span>.Fo |
| 81720 | 6f 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 74 72 75 63 74 3c | o.=.<span.class="tok-kw">struct< |
| 81740 | 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 6e 6f 70 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | /span>.{.....nope:.<span.class=" |
| 81760 | 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 2c 0a 0a 20 20 20 20 3c 73 70 61 6e | tok-type">i32</span>,......<span |
| 81780 | 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 |
| 817a0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 62 6c 61 68 20 | .class="tok-kw">var</span>.blah. |
| 817c0 | 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 78 78 | =.<span.class="tok-str">"xx |
| 817e0 | 78 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | x"</span>;.....<span.class= |
| 81800 | 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 68 69 20 3d 20 3c 73 70 61 6e | "tok-kw">const</span>.hi.=.<span |
| 81820 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 7d 3b | .class="tok-number">1</span>;.}; |
| 81840 | 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 |
| 81860 | 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 40 | n>.<span.class="tok-str">"@ |
| 81880 | 68 61 73 44 65 63 6c 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 65 78 70 65 63 | hasDecl"</span>.{.....expec |
| 818a0 | 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 68 61 73 | t(<span.class="tok-builtin">@has |
| 818c0 | 44 65 63 6c 3c 2f 73 70 61 6e 3e 28 46 6f 6f 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | Decl</span>(Foo,.<span.class="to |
| 818e0 | 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 62 6c 61 68 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 29 | k-str">"blah"</span>)) |
| 81900 | 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" |
| 81920 | 3e 2f 2f 20 45 76 65 6e 20 74 68 6f 75 67 68 20 60 68 69 60 20 69 73 20 70 72 69 76 61 74 65 2c | >//.Even.though.`hi`.is.private, |
| 81940 | 20 40 68 61 73 44 65 63 6c 20 72 65 74 75 72 6e 73 20 74 72 75 65 20 62 65 63 61 75 73 65 20 74 | .@hasDecl.returns.true.because.t |
| 81960 | 68 69 73 20 74 65 73 74 20 69 73 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | his.test.is</span>.....<span.cla |
| 81980 | 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 69 6e 20 74 68 65 20 73 61 6d 65 20 | ss="tok-comment">//.in.the.same. |
| 819a0 | 66 69 6c 65 20 73 63 6f 70 65 20 61 73 20 46 6f 6f 2e 20 49 74 20 77 6f 75 6c 64 20 72 65 74 75 | file.scope.as.Foo..It.would.retu |
| 819c0 | 72 6e 20 66 61 6c 73 65 20 69 66 20 46 6f 6f 20 77 61 73 20 64 65 63 6c 61 72 65 64 3c 2f 73 70 | rn.false.if.Foo.was.declared</sp |
| 819e0 | 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 |
| 81a00 | 22 3e 2f 2f 20 69 6e 20 61 20 64 69 66 66 65 72 65 6e 74 20 66 69 6c 65 2e 3c 2f 73 70 61 6e 3e | ">//.in.a.different.file.</span> |
| 81a20 | 0a 20 20 20 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 | .....expect(<span.class="tok-bui |
| 81a40 | 6c 74 69 6e 22 3e 40 68 61 73 44 65 63 6c 3c 2f 73 70 61 6e 3e 28 46 6f 6f 2c 20 3c 73 70 61 6e | ltin">@hasDecl</span>(Foo,.<span |
| 81a60 | 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"< |
| 81a80 | 2f 73 70 61 6e 3e 29 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | /span>));......<span.class="tok- |
| 81aa0 | 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 40 68 61 73 44 65 63 6c 20 69 73 20 66 6f 72 20 64 65 63 6c | comment">//.@hasDecl.is.for.decl |
| 81ac0 | 61 72 61 74 69 6f 6e 73 3b 20 6e 6f 74 20 66 69 65 6c 64 73 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 | arations;.not.fields.</span>.... |
| 81ae0 | 20 65 78 70 65 63 74 28 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 | .expect(!<span.class="tok-builti |
| 81b00 | 6e 22 3e 40 68 61 73 44 65 63 6c 3c 2f 73 70 61 6e 3e 28 46 6f 6f 2c 20 3c 73 70 61 6e 20 63 6c | n">@hasDecl</span>(Foo,.<span.cl |
| 81b20 | 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 6e 6f 70 65 26 71 75 6f 74 3b 3c 2f | ass="tok-str">"nope"</ |
| 81b40 | 73 70 61 6e 3e 29 29 3b 0a 20 20 20 20 65 78 70 65 63 74 28 21 3c 73 70 61 6e 20 63 6c 61 73 73 | span>));.....expect(!<span.class |
| 81b60 | 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 68 61 73 44 65 63 6c 3c 2f 73 70 61 6e 3e 28 46 | ="tok-builtin">@hasDecl</span>(F |
| 81b80 | 6f 6f 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b | oo,.<span.class="tok-str">" |
| 81ba0 | 6e 6f 70 65 31 32 33 34 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 29 3b 0a 7d 3c 2f 63 6f 64 65 | nope1234"</span>));.}</code |
| 81bc0 | 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e | ></pre><pre><code.class="shell"> |
| 81be0 | 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 31 2f 31 20 74 65 73 74 20 26 71 75 | $.zig.test.test.zig.1/1.test.&qu |
| 81c00 | 6f 74 3b 40 68 61 73 44 65 63 6c 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 41 6c 6c 20 31 20 74 65 | ot;@hasDecl"....OK.All.1.te |
| 81c20 | 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 | sts.passed..</code></pre>....... |
| 81c40 | 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 |
| 81c60 | 66 3d 22 23 68 61 73 46 69 65 6c 64 22 3e 40 68 61 73 46 69 65 6c 64 3c 2f 61 3e 3c 2f 6c 69 3e | f="#hasField">@hasField</a></li> |
| 81c80 | 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 68 61 | .</ul>................<h2.id="ha |
| 81ca0 | 73 46 69 65 6c 64 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 68 61 73 46 69 65 6c 64 22 3e | sField"><a.href="#toc-hasField"> |
| 81cc0 | 40 68 61 73 46 69 65 6c 64 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 | @hasField</a>.<a.class="hdr".hre |
| 81ce0 | 66 3d 22 23 68 61 73 46 69 65 6c 64 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 | f="#hasField">..</a></h2>....... |
| 81d00 | 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c | .<pre><code.class="zig"><span.cl |
| 81d20 | 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 70 61 | ass="tok-builtin">@hasField</spa |
| 81d40 | 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 | n>(<span.class="tok-kw">comptime |
| 81d60 | 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 3d 22 | </span>.Container:.<span.class=" |
| 81d80 | 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 | tok-type">type</span>,.<span.cla |
| 81da0 | 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 6d 65 | ss="tok-kw">comptime</span>.name |
| 81dc0 | 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</ |
| 81de0 | 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< |
| 81e00 | 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 62 | /span>).<span.class="tok-type">b |
| 81e20 | 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 3c 70 | ool</span></code></pre>.......<p |
| 81e40 | 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 65 20 | >Returns.whether.the.field.name. |
| 81e60 | 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 69 73 | of.a.struct,.union,.or.enum.exis |
| 81e80 | 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 73 75 | ts.</p>.......<p>.......The.resu |
| 81ea0 | 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 0a 20 | lt.is.a.compile.time.constant... |
| 81ec0 | 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 6f 65 | .....</p>.......<p>.......It.doe |
| 81ee0 | 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 62 6c | s.not.include.functions,.variabl |
| 81f00 | 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 20 20 | es,.or.constants........</p>.... |
| 81f20 | 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 |
| 81f40 | 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 69 3e | ref="#hasDecl">@hasDecl</a></li> |
| 81f60 | 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 69 6d | .</ul>................<h2.id="im |
| 81f80 | 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 6d 70 | port"><a.href="#toc-import">@imp |
| 81fa0 | 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 69 6d | ort</a>.<a.class="hdr".href="#im |
| 81fc0 | 70 6f 72 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 | port">..</a></h2>........<pre><c |
| 81fe0 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ode.class="zig"><span.class="tok |
| 82000 | 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 |
| 82020 | 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 70 61 | lass="tok-kw">comptime</span>.pa |
| 82040 | 74 68 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 | th:.[]<span.class="tok-type">u8< |
| 82060 | 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 74 | /span>).<span.class="tok-type">t |
| 82080 | 79 70 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 | ype</span></code></pre>.......<p |
| 820a0 | 3e 0a 20 20 20 20 20 20 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 66 69 6e 64 73 20 61 20 7a 69 | >.......This.function.finds.a.zi |
| 820c0 | 67 20 66 69 6c 65 20 63 6f 72 72 65 73 70 6f 6e 64 69 6e 67 20 74 6f 20 3c 63 6f 64 65 20 63 6c | g.file.corresponding.to.<code.cl |
| 820e0 | 61 73 73 3d 22 7a 69 67 22 3e 70 61 74 68 3c 2f 63 6f 64 65 3e 20 61 6e 64 20 61 64 64 73 20 69 | ass="zig">path</code>.and.adds.i |
| 82100 | 74 20 74 6f 20 74 68 65 20 62 75 69 6c 64 2c 0a 20 20 20 20 20 20 69 66 20 69 74 20 69 73 20 6e | t.to.the.build,.......if.it.is.n |
| 82120 | 6f 74 20 61 6c 72 65 61 64 79 20 61 64 64 65 64 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 | ot.already.added........</p>.... |
| 82140 | 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 5a 69 67 20 73 6f 75 72 63 65 20 66 69 6c 65 73 20 61 72 | ...<p>.......Zig.source.files.ar |
| 82160 | 65 20 69 6d 70 6c 69 63 69 74 6c 79 20 73 74 72 75 63 74 73 2c 20 77 69 74 68 20 61 20 6e 61 6d | e.implicitly.structs,.with.a.nam |
| 82180 | 65 20 65 71 75 61 6c 20 74 6f 20 74 68 65 20 66 69 6c 65 27 73 20 62 61 73 65 6e 61 6d 65 20 77 | e.equal.to.the.file's.basename.w |
| 821a0 | 69 74 68 20 74 68 65 20 65 78 74 65 6e 73 69 6f 6e 0a 20 20 20 20 20 20 74 72 75 6e 63 61 74 65 | ith.the.extension.......truncate |
| 821c0 | 64 2e 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | d..<code.class="zig"><span.class |
| 821e0 | 3d 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 | ="tok-builtin">@import</span></c |
| 82200 | 6f 64 65 3e 20 72 65 74 75 72 6e 73 20 74 68 65 20 73 74 72 75 63 74 20 74 79 70 65 20 63 6f 72 | ode>.returns.the.struct.type.cor |
| 82220 | 72 65 73 70 6f 6e 64 69 6e 67 20 74 6f 20 74 68 65 20 66 69 6c 65 2e 0a 20 20 20 20 20 20 3c 2f | responding.to.the.file........</ |
| 82240 | 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 44 65 63 6c 61 72 61 74 69 6f 6e 73 20 | p>.......<p>.......Declarations. |
| 82260 | 77 68 69 63 68 20 68 61 76 65 20 74 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | which.have.the.<code.class="zig" |
| 82280 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 70 61 6e 3e | ><span.class="tok-kw">pub</span> |
| 822a0 | 3c 2f 63 6f 64 65 3e 20 6b 65 79 77 6f 72 64 20 6d 61 79 20 62 65 20 72 65 66 65 72 65 6e 63 65 | </code>.keyword.may.be.reference |
| 822c0 | 64 20 66 72 6f 6d 20 61 20 64 69 66 66 65 72 65 6e 74 0a 20 20 20 20 20 20 73 6f 75 72 63 65 20 | d.from.a.different.......source. |
| 822e0 | 66 69 6c 65 20 74 68 61 6e 20 74 68 65 20 6f 6e 65 20 74 68 65 79 20 61 72 65 20 64 65 63 6c 61 | file.than.the.one.they.are.decla |
| 82300 | 72 65 64 20 69 6e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 | red.in........</p>.......<p>.... |
| 82320 | 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 70 61 74 68 3c 2f 63 6f 64 65 3e | ...<code.class="zig">path</code> |
| 82340 | 20 63 61 6e 20 62 65 20 61 20 72 65 6c 61 74 69 76 65 20 70 61 74 68 20 6f 72 20 69 74 20 63 61 | .can.be.a.relative.path.or.it.ca |
| 82360 | 6e 20 62 65 20 74 68 65 20 6e 61 6d 65 20 6f 66 20 61 20 70 61 63 6b 61 67 65 2e 0a 20 20 20 20 | n.be.the.name.of.a.package...... |
| 82380 | 20 20 49 66 20 69 74 20 69 73 20 61 20 72 65 6c 61 74 69 76 65 20 70 61 74 68 2c 20 69 74 20 69 | ..If.it.is.a.relative.path,.it.i |
| 823a0 | 73 20 72 65 6c 61 74 69 76 65 20 74 6f 20 74 68 65 20 66 69 6c 65 20 74 68 61 74 20 63 6f 6e 74 | s.relative.to.the.file.that.cont |
| 823c0 | 61 69 6e 73 20 74 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e | ains.the.<code.class="zig"><span |
| 823e0 | 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 |
| 82400 | 61 6e 3e 3c 2f 63 6f 64 65 3e 0a 20 20 20 20 20 20 66 75 6e 63 74 69 6f 6e 20 63 61 6c 6c 2e 0a | an></code>.......function.call.. |
| 82420 | 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 20 66 | ......</p>.......<p>.......The.f |
| 82440 | 6f 6c 6c 6f 77 69 6e 67 20 70 61 63 6b 61 67 65 73 20 61 72 65 20 61 6c 77 61 79 73 20 61 76 61 | ollowing.packages.are.always.ava |
| 82460 | 69 6c 61 62 6c 65 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 | ilable:.......</p>.......<ul>... |
| 82480 | 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 | ........<li><code.class="zig"><s |
| 824a0 | 70 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< |
| 824c0 | 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 |
| 824e0 | 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3c 2f 63 6f 64 65 3e 20 2d 20 5a 69 | ot;std"</span>)</code>.-.Zi |
| 82500 | 67 20 53 74 61 6e 64 61 72 64 20 4c 69 62 72 61 72 79 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 | g.Standard.Library</li>......... |
| 82520 | 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c | ..<li><code.class="zig"><span.cl |
| 82540 | 61 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> |
| 82560 | 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 62 75 69 | (<span.class="tok-str">"bui |
| 82580 | 6c 74 69 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3c 2f 63 6f 64 65 3e 20 2d 20 43 6f 6d 70 | ltin"</span>)</code>.-.Comp |
| 825a0 | 69 6c 65 72 2d 70 72 6f 76 69 64 65 64 20 74 79 70 65 73 20 61 6e 64 20 76 61 72 69 61 62 6c 65 | iler-provided.types.and.variable |
| 825c0 | 73 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 54 68 65 20 63 6f 6d 6d 61 6e 64 20 3c 63 6f | s................The.command.<co |
| 825e0 | 64 65 3e 7a 69 67 20 62 75 69 6c 74 69 6e 3c 2f 63 6f 64 65 3e 20 6f 75 74 70 75 74 73 20 74 68 | de>zig.builtin</code>.outputs.th |
| 82600 | 65 20 73 6f 75 72 63 65 20 74 6f 20 73 74 64 6f 75 74 20 66 6f 72 20 72 65 66 65 72 65 6e 63 65 | e.source.to.stdout.for.reference |
| 82620 | 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>... |
| 82640 | 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. |
| 82660 | 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 |
| 82680 | 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 |
| 826a0 | 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 |
| 826c0 | 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 69 | >.</ul>................<h2.id="i |
| 826e0 | 6e 74 43 61 73 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 69 6e 74 43 61 73 74 22 3e 40 | ntCast"><a.href="#toc-intCast">@ |
| 82700 | 69 6e 74 43 61 73 74 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d | intCast</a>.<a.class="hdr".href= |
| 82720 | 22 23 69 6e 74 43 61 73 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 | "#intCast">..</a></h2>........<p |
| 82740 | 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | re><code.class="zig"><span.class |
| 82760 | 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6e 74 43 61 73 74 3c 2f 73 70 61 6e 3e 28 3c | ="tok-builtin">@intCast</span>(< |
| 82780 | 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 |
| 827a0 | 61 6e 3e 20 44 65 73 74 54 79 70 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | an>.DestType:.<span.class="tok-t |
| 827c0 | 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 69 6e 74 3a 20 3c 73 70 61 6e 20 63 6c 61 | ype">type</span>,.int:.<span.cla |
| 827e0 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 79 74 79 70 65 3c 2f 73 70 61 6e 3e 29 20 44 65 73 74 | ss="tok-kw">anytype</span>).Dest |
| 82800 | 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>..... |
| 82820 | 20 20 43 6f 6e 76 65 72 74 73 20 61 6e 20 69 6e 74 65 67 65 72 20 74 6f 20 61 6e 6f 74 68 65 72 | ..Converts.an.integer.to.another |
| 82840 | 20 69 6e 74 65 67 65 72 20 77 68 69 6c 65 20 6b 65 65 70 69 6e 67 20 74 68 65 20 73 61 6d 65 20 | .integer.while.keeping.the.same. |
| 82860 | 6e 75 6d 65 72 69 63 61 6c 20 76 61 6c 75 65 2e 0a 20 20 20 20 20 20 41 74 74 65 6d 70 74 69 6e | numerical.value........Attemptin |
| 82880 | 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 6f | g.to.convert.a.number.which.is.o |
| 828a0 | 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 74 | ut.of.range.of.the.destination.t |
| 828c0 | 79 70 65 20 72 65 73 75 6c 74 73 20 69 6e 0a 20 20 20 20 20 20 73 61 66 65 74 79 2d 70 72 6f 74 | ype.results.in.......safety-prot |
| 828e0 | 65 63 74 65 64 20 3c 61 20 68 72 65 66 3d 22 23 55 6e 64 65 66 69 6e 65 64 2d 42 65 68 61 76 69 | ected.<a.href="#Undefined-Behavi |
| 82900 | 6f 72 22 3e 55 6e 64 65 66 69 6e 65 64 20 42 65 68 61 76 69 6f 72 3c 2f 61 3e 2e 0a 20 20 20 20 | or">Undefined.Behavior</a>...... |
| 82920 | 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 66 20 3c 63 6f 64 65 20 | ..</p>.......<p>.......If.<code. |
| 82940 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 54 3c 2f 63 6f 64 65 3e 20 69 73 20 3c 63 6f 64 65 20 63 6c | class="zig">T</code>.is.<code.cl |
| 82960 | 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 | ass="zig"><span.class="tok-type" |
| 82980 | 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>,.... |
| 829a0 | 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 |
| 829c0 | 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 |
| 829e0 | 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 |
| 82a00 | 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 69 6e 74 54 6f 45 6e 75 | >...............<h2.id="intToEnu |
| 82a20 | 6d 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 69 6e 74 54 6f 45 6e 75 6d 22 3e 40 69 6e 74 | m"><a.href="#toc-intToEnum">@int |
| 82a40 | 54 6f 45 6e 75 6d 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 | ToEnum</a>.<a.class="hdr".href=" |
| 82a60 | 23 69 6e 74 54 6f 45 6e 75 6d 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c | #intToEnum">..</a></h2>........< |
| 82a80 | 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 | pre><code.class="zig"><span.clas |
| 82aa0 | 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6e 74 54 6f 45 6e 75 6d 3c 2f 73 70 61 6e | s="tok-builtin">@intToEnum</span |
| 82ac0 | 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< |
| 82ae0 | 2f 73 70 61 6e 3e 20 44 65 73 74 54 79 70 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | /span>.DestType:.<span.class="to |
| 82b00 | 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 69 6e 74 5f 76 61 6c 75 65 3a 20 | k-type">type</span>,.int_value:. |
| 82b20 | 3c 73 70 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 61 67 54 79 | <span.class="tok-builtin">@TagTy |
| 82b40 | 70 65 3c 2f 73 70 61 6e 3e 28 44 65 73 74 54 79 70 65 29 29 20 44 65 73 74 54 79 70 65 3c 2f 63 | pe</span>(DestType)).DestType</c |
| 82b60 | 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 43 6f 6e 76 65 | ode></pre>.......<p>.......Conve |
| 82b80 | 72 74 73 20 61 6e 20 69 6e 74 65 67 65 72 20 69 6e 74 6f 20 61 6e 20 3c 61 20 68 72 65 66 3d 22 | rts.an.integer.into.an.<a.href=" |
| 82ba0 | 23 65 6e 75 6d 22 3e 65 6e 75 6d 3c 2f 61 3e 20 76 61 6c 75 65 2e 0a 20 20 20 20 20 20 3c 2f 70 | #enum">enum</a>.value........</p |
| 82bc0 | 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 41 74 74 65 6d 70 74 69 6e 67 20 74 6f 20 | >.......<p>.......Attempting.to. |
| 82be0 | 63 6f 6e 76 65 72 74 20 61 6e 20 69 6e 74 65 67 65 72 20 77 68 69 63 68 20 72 65 70 72 65 73 65 | convert.an.integer.which.represe |
| 82c00 | 6e 74 73 20 6e 6f 20 76 61 6c 75 65 20 69 6e 20 74 68 65 20 63 68 6f 73 65 6e 20 65 6e 75 6d 20 | nts.no.value.in.the.chosen.enum. |
| 82c20 | 74 79 70 65 20 69 6e 76 6f 6b 65 73 0a 20 20 20 20 20 20 73 61 66 65 74 79 2d 63 68 65 63 6b 65 | type.invokes.......safety-checke |
| 82c40 | 64 20 3c 61 20 68 72 65 66 3d 22 23 55 6e 64 65 66 69 6e 65 64 2d 42 65 68 61 76 69 6f 72 22 3e | d.<a.href="#Undefined-Behavior"> |
| 82c60 | 55 6e 64 65 66 69 6e 65 64 20 42 65 68 61 76 69 6f 72 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f | Undefined.Behavior</a>........</ |
| 82c80 | 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 |
| 82ca0 | 69 3e 3c 61 20 68 72 65 66 3d 22 23 65 6e 75 6d 54 6f 49 6e 74 22 3e 40 65 6e 75 6d 54 6f 49 6e | i><a.href="#enumToInt">@enumToIn |
| 82cc0 | 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 20 20 20 | t</a></li>.</ul>................ |
| 82ce0 | 3c 68 32 20 69 64 3d 22 69 6e 74 54 6f 45 72 72 6f 72 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f | <h2.id="intToError"><a.href="#to |
| 82d00 | 63 2d 69 6e 74 54 6f 45 72 72 6f 72 22 3e 40 69 6e 74 54 6f 45 72 72 6f 72 3c 2f 61 3e 20 3c 61 | c-intToError">@intToError</a>.<a |
| 82d20 | 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 69 6e 74 54 6f 45 72 72 6f 72 22 3e | .class="hdr".href="#intToError"> |
| 82d40 | c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c | ..</a></h2>........<pre><code.cl |
| 82d60 | 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 | ass="zig"><span.class="tok-built |
| 82d80 | 69 6e 22 3e 40 69 6e 74 54 6f 45 72 72 6f 72 3c 2f 73 70 61 6e 3e 28 76 61 6c 75 65 3a 20 73 74 | in">@intToError</span>(value:.st |
| 82da0 | 64 2e 6d 65 74 61 2e 49 6e 74 54 79 70 65 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | d.meta.IntType(<span.class="tok- |
| 82dc0 | 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | null">false</span>,.<span.class= |
| 82de0 | 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 69 7a 65 4f 66 3c 2f 73 70 61 6e 3e 28 3c 73 70 | "tok-builtin">@sizeOf</span>(<sp |
| 82e00 | 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 |
| 82e20 | 61 6e 3e 29 20 2a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e | an>).*.<span.class="tok-number"> |
| 82e40 | 38 3c 2f 73 70 61 6e 3e 29 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | 8</span>)).<span.class="tok-type |
| 82e60 | 22 3e 61 6e 79 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 | ">anyerror</span></code></pre>.. |
| 82e80 | 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 43 6f 6e 76 65 72 74 73 20 66 72 6f 6d 20 74 68 65 | .....<p>.......Converts.from.the |
| 82ea0 | 20 69 6e 74 65 67 65 72 20 72 65 70 72 65 73 65 6e 74 61 74 69 6f 6e 20 6f 66 20 61 6e 20 65 72 | .integer.representation.of.an.er |
| 82ec0 | 72 6f 72 20 69 6e 74 6f 20 3c 61 20 68 72 65 66 3d 22 23 54 68 65 2d 47 6c 6f 62 61 6c 2d 45 72 | ror.into.<a.href="#The-Global-Er |
| 82ee0 | 72 6f 72 2d 53 65 74 22 3e 54 68 65 20 47 6c 6f 62 61 6c 20 45 72 72 6f 72 20 53 65 74 3c 2f 61 | ror-Set">The.Global.Error.Set</a |
| 82f00 | 3e 20 74 79 70 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 | >.type........</p>.......<p>.... |
| 82f20 | 20 20 20 49 74 20 69 73 20 67 65 6e 65 72 61 6c 6c 79 20 72 65 63 6f 6d 6d 65 6e 64 65 64 20 74 | ...It.is.generally.recommended.t |
| 82f40 | 6f 20 61 76 6f 69 64 20 74 68 69 73 0a 20 20 20 20 20 20 63 61 73 74 2c 20 61 73 20 74 68 65 20 | o.avoid.this.......cast,.as.the. |
| 82f60 | 69 6e 74 65 67 65 72 20 72 65 70 72 65 73 65 6e 74 61 74 69 6f 6e 20 6f 66 20 61 6e 20 65 72 72 | integer.representation.of.an.err |
| 82f80 | 6f 72 20 69 73 20 6e 6f 74 20 73 74 61 62 6c 65 20 61 63 72 6f 73 73 20 73 6f 75 72 63 65 20 63 | or.is.not.stable.across.source.c |
| 82fa0 | 6f 64 65 20 63 68 61 6e 67 65 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 | ode.changes........</p>.......<p |
| 82fc0 | 3e 0a 20 20 20 20 20 20 41 74 74 65 6d 70 74 69 6e 67 20 74 6f 20 63 6f 6e 76 65 72 74 20 61 6e | >.......Attempting.to.convert.an |
| 82fe0 | 20 69 6e 74 65 67 65 72 20 74 68 61 74 20 64 6f 65 73 20 6e 6f 74 20 63 6f 72 72 65 73 70 6f 6e | .integer.that.does.not.correspon |
| 83000 | 64 20 74 6f 20 61 6e 79 20 65 72 72 6f 72 20 72 65 73 75 6c 74 73 20 69 6e 0a 20 20 20 20 20 20 | d.to.any.error.results.in....... |
| 83020 | 73 61 66 65 74 79 2d 70 72 6f 74 65 63 74 65 64 20 3c 61 20 68 72 65 66 3d 22 23 55 6e 64 65 66 | safety-protected.<a.href="#Undef |
| 83040 | 69 6e 65 64 2d 42 65 68 61 76 69 6f 72 22 3e 55 6e 64 65 66 69 6e 65 64 20 42 65 68 61 76 69 6f | ined-Behavior">Undefined.Behavio |
| 83060 | 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 65 20 61 | r</a>........</p>.......<p>See.a |
| 83080 | 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 65 72 72 6f 72 | lso:</p><ul>.<li><a.href="#error |
| 830a0 | 54 6f 49 6e 74 22 3e 40 65 72 72 6f 72 54 6f 49 6e 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c | ToInt">@errorToInt</a></li>.</ul |
| 830c0 | 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 69 6e 74 54 6f 46 6c | >................<h2.id="intToFl |
| 830e0 | 6f 61 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 69 6e 74 54 6f 46 6c 6f 61 74 22 3e 40 | oat"><a.href="#toc-intToFloat">@ |
| 83100 | 69 6e 74 54 6f 46 6c 6f 61 74 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 | intToFloat</a>.<a.class="hdr".hr |
| 83120 | 65 66 3d 22 23 69 6e 74 54 6f 46 6c 6f 61 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 | ef="#intToFloat">..</a></h2>.... |
| 83140 | 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e | ....<pre><code.class="zig"><span |
| 83160 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6e 74 54 6f 46 6c 6f 61 74 | .class="tok-builtin">@intToFloat |
| 83180 | 3c 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 |
| 831a0 | 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 44 65 73 74 54 79 70 65 3a 20 3c 73 70 61 6e 20 63 6c 61 | ptime</span>.DestType:.<span.cla |
| 831c0 | 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 69 6e 74 3a 20 | ss="tok-type">type</span>,.int:. |
| 831e0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 79 74 79 70 65 3c 2f 73 70 | <span.class="tok-kw">anytype</sp |
| 83200 | 61 6e 3e 29 20 44 65 73 74 54 79 70 65 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 | an>).DestType</code></pre>...... |
| 83220 | 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 74 | .<p>.......Converts.an.integer.t |
| 83240 | 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 70 | o.the.closest.floating.point.rep |
| 83260 | 72 65 73 65 6e 74 61 74 69 6f 6e 2e 20 54 6f 20 63 6f 6e 76 65 72 74 20 74 68 65 20 6f 74 68 65 | resentation..To.convert.the.othe |
| 83280 | 72 20 77 61 79 2c 20 75 73 65 20 3c 61 20 68 72 65 66 3d 22 23 66 6c 6f 61 74 54 6f 49 6e 74 22 | r.way,.use.<a.href="#floatToInt" |
| 832a0 | 3e 40 66 6c 6f 61 74 54 6f 49 6e 74 3c 2f 61 3e 2e 20 54 68 69 73 20 63 61 73 74 20 69 73 20 61 | >@floatToInt</a>..This.cast.is.a |
| 832c0 | 6c 77 61 79 73 20 73 61 66 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 | lways.safe........</p>.......... |
| 832e0 | 20 20 20 20 20 3c 68 32 20 69 64 3d 22 69 6e 74 54 6f 50 74 72 22 3e 3c 61 20 68 72 65 66 3d 22 | .....<h2.id="intToPtr"><a.href=" |
| 83300 | 23 74 6f 63 2d 69 6e 74 54 6f 50 74 72 22 3e 40 69 6e 74 54 6f 50 74 72 3c 2f 61 3e 20 3c 61 20 | #toc-intToPtr">@intToPtr</a>.<a. |
| 83320 | 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 69 6e 74 54 6f 50 74 72 22 3e c2 a7 3c | class="hdr".href="#intToPtr">..< |
| 83340 | 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 | /a></h2>........<pre><code.class |
| 83360 | 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 | ="zig"><span.class="tok-builtin" |
| 83380 | 3e 40 69 6e 74 54 6f 50 74 72 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | >@intToPtr</span>(<span.class="t |
| 833a0 | 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 44 65 73 74 54 79 70 65 3a | ok-kw">comptime</span>.DestType: |
| 833c0 | 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 |
| 833e0 | 61 6e 3e 2c 20 61 64 64 72 65 73 73 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | an>,.address:.<span.class="tok-t |
| 83400 | 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 29 20 44 65 73 74 54 79 70 65 3c 2f 63 6f 64 | ype">usize</span>).DestType</cod |
| 83420 | 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 43 6f 6e 76 65 72 74 | e></pre>.......<p>.......Convert |
| 83440 | 73 20 61 6e 20 69 6e 74 65 67 65 72 20 74 6f 20 61 20 3c 61 20 68 72 65 66 3d 22 23 50 6f 69 6e | s.an.integer.to.a.<a.href="#Poin |
| 83460 | 74 65 72 73 22 3e 70 6f 69 6e 74 65 72 3c 2f 61 3e 2e 20 54 6f 20 63 6f 6e 76 65 72 74 20 74 68 | ters">pointer</a>..To.convert.th |
| 83480 | 65 20 6f 74 68 65 72 20 77 61 79 2c 20 75 73 65 20 3c 61 20 68 72 65 66 3d 22 23 70 74 72 54 6f | e.other.way,.use.<a.href="#ptrTo |
| 834a0 | 49 6e 74 22 3e 40 70 74 72 54 6f 49 6e 74 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 | Int">@ptrToInt</a>........</p>.. |
| 834c0 | 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 74 69 6f | .....<p>.......If.the.destinatio |
| 834e0 | 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 20 61 64 | n.pointer.type.does.not.allow.ad |
| 83500 | 64 72 65 73 73 20 7a 65 72 6f 20 61 6e 64 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | dress.zero.and.<code.class="zig" |
| 83520 | 3e 61 64 64 72 65 73 73 3c 2f 63 6f 64 65 3e 0a 20 20 20 20 20 20 69 73 20 7a 65 72 6f 2c 20 74 | >address</code>.......is.zero,.t |
| 83540 | 68 69 73 20 69 6e 76 6f 6b 65 73 20 73 61 66 65 74 79 2d 63 68 65 63 6b 65 64 20 3c 61 20 68 72 | his.invokes.safety-checked.<a.hr |
| 83560 | 65 66 3d 22 23 55 6e 64 65 66 69 6e 65 64 2d 42 65 68 61 76 69 6f 72 22 3e 55 6e 64 65 66 69 6e | ef="#Undefined-Behavior">Undefin |
| 83580 | 65 64 20 42 65 68 61 76 69 6f 72 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 | ed.Behavior</a>........</p>..... |
| 835a0 | 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 6d 65 6d 63 70 79 22 3e 3c 61 20 68 72 65 | ..........<h2.id="memcpy"><a.hre |
| 835c0 | 66 3d 22 23 74 6f 63 2d 6d 65 6d 63 70 79 22 3e 40 6d 65 6d 63 70 79 3c 2f 61 3e 20 3c 61 20 63 | f="#toc-memcpy">@memcpy</a>.<a.c |
| 835e0 | 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 6d 65 6d 63 70 79 22 3e c2 a7 3c 2f 61 3e | lass="hdr".href="#memcpy">..</a> |
| 83600 | 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a | </h2>........<pre><code.class="z |
| 83620 | 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 6d | ig"><span.class="tok-builtin">@m |
| 83640 | 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 6f 6b 2d 6b 77 | emcpy</span>(<span.class="tok-kw |
| 83660 | 22 3e 6e 6f 61 6c 69 61 73 3c 2f 73 70 61 6e 3e 20 64 65 73 74 3a 20 5b 2a 5d 3c 73 70 61 6e 20 | ">noalias</span>.dest:.[*]<span. |
| 83680 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 | class="tok-type">u8</span>,.<spa |
| 836a0 | 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>. |
| 836c0 | 73 6f 75 72 63 65 3a 20 5b 2a 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | source:.[*]<span.class="tok-kw"> |
| 836e0 | 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 |
| 83700 | 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 62 79 74 65 5f 63 6f 75 6e 74 3a 20 3c 73 70 61 6e | pe">u8</span>,.byte_count:.<span |
| 83720 | 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 3c | .class="tok-type">usize</span>)< |
| 83740 | 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 |
| 83760 | 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 20 6f 6e 65 | s.function.copies.bytes.from.one |
| 83780 | 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 2e 20 3c 63 | .region.of.memory.to.another..<c |
| 837a0 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 64 65 73 74 3c 2f 63 6f 64 65 3e 20 61 6e 64 0a | ode.class="zig">dest</code>.and. |
| 837c0 | 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 73 6f 75 72 | ..........<code.class="zig">sour |
| 837e0 | 63 65 3c 2f 63 6f 64 65 3e 20 61 72 65 20 62 6f 74 68 20 70 6f 69 6e 74 65 72 73 20 61 6e 64 20 | ce</code>.are.both.pointers.and. |
| 83800 | 6d 75 73 74 20 6e 6f 74 20 6f 76 65 72 6c 61 70 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 | must.not.overlap........</p>.... |
| 83820 | 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 61 20 | ...<p>.......This.function.is.a. |
| 83840 | 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 20 73 61 66 65 | low.level.intrinsic.with.no.safe |
| 83860 | 74 79 20 6d 65 63 68 61 6e 69 73 6d 73 2e 20 4d 6f 73 74 20 63 6f 64 65 0a 20 20 20 20 20 20 73 | ty.mechanisms..Most.code.......s |
| 83880 | 68 6f 75 6c 64 20 6e 6f 74 20 75 73 65 20 74 68 69 73 20 66 75 6e 63 74 69 6f 6e 2c 20 69 6e 73 | hould.not.use.this.function,.ins |
| 838a0 | 74 65 61 64 20 75 73 69 6e 67 20 73 6f 6d 65 74 68 69 6e 67 20 6c 69 6b 65 20 74 68 69 73 3a 0a | tead.using.something.like.this:. |
| 838c0 | 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 |
| 838e0 | 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6f 72 | s="zig"><span.class="tok-kw">for |
| 83900 | 3c 2f 73 70 61 6e 3e 20 28 73 6f 75 72 63 65 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | </span>.(source[<span.class="tok |
| 83920 | 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 2e 2e 62 79 74 65 5f 63 6f 75 6e 74 5d 29 20 | -number">0</span>..byte_count]). |
| 83940 | 7c 62 2c 20 69 7c 20 64 65 73 74 5b 69 5d 20 3d 20 62 3b 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e | |b,.i|.dest[i].=.b;</code></pre> |
| 83960 | 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 20 6f 70 74 69 6d 69 7a 65 72 20 69 | .......<p>.......The.optimizer.i |
| 83980 | 73 20 69 6e 74 65 6c 6c 69 67 65 6e 74 20 65 6e 6f 75 67 68 20 74 6f 20 74 75 72 6e 20 74 68 65 | s.intelligent.enough.to.turn.the |
| 839a0 | 20 61 62 6f 76 65 20 73 6e 69 70 70 65 74 20 69 6e 74 6f 20 61 20 6d 65 6d 63 70 79 2e 0a 20 20 | .above.snippet.into.a.memcpy.... |
| 839c0 | 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 54 68 65 72 65 20 69 73 20 61 6c 73 6f 20 | ....</p>.......<p>There.is.also. |
| 839e0 | 61 20 73 74 61 6e 64 61 72 64 20 6c 69 62 72 61 72 79 20 66 75 6e 63 74 69 6f 6e 20 66 6f 72 20 | a.standard.library.function.for. |
| 83a00 | 74 68 69 73 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 | this:</p>.......<pre><code.class |
| 83a20 | 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 | ="zig"><span.class="tok-kw">cons |
| 83a40 | 74 3c 2f 73 70 61 6e 3e 20 6d 65 6d 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | t</span>.mem.=.<span.class="tok- |
| 83a60 | 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 |
| 83a80 | 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 |
| 83aa0 | 70 61 6e 3e 29 2e 6d 65 6d 3b 0a 6d 65 6d 2e 63 6f 70 79 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d | pan>).mem;.mem.copy(<span.class= |
| 83ac0 | 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 64 65 73 74 5b 3c 73 70 61 6e | "tok-type">u8</span>,.dest[<span |
| 83ae0 | 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 62 79 | .class="tok-number">0</span>..by |
| 83b00 | 74 65 5f 63 6f 75 6e 74 5d 2c 20 73 6f 75 72 63 65 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | te_count],.source[<span.class="t |
| 83b20 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 2e 2e 62 79 74 65 5f 63 6f 75 6e 74 5d | ok-number">0</span>..byte_count] |
| 83b40 | 29 3b 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 | );</code></pre>...............<h |
| 83b60 | 32 20 69 64 3d 22 6d 65 6d 73 65 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 6d 65 6d 73 | 2.id="memset"><a.href="#toc-mems |
| 83b80 | 65 74 22 3e 40 6d 65 6d 73 65 74 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 | et">@memset</a>.<a.class="hdr".h |
| 83ba0 | 72 65 66 3d 22 23 6d 65 6d 73 65 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 | ref="#memset">..</a></h2>....... |
| 83bc0 | 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c | .<pre><code.class="zig"><span.cl |
| 83be0 | 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 70 61 6e 3e | ass="tok-builtin">@memset</span> |
| 83c00 | 28 64 65 73 74 3a 20 5b 2a 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 | (dest:.[*]<span.class="tok-type" |
| 83c20 | 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 63 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | >u8</span>,.c:.<span.class="tok- |
| 83c40 | 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 62 79 74 65 5f 63 6f 75 6e 74 3a 20 3c 73 70 | type">u8</span>,.byte_count:.<sp |
| 83c60 | 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> |
| 83c80 | 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 54 | )</code></pre>.......<p>.......T |
| 83ca0 | 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 73 20 61 20 72 65 67 69 6f 6e 20 6f 66 20 6d 65 | his.function.sets.a.region.of.me |
| 83cc0 | 6d 6f 72 79 20 74 6f 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 63 3c 2f 63 6f 64 | mory.to.<code.class="zig">c</cod |
| 83ce0 | 65 3e 2e 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 64 65 73 74 3c 2f 63 6f 64 65 | e>..<code.class="zig">dest</code |
| 83d00 | 3e 20 69 73 20 61 20 70 6f 69 6e 74 65 72 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 | >.is.a.pointer........</p>...... |
| 83d20 | 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 6f | .<p>.......This.function.is.a.lo |
| 83d40 | 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 79 | w.level.intrinsic.with.no.safety |
| 83d60 | 20 6d 65 63 68 61 6e 69 73 6d 73 2e 20 4d 6f 73 74 0a 20 20 20 20 20 20 63 6f 64 65 20 73 68 6f | .mechanisms..Most.......code.sho |
| 83d80 | 75 6c 64 20 6e 6f 74 20 75 73 65 20 74 68 69 73 20 66 75 6e 63 74 69 6f 6e 2c 20 69 6e 73 74 65 | uld.not.use.this.function,.inste |
| 83da0 | 61 64 20 75 73 69 6e 67 20 73 6f 6d 65 74 68 69 6e 67 20 6c 69 6b 65 20 74 68 69 73 3a 0a 20 20 | ad.using.something.like.this:... |
| 83dc0 | 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= |
| 83de0 | 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6f 72 3c 2f | "zig"><span.class="tok-kw">for</ |
| 83e00 | 73 70 61 6e 3e 20 28 64 65 73 74 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | span>.(dest[<span.class="tok-num |
| 83e20 | 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 2e 2e 62 79 74 65 5f 63 6f 75 6e 74 5d 29 20 7c 2a 62 7c | ber">0</span>..byte_count]).|*b| |
| 83e40 | 20 62 2e 2a 20 3d 20 63 3b 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e | .b.*.=.c;</code></pre>.......<p> |
| 83e60 | 0a 20 20 20 20 20 20 54 68 65 20 6f 70 74 69 6d 69 7a 65 72 20 69 73 20 69 6e 74 65 6c 6c 69 67 | .......The.optimizer.is.intellig |
| 83e80 | 65 6e 74 20 65 6e 6f 75 67 68 20 74 6f 20 74 75 72 6e 20 74 68 65 20 61 62 6f 76 65 20 73 6e 69 | ent.enough.to.turn.the.above.sni |
| 83ea0 | 70 70 65 74 20 69 6e 74 6f 20 61 20 6d 65 6d 73 65 74 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 | ppet.into.a.memset........</p>.. |
| 83ec0 | 20 20 20 20 20 3c 70 3e 54 68 65 72 65 20 69 73 20 61 6c 73 6f 20 61 20 73 74 61 6e 64 61 72 64 | .....<p>There.is.also.a.standard |
| 83ee0 | 20 6c 69 62 72 61 72 79 20 66 75 6e 63 74 69 6f 6e 20 66 6f 72 20 74 68 69 73 3a 3c 2f 70 3e 0a | .library.function.for.this:</p>. |
| 83f00 | 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 | ......<pre><code.class="zig"><sp |
| 83f20 | 61 6e 20 63 6c 61 73 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 |
| 83f40 | 65 6d 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 | em.=.<span.class="tok-builtin">@ |
| 83f60 | 69 6d 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 |
| 83f80 | 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 6d 65 6d 3b | tr">"std"</span>).mem; |
| 83fa0 | 0a 6d 65 6d 2e 73 65 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | .mem.set(<span.class="tok-type"> |
| 83fc0 | 75 38 3c 2f 73 70 61 6e 3e 2c 20 64 65 73 74 2c 20 63 29 3b 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 | u8</span>,.dest,.c);</code></pre |
| 83fe0 | 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 77 61 73 6d 4d 65 6d 6f | >...............<h2.id="wasmMemo |
| 84000 | 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 6d 4d 65 6d 6f 72 79 | rySize"><a.href="#toc-wasmMemory |
| 84020 | 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 20 3c 61 20 63 6c 61 | Size">@wasmMemorySize</a>.<a.cla |
| 84040 | 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 53 69 7a 65 22 3e | ss="hdr".href="#wasmMemorySize"> |
| 84060 | c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c | ..</a></h2>........<pre><code.cl |
| 84080 | 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 | ass="zig"><span.class="tok-built |
| 840a0 | 69 6e 22 3e 40 77 61 73 6d 4d 65 6d 6f 72 79 53 69 7a 65 3c 2f 73 70 61 6e 3e 28 69 6e 64 65 78 | in">@wasmMemorySize</span>(index |
| 840c0 | 3a 20 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 |
| 840e0 | 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c | an>).<span.class="tok-type">u32< |
| 84100 | 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>... |
| 84120 | 20 20 20 20 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 72 65 74 75 72 6e 73 20 74 68 65 20 73 69 | ....This.function.returns.the.si |
| 84140 | 7a 65 20 6f 66 20 74 68 65 20 57 61 73 6d 20 6d 65 6d 6f 72 79 20 69 64 65 6e 74 69 66 69 65 64 | ze.of.the.Wasm.memory.identified |
| 84160 | 20 62 79 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 69 6e 64 65 78 3c 2f 63 6f 64 | .by.<code.class="zig">index</cod |
| 84180 | 65 3e 20 61 73 0a 20 20 20 20 20 20 61 6e 20 75 6e 73 69 67 6e 65 64 20 76 61 6c 75 65 20 69 6e | e>.as.......an.unsigned.value.in |
| 841a0 | 20 75 6e 69 74 73 20 6f 66 20 57 61 73 6d 20 70 61 67 65 73 2e 20 4e 6f 74 65 20 74 68 61 74 20 | .units.of.Wasm.pages..Note.that. |
| 841c0 | 65 61 63 68 20 57 61 73 6d 20 70 61 67 65 20 69 73 20 36 34 4b 42 20 69 6e 20 73 69 7a 65 2e 0a | each.Wasm.page.is.64KB.in.size.. |
| 841e0 | 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 | ......</p>.......<p>.......This. |
| 84200 | 66 75 6e 63 74 69 6f 6e 20 69 73 20 61 20 6c 6f 77 20 6c 65 76 65 6c 20 69 6e 74 72 69 6e 73 69 | function.is.a.low.level.intrinsi |
| 84220 | 63 20 77 69 74 68 20 6e 6f 20 73 61 66 65 74 79 20 6d 65 63 68 61 6e 69 73 6d 73 20 75 73 75 61 | c.with.no.safety.mechanisms.usua |
| 84240 | 6c 6c 79 20 75 73 65 66 75 6c 20 66 6f 72 20 61 6c 6c 6f 63 61 74 6f 72 0a 20 20 20 20 20 20 64 | lly.useful.for.allocator.......d |
| 84260 | 65 73 69 67 6e 65 72 73 20 74 61 72 67 65 74 69 6e 67 20 57 61 73 6d 2e 20 53 6f 20 75 6e 6c 65 | esigners.targeting.Wasm..So.unle |
| 84280 | 73 73 20 79 6f 75 20 61 72 65 20 77 72 69 74 69 6e 67 20 61 20 6e 65 77 20 61 6c 6c 6f 63 61 74 | ss.you.are.writing.a.new.allocat |
| 842a0 | 6f 72 20 66 72 6f 6d 20 73 63 72 61 74 63 68 2c 20 79 6f 75 20 73 68 6f 75 6c 64 20 75 73 65 0a | or.from.scratch,.you.should.use. |
| 842c0 | 20 20 20 20 20 20 73 6f 6d 65 74 68 69 6e 67 20 6c 69 6b 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 | ......something.like.<code.class |
| 842e0 | 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 | ="zig"><span.class="tok-builtin" |
| 84300 | 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 |
| 84320 | 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 68 65 | -str">"std"</span>).he |
| 84340 | 61 70 2e 57 61 73 6d 50 61 67 65 41 6c 6c 6f 63 61 74 6f 72 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 | ap.WasmPageAllocator</code>..... |
| 84360 | 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 | ...</p>.......<p>See.also:</p><u |
| 84380 | 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 47 72 6f 77 22 | l>.<li><a.href="#wasmMemoryGrow" |
| 843a0 | 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 2f 75 6c 3e 0a | >@wasmMemoryGrow</a></li>.</ul>. |
| 843c0 | 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 77 61 73 6d 4d 65 6d 6f 72 | ...............<h2.id="wasmMemor |
| 843e0 | 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 6d 6f 72 79 47 | yGrow"><a.href="#toc-wasmMemoryG |
| 84400 | 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 20 63 6c 61 73 | row">@wasmMemoryGrow</a>.<a.clas |
| 84420 | 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 6f 77 22 3e c2 | s="hdr".href="#wasmMemoryGrow">. |
| 84440 | a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 | .</a></h2>........<pre><code.cla |
| 84460 | 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 | ss="zig"><span.class="tok-builti |
| 84480 | 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 69 6e 64 65 78 3a | n">@wasmMemoryGrow</span>(index: |
| 844a0 | 20 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 |
| 844c0 | 6e 3e 2c 20 64 65 6c 74 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | n>,.delta:.<span.class="tok-type |
| 844e0 | 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | ">u32</span>).<span.class="tok-t |
| 84500 | 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 | ype">i32</span></code></pre>.... |
| 84520 | 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 6e 63 72 65 | ...<p>.......This.function.incre |
| 84540 | 61 73 65 73 20 74 68 65 20 73 69 7a 65 20 6f 66 20 74 68 65 20 57 61 73 6d 20 6d 65 6d 6f 72 79 | ases.the.size.of.the.Wasm.memory |
| 84560 | 20 69 64 65 6e 74 69 66 69 65 64 20 62 79 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | .identified.by.<code.class="zig" |
| 84580 | 3e 69 6e 64 65 78 3c 2f 63 6f 64 65 3e 20 62 79 0a 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 | >index</code>.by.......<code.cla |
| 845a0 | 73 73 3d 22 7a 69 67 22 3e 64 65 6c 74 61 3c 2f 63 6f 64 65 3e 20 69 6e 20 75 6e 69 74 73 20 6f | ss="zig">delta</code>.in.units.o |
| 845c0 | 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 61 67 65 73 2e | f.unsigned.number.of.Wasm.pages. |
| 845e0 | 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 20 20 20 20 20 | .Note.that.each.Wasm.page....... |
| 84600 | 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 2c 20 72 65 74 | is.64KB.in.size..On.success,.ret |
| 84620 | 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 6f 6e 20 66 61 | urns.previous.memory.size;.on.fa |
| 84640 | 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 69 6c 73 2c 0a | ilure,.if.the.allocation.fails,. |
| 84660 | 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 3e 0a 20 20 20 | ......returns.-1........</p>.... |
| 84680 | 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 61 20 | ...<p>.......This.function.is.a. |
| 846a0 | 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 20 73 61 66 65 | low.level.intrinsic.with.no.safe |
| 846c0 | 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 6c 20 66 6f 72 | ty.mechanisms.usually.useful.for |
| 846e0 | 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 74 61 72 67 65 | .allocator.......designers.targe |
| 84700 | 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 65 20 77 72 69 | ting.Wasm..So.unless.you.are.wri |
| 84720 | 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 63 72 61 74 63 | ting.a.new.allocator.from.scratc |
| 84740 | 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 65 74 68 69 6e | h,.you.should.use.......somethin |
| 84760 | 67 20 6c 69 6b 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 | g.like.<code.class="zig"><span.c |
| 84780 | 6c 61 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 |
| 847a0 | 3e 28 3c 73 70 61 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 |
| 847c0 | 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 68 65 61 70 2e 57 61 73 6d 50 61 67 65 41 6c 6c | d"</span>).heap.WasmPageAll |
| 847e0 | 6f 63 61 74 6f 72 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 | ocator</code>........</p>....... |
| 84800 | 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 | <p.class="file">test.zig</p><pre |
| 84820 | 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ><code.class="zig"><span.class=" |
| 84840 | 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 |
| 84860 | 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 |
| 84880 | 61 6e 3e 28 3c 73 70 61 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">" |
| 848a0 | 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=" |
| 848c0 | 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.=.< |
| 848e0 | 73 70 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 |
| 84900 | 3c 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 |
| 84920 | 75 6f 74 3b 62 75 69 6c 74 69 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 3c 73 70 61 6e | uot;builtin"</span>);.<span |
| 84940 | 20 63 6c 61 73 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 |
| 84960 | 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 |
| 84980 | 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 |
| 849a0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 40 77 61 73 6d 4d 65 6d | n.class="tok-str">"@wasmMem |
| 849c0 | 6f 72 79 47 72 6f 77 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e | oryGrow"</span>.{.....<span |
| 849e0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 62 75 69 6c 74 | .class="tok-kw">if</span>.(built |
| 84a00 | 69 6e 2e 61 72 63 68 20 21 3d 20 2e 77 61 73 6d 33 32 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | in.arch.!=..wasm32).<span.class= |
| 84a20 | 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 |
| 84a40 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 53 6b 69 70 5a 69 67 | ss="tok-kw">error</span>.SkipZig |
| 84a60 | 54 65 73 74 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | Test;......<span.class="tok-kw"> |
| 84a80 | 76 61 72 3c 2f 73 70 61 6e 3e 20 70 72 65 76 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | var</span>.prev.=.<span.class="t |
| 84aa0 | 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 77 61 73 6d 4d 65 6d 6f 72 79 53 69 7a 65 3c 2f 73 70 61 | ok-builtin">@wasmMemorySize</spa |
| 84ac0 | 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 | n>(<span.class="tok-number">0</s |
| 84ae0 | 70 61 6e 3e 29 3b 0a 20 20 20 20 65 78 70 65 63 74 28 70 72 65 76 20 3d 3d 20 3c 73 70 61 6e 20 | pan>);.....expect(prev.==.<span. |
| 84b00 | 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 47 | class="tok-builtin">@wasmMemoryG |
| 84b20 | 72 6f 77 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | row</span>(<span.class="tok-numb |
| 84b40 | 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 |
| 84b60 | 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 29 3b 0a 20 20 20 20 65 78 70 65 63 74 28 70 72 | umber">1</span>));.....expect(pr |
| 84b80 | 65 76 20 2b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c | ev.+.<span.class="tok-number">1< |
| 84ba0 | 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 62 75 69 6c 74 | /span>.==.<span.class="tok-built |
| 84bc0 | 69 6e 22 3e 40 77 61 73 6d 4d 65 6d 6f 72 79 53 69 7a 65 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e | in">@wasmMemorySize</span>(<span |
| 84be0 | 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 29 3b 0a | .class="tok-number">0</span>));. |
| 84c00 | 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | }</code></pre><pre><code.class=" |
| 84c20 | 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 31 2f 31 20 74 | shell">$.zig.test.test.zig.1/1.t |
| 84c40 | 65 73 74 20 26 71 75 6f 74 3b 40 77 61 73 6d 4d 65 6d 6f 72 79 47 72 6f 77 26 71 75 6f 74 3b 2e | est."@wasmMemoryGrow". |
| 84c60 | 2e 2e 20 53 4b 49 50 0a 30 20 70 61 73 73 65 64 3b 20 31 20 73 6b 69 70 70 65 64 2e 0a 3c 2f 63 | ...SKIP.0.passed;.1.skipped..</c |
| 84c80 | 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f | ode></pre>........<p>See.also:</ |
| 84ca0 | 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 53 | p><ul>.<li><a.href="#wasmMemoryS |
| 84cc0 | 69 7a 65 22 3e 40 77 61 73 6d 4d 65 6d 6f 72 79 53 69 7a 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f | ize">@wasmMemorySize</a></li>.</ |
| 84ce0 | 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 6d 6f 64 22 3e | ul>................<h2.id="mod"> |
| 84d00 | 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 61 3e 20 3c 61 20 63 | <a.href="#toc-mod">@mod</a>.<a.c |
| 84d20 | 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 3c 2f 61 3e 3c 2f 68 | lass="hdr".href="#mod">..</a></h |
| 84d40 | 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | 2>........<pre><code.class="zig" |
| 84d60 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 6d 6f 64 3c | ><span.class="tok-builtin">@mod< |
| 84d80 | 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 6f 72 | /span>(numerator:.T,.denominator |
| 84da0 | 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 20 20 | :.T).T</code></pre>.......<p>... |
| 84dc0 | 20 20 20 20 4d 6f 64 75 6c 75 73 20 64 69 76 69 73 69 6f 6e 2e 20 46 6f 72 20 75 6e 73 69 67 6e | ....Modulus.division..For.unsign |
| 84de0 | 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. |
| 84e00 | 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 6e 75 6d 65 72 61 74 6f | ......<code.class="zig">numerato |
| 84e20 | 72 20 25 20 64 65 6e 6f 6d 69 6e 61 74 6f 72 3c 2f 63 6f 64 65 3e 2e 20 43 61 6c 6c 65 72 20 67 | r.%.denominator</code>..Caller.g |
| 84e40 | 75 61 72 61 6e 74 65 65 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 64 65 6e 6f | uarantees.<code.class="zig">deno |
| 84e60 | 6d 69 6e 61 74 6f 72 20 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | minator.>.<span.class="tok-nu |
| 84e80 | 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 | mber">0</span></code>........</p |
| 84ea0 | 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 | >.......<ul>...........<li><code |
| 84ec0 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 | .class="zig"><span.class="tok-bu |
| 84ee0 | 69 6c 74 69 6e 22 3e 40 6d 6f 64 3c 2f 73 70 61 6e 3e 28 2d 3c 73 70 61 6e 20 63 6c 61 73 73 3d | iltin">@mod</span>(-<span.class= |
| 84f00 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 | "tok-number">5</span>,.<span.cla |
| 84f20 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 3c 73 70 | ss="tok-number">3</span>).==.<sp |
| 84f40 | 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></ |
| 84f60 | 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 | code></li>...........<li><code.c |
| 84f80 | 6c 61 73 73 3d 22 7a 69 67 22 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 | lass="zig">(<span.class="tok-bui |
| 84fa0 | 6c 74 69 6e 22 3e 40 64 69 76 46 6c 6f 6f 72 3c 2f 73 70 61 6e 3e 28 61 2c 20 62 29 20 2a 20 62 | ltin">@divFloor</span>(a,.b).*.b |
| 84fc0 | 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 6d | ).+.<span.class="tok-builtin">@m |
| 84fe0 | 6f 64 3c 2f 73 70 61 6e 3e 28 61 2c 20 62 29 20 3d 3d 20 61 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e | od</span>(a,.b).==.a</code></li> |
| 85000 | 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 |
| 85020 | 74 69 6f 6e 20 74 68 61 74 20 72 65 74 75 72 6e 73 20 61 6e 20 65 72 72 6f 72 20 63 6f 64 65 2c | tion.that.returns.an.error.code, |
| 85040 | 20 73 65 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 | .see.<code.class="zig"><span.cla |
| 85060 | 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>( |
| 85080 | 3c 73 70 61 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& |
| 850a0 | 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 6d 61 74 68 2e 6d 6f 64 3c 2f 63 6f 64 65 3e 2e 3c 2f | quot;</span>).math.mod</code>.</ |
| 850c0 | 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 |
| 850e0 | 69 3e 3c 61 20 68 72 65 66 3d 22 23 72 65 6d 22 3e 40 72 65 6d 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c | i><a.href="#rem">@rem</a></li>.< |
| 85100 | 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 6d 75 6c 57 | /ul>................<h2.id="mulW |
| 85120 | 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 6d 75 6c 57 69 | ithOverflow"><a.href="#toc-mulWi |
| 85140 | 74 68 4f 76 65 72 66 6c 6f 77 22 3e 40 6d 75 6c 57 69 74 68 4f 76 65 72 66 6c 6f 77 3c 2f 61 3e | thOverflow">@mulWithOverflow</a> |
| 85160 | 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 6d 75 6c 57 69 74 68 4f 76 | .<a.class="hdr".href="#mulWithOv |
| 85180 | 65 72 66 6c 6f 77 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e | erflow">..</a></h2>........<pre> |
| 851a0 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | <code.class="zig"><span.class="t |
| 851c0 | 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 6d 75 6c 57 69 74 68 4f 76 65 72 66 6c 6f 77 3c 2f 73 70 | ok-builtin">@mulWithOverflow</sp |
| 851e0 | 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 |
| 85200 | 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 |
| 85220 | 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 2c 20 72 65 73 75 | e">type</span>,.a:.T,.b:.T,.resu |
| 85240 | 6c 74 3a 20 2a 54 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 62 | lt:.*T).<span.class="tok-type">b |
| 85260 | 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 3c 70 | ool</span></code></pre>.......<p |
| 85280 | 3e 0a 20 20 20 20 20 20 50 65 72 66 6f 72 6d 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | >.......Performs.<code.class="zi |
| 852a0 | 67 22 3e 72 65 73 75 6c 74 2e 2a 20 3d 20 61 20 2a 20 62 3c 2f 63 6f 64 65 3e 2e 20 49 66 20 6f | g">result.*.=.a.*.b</code>..If.o |
| 852c0 | 76 65 72 66 6c 6f 77 20 6f 72 20 75 6e 64 65 72 66 6c 6f 77 20 6f 63 63 75 72 73 2c 0a 20 20 20 | verflow.or.underflow.occurs,.... |
| 852e0 | 20 20 20 20 20 20 20 73 74 6f 72 65 73 20 74 68 65 20 6f 76 65 72 66 6c 6f 77 65 64 20 62 69 74 | .......stores.the.overflowed.bit |
| 85300 | 73 20 69 6e 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 72 65 73 75 6c 74 3c 2f 63 | s.in.<code.class="zig">result</c |
| 85320 | 6f 64 65 3e 20 61 6e 64 20 72 65 74 75 72 6e 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | ode>.and.returns.<code.class="zi |
| 85340 | 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f | g"><span.class="tok-null">true</ |
| 85360 | 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 20 20 20 20 | span></code>.................... |
| 85380 | 49 66 20 6e 6f 20 6f 76 65 72 66 6c 6f 77 20 6f 72 20 75 6e 64 65 72 66 6c 6f 77 20 6f 63 63 75 | If.no.overflow.or.underflow.occu |
| 853a0 | 72 73 2c 20 72 65 74 75 72 6e 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 | rs,.returns.<code.class="zig"><s |
| 853c0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e | pan.class="tok-null">false</span |
| 853e0 | 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 0a 0a 20 20 20 | ></code>........</p>............ |
| 85400 | 20 20 20 3c 68 32 20 69 64 3d 22 70 61 6e 69 63 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d | ...<h2.id="panic"><a.href="#toc- |
| 85420 | 70 61 6e 69 63 22 3e 40 70 61 6e 69 63 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 | panic">@panic</a>.<a.class="hdr" |
| 85440 | 20 68 72 65 66 3d 22 23 70 61 6e 69 63 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 | .href="#panic">..</a></h2>...... |
| 85460 | 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 | ..<pre><code.class="zig"><span.c |
| 85480 | 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 6e 3e | lass="tok-builtin">@panic</span> |
| 854a0 | 28 6d 65 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 | (message:.[]<span.class="tok-kw" |
| 854c0 | 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 |
| 854e0 | 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 6b | ype">u8</span>).<span.class="tok |
| 85500 | 2d 74 79 70 65 22 3e 6e 6f 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 | -type">noreturn</span></code></p |
| 85520 | 72 65 3e 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 | re>.......<p>.......Invokes.the. |
| 85540 | 70 61 6e 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 | panic.handler.function..By.defau |
| 85560 | 6c 74 20 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 | lt.the.panic.handler.function... |
| 85580 | 20 20 20 20 63 61 6c 6c 73 20 74 68 65 20 70 75 62 6c 69 63 20 3c 63 6f 64 65 20 63 6c 61 73 73 | ....calls.the.public.<code.class |
| 855a0 | 3d 22 7a 69 67 22 3e 70 61 6e 69 63 3c 2f 63 6f 64 65 3e 20 66 75 6e 63 74 69 6f 6e 20 65 78 70 | ="zig">panic</code>.function.exp |
| 855c0 | 6f 73 65 64 20 69 6e 20 74 68 65 20 72 6f 6f 74 20 73 6f 75 72 63 65 20 66 69 6c 65 2c 20 6f 72 | osed.in.the.root.source.file,.or |
| 855e0 | 0a 20 20 20 20 20 20 69 66 20 74 68 65 72 65 20 69 73 20 6e 6f 74 20 6f 6e 65 20 73 70 65 63 69 | .......if.there.is.not.one.speci |
| 85600 | 66 69 65 64 2c 20 74 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 73 74 64 2e | fied,.the.<code.class="zig">std. |
| 85620 | 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 3e 0a 20 20 20 | builtin.default_panic</code>.... |
| 85640 | 20 20 20 66 75 6e 63 74 69 6f 6e 20 66 72 6f 6d 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | ...function.from.<code.class="zi |
| 85660 | 67 22 3e 73 74 64 2f 62 75 69 6c 74 69 6e 2e 7a 69 67 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 | g">std/builtin.zig</code>....... |
| 85680 | 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 47 65 6e 65 72 61 6c 6c 79 20 69 74 20 69 73 20 62 | .</p>.......<p>Generally.it.is.b |
| 856a0 | 65 74 74 65 72 20 74 6f 20 75 73 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c | etter.to.use.<code.class="zig">< |
| 856c0 | 73 70 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 |
| 856e0 | 3c 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 |
| 85700 | 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 61 6e 69 | uot;std"</span>).debug.pani |
| 85720 | 63 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 20 20 20 20 48 6f 77 65 76 65 72 2c 20 3c 63 6f | c</code>............However,.<co |
| 85740 | 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | de.class="zig"><span.class="tok- |
| 85760 | 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 61 | builtin">@panic</span></code>.ca |
| 85780 | 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 20 | n.be.useful.for.2.scenarios:.... |
| 857a0 | 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 46 | ...</p>.......<ul>.........<li>F |
| 857c0 | 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 72 | rom.library.code,.calling.the.pr |
| 857e0 | 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 65 | ogrammer's.panic.function.if.the |
| 85800 | 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 65 | y.exposed.one.in.the.root.source |
| 85820 | 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 78 | .file.</li>.........<li>When.mix |
| 85840 | 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 20 | ing.C.and.Zig.code,.calling.the. |
| 85860 | 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 61 | canonical.panic.implementation.a |
| 85880 | 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 20 | cross.multiple..o.files.</li>... |
| 858a0 | 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e | ....</ul>.......<p>See.also:</p> |
| 858c0 | 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 52 6f 6f 74 2d 53 6f 75 72 63 65 2d 46 | <ul>.<li><a.href="#Root-Source-F |
| 858e0 | 69 6c 65 22 3e 52 6f 6f 74 20 53 6f 75 72 63 65 20 46 69 6c 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c | ile">Root.Source.File</a></li>.< |
| 85900 | 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 70 6f 70 43 | /ul>................<h2.id="popC |
| 85920 | 6f 75 6e 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 70 6f 70 43 6f 75 6e 74 22 3e 40 70 | ount"><a.href="#toc-popCount">@p |
| 85940 | 6f 70 43 6f 75 6e 74 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d | opCount</a>.<a.class="hdr".href= |
| 85960 | 22 23 70 6f 70 43 6f 75 6e 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c | "#popCount">..</a></h2>........< |
| 85980 | 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 | pre><code.class="zig"><span.clas |
| 859a0 | 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 70 6f 70 43 6f 75 6e 74 3c 2f 73 70 61 6e 3e | s="tok-builtin">@popCount</span> |
| 859c0 | 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</ |
| 859e0 | 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"> |
| 85a00 | 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 69 6e 74 65 67 65 72 3a 20 54 29 3c 2f 63 6f 64 65 3e 3c | type</span>,.integer:.T)</code>< |
| 85a20 | 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 43 6f 75 6e 74 73 20 74 68 65 20 6e 75 6d 62 65 72 | /pre>.......<p>Counts.the.number |
| 85a40 | 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 2e 3c 2f 70 3e 0a | .of.bits.set.in.an.integer.</p>. |
| 85a60 | 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 66 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | ......<p>.......If.<code.class=" |
| 85a80 | 7a 69 67 22 3e 69 6e 74 65 67 65 72 3c 2f 63 6f 64 65 3e 20 69 73 20 6b 6e 6f 77 6e 20 61 74 20 | zig">integer</code>.is.known.at. |
| 85aa0 | 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> |
| 85ac0 | 2c 0a 20 20 20 20 20 20 74 68 65 20 72 65 74 75 72 6e 20 74 79 70 65 20 69 73 20 3c 63 6f 64 65 | ,.......the.return.type.is.<code |
| 85ae0 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | .class="zig"><span.class="tok-ty |
| 85b00 | 70 65 22 3e 63 6f 6d 70 74 69 6d 65 5f 69 6e 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a | pe">comptime_int</span></code>.. |
| 85b20 | 20 20 20 20 20 20 4f 74 68 65 72 77 69 73 65 2c 20 74 68 65 20 72 65 74 75 72 6e 20 74 79 70 65 | ......Otherwise,.the.return.type |
| 85b40 | 20 69 73 20 61 6e 20 75 6e 73 69 67 6e 65 64 20 69 6e 74 65 67 65 72 20 77 69 74 68 20 74 68 65 | .is.an.unsigned.integer.with.the |
| 85b60 | 20 6d 69 6e 69 6d 75 6d 20 6e 75 6d 62 65 72 0a 20 20 20 20 20 20 6f 66 20 62 69 74 73 20 74 68 | .minimum.number.......of.bits.th |
| 85b80 | 61 74 20 63 61 6e 20 72 65 70 72 65 73 65 6e 74 20 74 68 65 20 62 69 74 20 63 6f 75 6e 74 20 6f | at.can.represent.the.bit.count.o |
| 85ba0 | 66 20 74 68 65 20 69 6e 74 65 67 65 72 20 74 79 70 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 | f.the.integer.type........</p>.. |
| 85bc0 | 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 |
| 85be0 | 20 68 72 65 66 3d 22 23 63 74 7a 22 3e 40 63 74 7a 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c | .href="#ctz">@ctz</a></li>.<li>< |
| 85c00 | 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 69 3e 0a 3c 2f 75 6c | a.href="#clz">@clz</a></li>.</ul |
| 85c20 | 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 70 74 72 43 61 73 74 | >................<h2.id="ptrCast |
| 85c40 | 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 70 74 72 43 61 73 74 22 3e 40 70 74 72 43 61 73 | "><a.href="#toc-ptrCast">@ptrCas |
| 85c60 | 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 43 | t</a>.<a.class="hdr".href="#ptrC |
| 85c80 | 61 73 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f | ast">..</a></h2>........<pre><co |
| 85ca0 | 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | de.class="zig"><span.class="tok- |
| 85cc0 | 62 75 69 6c 74 69 6e 22 3e 40 70 74 72 43 61 73 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 | builtin">@ptrCast</span>(<span.c |
| 85ce0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 44 65 | lass="tok-kw">comptime</span>.De |
| 85d00 | 73 74 54 79 70 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 | stType:.<span.class="tok-type">t |
| 85d20 | 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 76 61 6c 75 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ype</span>,.value:.<span.class=" |
| 85d40 | 74 6f 6b 2d 6b 77 22 3e 61 6e 79 74 79 70 65 3c 2f 73 70 61 6e 3e 29 20 44 65 73 74 54 79 70 65 | tok-kw">anytype</span>).DestType |
| 85d60 | 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 43 6f | </code></pre>.......<p>.......Co |
| 85d80 | 6e 76 65 72 74 73 20 61 20 70 6f 69 6e 74 65 72 20 6f 66 20 6f 6e 65 20 74 79 70 65 20 74 6f 20 | nverts.a.pointer.of.one.type.to. |
| 85da0 | 61 20 70 6f 69 6e 74 65 72 20 6f 66 20 61 6e 6f 74 68 65 72 20 74 79 70 65 2e 0a 20 20 20 20 20 | a.pointer.of.another.type....... |
| 85dc0 | 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 22 23 | .</p>.......<p>.......<a.href="# |
| 85de0 | 4f 70 74 69 6f 6e 61 6c 2d 50 6f 69 6e 74 65 72 73 22 3e 4f 70 74 69 6f 6e 61 6c 20 50 6f 69 6e | Optional-Pointers">Optional.Poin |
| 85e00 | 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 67 20 61 6e | ters</a>.are.allowed..Casting.an |
| 85e20 | 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 61 20 68 72 | .optional.pointer.which.is.<a.hr |
| 85e40 | 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 20 61 20 6e | ef="#null">null</a>.......to.a.n |
| 85e60 | 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 73 61 66 65 | on-optional.pointer.invokes.safe |
| 85e80 | 74 79 2d 63 68 65 63 6b 65 64 20 3c 61 20 68 72 65 66 3d 22 23 55 6e 64 65 66 69 6e 65 64 2d 42 | ty-checked.<a.href="#Undefined-B |
| 85ea0 | 65 68 61 76 69 6f 72 22 3e 55 6e 64 65 66 69 6e 65 64 20 42 65 68 61 76 69 6f 72 3c 2f 61 3e 2e | ehavior">Undefined.Behavior</a>. |
| 85ec0 | 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 | .......</p>...............<h2.id |
| 85ee0 | 3d 22 70 74 72 54 6f 49 6e 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 70 74 72 54 6f 49 | ="ptrToInt"><a.href="#toc-ptrToI |
| 85f00 | 6e 74 22 3e 40 70 74 72 54 6f 49 6e 74 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 | nt">@ptrToInt</a>.<a.class="hdr" |
| 85f20 | 20 68 72 65 66 3d 22 23 70 74 72 54 6f 49 6e 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 | .href="#ptrToInt">..</a></h2>... |
| 85f40 | 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 | .....<pre><code.class="zig"><spa |
| 85f60 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 70 74 72 54 6f 49 6e 74 3c | n.class="tok-builtin">@ptrToInt< |
| 85f80 | 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 |
| 85fa0 | 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=" |
| 85fc0 | 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 | tok-type">usize</span></code></p |
| 85fe0 | 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 3c 63 6f | re>.......<p>.......Converts.<co |
| 86000 | 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 76 61 6c 75 65 3c 2f 63 6f 64 65 3e 20 74 6f 20 61 | de.class="zig">value</code>.to.a |
| 86020 | 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | .<code.class="zig"><span.class=" |
| 86040 | 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 77 68 | tok-type">usize</span></code>.wh |
| 86060 | 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 69 6e 74 65 | ich.is.the.address.of.the.pointe |
| 86080 | 72 2e 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 76 61 6c 75 65 3c 2f 63 6f 64 65 | r..<code.class="zig">value</code |
| 860a0 | 3e 20 63 61 6e 20 62 65 20 6f 6e 65 20 6f 66 20 74 68 65 73 65 20 74 79 70 65 73 3a 0a 20 20 20 | >.can.be.one.of.these.types:.... |
| 860c0 | 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 | ...</p>.......<ul>...........<li |
| 860e0 | 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 2a 54 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 | ><code.class="zig">*T</code></li |
| 86100 | 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | >...........<li><code.class="zig |
| 86120 | 22 3e 3f 2a 54 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e | ">?*T</code></li>...........<li> |
| 86140 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | <code.class="zig"><span.class="t |
| 86160 | 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 28 29 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 | ok-kw">fn</span>()</code></li>.. |
| 86180 | 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3f | .........<li><code.class="zig">? |
| 861a0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 28 29 | <span.class="tok-kw">fn</span>() |
| 861c0 | 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c | </code></li>.......</ul>.......< |
| 861e0 | 70 3e 54 6f 20 63 6f 6e 76 65 72 74 20 74 68 65 20 6f 74 68 65 72 20 77 61 79 2c 20 75 73 65 20 | p>To.convert.the.other.way,.use. |
| 86200 | 3c 61 20 68 72 65 66 3d 22 23 69 6e 74 54 6f 50 74 72 22 3e 40 69 6e 74 54 6f 50 74 72 3c 2f 61 | <a.href="#intToPtr">@intToPtr</a |
| 86220 | 3e 3c 2f 70 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 72 65 6d | ></p>................<h2.id="rem |
| 86240 | 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 72 65 6d 22 3e 40 72 65 6d 3c 2f 61 3e 20 3c 61 | "><a.href="#toc-rem">@rem</a>.<a |
| 86260 | 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 72 65 6d 22 3e c2 a7 3c 2f 61 3e 3c | .class="hdr".href="#rem">..</a>< |
| 86280 | 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | /h2>........<pre><code.class="zi |
| 862a0 | 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 72 65 | g"><span.class="tok-builtin">@re |
| 862c0 | 6d 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 | m</span>(numerator:.T,.denominat |
| 862e0 | 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>. |
| 86300 | 20 20 20 20 20 20 52 65 6d 61 69 6e 64 65 72 20 64 69 76 69 73 69 6f 6e 2e 20 46 6f 72 20 75 6e | ......Remainder.division..For.un |
| 86320 | 73 69 67 6e 65 64 20 69 6e 74 65 67 65 72 73 20 74 68 69 73 20 69 73 20 74 68 65 20 73 61 6d 65 | signed.integers.this.is.the.same |
| 86340 | 20 61 73 0a 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 6e 75 6d 65 | .as.......<code.class="zig">nume |
| 86360 | 72 61 74 6f 72 20 25 20 64 65 6e 6f 6d 69 6e 61 74 6f 72 3c 2f 63 6f 64 65 3e 2e 20 43 61 6c 6c | rator.%.denominator</code>..Call |
| 86380 | 65 72 20 67 75 61 72 61 6e 74 65 65 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e | er.guarantees.<code.class="zig"> |
| 863a0 | 64 65 6e 6f 6d 69 6e 61 74 6f 72 20 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | denominator.>.<span.class="to |
| 863c0 | 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 2e 0a 20 20 20 20 20 | k-number">0</span></code>....... |
| 863e0 | 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c | .</p>.......<ul>...........<li>< |
| 86400 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | code.class="zig"><span.class="to |
| 86420 | 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 72 65 6d 3c 2f 73 70 61 6e 3e 28 2d 3c 73 70 61 6e 20 63 6c | k-builtin">@rem</span>(-<span.cl |
| 86440 | 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 |
| 86460 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 29 20 3d 3d | .class="tok-number">3</span>).== |
| 86480 | 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 73 70 | .-<span.class="tok-number">2</sp |
| 864a0 | 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 |
| 864c0 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ode.class="zig">(<span.class="to |
| 864e0 | 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 64 69 76 54 72 75 6e 63 3c 2f 73 70 61 6e 3e 28 61 2c 20 62 | k-builtin">@divTrunc</span>(a,.b |
| 86500 | 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 |
| 86520 | 6e 22 3e 40 72 65 6d 3c 2f 73 70 61 6e 3e 28 61 2c 20 62 29 20 3d 3d 20 61 3c 2f 63 6f 64 65 3e | n">@rem</span>(a,.b).==.a</code> |
| 86540 | 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 |
| 86560 | 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. |
| 86580 | 63 6f 64 65 2c 20 73 65 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 | code,.see.<code.class="zig"><spa |
| 865a0 | 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 |
| 865c0 | 70 61 6e 3e 28 3c 73 70 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">" |
| 865e0 | 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 6d 61 74 68 2e 72 65 6d 3c 2f 63 6f 64 | ;std"</span>).math.rem</cod |
| 86600 | 65 3e 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 | e>.</p>.......<p>See.also:</p><u |
| 86620 | 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 6d 6f 64 22 3e 40 6d 6f 64 3c 2f 61 3e 3c 2f | l>.<li><a.href="#mod">@mod</a></ |
| 86640 | 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d | li>.</ul>................<h2.id= |
| 86660 | 22 72 65 74 75 72 6e 41 64 64 72 65 73 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 72 65 | "returnAddress"><a.href="#toc-re |
| 86680 | 74 75 72 6e 41 64 64 72 65 73 73 22 3e 40 72 65 74 75 72 6e 41 64 64 72 65 73 73 3c 2f 61 3e 20 | turnAddress">@returnAddress</a>. |
| 866a0 | 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 72 65 74 75 72 6e 41 64 64 72 | <a.class="hdr".href="#returnAddr |
| 866c0 | 65 73 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f | ess">..</a></h2>........<pre><co |
| 866e0 | 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | de.class="zig"><span.class="tok- |
| 86700 | 62 75 69 6c 74 69 6e 22 3e 40 72 65 74 75 72 6e 41 64 64 72 65 73 73 3c 2f 73 70 61 6e 3e 28 29 | builtin">@returnAddress</span>() |
| 86720 | 20 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 |
| 86740 | 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>..... |
| 86760 | 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 61 64 64 72 | ..This.function.returns.the.addr |
| 86780 | 65 73 73 20 6f 66 20 74 68 65 20 6e 65 78 74 20 6d 61 63 68 69 6e 65 20 63 6f 64 65 20 69 6e 73 | ess.of.the.next.machine.code.ins |
| 867a0 | 74 72 75 63 74 69 6f 6e 20 74 68 61 74 20 77 69 6c 6c 20 62 65 20 65 78 65 63 75 74 65 64 0a 20 | truction.that.will.be.executed.. |
| 867c0 | 20 20 20 20 20 77 68 65 6e 20 74 68 65 20 63 75 72 72 65 6e 74 20 66 75 6e 63 74 69 6f 6e 20 72 | .....when.the.current.function.r |
| 867e0 | 65 74 75 72 6e 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 | eturns........</p>.......<p>.... |
| 86800 | 20 20 20 54 68 65 20 69 6d 70 6c 69 63 61 74 69 6f 6e 73 20 6f 66 20 74 68 69 73 20 61 72 65 20 | ...The.implications.of.this.are. |
| 86820 | 74 61 72 67 65 74 20 73 70 65 63 69 66 69 63 20 61 6e 64 20 6e 6f 74 20 63 6f 6e 73 69 73 74 65 | target.specific.and.not.consiste |
| 86840 | 6e 74 20 61 63 72 6f 73 73 0a 20 20 20 20 20 20 61 6c 6c 20 70 6c 61 74 66 6f 72 6d 73 2e 0a 20 | nt.across.......all.platforms... |
| 86860 | 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 66 | .....</p>.......<p>.......This.f |
| 86880 | 75 6e 63 74 69 6f 6e 20 69 73 20 6f 6e 6c 79 20 76 61 6c 69 64 20 77 69 74 68 69 6e 20 66 75 6e | unction.is.only.valid.within.fun |
| 868a0 | 63 74 69 6f 6e 20 73 63 6f 70 65 2e 20 49 66 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 | ction.scope..If.the.function.get |
| 868c0 | 73 20 69 6e 6c 69 6e 65 64 20 69 6e 74 6f 0a 20 20 20 20 20 20 61 20 63 61 6c 6c 69 6e 67 20 66 | s.inlined.into.......a.calling.f |
| 868e0 | 75 6e 63 74 69 6f 6e 2c 20 74 68 65 20 72 65 74 75 72 6e 65 64 20 61 64 64 72 65 73 73 20 77 69 | unction,.the.returned.address.wi |
| 86900 | 6c 6c 20 61 70 70 6c 79 20 74 6f 20 74 68 65 20 63 61 6c 6c 69 6e 67 20 66 75 6e 63 74 69 6f 6e | ll.apply.to.the.calling.function |
| 86920 | 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 | ........</p>..............<h2.id |
| 86940 | 3d 22 73 65 74 41 6c 69 67 6e 53 74 61 63 6b 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 73 | ="setAlignStack"><a.href="#toc-s |
| 86960 | 65 74 41 6c 69 67 6e 53 74 61 63 6b 22 3e 40 73 65 74 41 6c 69 67 6e 53 74 61 63 6b 3c 2f 61 3e | etAlignStack">@setAlignStack</a> |
| 86980 | 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 41 6c 69 67 6e 53 | .<a.class="hdr".href="#setAlignS |
| 869a0 | 74 61 63 6b 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 | tack">..</a></h2>........<pre><c |
| 869c0 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ode.class="zig"><span.class="tok |
| 869e0 | 2d 62 75 69 6c 74 69 6e 22 3e 40 73 65 74 41 6c 69 67 6e 53 74 61 63 6b 3c 2f 73 70 61 6e 3e 28 | -builtin">@setAlignStack</span>( |
| 86a00 | 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 |
| 86a20 | 70 61 6e 3e 20 61 6c 69 67 6e 6d 65 6e 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | pan>.alignment:.<span.class="tok |
| 86a40 | 2d 74 79 70 65 22 3e 75 32 39 3c 2f 73 70 61 6e 3e 29 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a | -type">u29</span>)</code></pre>. |
| 86a60 | 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 45 6e 73 75 72 65 73 20 74 68 61 74 20 61 20 66 | ......<p>.......Ensures.that.a.f |
| 86a80 | 75 6e 63 74 69 6f 6e 20 77 69 6c 6c 20 68 61 76 65 20 61 20 73 74 61 63 6b 20 61 6c 69 67 6e 6d | unction.will.have.a.stack.alignm |
| 86aa0 | 65 6e 74 20 6f 66 20 61 74 20 6c 65 61 73 74 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | ent.of.at.least.<code.class="zig |
| 86ac0 | 22 3e 61 6c 69 67 6e 6d 65 6e 74 3c 2f 63 6f 64 65 3e 20 62 79 74 65 73 2e 0a 20 20 20 20 20 20 | ">alignment</code>.bytes........ |
| 86ae0 | 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 73 65 74 43 6f | </p>...............<h2.id="setCo |
| 86b00 | 6c 64 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 73 65 74 43 6f 6c 64 22 3e 40 73 65 74 43 | ld"><a.href="#toc-setCold">@setC |
| 86b20 | 6f 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 73 65 | old</a>.<a.class="hdr".href="#se |
| 86b40 | 74 43 6f 6c 64 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c | tCold">..</a></h2>........<pre>< |
| 86b60 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | code.class="zig"><span.class="to |
| 86b80 | 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 65 74 43 6f 6c 64 3c 2f 73 70 61 6e 3e 28 69 73 5f 63 6f | k-builtin">@setCold</span>(is_co |
| 86ba0 | 6c 64 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c | ld:.<span.class="tok-type">bool< |
| 86bc0 | 2f 73 70 61 6e 3e 29 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 | /span>)</code></pre>.......<p>.. |
| 86be0 | 20 20 20 20 20 54 65 6c 6c 73 20 74 68 65 20 6f 70 74 69 6d 69 7a 65 72 20 74 68 61 74 20 61 20 | .....Tells.the.optimizer.that.a. |
| 86c00 | 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 2e 0a 20 20 20 20 20 | function.is.rarely.called....... |
| 86c20 | 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 73 65 74 45 | .</p>...............<h2.id="setE |
| 86c40 | 76 61 6c 42 72 61 6e 63 68 51 75 6f 74 61 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 73 65 | valBranchQuota"><a.href="#toc-se |
| 86c60 | 74 45 76 61 6c 42 72 61 6e 63 68 51 75 6f 74 61 22 3e 40 73 65 74 45 76 61 6c 42 72 61 6e 63 68 | tEvalBranchQuota">@setEvalBranch |
| 86c80 | 51 75 6f 74 61 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 | Quota</a>.<a.class="hdr".href="# |
| 86ca0 | 73 65 74 45 76 61 6c 42 72 61 6e 63 68 51 75 6f 74 61 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a | setEvalBranchQuota">..</a></h2>. |
| 86cc0 | 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 | .......<pre><code.class="zig"><s |
| 86ce0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 65 74 45 76 61 6c | pan.class="tok-builtin">@setEval |
| 86d00 | 42 72 61 6e 63 68 51 75 6f 74 61 3c 2f 73 70 61 6e 3e 28 6e 65 77 5f 71 75 6f 74 61 3a 20 3c 73 | BranchQuota</span>(new_quota:.<s |
| 86d20 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 29 | pan.class="tok-type">u32</span>) |
| 86d40 | 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 43 68 | </code></pre>.......<p>.......Ch |
| 86d60 | 61 6e 67 65 73 20 74 68 65 20 6d 61 78 69 6d 75 6d 20 6e 75 6d 62 65 72 20 6f 66 20 62 61 63 6b | anges.the.maximum.number.of.back |
| 86d80 | 77 61 72 64 73 20 62 72 61 6e 63 68 65 73 20 74 68 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 | wards.branches.that.compile-time |
| 86da0 | 20 63 6f 64 65 0a 20 20 20 20 20 20 65 78 65 63 75 74 69 6f 6e 20 63 61 6e 20 75 73 65 20 62 65 | .code.......execution.can.use.be |
| 86dc0 | 66 6f 72 65 20 67 69 76 69 6e 67 20 75 70 20 61 6e 64 20 6d 61 6b 69 6e 67 20 61 20 63 6f 6d 70 | fore.giving.up.and.making.a.comp |
| 86de0 | 69 6c 65 20 65 72 72 6f 72 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a | ile.error........</p>.......<p>. |
| 86e00 | 20 20 20 20 20 20 49 66 20 74 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 6e | ......If.the.<code.class="zig">n |
| 86e20 | 65 77 5f 71 75 6f 74 61 3c 2f 63 6f 64 65 3e 20 69 73 20 73 6d 61 6c 6c 65 72 20 74 68 61 6e 20 | ew_quota</code>.is.smaller.than. |
| 86e40 | 74 68 65 20 64 65 66 61 75 6c 74 20 71 75 6f 74 61 20 28 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | the.default.quota.(<code.class=" |
| 86e60 | 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 | zig"><span.class="tok-number">10 |
| 86e80 | 30 30 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 29 20 6f 72 0a 20 20 20 20 20 20 61 20 70 72 65 | 00</span></code>).or.......a.pre |
| 86ea0 | 76 69 6f 75 73 6c 79 20 65 78 70 6c 69 63 69 74 6c 79 20 73 65 74 20 71 75 6f 74 61 2c 20 69 74 | viously.explicitly.set.quota,.it |
| 86ec0 | 20 69 73 20 69 67 6e 6f 72 65 64 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 | .is.ignored........</p>.......<p |
| 86ee0 | 3e 0a 20 20 20 20 20 20 45 78 61 6d 70 6c 65 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 | >.......Example:.......</p>..... |
| 86f00 | 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 | ..<p.class="file">test.zig</p><p |
| 86f20 | 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | re><code.class="zig"><span.class |
| 86f40 | 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 |
| 86f60 | 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 |
| 86f80 | 6e 3e 20 7b 0a 20 20 20 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 |
| 86fa0 | 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 |
| 86fc0 | 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 |
| 86fe0 | 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>;.. |
| 87000 | 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 6c | .......<span.class="tok-kw">whil |
| 87020 | 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 6f | e</span>.(i.<.<span.class="to |
| 87040 | 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 2b 3d 20 3c | k-number">1001</span>).:.(i.+=.< |
| 87060 | 73 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> |
| 87080 | 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 70 72 65 3e 3c 63 | ).{}.....}.}</code></pre><pre><c |
| 870a0 | 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 | ode.class="shell">$.zig.test.tes |
| 870c0 | 74 2e 7a 69 67 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 | t.zig.<span.class="t0_1">./docge |
| 870e0 | 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 34 3a 39 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e | n_tmp/test.zig:4:9:.</span><span |
| 87100 | 20 63 6c 61 73 73 3d 22 74 33 31 5f 31 22 3e 65 72 72 6f 72 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 | .class="t31_1">error:.</span><sp |
| 87120 | 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 65 76 61 6c 75 61 74 69 6f 6e 20 65 78 63 65 65 | an.class="t0_1">evaluation.excee |
| 87140 | 64 65 64 20 31 30 30 30 20 62 61 63 6b 77 61 72 64 73 20 62 72 61 6e 63 68 65 73 3c 2f 73 70 61 | ded.1000.backwards.branches</spa |
| 87160 | 6e 3e 0a 20 20 20 20 20 20 20 20 77 68 69 6c 65 20 28 69 20 26 6c 74 3b 20 31 30 30 31 29 20 3a | n>.........while.(i.<.1001).: |
| 87180 | 20 28 69 20 2b 3d 20 31 29 20 7b 7d 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | .(i.+=.1).{}.........<span.class |
| 871a0 | 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ="t32_1">^</span>.<span.class="t |
| 871c0 | 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 31 3a 31 32 3a | 0_1">./docgen_tmp/test.zig:1:12: |
| 871e0 | 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 36 5f 31 22 3e 6e 6f 74 65 | .</span><span.class="t36_1">note |
| 87200 | 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 72 65 66 65 | :.</span><span.class="t0_1">refe |
| 87220 | 72 65 6e 63 65 64 20 68 65 72 65 3c 2f 73 70 61 6e 3e 0a 74 65 73 74 20 26 71 75 6f 74 3b 66 6f | renced.here</span>.test."fo |
| 87240 | 6f 26 71 75 6f 74 3b 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | o".{............<span.class |
| 87260 | 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a | ="t32_1">^</span>.</code></pre>. |
| 87280 | 0a 20 20 20 20 20 20 3c 70 3e 4e 6f 77 20 77 65 20 75 73 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 | .......<p>Now.we.use.<code.class |
| 872a0 | 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 | ="zig"><span.class="tok-builtin" |
| 872c0 | 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 3c 2f 63 6f 64 | >@setEvalBranchQuota</span></cod |
| 872e0 | 65 3e 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 | e>:</p>.......<p.class="file">te |
| 87300 | 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | st.zig</p><pre><code.class="zig" |
| 87320 | 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 |
| 87340 | 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 |
| 87360 | 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 |
| 87380 | 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>.{..... |
| 873a0 | 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 73 | ....<span.class="tok-builtin">@s |
| 873c0 | 65 74 45 76 61 6c 42 72 61 6e 63 68 51 75 6f 74 61 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 | etEvalBranchQuota</span>(<span.c |
| 873e0 | 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 3e 29 3b 0a | lass="tok-number">1001</span>);. |
| 87400 | 20 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 |
| 87420 | 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 |
| 87440 | 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | ber">0</span>;.........<span.cla |
| 87460 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 77 68 69 6c 65 3c 2f 73 70 61 6e 3e 20 28 69 20 26 6c 74 3b | ss="tok-kw">while</span>.(i.< |
| 87480 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 30 31 3c 2f | .<span.class="tok-number">1001</ |
| 874a0 | 73 70 61 6e 3e 29 20 3a 20 28 69 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | span>).:.(i.+=.<span.class="tok- |
| 874c0 | 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 20 7b 7d 0a 20 20 20 20 7d 0a 7d 3c 2f 63 6f | number">1</span>).{}.....}.}</co |
| 874e0 | 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c | de></pre><pre><code.class="shell |
| 87500 | 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 31 2f 31 20 74 65 73 74 20 26 | ">$.zig.test.test.zig.1/1.test.& |
| 87520 | 71 75 6f 74 3b 66 6f 6f 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 | quot;foo"....OK.All.1.tests |
| 87540 | 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 0a 20 20 20 20 20 20 3c | .passed..</code></pre>.........< |
| 87560 | 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= |
| 87580 | 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 2f | "#comptime">comptime</a></li>.</ |
| 875a0 | 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 73 65 74 46 6c | ul>................<h2.id="setFl |
| 875c0 | 6f 61 74 4d 6f 64 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 73 65 74 46 6c 6f 61 74 4d | oatMode"><a.href="#toc-setFloatM |
| 875e0 | 6f 64 65 22 3e 40 73 65 74 46 6c 6f 61 74 4d 6f 64 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d | ode">@setFloatMode</a>.<a.class= |
| 87600 | 22 68 64 72 22 20 68 72 65 66 3d 22 23 73 65 74 46 6c 6f 61 74 4d 6f 64 65 22 3e c2 a7 3c 2f 61 | "hdr".href="#setFloatMode">..</a |
| 87620 | 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | ></h2>........<pre><code.class=" |
| 87640 | 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 | zig"><span.class="tok-builtin">@ |
| 87660 | 73 65 74 46 6c 6f 61 74 4d 6f 64 65 3c 2f 73 70 61 6e 3e 28 6d 6f 64 65 3a 20 3c 73 70 61 6e 20 | setFloatMode</span>(mode:.<span. |
| 87680 | 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 |
| 876a0 | 6e 3e 28 3c 73 70 61 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 |
| 876c0 | 75 69 6c 74 69 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 46 6c 6f 61 74 4d 6f 64 65 29 3c | uiltin"</span>).FloatMode)< |
| 876e0 | 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 74 | /code></pre>.......<p>.......Set |
| 87700 | 73 20 74 68 65 20 66 6c 6f 61 74 69 6e 67 20 70 6f 69 6e 74 20 6d 6f 64 65 20 6f 66 20 74 68 65 | s.the.floating.point.mode.of.the |
| 87720 | 20 63 75 72 72 65 6e 74 20 73 63 6f 70 65 2e 20 50 6f 73 73 69 62 6c 65 20 76 61 6c 75 65 73 20 | .current.scope..Possible.values. |
| 87740 | 61 72 65 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 | are:.......</p>.......<pre><code |
| 87760 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | .class="zig"><span.class="tok-kw |
| 87780 | 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 |
| 877a0 | 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 46 6c 6f 61 74 4d 6f 64 65 20 3d 20 3c 73 70 61 6e | ">const</span>.FloatMode.=.<span |
| 877c0 | 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 20 | .class="tok-kw">enum</span>.{... |
| 877e0 | 20 20 53 74 72 69 63 74 2c 0a 20 20 20 20 4f 70 74 69 6d 69 7a 65 64 2c 0a 7d 3b 3c 2f 63 6f 64 | ..Strict,.....Optimized,.};</cod |
| 87800 | 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e | e></pre>.......<ul>.........<li> |
| 87820 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 53 | .............<code.class="zig">S |
| 87840 | 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 69 6e | trict</code>.(default).-.Floatin |
| 87860 | 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 63 74 | g.point.operations.follow.strict |
| 87880 | 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 3e 0a | .IEEE.compliance..........</li>. |
| 878a0 | 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 20 63 | ........<li>.............<code.c |
| 878c0 | 6c 61 73 73 3d 22 7a 69 67 22 3e 4f 70 74 69 6d 69 7a 65 64 3c 2f 63 6f 64 65 3e 20 2d 20 46 6c | lass="zig">Optimized</code>.-.Fl |
| 878e0 | 6f 61 74 69 6e 67 20 70 6f 69 6e 74 20 6f 70 65 72 61 74 69 6f 6e 73 20 6d 61 79 20 64 6f 20 61 | oating.point.operations.may.do.a |
| 87900 | 6c 6c 20 6f 66 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 3a 0a 20 20 20 20 20 20 20 20 20 20 3c | ll.of.the.following:...........< |
| 87920 | 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 41 73 73 75 6d 65 20 74 68 65 20 61 | ul>.............<li>Assume.the.a |
| 87940 | 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 4e 61 4e 2e | rguments.and.result.are.not.NaN. |
| 87960 | 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 74 6f 20 72 | .Optimizations.are.required.to.r |
| 87980 | 65 74 61 69 6e 20 64 65 66 69 6e 65 64 20 62 65 68 61 76 69 6f 72 20 6f 76 65 72 20 4e 61 4e 73 | etain.defined.behavior.over.NaNs |
| 879a0 | 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 74 20 69 73 | ,.but.the.value.of.the.result.is |
| 879c0 | 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 20 3c 6c 69 | .undefined.</li>.............<li |
| 879e0 | 3e 41 73 73 75 6d 65 20 74 68 65 20 61 72 67 75 6d 65 6e 74 73 20 61 6e 64 20 72 65 73 75 6c 74 | >Assume.the.arguments.and.result |
| 87a00 | 20 61 72 65 20 6e 6f 74 20 2b 2f 2d 49 6e 66 2e 20 4f 70 74 69 6d 69 7a 61 74 69 6f 6e 73 20 61 | .are.not.+/-Inf..Optimizations.a |
| 87a20 | 72 65 20 72 65 71 75 69 72 65 64 20 74 6f 20 72 65 74 61 69 6e 20 64 65 66 69 6e 65 64 20 62 65 | re.required.to.retain.defined.be |
| 87a40 | 68 61 76 69 6f 72 20 6f 76 65 72 20 2b 2f 2d 49 6e 66 2c 20 62 75 74 20 74 68 65 20 76 61 6c 75 | havior.over.+/-Inf,.but.the.valu |
| 87a60 | 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 2f 6c | e.of.the.result.is.undefined.</l |
| 87a80 | 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 54 72 65 61 74 20 74 68 65 20 73 69 67 | i>.............<li>Treat.the.sig |
| 87aa0 | 6e 20 6f 66 20 61 20 7a 65 72 6f 20 61 72 67 75 6d 65 6e 74 20 6f 72 20 72 65 73 75 6c 74 20 61 | n.of.a.zero.argument.or.result.a |
| 87ac0 | 73 20 69 6e 73 69 67 6e 69 66 69 63 61 6e 74 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 | s.insignificant.</li>........... |
| 87ae0 | 20 20 3c 6c 69 3e 55 73 65 20 74 68 65 20 72 65 63 69 70 72 6f 63 61 6c 20 6f 66 20 61 6e 20 61 | ..<li>Use.the.reciprocal.of.an.a |
| 87b00 | 72 67 75 6d 65 6e 74 20 72 61 74 68 65 72 20 74 68 61 6e 20 70 65 72 66 6f 72 6d 20 64 69 76 69 | rgument.rather.than.perform.divi |
| 87b20 | 73 69 6f 6e 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 50 65 72 66 6f | sion.</li>.............<li>Perfo |
| 87b40 | 72 6d 20 66 6c 6f 61 74 69 6e 67 2d 70 6f 69 6e 74 20 63 6f 6e 74 72 61 63 74 69 6f 6e 20 28 65 | rm.floating-point.contraction.(e |
| 87b60 | 2e 67 2e 20 66 75 73 69 6e 67 20 61 20 6d 75 6c 74 69 70 6c 79 20 66 6f 6c 6c 6f 77 65 64 20 62 | .g..fusing.a.multiply.followed.b |
| 87b80 | 79 20 61 6e 20 61 64 64 69 74 69 6f 6e 20 69 6e 74 6f 20 61 20 66 75 73 65 64 20 6d 75 6c 74 69 | y.an.addition.into.a.fused.multi |
| 87ba0 | 70 6c 79 2d 61 6e 64 2d 61 64 64 29 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c | ply-and-add).</li>.............< |
| 87bc0 | 6c 69 3e 50 65 72 66 6f 72 6d 20 61 6c 67 65 62 72 61 69 63 61 6c 6c 79 20 65 71 75 69 76 61 6c | li>Perform.algebraically.equival |
| 87be0 | 65 6e 74 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 73 20 74 68 61 74 20 6d 61 79 20 63 68 61 | ent.transformations.that.may.cha |
| 87c00 | 6e 67 65 20 72 65 73 75 6c 74 73 20 69 6e 20 66 6c 6f 61 74 69 6e 67 20 70 6f 69 6e 74 20 28 65 | nge.results.in.floating.point.(e |
| 87c20 | 2e 67 2e 20 72 65 61 73 73 6f 63 69 61 74 65 29 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 | .g..reassociate).</li>.......... |
| 87c40 | 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 54 68 69 73 20 69 73 20 65 71 75 69 76 61 6c | .</ul>...........This.is.equival |
| 87c60 | 65 6e 74 20 74 6f 20 3c 63 6f 64 65 3e 2d 66 66 61 73 74 2d 6d 61 74 68 3c 2f 63 6f 64 65 3e 20 | ent.to.<code>-ffast-math</code>. |
| 87c80 | 69 6e 20 47 43 43 2e 0a 20 20 20 20 20 20 20 20 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c | in.GCC..........</li>.......</ul |
| 87ca0 | 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 20 66 6c 6f 61 74 69 6e 67 20 70 | >.......<p>.......The.floating.p |
| 87cc0 | 6f 69 6e 74 20 6d 6f 64 65 20 69 73 20 69 6e 68 65 72 69 74 65 64 20 62 79 20 63 68 69 6c 64 20 | oint.mode.is.inherited.by.child. |
| 87ce0 | 73 63 6f 70 65 73 2c 20 61 6e 64 20 63 61 6e 20 62 65 20 6f 76 65 72 72 69 64 64 65 6e 20 69 6e | scopes,.and.can.be.overridden.in |
| 87d00 | 20 61 6e 79 20 73 63 6f 70 65 2e 0a 20 20 20 20 20 20 59 6f 75 20 63 61 6e 20 73 65 74 20 74 68 | .any.scope........You.can.set.th |
| 87d20 | 65 20 66 6c 6f 61 74 69 6e 67 20 70 6f 69 6e 74 20 6d 6f 64 65 20 69 6e 20 61 20 73 74 72 75 63 | e.floating.point.mode.in.a.struc |
| 87d40 | 74 20 6f 72 20 6d 6f 64 75 6c 65 20 73 63 6f 70 65 20 62 79 20 75 73 69 6e 67 20 61 20 63 6f 6d | t.or.module.scope.by.using.a.com |
| 87d60 | 70 74 69 6d 65 20 62 6c 6f 63 6b 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 | ptime.block........</p>.......<p |
| 87d80 | 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=" |
| 87da0 | 23 46 6c 6f 61 74 69 6e 67 2d 50 6f 69 6e 74 2d 4f 70 65 72 61 74 69 6f 6e 73 22 3e 46 6c 6f 61 | #Floating-Point-Operations">Floa |
| 87dc0 | 74 69 6e 67 20 50 6f 69 6e 74 20 4f 70 65 72 61 74 69 6f 6e 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c | ting.Point.Operations</a></li>.< |
| 87de0 | 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 73 65 74 52 | /ul>................<h2.id="setR |
| 87e00 | 75 6e 74 69 6d 65 53 61 66 65 74 79 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 73 65 74 52 | untimeSafety"><a.href="#toc-setR |
| 87e20 | 75 6e 74 69 6d 65 53 61 66 65 74 79 22 3e 40 73 65 74 52 75 6e 74 69 6d 65 53 61 66 65 74 79 3c | untimeSafety">@setRuntimeSafety< |
| 87e40 | 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 73 65 74 52 75 6e | /a>.<a.class="hdr".href="#setRun |
| 87e60 | 74 69 6d 65 53 61 66 65 74 79 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c | timeSafety">..</a></h2>........< |
| 87e80 | 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 | pre><code.class="zig"><span.clas |
| 87ea0 | 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 65 74 52 75 6e 74 69 6d 65 53 61 66 65 74 | s="tok-builtin">@setRuntimeSafet |
| 87ec0 | 79 3c 2f 73 70 61 6e 3e 28 73 61 66 65 74 79 5f 6f 6e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | y</span>(safety_on:.<span.class= |
| 87ee0 | 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 29 3c 2f 63 6f 64 65 3e 3c 2f | "tok-type">bool</span>)</code></ |
| 87f00 | 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 53 65 74 73 20 77 68 65 74 68 65 | pre>.......<p>.......Sets.whethe |
| 87f20 | 72 20 72 75 6e 74 69 6d 65 20 73 61 66 65 74 79 20 63 68 65 63 6b 73 20 61 72 65 20 65 6e 61 62 | r.runtime.safety.checks.are.enab |
| 87f40 | 6c 65 64 20 66 6f 72 20 74 68 65 20 73 63 6f 70 65 20 74 68 61 74 20 63 6f 6e 74 61 69 6e 73 20 | led.for.the.scope.that.contains. |
| 87f60 | 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 3e 0a 20 20 | the.function.call........</p>... |
| 87f80 | 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e | ....<p.class="file">test.zig</p> |
| 87fa0 | 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 | <pre><code.class="zig"><span.cla |
| 87fc0 | 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 |
| 87fe0 | 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 40 73 65 74 52 75 6e 74 69 6d 65 53 | ass="tok-str">"@setRuntimeS |
| 88000 | 61 66 65 74 79 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 | afety"</span>.{.....<span.c |
| 88020 | 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 65 20 62 75 69 6c 74 69 | lass="tok-comment">//.The.builti |
| 88040 | 6e 20 61 70 70 6c 69 65 73 20 74 6f 20 74 68 65 20 73 63 6f 70 65 20 74 68 61 74 20 69 74 20 69 | n.applies.to.the.scope.that.it.i |
| 88060 | 73 20 63 61 6c 6c 65 64 20 69 6e 2e 20 53 6f 20 68 65 72 65 2c 20 69 6e 74 65 67 65 72 20 6f 76 | s.called.in..So.here,.integer.ov |
| 88080 | 65 72 66 6c 6f 77 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | erflow</span>.....<span.class="t |
| 880a0 | 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 77 69 6c 6c 20 6e 6f 74 20 62 65 20 63 61 75 67 68 | ok-comment">//.will.not.be.caugh |
| 880c0 | 74 20 69 6e 20 52 65 6c 65 61 73 65 46 61 73 74 20 61 6e 64 20 52 65 6c 65 61 73 65 53 6d 61 6c | t.in.ReleaseFast.and.ReleaseSmal |
| 880e0 | 6c 20 6d 6f 64 65 73 3a 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | l.modes:</span>.....<span.class= |
| 88100 | 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 76 61 72 20 78 3a 20 75 38 20 3d 20 32 35 35 | "tok-comment">//.var.x:.u8.=.255 |
| 88120 | 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 63 6f | ;</span>.....<span.class="tok-co |
| 88140 | 6d 6d 65 6e 74 22 3e 2f 2f 20 78 20 2b 3d 20 31 3b 20 2f 2f 20 75 6e 64 65 66 69 6e 65 64 20 62 | mment">//.x.+=.1;.//.undefined.b |
| 88160 | 65 68 61 76 69 6f 72 20 69 6e 20 52 65 6c 65 61 73 65 46 61 73 74 2f 52 65 6c 65 61 73 65 53 6d | ehavior.in.ReleaseFast/ReleaseSm |
| 88180 | 61 6c 6c 20 6d 6f 64 65 73 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 | all.modes.</span>.....{......... |
| 881a0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 48 6f 77 | <span.class="tok-comment">//.How |
| 881c0 | 65 76 65 72 20 74 68 69 73 20 62 6c 6f 63 6b 20 68 61 73 20 73 61 66 65 74 79 20 65 6e 61 62 6c | ever.this.block.has.safety.enabl |
| 881e0 | 65 64 2c 20 73 6f 20 73 61 66 65 74 79 20 63 68 65 63 6b 73 20 68 61 70 70 65 6e 20 68 65 72 65 | ed,.so.safety.checks.happen.here |
| 88200 | 2c 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ,</span>.........<span.class="to |
| 88220 | 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 65 76 65 6e 20 69 6e 20 52 65 6c 65 61 73 65 46 61 73 | k-comment">//.even.in.ReleaseFas |
| 88240 | 74 20 61 6e 64 20 52 65 6c 65 61 73 65 53 6d 61 6c 6c 20 6d 6f 64 65 73 2e 3c 2f 73 70 61 6e 3e | t.and.ReleaseSmall.modes.</span> |
| 88260 | 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 |
| 88280 | 6e 22 3e 40 73 65 74 52 75 6e 74 69 6d 65 53 61 66 65 74 79 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 | n">@setRuntimeSafety</span>(<spa |
| 882a0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 29 3b | n.class="tok-null">true</span>); |
| 882c0 | 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 | .........<span.class="tok-kw">va |
| 882e0 | 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 |
| 88300 | 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- |
| 88320 | 6e 75 6d 62 65 72 22 3e 32 35 35 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 20 20 20 20 78 20 2b 3d | number">255</span>;.........x.+= |
| 88340 | 20 3c 73 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 |
| 88360 | 6e 3e 3b 0a 0a 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e | n>;..........{.............<span |
| 88380 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 65 20 76 61 6c 75 | .class="tok-comment">//.The.valu |
| 883a0 | 65 20 63 61 6e 20 62 65 20 6f 76 65 72 72 69 64 64 65 6e 20 61 74 20 61 6e 79 20 73 63 6f 70 65 | e.can.be.overridden.at.any.scope |
| 883c0 | 2e 20 53 6f 20 68 65 72 65 20 69 6e 74 65 67 65 72 20 6f 76 65 72 66 6c 6f 77 3c 2f 73 70 61 6e | ..So.here.integer.overflow</span |
| 883e0 | 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 |
| 88400 | 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 77 6f 75 6c 64 20 6e 6f 74 20 62 65 20 63 61 75 67 68 74 20 69 | omment">//.would.not.be.caught.i |
| 88420 | 6e 20 61 6e 79 20 62 75 69 6c 64 20 6d 6f 64 65 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 | n.any.build.mode.</span>........ |
| 88440 | 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">@ |
| 88460 | 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 |
| 88480 | 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>);... |
| 884a0 | 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 | ..........<span.class="tok-comme |
| 884c0 | 6e 74 22 3e 2f 2f 20 76 61 72 20 78 3a 20 75 38 20 3d 20 32 35 35 3b 3c 2f 73 70 61 6e 3e 0a 20 | nt">//.var.x:.u8.=.255;</span>.. |
| 884e0 | 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d | ...........<span.class="tok-comm |
| 88500 | 65 6e 74 22 3e 2f 2f 20 78 20 2b 3d 20 31 3b 20 2f 2f 20 75 6e 64 65 66 69 6e 65 64 20 62 65 68 | ent">//.x.+=.1;.//.undefined.beh |
| 88520 | 61 76 69 6f 72 20 69 6e 20 61 6c 6c 20 62 75 69 6c 64 20 6d 6f 64 65 73 2e 3c 2f 73 70 61 6e 3e | avior.in.all.build.modes.</span> |
| 88540 | 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 7d 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c | .........}.....}.}</code></pre>< |
| 88560 | 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 | pre><code.class="shell">$.zig.te |
| 88580 | 73 74 20 74 65 73 74 2e 7a 69 67 2d 4f 52 65 6c 65 61 73 65 46 61 73 74 0a 31 2f 31 20 74 65 73 | st.test.zig-OReleaseFast.1/1.tes |
| 885a0 | 74 20 26 71 75 6f 74 3b 40 73 65 74 52 75 6e 74 69 6d 65 53 61 66 65 74 79 26 71 75 6f 74 3b 2e | t."@setRuntimeSafety". |
| 885c0 | 2e 2e 20 69 6e 74 65 67 65 72 20 6f 76 65 72 66 6c 6f 77 0a 65 72 72 6f 72 3a 20 74 68 65 20 66 | ...integer.overflow.error:.the.f |
| 885e0 | 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 64 | ollowing.test.command.crashed:.d |
| 88600 | 6f 63 67 65 6e 5f 74 6d 70 2f 7a 69 67 2d 63 61 63 68 65 2f 6f 2f 64 37 36 30 66 66 39 64 63 31 | ocgen_tmp/zig-cache/o/d760ff9dc1 |
| 88620 | 32 37 36 31 31 32 36 38 32 34 36 37 36 62 62 35 64 34 30 64 36 32 2f 74 65 73 74 0a 3c 2f 63 6f | 2761126824676bb5d40d62/test.</co |
| 88640 | 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 4e 6f 74 65 3a 20 69 74 20 69 73 20 | de></pre>........<p>Note:.it.is. |
| 88660 | 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 7a 69 67 6c | <a.href="https://github.com/zigl |
| 88680 | 61 6e 67 2f 7a 69 67 2f 69 73 73 75 65 73 2f 39 37 38 22 3e 70 6c 61 6e 6e 65 64 3c 2f 61 3e 20 | ang/zig/issues/978">planned</a>. |
| 886a0 | 74 6f 20 72 65 70 6c 61 63 65 0a 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | to.replace.......<code.class="zi |
| 886c0 | 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 65 | g"><span.class="tok-builtin">@se |
| 886e0 | 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 |
| 88700 | 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>. |
| 88720 | 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 73 68 6c 45 78 61 63 74 22 | ...............<h2.id="shlExact" |
| 88740 | 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 |
| 88760 | 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 |
| 88780 | 45 78 61 63 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c | Exact">..</a></h2>........<pre>< |
| 887a0 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | code.class="zig"><span.class="to |
| 887c0 | 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 68 6c 45 78 61 63 74 3c 2f 73 70 61 6e 3e 28 76 61 6c 75 | k-builtin">@shlExact</span>(valu |
| 887e0 | 65 3a 20 54 2c 20 73 68 69 66 74 5f 61 6d 74 3a 20 4c 6f 67 32 54 29 20 54 3c 2f 63 6f 64 65 3e | e:.T,.shift_amt:.Log2T).T</code> |
| 88800 | 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 50 65 72 66 6f 72 6d 73 20 | </pre>.......<p>.......Performs. |
| 88820 | 74 68 65 20 6c 65 66 74 20 73 68 69 66 74 20 6f 70 65 72 61 74 69 6f 6e 20 28 3c 63 6f 64 65 20 | the.left.shift.operation.(<code. |
| 88840 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 26 6c 74 3b 26 6c 74 3b 3c 2f 63 6f 64 65 3e 29 2e 20 43 61 | class="zig"><<</code>)..Ca |
| 88860 | 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 65 20 73 | ller.guarantees.......that.the.s |
| 88880 | 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 73 20 6f | hift.will.not.shift.any.1.bits.o |
| 888a0 | 75 74 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 | ut........</p>.......<p>.......T |
| 888c0 | 68 65 20 74 79 70 65 20 6f 66 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 73 68 69 | he.type.of.<code.class="zig">shi |
| 888e0 | 66 74 5f 61 6d 74 3c 2f 63 6f 64 65 3e 20 69 73 20 61 6e 20 75 6e 73 69 67 6e 65 64 20 69 6e 74 | ft_amt</code>.is.an.unsigned.int |
| 88900 | 65 67 65 72 20 77 69 74 68 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 6c 6f 67 32 | eger.with.<code.class="zig">log2 |
| 88920 | 28 54 2e 62 69 74 5f 63 6f 75 6e 74 29 3c 2f 63 6f 64 65 3e 20 62 69 74 73 2e 0a 20 20 20 20 20 | (T.bit_count)</code>.bits....... |
| 88940 | 20 20 20 20 20 20 20 20 20 54 68 69 73 20 69 73 20 62 65 63 61 75 73 65 20 3c 63 6f 64 65 20 63 | .........This.is.because.<code.c |
| 88960 | 6c 61 73 73 3d 22 7a 69 67 22 3e 73 68 69 66 74 5f 61 6d 74 20 26 67 74 3b 3d 20 54 2e 62 69 74 | lass="zig">shift_amt.>=.T.bit |
| 88980 | 5f 63 6f 75 6e 74 3c 2f 63 6f 64 65 3e 20 69 73 20 75 6e 64 65 66 69 6e 65 64 20 62 65 68 61 76 | _count</code>.is.undefined.behav |
| 889a0 | 69 6f 72 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 | ior........</p>.......<p>See.als |
| 889c0 | 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 72 45 78 61 63 | o:</p><ul>.<li><a.href="#shrExac |
| 889e0 | 74 22 3e 40 73 68 72 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">@shrExact</a></li>.<li><a.hre |
| 88a00 | 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 |
| 88a20 | 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>............ |
| 88a40 | 20 20 20 20 3c 68 32 20 69 64 3d 22 73 68 6c 57 69 74 68 4f 76 65 72 66 6c 6f 77 22 3e 3c 61 20 | ....<h2.id="shlWithOverflow"><a. |
| 88a60 | 68 72 65 66 3d 22 23 74 6f 63 2d 73 68 6c 57 69 74 68 4f 76 65 72 66 6c 6f 77 22 3e 40 73 68 6c | href="#toc-shlWithOverflow">@shl |
| 88a80 | 57 69 74 68 4f 76 65 72 66 6c 6f 77 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 | WithOverflow</a>.<a.class="hdr". |
| 88aa0 | 68 72 65 66 3d 22 23 73 68 6c 57 69 74 68 4f 76 65 72 66 6c 6f 77 22 3e c2 a7 3c 2f 61 3e 3c 2f | href="#shlWithOverflow">..</a></ |
| 88ac0 | 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | h2>........<pre><code.class="zig |
| 88ae0 | 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 68 6c | "><span.class="tok-builtin">@shl |
| 88b00 | 57 69 74 68 4f 76 65 72 66 6c 6f 77 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d | WithOverflow</span>(<span.class= |
| 88b20 | 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 |
| 88b40 | 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 20 | n.class="tok-type">type</span>,. |
| 88b60 | 61 3a 20 54 2c 20 73 68 69 66 74 5f 61 6d 74 3a 20 4c 6f 67 32 54 2c 20 72 65 73 75 6c 74 3a 20 | a:.T,.shift_amt:.Log2T,.result:. |
| 88b80 | 2a 54 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c | *T).<span.class="tok-type">bool< |
| 88ba0 | 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>... |
| 88bc0 | 20 20 20 20 50 65 72 66 6f 72 6d 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 72 | ....Performs.<code.class="zig">r |
| 88be0 | 65 73 75 6c 74 2e 2a 20 3d 20 61 20 26 6c 74 3b 26 6c 74 3b 20 62 3c 2f 63 6f 64 65 3e 2e 20 49 | esult.*.=.a.<<.b</code>..I |
| 88c00 | 66 20 6f 76 65 72 66 6c 6f 77 20 6f 72 20 75 6e 64 65 72 66 6c 6f 77 20 6f 63 63 75 72 73 2c 0a | f.overflow.or.underflow.occurs,. |
| 88c20 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 74 6f 72 65 73 20 74 68 65 20 6f 76 65 72 | .................stores.the.over |
| 88c40 | 66 6c 6f 77 65 64 20 62 69 74 73 20 69 6e 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | flowed.bits.in.<code.class="zig" |
| 88c60 | 3e 72 65 73 75 6c 74 3c 2f 63 6f 64 65 3e 20 61 6e 64 20 72 65 74 75 72 6e 73 20 3c 63 6f 64 65 | >result</code>.and.returns.<code |
| 88c80 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | .class="zig"><span.class="tok-nu |
| 88ca0 | 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 20 20 | ll">true</span></code>.......... |
| 88cc0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 49 66 20 6e 6f 20 6f 76 65 72 66 6c 6f 77 20 | .................If.no.overflow. |
| 88ce0 | 6f 72 20 75 6e 64 65 72 66 6c 6f 77 20 6f 63 63 75 72 73 2c 20 72 65 74 75 72 6e 73 20 3c 63 6f | or.underflow.occurs,.returns.<co |
| 88d00 | 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | de.class="zig"><span.class="tok- |
| 88d20 | 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>....... |
| 88d40 | 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 20 74 79 70 65 20 6f | .</p>.......<p>.......The.type.o |
| 88d60 | 66 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 73 68 69 66 74 5f 61 6d 74 3c 2f 63 | f.<code.class="zig">shift_amt</c |
| 88d80 | 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 |
| 88da0 | 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 6c 6f 67 32 28 54 2e 62 69 74 5f 63 6f | .<code.class="zig">log2(T.bit_co |
| 88dc0 | 75 6e 74 29 3c 2f 63 6f 64 65 3e 20 62 69 74 73 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | unt)</code>.bits................ |
| 88de0 | 54 68 69 73 20 69 73 20 62 65 63 61 75 73 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | This.is.because.<code.class="zig |
| 88e00 | 22 3e 73 68 69 66 74 5f 61 6d 74 20 26 67 74 3b 3d 20 54 2e 62 69 74 5f 63 6f 75 6e 74 3c 2f 63 | ">shift_amt.>=.T.bit_count</c |
| 88e20 | 6f 64 65 3e 20 69 73 20 75 6e 64 65 66 69 6e 65 64 20 62 65 68 61 76 69 6f 72 2e 0a 20 20 20 20 | ode>.is.undefined.behavior...... |
| 88e40 | 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 |
| 88e60 | 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 73 68 6c 45 78 61 63 74 22 3e 40 73 68 6c 45 78 | >.<li><a.href="#shlExact">@shlEx |
| 88e80 | 61 63 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 73 68 72 45 78 | act</a></li>.<li><a.href="#shrEx |
| 88ea0 | 61 63 74 22 3e 40 73 68 72 45 78 61 63 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 | act">@shrExact</a></li>.</ul>... |
| 88ec0 | 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 73 68 72 45 78 61 63 74 22 3e 3c | .............<h2.id="shrExact">< |
| 88ee0 | 61 20 68 72 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 | a.href="#toc-shrExact">@shrExact |
| 88f00 | 3c 2f 61 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 72 45 78 | </a>.<a.class="hdr".href="#shrEx |
| 88f20 | 61 63 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f | act">..</a></h2>........<pre><co |
| 88f40 | 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | de.class="zig"><span.class="tok- |
| 88f60 | 62 75 69 6c 74 69 6e 22 3e 40 73 68 72 45 78 61 63 74 3c 2f 73 70 61 6e 3e 28 76 61 6c 75 65 3a | builtin">@shrExact</span>(value: |
| 88f80 | 20 54 2c 20 73 68 69 66 74 5f 61 6d 74 3a 20 4c 6f 67 32 54 29 20 54 3c 2f 63 6f 64 65 3e 3c 2f | .T,.shift_amt:.Log2T).T</code></ |
| 88fa0 | 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 74 68 | pre>.......<p>.......Performs.th |
| 88fc0 | 65 20 72 69 67 68 74 20 73 68 69 66 74 20 6f 70 65 72 61 74 69 6f 6e 20 28 3c 63 6f 64 65 20 63 | e.right.shift.operation.(<code.c |
| 88fe0 | 6c 61 73 73 3d 22 7a 69 67 22 3e 26 67 74 3b 26 67 74 3b 3c 2f 63 6f 64 65 3e 29 2e 20 43 61 6c | lass="zig">>></code>)..Cal |
| 89000 | 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 65 20 73 68 | ler.guarantees.......that.the.sh |
| 89020 | 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 73 20 6f 75 | ift.will.not.shift.any.1.bits.ou |
| 89040 | 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 |
| 89060 | 65 20 74 79 70 65 20 6f 66 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 73 68 69 66 | e.type.of.<code.class="zig">shif |
| 89080 | 74 5f 61 6d 74 3c 2f 63 6f 64 65 3e 20 69 73 20 61 6e 20 75 6e 73 69 67 6e 65 64 20 69 6e 74 65 | t_amt</code>.is.an.unsigned.inte |
| 890a0 | 67 65 72 20 77 69 74 68 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 6c 6f 67 32 28 | ger.with.<code.class="zig">log2( |
| 890c0 | 54 2e 62 69 74 5f 63 6f 75 6e 74 29 3c 2f 63 6f 64 65 3e 20 62 69 74 73 2e 0a 20 20 20 20 20 20 | T.bit_count)</code>.bits........ |
| 890e0 | 20 20 20 20 20 20 20 20 54 68 69 73 20 69 73 20 62 65 63 61 75 73 65 20 3c 63 6f 64 65 20 63 6c | ........This.is.because.<code.cl |
| 89100 | 61 73 73 3d 22 7a 69 67 22 3e 73 68 69 66 74 5f 61 6d 74 20 26 67 74 3b 3d 20 54 2e 62 69 74 5f | ass="zig">shift_amt.>=.T.bit_ |
| 89120 | 63 6f 75 6e 74 3c 2f 63 6f 64 65 3e 20 69 73 20 75 6e 64 65 66 69 6e 65 64 20 62 65 68 61 76 69 | count</code>.is.undefined.behavi |
| 89140 | 6f 72 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f | or........</p>.......<p>See.also |
| 89160 | 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 74 | :</p><ul>.<li><a.href="#shlExact |
| 89180 | 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 66 | ">@shlExact</a></li>.<li><a.href |
| 891a0 | 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 72 | ="#shlWithOverflow">@shlWithOver |
| 891c0 | 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 20 | flow</a></li>.</ul>............. |
| 891e0 | 20 20 20 3c 68 32 20 69 64 3d 22 73 68 75 66 66 6c 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f | ...<h2.id="shuffle"><a.href="#to |
| 89200 | 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 73 | c-shuffle">@shuffle</a>.<a.class |
| 89220 | 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 68 | ="hdr".href="#shuffle">..</a></h |
| 89240 | 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | 2>........<pre><code.class="zig" |
| 89260 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 68 75 66 | ><span.class="tok-builtin">@shuf |
| 89280 | 66 6c 65 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | fle</span>(<span.class="tok-kw"> |
| 892a0 | 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 45 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | comptime</span>.E:.<span.class=" |
| 892c0 | 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 61 3a 20 73 74 64 2e 6d 65 | tok-type">type</span>,.a:.std.me |
| 892e0 | 74 61 2e 56 65 63 74 6f 72 28 61 5f 6c 65 6e 2c 20 45 29 2c 20 62 3a 20 73 74 64 2e 6d 65 74 61 | ta.Vector(a_len,.E),.b:.std.meta |
| 89300 | 2e 56 65 63 74 6f 72 28 62 5f 6c 65 6e 2c 20 45 29 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | .Vector(b_len,.E),.<span.class=" |
| 89320 | 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 6d 61 73 6b 3a 20 73 74 | tok-kw">comptime</span>.mask:.st |
| 89340 | 64 2e 6d 65 74 61 2e 56 65 63 74 6f 72 28 6d 61 73 6b 5f 6c 65 6e 2c 20 3c 73 70 61 6e 20 63 6c | d.meta.Vector(mask_len,.<span.cl |
| 89360 | 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 73 74 64 2e | ass="tok-type">i32</span>)).std. |
| 89380 | 6d 65 74 61 2e 56 65 63 74 6f 72 28 6d 61 73 6b 5f 6c 65 6e 2c 20 45 29 3c 2f 63 6f 64 65 3e 3c | meta.Vector(mask_len,.E)</code>< |
| 893a0 | 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 73 74 72 75 63 74 73 | /pre>.......<p>.......Constructs |
| 893c0 | 20 61 20 6e 65 77 20 3c 61 20 68 72 65 66 3d 22 23 56 65 63 74 6f 72 73 22 3e 76 65 63 74 6f 72 | .a.new.<a.href="#Vectors">vector |
| 893e0 | 3c 2f 61 3e 20 62 79 20 73 65 6c 65 63 74 69 6e 67 20 65 6c 65 6d 65 6e 74 73 20 66 72 6f 6d 20 | </a>.by.selecting.elements.from. |
| 89400 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 61 3c 2f 63 6f 64 65 3e 20 61 6e 64 0a 20 | <code.class="zig">a</code>.and.. |
| 89420 | 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 62 3c 2f 63 6f 64 65 3e 20 | .....<code.class="zig">b</code>. |
| 89440 | 62 61 73 65 64 20 6f 6e 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 6d 61 73 6b 3c | based.on.<code.class="zig">mask< |
| 89460 | 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 | /code>........</p>.......<p>.... |
| 89480 | 20 20 20 45 61 63 68 20 65 6c 65 6d 65 6e 74 20 69 6e 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | ...Each.element.in.<code.class=" |
| 894a0 | 7a 69 67 22 3e 6d 61 73 6b 3c 2f 63 6f 64 65 3e 20 73 65 6c 65 63 74 73 20 61 6e 20 65 6c 65 6d | zig">mask</code>.selects.an.elem |
| 894c0 | 65 6e 74 20 66 72 6f 6d 20 65 69 74 68 65 72 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | ent.from.either.<code.class="zig |
| 894e0 | 22 3e 61 3c 2f 63 6f 64 65 3e 20 6f 72 0a 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d | ">a</code>.or.......<code.class= |
| 89500 | 22 7a 69 67 22 3e 62 3c 2f 63 6f 64 65 3e 2e 20 50 6f 73 69 74 69 76 65 20 6e 75 6d 62 65 72 73 | "zig">b</code>..Positive.numbers |
| 89520 | 20 73 65 6c 65 63 74 20 66 72 6f 6d 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 61 | .select.from.<code.class="zig">a |
| 89540 | 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 20 20 4e 65 67 | </code>.starting.at.0........Neg |
| 89560 | 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 6f 64 65 20 63 | ative.values.select.from.<code.c |
| 89580 | 6c 61 73 73 3d 22 7a 69 67 22 3e 62 3c 2f 63 6f 64 65 3e 2c 20 73 74 61 72 74 69 6e 67 20 61 74 | lass="zig">b</code>,.starting.at |
| 895a0 | 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 2d 3c 73 70 61 6e 20 63 6c 61 73 73 3d | .<code.class="zig">-<span.class= |
| 895c0 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 61 6e 64 | "tok-number">1</span></code>.and |
| 895e0 | 20 67 6f 69 6e 67 20 64 6f 77 6e 2e 0a 20 20 20 20 20 20 49 74 20 69 73 20 72 65 63 6f 6d 6d 65 | .going.down........It.is.recomme |
| 89600 | 6e 64 65 64 20 74 6f 20 75 73 65 20 74 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | nded.to.use.the.<code.class="zig |
| 89620 | 22 3e 7e 3c 2f 63 6f 64 65 3e 20 6f 70 65 72 61 74 6f 72 20 66 72 6f 6d 20 69 6e 64 65 78 65 73 | ">~</code>.operator.from.indexes |
| 89640 | 20 66 72 6f 6d 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 62 3c 2f 63 6f 64 65 3e | .from.<code.class="zig">b</code> |
| 89660 | 0a 20 20 20 20 20 20 73 6f 20 74 68 61 74 20 62 6f 74 68 20 69 6e 64 65 78 65 73 20 63 61 6e 20 | .......so.that.both.indexes.can. |
| 89680 | 73 74 61 72 74 20 66 72 6f 6d 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 | start.from.<code.class="zig"><sp |
| 896a0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 3c 2f | an.class="tok-number">0</span></ |
| 896c0 | 63 6f 64 65 3e 20 28 69 2e 65 2e 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 7e 3c | code>.(i.e..<code.class="zig">~< |
| 896e0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 61 73 3c 2f 73 70 | span.class="tok-builtin">@as</sp |
| 89700 | 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f | an>(<span.class="tok-type">i32</ |
| 89720 | 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"> |
| 89740 | 30 3c 2f 73 70 61 6e 3e 29 3c 2f 63 6f 64 65 3e 20 69 73 0a 20 20 20 20 20 20 3c 63 6f 64 65 20 | 0</span>)</code>.is.......<code. |
| 89760 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 2d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | class="zig">-<span.class="tok-nu |
| 89780 | 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 29 2e 0a 20 20 20 20 20 20 3c 2f | mber">1</span></code>)........</ |
| 897a0 | 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 46 6f 72 20 65 61 63 68 20 65 6c 65 6d | p>.......<p>.......For.each.elem |
| 897c0 | 65 6e 74 20 6f 66 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 6d 61 73 6b 3c 2f 63 | ent.of.<code.class="zig">mask</c |
| 897e0 | 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 76 61 6c 75 | ode>,.if.it.or.the.selected.valu |
| 89800 | 65 20 66 72 6f 6d 0a 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 61 | e.from.......<code.class="zig">a |
| 89820 | 3c 2f 63 6f 64 65 3e 20 6f 72 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 62 3c 2f | </code>.or.<code.class="zig">b</ |
| 89840 | 63 6f 64 65 3e 20 69 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e | code>.is.<code.class="zig"><span |
| 89860 | 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 |
| 89880 | 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 |
| 898a0 | 69 6e 67 20 65 6c 65 6d 65 6e 74 20 69 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | ing.element.is.<code.class="zig" |
| 898c0 | 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 |
| 898e0 | 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 | d</span></code>........</p>..... |
| 89900 | 20 20 3c 70 3e 0a 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 61 5f | ..<p>.......<code.class="zig">a_ |
| 89920 | 6c 65 6e 3c 2f 63 6f 64 65 3e 20 61 6e 64 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | len</code>.and.<code.class="zig" |
| 89940 | 3e 62 5f 6c 65 6e 3c 2f 63 6f 64 65 3e 20 6d 61 79 20 64 69 66 66 65 72 20 69 6e 20 6c 65 6e 67 | >b_len</code>.may.differ.in.leng |
| 89960 | 74 68 2e 20 4f 75 74 2d 6f 66 2d 62 6f 75 6e 64 73 20 65 6c 65 6d 65 6e 74 0a 20 20 20 20 20 20 | th..Out-of-bounds.element....... |
| 89980 | 69 6e 64 65 78 65 73 20 69 6e 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 6d 61 73 | indexes.in.<code.class="zig">mas |
| 899a0 | 6b 3c 2f 63 6f 64 65 3e 20 72 65 73 75 6c 74 20 69 6e 20 63 6f 6d 70 69 6c 65 20 65 72 72 6f 72 | k</code>.result.in.compile.error |
| 899c0 | 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 49 66 | s........</p>.......<p>.......If |
| 899e0 | 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 61 3c 2f 63 6f 64 65 3e 20 6f 72 20 3c | .<code.class="zig">a</code>.or.< |
| 89a00 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 62 3c 2f 63 6f 64 65 3e 20 69 73 20 3c 63 6f | code.class="zig">b</code>.is.<co |
| 89a20 | 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | de.class="zig"><span.class="tok- |
| 89a40 | 6e 75 6c 6c 22 3e 75 6e 64 65 66 69 6e 65 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 69 | null">undefined</span></code>,.i |
| 89a60 | 74 0a 20 20 20 20 20 20 69 73 20 65 71 75 69 76 61 6c 65 6e 74 20 74 6f 20 61 20 76 65 63 74 6f | t.......is.equivalent.to.a.vecto |
| 89a80 | 72 20 6f 66 20 61 6c 6c 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e | r.of.all.<code.class="zig"><span |
| 89aa0 | 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 |
| 89ac0 | 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 |
| 89ae0 | 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 |
| 89b00 | 68 20 76 65 63 74 6f 72 73 20 61 72 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e | h.vectors.are.<code.class="zig"> |
| 89b20 | 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 |
| 89b40 | 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | </span></code>,.<code.class="zig |
| 89b60 | 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 68 75 | "><span.class="tok-builtin">@shu |
| 89b80 | 66 66 6c 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 72 65 74 75 72 6e 73 0a 20 20 20 20 20 | ffle</span></code>.returns...... |
| 89ba0 | 20 61 20 76 65 63 74 6f 72 20 77 69 74 68 20 61 6c 6c 20 65 6c 65 6d 65 6e 74 73 20 3c 63 6f 64 | .a.vector.with.all.elements.<cod |
| 89bc0 | 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | e.class="zig"><span.class="tok-n |
| 89be0 | 75 6c 6c 22 3e 75 6e 64 65 66 69 6e 65 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 | ull">undefined</span></code>.... |
| 89c00 | 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 20 63 | ....</p>.......<p>.......<code.c |
| 89c20 | 6c 61 73 73 3d 22 7a 69 67 22 3e 45 3c 2f 63 6f 64 65 3e 20 6d 75 73 74 20 62 65 20 61 6e 20 3c | lass="zig">E</code>.must.be.an.< |
| 89c40 | 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 61 3e 2c 20 | a.href="#Integers">integer</a>,. |
| 89c60 | 3c 61 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 73 22 3e 66 6c 6f 61 74 3c 2f 61 3e 2c 0a 20 20 20 | <a.href="#Floats">float</a>,.... |
| 89c80 | 20 20 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.href="#Pointers">pointer</ |
| 89ca0 | 61 3e 2c 20 6f 72 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 | a>,.or.<code.class="zig"><span.c |
| 89cc0 | 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 |
| 89ce0 | 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 6f 72 20 6c | e>..The.mask.may.be.any.vector.l |
| 89d00 | 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 64 65 74 65 | ength,.and.its.......length.dete |
| 89d20 | 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 20 20 20 20 | rmines.the.result.length........ |
| 89d40 | 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>. |
| 89d60 | 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 53 49 4d 44 22 3e 53 49 4d 44 3c 2f 61 3e 3c 2f 6c 69 | <li><a.href="#SIMD">SIMD</a></li |
| 89d80 | 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 73 | >.</ul>................<h2.id="s |
| 89da0 | 69 7a 65 4f 66 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 73 69 7a 65 4f 66 22 3e 40 73 69 | izeOf"><a.href="#toc-sizeOf">@si |
| 89dc0 | 7a 65 4f 66 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 73 | zeOf</a>.<a.class="hdr".href="#s |
| 89de0 | 69 7a 65 4f 66 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c | izeOf">..</a></h2>........<pre>< |
| 89e00 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | code.class="zig"><span.class="to |
| 89e20 | 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 69 7a 65 4f 66 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 | k-builtin">@sizeOf</span>(<span. |
| 89e40 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 54 | class="tok-kw">comptime</span>.T |
| 89e60 | 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 | :.<span.class="tok-type">type</s |
| 89e80 | 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 63 6f 6d | pan>).<span.class="tok-type">com |
| 89ea0 | 70 74 69 6d 65 5f 69 6e 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 | ptime_int</span></code></pre>... |
| 89ec0 | 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 72 65 74 75 | ....<p>.......This.function.retu |
| 89ee0 | 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 65 73 | rns.the.number.of.bytes.it.takes |
| 89f00 | 20 74 6f 20 73 74 6f 72 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 54 3c 2f 63 | .to.store.<code.class="zig">T</c |
| 89f20 | 6f 64 65 3e 20 69 6e 20 6d 65 6d 6f 72 79 2e 0a 20 20 20 20 20 20 54 68 65 20 72 65 73 75 6c 74 | ode>.in.memory........The.result |
| 89f40 | 20 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 | .is.a.target-specific.compile.ti |
| 89f60 | 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 3c 70 | me.constant........</p>.......<p |
| 89f80 | 3e 0a 20 20 20 20 20 20 54 68 69 73 20 73 69 7a 65 20 6d 61 79 20 63 6f 6e 74 61 69 6e 20 70 61 | >.......This.size.may.contain.pa |
| 89fa0 | 64 64 69 6e 67 20 62 79 74 65 73 2e 20 49 66 20 74 68 65 72 65 20 77 65 72 65 20 74 77 6f 20 63 | dding.bytes..If.there.were.two.c |
| 89fc0 | 6f 6e 73 65 63 75 74 69 76 65 20 54 20 69 6e 20 6d 65 6d 6f 72 79 2c 20 74 68 69 73 20 77 6f 75 | onsecutive.T.in.memory,.this.wou |
| 89fe0 | 6c 64 20 62 65 20 74 68 65 20 6f 66 66 73 65 74 0a 20 20 20 20 20 20 69 6e 20 62 79 74 65 73 20 | ld.be.the.offset.......in.bytes. |
| 8a000 | 62 65 74 77 65 65 6e 20 65 6c 65 6d 65 6e 74 20 61 74 20 69 6e 64 65 78 20 30 20 61 6e 64 20 74 | between.element.at.index.0.and.t |
| 8a020 | 68 65 20 65 6c 65 6d 65 6e 74 20 61 74 20 69 6e 64 65 78 20 31 2e 20 46 6f 72 20 3c 61 20 68 72 | he.element.at.index.1..For.<a.hr |
| 8a040 | 65 66 3d 22 23 49 6e 74 65 67 65 72 73 22 3e 69 6e 74 65 67 65 72 3c 2f 61 3e 2c 0a 20 20 20 20 | ef="#Integers">integer</a>,..... |
| 8a060 | 20 20 63 6f 6e 73 69 64 65 72 20 77 68 65 74 68 65 72 20 79 6f 75 20 77 61 6e 74 20 74 6f 20 75 | ..consider.whether.you.want.to.u |
| 8a080 | 73 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | se.<code.class="zig"><span.class |
| 8a0a0 | 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 54 29 | ="tok-builtin">@sizeOf</span>(T) |
| 8a0c0 | 3c 2f 63 6f 64 65 3e 20 6f 72 0a 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | </code>.or.......<code.class="zi |
| 8a0e0 | 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 74 79 | g"><span.class="tok-builtin">@ty |
| 8a100 | 70 65 49 6e 66 6f 3c 2f 73 70 61 6e 3e 28 54 29 2e 49 6e 74 2e 62 69 74 73 3c 2f 63 6f 64 65 3e | peInfo</span>(T).Int.bits</code> |
| 8a120 | 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 | ........</p>.......<p>.......Thi |
| 8a140 | 73 20 66 75 6e 63 74 69 6f 6e 20 6d 65 61 73 75 72 65 73 20 74 68 65 20 73 69 7a 65 20 61 74 20 | s.function.measures.the.size.at. |
| 8a160 | 72 75 6e 74 69 6d 65 2e 20 46 6f 72 20 74 79 70 65 73 20 74 68 61 74 20 61 72 65 20 64 69 73 61 | runtime..For.types.that.are.disa |
| 8a180 | 6c 6c 6f 77 65 64 20 61 74 20 72 75 6e 74 69 6d 65 2c 20 73 75 63 68 20 61 73 0a 20 20 20 20 20 | llowed.at.runtime,.such.as...... |
| 8a1a0 | 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | .<code.class="zig"><span.class=" |
| 8a1c0 | 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 |
| 8a1e0 | 6f 64 65 3e 20 61 6e 64 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e | ode>.and.<code.class="zig"><span |
| 8a200 | 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 |
| 8a220 | 6f 64 65 3e 2c 20 74 68 65 20 72 65 73 75 6c 74 20 69 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d | ode>,.the.result.is.<code.class= |
| 8a240 | 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 | "zig"><span.class="tok-number">0 |
| 8a260 | 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 | </span></code>........</p>...... |
| 8a280 | 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 |
| 8a2a0 | 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 6c | f="#bitSizeOf">@bitSizeOf</a></l |
| 8a2c0 | 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 |
| 8a2e0 | 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>............. |
| 8a300 | 20 20 20 3c 68 32 20 69 64 3d 22 73 70 6c 61 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d | ...<h2.id="splat"><a.href="#toc- |
| 8a320 | 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 22 | splat">@splat</a>.<a.class="hdr" |
| 8a340 | 20 68 72 65 66 3d 22 23 73 70 6c 61 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 | .href="#splat">..</a></h2>...... |
| 8a360 | 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 | ..<pre><code.class="zig"><span.c |
| 8a380 | 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 70 6c 61 74 3c 2f 73 70 61 6e 3e | lass="tok-builtin">@splat</span> |
| 8a3a0 | 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</ |
| 8a3c0 | 73 70 61 6e 3e 20 6c 65 6e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | span>.len:.<span.class="tok-type |
| 8a3e0 | 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 2c 20 73 63 61 6c 61 72 3a 20 3c 73 70 61 6e 20 63 6c 61 73 | ">u32</span>,.scalar:.<span.clas |
| 8a400 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 79 74 79 70 65 3c 2f 73 70 61 6e 3e 29 20 73 74 64 2e 6d | s="tok-kw">anytype</span>).std.m |
| 8a420 | 65 74 61 2e 56 65 63 74 6f 72 28 6c 65 6e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | eta.Vector(len,.<span.class="tok |
| 8a440 | 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 63 61 6c 61 72 29 | -builtin">@TypeOf</span>(scalar) |
| 8a460 | 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 50 | )</code></pre>.......<p>.......P |
| 8a480 | 72 6f 64 75 63 65 73 20 61 20 76 65 63 74 6f 72 20 6f 66 20 6c 65 6e 67 74 68 20 3c 63 6f 64 65 | roduces.a.vector.of.length.<code |
| 8a4a0 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 6c 65 6e 3c 2f 63 6f 64 65 3e 20 77 68 65 72 65 20 65 61 | .class="zig">len</code>.where.ea |
| 8a4c0 | 63 68 20 65 6c 65 6d 65 6e 74 20 69 73 20 74 68 65 20 76 61 6c 75 65 0a 20 20 20 20 20 20 3c 63 | ch.element.is.the.value.......<c |
| 8a4e0 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 73 63 61 6c 61 72 3c 2f 63 6f 64 65 3e 3a 0a 20 | ode.class="zig">scalar</code>:.. |
| 8a500 | 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e | .....</p>.......<p.class="file"> |
| 8a520 | 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | test.zig</p><pre><code.class="zi |
| 8a540 | 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 | g"><span.class="tok-kw">const</s |
| 8a560 | 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 |
| 8a580 | 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= |
| 8a5a0 | 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> |
| 8a5c0 | 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 |
| 8a5e0 | 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 |
| 8a600 | 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 |
| 8a620 | 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">" |
| 8a640 | 76 65 63 74 6f 72 20 40 73 70 6c 61 74 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 | vector.@splat"</span>.{.... |
| 8a660 | 20 3c 73 70 61 6e 20 63 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 |
| 8a680 | 6e 3e 20 73 63 61 6c 61 72 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | n>.scalar:.<span.class="tok-type |
| 8a6a0 | 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- |
| 8a6c0 | 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | number">5</span>;.....<span.clas |
| 8a6e0 | 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 3d | s="tok-kw">const</span>.result.= |
| 8a700 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 70 6c 61 | .<span.class="tok-builtin">@spla |
| 8a720 | 74 3c 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 | t</span>(<span.class="tok-number |
| 8a740 | 22 3e 34 3c 2f 73 70 61 6e 3e 2c 20 73 63 61 6c 61 72 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 | ">4</span>,.scalar);.....<span.c |
| 8a760 | 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 |
| 8a780 | 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">@ |
| 8a7a0 | 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 72 65 73 75 6c 74 29 20 3d 3d 20 73 74 64 2e 6d 65 74 | TypeOf</span>(result).==.std.met |
| 8a7c0 | 61 2e 56 65 63 74 6f 72 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | a.Vector(<span.class="tok-number |
| 8a7e0 | 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 70 | ">4</span>,.<span.class="tok-typ |
| 8a800 | 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 29 29 3b 0a 20 20 20 20 65 78 70 65 63 74 28 73 74 64 2e | e">u32</span>));.....expect(std. |
| 8a820 | 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 |
| 8a840 | 33 32 3c 2f 73 70 61 6e 3e 2c 20 26 61 6d 70 3b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | 32</span>,.&<span.class="tok |
| 8a860 | 2d 62 75 69 6c 74 69 6e 22 3e 40 61 73 3c 2f 73 70 61 6e 3e 28 5b 3c 73 70 61 6e 20 63 6c 61 73 | -builtin">@as</span>([<span.clas |
| 8a880 | 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 |
| 8a8a0 | 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 72 65 73 75 6c | ass="tok-type">u32</span>,.resul |
| 8a8c0 | 74 29 2c 20 26 61 6d 70 3b 5b 5f 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | t),.&[_]<span.class="tok-typ |
| 8a8e0 | 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 7b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | e">u32</span>{.<span.class="tok- |
| 8a900 | 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | number">5</span>,.<span.class="t |
| 8a920 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ok-number">5</span>,.<span.class |
| 8a940 | 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 |
| 8a960 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 20 7d 29 29 3b 0a 7d | ass="tok-number">5</span>.}));.} |
| 8a980 | 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 | </code></pre><pre><code.class="s |
| 8a9a0 | 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 31 2f 31 20 74 65 | hell">$.zig.test.test.zig.1/1.te |
| 8a9c0 | 73 74 20 26 71 75 6f 74 3b 76 65 63 74 6f 72 20 40 73 70 6c 61 74 26 71 75 6f 74 3b 2e 2e 2e 20 | st."vector.@splat".... |
| 8a9e0 | 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 63 6f 64 65 3e 3c 2f | OK.All.1.tests.passed..</code></ |
| 8aa00 | 70 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 20 63 6c 61 73 | pre>........<p>.......<code.clas |
| 8aa20 | 73 3d 22 7a 69 67 22 3e 73 63 61 6c 61 72 3c 2f 63 6f 64 65 3e 20 6d 75 73 74 20 62 65 20 61 6e | s="zig">scalar</code>.must.be.an |
| 8aa40 | 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 61 3e | .<a.href="#Integers">integer</a> |
| 8aa60 | 2c 20 3c 61 20 68 72 65 66 3d 22 23 50 72 69 6d 69 74 69 76 65 2d 54 79 70 65 73 22 3e 62 6f 6f | ,.<a.href="#Primitive-Types">boo |
| 8aa80 | 6c 3c 2f 61 3e 2c 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 73 22 3e 66 | l</a>,.......<a.href="#Floats">f |
| 8aaa0 | 6c 6f 61 74 3c 2f 61 3e 2c 20 6f 72 20 3c 61 20 68 72 65 66 3d 22 23 50 6f 69 6e 74 65 72 73 22 | loat</a>,.or.<a.href="#Pointers" |
| 8aac0 | 3e 70 6f 69 6e 74 65 72 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c | >pointer</a>........</p>.......< |
| 8aae0 | 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= |
| 8ab00 | 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 3c 6c 69 3e | "#Vectors">Vectors</a></li>.<li> |
| 8ab20 | 3c 61 20 68 72 65 66 3d 22 23 73 68 75 66 66 6c 65 22 3e 40 73 68 75 66 66 6c 65 3c 2f 61 3e 3c | <a.href="#shuffle">@shuffle</a>< |
| 8ab40 | 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 | /li>.</ul>................<h2.id |
| 8ab60 | 3d 22 72 65 64 75 63 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 72 65 64 75 63 65 22 3e | ="reduce"><a.href="#toc-reduce"> |
| 8ab80 | 40 72 65 64 75 63 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d | @reduce</a>.<a.class="hdr".href= |
| 8aba0 | 22 23 72 65 64 75 63 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 | "#reduce">..</a></h2>........<pr |
| 8abc0 | 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | e><code.class="zig"><span.class= |
| 8abe0 | 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 70 | "tok-builtin">@reduce</span>(<sp |
| 8ac00 | 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 |
| 8ac20 | 3e 20 6f 70 3a 20 62 75 69 6c 74 69 6e 2e 52 65 64 75 63 65 4f 70 2c 20 76 61 6c 75 65 3a 20 3c | >.op:.builtin.ReduceOp,.value:.< |
| 8ac40 | 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 |
| 8ac60 | 6e 3e 29 20 73 74 64 2e 6d 65 74 61 2e 43 68 69 6c 64 28 76 61 6c 75 65 29 3c 2f 63 6f 64 65 3e | n>).std.meta.Child(value)</code> |
| 8ac80 | 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 72 61 6e 73 66 6f 72 6d | </pre>.......<p>.......Transform |
| 8aca0 | 73 20 61 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 | s.a.<a.href="#Vectors">vector</a |
| 8acc0 | 3e 20 69 6e 74 6f 20 61 20 73 63 61 6c 61 72 20 76 61 6c 75 65 20 62 79 20 70 65 72 66 6f 72 6d | >.into.a.scalar.value.by.perform |
| 8ace0 | 69 6e 67 20 61 0a 20 20 20 20 20 20 73 65 71 75 65 6e 74 69 61 6c 20 68 6f 72 69 7a 6f 6e 74 61 | ing.a.......sequential.horizonta |
| 8ad00 | 6c 20 72 65 64 75 63 74 69 6f 6e 20 6f 66 20 69 74 73 20 65 6c 65 6d 65 6e 74 73 20 75 73 69 6e | l.reduction.of.its.elements.usin |
| 8ad20 | 67 20 74 68 65 20 73 70 65 63 69 66 69 65 64 20 6f 70 65 72 61 74 6f 72 20 3c 63 6f 64 65 20 63 | g.the.specified.operator.<code.c |
| 8ad40 | 6c 61 73 73 3d 22 7a 69 67 22 3e 6f 70 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e | lass="zig">op</code>........</p> |
| 8ad60 | 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 70 65 72 61 | .......<p>.......Not.every.opera |
| 8ad80 | 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 65 63 74 6f | tor.is.available.for.every.vecto |
| 8ada0 | 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 20 20 20 20 | r.element.type:.......</p>...... |
| 8adc0 | 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d | .<ul>...........<li><code.class= |
| 8ade0 | 22 7a 69 67 22 3e 2e 41 6e 64 3c 2f 63 6f 64 65 3e 2c 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | "zig">.And</code>,.<code.class=" |
| 8ae00 | 7a 69 67 22 3e 2e 4f 72 3c 2f 63 6f 64 65 3e 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f | zig">.Or</code>,.............<co |
| 8ae20 | 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 2e 58 6f 72 3c 2f 63 6f 64 65 3e 20 61 72 65 20 61 | de.class="zig">.Xor</code>.are.a |
| 8ae40 | 76 61 69 6c 61 62 6c 65 20 66 6f 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 20 63 | vailable.for.............<code.c |
| 8ae60 | 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | lass="zig"><span.class="tok-type |
| 8ae80 | 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 76 65 63 74 6f 72 73 2c 3c 2f 6c | ">bool</span></code>.vectors,</l |
| 8aea0 | 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | i>...........<li><code.class="zi |
| 8aec0 | 67 22 3e 2e 4d 69 6e 3c 2f 63 6f 64 65 3e 2c 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | g">.Min</code>,.<code.class="zig |
| 8aee0 | 22 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 3c 63 6f 64 65 | ">.Max</code>,.............<code |
| 8af00 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 2e 41 64 64 3c 2f 63 6f 64 65 3e 2c 20 3c 63 6f 64 65 20 | .class="zig">.Add</code>,.<code. |
| 8af20 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 2e 4d 75 6c 3c 2f 63 6f 64 65 3e 20 61 72 65 0a 20 20 20 20 | class="zig">.Mul</code>.are..... |
| 8af40 | 20 20 20 20 20 20 20 20 61 76 61 69 6c 61 62 6c 65 20 66 6f 72 20 3c 61 20 68 72 65 66 3d 22 23 | ........available.for.<a.href="# |
| 8af60 | 46 6c 6f 61 74 73 22 3e 66 6c 6f 61 74 69 6e 67 20 70 6f 69 6e 74 3c 2f 61 3e 20 76 65 63 74 6f | Floats">floating.point</a>.vecto |
| 8af80 | 72 73 2c 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 45 76 65 72 79 20 6f 70 65 | rs,</li>...........<li>Every.ope |
| 8afa0 | 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 22 | rator.is.available.for.<a.href=" |
| 8afc0 | 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 0a | #Integers">integer</a>.vectors.. |
| 8afe0 | 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 6f 74 65 | ......</ul>.......<p>.......Note |
| 8b000 | 20 74 68 61 74 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 2e 41 64 64 3c 2f 63 6f | .that.<code.class="zig">.Add</co |
| 8b020 | 64 65 3e 20 61 6e 64 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 2e 4d 75 6c 3c 2f | de>.and.<code.class="zig">.Mul</ |
| 8b040 | 63 6f 64 65 3e 0a 20 20 20 20 20 20 72 65 64 75 63 74 69 6f 6e 73 20 6f 6e 20 69 6e 74 65 67 72 | code>.......reductions.on.integr |
| 8b060 | 61 6c 20 74 79 70 65 73 20 61 72 65 20 77 72 61 70 70 69 6e 67 3b 20 77 68 65 6e 20 61 70 70 6c | al.types.are.wrapping;.when.appl |
| 8b080 | 69 65 64 20 6f 6e 20 66 6c 6f 61 74 69 6e 67 20 70 6f 69 6e 74 0a 20 20 20 20 20 20 74 79 70 65 | ied.on.floating.point.......type |
| 8b0a0 | 73 20 74 68 65 20 6f 70 65 72 61 74 69 6f 6e 20 61 73 73 6f 63 69 61 74 69 76 69 74 79 20 69 73 | s.the.operation.associativity.is |
| 8b0c0 | 20 70 72 65 73 65 72 76 65 64 2c 20 75 6e 6c 65 73 73 20 74 68 65 20 66 6c 6f 61 74 20 6d 6f 64 | .preserved,.unless.the.float.mod |
| 8b0e0 | 65 20 69 73 0a 20 20 20 20 20 20 73 65 74 20 74 6f 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a | e.is.......set.to.<code.class="z |
| 8b100 | 69 67 22 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 | ig">Optimized</code>........</p> |
| 8b120 | 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c | .......<p.class="file">test.zig< |
| 8b140 | 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 | /p><pre><code.class="zig"><span. |
| 8b160 | 63 6c 61 73 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. |
| 8b180 | 3d 20 3c 73 70 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 |
| 8b1a0 | 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" |
| 8b1c0 | 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. |
| 8b1e0 | 63 6c 61 73 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 |
| 8b200 | 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. |
| 8b220 | 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 |
| 8b240 | 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 20 40 72 | .class="tok-str">"vector.@r |
| 8b260 | 65 64 75 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 | educe"</span>.{.....<span.c |
| 8b280 | 6c 61 73 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 |
| 8b2a0 | 3a 20 73 74 64 2e 6d 65 74 61 2e 56 65 63 74 6f 72 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | :.std.meta.Vector(<span.class="t |
| 8b2c0 | 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 |
| 8b2e0 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 20 3d 20 5b 5f 5d 3c 73 70 | ="tok-type">i32</span>).=.[_]<sp |
| 8b300 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 7b 20 | an.class="tok-type">i32</span>{. |
| 8b320 | 3c 73 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 |
| 8b340 | 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</ |
| 8b360 | 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"> |
| 8b380 | 31 3c 2f 73 70 61 6e 3e 2c 20 2d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | 1</span>,.-<span.class="tok-numb |
| 8b3a0 | 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 73 3d | er">1</span>.};.....<span.class= |
| 8b3c0 | 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 76 | "tok-kw">const</span>.result.=.v |
| 8b3e0 | 61 6c 75 65 20 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 | alue.>.<span.class="tok-built |
| 8b400 | 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 74 | in">@splat</span>(<span.class="t |
| 8b420 | 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 |
| 8b440 | 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 61 73 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 | ="tok-builtin">@as</span>(<span. |
| 8b460 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 | class="tok-type">i32</span>,.<sp |
| 8b480 | 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 29 | an.class="tok-number">0</span>)) |
| 8b4a0 | 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e | ;.....<span.class="tok-comment"> |
| 8b4c0 | 2f 2f 20 72 65 73 75 6c 74 20 69 73 20 7b 20 74 72 75 65 2c 20 66 61 6c 73 65 2c 20 74 72 75 65 | //.result.is.{.true,.false,.true |
| 8b4e0 | 2c 20 66 61 6c 73 65 20 7d 3b 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | ,.false.};</span>.....<span.clas |
| 8b500 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 65 78 70 65 63 | s="tok-kw">comptime</span>.expec |
| 8b520 | 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 70 | t(<span.class="tok-builtin">@Typ |
| 8b540 | 65 4f 66 3c 2f 73 70 61 6e 3e 28 72 65 73 75 6c 74 29 20 3d 3d 20 73 74 64 2e 6d 65 74 61 2e 56 | eOf</span>(result).==.std.meta.V |
| 8b560 | 65 63 74 6f 72 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 | ector(<span.class="tok-number">4 |
| 8b580 | 3c 2f 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"> |
| 8b5a0 | 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 29 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | bool</span>));.....<span.class=" |
| 8b5c0 | 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 69 73 5f 61 6c 6c 5f 74 72 75 65 | tok-kw">const</span>.is_all_true |
| 8b5e0 | 20 3d 20 3c 73 70 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 | .=.<span.class="tok-builtin">@re |
| 8b600 | 64 75 63 65 3c 2f 73 70 61 6e 3e 28 2e 41 6e 64 2c 20 72 65 73 75 6c 74 29 3b 0a 20 20 20 20 3c | duce</span>(.And,.result);.....< |
| 8b620 | 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 |
| 8b640 | 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 |
| 8b660 | 74 69 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 69 73 5f 61 6c 6c 5f 74 72 75 65 29 | tin">@TypeOf</span>(is_all_true) |
| 8b680 | 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c | .==.<span.class="tok-type">bool< |
| 8b6a0 | 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 65 78 70 65 63 74 28 69 73 5f 61 6c 6c 5f 74 72 75 65 20 | /span>);.....expect(is_all_true. |
| 8b6c0 | 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c | ==.<span.class="tok-null">false< |
| 8b6e0 | 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 | /span>);.}</code></pre><pre><cod |
| 8b700 | 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e | e.class="shell">$.zig.test.test. |
| 8b720 | 7a 69 67 0a 31 2f 31 20 74 65 73 74 20 26 71 75 6f 74 3b 76 65 63 74 6f 72 20 40 72 65 64 75 63 | zig.1/1.test."vector.@reduc |
| 8b740 | 65 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 | e"....OK.All.1.tests.passed |
| 8b760 | 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c | ..</code></pre>........<p>See.al |
| 8b780 | 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 56 65 63 74 6f 72 | so:</p><ul>.<li><a.href="#Vector |
| 8b7a0 | 73 22 3e 56 65 63 74 6f 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d | s">Vectors</a></li>.<li><a.href= |
| 8b7c0 | 22 23 73 65 74 46 6c 6f 61 74 4d 6f 64 65 22 3e 40 73 65 74 46 6c 6f 61 74 4d 6f 64 65 3c 2f 61 | "#setFloatMode">@setFloatMode</a |
| 8b7e0 | 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 | ></li>.</ul>................<h2. |
| 8b800 | 69 64 3d 22 73 72 63 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 73 72 63 22 3e 40 73 72 63 | id="src"><a.href="#toc-src">@src |
| 8b820 | 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 73 72 63 22 3e | </a>.<a.class="hdr".href="#src"> |
| 8b840 | c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c | ..</a></h2>........<pre><code.cl |
| 8b860 | 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 | ass="zig"><span.class="tok-built |
| 8b880 | 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 |
| 8b8a0 | 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>....... |
| 8b8c0 | 3c 70 3e 0a 20 20 20 20 20 20 52 65 74 75 72 6e 73 20 61 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d | <p>.......Returns.a.<code.class= |
| 8b8e0 | 22 7a 69 67 22 3e 53 6f 75 72 63 65 4c 6f 63 61 74 69 6f 6e 3c 2f 63 6f 64 65 3e 20 73 74 72 75 | "zig">SourceLocation</code>.stru |
| 8b900 | 63 74 20 72 65 70 72 65 73 65 6e 74 69 6e 67 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 27 73 20 6e | ct.representing.the.function's.n |
| 8b920 | 61 6d 65 20 61 6e 64 20 6c 6f 63 61 74 69 6f 6e 20 69 6e 20 74 68 65 20 73 6f 75 72 63 65 20 63 | ame.and.location.in.the.source.c |
| 8b940 | 6f 64 65 2e 20 54 68 69 73 20 6d 75 73 74 20 62 65 20 63 61 6c 6c 65 64 20 69 6e 20 61 20 66 75 | ode..This.must.be.called.in.a.fu |
| 8b960 | 6e 63 74 69 6f 6e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 | nction........</p>.......<p.clas |
| 8b980 | 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 | s="file">test.zig</p><pre><code. |
| 8b9a0 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | class="zig"><span.class="tok-kw" |
| 8b9c0 | 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= |
| 8b9e0 | 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 |
| 8ba00 | 61 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 |
| 8ba20 | 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" |
| 8ba40 | 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 |
| 8ba60 | 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" |
| 8ba80 | 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 |
| 8baa0 | 72 22 3e 26 71 75 6f 74 3b 40 73 72 63 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 | r">"@src"</span>.{.... |
| 8bac0 | 20 64 6f 54 68 65 54 65 73 74 28 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | .doTheTest();.}..<span.class="to |
| 8bae0 | 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 |
| 8bb00 | 2d 66 6e 22 3e 64 6f 54 68 65 54 65 73 74 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c | -fn">doTheTest</span>().<span.cl |
| 8bb20 | 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>.{.... |
| 8bb40 | 20 3c 73 70 61 6e 20 63 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 |
| 8bb60 | 6e 3e 20 73 72 63 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 | n>.src.=.<span.class="tok-builti |
| 8bb80 | 6e 22 3e 40 73 72 63 3c 2f 73 70 61 6e 3e 28 29 3b 0a 0a 20 20 20 20 65 78 70 65 63 74 28 73 72 | n">@src</span>();......expect(sr |
| 8bba0 | 63 2e 6c 69 6e 65 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | c.line.==.<span.class="tok-numbe |
| 8bbc0 | 72 22 3e 39 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 65 78 70 65 63 74 28 73 72 63 2e 63 6f 6c | r">9</span>);.....expect(src.col |
| 8bbe0 | 75 6d 6e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e | umn.==.<span.class="tok-number"> |
| 8bc00 | 31 37 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 65 78 70 65 63 74 28 73 74 64 2e 6d 65 6d 2e 65 | 17</span>);.....expect(std.mem.e |
| 8bc20 | 6e 64 73 57 69 74 68 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 | ndsWith(<span.class="tok-type">u |
| 8bc40 | 38 3c 2f 73 70 61 6e 3e 2c 20 73 72 63 2e 66 6e 5f 6e 61 6d 65 2c 20 3c 73 70 61 6e 20 63 6c 61 | 8</span>,.src.fn_name,.<span.cla |
| 8bc60 | 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 64 6f 54 68 65 54 65 73 74 26 71 75 6f | ss="tok-str">"doTheTest&quo |
| 8bc80 | 74 3b 3c 2f 73 70 61 6e 3e 29 29 3b 0a 20 20 20 20 65 78 70 65 63 74 28 73 74 64 2e 6d 65 6d 2e | t;</span>));.....expect(std.mem. |
| 8bca0 | 65 6e 64 73 57 69 74 68 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | endsWith(<span.class="tok-type"> |
| 8bcc0 | 75 38 3c 2f 73 70 61 6e 3e 2c 20 73 72 63 2e 66 69 6c 65 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 | u8</span>,.src.file,.<span.class |
| 8bce0 | 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 74 65 73 74 2e 7a 69 67 26 71 75 6f 74 3b 3c | ="tok-str">"test.zig"< |
| 8bd00 | 2f 73 70 61 6e 3e 29 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f | /span>));.}</code></pre><pre><co |
| 8bd20 | 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 | de.class="shell">$.zig.test.test |
| 8bd40 | 2e 7a 69 67 0a 31 2f 31 20 74 65 73 74 20 26 71 75 6f 74 3b 40 73 72 63 26 71 75 6f 74 3b 2e 2e | .zig.1/1.test."@src".. |
| 8bd60 | 2e 20 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e | ..OK.All.1.tests.passed..</code> |
| 8bd80 | 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 73 71 72 | </pre>...............<h2.id="sqr |
| 8bda0 | 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 73 71 72 74 22 3e 40 73 71 72 74 3c 2f 61 3e | t"><a.href="#toc-sqrt">@sqrt</a> |
| 8bdc0 | 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 73 71 72 74 22 3e c2 a7 3c | .<a.class="hdr".href="#sqrt">..< |
| 8bde0 | 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 | /a></h2>........<pre><code.class |
| 8be00 | 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 | ="zig"><span.class="tok-builtin" |
| 8be20 | 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 61 73 73 | >@sqrt</span>(value:.<span.class |
| 8be40 | 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. |
| 8be60 | 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 |
| 8be80 | 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> |
| 8bea0 | 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 6f 74 20 | .......Performs.the.square.root. |
| 8bec0 | 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 73 65 73 | of.a.floating.point.number..Uses |
| 8bee0 | 20 61 20 64 65 64 69 63 61 74 65 64 20 68 61 72 64 77 61 72 65 20 69 6e 73 74 72 75 63 74 69 6f | .a.dedicated.hardware.instructio |
| 8bf00 | 6e 0a 20 20 20 20 20 20 77 68 65 6e 20 61 76 61 69 6c 61 62 6c 65 2e 0a 20 20 20 20 20 20 3c 2f | n.......when.available........</ |
| 8bf20 | 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 53 75 70 70 6f 72 74 73 20 3c 61 20 68 | p>.......<p>.......Supports.<a.h |
| 8bf40 | 72 65 66 3d 22 23 46 6c 6f 61 74 73 22 3e 46 6c 6f 61 74 73 3c 2f 61 3e 20 61 6e 64 20 3c 61 20 | ref="#Floats">Floats</a>.and.<a. |
| 8bf60 | 68 72 65 66 3d 22 23 56 65 63 74 6f 72 73 22 3e 56 65 63 74 6f 72 73 3c 2f 61 3e 20 6f 66 20 66 | href="#Vectors">Vectors</a>.of.f |
| 8bf80 | 6c 6f 61 74 73 2c 20 77 69 74 68 20 74 68 65 20 63 61 76 65 61 74 20 74 68 61 74 0a 20 20 20 20 | loats,.with.the.caveat.that..... |
| 8bfa0 | 20 20 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 7a 69 | ..<a.href="https://github.com/zi |
| 8bfc0 | 67 6c 61 6e 67 2f 7a 69 67 2f 69 73 73 75 65 73 2f 34 30 32 36 22 3e 73 6f 6d 65 20 66 6c 6f 61 | glang/zig/issues/4026">some.floa |
| 8bfe0 | 74 20 6f 70 65 72 61 74 69 6f 6e 73 20 61 72 65 20 6e 6f 74 20 79 65 74 20 69 6d 70 6c 65 6d 65 | t.operations.are.not.yet.impleme |
| 8c000 | 6e 74 65 64 20 66 6f 72 20 61 6c 6c 20 66 6c 6f 61 74 20 74 79 70 65 73 3c 2f 61 3e 2e 0a 20 20 | nted.for.all.float.types</a>.... |
| 8c020 | 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 73 69 | ....</p>..............<h2.id="si |
| 8c040 | 6e 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 73 69 6e 22 3e 40 73 69 6e 3c 2f 61 3e 20 3c | n"><a.href="#toc-sin">@sin</a>.< |
| 8c060 | 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 73 69 6e 22 3e c2 a7 3c 2f 61 3e | a.class="hdr".href="#sin">..</a> |
| 8c080 | 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a | </h2>........<pre><code.class="z |
| 8c0a0 | 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 | ig"><span.class="tok-builtin">@s |
| 8c0c0 | 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 |
| 8c0e0 | 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 |
| 8c100 | 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 |
| 8c120 | 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>.... |
| 8c140 | 20 20 20 53 69 6e 65 20 74 72 69 67 6f 6d 65 74 72 69 63 20 66 75 6e 63 74 69 6f 6e 20 6f 6e 20 | ...Sine.trigometric.function.on. |
| 8c160 | 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. |
| 8c180 | 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.. |
| 8c1a0 | 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>. |
| 8c1c0 | 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 |
| 8c1e0 | 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 |
| 8c200 | 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 |
| 8c220 | 74 73 2c 20 77 69 74 68 20 74 68 65 20 63 61 76 65 61 74 20 74 68 61 74 0a 20 20 20 20 20 20 3c | ts,.with.the.caveat.that.......< |
| 8c240 | 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 7a 69 67 6c 61 | a.href="https://github.com/zigla |
| 8c260 | 6e 67 2f 7a 69 67 2f 69 73 73 75 65 73 2f 34 30 32 36 22 3e 73 6f 6d 65 20 66 6c 6f 61 74 20 6f | ng/zig/issues/4026">some.float.o |
| 8c280 | 70 65 72 61 74 69 6f 6e 73 20 61 72 65 20 6e 6f 74 20 79 65 74 20 69 6d 70 6c 65 6d 65 6e 74 65 | perations.are.not.yet.implemente |
| 8c2a0 | 64 20 66 6f 72 20 61 6c 6c 20 66 6c 6f 61 74 20 74 79 70 65 73 3c 2f 61 3e 2e 0a 20 20 20 20 20 | d.for.all.float.types</a>....... |
| 8c2c0 | 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 63 6f 73 22 3e | .</p>..............<h2.id="cos"> |
| 8c2e0 | 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 63 6f 73 22 3e 40 63 6f 73 3c 2f 61 3e 20 3c 61 20 63 | <a.href="#toc-cos">@cos</a>.<a.c |
| 8c300 | 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 63 6f 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 | lass="hdr".href="#cos">..</a></h |
| 8c320 | 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | 2>........<pre><code.class="zig" |
| 8c340 | 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 73 3c | ><span.class="tok-builtin">@cos< |
| 8c360 | 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 |
| 8c380 | 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=" |
| 8c3a0 | 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 |
| 8c3c0 | 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>....... |
| 8c3e0 | 43 6f 73 69 6e 65 20 74 72 69 67 6f 6d 65 74 72 69 63 20 66 75 6e 63 74 69 6f 6e 20 6f 6e 20 61 | Cosine.trigometric.function.on.a |
| 8c400 | 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 |
| 8c420 | 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... |
| 8c440 | 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>.. |
| 8c460 | 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= |
| 8c480 | 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 |
| 8c4a0 | 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 |
| 8c4c0 | 73 2c 20 77 69 74 68 20 74 68 65 20 63 61 76 65 61 74 20 74 68 61 74 0a 20 20 20 20 20 20 3c 61 | s,.with.the.caveat.that.......<a |
| 8c4e0 | 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 7a 69 67 6c 61 6e | .href="https://github.com/ziglan |
| 8c500 | 67 2f 7a 69 67 2f 69 73 73 75 65 73 2f 34 30 32 36 22 3e 73 6f 6d 65 20 66 6c 6f 61 74 20 6f 70 | g/zig/issues/4026">some.float.op |
| 8c520 | 65 72 61 74 69 6f 6e 73 20 61 72 65 20 6e 6f 74 20 79 65 74 20 69 6d 70 6c 65 6d 65 6e 74 65 64 | erations.are.not.yet.implemented |
| 8c540 | 20 66 6f 72 20 61 6c 6c 20 66 6c 6f 61 74 20 74 79 70 65 73 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 | .for.all.float.types</a>........ |
| 8c560 | 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 65 78 70 22 3e 3c | </p>..............<h2.id="exp">< |
| 8c580 | 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 65 78 70 22 3e 40 65 78 70 3c 2f 61 3e 20 3c 61 20 63 6c | a.href="#toc-exp">@exp</a>.<a.cl |
| 8c5a0 | 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 65 78 70 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 | ass="hdr".href="#exp">..</a></h2 |
| 8c5c0 | 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e | >........<pre><code.class="zig"> |
| 8c5e0 | 3c 73 70 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 2f | <span.class="tok-builtin">@exp</ |
| 8c600 | 73 70 61 6e 3e 28 76 61 6c 75 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | span>(value:.<span.class="tok-kw |
| 8c620 | 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 |
| 8c640 | 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 76 61 6c 75 65 | ok-builtin">@TypeOf</span>(value |
| 8c660 | 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 42 | )</code></pre>.......<p>.......B |
| 8c680 | 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 20 | ase-e.exponential.function.on.a. |
| 8c6a0 | 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 |
| 8c6c0 | 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.... |
| 8c6e0 | 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>... |
| 8c700 | 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=" |
| 8c720 | 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= |
| 8c740 | 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 |
| 8c760 | 2c 20 77 69 74 68 20 74 68 65 20 63 61 76 65 61 74 20 74 68 61 74 0a 20 20 20 20 20 20 3c 61 20 | ,.with.the.caveat.that.......<a. |
| 8c780 | 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 7a 69 67 6c 61 6e 67 | href="https://github.com/ziglang |
| 8c7a0 | 2f 7a 69 67 2f 69 73 73 75 65 73 2f 34 30 32 36 22 3e 73 6f 6d 65 20 66 6c 6f 61 74 20 6f 70 65 | /zig/issues/4026">some.float.ope |
| 8c7c0 | 72 61 74 69 6f 6e 73 20 61 72 65 20 6e 6f 74 20 79 65 74 20 69 6d 70 6c 65 6d 65 6e 74 65 64 20 | rations.are.not.yet.implemented. |
| 8c7e0 | 66 6f 72 20 61 6c 6c 20 66 6c 6f 61 74 20 74 79 70 65 73 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c | for.all.float.types</a>........< |
| 8c800 | 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 65 78 70 32 22 3e 3c | /p>..............<h2.id="exp2">< |
| 8c820 | 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 65 78 70 32 22 3e 40 65 78 70 32 3c 2f 61 3e 20 3c 61 20 | a.href="#toc-exp2">@exp2</a>.<a. |
| 8c840 | 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 65 78 70 32 22 3e c2 a7 3c 2f 61 3e 3c | class="hdr".href="#exp2">..</a>< |
| 8c860 | 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | /h2>........<pre><code.class="zi |
| 8c880 | 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 65 78 | g"><span.class="tok-builtin">@ex |
| 8c8a0 | 70 32 3c 2f 73 70 61 6e 3e 28 76 61 6c 75 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | p2</span>(value:.<span.class="to |
| 8c8c0 | 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 |
| 8c8e0 | 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 |
| 8c900 | 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>.... |
| 8c920 | 20 20 20 42 61 73 65 2d 32 20 65 78 70 6f 6e 65 6e 74 69 61 6c 20 66 75 6e 63 74 69 6f 6e 20 6f | ...Base-2.exponential.function.o |
| 8c940 | 6e 20 61 20 66 6c 6f 61 74 69 6e 67 20 70 6f 69 6e 74 20 6e 75 6d 62 65 72 2e 20 55 73 65 73 20 | n.a.floating.point.number..Uses. |
| 8c960 | 61 20 64 65 64 69 63 61 74 65 64 20 68 61 72 64 77 61 72 65 20 69 6e 73 74 72 75 63 74 69 6f 6e | a.dedicated.hardware.instruction |
| 8c980 | 0a 20 20 20 20 20 20 77 68 65 6e 20 61 76 61 69 6c 61 62 6c 65 2e 0a 20 20 20 20 20 20 3c 2f 70 | .......when.available........</p |
| 8c9a0 | 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 |
| 8c9c0 | 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 |
| 8c9e0 | 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 |
| 8ca00 | 6f 61 74 73 2c 20 77 69 74 68 20 74 68 65 20 63 61 76 65 61 74 20 74 68 61 74 0a 20 20 20 20 20 | oats,.with.the.caveat.that...... |
| 8ca20 | 20 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 7a 69 67 | .<a.href="https://github.com/zig |
| 8ca40 | 6c 61 6e 67 2f 7a 69 67 2f 69 73 73 75 65 73 2f 34 30 32 36 22 3e 73 6f 6d 65 20 66 6c 6f 61 74 | lang/zig/issues/4026">some.float |
| 8ca60 | 20 6f 70 65 72 61 74 69 6f 6e 73 20 61 72 65 20 6e 6f 74 20 79 65 74 20 69 6d 70 6c 65 6d 65 6e | .operations.are.not.yet.implemen |
| 8ca80 | 74 65 64 20 66 6f 72 20 61 6c 6c 20 66 6c 6f 61 74 20 74 79 70 65 73 3c 2f 61 3e 2e 0a 20 20 20 | ted.for.all.float.types</a>..... |
| 8caa0 | 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 6c 6f 67 | ...</p>..............<h2.id="log |
| 8cac0 | 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 3c 2f 61 3e 20 3c 61 | "><a.href="#toc-log">@log</a>.<a |
| 8cae0 | 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 c2 a7 3c 2f 61 3e 3c | .class="hdr".href="#log">..</a>< |
| 8cb00 | 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | /h2>........<pre><code.class="zi |
| 8cb20 | 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 6c 6f | g"><span.class="tok-builtin">@lo |
| 8cb40 | 67 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 | g</span>(value:.<span.class="tok |
| 8cb60 | 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 |
| 8cb80 | 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 76 61 | ="tok-builtin">@TypeOf</span>(va |
| 8cba0 | 6c 75 65 29 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 | lue)</code></pre>.......<p>..... |
| 8cbc0 | 20 20 52 65 74 75 72 6e 73 20 74 68 65 20 6e 61 74 75 72 61 6c 20 6c 6f 67 61 72 69 74 68 6d 20 | ..Returns.the.natural.logarithm. |
| 8cbe0 | 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 73 65 73 | of.a.floating.point.number..Uses |
| 8cc00 | 20 61 20 64 65 64 69 63 61 74 65 64 20 68 61 72 64 77 61 72 65 20 69 6e 73 74 72 75 63 74 69 6f | .a.dedicated.hardware.instructio |
| 8cc20 | 6e 0a 20 20 20 20 20 20 77 68 65 6e 20 61 76 61 69 6c 61 62 6c 65 2e 0a 20 20 20 20 20 20 3c 2f | n.......when.available........</ |
| 8cc40 | 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 53 75 70 70 6f 72 74 73 20 3c 61 20 68 | p>.......<p>.......Supports.<a.h |
| 8cc60 | 72 65 66 3d 22 23 46 6c 6f 61 74 73 22 3e 46 6c 6f 61 74 73 3c 2f 61 3e 20 61 6e 64 20 3c 61 20 | ref="#Floats">Floats</a>.and.<a. |
| 8cc80 | 68 72 65 66 3d 22 23 56 65 63 74 6f 72 73 22 3e 56 65 63 74 6f 72 73 3c 2f 61 3e 20 6f 66 20 66 | href="#Vectors">Vectors</a>.of.f |
| 8cca0 | 6c 6f 61 74 73 2c 20 77 69 74 68 20 74 68 65 20 63 61 76 65 61 74 20 74 68 61 74 0a 20 20 20 20 | loats,.with.the.caveat.that..... |
| 8ccc0 | 20 20 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 7a 69 | ..<a.href="https://github.com/zi |
| 8cce0 | 67 6c 61 6e 67 2f 7a 69 67 2f 69 73 73 75 65 73 2f 34 30 32 36 22 3e 73 6f 6d 65 20 66 6c 6f 61 | glang/zig/issues/4026">some.floa |
| 8cd00 | 74 20 6f 70 65 72 61 74 69 6f 6e 73 20 61 72 65 20 6e 6f 74 20 79 65 74 20 69 6d 70 6c 65 6d 65 | t.operations.are.not.yet.impleme |
| 8cd20 | 6e 74 65 64 20 66 6f 72 20 61 6c 6c 20 66 6c 6f 61 74 20 74 79 70 65 73 3c 2f 61 3e 2e 0a 20 20 | nted.for.all.float.types</a>.... |
| 8cd40 | 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 6c 6f | ....</p>..............<h2.id="lo |
| 8cd60 | 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 32 3c 2f 61 | g2"><a.href="#toc-log2">@log2</a |
| 8cd80 | 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 22 3e c2 a7 | >.<a.class="hdr".href="#log2">.. |
| 8cda0 | 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 | </a></h2>........<pre><code.clas |
| 8cdc0 | 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e | s="zig"><span.class="tok-builtin |
| 8cde0 | 22 3e 40 6c 6f 67 32 3c 2f 73 70 61 6e 3e 28 76 61 6c 75 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 | ">@log2</span>(value:.<span.clas |
| 8ce00 | 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 |
| 8ce20 | 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 |
| 8ce40 | 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 |
| 8ce60 | 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 74 68 6d 20 74 6f | >.......Returns.the.logarithm.to |
| 8ce80 | 20 74 68 65 20 62 61 73 65 20 32 20 6f 66 20 61 20 66 6c 6f 61 74 69 6e 67 20 70 6f 69 6e 74 20 | .the.base.2.of.a.floating.point. |
| 8cea0 | 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 64 77 61 72 | number..Uses.a.dedicated.hardwar |
| 8cec0 | 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 69 6c 61 62 | e.instruction.......when.availab |
| 8cee0 | 6c 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 53 | le........</p>.......<p>.......S |
| 8cf00 | 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 74 73 | upports.<a.href="#Floats">Floats |
| 8cf20 | 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 63 74 | </a>.and.<a.href="#Vectors">Vect |
| 8cf40 | 6f 72 73 3c 2f 61 3e 20 6f 66 20 66 6c 6f 61 74 73 2c 20 77 69 74 68 20 74 68 65 20 63 61 76 65 | ors</a>.of.floats,.with.the.cave |
| 8cf60 | 61 74 20 74 68 61 74 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 67 | at.that.......<a.href="https://g |
| 8cf80 | 69 74 68 75 62 2e 63 6f 6d 2f 7a 69 67 6c 61 6e 67 2f 7a 69 67 2f 69 73 73 75 65 73 2f 34 30 32 | ithub.com/ziglang/zig/issues/402 |
| 8cfa0 | 36 22 3e 73 6f 6d 65 20 66 6c 6f 61 74 20 6f 70 65 72 61 74 69 6f 6e 73 20 61 72 65 20 6e 6f 74 | 6">some.float.operations.are.not |
| 8cfc0 | 20 79 65 74 20 69 6d 70 6c 65 6d 65 6e 74 65 64 20 66 6f 72 20 61 6c 6c 20 66 6c 6f 61 74 20 74 | .yet.implemented.for.all.float.t |
| 8cfe0 | 79 70 65 73 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 | ypes</a>........</p>............ |
| 8d000 | 20 20 3c 68 32 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 6c | ..<h2.id="log10"><a.href="#toc-l |
| 8d020 | 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 20 | og10">@log10</a>.<a.class="hdr". |
| 8d040 | 68 72 65 66 3d 22 23 6c 6f 67 31 30 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 | href="#log10">..</a></h2>....... |
| 8d060 | 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c | .<pre><code.class="zig"><span.cl |
| 8d080 | 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 6c 6f 67 31 30 3c 2f 73 70 61 6e 3e 28 | ass="tok-builtin">@log10</span>( |
| 8d0a0 | 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 |
| 8d0c0 | 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 |
| 8d0e0 | 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 |
| 8d100 | 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 52 65 74 75 72 6e 73 | e></pre>.......<p>.......Returns |
| 8d120 | 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 65 20 31 30 20 6f 66 | .the.logarithm.to.the.base.10.of |
| 8d140 | 20 61 20 66 6c 6f 61 74 69 6e 67 20 70 6f 69 6e 74 20 6e 75 6d 62 65 72 2e 20 55 73 65 73 20 61 | .a.floating.point.number..Uses.a |
| 8d160 | 20 64 65 64 69 63 61 74 65 64 20 68 61 72 64 77 61 72 65 20 69 6e 73 74 72 75 63 74 69 6f 6e 0a | .dedicated.hardware.instruction. |
| 8d180 | 20 20 20 20 20 20 77 68 65 6e 20 61 76 61 69 6c 61 62 6c 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e | ......when.available........</p> |
| 8d1a0 | 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 53 75 70 70 6f 72 74 73 20 3c 61 20 68 72 65 | .......<p>.......Supports.<a.hre |
| 8d1c0 | 66 3d 22 23 46 6c 6f 61 74 73 22 3e 46 6c 6f 61 74 73 3c 2f 61 3e 20 61 6e 64 20 3c 61 20 68 72 | f="#Floats">Floats</a>.and.<a.hr |
| 8d1e0 | 65 66 3d 22 23 56 65 63 74 6f 72 73 22 3e 56 65 63 74 6f 72 73 3c 2f 61 3e 20 6f 66 20 66 6c 6f | ef="#Vectors">Vectors</a>.of.flo |
| 8d200 | 61 74 73 2c 20 77 69 74 68 20 74 68 65 20 63 61 76 65 61 74 20 74 68 61 74 0a 20 20 20 20 20 20 | ats,.with.the.caveat.that....... |
| 8d220 | 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 7a 69 67 6c | <a.href="https://github.com/zigl |
| 8d240 | 61 6e 67 2f 7a 69 67 2f 69 73 73 75 65 73 2f 34 30 32 36 22 3e 73 6f 6d 65 20 66 6c 6f 61 74 20 | ang/zig/issues/4026">some.float. |
| 8d260 | 6f 70 65 72 61 74 69 6f 6e 73 20 61 72 65 20 6e 6f 74 20 79 65 74 20 69 6d 70 6c 65 6d 65 6e 74 | operations.are.not.yet.implement |
| 8d280 | 65 64 20 66 6f 72 20 61 6c 6c 20 66 6c 6f 61 74 20 74 79 70 65 73 3c 2f 61 3e 2e 0a 20 20 20 20 | ed.for.all.float.types</a>...... |
| 8d2a0 | 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 66 61 62 73 | ..</p>..............<h2.id="fabs |
| 8d2c0 | 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 66 61 62 73 22 3e 40 66 61 62 73 3c 2f 61 3e 20 | "><a.href="#toc-fabs">@fabs</a>. |
| 8d2e0 | 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 66 61 62 73 22 3e c2 a7 3c 2f | <a.class="hdr".href="#fabs">..</ |
| 8d300 | 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d | a></h2>........<pre><code.class= |
| 8d320 | 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e | "zig"><span.class="tok-builtin"> |
| 8d340 | 40 66 61 62 73 3c 2f 73 70 61 6e 3e 28 76 61 6c 75 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | @fabs</span>(value:.<span.class= |
| 8d360 | 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 |
| 8d380 | 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 |
| 8d3a0 | 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>. |
| 8d3c0 | 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 65 | ......Returns.the.absolute.value |
| 8d3e0 | 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 73 65 | .of.a.floating.point.number..Use |
| 8d400 | 73 20 61 20 64 65 64 69 63 61 74 65 64 20 68 61 72 64 77 61 72 65 20 69 6e 73 74 72 75 63 74 69 | s.a.dedicated.hardware.instructi |
| 8d420 | 6f 6e 0a 20 20 20 20 20 20 77 68 65 6e 20 61 76 61 69 6c 61 62 6c 65 2e 0a 20 20 20 20 20 20 3c | on.......when.available........< |
| 8d440 | 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. |
| 8d460 | 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 |
| 8d480 | 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. |
| 8d4a0 | 66 6c 6f 61 74 73 2c 20 77 69 74 68 20 74 68 65 20 63 61 76 65 61 74 20 74 68 61 74 0a 20 20 20 | floats,.with.the.caveat.that.... |
| 8d4c0 | 20 20 20 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 7a | ...<a.href="https://github.com/z |
| 8d4e0 | 69 67 6c 61 6e 67 2f 7a 69 67 2f 69 73 73 75 65 73 2f 34 30 32 36 22 3e 73 6f 6d 65 20 66 6c 6f | iglang/zig/issues/4026">some.flo |
| 8d500 | 61 74 20 6f 70 65 72 61 74 69 6f 6e 73 20 61 72 65 20 6e 6f 74 20 79 65 74 20 69 6d 70 6c 65 6d | at.operations.are.not.yet.implem |
| 8d520 | 65 6e 74 65 64 20 66 6f 72 20 61 6c 6c 20 66 6c 6f 61 74 20 74 79 70 65 73 3c 2f 61 3e 2e 0a 20 | ented.for.all.float.types</a>... |
| 8d540 | 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 66 | .....</p>..............<h2.id="f |
| 8d560 | 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 3e 40 66 6c 6f 6f | loor"><a.href="#toc-floor">@floo |
| 8d580 | 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 66 6c 6f 6f | r</a>.<a.class="hdr".href="#floo |
| 8d5a0 | 72 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 | r">..</a></h2>........<pre><code |
| 8d5c0 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 | .class="zig"><span.class="tok-bu |
| 8d5e0 | 69 6c 74 69 6e 22 3e 40 66 6c 6f 6f 72 3c 2f 73 70 61 6e 3e 28 76 61 6c 75 65 3a 20 3c 73 70 61 | iltin">@floor</span>(value:.<spa |
| 8d600 | 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>) |
| 8d620 | 20 3c 73 70 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 |
| 8d640 | 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>... |
| 8d660 | 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 61 72 67 65 73 | ....<p>.......Returns.the.larges |
| 8d680 | 74 20 69 6e 74 65 67 72 61 6c 20 76 61 6c 75 65 20 6e 6f 74 20 67 72 65 61 74 65 72 20 74 68 61 | t.integral.value.not.greater.tha |
| 8d6a0 | 6e 20 74 68 65 20 67 69 76 65 6e 20 66 6c 6f 61 74 69 6e 67 20 70 6f 69 6e 74 20 6e 75 6d 62 65 | n.the.given.floating.point.numbe |
| 8d6c0 | 72 2e 0a 20 20 20 20 20 20 55 73 65 73 20 61 20 64 65 64 69 63 61 74 65 64 20 68 61 72 64 77 61 | r........Uses.a.dedicated.hardwa |
| 8d6e0 | 72 65 20 69 6e 73 74 72 75 63 74 69 6f 6e 20 77 68 65 6e 20 61 76 61 69 6c 61 62 6c 65 2e 0a 20 | re.instruction.when.available... |
| 8d700 | 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 53 75 70 70 6f 72 | .....</p>.......<p>.......Suppor |
| 8d720 | 74 73 20 3c 61 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 73 22 3e 46 6c 6f 61 74 73 3c 2f 61 3e 20 | ts.<a.href="#Floats">Floats</a>. |
| 8d740 | 61 6e 64 20 3c 61 20 68 72 65 66 3d 22 23 56 65 63 74 6f 72 73 22 3e 56 65 63 74 6f 72 73 3c 2f | and.<a.href="#Vectors">Vectors</ |
| 8d760 | 61 3e 20 6f 66 20 66 6c 6f 61 74 73 2c 20 77 69 74 68 20 74 68 65 20 63 61 76 65 61 74 20 74 68 | a>.of.floats,.with.the.caveat.th |
| 8d780 | 61 74 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 | at.......<a.href="https://github |
| 8d7a0 | 2e 63 6f 6d 2f 7a 69 67 6c 61 6e 67 2f 7a 69 67 2f 69 73 73 75 65 73 2f 34 30 32 36 22 3e 73 6f | .com/ziglang/zig/issues/4026">so |
| 8d7c0 | 6d 65 20 66 6c 6f 61 74 20 6f 70 65 72 61 74 69 6f 6e 73 20 61 72 65 20 6e 6f 74 20 79 65 74 20 | me.float.operations.are.not.yet. |
| 8d7e0 | 69 6d 70 6c 65 6d 65 6e 74 65 64 20 66 6f 72 20 61 6c 6c 20 66 6c 6f 61 74 20 74 79 70 65 73 3c | implemented.for.all.float.types< |
| 8d800 | 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 | /a>........</p>..............<h2 |
| 8d820 | 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 22 3e 40 | .id="ceil"><a.href="#toc-ceil">@ |
| 8d840 | 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 22 23 63 | ceil</a>.<a.class="hdr".href="#c |
| 8d860 | 65 69 6c 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f | eil">..</a></h2>........<pre><co |
| 8d880 | 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | de.class="zig"><span.class="tok- |
| 8d8a0 | 62 75 69 6c 74 69 6e 22 3e 40 63 65 69 6c 3c 2f 73 70 61 6e 3e 28 76 61 6c 75 65 3a 20 3c 73 70 | builtin">@ceil</span>(value:.<sp |
| 8d8c0 | 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> |
| 8d8e0 | 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 70 | ).<span.class="tok-builtin">@Typ |
| 8d900 | 65 4f 66 3c 2f 73 70 61 6e 3e 28 76 61 6c 75 65 29 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 | eOf</span>(value)</code></pre>.. |
| 8d920 | 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 52 65 74 75 72 6e 73 20 74 68 65 20 6c 61 72 67 65 | .....<p>.......Returns.the.large |
| 8d940 | 73 74 20 69 6e 74 65 67 72 61 6c 20 76 61 6c 75 65 20 6e 6f 74 20 6c 65 73 73 20 74 68 61 6e 20 | st.integral.value.not.less.than. |
| 8d960 | 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 2e | the.given.floating.point.number. |
| 8d980 | 0a 20 20 20 20 20 20 55 73 65 73 20 61 20 64 65 64 69 63 61 74 65 64 20 68 61 72 64 77 61 72 65 | .......Uses.a.dedicated.hardware |
| 8d9a0 | 20 69 6e 73 74 72 75 63 74 69 6f 6e 20 77 68 65 6e 20 61 76 61 69 6c 61 62 6c 65 2e 0a 20 20 20 | .instruction.when.available..... |
| 8d9c0 | 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 53 75 70 70 6f 72 74 73 | ...</p>.......<p>.......Supports |
| 8d9e0 | 20 3c 61 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 73 22 3e 46 6c 6f 61 74 73 3c 2f 61 3e 20 61 6e | .<a.href="#Floats">Floats</a>.an |
| 8da00 | 64 20 3c 61 20 68 72 65 66 3d 22 23 56 65 63 74 6f 72 73 22 3e 56 65 63 74 6f 72 73 3c 2f 61 3e | d.<a.href="#Vectors">Vectors</a> |
| 8da20 | 20 6f 66 20 66 6c 6f 61 74 73 2c 20 77 69 74 68 20 74 68 65 20 63 61 76 65 61 74 20 74 68 61 74 | .of.floats,.with.the.caveat.that |
| 8da40 | 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 | .......<a.href="https://github.c |
| 8da60 | 6f 6d 2f 7a 69 67 6c 61 6e 67 2f 7a 69 67 2f 69 73 73 75 65 73 2f 34 30 32 36 22 3e 73 6f 6d 65 | om/ziglang/zig/issues/4026">some |
| 8da80 | 20 66 6c 6f 61 74 20 6f 70 65 72 61 74 69 6f 6e 73 20 61 72 65 20 6e 6f 74 20 79 65 74 20 69 6d | .float.operations.are.not.yet.im |
| 8daa0 | 70 6c 65 6d 65 6e 74 65 64 20 66 6f 72 20 61 6c 6c 20 66 6c 6f 61 74 20 74 79 70 65 73 3c 2f 61 | plemented.for.all.float.types</a |
| 8dac0 | 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 | >........</p>..............<h2.i |
| 8dae0 | 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 40 | d="trunc"><a.href="#toc-trunc">@ |
| 8db00 | 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 23 | trunc</a>.<a.class="hdr".href="# |
| 8db20 | 74 72 75 6e 63 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c | trunc">..</a></h2>........<pre>< |
| 8db40 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | code.class="zig"><span.class="to |
| 8db60 | 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 74 72 75 6e 63 3c 2f 73 70 61 6e 3e 28 76 61 6c 75 65 3a 20 | k-builtin">@trunc</span>(value:. |
| 8db80 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 79 74 79 70 65 3c 2f 73 70 | <span.class="tok-kw">anytype</sp |
| 8dba0 | 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 | an>).<span.class="tok-builtin">@ |
| 8dbc0 | 54 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 76 61 6c 75 65 29 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 | TypeOf</span>(value)</code></pre |
| 8dbe0 | 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 74 68 65 20 67 69 76 | >.......<p>.......Rounds.the.giv |
| 8dc00 | 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 74 6f 20 61 6e 20 69 | en.floating.point.number.to.an.i |
| 8dc20 | 6e 74 65 67 65 72 2c 20 74 6f 77 61 72 64 73 20 7a 65 72 6f 2e 0a 20 20 20 20 20 20 55 73 65 73 | nteger,.towards.zero........Uses |
| 8dc40 | 20 61 20 64 65 64 69 63 61 74 65 64 20 68 61 72 64 77 61 72 65 20 69 6e 73 74 72 75 63 74 69 6f | .a.dedicated.hardware.instructio |
| 8dc60 | 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 20 20 20 | n.when.available........</p>.... |
| 8dc80 | 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 53 75 70 70 6f 72 74 73 20 3c 61 20 68 72 65 66 3d 22 23 | ...<p>.......Supports.<a.href="# |
| 8dca0 | 46 6c 6f 61 74 73 22 3e 46 6c 6f 61 74 73 3c 2f 61 3e 20 61 6e 64 20 3c 61 20 68 72 65 66 3d 22 | Floats">Floats</a>.and.<a.href=" |
| 8dcc0 | 23 56 65 63 74 6f 72 73 22 3e 56 65 63 74 6f 72 73 3c 2f 61 3e 20 6f 66 20 66 6c 6f 61 74 73 2c | #Vectors">Vectors</a>.of.floats, |
| 8dce0 | 20 77 69 74 68 20 74 68 65 20 63 61 76 65 61 74 20 74 68 61 74 0a 20 20 20 20 20 20 3c 61 20 68 | .with.the.caveat.that.......<a.h |
| 8dd00 | 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 7a 69 67 6c 61 6e 67 2f | ref="https://github.com/ziglang/ |
| 8dd20 | 7a 69 67 2f 69 73 73 75 65 73 2f 34 30 32 36 22 3e 73 6f 6d 65 20 66 6c 6f 61 74 20 6f 70 65 72 | zig/issues/4026">some.float.oper |
| 8dd40 | 61 74 69 6f 6e 73 20 61 72 65 20 6e 6f 74 20 79 65 74 20 69 6d 70 6c 65 6d 65 6e 74 65 64 20 66 | ations.are.not.yet.implemented.f |
| 8dd60 | 6f 72 20 61 6c 6c 20 66 6c 6f 61 74 20 74 79 70 65 73 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f | or.all.float.types</a>........</ |
| 8dd80 | 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 72 6f 75 6e 64 22 3e 3c | p>..............<h2.id="round">< |
| 8dda0 | 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 72 6f 75 6e 64 22 3e 40 72 6f 75 6e 64 3c 2f 61 3e 20 3c | a.href="#toc-round">@round</a>.< |
| 8ddc0 | 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 72 6f 75 6e 64 22 3e c2 a7 3c 2f | a.class="hdr".href="#round">..</ |
| 8dde0 | 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d | a></h2>........<pre><code.class= |
| 8de00 | 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e | "zig"><span.class="tok-builtin"> |
| 8de20 | 40 72 6f 75 6e 64 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 | @round</span>(value:.<span.class |
| 8de40 | 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. |
| 8de60 | 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 |
| 8de80 | 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> |
| 8dea0 | 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 |
| 8dec0 | 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 61 77 61 | .point.number.to.an.integer,.awa |
| 8dee0 | 79 20 66 72 6f 6d 20 7a 65 72 6f 2e 20 55 73 65 73 20 61 20 64 65 64 69 63 61 74 65 64 20 68 61 | y.from.zero..Uses.a.dedicated.ha |
| 8df00 | 72 64 77 61 72 65 20 69 6e 73 74 72 75 63 74 69 6f 6e 0a 20 20 20 20 20 20 77 68 65 6e 20 61 76 | rdware.instruction.......when.av |
| 8df20 | 61 69 6c 61 62 6c 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 | ailable........</p>.......<p>... |
| 8df40 | 20 20 20 20 53 75 70 70 6f 72 74 73 20 3c 61 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 73 22 3e 46 | ....Supports.<a.href="#Floats">F |
| 8df60 | 6c 6f 61 74 73 3c 2f 61 3e 20 61 6e 64 20 3c 61 20 68 72 65 66 3d 22 23 56 65 63 74 6f 72 73 22 | loats</a>.and.<a.href="#Vectors" |
| 8df80 | 3e 56 65 63 74 6f 72 73 3c 2f 61 3e 20 6f 66 20 66 6c 6f 61 74 73 2c 20 77 69 74 68 20 74 68 65 | >Vectors</a>.of.floats,.with.the |
| 8dfa0 | 20 63 61 76 65 61 74 20 74 68 61 74 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 68 74 74 70 | .caveat.that.......<a.href="http |
| 8dfc0 | 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 65 | s://github.com/ziglang/zig/issue |
| 8dfe0 | 73 2f 34 30 32 36 22 3e 73 6f 6d 65 20 66 6c 6f 61 74 20 6f 70 65 72 61 74 69 6f 6e 73 20 61 72 | s/4026">some.float.operations.ar |
| 8e000 | 65 20 6e 6f 74 20 79 65 74 20 69 6d 70 6c 65 6d 65 6e 74 65 64 20 66 6f 72 20 61 6c 6c 20 66 6c | e.not.yet.implemented.for.all.fl |
| 8e020 | 6f 61 74 20 74 79 70 65 73 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 | oat.types</a>........</p>....... |
| 8e040 | 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 73 75 62 57 69 74 68 4f 76 65 72 66 6c 6f 77 22 | ........<h2.id="subWithOverflow" |
| 8e060 | 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 3e | ><a.href="#toc-subWithOverflow"> |
| 8e080 | 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 68 | @subWithOverflow</a>.<a.class="h |
| 8e0a0 | 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 2f | dr".href="#subWithOverflow">..</ |
| 8e0c0 | 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d | a></h2>........<pre><code.class= |
| 8e0e0 | 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e | "zig"><span.class="tok-builtin"> |
| 8e100 | 40 73 75 62 57 69 74 68 4f 76 65 72 66 6c 6f 77 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c | @subWithOverflow</span>(<span.cl |
| 8e120 | 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:. |
| 8e140 | 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 |
| 8e160 | 6e 3e 2c 20 61 3a 20 54 2c 20 62 3a 20 54 2c 20 72 65 73 75 6c 74 3a 20 2a 54 29 20 3c 73 70 61 | n>,.a:.T,.b:.T,.result:.*T).<spa |
| 8e180 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 3c 2f | n.class="tok-type">bool</span></ |
| 8e1a0 | 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 50 65 72 66 | code></pre>.......<p>.......Perf |
| 8e1c0 | 6f 72 6d 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 72 65 73 75 6c 74 2e 2a 20 | orms.<code.class="zig">result.*. |
| 8e1e0 | 3d 20 61 20 2d 20 62 3c 2f 63 6f 64 65 3e 2e 20 49 66 20 6f 76 65 72 66 6c 6f 77 20 6f 72 20 75 | =.a.-.b</code>..If.overflow.or.u |
| 8e200 | 6e 64 65 72 66 6c 6f 77 20 6f 63 63 75 72 73 2c 0a 20 20 20 20 20 20 20 20 20 20 73 74 6f 72 65 | nderflow.occurs,...........store |
| 8e220 | 73 20 74 68 65 20 6f 76 65 72 66 6c 6f 77 65 64 20 62 69 74 73 20 69 6e 20 3c 63 6f 64 65 20 63 | s.the.overflowed.bits.in.<code.c |
| 8e240 | 6c 61 73 73 3d 22 7a 69 67 22 3e 72 65 73 75 6c 74 3c 2f 63 6f 64 65 3e 20 61 6e 64 20 72 65 74 | lass="zig">result</code>.and.ret |
| 8e260 | 75 72 6e 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 | urns.<code.class="zig"><span.cla |
| 8e280 | 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e | ss="tok-null">true</span></code> |
| 8e2a0 | 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 49 66 20 6e 6f 20 6f 76 65 72 66 6c | ....................If.no.overfl |
| 8e2c0 | 6f 77 20 6f 72 20 75 6e 64 65 72 66 6c 6f 77 20 6f 63 63 75 72 73 2c 20 72 65 74 75 72 6e 73 20 | ow.or.underflow.occurs,.returns. |
| 8e2e0 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | <code.class="zig"><span.class="t |
| 8e300 | 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 0a 20 20 | ok-null">false</span></code>.... |
| 8e320 | 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 74 | ....</p>...............<h2.id="t |
| 8e340 | 61 67 4e 61 6d 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 74 61 67 4e 61 6d 65 22 3e 40 | agName"><a.href="#toc-tagName">@ |
| 8e360 | 74 61 67 4e 61 6d 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d | tagName</a>.<a.class="hdr".href= |
| 8e380 | 22 23 74 61 67 4e 61 6d 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 | "#tagName">..</a></h2>........<p |
| 8e3a0 | 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | re><code.class="zig"><span.class |
| 8e3c0 | 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 74 61 67 4e 61 6d 65 3c 2f 73 70 61 6e 3e 28 76 | ="tok-builtin">@tagName</span>(v |
| 8e3e0 | 61 6c 75 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 79 74 79 | alue:.<span.class="tok-kw">anyty |
| 8e400 | 70 65 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 77 | pe</span>).[]<span.class="tok-kw |
| 8e420 | 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- |
| 8e440 | 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 | type">u8</span></code></pre>.... |
| 8e460 | 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 43 6f 6e 76 65 72 74 73 20 61 6e 20 65 6e 75 6d 20 76 61 | ...<p>.......Converts.an.enum.va |
| 8e480 | 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 6c 69 63 65 20 6f 66 | lue.or.union.value.to.a.slice.of |
| 8e4a0 | 20 62 79 74 65 73 20 72 65 70 72 65 73 65 6e 74 69 6e 67 20 74 68 65 20 6e 61 6d 65 2e 3c 2f 70 | .bytes.representing.the.name.</p |
| 8e4c0 | 3e 3c 70 3e 49 66 20 74 68 65 20 65 6e 75 6d 20 69 73 20 6e 6f 6e 2d 65 78 68 61 75 73 74 69 76 | ><p>If.the.enum.is.non-exhaustiv |
| 8e4e0 | 65 20 61 6e 64 20 74 68 65 20 74 61 67 20 76 61 6c 75 65 20 64 6f 65 73 20 6e 6f 74 20 6d 61 70 | e.and.the.tag.value.does.not.map |
| 8e500 | 20 74 6f 20 61 20 6e 61 6d 65 2c 20 69 74 20 69 6e 76 6f 6b 65 73 20 73 61 66 65 74 79 2d 63 68 | .to.a.name,.it.invokes.safety-ch |
| 8e520 | 65 63 6b 65 64 20 3c 61 20 68 72 65 66 3d 22 23 55 6e 64 65 66 69 6e 65 64 2d 42 65 68 61 76 69 | ecked.<a.href="#Undefined-Behavi |
| 8e540 | 6f 72 22 3e 55 6e 64 65 66 69 6e 65 64 20 42 65 68 61 76 69 6f 72 3c 2f 61 3e 2e 0a 20 20 20 20 | or">Undefined.Behavior</a>...... |
| 8e560 | 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 54 61 67 | ..</p>...............<h2.id="Tag |
| 8e580 | 54 79 70 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 54 61 67 54 79 70 65 22 3e 40 54 61 | Type"><a.href="#toc-TagType">@Ta |
| 8e5a0 | 67 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 | gType</a>.<a.class="hdr".href="# |
| 8e5c0 | 54 61 67 54 79 70 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 | TagType">..</a></h2>........<pre |
| 8e5e0 | 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ><code.class="zig"><span.class=" |
| 8e600 | 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 61 67 54 79 70 65 3c 2f 73 70 61 6e 3e 28 54 3a 20 | tok-builtin">@TagType</span>(T:. |
| 8e620 | 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 |
| 8e640 | 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c | n>).<span.class="tok-type">type< |
| 8e660 | 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>... |
| 8e680 | 20 20 20 20 46 6f 72 20 61 6e 20 65 6e 75 6d 2c 20 72 65 74 75 72 6e 73 20 74 68 65 20 69 6e 74 | ....For.an.enum,.returns.the.int |
| 8e6a0 | 65 67 65 72 20 74 79 70 65 20 74 68 61 74 20 69 73 20 75 73 65 64 20 74 6f 20 73 74 6f 72 65 20 | eger.type.that.is.used.to.store. |
| 8e6c0 | 74 68 65 20 65 6e 75 6d 65 72 61 74 69 6f 6e 20 76 61 6c 75 65 2e 0a 20 20 20 20 20 20 3c 2f 70 | the.enumeration.value........</p |
| 8e6e0 | 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 46 6f 72 20 61 20 75 6e 69 6f 6e 2c 20 72 | >.......<p>.......For.a.union,.r |
| 8e700 | 65 74 75 72 6e 73 20 74 68 65 20 65 6e 75 6d 20 74 79 70 65 20 74 68 61 74 20 69 73 20 75 73 65 | eturns.the.enum.type.that.is.use |
| 8e720 | 64 20 74 6f 20 73 74 6f 72 65 20 74 68 65 20 74 61 67 20 76 61 6c 75 65 2e 0a 20 20 20 20 20 20 | d.to.store.the.tag.value........ |
| 8e740 | 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 54 68 69 73 22 | </p>...............<h2.id="This" |
| 8e760 | 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 54 68 69 73 22 3e 40 54 68 69 73 3c 2f 61 3e 20 3c | ><a.href="#toc-This">@This</a>.< |
| 8e780 | 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 54 68 69 73 22 3e c2 a7 3c 2f 61 | a.class="hdr".href="#This">..</a |
| 8e7a0 | 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | ></h2>........<pre><code.class=" |
| 8e7c0 | 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 | zig"><span.class="tok-builtin">@ |
| 8e7e0 | 54 68 69 73 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | This</span>().<span.class="tok-t |
| 8e800 | 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 | ype">type</span></code></pre>... |
| 8e820 | 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 69 6e 6e 65 72 6d | ....<p>.......Returns.the.innerm |
| 8e840 | 6f 73 74 20 73 74 72 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 | ost.struct,.enum,.or.union.that. |
| 8e860 | 74 68 69 73 20 66 75 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 | this.function.call.is.inside.... |
| 8e880 | 20 20 20 20 54 68 69 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 | ....This.can.be.useful.for.an.an |
| 8e8a0 | 6f 6e 79 6d 6f 75 73 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 | onymous.struct.that.needs.to.ref |
| 8e8c0 | 65 72 20 74 6f 20 69 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 | er.to.itself:.......</p>.......< |
| 8e8e0 | 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e | p.class="file">test.zig</p><pre> |
| 8e900 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | <code.class="zig"><span.class="t |
| 8e920 | 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. |
| 8e940 | 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 |
| 8e960 | 6e 3e 28 3c 73 70 61 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 |
| 8e980 | 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 |
| 8e9a0 | 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 |
| 8e9c0 | 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 |
| 8e9e0 | 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=" |
| 8ea00 | 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 40 54 68 69 73 28 29 26 71 75 6f 74 3b 3c 2f 73 70 | tok-str">"@This()"</sp |
| 8ea20 | 61 6e 3e 20 7b 0a 20 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 |
| 8ea40 | 61 72 3c 2f 73 70 61 6e 3e 20 69 74 65 6d 73 20 3d 20 5b 5f 5d 3c 73 70 61 6e 20 63 6c 61 73 73 | ar</span>.items.=.[_]<span.class |
| 8ea60 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 7b 20 3c 73 70 61 6e 20 63 6c | ="tok-type">i32</span>{.<span.cl |
| 8ea80 | 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 |
| 8eaa0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 2c 20 3c 73 | .class="tok-number">2</span>,.<s |
| 8eac0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 2c | pan.class="tok-number">3</span>, |
| 8eae0 | 20 3c 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 |
| 8eb00 | 6e 3e 20 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 | n>.};.....<span.class="tok-kw">c |
| 8eb20 | 6f 6e 73 74 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 | onst</span>.list.=.List(<span.cl |
| 8eb40 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 7b 20 2e 69 74 65 | ass="tok-type">i32</span>){..ite |
| 8eb60 | 6d 73 20 3d 20 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 | ms.=.items[<span.class="tok-numb |
| 8eb80 | 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 2e 2e 5d 20 7d 3b 0a 20 20 20 20 65 78 70 65 63 74 28 6c 69 | er">0</span>..].};.....expect(li |
| 8eba0 | 73 74 2e 6c 65 6e 67 74 68 28 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | st.length().==.<span.class="tok- |
| 8ebc0 | 6e 75 6d 62 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 | number">4</span>);.}..<span.clas |
| 8ebe0 | 73 3d 22 74 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 |
| 8ec00 | 3d 22 74 6f 6b 2d 66 6e 22 3e 4c 69 73 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 | ="tok-fn">List</span>(<span.clas |
| 8ec20 | 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 |
| 8ec40 | 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> |
| 8ec60 | 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 | ).<span.class="tok-type">type</s |
| 8ec80 | 70 61 6e 3e 20 7b 0a 20 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"> |
| 8eca0 | 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | return</span>.<span.class="tok-k |
| 8ecc0 | 77 22 3e 73 74 72 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e | w">struct</span>.{.........<span |
| 8ece0 | 20 63 6c 61 73 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 6c | .class="tok-kw">const</span>.Sel |
| 8ed00 | 66 20 3d 20 3c 73 70 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 | f.=.<span.class="tok-builtin">@T |
| 8ed20 | 68 69 73 3c 2f 73 70 61 6e 3e 28 29 3b 0a 0a 20 20 20 20 20 20 20 20 69 74 65 6d 73 3a 20 5b 5d | his</span>();..........items:.[] |
| 8ed40 | 54 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 6b 77 22 | T,..........<span.class="tok-kw" |
| 8ed60 | 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"> |
| 8ed80 | 6c 65 6e 67 74 68 3c 2f 73 70 61 6e 3e 28 73 65 6c 66 3a 20 53 65 6c 66 29 20 3c 73 70 61 6e 20 | length</span>(self:.Self).<span. |
| 8eda0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 20 7b 0a | class="tok-type">usize</span>.{. |
| 8edc0 | 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | ............<span.class="tok-kw" |
| 8ede0 | 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 73 65 6c 66 2e 69 74 65 6d 73 2e 6c 65 6e 3b 0a 20 | >return</span>.self.items.len;.. |
| 8ee00 | 20 20 20 20 20 20 20 7d 0a 20 20 20 20 7d 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 | .......}.....};.}</code></pre><p |
| 8ee20 | 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 | re><code.class="shell">$.zig.tes |
| 8ee40 | 74 20 74 65 73 74 2e 7a 69 67 0a 31 2f 31 20 74 65 73 74 20 26 71 75 6f 74 3b 40 54 68 69 73 28 | t.test.zig.1/1.test."@This( |
| 8ee60 | 29 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 | )"....OK.All.1.tests.passed |
| 8ee80 | 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 | ..</code></pre>........<p>...... |
| 8eea0 | 20 57 68 65 6e 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c | .When.<code.class="zig"><span.cl |
| 8eec0 | 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 68 69 73 3c 2f 73 70 61 6e 3e 28 29 | ass="tok-builtin">@This</span>() |
| 8eee0 | 3c 2f 63 6f 64 65 3e 20 69 73 20 75 73 65 64 20 61 74 20 67 6c 6f 62 61 6c 20 73 63 6f 70 65 2c | </code>.is.used.at.global.scope, |
| 8ef00 | 20 69 74 20 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 | .it.returns.a.reference.to.the.. |
| 8ef20 | 20 20 20 20 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 | .....struct.that.corresponds.to. |
| 8ef40 | 74 68 65 20 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 | the.current.file........</p>.... |
| 8ef60 | 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 74 72 75 6e 63 61 74 65 22 3e 3c 61 20 | ...........<h2.id="truncate"><a. |
| 8ef80 | 68 72 65 66 3d 22 23 74 6f 63 2d 74 72 75 6e 63 61 74 65 22 3e 40 74 72 75 6e 63 61 74 65 3c 2f | href="#toc-truncate">@truncate</ |
| 8efa0 | 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 74 72 75 6e 63 61 74 | a>.<a.class="hdr".href="#truncat |
| 8efc0 | 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 | e">..</a></h2>........<pre><code |
| 8efe0 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 | .class="zig"><span.class="tok-bu |
| 8f000 | 69 6c 74 69 6e 22 3e 40 74 72 75 6e 63 61 74 65 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c | iltin">@truncate</span>(<span.cl |
| 8f020 | 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:. |
| 8f040 | 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 |
| 8f060 | 6e 3e 2c 20 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 | n>,.integer:.<span.class="tok-kw |
| 8f080 | 22 3e 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 | ">anytype</span>).T</code></pre> |
| 8f0a0 | 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 74 | .......<p>.......This.function.t |
| 8f0c0 | 72 75 6e 63 61 74 65 73 20 62 69 74 73 20 66 72 6f 6d 20 61 6e 20 69 6e 74 65 67 65 72 20 74 79 | runcates.bits.from.an.integer.ty |
| 8f0e0 | 70 65 2c 20 72 65 73 75 6c 74 69 6e 67 20 69 6e 20 61 20 73 6d 61 6c 6c 65 72 0a 20 20 20 20 20 | pe,.resulting.in.a.smaller...... |
| 8f100 | 20 6f 72 20 73 61 6d 65 2d 73 69 7a 65 64 20 69 6e 74 65 67 65 72 20 74 79 70 65 2e 0a 20 20 20 | .or.same-sized.integer.type..... |
| 8f120 | 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 20 66 6f 6c 6c | ...</p>.......<p>.......The.foll |
| 8f140 | 6f 77 69 6e 67 20 70 72 6f 64 75 63 65 73 20 73 61 66 65 74 79 2d 63 68 65 63 6b 65 64 20 3c 61 | owing.produces.safety-checked.<a |
| 8f160 | 20 68 72 65 66 3d 22 23 55 6e 64 65 66 69 6e 65 64 2d 42 65 68 61 76 69 6f 72 22 3e 55 6e 64 65 | .href="#Undefined-Behavior">Unde |
| 8f180 | 66 69 6e 65 64 20 42 65 68 61 76 69 6f 72 3c 2f 61 3e 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 | fined.Behavior</a>:.......</p>.. |
| 8f1a0 | 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 | .....<p.class="file">test.zig</p |
| 8f1c0 | 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c | ><pre><code.class="zig"><span.cl |
| 8f1e0 | 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 |
| 8f200 | 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 69 6e 74 65 67 65 72 20 63 61 73 | lass="tok-str">"integer.cas |
| 8f220 | 74 20 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 | t.panic"</span>.{.....<span |
| 8f240 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 61 3a 20 3c 73 | .class="tok-kw">var</span>.a:.<s |
| 8f260 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 31 36 3c 2f 73 70 61 6e 3e 20 | pan.class="tok-type">u16</span>. |
| 8f280 | 3d 20 3c 73 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 | =.<span.class="tok-number">0xabc |
| 8f2a0 | 64 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | d</span>;.....<span.class="tok-k |
| 8f2c0 | 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 62 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | w">var</span>.b:.<span.class="to |
| 8f2e0 | 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= |
| 8f300 | 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6e 74 43 61 73 74 3c 2f 73 70 61 6e 3e 28 3c 73 | "tok-builtin">@intCast</span>(<s |
| 8f320 | 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>,. |
| 8f340 | 61 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 | a);.}</code></pre><pre><code.cla |
| 8f360 | 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 31 | ss="shell">$.zig.test.test.zig.1 |
| 8f380 | 2f 31 20 74 65 73 74 20 26 71 75 6f 74 3b 69 6e 74 65 67 65 72 20 63 61 73 74 20 70 61 6e 69 63 | /1.test."integer.cast.panic |
| 8f3a0 | 26 71 75 6f 74 3b 2e 2e 2e 20 69 6e 74 65 67 65 72 20 63 61 73 74 20 74 72 75 6e 63 61 74 65 64 | "....integer.cast.truncated |
| 8f3c0 | 20 62 69 74 73 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f | .bits.<span.class="t37_1">/home/ |
| 8f3e0 | 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 | andy/Downloads/zig/docgen_tmp/te |
| 8f400 | 73 74 2e 7a 69 67 3a 33 3a 31 37 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | st.zig:3:17</span>:.<span.class= |
| 8f420 | 22 74 32 5f 30 22 3e 30 78 32 30 35 39 39 35 20 69 6e 20 74 65 73 74 20 26 71 75 6f 74 3b 69 6e | "t2_0">0x205995.in.test."in |
| 8f440 | 74 65 67 65 72 20 63 61 73 74 20 70 61 6e 69 63 26 71 75 6f 74 3b 20 28 74 65 73 74 29 3c 2f 73 | teger.cast.panic".(test)</s |
| 8f460 | 70 61 6e 3e 0a 20 20 20 20 76 61 72 20 62 3a 20 75 38 20 3d 20 40 69 6e 74 43 61 73 74 28 75 38 | pan>.....var.b:.u8.=.@intCast(u8 |
| 8f480 | 2c 20 61 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | ,.a);.................<span.clas |
| 8f4a0 | 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | s="t32_1">^</span>.<span.class=" |
| 8f4c0 | 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f | t37_1">/home/andy/Downloads/zig/ |
| 8f4e0 | 6c 69 62 2f 73 74 64 2f 73 70 65 63 69 61 6c 2f 74 65 73 74 5f 72 75 6e 6e 65 72 2e 7a 69 67 3a | lib/std/special/test_runner.zig: |
| 8f500 | 36 31 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 74 32 5f 30 22 | 61:28</span>:.<span.class="t2_0" |
| 8f520 | 3e 30 78 32 32 64 61 62 31 20 69 6e 20 73 74 64 2e 73 70 65 63 69 61 6c 2e 6d 61 69 6e 20 28 74 | >0x22dab1.in.std.special.main.(t |
| 8f540 | 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 7d 20 65 6c 73 65 20 74 65 73 74 5f | est)</span>.........}.else.test_ |
| 8f560 | 66 6e 2e 66 75 6e 63 28 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | fn.func();...................... |
| 8f580 | 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 | ......<span.class="t32_1">^</spa |
| 8f5a0 | 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 | n>.<span.class="t37_1">/home/and |
| 8f5c0 | 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 | y/Downloads/zig/lib/std/start.zi |
| 8f5e0 | 67 3a 33 33 34 3a 33 37 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 | g:334:37</span>:.<span.class="t2 |
| 8f600 | 5f 30 22 3e 30 78 32 30 37 32 39 64 20 69 6e 20 73 74 64 2e 73 74 61 72 74 2e 70 6f 73 69 78 43 | _0">0x20729d.in.std.start.posixC |
| 8f620 | 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 | allMainAndExit.(test)</span>.... |
| 8f640 | 20 20 20 20 20 20 20 20 20 63 6f 6e 73 74 20 72 65 73 75 6c 74 20 3d 20 72 6f 6f 74 2e 6d 61 69 | .........const.result.=.root.mai |
| 8f660 | 6e 28 29 20 63 61 74 63 68 20 7c 65 72 72 7c 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | n().catch.|err|.{............... |
| 8f680 | 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 |
| 8f6a0 | 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | s="t32_1">^</span>.<span.class=" |
| 8f6c0 | 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f | t37_1">/home/andy/Downloads/zig/ |
| 8f6e0 | 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 31 36 32 3a 35 3c 2f 73 70 61 6e 3e 3a 20 | lib/std/start.zig:162:5</span>:. |
| 8f700 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 30 36 66 64 32 20 69 6e 20 73 | <span.class="t2_0">0x206fd2.in.s |
| 8f720 | 74 64 2e 73 74 61 72 74 2e 5f 73 74 61 72 74 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 | td.start._start.(test)</span>... |
| 8f740 | 20 20 40 63 61 6c 6c 28 2e 7b 20 2e 6d 6f 64 69 66 69 65 72 20 3d 20 2e 6e 65 76 65 72 5f 69 6e | ..@call(.{..modifier.=..never_in |
| 8f760 | 6c 69 6e 65 20 7d 2c 20 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 2c 20 2e 7b | line.},.posixCallMainAndExit,..{ |
| 8f780 | 7d 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 | });.....<span.class="t32_1">^</s |
| 8f7a0 | 70 61 6e 3e 0a 65 72 72 6f 72 3a 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 74 65 73 74 20 63 | pan>.error:.the.following.test.c |
| 8f7c0 | 6f 6d 6d 61 6e 64 20 63 72 61 73 68 65 64 3a 0a 64 6f 63 67 65 6e 5f 74 6d 70 2f 7a 69 67 2d 63 | ommand.crashed:.docgen_tmp/zig-c |
| 8f7e0 | 61 63 68 65 2f 6f 2f 38 66 65 38 30 31 32 38 61 39 34 63 31 36 31 33 65 34 38 33 31 37 32 39 35 | ache/o/8fe80128a94c1613e48317295 |
| 8f800 | 66 63 37 36 63 66 63 2f 74 65 73 74 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 | fc76cfc/test.</code></pre>...... |
| 8f820 | 20 20 3c 70 3e 0a 20 20 20 20 20 20 48 6f 77 65 76 65 72 20 74 68 69 73 20 69 73 20 77 65 6c 6c | ..<p>.......However.this.is.well |
| 8f840 | 20 64 65 66 69 6e 65 64 20 61 6e 64 20 77 6f 72 6b 69 6e 67 20 63 6f 64 65 3a 0a 20 20 20 20 20 | .defined.and.working.code:...... |
| 8f860 | 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 72 75 6e | .</p>.......<p.class="file">trun |
| 8f880 | 63 61 74 65 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | cate.zig</p><pre><code.class="zi |
| 8f8a0 | 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 | g"><span.class="tok-kw">const</s |
| 8f8c0 | 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 |
| 8f8e0 | 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= |
| 8f900 | 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> |
| 8f920 | 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 |
| 8f940 | 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 |
| 8f960 | 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 |
| 8f980 | 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">" |
| 8f9a0 | 69 6e 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 | integer.truncation"</span>. |
| 8f9c0 | 7b 0a 20 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</ |
| 8f9e0 | 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"> |
| 8fa00 | 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 |
| 8fa20 | 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 |
| 8fa40 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 62 3a 20 3c 73 70 61 | lass="tok-kw">var</span>.b:.<spa |
| 8fa60 | 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>.=.< |
| 8fa80 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 74 72 75 6e 63 61 | span.class="tok-builtin">@trunca |
| 8faa0 | 74 65 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 | te</span>(<span.class="tok-type" |
| 8fac0 | 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 61 29 3b 0a 20 20 20 20 65 78 70 65 63 74 28 62 20 3d 3d 20 | >u8</span>,.a);.....expect(b.==. |
| 8fae0 | 3c 73 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 |
| 8fb00 | 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 | pan>);.}</code></pre><pre><code. |
| 8fb20 | 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 72 75 6e 63 61 74 | class="shell">$.zig.test.truncat |
| 8fb40 | 65 2e 7a 69 67 0a 31 2f 31 20 74 65 73 74 20 26 71 75 6f 74 3b 69 6e 74 65 67 65 72 20 74 72 75 | e.zig.1/1.test."integer.tru |
| 8fb60 | 6e 63 61 74 69 6f 6e 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 | ncation"....OK.All.1.tests. |
| 8fb80 | 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e | passed..</code></pre>........<p> |
| 8fba0 | 0a 20 20 20 20 20 20 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 61 6c 77 61 79 73 20 74 72 75 6e | .......This.function.always.trun |
| 8fbc0 | 63 61 74 65 73 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 74 68 | cates.the.significant.bits.of.th |
| 8fbe0 | 65 20 69 6e 74 65 67 65 72 2c 20 72 65 67 61 72 64 6c 65 73 73 0a 20 20 20 20 20 20 6f 66 20 65 | e.integer,.regardless.......of.e |
| 8fc00 | 6e 64 69 61 6e 6e 65 73 73 20 6f 6e 20 74 68 65 20 74 61 72 67 65 74 20 70 6c 61 74 66 6f 72 6d | ndianness.on.the.target.platform |
| 8fc20 | 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 | ........</p>...............<h2.i |
| 8fc40 | 64 3d 22 54 79 70 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 54 79 70 65 22 3e 40 54 79 | d="Type"><a.href="#toc-Type">@Ty |
| 8fc60 | 70 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 54 79 70 | pe</a>.<a.class="hdr".href="#Typ |
| 8fc80 | 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 | e">..</a></h2>........<pre><code |
| 8fca0 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 | .class="zig"><span.class="tok-bu |
| 8fcc0 | 69 6c 74 69 6e 22 3e 40 54 79 70 65 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d | iltin">@Type</span>(<span.class= |
| 8fce0 | 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 69 6e 66 6f 3a 20 3c | "tok-kw">comptime</span>.info:.< |
| 8fd00 | 73 70 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 |
| 8fd20 | 3c 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 |
| 8fd40 | 75 6f 74 3b 62 75 69 6c 74 69 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 54 79 70 65 49 6e | uot;builtin"</span>).TypeIn |
| 8fd60 | 66 6f 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c | fo).<span.class="tok-type">type< |
| 8fd80 | 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>... |
| 8fda0 | 20 20 20 20 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 69 73 20 74 68 65 20 69 6e 76 65 72 73 65 | ....This.function.is.the.inverse |
| 8fdc0 | 20 6f 66 20 3c 61 20 68 72 65 66 3d 22 23 74 79 70 65 49 6e 66 6f 22 3e 40 74 79 70 65 49 6e 66 | .of.<a.href="#typeInfo">@typeInf |
| 8fde0 | 6f 3c 2f 61 3e 2e 20 49 74 20 72 65 69 66 69 65 73 20 74 79 70 65 20 69 6e 66 6f 72 6d 61 74 69 | o</a>..It.reifies.type.informati |
| 8fe00 | 6f 6e 0a 20 20 20 20 20 20 69 6e 74 6f 20 61 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | on.......into.a.<code.class="zig |
| 8fe20 | 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 | "><span.class="tok-type">type</s |
| 8fe40 | 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 |
| 8fe60 | 3e 0a 20 20 20 20 20 20 49 74 20 69 73 20 61 76 61 69 6c 61 62 6c 65 20 66 6f 72 20 74 68 65 20 | >.......It.is.available.for.the. |
| 8fe80 | 66 6f 6c 6c 6f 77 69 6e 67 20 74 79 70 65 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 | following.types:.......</p>..... |
| 8fea0 | 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 | ..<ul>...........<li><code.class |
| 8fec0 | 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 | ="zig"><span.class="tok-type">ty |
| 8fee0 | 70 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 | pe</span></code></li>........... |
| 8ff00 | 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 | <li><code.class="zig"><span.clas |
| 8ff20 | 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 |
| 8ff40 | 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 | de></li>...........<li><code.cla |
| 8ff60 | 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | ss="zig"><span.class="tok-type"> |
| 8ff80 | 76 6f 69 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 | void</span></code></li>......... |
| 8ffa0 | 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c | ..<li><code.class="zig"><span.cl |
| 8ffc0 | 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 65 | ass="tok-type">bool</span></code |
| 8ffe0 | 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 49 | ></li>...........<li><a.href="#I |
| 90000 | 6e 74 65 67 65 72 73 22 3e 49 6e 74 65 67 65 72 73 3c 2f 61 3e 20 2d 20 54 68 65 20 6d 61 78 69 | ntegers">Integers</a>.-.The.maxi |
| 90020 | 6d 75 6d 20 62 69 74 20 63 6f 75 6e 74 20 66 6f 72 20 61 6e 20 69 6e 74 65 67 65 72 20 74 79 70 | mum.bit.count.for.an.integer.typ |
| 90040 | 65 20 69 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 | e.is.<code.class="zig"><span.cla |
| 90060 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 36 35 35 33 35 3c 2f 73 70 61 6e 3e 3c 2f 63 6f | ss="tok-number">65535</span></co |
| 90080 | 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 66 3d | de>.</li>...........<li><a.href= |
| 900a0 | 22 23 46 6c 6f 61 74 73 22 3e 46 6c 6f 61 74 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | "#Floats">Floats</a></li>....... |
| 900c0 | 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 50 6f 69 6e 74 65 72 73 22 3e 50 6f 69 6e | ....<li><a.href="#Pointers">Poin |
| 900e0 | 74 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 | ters</a></li>...........<li><cod |
| 90100 | 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | e.class="zig"><span.class="tok-t |
| 90120 | 79 70 65 22 3e 63 6f 6d 70 74 69 6d 65 5f 69 6e 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c | ype">comptime_int</span></code>< |
| 90140 | 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | /li>...........<li><code.class=" |
| 90160 | 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 63 6f 6d 70 | zig"><span.class="tok-type">comp |
| 90180 | 74 69 6d 65 5f 66 6c 6f 61 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 | time_float</span></code></li>... |
| 901a0 | 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 | ........<li><code.class="zig"><s |
| 901c0 | 70 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< |
| 901e0 | 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 75 6e | /span>(<span.class="tok-null">un |
| 90200 | 64 65 66 69 6e 65 64 3c 2f 73 70 61 6e 3e 29 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 | defined</span>)</code></li>..... |
| 90220 | 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 | ......<li><code.class="zig"><spa |
| 90240 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 70 65 4f 66 3c 2f 73 | n.class="tok-builtin">@TypeOf</s |
| 90260 | 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c | pan>(<span.class="tok-null">null |
| 90280 | 3c 2f 73 70 61 6e 3e 29 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c | </span>)</code></li>...........< |
| 902a0 | 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>< |
| 902c0 | 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 4f 70 74 | /li>...........<li><a.href="#Opt |
| 902e0 | 69 6f 6e 61 6c 73 22 3e 4f 70 74 69 6f 6e 61 6c 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 | ionals">Optionals</a></li>...... |
| 90300 | 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 45 72 72 6f 72 2d 53 65 74 2d 54 79 70 | .....<li><a.href="#Error-Set-Typ |
| 90320 | 65 22 3e 45 72 72 6f 72 20 53 65 74 20 54 79 70 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 | e">Error.Set.Type</a></li>...... |
| 90340 | 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 45 72 72 6f 72 2d 55 6e 69 6f 6e 2d 54 | .....<li><a.href="#Error-Union-T |
| 90360 | 79 70 65 22 3e 45 72 72 6f 72 20 55 6e 69 6f 6e 20 54 79 70 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 | ype">Error.Union.Type</a></li>.. |
| 90380 | 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 56 65 63 74 6f 72 73 22 3e | .........<li><a.href="#Vectors"> |
| 903a0 | 56 65 63 74 6f 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c | Vectors</a></li>...........<li>< |
| 903c0 | 61 20 68 72 65 66 3d 22 23 6f 70 61 71 75 65 22 3e 6f 70 61 71 75 65 3c 2f 61 3e 3c 2f 6c 69 3e | a.href="#opaque">opaque</a></li> |
| 903e0 | 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 46 72 61 6d 65 22 3e | ...........<li><a.href="#Frame"> |
| 90400 | 40 46 72 61 6d 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 | @Frame</a></li>...........<li><c |
| 90420 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ode.class="zig"><span.class="tok |
| 90440 | 2d 6b 77 22 3e 61 6e 79 66 72 61 6d 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e | -kw">anyframe</span></code></li> |
| 90460 | 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 73 74 72 75 63 74 22 | ...........<li><a.href="#struct" |
| 90480 | 3e 73 74 72 75 63 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c | >struct</a></li>...........<li>< |
| 904a0 | 61 20 68 72 65 66 3d 22 23 65 6e 75 6d 22 3e 65 6e 75 6d 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 | a.href="#enum">enum</a></li>.... |
| 904c0 | 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 45 6e 75 6d 2d 4c 69 74 65 72 61 | .......<li><a.href="#Enum-Litera |
| 904e0 | 6c 73 22 3e 45 6e 75 6d 20 4c 69 74 65 72 61 6c 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 | ls">Enum.Literals</a></li>...... |
| 90500 | 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 75 6e 69 6f 6e 22 3e 75 6e 69 6f 6e 3c | .....<li><a.href="#union">union< |
| 90520 | 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 | /a></li>.......</ul>.......<p>.. |
| 90540 | 20 20 20 20 20 46 6f 72 20 74 68 65 73 65 20 74 79 70 65 73 2c 20 3c 63 6f 64 65 20 63 6c 61 73 | .....For.these.types,.<code.clas |
| 90560 | 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e | s="zig"><span.class="tok-builtin |
| 90580 | 22 3e 40 54 79 70 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 69 73 20 6e 6f 74 20 61 76 61 | ">@Type</span></code>.is.not.ava |
| 905a0 | 69 6c 61 62 6c 65 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 | ilable:.......</p>.......<ul>... |
| 905c0 | 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 46 75 6e 63 74 69 6f 6e 73 22 | ........<li><a.href="#Functions" |
| 905e0 | 3e 46 75 6e 63 74 69 6f 6e 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c | >Functions</a></li>...........<l |
| 90600 | 69 3e 42 6f 75 6e 64 46 6e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 | i>BoundFn</li>.......</ul>...... |
| 90620 | 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 74 79 70 65 49 6e 66 6f 22 3e 3c 61 20 68 72 65 | ........<h2.id="typeInfo"><a.hre |
| 90640 | 66 3d 22 23 74 6f 63 2d 74 79 70 65 49 6e 66 6f 22 3e 40 74 79 70 65 49 6e 66 6f 3c 2f 61 3e 20 | f="#toc-typeInfo">@typeInfo</a>. |
| 90660 | 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 74 79 70 65 49 6e 66 6f 22 3e | <a.class="hdr".href="#typeInfo"> |
| 90680 | c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c | ..</a></h2>........<pre><code.cl |
| 906a0 | 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 | ass="zig"><span.class="tok-built |
| 906c0 | 69 6e 22 3e 40 74 79 70 65 49 6e 66 6f 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 | in">@typeInfo</span>(<span.class |
| 906e0 | 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 |
| 90700 | 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>) |
| 90720 | 20 3c 73 70 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 |
| 90740 | 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"> |
| 90760 | 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. |
| 90780 | 54 79 70 65 49 6e 66 6f 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a | TypeInfo</code></pre>.......<p>. |
| 907a0 | 20 20 20 20 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 | ......Provides.type.reflection.. |
| 907c0 | 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 3c | ......</p>.......<p>.......For.< |
| 907e0 | 61 20 68 72 65 66 3d 22 23 73 74 72 75 63 74 22 3e 73 74 72 75 63 74 73 3c 2f 61 3e 2c 20 3c 61 | a.href="#struct">structs</a>,.<a |
| 90800 | 20 68 72 65 66 3d 22 23 75 6e 69 6f 6e 22 3e 75 6e 69 6f 6e 73 3c 2f 61 3e 2c 20 3c 61 20 68 72 | .href="#union">unions</a>,.<a.hr |
| 90820 | 65 66 3d 22 23 65 6e 75 6d 22 3e 65 6e 75 6d 73 3c 2f 61 3e 2c 20 61 6e 64 0a 20 20 20 20 20 20 | ef="#enum">enums</a>,.and....... |
| 90840 | 3c 61 20 68 72 65 66 3d 22 23 45 72 72 6f 72 2d 53 65 74 2d 54 79 70 65 22 3e 65 72 72 6f 72 20 | <a.href="#Error-Set-Type">error. |
| 90860 | 73 65 74 73 3c 2f 61 3e 2c 20 74 68 65 20 66 69 65 6c 64 73 20 61 72 65 20 67 75 61 72 61 6e 74 | sets</a>,.the.fields.are.guarant |
| 90880 | 65 65 64 20 74 6f 20 62 65 20 69 6e 20 74 68 65 20 73 61 6d 65 0a 20 20 20 20 20 20 6f 72 64 65 | eed.to.be.in.the.same.......orde |
| 908a0 | 72 20 61 73 20 64 65 63 6c 61 72 65 64 2e 20 46 6f 72 20 64 65 63 6c 61 72 61 74 69 6f 6e 73 2c | r.as.declared..For.declarations, |
| 908c0 | 20 74 68 65 20 6f 72 64 65 72 20 69 73 20 75 6e 73 70 65 63 69 66 69 65 64 2e 0a 20 20 20 20 20 | .the.order.is.unspecified....... |
| 908e0 | 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 74 79 70 65 | .</p>...............<h2.id="type |
| 90900 | 4e 61 6d 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 74 79 70 65 4e 61 6d 65 22 3e 40 74 | Name"><a.href="#toc-typeName">@t |
| 90920 | 79 70 65 4e 61 6d 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d | ypeName</a>.<a.class="hdr".href= |
| 90940 | 22 23 74 79 70 65 4e 61 6d 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c | "#typeName">..</a></h2>........< |
| 90960 | 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 | pre><code.class="zig"><span.clas |
| 90980 | 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> |
| 909a0 | 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 70 65 3c | (T:.<span.class="tok-type">type< |
| 909c0 | 2f 73 70 61 6e 3e 29 20 5b 4e 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | /span>).[N]<span.class="tok-type |
| 909e0 | 22 3e 75 38 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c | ">u8</span></code></pre>.......< |
| 90a00 | 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 72 65 74 75 72 6e 73 20 74 | p>.......This.function.returns.t |
| 90a20 | 68 65 20 73 74 72 69 6e 67 20 72 65 70 72 65 73 65 6e 74 61 74 69 6f 6e 20 6f 66 20 61 20 74 79 | he.string.representation.of.a.ty |
| 90a40 | 70 65 2c 20 61 73 0a 20 20 20 20 20 20 61 6e 20 61 72 72 61 79 2e 20 49 74 20 69 73 20 65 71 75 | pe,.as.......an.array..It.is.equ |
| 90a60 | 69 76 61 6c 65 6e 74 20 74 6f 20 61 20 73 74 72 69 6e 67 20 6c 69 74 65 72 61 6c 20 6f 66 20 74 | ivalent.to.a.string.literal.of.t |
| 90a80 | 68 65 20 74 79 70 65 20 6e 61 6d 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 0a 20 20 20 20 20 20 | he.type.name........</p>........ |
| 90aa0 | 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 54 79 70 65 4f 66 22 3e 3c 61 20 68 72 65 66 3d | ........<h2.id="TypeOf"><a.href= |
| 90ac0 | 22 23 74 6f 63 2d 54 79 70 65 4f 66 22 3e 40 54 79 70 65 4f 66 3c 2f 61 3e 20 3c 61 20 63 6c 61 | "#toc-TypeOf">@TypeOf</a>.<a.cla |
| 90ae0 | 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 54 79 70 65 4f 66 22 3e c2 a7 3c 2f 61 3e 3c 2f | ss="hdr".href="#TypeOf">..</a></ |
| 90b00 | 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | h2>........<pre><code.class="zig |
| 90b20 | 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 70 | "><span.class="tok-builtin">@Typ |
| 90b40 | 65 4f 66 3c 2f 73 70 61 6e 3e 28 2e 2e 2e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | eOf</span>(...).<span.class="tok |
| 90b60 | 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a | -type">type</span></code></pre>. |
| 90b80 | 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | ......<p>.......<code.class="zig |
| 90ba0 | 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 79 70 | "><span.class="tok-builtin">@Typ |
| 90bc0 | 65 4f 66 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 | eOf</span></code>.is.a.special.b |
| 90be0 | 75 69 6c 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 | uiltin.function.that.takes.any.( |
| 90c00 | 6e 6f 6e 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 | nonzero).number.of.expressions.. |
| 90c20 | 20 20 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 | .....as.parameters.and.returns.t |
| 90c40 | 68 65 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 | he.type.of.the.result,.using.<a. |
| 90c60 | 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 |
| 90c80 | 72 20 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 | r.Type.Resolution</a>........</p |
| 90ca0 | 3e 0a 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 | >.......<p>.......The.expression |
| 90cc0 | 73 20 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 | s.are.evaluated,.however.they.ar |
| 90ce0 | 65 20 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 | e.guaranteed.to.have.no.<em>runt |
| 90d00 | 69 6d 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 | ime</em>.side-effects:.......</p |
| 90d20 | 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 | >.......<p.class="file">test.zig |
| 90d40 | 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e | </p><pre><code.class="zig"><span |
| 90d60 | 20 63 6c 61 73 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 |
| 90d80 | 20 3d 20 3c 73 70 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 |
| 90da0 | 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 |
| 90dc0 | 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 |
| 90de0 | 20 63 6c 61 73 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 |
| 90e00 | 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 |
| 90e20 | 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 |
| 90e40 | 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 20 72 75 6e 74 69 | n.class="tok-str">"no.runti |
| 90e60 | 6d 65 20 73 69 64 65 20 65 66 66 65 63 74 73 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 | me.side.effects"</span>.{.. |
| 90e80 | 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 |
| 90ea0 | 6e 3e 20 64 61 74 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | n>.data:.<span.class="tok-type"> |
| 90ec0 | 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 |
| 90ee0 | 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | mber">0</span>;.....<span.class= |
| 90f00 | 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 54 20 3d 20 3c 73 70 61 6e 20 | "tok-kw">const</span>.T.=.<span. |
| 90f20 | 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 |
| 90f40 | 6e 3e 28 66 6f 6f 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 | n>(foo(<span.class="tok-type">i3 |
| 90f60 | 32 3c 2f 73 70 61 6e 3e 2c 20 26 61 6d 70 3b 64 61 74 61 29 29 3b 0a 20 20 20 20 3c 73 70 61 6e | 2</span>,.&data));.....<span |
| 90f80 | 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>. |
| 90fa0 | 65 78 70 65 63 74 28 54 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | expect(T.==.<span.class="tok-typ |
| 90fc0 | 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 65 78 70 65 63 74 28 64 61 74 61 20 | e">i32</span>);.....expect(data. |
| 90fe0 | 3d 3d 20 3c 73 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 |
| 91000 | 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 |
| 91020 | 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 66 6f | n</span>.<span.class="tok-fn">fo |
| 91040 | 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 6b 77 22 3e 63 6f | o</span>(<span.class="tok-kw">co |
| 91060 | 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 54 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | mptime</span>.T:.<span.class="to |
| 91080 | 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 70 74 72 3a 20 2a 54 29 20 54 20 | k-type">type</span>,.ptr:.*T).T. |
| 910a0 | 7b 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 6b 2d | {.....ptr.*.+=.<span.class="tok- |
| 910c0 | 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | number">1</span>;.....<span.clas |
| 910e0 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 70 74 72 2e 2a 3b 0a | s="tok-kw">return</span>.ptr.*;. |
| 91100 | 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | }</code></pre><pre><code.class=" |
| 91120 | 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 31 2f 31 20 74 | shell">$.zig.test.test.zig.1/1.t |
| 91140 | 65 73 74 20 26 71 75 6f 74 3b 6e 6f 20 72 75 6e 74 69 6d 65 20 73 69 64 65 20 65 66 66 65 63 74 | est."no.runtime.side.effect |
| 91160 | 73 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 | s"....OK.All.1.tests.passed |
| 91180 | 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c | ..</code></pre>................< |
| 911a0 | 68 32 20 69 64 3d 22 75 6e 69 6f 6e 49 6e 69 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d | h2.id="unionInit"><a.href="#toc- |
| 911c0 | 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 20 3c 61 20 63 6c 61 | unionInit">@unionInit</a>.<a.cla |
| 911e0 | 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 75 6e 69 6f 6e 49 6e 69 74 22 3e c2 a7 3c 2f 61 | ss="hdr".href="#unionInit">..</a |
| 91200 | 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | ></h2>........<pre><code.class=" |
| 91220 | 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 | zig"><span.class="tok-builtin">@ |
| 91240 | 75 6e 69 6f 6e 49 6e 69 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | unionInit</span>(<span.class="to |
| 91260 | 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 55 6e 69 6f 6e 3a 20 3c 73 70 | k-kw">comptime</span>.Union:.<sp |
| 91280 | 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>, |
| 912a0 | 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</ |
| 912c0 | 73 70 61 6e 3e 20 61 63 74 69 76 65 5f 66 69 65 6c 64 5f 6e 61 6d 65 3a 20 5b 5d 3c 73 70 61 6e | span>.active_field_name:.[]<span |
| 912e0 | 20 63 6c 61 73 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 |
| 91300 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 69 | an.class="tok-type">u8</span>,.i |
| 91320 | 6e 69 74 5f 65 78 70 72 29 20 55 6e 69 6f 6e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 | nit_expr).Union</code></pre>.... |
| 91340 | 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 69 73 20 74 68 65 20 73 61 6d 65 20 74 68 | ...<p>.......This.is.the.same.th |
| 91360 | 69 6e 67 20 61 73 20 3c 61 20 68 72 65 66 3d 22 23 75 6e 69 6f 6e 22 3e 75 6e 69 6f 6e 3c 2f 61 | ing.as.<a.href="#union">union</a |
| 91380 | 3e 20 69 6e 69 74 69 61 6c 69 7a 61 74 69 6f 6e 20 73 79 6e 74 61 78 2c 20 65 78 63 65 70 74 20 | >.initialization.syntax,.except. |
| 913a0 | 74 68 61 74 20 74 68 65 20 66 69 65 6c 64 20 6e 61 6d 65 20 69 73 20 61 0a 20 20 20 20 20 20 3c | that.the.field.name.is.a.......< |
| 913c0 | 61 20 68 72 65 66 3d 22 23 63 6f 6d 70 74 69 6d 65 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 61 3e 2d | a.href="#comptime">comptime</a>- |
| 913e0 | 6b 6e 6f 77 6e 20 76 61 6c 75 65 20 72 61 74 68 65 72 20 74 68 61 6e 20 61 6e 20 69 64 65 6e 74 | known.value.rather.than.an.ident |
| 91400 | 69 66 69 65 72 20 74 6f 6b 65 6e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 | ifier.token........</p>.......<p |
| 91420 | 3e 0a 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 | >.......<code.class="zig"><span. |
| 91440 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 75 6e 69 6f 6e 49 6e 69 74 3c 2f | class="tok-builtin">@unionInit</ |
| 91460 | 73 70 61 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 | span></code>.forwards.its.<a.hre |
| 91480 | 66 3d 22 23 52 65 73 75 6c 74 2d 4c 6f 63 61 74 69 6f 6e 2d 53 65 6d 61 6e 74 69 63 73 22 3e 72 | f="#Result-Location-Semantics">r |
| 914a0 | 65 73 75 6c 74 20 6c 6f 63 61 74 69 6f 6e 3c 2f 61 3e 20 74 6f 20 3c 63 6f 64 65 20 63 6c 61 73 | esult.location</a>.to.<code.clas |
| 914c0 | 73 3d 22 7a 69 67 22 3e 69 6e 69 74 5f 65 78 70 72 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 | s="zig">init_expr</code>........ |
| 914e0 | 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 20 3c 68 31 20 69 64 | </p>......................<h1.id |
| 91500 | 3d 22 42 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 | ="Build-Mode"><a.href="#toc-Buil |
| 91520 | 64 2d 4d 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 | d-Mode">Build.Mode</a>.<a.class= |
| 91540 | 22 68 64 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 | "hdr".href="#Build-Mode">..</a>< |
| 91560 | 2f 68 31 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 5a 69 67 20 68 61 73 20 66 6f | /h1>........<p>.......Zig.has.fo |
| 91580 | 75 72 20 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 | ur.build.modes:.......</p>...... |
| 915a0 | 20 3c 75 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 | .<ul>.........<li><a.href="#Debu |
| 915c0 | 67 22 3e 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 | g">Debug</a>.(default)</li>..... |
| 915e0 | 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 52 65 6c 65 61 73 65 46 61 73 74 22 3e 52 | ....<li><a.href="#ReleaseFast">R |
| 91600 | 65 6c 65 61 73 65 46 61 73 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e | eleaseFast</a></li>.........<li> |
| 91620 | 3c 61 20 68 72 65 66 3d 22 23 52 65 6c 65 61 73 65 53 61 66 65 22 3e 52 65 6c 65 61 73 65 53 61 | <a.href="#ReleaseSafe">ReleaseSa |
| 91640 | 66 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d | fe</a></li>.........<li><a.href= |
| 91660 | 22 23 52 65 6c 65 61 73 65 53 6d 61 6c 6c 22 3e 52 65 6c 65 61 73 65 53 6d 61 6c 6c 3c 2f 61 3e | "#ReleaseSmall">ReleaseSmall</a> |
| 91680 | 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 | </li>.......</ul>.......<p>..... |
| 916a0 | 20 20 54 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 | ..To.add.standard.build.options. |
| 916c0 | 74 6f 20 61 20 3c 63 6f 64 65 3e 62 75 69 6c 64 2e 7a 69 67 3c 2f 63 6f 64 65 3e 20 66 69 6c 65 | to.a.<code>build.zig</code>.file |
| 916e0 | 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c | :.......</p>.......<pre><code.cl |
| 91700 | 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 | ass="zig"><span.class="tok-kw">c |
| 91720 | 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 42 75 69 6c 64 65 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | onst</span>.Builder.=.<span.clas |
| 91740 | 73 3d 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>(< |
| 91760 | 73 70 61 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 |
| 91780 | 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 62 75 69 6c 64 2e 42 75 69 6c 64 65 72 3b 0a 0a 3c 73 70 | uot;</span>).build.Builder;..<sp |
| 917a0 | 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 |
| 917c0 | 61 6e 20 63 6c 61 73 73 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 |
| 917e0 | 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: |
| 91800 | 20 2a 42 75 69 6c 64 65 72 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | .*Builder).<span.class="tok-type |
| 91820 | 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= |
| 91840 | 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 78 65 20 3d 20 62 2e 61 64 | "tok-kw">const</span>.exe.=.b.ad |
| 91860 | 64 45 78 65 63 75 74 61 62 6c 65 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 | dExecutable(<span.class="tok-str |
| 91880 | 22 3e 26 71 75 6f 74 3b 65 78 61 6d 70 6c 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 3c 73 | ">"example"</span>,.<s |
| 918a0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 65 78 61 6d 70 6c | pan.class="tok-str">"exampl |
| 918c0 | 65 2e 7a 69 67 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 65 78 65 2e 73 65 74 | e.zig"</span>);.....exe.set |
| 918e0 | 42 75 69 6c 64 4d 6f 64 65 28 62 2e 73 74 61 6e 64 61 72 64 52 65 6c 65 61 73 65 4f 70 74 69 6f | BuildMode(b.standardReleaseOptio |
| 91900 | 6e 73 28 29 29 3b 0a 20 20 20 20 62 2e 64 65 66 61 75 6c 74 5f 73 74 65 70 2e 64 65 70 65 6e 64 | ns());.....b.default_step.depend |
| 91920 | 4f 6e 28 26 61 6d 70 3b 65 78 65 2e 73 74 65 70 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 | On(&exe.step);.}</code></pre |
| 91940 | 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 63 61 75 73 65 73 20 74 68 | >.......<p>.......This.causes.th |
| 91960 | 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 20 20 20 | ese.options.to.be.available:.... |
| 91980 | 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | ...</p>.......<pre><code.class=" |
| 919a0 | 73 68 65 6c 6c 22 3e 20 20 2d 44 72 65 6c 65 61 73 65 2d 73 61 66 65 3d 5b 62 6f 6f 6c 5d 20 6f | shell">..-Drelease-safe=[bool].o |
| 919c0 | 70 74 69 6d 69 7a 61 74 69 6f 6e 73 20 6f 6e 20 61 6e 64 20 73 61 66 65 74 79 20 6f 6e 0a 20 20 | ptimizations.on.and.safety.on... |
| 919e0 | 2d 44 72 65 6c 65 61 73 65 2d 66 61 73 74 3d 5b 62 6f 6f 6c 5d 20 6f 70 74 69 6d 69 7a 61 74 69 | -Drelease-fast=[bool].optimizati |
| 91a00 | 6f 6e 73 20 6f 6e 20 61 6e 64 20 73 61 66 65 74 79 20 6f 66 66 0a 20 20 2d 44 72 65 6c 65 61 73 | ons.on.and.safety.off...-Dreleas |
| 91a20 | 65 2d 73 6d 61 6c 6c 3d 5b 62 6f 6f 6c 5d 20 73 69 7a 65 20 6f 70 74 69 6d 69 7a 61 74 69 6f 6e | e-small=[bool].size.optimization |
| 91a40 | 73 20 6f 6e 20 61 6e 64 20 73 61 66 65 74 79 20 6f 66 66 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e | s.on.and.safety.off</code></pre> |
| 91a60 | 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 44 65 62 75 67 22 3e 3c 61 20 68 72 65 66 3d 22 23 | .......<h2.id="Debug"><a.href="# |
| 91a80 | 74 6f 63 2d 44 65 62 75 67 22 3e 44 65 62 75 67 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 | toc-Debug">Debug</a>.<a.class="h |
| 91aa0 | 64 72 22 20 68 72 65 66 3d 22 23 44 65 62 75 67 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 | dr".href="#Debug">..</a></h2>... |
| 91ac0 | 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 | .....<pre><code.class="shell">$. |
| 91ae0 | 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 63 6f 64 65 3e | zig.build-exe.example.zig</code> |
| 91b00 | 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 46 61 | </pre>.......<ul>.........<li>Fa |
| 91b20 | 73 74 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 | st.compilation.speed</li>....... |
| 91b40 | 20 20 3c 6c 69 3e 53 61 66 65 74 79 20 63 68 65 63 6b 73 20 65 6e 61 62 6c 65 64 3c 2f 6c 69 3e | ..<li>Safety.checks.enabled</li> |
| 91b60 | 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 6c 6f 77 20 72 75 6e 74 69 6d 65 20 70 65 72 66 6f 72 | .........<li>Slow.runtime.perfor |
| 91b80 | 6d 61 6e 63 65 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 | mance</li>.........<li>Large.bin |
| 91ba0 | 61 72 79 20 73 69 7a 65 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 4e 6f 20 72 65 70 | ary.size</li>.........<li>No.rep |
| 91bc0 | 72 6f 64 75 63 69 62 6c 65 20 62 75 69 6c 64 20 72 65 71 75 69 72 65 6d 65 6e 74 3c 2f 6c 69 3e | roducible.build.requirement</li> |
| 91be0 | 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 | .......</ul>..............<h2.id |
| 91c00 | 3d 22 52 65 6c 65 61 73 65 46 61 73 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 52 65 6c | ="ReleaseFast"><a.href="#toc-Rel |
| 91c20 | 65 61 73 65 46 61 73 74 22 3e 52 65 6c 65 61 73 65 46 61 73 74 3c 2f 61 3e 20 3c 61 20 63 6c 61 | easeFast">ReleaseFast</a>.<a.cla |
| 91c40 | 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 52 65 6c 65 61 73 65 46 61 73 74 22 3e c2 a7 3c | ss="hdr".href="#ReleaseFast">..< |
| 91c60 | 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 | /a></h2>........<pre><code.class |
| 91c80 | 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 65 78 61 6d 70 6c 65 | ="shell">$.zig.build-exe.example |
| 91ca0 | 2e 7a 69 67 20 2d 4f 20 52 65 6c 65 61 73 65 46 61 73 74 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e | .zig.-O.ReleaseFast</code></pre> |
| 91cc0 | 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 46 61 73 74 20 72 75 6e | .......<ul>.........<li>Fast.run |
| 91ce0 | 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 6c | time.performance</li>.........<l |
| 91d00 | 69 3e 53 61 66 65 74 79 20 63 68 65 63 6b 73 20 64 69 73 61 62 6c 65 64 3c 2f 6c 69 3e 0a 20 20 | i>Safety.checks.disabled</li>... |
| 91d20 | 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 |
| 91d40 | 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 |
| 91d60 | 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 |
| 91d80 | 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>........ |
| 91da0 | 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 52 65 6c 65 61 73 65 53 61 66 65 22 3e 3c 61 20 68 72 | ......<h2.id="ReleaseSafe"><a.hr |
| 91dc0 | 65 66 3d 22 23 74 6f 63 2d 52 65 6c 65 61 73 65 53 61 66 65 22 3e 52 65 6c 65 61 73 65 53 61 66 | ef="#toc-ReleaseSafe">ReleaseSaf |
| 91de0 | 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 6c 65 | e</a>.<a.class="hdr".href="#Rele |
| 91e00 | 61 73 65 53 61 66 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 | aseSafe">..</a></h2>........<pre |
| 91e20 | 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 62 75 69 6c 64 | ><code.class="shell">$.zig.build |
| 91e40 | 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 66 65 3c | -exe.example.zig.-O.ReleaseSafe< |
| 91e60 | 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 | /code></pre>.......<ul>......... |
| 91e80 | 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 63 65 3c 2f | <li>Medium.runtime.performance</ |
| 91ea0 | 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 61 66 65 74 79 20 63 68 65 63 6b 73 20 65 6e | li>.........<li>Safety.checks.en |
| 91ec0 | 61 62 6c 65 64 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 6c 6f 77 20 63 6f 6d 70 | abled</li>.........<li>Slow.comp |
| 91ee0 | 69 6c 61 74 69 6f 6e 20 73 70 65 65 64 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 4c | ilation.speed</li>.........<li>L |
| 91f00 | 61 72 67 65 20 62 69 6e 61 72 79 20 73 69 7a 65 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c | arge.binary.size</li>.........<l |
| 91f20 | 69 3e 52 65 70 72 6f 64 75 63 69 62 6c 65 20 62 75 69 6c 64 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | i>Reproducible.build</li>....... |
| 91f40 | 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 52 65 6c 65 61 | </ul>..............<h2.id="Relea |
| 91f60 | 73 65 53 6d 61 6c 6c 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 52 65 6c 65 61 73 65 53 6d | seSmall"><a.href="#toc-ReleaseSm |
| 91f80 | 61 6c 6c 22 3e 52 65 6c 65 61 73 65 53 6d 61 6c 6c 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 | all">ReleaseSmall</a>.<a.class=" |
| 91fa0 | 68 64 72 22 20 68 72 65 66 3d 22 23 52 65 6c 65 61 73 65 53 6d 61 6c 6c 22 3e c2 a7 3c 2f 61 3e | hdr".href="#ReleaseSmall">..</a> |
| 91fc0 | 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 | </h2>........<pre><code.class="s |
| 91fe0 | 68 65 6c 6c 22 3e 24 20 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 65 78 61 6d 70 6c 65 2e 7a 69 | hell">$.zig.build-exe.example.zi |
| 92000 | 67 20 2d 4f 20 52 65 6c 65 61 73 65 53 6d 61 6c 6c 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 | g.-O.ReleaseSmall</code></pre>.. |
| 92020 | 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 6e | .....<ul>.........<li>Medium.run |
| 92040 | 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 6c | time.performance</li>.........<l |
| 92060 | 69 3e 53 61 66 65 74 79 20 63 68 65 63 6b 73 20 64 69 73 61 62 6c 65 64 3c 2f 6c 69 3e 0a 20 20 | i>Safety.checks.disabled</li>... |
| 92080 | 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 |
| 920a0 | 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 6d 61 6c 6c 20 62 69 6e 61 72 79 20 73 | </li>.........<li>Small.binary.s |
| 920c0 | 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 |
| 920e0 | 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>........ |
| 92100 | 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>< |
| 92120 | 61 20 68 72 65 66 3d 22 23 43 6f 6d 70 69 6c 65 2d 56 61 72 69 61 62 6c 65 73 22 3e 43 6f 6d 70 | a.href="#Compile-Variables">Comp |
| 92140 | 69 6c 65 20 56 61 72 69 61 62 6c 65 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 | ile.Variables</a></li>.<li><a.hr |
| 92160 | 65 66 3d 22 23 5a 69 67 2d 42 75 69 6c 64 2d 53 79 73 74 65 6d 22 3e 5a 69 67 20 42 75 69 6c 64 | ef="#Zig-Build-System">Zig.Build |
| 92180 | 20 53 79 73 74 65 6d 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 55 | .System</a></li>.<li><a.href="#U |
| 921a0 | 6e 64 65 66 69 6e 65 64 2d 42 65 68 61 76 69 6f 72 22 3e 55 6e 64 65 66 69 6e 65 64 20 42 65 68 | ndefined-Behavior">Undefined.Beh |
| 921c0 | 61 76 69 6f 72 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 | avior</a></li>.</ul>............ |
| 921e0 | 20 20 20 20 3c 68 31 20 69 64 3d 22 53 69 6e 67 6c 65 2d 54 68 72 65 61 64 65 64 2d 42 75 69 6c | ....<h1.id="Single-Threaded-Buil |
| 92200 | 64 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 53 69 6e 67 6c 65 2d 54 68 72 65 61 64 65 | ds"><a.href="#toc-Single-Threade |
| 92220 | 64 2d 42 75 69 6c 64 73 22 3e 53 69 6e 67 6c 65 20 54 68 72 65 61 64 65 64 20 42 75 69 6c 64 73 | d-Builds">Single.Threaded.Builds |
| 92240 | 3c 2f 61 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 69 6e 67 6c | </a>.<a.class="hdr".href="#Singl |
| 92260 | 65 2d 54 68 72 65 61 64 65 64 2d 42 75 69 6c 64 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 31 3e 0a 0a | e-Threaded-Builds">..</a></h1>.. |
| 92280 | 20 20 20 20 20 20 3c 70 3e 5a 69 67 20 68 61 73 20 61 20 63 6f 6d 70 69 6c 65 20 6f 70 74 69 6f | ......<p>Zig.has.a.compile.optio |
| 922a0 | 6e 20 3c 63 6f 64 65 3e 2d 2d 73 69 6e 67 6c 65 2d 74 68 72 65 61 64 65 64 3c 2f 63 6f 64 65 3e | n.<code>--single-threaded</code> |
| 922c0 | 20 77 68 69 63 68 20 68 61 73 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 65 66 66 65 63 74 73 | .which.has.the.following.effects |
| 922e0 | 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 41 6c 6c | :</p>.......<ul>.........<li>All |
| 92300 | 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 61 62 6c 65 | .<a.href="#Thread-Local-Variable |
| 92320 | 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 3e 20 61 72 | s">Thread.Local.Variables</a>.ar |
| 92340 | 65 20 74 72 65 61 74 65 64 20 61 73 20 3c 61 20 68 72 65 66 3d 22 23 47 6c 6f 62 61 6c 2d 56 61 | e.treated.as.<a.href="#Global-Va |
| 92360 | 72 69 61 62 6c 65 73 22 3e 47 6c 6f 62 61 6c 20 56 61 72 69 61 62 6c 65 73 3c 2f 61 3e 2e 3c 2f | riables">Global.Variables</a>.</ |
| 92380 | 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 54 68 65 20 6f 76 65 72 68 65 61 64 20 6f 66 20 | li>.........<li>The.overhead.of. |
| 923a0 | 3c 61 20 68 72 65 66 3d 22 23 41 73 79 6e 63 2d 46 75 6e 63 74 69 6f 6e 73 22 3e 41 73 79 6e 63 | <a.href="#Async-Functions">Async |
| 923c0 | 20 46 75 6e 63 74 69 6f 6e 73 3c 2f 61 3e 20 62 65 63 6f 6d 65 73 20 65 71 75 69 76 61 6c 65 6e | .Functions</a>.becomes.equivalen |
| 923e0 | 74 20 74 6f 20 66 75 6e 63 74 69 6f 6e 20 63 61 6c 6c 20 6f 76 65 72 68 65 61 64 2e 3c 2f 6c 69 | t.to.function.call.overhead.</li |
| 92400 | 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 54 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a | >.........<li>The.<code.class="z |
| 92420 | 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 | ig"><span.class="tok-builtin">@i |
| 92440 | 6d 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 |
| 92460 | 72 22 3e 26 71 75 6f 74 3b 62 75 69 6c 74 69 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 73 | r">"builtin"</span>).s |
| 92480 | 69 6e 67 6c 65 5f 74 68 72 65 61 64 65 64 3c 2f 63 6f 64 65 3e 20 62 65 63 6f 6d 65 73 20 3c 63 | ingle_threaded</code>.becomes.<c |
| 924a0 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ode.class="zig"><span.class="tok |
| 924c0 | 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 0a 20 20 20 20 20 20 | -null">true</span></code>....... |
| 924e0 | 20 20 20 20 61 6e 64 20 74 68 65 72 65 66 6f 72 65 20 76 61 72 69 6f 75 73 20 75 73 65 72 6c 61 | ....and.therefore.various.userla |
| 92500 | 6e 64 20 41 50 49 73 20 77 68 69 63 68 20 72 65 61 64 20 74 68 69 73 20 76 61 72 69 61 62 6c 65 | nd.APIs.which.read.this.variable |
| 92520 | 20 62 65 63 6f 6d 65 20 6d 6f 72 65 20 65 66 66 69 63 69 65 6e 74 2e 0a 20 20 20 20 20 20 20 20 | .become.more.efficient.......... |
| 92540 | 20 20 46 6f 72 20 65 78 61 6d 70 6c 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e | ..For.example.<code.class="zig"> |
| 92560 | 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 20 20 | std.Mutex</code>.becomes........ |
| 92580 | 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 20 61 | ...an.empty.data.structure.and.a |
| 925a0 | 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 6f 70 | ll.of.its.functions.become.no-op |
| 925c0 | 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 20 20 | s.</li>.......</ul>............. |
| 925e0 | 20 20 3c 68 31 20 69 64 3d 22 55 6e 64 65 66 69 6e 65 64 2d 42 65 68 61 76 69 6f 72 22 3e 3c 61 | ..<h1.id="Undefined-Behavior"><a |
| 92600 | 20 68 72 65 66 3d 22 23 74 6f 63 2d 55 6e 64 65 66 69 6e 65 64 2d 42 65 68 61 76 69 6f 72 22 3e | .href="#toc-Undefined-Behavior"> |
| 92620 | 55 6e 64 65 66 69 6e 65 64 20 42 65 68 61 76 69 6f 72 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d | Undefined.Behavior</a>.<a.class= |
| 92640 | 22 68 64 72 22 20 68 72 65 66 3d 22 23 55 6e 64 65 66 69 6e 65 64 2d 42 65 68 61 76 69 6f 72 22 | "hdr".href="#Undefined-Behavior" |
| 92660 | 3e c2 a7 3c 2f 61 3e 3c 2f 68 31 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 5a 69 | >..</a></h1>........<p>.......Zi |
| 92680 | 67 20 68 61 73 20 6d 61 6e 79 20 69 6e 73 74 61 6e 63 65 73 20 6f 66 20 75 6e 64 65 66 69 6e 65 | g.has.many.instances.of.undefine |
| 926a0 | 64 20 62 65 68 61 76 69 6f 72 2e 20 49 66 20 75 6e 64 65 66 69 6e 65 64 20 62 65 68 61 76 69 6f | d.behavior..If.undefined.behavio |
| 926c0 | 72 20 69 73 0a 20 20 20 20 20 20 64 65 74 65 63 74 65 64 20 61 74 20 63 6f 6d 70 69 6c 65 2d 74 | r.is.......detected.at.compile-t |
| 926e0 | 69 6d 65 2c 20 5a 69 67 20 65 6d 69 74 73 20 61 20 63 6f 6d 70 69 6c 65 20 65 72 72 6f 72 20 61 | ime,.Zig.emits.a.compile.error.a |
| 92700 | 6e 64 20 72 65 66 75 73 65 73 20 74 6f 20 63 6f 6e 74 69 6e 75 65 2e 0a 20 20 20 20 20 20 4d 6f | nd.refuses.to.continue........Mo |
| 92720 | 73 74 20 75 6e 64 65 66 69 6e 65 64 20 62 65 68 61 76 69 6f 72 20 74 68 61 74 20 63 61 6e 6e 6f | st.undefined.behavior.that.canno |
| 92740 | 74 20 62 65 20 64 65 74 65 63 74 65 64 20 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 63 61 | t.be.detected.at.compile-time.ca |
| 92760 | 6e 20 62 65 20 64 65 74 65 63 74 65 64 0a 20 20 20 20 20 20 61 74 20 72 75 6e 74 69 6d 65 2e 20 | n.be.detected.......at.runtime.. |
| 92780 | 49 6e 20 74 68 65 73 65 20 63 61 73 65 73 2c 20 5a 69 67 20 68 61 73 20 73 61 66 65 74 79 20 63 | In.these.cases,.Zig.has.safety.c |
| 927a0 | 68 65 63 6b 73 2e 20 53 61 66 65 74 79 20 63 68 65 63 6b 73 20 63 61 6e 20 62 65 20 64 69 73 61 | hecks..Safety.checks.can.be.disa |
| 927c0 | 62 6c 65 64 0a 20 20 20 20 20 20 6f 6e 20 61 20 70 65 72 2d 62 6c 6f 63 6b 20 62 61 73 69 73 20 | bled.......on.a.per-block.basis. |
| 927e0 | 77 69 74 68 20 3c 61 20 68 72 65 66 3d 22 23 73 65 74 52 75 6e 74 69 6d 65 53 61 66 65 74 79 22 | with.<a.href="#setRuntimeSafety" |
| 92800 | 3e 40 73 65 74 52 75 6e 74 69 6d 65 53 61 66 65 74 79 3c 2f 61 3e 2e 20 54 68 65 20 3c 61 20 68 | >@setRuntimeSafety</a>..The.<a.h |
| 92820 | 72 65 66 3d 22 23 52 65 6c 65 61 73 65 46 61 73 74 22 3e 52 65 6c 65 61 73 65 46 61 73 74 3c 2f | ref="#ReleaseFast">ReleaseFast</ |
| 92840 | 61 3e 0a 20 20 20 20 20 20 61 6e 64 20 3c 61 20 68 72 65 66 3d 22 23 52 65 6c 65 61 73 65 53 6d | a>.......and.<a.href="#ReleaseSm |
| 92860 | 61 6c 6c 22 3e 52 65 6c 65 61 73 65 53 6d 61 6c 6c 3c 2f 61 3e 20 62 75 69 6c 64 20 6d 6f 64 65 | all">ReleaseSmall</a>.build.mode |
| 92880 | 73 20 64 69 73 61 62 6c 65 20 61 6c 6c 20 73 61 66 65 74 79 20 63 68 65 63 6b 73 20 28 65 78 63 | s.disable.all.safety.checks.(exc |
| 928a0 | 65 70 74 20 77 68 65 72 65 20 6f 76 65 72 72 69 64 64 65 6e 0a 20 20 20 20 20 20 62 79 20 3c 61 | ept.where.overridden.......by.<a |
| 928c0 | 20 68 72 65 66 3d 22 23 73 65 74 52 75 6e 74 69 6d 65 53 61 66 65 74 79 22 3e 40 73 65 74 52 75 | .href="#setRuntimeSafety">@setRu |
| 928e0 | 6e 74 69 6d 65 53 61 66 65 74 79 3c 2f 61 3e 29 20 69 6e 20 6f 72 64 65 72 20 74 6f 20 66 61 63 | ntimeSafety</a>).in.order.to.fac |
| 92900 | 69 6c 69 74 61 74 65 20 6f 70 74 69 6d 69 7a 61 74 69 6f 6e 73 2e 0a 20 20 20 20 20 20 3c 2f 70 | ilitate.optimizations........</p |
| 92920 | 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 73 61 66 65 74 79 20 | >.......<p>.......When.a.safety. |
| 92940 | 63 68 65 63 6b 20 66 61 69 6c 73 2c 20 5a 69 67 20 63 72 61 73 68 65 73 20 77 69 74 68 20 61 20 | check.fails,.Zig.crashes.with.a. |
| 92960 | 73 74 61 63 6b 20 74 72 61 63 65 2c 20 6c 69 6b 65 20 74 68 69 73 3a 0a 20 20 20 20 20 20 3c 2f | stack.trace,.like.this:.......</ |
| 92980 | 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 | p>.......<p.class="file">test.zi |
| 929a0 | 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 | g</p><pre><code.class="zig"><spa |
| 929c0 | 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 |
| 929e0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 61 66 65 74 79 20 | an.class="tok-str">"safety. |
| 92a00 | 63 68 65 63 6b 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 | check"</span>.{.....<span.c |
| 92a20 | 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> |
| 92a40 | 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 | ;.}</code></pre><pre><code.class |
| 92a60 | 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 31 2f 31 | ="shell">$.zig.test.test.zig.1/1 |
| 92a80 | 20 74 65 73 74 20 26 71 75 6f 74 3b 73 61 66 65 74 79 20 63 68 65 63 6b 26 71 75 6f 74 3b 2e 2e | .test."safety.check".. |
| 92aa0 | 2e 20 72 65 61 63 68 65 64 20 75 6e 72 65 61 63 68 61 62 6c 65 20 63 6f 64 65 0a 3c 73 70 61 6e | ..reached.unreachable.code.<span |
| 92ac0 | 20 63 6c 61 73 73 3d 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f | .class="t37_1">/home/andy/Downlo |
| 92ae0 | 61 64 73 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 32 3a 35 3c | ads/zig/docgen_tmp/test.zig:2:5< |
| 92b00 | 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 30 35 | /span>:.<span.class="t2_0">0x205 |
| 92b20 | 39 36 61 20 69 6e 20 74 65 73 74 20 26 71 75 6f 74 3b 73 61 66 65 74 79 20 63 68 65 63 6b 26 71 | 96a.in.test."safety.check&q |
| 92b40 | 75 6f 74 3b 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 75 6e 72 65 61 63 68 61 62 | uot;.(test)</span>.....unreachab |
| 92b60 | 6c 65 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 | le;.....<span.class="t32_1">^</s |
| 92b80 | 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 | pan>.<span.class="t37_1">/home/a |
| 92ba0 | 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 70 65 63 69 61 | ndy/Downloads/zig/lib/std/specia |
| 92bc0 | 6c 2f 74 65 73 74 5f 72 75 6e 6e 65 72 2e 7a 69 67 3a 36 31 3a 32 38 3c 2f 73 70 61 6e 3e 3a 20 | l/test_runner.zig:61:28</span>:. |
| 92be0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 64 61 38 31 20 69 6e 20 73 | <span.class="t2_0">0x22da81.in.s |
| 92c00 | 74 64 2e 73 70 65 63 69 61 6c 2e 6d 61 69 6e 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 | td.special.main.(test)</span>... |
| 92c20 | 20 20 20 20 20 20 7d 20 65 6c 73 65 20 74 65 73 74 5f 66 6e 2e 66 75 6e 63 28 29 3b 0a 20 20 20 | ......}.else.test_fn.func();.... |
| 92c40 | 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 |
| 92c60 | 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | ass="t32_1">^</span>.<span.class |
| 92c80 | 3d 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 | ="t37_1">/home/andy/Downloads/zi |
| 92ca0 | 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 33 33 34 3a 33 37 3c 2f 73 70 61 6e | g/lib/std/start.zig:334:37</span |
| 92cc0 | 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 30 37 32 36 64 20 69 | >:.<span.class="t2_0">0x20726d.i |
| 92ce0 | 6e 20 73 74 64 2e 73 74 61 72 74 2e 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 | n.std.start.posixCallMainAndExit |
| 92d00 | 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 73 74 | .(test)</span>.............const |
| 92d20 | 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 |
| 92d40 | 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 | |.{............................. |
| 92d60 | 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 | ........<span.class="t32_1">^</s |
| 92d80 | 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 | pan>.<span.class="t37_1">/home/a |
| 92da0 | 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e | ndy/Downloads/zig/lib/std/start. |
| 92dc0 | 7a 69 67 3a 31 36 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 74 | zig:162:5</span>:.<span.class="t |
| 92de0 | 32 5f 30 22 3e 30 78 32 30 36 66 61 32 20 69 6e 20 73 74 64 2e 73 74 61 72 74 2e 5f 73 74 61 72 | 2_0">0x206fa2.in.std.start._star |
| 92e00 | 74 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 40 63 61 6c 6c 28 2e 7b 20 2e 6d 6f | t.(test)</span>.....@call(.{..mo |
| 92e20 | 64 69 66 69 65 72 20 3d 20 2e 6e 65 76 65 72 5f 69 6e 6c 69 6e 65 20 7d 2c 20 70 6f 73 69 78 43 | difier.=..never_inline.},.posixC |
| 92e40 | 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 2c 20 2e 7b 7d 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 | allMainAndExit,..{});.....<span. |
| 92e60 | 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 65 72 72 6f 72 3a 20 74 68 | class="t32_1">^</span>.error:.th |
| 92e80 | 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 |
| 92ea0 | 3a 0a 64 6f 63 67 65 6e 5f 74 6d 70 2f 7a 69 67 2d 63 61 63 68 65 2f 6f 2f 38 66 65 38 30 31 32 | :.docgen_tmp/zig-cache/o/8fe8012 |
| 92ec0 | 38 61 39 34 63 31 36 31 33 65 34 38 33 31 37 32 39 35 66 63 37 36 63 66 63 2f 74 65 73 74 0a 3c | 8a94c1613e48317295fc76cfc/test.< |
| 92ee0 | 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 52 65 61 63 | /code></pre>........<h2.id="Reac |
| 92f00 | 68 69 6e 67 2d 55 6e 72 65 61 63 68 61 62 6c 65 2d 43 6f 64 65 22 3e 3c 61 20 68 72 65 66 3d 22 | hing-Unreachable-Code"><a.href=" |
| 92f20 | 23 74 6f 63 2d 52 65 61 63 68 69 6e 67 2d 55 6e 72 65 61 63 68 61 62 6c 65 2d 43 6f 64 65 22 3e | #toc-Reaching-Unreachable-Code"> |
| 92f40 | 52 65 61 63 68 69 6e 67 20 55 6e 72 65 61 63 68 61 62 6c 65 20 43 6f 64 65 3c 2f 61 3e 20 3c 61 | Reaching.Unreachable.Code</a>.<a |
| 92f60 | 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 52 65 61 63 68 69 6e 67 2d 55 6e 72 | .class="hdr".href="#Reaching-Unr |
| 92f80 | 65 61 63 68 61 62 6c 65 2d 43 6f 64 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 | eachable-Code">..</a></h2>...... |
| 92fa0 | 20 20 3c 70 3e 41 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 | ..<p>At.compile-time:</p>....... |
| 92fc0 | 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 | <p.class="file">test.zig</p><pre |
| 92fe0 | 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ><code.class="zig"><span.class=" |
| 93000 | 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 |
| 93020 | 73 65 72 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 | sert(<span.class="tok-null">fals |
| 93040 | 65 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | e</span>);.}.<span.class="tok-kw |
| 93060 | 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" |
| 93080 | 3e 61 73 73 65 72 74 3c 2f 73 70 61 6e 3e 28 6f 6b 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | >assert</span>(ok:.<span.class=" |
| 930a0 | 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 | tok-type">bool</span>).<span.cla |
| 930c0 | 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>.{..... |
| 930e0 | 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>.( |
| 93100 | 21 6f 6b 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 72 65 61 63 | !ok).<span.class="tok-kw">unreac |
| 93120 | 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 | hable</span>;.<span.class="tok-c |
| 93140 | 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 61 73 73 65 72 74 69 6f 6e 20 66 61 69 6c 75 72 65 3c 2f 73 70 | omment">//.assertion.failure</sp |
| 93160 | 61 6e 3e 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 | an>.}</code></pre><pre><code.cla |
| 93180 | 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 3c | ss="shell">$.zig.test.test.zig.< |
| 931a0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 | span.class="t0_1">./docgen_tmp/t |
| 931c0 | 65 73 74 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 73 | est.zig:5:14:.</span><span.class |
| 931e0 | 3d 22 74 33 31 5f 31 22 3e 65 72 72 6f 72 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 | ="t31_1">error:.</span><span.cla |
| 93200 | 73 73 3d 22 74 30 5f 31 22 3e 72 65 61 63 68 65 64 20 75 6e 72 65 61 63 68 61 62 6c 65 20 63 6f | ss="t0_1">reached.unreachable.co |
| 93220 | 64 65 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 | de</span>.....if.(!ok).unreachab |
| 93240 | 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 20 20 20 20 20 | le;.//.assertion.failure........ |
| 93260 | 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 | ......<span.class="t32_1">^</spa |
| 93280 | 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 | n>.<span.class="t0_1">./docgen_t |
| 932a0 | 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 32 3a 31 31 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 | mp/test.zig:2:11:.</span><span.c |
| 932c0 | 6c 61 73 73 3d 22 74 33 36 5f 31 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 | lass="t36_1">note:.</span><span. |
| 932e0 | 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 63 61 6c 6c 65 64 20 66 72 6f 6d 20 68 65 72 65 3c 2f 73 | class="t0_1">called.from.here</s |
| 93300 | 70 61 6e 3e 0a 20 20 20 20 61 73 73 65 72 74 28 66 61 6c 73 65 29 3b 0a 20 20 20 20 20 20 20 20 | pan>.....assert(false);......... |
| 93320 | 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c | ..<span.class="t32_1">^</span>.< |
| 93340 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 | span.class="t0_1">./docgen_tmp/t |
| 93360 | 65 73 74 2e 7a 69 67 3a 31 3a 31 30 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | est.zig:1:10:.</span><span.class |
| 93380 | 3d 22 74 33 36 5f 31 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 | ="t36_1">note:.</span><span.clas |
| 933a0 | 73 3d 22 74 30 5f 31 22 3e 63 61 6c 6c 65 64 20 66 72 6f 6d 20 68 65 72 65 3c 2f 73 70 61 6e 3e | s="t0_1">called.from.here</span> |
| 933c0 | 0a 63 6f 6d 70 74 69 6d 65 20 7b 0a 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | .comptime.{..........<span.class |
| 933e0 | 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ="t32_1">^</span>.<span.class="t |
| 93400 | 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 32 3a 31 31 3a | 0_1">./docgen_tmp/test.zig:2:11: |
| 93420 | 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 36 5f 31 22 3e 6e 6f 74 65 | .</span><span.class="t36_1">note |
| 93440 | 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 72 65 66 65 | :.</span><span.class="t0_1">refe |
| 93460 | 72 65 6e 63 65 64 20 68 65 72 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 61 73 73 65 72 74 28 66 61 | renced.here</span>.....assert(fa |
| 93480 | 6c 73 65 29 3b 0a 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 | lse);...........<span.class="t32 |
| 934a0 | 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 | _1">^</span>.</code></pre>...... |
| 934c0 | 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 70 20 63 6c | ..<p>At.runtime:</p>.......<p.cl |
| 934e0 | 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 | ass="file">test.zig</p><pre><cod |
| 93500 | 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | e.class="zig"><span.class="tok-k |
| 93520 | 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 |
| 93540 | 73 3d 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>(< |
| 93560 | 73 70 61 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 |
| 93580 | 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | uot;</span>);..<span.class="tok- |
| 935a0 | 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- |
| 935c0 | 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 |
| 935e0 | 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 |
| 93600 | 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 73 74 64 2e 64 65 | k-type">void</span>.{.....std.de |
| 93620 | 62 75 67 2e 61 73 73 65 72 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c | bug.assert(<span.class="tok-null |
| 93640 | 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c | ">false</span>);.}</code></pre>< |
| 93660 | 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 62 75 | pre><code.class="shell">$.zig.bu |
| 93680 | 69 6c 64 2d 65 78 65 20 74 65 73 74 2e 7a 69 67 0a 24 20 2e 2f 74 65 73 74 0a 72 65 61 63 68 65 | ild-exe.test.zig.$../test.reache |
| 936a0 | 64 20 75 6e 72 65 61 63 68 61 62 6c 65 20 63 6f 64 65 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | d.unreachable.code.<span.class=" |
| 936c0 | 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f | t37_1">/home/andy/Downloads/zig/ |
| 936e0 | 6c 69 62 2f 73 74 64 2f 64 65 62 75 67 2e 7a 69 67 3a 32 32 35 3a 31 34 3c 2f 73 70 61 6e 3e 3a | lib/std/debug.zig:225:14</span>: |
| 93700 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 30 33 64 36 62 20 69 6e 20 | .<span.class="t2_0">0x203d6b.in. |
| 93720 | 73 74 64 2e 64 65 62 75 67 2e 61 73 73 65 72 74 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 | std.debug.assert.(test)</span>.. |
| 93740 | 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 |
| 93760 | 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 |
| 93780 | 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c | .class="t32_1">^</span>.<span.cl |
| 937a0 | 61 73 73 3d 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 | ass="t37_1">/home/andy/Downloads |
| 937c0 | 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 34 3a 32 31 3c 2f 73 | /zig/docgen_tmp/test.zig:4:21</s |
| 937e0 | 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 62 30 33 | pan>:.<span.class="t2_0">0x22b03 |
| 93800 | 61 20 69 6e 20 6d 61 69 6e 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 73 74 64 2e | a.in.main.(test)</span>.....std. |
| 93820 | 64 65 62 75 67 2e 61 73 73 65 72 74 28 66 61 6c 73 65 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 | debug.assert(false);............ |
| 93840 | 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f | .........<span.class="t32_1">^</ |
| 93860 | 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f | span>.<span.class="t37_1">/home/ |
| 93880 | 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 | andy/Downloads/zig/lib/std/start |
| 938a0 | 2e 7a 69 67 3a 33 32 34 3a 32 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | .zig:324:22</span>:.<span.class= |
| 938c0 | 22 74 32 5f 30 22 3e 30 78 32 30 34 63 37 66 20 69 6e 20 73 74 64 2e 73 74 61 72 74 2e 70 6f 73 | "t2_0">0x204c7f.in.std.start.pos |
| 938e0 | 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a | ixCallMainAndExit.(test)</span>. |
| 93900 | 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 20 | ............root.main();........ |
| 93920 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 | ..............<span.class="t32_1 |
| 93940 | 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 37 5f 31 22 3e 2f | ">^</span>.<span.class="t37_1">/ |
| 93960 | 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f | home/andy/Downloads/zig/lib/std/ |
| 93980 | 73 74 61 72 74 2e 7a 69 67 3a 31 36 32 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c | start.zig:162:5</span>:.<span.cl |
| 939a0 | 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 30 34 61 35 32 20 69 6e 20 73 74 64 2e 73 74 61 72 74 | ass="t2_0">0x204a52.in.std.start |
| 939c0 | 2e 5f 73 74 61 72 74 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 40 63 61 6c 6c 28 | ._start.(test)</span>.....@call( |
| 939e0 | 2e 7b 20 2e 6d 6f 64 69 66 69 65 72 20 3d 20 2e 6e 65 76 65 72 5f 69 6e 6c 69 6e 65 20 7d 2c 20 | .{..modifier.=..never_inline.},. |
| 93a00 | 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 2c 20 2e 7b 7d 29 3b 0a 20 20 20 20 | posixCallMainAndExit,..{});..... |
| 93a20 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 28 70 72 | <span.class="t32_1">^</span>.(pr |
| 93a40 | 6f 63 65 73 73 20 74 65 72 6d 69 6e 61 74 65 64 20 62 79 20 73 69 67 6e 61 6c 29 3c 2f 63 6f 64 | ocess.terminated.by.signal)</cod |
| 93a60 | 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 49 | e></pre>...............<h2.id="I |
| 93a80 | 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 23 74 6f | ndex-out-of-Bounds"><a.href="#to |
| 93aa0 | 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 6f 75 74 | c-Index-out-of-Bounds">Index.out |
| 93ac0 | 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 20 68 72 | .of.Bounds</a>.<a.class="hdr".hr |
| 93ae0 | 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 2f 61 3e | ef="#Index-out-of-Bounds">..</a> |
| 93b00 | 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 3a | </h2>........<p>At.compile-time: |
| 93b20 | 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e | </p>.......<p.class="file">test. |
| 93b40 | 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 | zig</p><pre><code.class="zig"><s |
| 93b60 | 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 |
| 93b80 | 6e 3e 20 7b 0a 20 20 20 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 |
| 93ba0 | 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 61 73 73 3d 22 | nst</span>.array:.[<span.class=" |
| 93bc0 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 5d 3c 73 70 61 6e 20 63 6c 61 73 73 | tok-number">5</span>]<span.class |
| 93be0 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c | ="tok-type">u8</span>.=.<span.cl |
| 93c00 | 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"< |
| 93c20 | 2f 73 70 61 6e 3e 2e 2a 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | /span>.*;.....<span.class="tok-k |
| 93c40 | 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 67 61 72 62 61 67 65 20 3d 20 61 72 72 61 79 5b | w">const</span>.garbage.=.array[ |
| 93c60 | 3c 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 |
| 93c80 | 3e 5d 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 | >];.}</code></pre><pre><code.cla |
| 93ca0 | 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 3c | ss="shell">$.zig.test.test.zig.< |
| 93cc0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 | span.class="t0_1">./docgen_tmp/t |
| 93ce0 | 65 73 74 2e 7a 69 67 3a 33 3a 32 36 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | est.zig:3:26:.</span><span.class |
| 93d00 | 3d 22 74 33 31 5f 31 22 3e 65 72 72 6f 72 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 | ="t31_1">error:.</span><span.cla |
| 93d20 | 73 73 3d 22 74 30 5f 31 22 3e 69 6e 64 65 78 20 35 20 6f 75 74 73 69 64 65 20 61 72 72 61 79 20 | ss="t0_1">index.5.outside.array. |
| 93d40 | 6f 66 20 73 69 7a 65 20 35 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 63 6f 6e 73 74 20 67 61 72 62 61 | of.size.5</span>.....const.garba |
| 93d60 | 67 65 20 3d 20 61 72 72 61 79 5b 35 5d 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ge.=.array[5];.................. |
| 93d80 | 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 | ........<span.class="t32_1">^</s |
| 93da0 | 70 61 6e 3e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 74 20 | pan>.</code></pre>........<p>At. |
| 93dc0 | 72 75 6e 74 69 6d 65 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c | runtime:</p>.......<p.class="fil |
| 93de0 | 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d | e">test.zig</p><pre><code.class= |
| 93e00 | 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f | "zig"><span.class="tok-kw">pub</ |
| 93e20 | 73 70 61 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 |
| 93e40 | 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</ |
| 93e60 | 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 |
| 93e80 | 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 |
| 93ea0 | 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 78 20 3d 20 66 6f 6f 28 3c 73 70 61 6e 20 63 | k-kw">var</span>.x.=.foo(<span.c |
| 93ec0 | 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 68 65 6c 6c 6f 26 71 75 6f 74 3b | lass="tok-str">"hello" |
| 93ee0 | 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 |
| 93f00 | 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" |
| 93f20 | 3e 66 6f 6f 3c 2f 73 70 61 6e 3e 28 78 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | >foo</span>(x:.[]<span.class="to |
| 93f40 | 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=" |
| 93f60 | 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 |
| 93f80 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 | ="tok-type">u8</span>.{.....<spa |
| 93fa0 | 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 |
| 93fc0 | 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 | [<span.class="tok-number">5</spa |
| 93fe0 | 6e 3e 5d 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c | n>];.}</code></pre><pre><code.cl |
| 94000 | 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 74 65 73 74 | ass="shell">$.zig.build-exe.test |
| 94020 | 2e 7a 69 67 0a 24 20 2e 2f 74 65 73 74 0a 69 6e 64 65 78 20 6f 75 74 20 6f 66 20 62 6f 75 6e 64 | .zig.$../test.index.out.of.bound |
| 94040 | 73 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 | s.<span.class="t37_1">/home/andy |
| 94060 | 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a | /Downloads/zig/docgen_tmp/test.z |
| 94080 | 69 67 3a 36 3a 31 33 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f | ig:6:13</span>:.<span.class="t2_ |
| 940a0 | 30 22 3e 30 78 32 33 32 30 34 39 20 69 6e 20 66 6f 6f 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e | 0">0x232049.in.foo.(test)</span> |
| 940c0 | 0a 20 20 20 20 72 65 74 75 72 6e 20 78 5b 35 5d 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 | .....return.x[5];.............<s |
| 940e0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e | pan.class="t32_1">^</span>.<span |
| 94100 | 20 63 6c 61 73 73 3d 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f | .class="t37_1">/home/andy/Downlo |
| 94120 | 61 64 73 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 32 3a 31 36 | ads/zig/docgen_tmp/test.zig:2:16 |
| 94140 | 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 | </span>:.<span.class="t2_0">0x22 |
| 94160 | 62 30 36 36 20 69 6e 20 6d 61 69 6e 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 76 | b066.in.main.(test)</span>.....v |
| 94180 | 61 72 20 78 20 3d 20 66 6f 6f 28 26 71 75 6f 74 3b 68 65 6c 6c 6f 26 71 75 6f 74 3b 29 3b 0a 20 | ar.x.=.foo("hello");.. |
| 941a0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 | ..............<span.class="t32_1 |
| 941c0 | 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 37 5f 31 22 3e 2f | ">^</span>.<span.class="t37_1">/ |
| 941e0 | 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f | home/andy/Downloads/zig/lib/std/ |
| 94200 | 73 74 61 72 74 2e 7a 69 67 3a 33 32 34 3a 32 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 | start.zig:324:22</span>:.<span.c |
| 94220 | 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 30 34 63 39 66 20 69 6e 20 73 74 64 2e 73 74 61 72 | lass="t2_0">0x204c9f.in.std.star |
| 94240 | 74 2e 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 20 28 74 65 73 74 29 3c 2f 73 | t.posixCallMainAndExit.(test)</s |
| 94260 | 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();... |
| 94280 | 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=" |
| 942a0 | 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 37 | t32_1">^</span>.<span.class="t37 |
| 942c0 | 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 | _1">/home/andy/Downloads/zig/lib |
| 942e0 | 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 31 36 32 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 | /std/start.zig:162:5</span>:.<sp |
| 94300 | 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 30 34 61 37 32 20 69 6e 20 73 74 64 2e | an.class="t2_0">0x204a72.in.std. |
| 94320 | 73 74 61 72 74 2e 5f 73 74 61 72 74 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 40 | start._start.(test)</span>.....@ |
| 94340 | 63 61 6c 6c 28 2e 7b 20 2e 6d 6f 64 69 66 69 65 72 20 3d 20 2e 6e 65 76 65 72 5f 69 6e 6c 69 6e | call(.{..modifier.=..never_inlin |
| 94360 | 65 20 7d 2c 20 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 2c 20 2e 7b 7d 29 3b | e.},.posixCallMainAndExit,..{}); |
| 94380 | 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e | .....<span.class="t32_1">^</span |
| 943a0 | 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) |
| 943c0 | 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 | </code></pre>...............<h2. |
| 943e0 | 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 73 69 | id="Cast-Negative-Number-to-Unsi |
| 94400 | 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 73 74 | gned-Integer"><a.href="#toc-Cast |
| 94420 | 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 6e 74 | -Negative-Number-to-Unsigned-Int |
| 94440 | 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 55 6e | eger">Cast.Negative.Number.to.Un |
| 94460 | 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 64 72 | signed.Integer</a>.<a.class="hdr |
| 94480 | 22 20 68 72 65 66 3d 22 23 43 61 73 74 2d 4e 65 67 61 74 69 76 65 2d 4e 75 6d 62 65 72 2d 74 6f | ".href="#Cast-Negative-Number-to |
| 944a0 | 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 32 3e 0a 0a | -Unsigned-Integer">..</a></h2>.. |
| 944c0 | 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>... |
| 944e0 | 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e | ....<p.class="file">test.zig</p> |
| 94500 | 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 | <pre><code.class="zig"><span.cla |
| 94520 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 | ss="tok-kw">comptime</span>.{... |
| 94540 | 20 20 3c 73 70 61 6e 20 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 |
| 94560 | 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 79 70 65 | an>.value:.<span.class="tok-type |
| 94580 | 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 74 6f 6b | ">i32</span>.=.-<span.class="tok |
| 945a0 | 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 |
| 945c0 | 73 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 67 6e 65 | ss="tok-kw">const</span>.unsigne |
| 945e0 | 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 |
| 94600 | 6e 74 43 61 73 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | ntCast</span>(<span.class="tok-t |
| 94620 | 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 2c 20 76 61 6c 75 65 29 3b 0a 7d 3c 2f 63 6f 64 65 | ype">u32</span>,.value);.}</code |
| 94640 | 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e | ></pre><pre><code.class="shell"> |
| 94660 | 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | $.zig.test.test.zig.<span.class= |
| 94680 | 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 33 3a 32 | "t0_1">./docgen_tmp/test.zig:3:2 |
| 946a0 | 32 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 31 5f 31 22 3e 65 72 | 2:.</span><span.class="t31_1">er |
| 946c0 | 72 6f 72 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 61 | ror:.</span><span.class="t0_1">a |
| 946e0 | 74 74 65 6d 70 74 20 74 6f 20 63 61 73 74 20 6e 65 67 61 74 69 76 65 20 76 61 6c 75 65 20 74 6f | ttempt.to.cast.negative.value.to |
| 94700 | 20 75 6e 73 69 67 6e 65 64 20 69 6e 74 65 67 65 72 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 63 6f 6e | .unsigned.integer</span>.....con |
| 94720 | 73 74 20 75 6e 73 69 67 6e 65 64 20 3d 20 40 69 6e 74 43 61 73 74 28 75 33 32 2c 20 76 61 6c 75 | st.unsigned.=.@intCast(u32,.valu |
| 94740 | 65 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 | e);......................<span.c |
| 94760 | 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 | lass="t32_1">^</span>.</code></p |
| 94780 | 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 74 20 72 75 6e 74 69 6d 65 3a 3c 2f 70 3e 0a 20 20 | re>........<p>At.runtime:</p>... |
| 947a0 | 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e | ....<p.class="file">test.zig</p> |
| 947c0 | 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 | <pre><code.class="zig"><span.cla |
| 947e0 | 73 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.=.< |
| 94800 | 73 70 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 |
| 94820 | 3c 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 |
| 94840 | 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 |
| 94860 | 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 |
| 94880 | 61 73 73 3d 22 74 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 |
| 948a0 | 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. |
| 948c0 | 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>.{.. |
| 948e0 | 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 |
| 94900 | 6e 3e 20 76 61 6c 75 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 | n>.value:.<span.class="tok-type" |
| 94920 | 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 74 6f 6b 2d | >i32</span>.=.-<span.class="tok- |
| 94940 | 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | number">1</span>;.....<span.clas |
| 94960 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 75 6e 73 69 67 6e 65 64 20 3d | s="tok-kw">var</span>.unsigned.= |
| 94980 | 20 3c 73 70 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 | .<span.class="tok-builtin">@intC |
| 949a0 | 61 73 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | ast</span>(<span.class="tok-type |
| 949c0 | 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 2c 20 76 61 6c 75 65 29 3b 0a 20 20 20 20 73 74 64 2e 64 65 | ">u32</span>,.value);.....std.de |
| 949e0 | 62 75 67 2e 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e | bug.print(<span.class="tok-str"> |
| 94a00 | 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 2c 20 | "value:.{}\n"</span>,. |
| 94a20 | 2e 7b 75 6e 73 69 67 6e 65 64 7d 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 | .{unsigned});.}</code></pre><pre |
| 94a40 | 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 62 75 69 6c 64 | ><code.class="shell">$.zig.build |
| 94a60 | 2d 65 78 65 20 74 65 73 74 2e 7a 69 67 0a 24 20 2e 2f 74 65 73 74 0a 61 74 74 65 6d 70 74 20 74 | -exe.test.zig.$../test.attempt.t |
| 94a80 | 6f 20 63 61 73 74 20 6e 65 67 61 74 69 76 65 20 76 61 6c 75 65 20 74 6f 20 75 6e 73 69 67 6e 65 | o.cast.negative.value.to.unsigne |
| 94aa0 | 64 20 69 6e 74 65 67 65 72 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 37 5f 31 22 3e 2f 68 | d.integer.<span.class="t37_1">/h |
| 94ac0 | 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d | ome/andy/Downloads/zig/docgen_tm |
| 94ae0 | 70 2f 74 65 73 74 2e 7a 69 67 3a 35 3a 32 30 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c | p/test.zig:5:20</span>:.<span.cl |
| 94b00 | 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 62 30 62 37 20 69 6e 20 6d 61 69 6e 20 28 74 65 73 | ass="t2_0">0x22b0b7.in.main.(tes |
| 94b20 | 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 76 61 72 20 75 6e 73 69 67 6e 65 64 20 3d 20 40 69 6e | t)</span>.....var.unsigned.=.@in |
| 94b40 | 74 43 61 73 74 28 75 33 32 2c 20 76 61 6c 75 65 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 | tCast(u32,.value);.............. |
| 94b60 | 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 | ......<span.class="t32_1">^</spa |
| 94b80 | 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 | n>.<span.class="t37_1">/home/and |
| 94ba0 | 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 | y/Downloads/zig/lib/std/start.zi |
| 94bc0 | 67 3a 33 32 34 3a 32 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 | g:324:22</span>:.<span.class="t2 |
| 94be0 | 5f 30 22 3e 30 78 32 30 34 63 62 66 20 69 6e 20 73 74 64 2e 73 74 61 72 74 2e 70 6f 73 69 78 43 | _0">0x204cbf.in.std.start.posixC |
| 94c00 | 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 | allMainAndExit.(test)</span>.... |
| 94c20 | 20 20 20 20 20 20 20 20 20 72 6f 6f 74 2e 6d 61 69 6e 28 29 3b 0a 20 20 20 20 20 20 20 20 20 20 | .........root.main();........... |
| 94c40 | 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e | ...........<span.class="t32_1">^ |
| 94c60 | 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 37 5f 31 22 3e 2f 68 6f 6d | </span>.<span.class="t37_1">/hom |
| 94c80 | 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 | e/andy/Downloads/zig/lib/std/sta |
| 94ca0 | 72 74 2e 7a 69 67 3a 31 36 32 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 | rt.zig:162:5</span>:.<span.class |
| 94cc0 | 3d 22 74 32 5f 30 22 3e 30 78 32 30 34 61 39 32 20 69 6e 20 73 74 64 2e 73 74 61 72 74 2e 5f 73 | ="t2_0">0x204a92.in.std.start._s |
| 94ce0 | 74 61 72 74 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 40 63 61 6c 6c 28 2e 7b 20 | tart.(test)</span>.....@call(.{. |
| 94d00 | 2e 6d 6f 64 69 66 69 65 72 20 3d 20 2e 6e 65 76 65 72 5f 69 6e 6c 69 6e 65 20 7d 2c 20 70 6f 73 | .modifier.=..never_inline.},.pos |
| 94d20 | 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 2c 20 2e 7b 7d 29 3b 0a 20 20 20 20 3c 73 70 | ixCallMainAndExit,..{});.....<sp |
| 94d40 | 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 28 70 72 6f 63 65 | an.class="t32_1">^</span>.(proce |
| 94d60 | 73 73 20 74 65 72 6d 69 6e 61 74 65 64 20 62 79 20 73 69 67 6e 61 6c 29 3c 2f 63 6f 64 65 3e 3c | ss.terminated.by.signal)</code>< |
| 94d80 | 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 6f 20 6f 62 74 61 69 6e | /pre>........<p>.......To.obtain |
| 94da0 | 20 74 68 65 20 6d 61 78 69 6d 75 6d 20 76 61 6c 75 65 20 6f 66 20 61 6e 20 75 6e 73 69 67 6e 65 | .the.maximum.value.of.an.unsigne |
| 94dc0 | 64 20 69 6e 74 65 67 65 72 2c 20 75 73 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | d.integer,.use.<code.class="zig" |
| 94de0 | 3e 73 74 64 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 | >std.math.maxInt</code>........< |
| 94e00 | 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 43 61 73 74 2d 54 72 | /p>..............<h2.id="Cast-Tr |
| 94e20 | 75 6e 63 61 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 | uncates-Data"><a.href="#toc-Cast |
| 94e40 | 2d 54 72 75 6e 63 61 74 65 73 2d 44 61 74 61 22 3e 43 61 73 74 20 54 72 75 6e 63 61 74 65 73 20 | -Truncates-Data">Cast.Truncates. |
| 94e60 | 44 61 74 61 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 43 | Data</a>.<a.class="hdr".href="#C |
| 94e80 | 61 73 74 2d 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 32 3e 0a | ast-Truncates-Data">..</a></h2>. |
| 94ea0 | 0a 20 20 20 20 20 20 3c 70 3e 41 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 3a 3c 2f 70 3e 0a 20 | .......<p>At.compile-time:</p>.. |
| 94ec0 | 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 | .....<p.class="file">test.zig</p |
| 94ee0 | 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c | ><pre><code.class="zig"><span.cl |
| 94f00 | 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>.{.. |
| 94f20 | 20 20 20 3c 73 70 61 6e 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 |
| 94f40 | 70 61 6e 3e 20 73 70 61 72 74 61 6e 5f 63 6f 75 6e 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | pan>.spartan_count:.<span.class= |
| 94f60 | 22 74 6f 6b 2d 74 79 70 65 22 3e 75 31 36 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c | "tok-type">u16</span>.=.<span.cl |
| 94f80 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 30 30 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 | ass="tok-number">300</span>;.... |
| 94fa0 | 20 3c 73 70 61 6e 20 63 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 |
| 94fc0 | 6e 3e 20 62 79 74 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 | n>.byte.=.<span.class="tok-built |
| 94fe0 | 69 6e 22 3e 40 69 6e 74 43 61 73 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d | in">@intCast</span>(<span.class= |
| 95000 | 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 73 70 61 72 74 61 6e 5f 63 6f | "tok-type">u8</span>,.spartan_co |
| 95020 | 75 6e 74 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 | unt);.}</code></pre><pre><code.c |
| 95040 | 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 | lass="shell">$.zig.test.test.zig |
| 95060 | 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 | .<span.class="t0_1">./docgen_tmp |
| 95080 | 2f 74 65 73 74 2e 7a 69 67 3a 33 3a 31 38 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 | /test.zig:3:18:.</span><span.cla |
| 950a0 | 73 73 3d 22 74 33 31 5f 31 22 3e 65 72 72 6f 72 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 | ss="t31_1">error:.</span><span.c |
| 950c0 | 6c 61 73 73 3d 22 74 30 5f 31 22 3e 63 61 73 74 20 66 72 6f 6d 20 27 75 31 36 27 20 74 6f 20 27 | lass="t0_1">cast.from.'u16'.to.' |
| 950e0 | 75 38 27 20 74 72 75 6e 63 61 74 65 73 20 62 69 74 73 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 63 6f | u8'.truncates.bits</span>.....co |
| 95100 | 6e 73 74 20 62 79 74 65 20 3d 20 40 69 6e 74 43 61 73 74 28 75 38 2c 20 73 70 61 72 74 61 6e 5f | nst.byte.=.@intCast(u8,.spartan_ |
| 95120 | 63 6f 75 6e 74 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 | count);..................<span.c |
| 95140 | 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 | lass="t32_1">^</span>.</code></p |
| 95160 | 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 74 20 72 75 6e 74 69 6d 65 3a 3c 2f 70 3e 0a 20 20 | re>........<p>At.runtime:</p>... |
| 95180 | 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e | ....<p.class="file">test.zig</p> |
| 951a0 | 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 | <pre><code.class="zig"><span.cla |
| 951c0 | 73 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.=.< |
| 951e0 | 73 70 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 |
| 95200 | 3c 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 |
| 95220 | 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 |
| 95240 | 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 |
| 95260 | 61 73 73 3d 22 74 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 |
| 95280 | 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. |
| 952a0 | 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>.{.. |
| 952c0 | 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 |
| 952e0 | 6e 3e 20 73 70 61 72 74 61 6e 5f 63 6f 75 6e 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | n>.spartan_count:.<span.class="t |
| 95300 | 6f 6b 2d 74 79 70 65 22 3e 75 31 36 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | ok-type">u16</span>.=.<span.clas |
| 95320 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 30 30 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c | s="tok-number">300</span>;.....< |
| 95340 | 73 70 61 6e 20 63 6c 61 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> |
| 95360 | 20 62 79 74 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e | .byte.=.<span.class="tok-builtin |
| 95380 | 22 3e 40 69 6e 74 43 61 73 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ">@intCast</span>(<span.class="t |
| 953a0 | 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 73 70 61 72 74 61 6e 5f 63 6f 75 6e | ok-type">u8</span>,.spartan_coun |
| 953c0 | 74 29 3b 0a 20 20 20 20 73 74 64 2e 64 65 62 75 67 2e 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 6c | t);.....std.debug.print(<span.cl |
| 953e0 | 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 76 61 6c 75 65 3a 20 7b 7d 5c 6e 26 | ass="tok-str">"value:.{}\n& |
| 95400 | 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> |
| 95420 | 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 | </pre><pre><code.class="shell">$ |
| 95440 | 20 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 74 65 73 74 2e 7a 69 67 0a 24 20 2e 2f 74 65 73 74 | .zig.build-exe.test.zig.$../test |
| 95460 | 0a 69 6e 74 65 67 65 72 20 63 61 73 74 20 74 72 75 6e 63 61 74 65 64 20 62 69 74 73 0a 3c 73 70 | .integer.cast.truncated.bits.<sp |
| 95480 | 61 6e 20 63 6c 61 73 73 3d 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e | an.class="t37_1">/home/andy/Down |
| 954a0 | 6c 6f 61 64 73 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 35 3a | loads/zig/docgen_tmp/test.zig:5: |
| 954c0 | 31 38 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 | 18</span>:.<span.class="t2_0">0x |
| 954e0 | 32 32 62 30 62 63 20 69 6e 20 6d 61 69 6e 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 | 22b0bc.in.main.(test)</span>.... |
| 95500 | 20 63 6f 6e 73 74 20 62 79 74 65 20 3d 20 40 69 6e 74 43 61 73 74 28 75 38 2c 20 73 70 61 72 74 | .const.byte.=.@intCast(u8,.spart |
| 95520 | 61 6e 5f 63 6f 75 6e 74 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 | an_count);..................<spa |
| 95540 | 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 | n.class="t32_1">^</span>.<span.c |
| 95560 | 6c 61 73 73 3d 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 | lass="t37_1">/home/andy/Download |
| 95580 | 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 33 32 34 3a 32 32 3c 2f | s/zig/lib/std/start.zig:324:22</ |
| 955a0 | 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 30 34 63 | span>:.<span.class="t2_0">0x204c |
| 955c0 | 62 66 20 69 6e 20 73 74 64 2e 73 74 61 72 74 2e 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 | bf.in.std.start.posixCallMainAnd |
| 955e0 | 45 78 69 74 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 | Exit.(test)</span>.............r |
| 95600 | 6f 6f 74 2e 6d 61 69 6e 28 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | oot.main();..................... |
| 95620 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 | .<span.class="t32_1">^</span>.<s |
| 95640 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 | pan.class="t37_1">/home/andy/Dow |
| 95660 | 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 31 36 32 | nloads/zig/lib/std/start.zig:162 |
| 95680 | 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 | :5</span>:.<span.class="t2_0">0x |
| 956a0 | 32 30 34 61 39 32 20 69 6e 20 73 74 64 2e 73 74 61 72 74 2e 5f 73 74 61 72 74 20 28 74 65 73 74 | 204a92.in.std.start._start.(test |
| 956c0 | 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 40 63 61 6c 6c 28 2e 7b 20 2e 6d 6f 64 69 66 69 65 72 20 | )</span>.....@call(.{..modifier. |
| 956e0 | 3d 20 2e 6e 65 76 65 72 5f 69 6e 6c 69 6e 65 20 7d 2c 20 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e | =..never_inline.},.posixCallMain |
| 95700 | 41 6e 64 45 78 69 74 2c 20 2e 7b 7d 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | AndExit,..{});.....<span.class=" |
| 95720 | 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 28 70 72 6f 63 65 73 73 20 74 65 72 6d 69 6e 61 | t32_1">^</span>.(process.termina |
| 95740 | 74 65 64 20 62 79 20 73 69 67 6e 61 6c 29 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 | ted.by.signal)</code></pre>..... |
| 95760 | 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 6f 20 74 72 75 6e 63 61 74 65 20 62 69 74 73 2c 20 75 | ...<p>.......To.truncate.bits,.u |
| 95780 | 73 65 20 3c 61 20 68 72 65 66 3d 22 23 74 72 75 6e 63 61 74 65 22 3e 40 74 72 75 6e 63 61 74 65 | se.<a.href="#truncate">@truncate |
| 957a0 | 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 | </a>........</p>..............<h |
| 957c0 | 32 20 69 64 3d 22 49 6e 74 65 67 65 72 2d 4f 76 65 72 66 6c 6f 77 22 3e 3c 61 20 68 72 65 66 3d | 2.id="Integer-Overflow"><a.href= |
| 957e0 | 22 23 74 6f 63 2d 49 6e 74 65 67 65 72 2d 4f 76 65 72 66 6c 6f 77 22 3e 49 6e 74 65 67 65 72 20 | "#toc-Integer-Overflow">Integer. |
| 95800 | 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 |
| 95820 | 3d 22 23 49 6e 74 65 67 65 72 2d 4f 76 65 72 66 6c 6f 77 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e | ="#Integer-Overflow">..</a></h2> |
| 95840 | 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 44 65 66 61 75 6c 74 2d 4f 70 65 72 61 74 69 6f | ........<h3.id="Default-Operatio |
| 95860 | 6e 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 44 65 66 61 75 6c 74 2d 4f 70 65 72 61 74 | ns"><a.href="#toc-Default-Operat |
| 95880 | 69 6f 6e 73 22 3e 44 65 66 61 75 6c 74 20 4f 70 65 72 61 74 69 6f 6e 73 3c 2f 61 3e 20 3c 61 20 | ions">Default.Operations</a>.<a. |
| 958a0 | 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 44 65 66 61 75 6c 74 2d 4f 70 65 72 61 | class="hdr".href="#Default-Opera |
| 958c0 | 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 54 68 65 | tions">..</a></h3>........<p>The |
| 958e0 | 20 66 6f 6c 6c 6f 77 69 6e 67 20 6f 70 65 72 61 74 6f 72 73 20 63 61 6e 20 63 61 75 73 65 20 69 | .following.operators.can.cause.i |
| 95900 | 6e 74 65 67 65 72 20 6f 76 65 72 66 6c 6f 77 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a | nteger.overflow:</p>.......<ul>. |
| 95920 | 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e | ..........<li><code.class="zig"> |
| 95940 | 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 20 20 20 20 20 | +</code>.(addition)</li>........ |
| 95960 | 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 2d 3c 2f 63 6f 64 65 | ...<li><code.class="zig">-</code |
| 95980 | 3e 20 28 73 75 62 74 72 61 63 74 69 6f 6e 29 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c | >.(subtraction)</li>...........< |
| 959a0 | 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 2d 3c 2f 63 6f 64 65 3e 20 28 6e | li><code.class="zig">-</code>.(n |
| 959c0 | 65 67 61 74 69 6f 6e 29 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 | egation)</li>...........<li><cod |
| 959e0 | 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 2a 3c 2f 63 6f 64 65 3e 20 28 6d 75 6c 74 69 70 6c 69 | e.class="zig">*</code>.(multipli |
| 95a00 | 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 65 | cation)</li>...........<li><code |
| 95a20 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 2f 3c 2f 63 6f 64 65 3e 20 28 64 69 76 69 73 69 6f 6e 29 | .class="zig">/</code>.(division) |
| 95a40 | 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 64 69 76 54 | </li>.........<li><a.href="#divT |
| 95a60 | 72 75 6e 63 22 3e 40 64 69 76 54 72 75 6e 63 3c 2f 61 3e 20 28 64 69 76 69 73 69 6f 6e 29 3c 2f | runc">@divTrunc</a>.(division)</ |
| 95a80 | 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 64 69 76 46 6c 6f | li>.........<li><a.href="#divFlo |
| 95aa0 | 6f 72 22 3e 40 64 69 76 46 6c 6f 6f 72 3c 2f 61 3e 20 28 64 69 76 69 73 69 6f 6e 29 3c 2f 6c 69 | or">@divFloor</a>.(division)</li |
| 95ac0 | 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 64 69 76 45 78 61 63 74 | >.........<li><a.href="#divExact |
| 95ae0 | 22 3e 40 64 69 76 45 78 61 63 74 3c 2f 61 3e 20 28 64 69 76 69 73 69 6f 6e 29 3c 2f 6c 69 3e 0a | ">@divExact</a>.(division)</li>. |
| 95b00 | 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c 70 3e 45 78 61 6d 70 6c 65 20 77 69 74 | ......</ul>.......<p>Example.wit |
| 95b20 | 68 20 61 64 64 69 74 69 6f 6e 20 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 3a 3c 2f 70 3e 0a | h.addition.at.compile-time:</p>. |
| 95b40 | 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f | ......<p.class="file">test.zig</ |
| 95b60 | 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 | p><pre><code.class="zig"><span.c |
| 95b80 | 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>.{. |
| 95ba0 | 20 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 |
| 95bc0 | 61 6e 3e 20 62 79 74 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 | an>.byte:.<span.class="tok-type" |
| 95be0 | 3e 75 38 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | >u8</span>.=.<span.class="tok-nu |
| 95c00 | 6d 62 65 72 22 3e 32 35 35 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 62 79 74 65 20 2b 3d 20 3c 73 | mber">255</span>;.....byte.+=.<s |
| 95c20 | 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>; |
| 95c40 | 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d | .}</code></pre><pre><code.class= |
| 95c60 | 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 3c 73 70 61 | "shell">$.zig.test.test.zig.<spa |
| 95c80 | 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 | n.class="t0_1">./docgen_tmp/test |
| 95ca0 | 2e 7a 69 67 3a 33 3a 31 30 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | .zig:3:10:.</span><span.class="t |
| 95cc0 | 33 31 5f 31 22 3e 65 72 72 6f 72 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | 31_1">error:.</span><span.class= |
| 95ce0 | 22 74 30 5f 31 22 3e 6f 70 65 72 61 74 69 6f 6e 20 63 61 75 73 65 64 20 6f 76 65 72 66 6c 6f 77 | "t0_1">operation.caused.overflow |
| 95d00 | 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 20 20 20 20 20 20 | </span>.....byte.+=.1;.......... |
| 95d20 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 2f 63 | <span.class="t32_1">^</span>.</c |
| 95d40 | 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 74 20 72 75 6e 74 69 6d 65 3a | ode></pre>........<p>At.runtime: |
| 95d60 | 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e | </p>.......<p.class="file">test. |
| 95d80 | 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 | zig</p><pre><code.class="zig"><s |
| 95da0 | 70 61 6e 20 63 6c 61 73 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>. |
| 95dc0 | 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"> |
| 95de0 | 40 69 6d 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- |
| 95e00 | 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>);..< |
| 95e20 | 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>.< |
| 95e40 | 73 70 61 6e 20 63 6c 61 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 |
| 95e60 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 6d 61 69 6e 3c 2f 73 70 61 6e 3e 28 29 | pan.class="tok-fn">main</span>() |
| 95e80 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 | .<span.class="tok-type">void</sp |
| 95ea0 | 61 6e 3e 20 7b 0a 20 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 |
| 95ec0 | 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 73 73 3d 22 74 6f 6b | ar</span>.byte:.<span.class="tok |
| 95ee0 | 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | -type">u8</span>.=.<span.class=" |
| 95f00 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 35 35 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 62 79 74 65 | tok-number">255</span>;.....byte |
| 95f20 | 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</ |
| 95f40 | 73 70 61 6e 3e 3b 0a 20 20 20 20 73 74 64 2e 64 65 62 75 67 2e 70 72 69 6e 74 28 3c 73 70 61 6e | span>;.....std.debug.print(<span |
| 95f60 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 76 61 6c 75 65 3a 20 7b 7d | .class="tok-str">"value:.{} |
| 95f80 | 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 62 79 74 65 7d 29 3b 0a 7d 3c 2f 63 6f | \n"</span>,..{byte});.}</co |
| 95fa0 | 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c | de></pre><pre><code.class="shell |
| 95fc0 | 22 3e 24 20 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 74 65 73 74 2e 7a 69 67 0a 24 20 2e 2f 74 | ">$.zig.build-exe.test.zig.$../t |
| 95fe0 | 65 73 74 0a 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 | est.integer.overflow.<span.class |
| 96000 | 3d 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 | ="t37_1">/home/andy/Downloads/zi |
| 96020 | 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 35 3a 31 30 3c 2f 73 70 61 6e | g/docgen_tmp/test.zig:5:10</span |
| 96040 | 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 62 30 61 30 20 69 | >:.<span.class="t2_0">0x22b0a0.i |
| 96060 | 6e 20 6d 61 69 6e 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 62 79 74 65 20 2b 3d | n.main.(test)</span>.....byte.+= |
| 96080 | 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 74 33 32 5f 31 22 | .1;..........<span.class="t32_1" |
| 960a0 | 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 37 5f 31 22 3e 2f 68 | >^</span>.<span.class="t37_1">/h |
| 960c0 | 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 | ome/andy/Downloads/zig/lib/std/s |
| 960e0 | 74 61 72 74 2e 7a 69 67 3a 33 32 34 3a 32 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c | tart.zig:324:22</span>:.<span.cl |
| 96100 | 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 30 34 63 62 66 20 69 6e 20 73 74 64 2e 73 74 61 72 74 | ass="t2_0">0x204cbf.in.std.start |
| 96120 | 2e 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 20 28 74 65 73 74 29 3c 2f 73 70 | .posixCallMainAndExit.(test)</sp |
| 96140 | 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 6f 6f 74 2e 6d 61 69 6e 28 29 3b 0a 20 20 20 | an>.............root.main();.... |
| 96160 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ..................<span.class="t |
| 96180 | 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 37 5f | 32_1">^</span>.<span.class="t37_ |
| 961a0 | 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f | 1">/home/andy/Downloads/zig/lib/ |
| 961c0 | 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 31 36 32 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 | std/start.zig:162:5</span>:.<spa |
| 961e0 | 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 30 34 61 39 32 20 69 6e 20 73 74 64 2e 73 | n.class="t2_0">0x204a92.in.std.s |
| 96200 | 74 61 72 74 2e 5f 73 74 61 72 74 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 40 63 | tart._start.(test)</span>.....@c |
| 96220 | 61 6c 6c 28 2e 7b 20 2e 6d 6f 64 69 66 69 65 72 20 3d 20 2e 6e 65 76 65 72 5f 69 6e 6c 69 6e 65 | all(.{..modifier.=..never_inline |
| 96240 | 20 7d 2c 20 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 2c 20 2e 7b 7d 29 3b 0a | .},.posixCallMainAndExit,..{});. |
| 96260 | 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e | ....<span.class="t32_1">^</span> |
| 96280 | 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 3c | .(process.terminated.by.signal)< |
| 962a0 | 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 33 20 69 | /code></pre>...............<h3.i |
| 962c0 | 64 3d 22 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 | d="Standard-Library-Math-Functio |
| 962e0 | 6e 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 53 74 61 6e 64 61 72 64 2d 4c 69 62 72 61 | ns"><a.href="#toc-Standard-Libra |
| 96300 | 72 79 2d 4d 61 74 68 2d 46 75 6e 63 74 69 6f 6e 73 22 3e 53 74 61 6e 64 61 72 64 20 4c 69 62 72 | ry-Math-Functions">Standard.Libr |
| 96320 | 61 72 79 20 4d 61 74 68 20 46 75 6e 63 74 69 6f 6e 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d | ary.Math.Functions</a>.<a.class= |
| 96340 | 22 68 64 72 22 20 68 72 65 66 3d 22 23 53 74 61 6e 64 61 72 64 2d 4c 69 62 72 61 72 79 2d 4d 61 | "hdr".href="#Standard-Library-Ma |
| 96360 | 74 68 2d 46 75 6e 63 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 | th-Functions">..</a></h3>....... |
| 96380 | 20 3c 70 3e 54 68 65 73 65 20 66 75 6e 63 74 69 6f 6e 73 20 70 72 6f 76 69 64 65 64 20 62 79 20 | .<p>These.functions.provided.by. |
| 963a0 | 74 68 65 20 73 74 61 6e 64 61 72 64 20 6c 69 62 72 61 72 79 20 72 65 74 75 72 6e 20 70 6f 73 73 | the.standard.library.return.poss |
| 963c0 | 69 62 6c 65 20 65 72 72 6f 72 73 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 | ible.errors.</p>.......<ul>..... |
| 963e0 | 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 | ......<li><code.class="zig"><spa |
| 96400 | 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 |
| 96420 | 70 61 6e 3e 28 3c 73 70 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">" |
| 96440 | 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 |
| 96460 | 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 | e></li>...........<li><code.clas |
| 96480 | 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e | s="zig"><span.class="tok-builtin |
| 964a0 | 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 |
| 964c0 | 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 6d | k-str">"std"</span>).m |
| 964e0 | 61 74 68 2e 73 75 62 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 | ath.sub</code></li>...........<l |
| 96500 | 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | i><code.class="zig"><span.class= |
| 96520 | 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 |
| 96540 | 61 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 |
| 96560 | 74 3b 3c 2f 73 70 61 6e 3e 29 2e 6d 61 74 68 2e 6d 75 6c 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a | t;</span>).math.mul</code></li>. |
| 96580 | 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e | ..........<li><code.class="zig"> |
| 965a0 | 3c 73 70 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 |
| 965c0 | 74 3c 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">& |
| 965e0 | 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 54 | quot;std"</span>).math.divT |
| 96600 | 72 75 6e 63 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c | runc</code></li>...........<li>< |
| 96620 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | code.class="zig"><span.class="to |
| 96640 | 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. |
| 96660 | 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"< |
| 96680 | 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 3c 2f 6c 69 | /span>).math.divFloor</code></li |
| 966a0 | 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | >...........<li><code.class="zig |
| 966c0 | 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d 70 | "><span.class="tok-builtin">@imp |
| 966e0 | 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" |
| 96700 | 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 6d 61 74 68 2e 64 69 | >"std"</span>).math.di |
| 96720 | 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 20 3c 6c 69 | vExact</code></li>...........<li |
| 96740 | 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ><code.class="zig"><span.class=" |
| 96760 | 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 |
| 96780 | 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" |
| 967a0 | 3b 3c 2f 73 70 61 6e 3e 29 2e 6d 61 74 68 2e 73 68 6c 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 | ;</span>).math.shl</code></li>.. |
| 967c0 | 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c 70 3e 45 78 61 6d 70 6c 65 20 6f 66 20 63 | .....</ul>.......<p>Example.of.c |
| 967e0 | 61 74 63 68 69 6e 67 20 61 6e 20 6f 76 65 72 66 6c 6f 77 20 66 6f 72 20 61 64 64 69 74 69 6f 6e | atching.an.overflow.for.addition |
| 96800 | 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 | :</p>.......<p.class="file">test |
| 96820 | 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c | .zig</p><pre><code.class="zig">< |
| 96840 | 73 70 61 6e 20 63 6c 61 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> |
| 96860 | 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 62 75 69 6c 74 69 6e | .math.=.<span.class="tok-builtin |
| 96880 | 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 |
| 968a0 | 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 6d | k-str">"std"</span>).m |
| 968c0 | 61 74 68 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c | ath;.<span.class="tok-kw">const< |
| 968e0 | 2f 73 70 61 6e 3e 20 70 72 69 6e 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | /span>.print.=.<span.class="tok- |
| 96900 | 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 |
| 96920 | 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 |
| 96940 | 70 61 6e 3e 29 2e 64 65 62 75 67 2e 70 72 69 6e 74 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | pan>).debug.print;.<span.class=" |
| 96960 | 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=" |
| 96980 | 74 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 |
| 969a0 | 6f 6b 2d 66 6e 22 3e 6d 61 69 6e 3c 2f 73 70 61 6e 3e 28 29 20 21 3c 73 70 61 6e 20 63 6c 61 73 | ok-fn">main</span>().!<span.clas |
| 969c0 | 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>.{.....< |
| 969e0 | 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 |
| 96a00 | 79 74 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f | yte:.<span.class="tok-type">u8</ |
| 96a20 | 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" |
| 96a40 | 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 3c 73 70 61 6e 20 63 | >255</span>;......byte.=.<span.c |
| 96a60 | 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 6d 61 74 68 2e 61 64 | lass="tok-kw">if</span>.(math.ad |
| 96a80 | 64 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 | d(<span.class="tok-type">u8</spa |
| 96aa0 | 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 6b 2d 6e 75 6d 62 65 | n>,.byte,.<span.class="tok-numbe |
| 96ac0 | 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 73 75 6c 74 20 3c 73 | r">1</span>)).|result|.result.<s |
| 96ae0 | 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>.| |
| 96b00 | 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 6e 20 63 6c 61 73 73 | err|.{.........print(<span.class |
| 96b20 | 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 6f 20 61 64 64 20 6f | ="tok-str">"unable.to.add.o |
| 96b40 | 6e 65 3a 20 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 | ne:.{}\n"</span>,..{<span.c |
| 96b60 | 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 65 72 72 6f 72 4e 61 6d 65 3c 2f 73 | lass="tok-builtin">@errorName</s |
| 96b80 | 70 61 6e 3e 28 65 72 72 29 7d 29 3b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | pan>(err)});.........<span.class |
| 96ba0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 65 72 72 3b 0a 20 20 20 | ="tok-kw">return</span>.err;.... |
| 96bc0 | 20 7d 3b 0a 0a 20 20 20 20 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | .};......print(<span.class="tok- |
| 96be0 | 73 74 72 22 3e 26 71 75 6f 74 3b 72 65 73 75 6c 74 3a 20 7b 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 | str">"result:.{}\n"</s |
| 96c00 | 70 61 6e 3e 2c 20 2e 7b 62 79 74 65 7d 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 | pan>,..{byte});.}</code></pre><p |
| 96c20 | 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 62 75 69 | re><code.class="shell">$.zig.bui |
| 96c40 | 6c 64 2d 65 78 65 20 74 65 73 74 2e 7a 69 67 0a 24 20 2e 2f 74 65 73 74 0a 75 6e 61 62 6c 65 20 | ld-exe.test.zig.$../test.unable. |
| 96c60 | 74 6f 20 61 64 64 20 6f 6e 65 3a 20 4f 76 65 72 66 6c 6f 77 0a 65 72 72 6f 72 3a 20 4f 76 65 72 | to.add.one:.Overflow.error:.Over |
| 96c80 | 66 6c 6f 77 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 | flow.<span.class="t37_1">/home/a |
| 96ca0 | 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 6d 61 74 68 2e 7a | ndy/Downloads/zig/lib/std/math.z |
| 96cc0 | 69 67 3a 34 31 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 74 32 | ig:419:5</span>:.<span.class="t2 |
| 96ce0 | 5f 30 22 3e 30 78 32 33 32 34 39 30 20 69 6e 20 73 74 64 2e 6d 61 74 68 2e 61 64 64 20 28 74 65 | _0">0x232490.in.std.math.add.(te |
| 96d00 | 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 72 65 74 75 72 6e 20 69 66 20 28 40 61 64 64 57 69 | st)</span>.....return.if.(@addWi |
| 96d20 | 74 68 4f 76 65 72 66 6c 6f 77 28 54 2c 20 61 2c 20 62 2c 20 26 61 6d 70 3b 61 6e 73 77 65 72 29 | thOverflow(T,.a,.b,.&answer) |
| 96d40 | 29 20 65 72 72 6f 72 2e 4f 76 65 72 66 6c 6f 77 20 65 6c 73 65 20 61 6e 73 77 65 72 3b 0a 20 20 | ).error.Overflow.else.answer;... |
| 96d60 | 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c | ..<span.class="t32_1">^</span>.< |
| 96d80 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f | span.class="t37_1">/home/andy/Do |
| 96da0 | 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a | wnloads/zig/docgen_tmp/test.zig: |
| 96dc0 | 38 3a 39 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 | 8:9</span>:.<span.class="t2_0">0 |
| 96de0 | 78 32 32 62 33 39 62 20 69 6e 20 6d 61 69 6e 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 | x22b39b.in.main.(test)</span>... |
| 96e00 | 20 20 20 20 20 20 72 65 74 75 72 6e 20 65 72 72 3b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 | ......return.err;.........<span. |
| 96e20 | 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 2f 63 6f 64 65 3e 3c 2f | class="t32_1">^</span>.</code></ |
| 96e40 | 70 72 65 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 42 75 69 6c 74 | pre>...............<h3.id="Built |
| 96e60 | 69 6e 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 | in-Overflow-Functions"><a.href=" |
| 96e80 | 23 74 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 | #toc-Builtin-Overflow-Functions" |
| 96ea0 | 3e 42 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 | >Builtin.Overflow.Functions</a>. |
| 96ec0 | 3c 61 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 | <a.class="hdr".href="#Builtin-Ov |
| 96ee0 | 65 72 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 33 3e 0a 0a 20 | erflow-Functions">..</a></h3>... |
| 96f00 | 20 20 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 | .....<p>.......These.builtins.re |
| 96f20 | 74 75 72 6e 20 61 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 | turn.a.<code.class="zig"><span.c |
| 96f40 | 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 |
| 96f60 | 65 3e 20 6f 66 20 77 68 65 74 68 65 72 20 6f 72 20 6e 6f 74 20 6f 76 65 72 66 6c 6f 77 0a 20 20 | e>.of.whether.or.not.overflow... |
| 96f80 | 20 20 20 20 6f 63 63 75 72 72 65 64 2c 20 61 73 20 77 65 6c 6c 20 61 73 20 72 65 74 75 72 6e 69 | ....occurred,.as.well.as.returni |
| 96fa0 | 6e 67 20 74 68 65 20 6f 76 65 72 66 6c 6f 77 65 64 20 62 69 74 73 3a 0a 20 20 20 20 20 20 3c 2f | ng.the.overflowed.bits:.......</ |
| 96fc0 | 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 61 20 68 | p>.......<ul>...........<li><a.h |
| 96fe0 | 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 4f | ref="#addWithOverflow">@addWithO |
| 97000 | 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 3c 6c 69 3e 3c | verflow</a></li>...........<li>< |
| 97020 | 61 20 68 72 65 66 3d 22 23 73 75 62 57 69 74 68 4f 76 65 72 66 6c 6f 77 22 3e 40 73 75 62 57 69 | a.href="#subWithOverflow">@subWi |
| 97040 | 74 68 4f 76 65 72 66 6c 6f 77 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c | thOverflow</a></li>...........<l |
| 97060 | 69 3e 3c 61 20 68 72 65 66 3d 22 23 6d 75 6c 57 69 74 68 4f 76 65 72 66 6c 6f 77 22 3e 40 6d 75 | i><a.href="#mulWithOverflow">@mu |
| 97080 | 6c 57 69 74 68 4f 76 65 72 66 6c 6f 77 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 | lWithOverflow</a></li>.......... |
| 970a0 | 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 73 68 6c 57 69 74 68 4f 76 65 72 66 6c 6f 77 22 3e | .<li><a.href="#shlWithOverflow"> |
| 970c0 | 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 20 20 20 20 20 20 | @shlWithOverflow</a></li>....... |
| 970e0 | 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 45 78 61 6d 70 6c 65 20 6f 66 | </ul>.......<p>.......Example.of |
| 97100 | 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 64 | .<a.href="#addWithOverflow">@add |
| 97120 | 57 69 74 68 4f 76 65 72 66 6c 6f 77 3c 2f 61 3e 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 | WithOverflow</a>:.......</p>.... |
| 97140 | 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c | ...<p.class="file">test.zig</p>< |
| 97160 | 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 | pre><code.class="zig"><span.clas |
| 97180 | 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.=. |
| 971a0 | 3c 73 70 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 |
| 971c0 | 74 3c 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">& |
| 971e0 | 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 |
| 97200 | 6e 74 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 70 | nt;.<span.class="tok-kw">pub</sp |
| 97220 | 61 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 |
| 97240 | 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 |
| 97260 | 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 |
| 97280 | 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- |
| 972a0 | 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 73 73 | kw">var</span>.byte:.<span.class |
| 972c0 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c | ="tok-type">u8</span>.=.<span.cl |
| 972e0 | 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 0a 20 20 | ass="tok-number">255</span>;.... |
| 97300 | 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 |
| 97320 | 3e 20 72 65 73 75 6c 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 | >.result:.<span.class="tok-type" |
| 97340 | 3e 75 38 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | >u8</span>.=.<span.class="tok-nu |
| 97360 | 6c 6c 22 3e 75 6e 64 65 66 69 6e 65 64 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 | ll">undefined</span>;.....<span. |
| 97380 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 3c 73 70 61 6e 20 | class="tok-kw">if</span>.(<span. |
| 973a0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 61 64 64 57 69 74 68 4f 76 65 72 | class="tok-builtin">@addWithOver |
| 973c0 | 66 6c 6f 77 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | flow</span>(<span.class="tok-typ |
| 973e0 | 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 62 79 74 65 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | e">u8</span>,.byte,.<span.class= |
| 97400 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 3c 2f 73 70 61 6e 3e 2c 20 26 61 6d 70 3b 72 65 73 | "tok-number">10</span>,.&res |
| 97420 | 75 6c 74 29 29 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 | ult)).{.........print(<span.clas |
| 97440 | 73 3d 22 74 6f 6b 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 | s="tok-str">"overflowed.res |
| 97460 | 75 6c 74 3a 20 7b 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 72 65 73 75 6c 74 | ult:.{}\n"</span>,..{result |
| 97480 | 7d 29 3b 0a 20 20 20 20 7d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 | });.....}.<span.class="tok-kw">e |
| 974a0 | 6c 73 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 70 72 69 6e 74 28 3c 73 70 61 6e | lse</span>.{.........print(<span |
| 974c0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 72 65 73 75 6c 74 3a 20 7b | .class="tok-str">"result:.{ |
| 974e0 | 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 72 65 73 75 6c 74 7d 29 3b 0a 20 20 | }\n"</span>,..{result});... |
| 97500 | 20 20 7d 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 | ..}.}</code></pre><pre><code.cla |
| 97520 | 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 74 65 73 74 2e | ss="shell">$.zig.build-exe.test. |
| 97540 | 7a 69 67 0a 24 20 2e 2f 74 65 73 74 0a 6f 76 65 72 66 6c 6f 77 65 64 20 72 65 73 75 6c 74 3a 20 | zig.$../test.overflowed.result:. |
| 97560 | 39 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 | 9.</code></pre>...............<h |
| 97580 | 33 20 69 64 3d 22 57 72 61 70 70 69 6e 67 2d 4f 70 65 72 61 74 69 6f 6e 73 22 3e 3c 61 20 68 72 | 3.id="Wrapping-Operations"><a.hr |
| 975a0 | 65 66 3d 22 23 74 6f 63 2d 57 72 61 70 70 69 6e 67 2d 4f 70 65 72 61 74 69 6f 6e 73 22 3e 57 72 | ef="#toc-Wrapping-Operations">Wr |
| 975c0 | 61 70 70 69 6e 67 20 4f 70 65 72 61 74 69 6f 6e 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 | apping.Operations</a>.<a.class=" |
| 975e0 | 68 64 72 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 6e 73 22 | hdr".href="#Wrapping-Operations" |
| 97600 | 3e c2 a7 3c 2f 61 3e 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 | >..</a></h3>........<p>.......Th |
| 97620 | 65 73 65 20 6f 70 65 72 61 74 69 6f 6e 73 20 68 61 76 65 20 67 75 61 72 61 6e 74 65 65 64 20 77 | ese.operations.have.guaranteed.w |
| 97640 | 72 61 70 61 72 6f 75 6e 64 20 73 65 6d 61 6e 74 69 63 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a | raparound.semantics........</p>. |
| 97660 | 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 | ......<ul>...........<li><code.c |
| 97680 | 6c 61 73 73 3d 22 7a 69 67 22 3e 2b 25 3c 2f 63 6f 64 65 3e 20 28 77 72 61 70 61 72 6f 75 6e 64 | lass="zig">+%</code>.(wraparound |
| 976a0 | 20 61 64 64 69 74 69 6f 6e 29 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 | .addition)</li>...........<li><c |
| 976c0 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 2d 25 3c 2f 63 6f 64 65 3e 20 28 77 72 61 70 61 | ode.class="zig">-%</code>.(wrapa |
| 976e0 | 72 6f 75 6e 64 20 73 75 62 74 72 61 63 74 69 6f 6e 29 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 | round.subtraction)</li>......... |
| 97700 | 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 2d 25 3c 2f 63 6f 64 65 | ..<li><code.class="zig">-%</code |
| 97720 | 3e 20 28 77 72 61 70 61 72 6f 75 6e 64 20 6e 65 67 61 74 69 6f 6e 29 3c 2f 6c 69 3e 0a 20 20 20 | >.(wraparound.negation)</li>.... |
| 97740 | 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 2a 25 3c | .......<li><code.class="zig">*%< |
| 97760 | 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 |
| 97780 | 6e 29 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 | n)</li>.......</ul>.......<p.cla |
| 977a0 | 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 | ss="file">test.zig</p><pre><code |
| 977c0 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | .class="zig"><span.class="tok-kw |
| 977e0 | 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 |
| 97800 | 3d 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 |
| 97820 | 70 61 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 |
| 97840 | 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 |
| 97860 | 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 |
| 97880 | 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" |
| 978a0 | 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. |
| 978c0 | 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 |
| 978e0 | 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 |
| 97900 | 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</ |
| 97920 | 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 |
| 97940 | 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 |
| 97960 | 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 |
| 97980 | 6c 61 73 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 |
| 979a0 | 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>. |
| 979c0 | 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"> |
| 979e0 | 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 |
| 97a00 | 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.+ |
| 97a20 | 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 |
| 97a40 | 61 6e 3e 3b 0a 20 20 20 20 65 78 70 65 63 74 28 6d 69 6e 5f 76 61 6c 20 3d 3d 20 6d 69 6e 49 6e | an>;.....expect(min_val.==.minIn |
| 97a60 | 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 |
| 97a80 | 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"> |
| 97aa0 | 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.- |
| 97ac0 | 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 |
| 97ae0 | 61 6e 3e 3b 0a 20 20 20 20 65 78 70 65 63 74 28 6d 61 78 5f 76 61 6c 20 3d 3d 20 6d 61 78 49 6e | an>;.....expect(max_val.==.maxIn |
| 97b00 | 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 |
| 97b20 | 61 6e 3e 29 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 | an>));.}</code></pre><pre><code. |
| 97b40 | 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 | class="shell">$.zig.test.test.zi |
| 97b60 | 67 0a 31 2f 31 20 74 65 73 74 20 26 71 75 6f 74 3b 77 72 61 70 61 72 6f 75 6e 64 20 61 64 64 69 | g.1/1.test."wraparound.addi |
| 97b80 | 74 69 6f 6e 20 61 6e 64 20 73 75 62 74 72 61 63 74 69 6f 6e 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b | tion.and.subtraction"....OK |
| 97ba0 | 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 | .All.1.tests.passed..</code></pr |
| 97bc0 | 65 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 | e>......................<h2.id=" |
| 97be0 | 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 3c 61 20 68 72 | Exact-Left-Shift-Overflow"><a.hr |
| 97c00 | 65 66 3d 22 23 74 6f 63 2d 45 78 61 63 74 2d 4c 65 66 74 2d 53 68 69 66 74 2d 4f 76 65 72 66 6c | ef="#toc-Exact-Left-Shift-Overfl |
| 97c20 | 6f 77 22 3e 45 78 61 63 74 20 4c 65 66 74 20 53 68 69 66 74 20 4f 76 65 72 66 6c 6f 77 3c 2f 61 | ow">Exact.Left.Shift.Overflow</a |
| 97c40 | 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 45 78 61 63 74 2d 4c 65 | >.<a.class="hdr".href="#Exact-Le |
| 97c60 | 66 74 2d 53 68 69 66 74 2d 4f 76 65 72 66 6c 6f 77 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a | ft-Shift-Overflow">..</a></h2>.. |
| 97c80 | 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>... |
| 97ca0 | 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e | ....<p.class="file">test.zig</p> |
| 97cc0 | 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 | <pre><code.class="zig"><span.cla |
| 97ce0 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 | ss="tok-kw">comptime</span>.{... |
| 97d00 | 20 20 3c 73 70 61 6e 20 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 |
| 97d20 | 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 62 75 69 6c 74 69 6e | an>.x.=.<span.class="tok-builtin |
| 97d40 | 22 3e 40 73 68 6c 45 78 61 63 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ">@shlExact</span>(<span.class=" |
| 97d60 | 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 |
| 97d80 | 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. |
| 97da0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 62 30 31 30 31 30 31 30 31 3c 2f 73 | class="tok-number">0b01010101</s |
| 97dc0 | 70 61 6e 3e 29 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 | pan>),.<span.class="tok-number"> |
| 97de0 | 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 70 72 65 3e 3c 63 | 2</span>);.}</code></pre><pre><c |
| 97e00 | 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 | ode.class="shell">$.zig.test.tes |
| 97e20 | 74 2e 7a 69 67 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 | t.zig.<span.class="t0_1">./docge |
| 97e40 | 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 32 3a 31 35 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 | n_tmp/test.zig:2:15:.</span><spa |
| 97e60 | 6e 20 63 6c 61 73 73 3d 22 74 33 31 5f 31 22 3e 65 72 72 6f 72 3a 20 3c 2f 73 70 61 6e 3e 3c 73 | n.class="t31_1">error:.</span><s |
| 97e80 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 6f 70 65 72 61 74 69 6f 6e 20 63 61 75 73 65 | pan.class="t0_1">operation.cause |
| 97ea0 | 64 20 6f 76 65 72 66 6c 6f 77 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 63 6f 6e 73 74 20 78 20 3d 20 | d.overflow</span>.....const.x.=. |
| 97ec0 | 40 73 68 6c 45 78 61 63 74 28 40 61 73 28 75 38 2c 20 30 62 30 31 30 31 30 31 30 31 29 2c 20 32 | @shlExact(@as(u8,.0b01010101),.2 |
| 97ee0 | 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 | );...............<span.class="t3 |
| 97f00 | 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 | 2_1">^</span>.</code></pre>..... |
| 97f20 | 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 70 20 63 | ...<p>At.runtime:</p>.......<p.c |
| 97f40 | 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f | lass="file">test.zig</p><pre><co |
| 97f60 | 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | de.class="zig"><span.class="tok- |
| 97f80 | 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 |
| 97fa0 | 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>( |
| 97fc0 | 3c 73 70 61 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& |
| 97fe0 | 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 |
| 98000 | 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 |
| 98020 | 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- |
| 98040 | 66 6e 22 3e 6d 61 69 6e 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | fn">main</span>().<span.class="t |
| 98060 | 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 |
| 98080 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 78 3a 20 3c 73 | .class="tok-kw">var</span>.x:.<s |
| 980a0 | 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>.= |
| 980c0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 62 30 31 30 31 | .<span.class="tok-number">0b0101 |
| 980e0 | 30 31 30 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 | 0101</span>;.....<span.class="to |
| 98100 | 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 79 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | k-kw">var</span>.y.=.<span.class |
| 98120 | 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 68 6c 45 78 61 63 74 3c 2f 73 70 61 6e 3e 28 | ="tok-builtin">@shlExact</span>( |
| 98140 | 78 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 | x,.<span.class="tok-number">2</s |
| 98160 | 70 61 6e 3e 29 3b 0a 20 20 20 20 73 74 64 2e 64 65 62 75 67 2e 70 72 69 6e 74 28 3c 73 70 61 6e | pan>);.....std.debug.print(<span |
| 98180 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 76 61 6c 75 65 3a 20 7b 7d | .class="tok-str">"value:.{} |
| 981a0 | 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 79 7d 29 3b 0a 7d 3c 2f 63 6f 64 65 3e | \n"</span>,..{y});.}</code> |
| 981c0 | 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 | </pre><pre><code.class="shell">$ |
| 981e0 | 20 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 74 65 73 74 2e 7a 69 67 0a 24 20 2e 2f 74 65 73 74 | .zig.build-exe.test.zig.$../test |
| 98200 | 0a 6c 65 66 74 20 73 68 69 66 74 20 6f 76 65 72 66 6c 6f 77 65 64 20 62 69 74 73 0a 3c 73 70 61 | .left.shift.overflowed.bits.<spa |
| 98220 | 6e 20 63 6c 61 73 73 3d 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c | n.class="t37_1">/home/andy/Downl |
| 98240 | 6f 61 64 73 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 35 3a 31 | oads/zig/docgen_tmp/test.zig:5:1 |
| 98260 | 33 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 | 3</span>:.<span.class="t2_0">0x2 |
| 98280 | 32 62 30 66 64 20 69 6e 20 6d 61 69 6e 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 | 2b0fd.in.main.(test)</span>..... |
| 982a0 | 76 61 72 20 79 20 3d 20 40 73 68 6c 45 78 61 63 74 28 78 2c 20 32 29 3b 0a 20 20 20 20 20 20 20 | var.y.=.@shlExact(x,.2);........ |
| 982c0 | 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e | .....<span.class="t32_1">^</span |
| 982e0 | 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 | >.<span.class="t37_1">/home/andy |
| 98300 | 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 | /Downloads/zig/lib/std/start.zig |
| 98320 | 3a 33 32 34 3a 32 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f | :324:22</span>:.<span.class="t2_ |
| 98340 | 30 22 3e 30 78 32 30 34 63 66 66 20 69 6e 20 73 74 64 2e 73 74 61 72 74 2e 70 6f 73 69 78 43 61 | 0">0x204cff.in.std.start.posixCa |
| 98360 | 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 | llMainAndExit.(test)</span>..... |
| 98380 | 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();............ |
| 983a0 | 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c | ..........<span.class="t32_1">^< |
| 983c0 | 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 | /span>.<span.class="t37_1">/home |
| 983e0 | 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 | /andy/Downloads/zig/lib/std/star |
| 98400 | 74 2e 7a 69 67 3a 31 36 32 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | t.zig:162:5</span>:.<span.class= |
| 98420 | 22 74 32 5f 30 22 3e 30 78 32 30 34 61 64 32 20 69 6e 20 73 74 64 2e 73 74 61 72 74 2e 5f 73 74 | "t2_0">0x204ad2.in.std.start._st |
| 98440 | 61 72 74 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 40 63 61 6c 6c 28 2e 7b 20 2e | art.(test)</span>.....@call(.{.. |
| 98460 | 6d 6f 64 69 66 69 65 72 20 3d 20 2e 6e 65 76 65 72 5f 69 6e 6c 69 6e 65 20 7d 2c 20 70 6f 73 69 | modifier.=..never_inline.},.posi |
| 98480 | 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 2c 20 2e 7b 7d 29 3b 0a 20 20 20 20 3c 73 70 61 | xCallMainAndExit,..{});.....<spa |
| 984a0 | 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 28 70 72 6f 63 65 73 | n.class="t32_1">^</span>.(proces |
| 984c0 | 73 20 74 65 72 6d 69 6e 61 74 65 64 20 62 79 20 73 69 67 6e 61 6c 29 3c 2f 63 6f 64 65 3e 3c 2f | s.terminated.by.signal)</code></ |
| 984e0 | 70 72 65 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 45 78 61 63 74 | pre>...............<h2.id="Exact |
| 98500 | 2d 52 69 67 68 74 2d 53 68 69 66 74 2d 4f 76 65 72 66 6c 6f 77 22 3e 3c 61 20 68 72 65 66 3d 22 | -Right-Shift-Overflow"><a.href=" |
| 98520 | 23 74 6f 63 2d 45 78 61 63 74 2d 52 69 67 68 74 2d 53 68 69 66 74 2d 4f 76 65 72 66 6c 6f 77 22 | #toc-Exact-Right-Shift-Overflow" |
| 98540 | 3e 45 78 61 63 74 20 52 69 67 68 74 20 53 68 69 66 74 20 4f 76 65 72 66 6c 6f 77 3c 2f 61 3e 20 | >Exact.Right.Shift.Overflow</a>. |
| 98560 | 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 45 78 61 63 74 2d 52 69 67 68 | <a.class="hdr".href="#Exact-Righ |
| 98580 | 74 2d 53 68 69 66 74 2d 4f 76 65 72 66 6c 6f 77 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 | t-Shift-Overflow">..</a></h2>... |
| 985a0 | 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 20 | .....<p>At.compile-time:</p>.... |
| 985c0 | 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c | ...<p.class="file">test.zig</p>< |
| 985e0 | 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 | pre><code.class="zig"><span.clas |
| 98600 | 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>.{.... |
| 98620 | 20 3c 73 70 61 6e 20 63 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 |
| 98640 | 6e 3e 20 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 | n>.x.=.<span.class="tok-builtin" |
| 98660 | 3e 40 73 68 72 45 78 61 63 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | >@shrExact</span>(<span.class="t |
| 98680 | 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 |
| 986a0 | 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 63 | ss="tok-type">u8</span>,.<span.c |
| 986c0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 62 31 30 31 30 31 30 31 30 3c 2f 73 70 | lass="tok-number">0b10101010</sp |
| 986e0 | 61 6e 3e 29 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 | an>),.<span.class="tok-number">2 |
| 98700 | 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f | </span>);.}</code></pre><pre><co |
| 98720 | 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 | de.class="shell">$.zig.test.test |
| 98740 | 2e 7a 69 67 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e | .zig.<span.class="t0_1">./docgen |
| 98760 | 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 32 3a 31 35 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e | _tmp/test.zig:2:15:.</span><span |
| 98780 | 20 63 6c 61 73 73 3d 22 74 33 31 5f 31 22 3e 65 72 72 6f 72 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 | .class="t31_1">error:.</span><sp |
| 987a0 | 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 65 78 61 63 74 20 73 68 69 66 74 20 73 68 69 66 | an.class="t0_1">exact.shift.shif |
| 987c0 | 74 65 64 20 6f 75 74 20 31 20 62 69 74 73 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 63 6f 6e 73 74 20 | ted.out.1.bits</span>.....const. |
| 987e0 | 78 20 3d 20 40 73 68 72 45 78 61 63 74 28 40 61 73 28 75 38 2c 20 30 62 31 30 31 30 31 30 31 30 | x.=.@shrExact(@as(u8,.0b10101010 |
| 98800 | 29 2c 20 32 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ),.2);...............<span.class |
| 98820 | 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a | ="t32_1">^</span>.</code></pre>. |
| 98840 | 0a 20 20 20 20 20 20 3c 70 3e 41 74 20 72 75 6e 74 69 6d 65 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 | .......<p>At.runtime:</p>....... |
| 98860 | 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 | <p.class="file">test.zig</p><pre |
| 98880 | 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ><code.class="zig"><span.class=" |
| 988a0 | 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 |
| 988c0 | 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 |
| 988e0 | 61 6e 3e 28 3c 73 70 61 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">" |
| 98900 | 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | std"</span>);..<span.class= |
| 98920 | 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= |
| 98940 | 22 74 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=" |
| 98960 | 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 |
| 98980 | 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>.{.....< |
| 989a0 | 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 |
| 989c0 | 3a 20 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 |
| 989e0 | 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 62 | n>.=.<span.class="tok-number">0b |
| 98a00 | 31 30 31 30 31 30 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 | 10101010</span>;.....<span.class |
| 98a20 | 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 79 20 3d 20 3c 73 70 61 6e 20 63 | ="tok-kw">var</span>.y.=.<span.c |
| 98a40 | 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 68 72 45 78 61 63 74 3c 2f 73 70 | lass="tok-builtin">@shrExact</sp |
| 98a60 | 61 6e 3e 28 78 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e | an>(x,.<span.class="tok-number"> |
| 98a80 | 32 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 73 74 64 2e 64 65 62 75 67 2e 70 72 69 6e 74 28 3c | 2</span>);.....std.debug.print(< |
| 98aa0 | 73 70 61 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 |
| 98ac0 | 3a 20 7b 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 79 7d 29 3b 0a 7d 3c 2f 63 | :.{}\n"</span>,..{y});.}</c |
| 98ae0 | 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c | ode></pre><pre><code.class="shel |
| 98b00 | 6c 22 3e 24 20 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 74 65 73 74 2e 7a 69 67 0a 24 20 2e 2f | l">$.zig.build-exe.test.zig.$../ |
| 98b20 | 74 65 73 74 0a 72 69 67 68 74 20 73 68 69 66 74 20 6f 76 65 72 66 6c 6f 77 65 64 20 62 69 74 73 | test.right.shift.overflowed.bits |
| 98b40 | 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f | .<span.class="t37_1">/home/andy/ |
| 98b60 | 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 | Downloads/zig/docgen_tmp/test.zi |
| 98b80 | 67 3a 35 3a 31 33 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 | g:5:13</span>:.<span.class="t2_0 |
| 98ba0 | 22 3e 30 78 32 32 62 30 66 64 20 69 6e 20 6d 61 69 6e 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e | ">0x22b0fd.in.main.(test)</span> |
| 98bc0 | 0a 20 20 20 20 76 61 72 20 79 20 3d 20 40 73 68 72 45 78 61 63 74 28 78 2c 20 32 29 3b 0a 20 20 | .....var.y.=.@shrExact(x,.2);... |
| 98be0 | 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c | ..........<span.class="t32_1">^< |
| 98c00 | 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 | /span>.<span.class="t37_1">/home |
| 98c20 | 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 | /andy/Downloads/zig/lib/std/star |
| 98c40 | 74 2e 7a 69 67 3a 33 32 34 3a 32 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 | t.zig:324:22</span>:.<span.class |
| 98c60 | 3d 22 74 32 5f 30 22 3e 30 78 32 30 34 63 66 66 20 69 6e 20 73 74 64 2e 73 74 61 72 74 2e 70 6f | ="t2_0">0x204cff.in.std.start.po |
| 98c80 | 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e | sixCallMainAndExit.(test)</span> |
| 98ca0 | 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();....... |
| 98cc0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f | ...............<span.class="t32_ |
| 98ce0 | 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 37 5f 31 22 3e | 1">^</span>.<span.class="t37_1"> |
| 98d00 | 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 | /home/andy/Downloads/zig/lib/std |
| 98d20 | 2f 73 74 61 72 74 2e 7a 69 67 3a 31 36 32 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 | /start.zig:162:5</span>:.<span.c |
| 98d40 | 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 30 34 61 64 32 20 69 6e 20 73 74 64 2e 73 74 61 72 | lass="t2_0">0x204ad2.in.std.star |
| 98d60 | 74 2e 5f 73 74 61 72 74 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 40 63 61 6c 6c | t._start.(test)</span>.....@call |
| 98d80 | 28 2e 7b 20 2e 6d 6f 64 69 66 69 65 72 20 3d 20 2e 6e 65 76 65 72 5f 69 6e 6c 69 6e 65 20 7d 2c | (.{..modifier.=..never_inline.}, |
| 98da0 | 20 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 2c 20 2e 7b 7d 29 3b 0a 20 20 20 | .posixCallMainAndExit,..{});.... |
| 98dc0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 28 70 | .<span.class="t32_1">^</span>.(p |
| 98de0 | 72 6f 63 65 73 73 20 74 65 72 6d 69 6e 61 74 65 64 20 62 79 20 73 69 67 6e 61 6c 29 3c 2f 63 6f | rocess.terminated.by.signal)</co |
| 98e00 | 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 | de></pre>...............<h2.id=" |
| 98e20 | 44 69 76 69 73 69 6f 6e 2d 62 79 2d 5a 65 72 6f 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d | Division-by-Zero"><a.href="#toc- |
| 98e40 | 44 69 76 69 73 69 6f 6e 2d 62 79 2d 5a 65 72 6f 22 3e 44 69 76 69 73 69 6f 6e 20 62 79 20 5a 65 | Division-by-Zero">Division.by.Ze |
| 98e60 | 72 6f 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 44 69 76 | ro</a>.<a.class="hdr".href="#Div |
| 98e80 | 69 73 69 6f 6e 2d 62 79 2d 5a 65 72 6f 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 | ision-by-Zero">..</a></h2>...... |
| 98ea0 | 20 20 3c 70 3e 41 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 | ..<p>At.compile-time:</p>....... |
| 98ec0 | 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 | <p.class="file">test.zig</p><pre |
| 98ee0 | 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ><code.class="zig"><span.class=" |
| 98f00 | 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 | tok-kw">comptime</span>.{.....<s |
| 98f20 | 70 61 6e 20 63 6c 61 73 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>. |
| 98f40 | 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 | a:.<span.class="tok-type">i32</s |
| 98f60 | 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"> |
| 98f80 | 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 |
| 98fa0 | 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=" |
| 98fc0 | 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 |
| 98fe0 | 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 |
| 99000 | 70 61 6e 20 63 6c 61 73 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>. |
| 99020 | 63 20 3d 20 61 20 2f 20 62 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 | c.=.a./.b;.}</code></pre><pre><c |
| 99040 | 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 | ode.class="shell">$.zig.test.tes |
| 99060 | 74 2e 7a 69 67 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 | t.zig.<span.class="t0_1">./docge |
| 99080 | 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 34 3a 31 37 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 | n_tmp/test.zig:4:17:.</span><spa |
| 990a0 | 6e 20 63 6c 61 73 73 3d 22 74 33 31 5f 31 22 3e 65 72 72 6f 72 3a 20 3c 2f 73 70 61 6e 3e 3c 73 | n.class="t31_1">error:.</span><s |
| 990c0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 64 69 76 69 73 69 6f 6e 20 62 79 20 7a 65 72 | pan.class="t0_1">division.by.zer |
| 990e0 | 6f 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 63 6f 6e 73 74 20 63 20 3d 20 61 20 2f 20 62 3b 0a 20 20 | o</span>.....const.c.=.a./.b;... |
| 99100 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 | ..............<span.class="t32_1 |
| 99120 | 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 | ">^</span>.</code></pre>........ |
| 99140 | 3c 70 3e 41 74 20 72 75 6e 74 69 6d 65 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 | <p>At.runtime:</p>.......<p.clas |
| 99160 | 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 | s="file">test.zig</p><pre><code. |
| 99180 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | class="zig"><span.class="tok-kw" |
| 991a0 | 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= |
| 991c0 | 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 |
| 991e0 | 61 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 |
| 99200 | 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 |
| 99220 | 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 |
| 99240 | 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" |
| 99260 | 3e 6d 61 69 6e 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | >main</span>().<span.class="tok- |
| 99280 | 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | type">void</span>.{.....<span.cl |
| 992a0 | 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 6e | ass="tok-kw">var</span>.a:.<span |
| 992c0 | 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>.=.< |
| 992e0 | 73 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> |
| 99300 | 3b 0a 20 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</ |
| 99320 | 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"> |
| 99340 | 75 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | u32</span>.=.<span.class="tok-nu |
| 99360 | 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | mber">0</span>;.....<span.class= |
| 99380 | 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 63 20 3d 20 61 20 2f 20 62 3b 0a 20 | "tok-kw">var</span>.c.=.a./.b;.. |
| 993a0 | 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 22 | ...std.debug.print(<span.class=" |
| 993c0 | 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 76 61 6c 75 65 3a 20 7b 7d 5c 6e 26 71 75 6f 74 3b | tok-str">"value:.{}\n" |
| 993e0 | 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 63 7d 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 | </span>,..{c});.}</code></pre><p |
| 99400 | 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 62 75 69 | re><code.class="shell">$.zig.bui |
| 99420 | 6c 64 2d 65 78 65 20 74 65 73 74 2e 7a 69 67 0a 24 20 2e 2f 74 65 73 74 0a 64 69 76 69 73 69 6f | ld-exe.test.zig.$../test.divisio |
| 99440 | 6e 20 62 79 20 7a 65 72 6f 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 37 5f 31 22 3e 2f 68 | n.by.zero.<span.class="t37_1">/h |
| 99460 | 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d | ome/andy/Downloads/zig/docgen_tm |
| 99480 | 70 2f 74 65 73 74 2e 7a 69 67 3a 36 3a 31 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c | p/test.zig:6:15</span>:.<span.cl |
| 994a0 | 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 62 30 61 39 20 69 6e 20 6d 61 69 6e 20 28 74 65 73 | ass="t2_0">0x22b0a9.in.main.(tes |
| 994c0 | 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 76 61 72 20 63 20 3d 20 61 20 2f 20 62 3b 0a 20 20 20 | t)</span>.....var.c.=.a./.b;.... |
| 994e0 | 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e | ...........<span.class="t32_1">^ |
| 99500 | 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 37 5f 31 22 3e 2f 68 6f 6d | </span>.<span.class="t37_1">/hom |
| 99520 | 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 | e/andy/Downloads/zig/lib/std/sta |
| 99540 | 72 74 2e 7a 69 67 3a 33 32 34 3a 32 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 | rt.zig:324:22</span>:.<span.clas |
| 99560 | 73 3d 22 74 32 5f 30 22 3e 30 78 32 30 34 63 62 66 20 69 6e 20 73 74 64 2e 73 74 61 72 74 2e 70 | s="t2_0">0x204cbf.in.std.start.p |
| 99580 | 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 20 28 74 65 73 74 29 3c 2f 73 70 61 6e | osixCallMainAndExit.(test)</span |
| 995a0 | 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();...... |
| 995c0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 | ................<span.class="t32 |
| 995e0 | 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 37 5f 31 22 | _1">^</span>.<span.class="t37_1" |
| 99600 | 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 | >/home/andy/Downloads/zig/lib/st |
| 99620 | 64 2f 73 74 61 72 74 2e 7a 69 67 3a 31 36 32 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 | d/start.zig:162:5</span>:.<span. |
| 99640 | 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 30 34 61 39 32 20 69 6e 20 73 74 64 2e 73 74 61 | class="t2_0">0x204a92.in.std.sta |
| 99660 | 72 74 2e 5f 73 74 61 72 74 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 40 63 61 6c | rt._start.(test)</span>.....@cal |
| 99680 | 6c 28 2e 7b 20 2e 6d 6f 64 69 66 69 65 72 20 3d 20 2e 6e 65 76 65 72 5f 69 6e 6c 69 6e 65 20 7d | l(.{..modifier.=..never_inline.} |
| 996a0 | 2c 20 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 2c 20 2e 7b 7d 29 3b 0a 20 20 | ,.posixCallMainAndExit,..{});... |
| 996c0 | 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 28 | ..<span.class="t32_1">^</span>.( |
| 996e0 | 70 72 6f 63 65 73 73 20 74 65 72 6d 69 6e 61 74 65 64 20 62 79 20 73 69 67 6e 61 6c 29 3c 2f 63 | process.terminated.by.signal)</c |
| 99700 | 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d | ode></pre>...............<h2.id= |
| 99720 | 22 52 65 6d 61 69 6e 64 65 72 2d 44 69 76 69 73 69 6f 6e 2d 62 79 2d 5a 65 72 6f 22 3e 3c 61 20 | "Remainder-Division-by-Zero"><a. |
| 99740 | 68 72 65 66 3d 22 23 74 6f 63 2d 52 65 6d 61 69 6e 64 65 72 2d 44 69 76 69 73 69 6f 6e 2d 62 79 | href="#toc-Remainder-Division-by |
| 99760 | 2d 5a 65 72 6f 22 3e 52 65 6d 61 69 6e 64 65 72 20 44 69 76 69 73 69 6f 6e 20 62 79 20 5a 65 72 | -Zero">Remainder.Division.by.Zer |
| 99780 | 6f 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 52 65 6d 61 | o</a>.<a.class="hdr".href="#Rema |
| 997a0 | 69 6e 64 65 72 2d 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 | inder-Division-by-Zero">..</a></ |
| 997c0 | 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 3a 3c 2f | h2>........<p>At.compile-time:</ |
| 997e0 | 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 | p>.......<p.class="file">test.zi |
| 99800 | 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 | g</p><pre><code.class="zig"><spa |
| 99820 | 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> |
| 99840 | 20 7b 0a 20 20 20 20 3c 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 |
| 99860 | 74 3c 2f 73 70 61 6e 3e 20 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | t</span>.a:.<span.class="tok-typ |
| 99880 | 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 |
| 998a0 | 2d 6e 75 6d 62 65 72 22 3e 31 30 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | -number">10</span>;.....<span.cl |
| 998c0 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 62 3a 20 3c 73 70 | ass="tok-kw">const</span>.b:.<sp |
| 998e0 | 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>.= |
| 99900 | 20 3c 73 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 |
| 99920 | 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 |
| 99940 | 73 74 3c 2f 73 70 61 6e 3e 20 63 20 3d 20 61 20 25 20 62 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 | st</span>.c.=.a.%.b;.}</code></p |
| 99960 | 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 | re><pre><code.class="shell">$.zi |
| 99980 | 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f | g.test.test.zig.<span.class="t0_ |
| 999a0 | 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 34 3a 31 37 3a 20 3c | 1">./docgen_tmp/test.zig:4:17:.< |
| 999c0 | 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 31 5f 31 22 3e 65 72 72 6f 72 3a | /span><span.class="t31_1">error: |
| 999e0 | 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 64 69 76 69 73 | .</span><span.class="t0_1">divis |
| 99a00 | 69 6f 6e 20 62 79 20 7a 65 72 6f 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 63 6f 6e 73 74 20 63 20 3d | ion.by.zero</span>.....const.c.= |
| 99a20 | 20 61 20 25 20 62 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c | .a.%.b;.................<span.cl |
| 99a40 | 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 | ass="t32_1">^</span>.</code></pr |
| 99a60 | 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>.... |
| 99a80 | 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c | ...<p.class="file">test.zig</p>< |
| 99aa0 | 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 | pre><code.class="zig"><span.clas |
| 99ac0 | 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 |
| 99ae0 | 70 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< |
| 99b00 | 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 |
| 99b20 | 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 |
| 99b40 | 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 |
| 99b60 | 73 73 3d 22 74 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 |
| 99b80 | 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 |
| 99ba0 | 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>.{... |
| 99bc0 | 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 |
| 99be0 | 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< |
| 99c00 | 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 |
| 99c20 | 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 |
| 99c40 | 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= |
| 99c60 | 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 |
| 99c80 | 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>;.....< |
| 99ca0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 63 | span.class="tok-kw">var</span>.c |
| 99cc0 | 20 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 | .=.a.%.b;.....std.debug.print(<s |
| 99ce0 | 70 61 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: |
| 99d00 | 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 |
| 99d20 | 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c | de></pre><pre><code.class="shell |
| 99d40 | 22 3e 24 20 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 74 65 73 74 2e 7a 69 67 0a 24 20 2e 2f 74 | ">$.zig.build-exe.test.zig.$../t |
| 99d60 | 65 73 74 0a 72 65 6d 61 69 6e 64 65 72 20 64 69 76 69 73 69 6f 6e 20 62 79 20 7a 65 72 6f 20 6f | est.remainder.division.by.zero.o |
| 99d80 | 72 20 6e 65 67 61 74 69 76 65 20 76 61 6c 75 65 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 | r.negative.value.<span.class="t3 |
| 99da0 | 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 64 6f | 7_1">/home/andy/Downloads/zig/do |
| 99dc0 | 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 36 3a 31 35 3c 2f 73 70 61 6e 3e 3a 20 3c | cgen_tmp/test.zig:6:15</span>:.< |
| 99de0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 62 30 63 62 20 69 6e 20 6d 61 | span.class="t2_0">0x22b0cb.in.ma |
| 99e00 | 69 6e 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 76 61 72 20 63 20 3d 20 61 20 25 | in.(test)</span>.....var.c.=.a.% |
| 99e20 | 20 62 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | .b;...............<span.class="t |
| 99e40 | 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 37 5f | 32_1">^</span>.<span.class="t37_ |
| 99e60 | 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f | 1">/home/andy/Downloads/zig/lib/ |
| 99e80 | 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 33 32 34 3a 32 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 | std/start.zig:324:22</span>:.<sp |
| 99ea0 | 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 30 34 63 62 66 20 69 6e 20 73 74 64 2e | an.class="t2_0">0x204cbf.in.std. |
| 99ec0 | 73 74 61 72 74 2e 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 20 28 74 65 73 74 | start.posixCallMainAndExit.(test |
| 99ee0 | 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() |
| 99f00 | 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 |
| 99f20 | 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ss="t32_1">^</span>.<span.class= |
| 99f40 | 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 | "t37_1">/home/andy/Downloads/zig |
| 99f60 | 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 31 36 32 3a 35 3c 2f 73 70 61 6e 3e 3a | /lib/std/start.zig:162:5</span>: |
| 99f80 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 30 34 61 39 32 20 69 6e 20 | .<span.class="t2_0">0x204a92.in. |
| 99fa0 | 73 74 64 2e 73 74 61 72 74 2e 5f 73 74 61 72 74 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 | std.start._start.(test)</span>.. |
| 99fc0 | 20 20 20 40 63 61 6c 6c 28 2e 7b 20 2e 6d 6f 64 69 66 69 65 72 20 3d 20 2e 6e 65 76 65 72 5f 69 | ...@call(.{..modifier.=..never_i |
| 99fe0 | 6e 6c 69 6e 65 20 7d 2c 20 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 2c 20 2e | nline.},.posixCallMainAndExit,.. |
| 9a000 | 7b 7d 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f | {});.....<span.class="t32_1">^</ |
| 9a020 | 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 |
| 9a040 | 6e 61 6c 29 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 | nal)</code></pre>............... |
| 9a060 | 3c 68 32 20 69 64 3d 22 45 78 61 63 74 2d 44 69 76 69 73 69 6f 6e 2d 52 65 6d 61 69 6e 64 65 72 | <h2.id="Exact-Division-Remainder |
| 9a080 | 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 45 78 61 63 74 2d 44 69 76 69 73 69 6f 6e 2d 52 | "><a.href="#toc-Exact-Division-R |
| 9a0a0 | 65 6d 61 69 6e 64 65 72 22 3e 45 78 61 63 74 20 44 69 76 69 73 69 6f 6e 20 52 65 6d 61 69 6e 64 | emainder">Exact.Division.Remaind |
| 9a0c0 | 65 72 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 45 78 61 | er</a>.<a.class="hdr".href="#Exa |
| 9a0e0 | 63 74 2d 44 69 76 69 73 69 6f 6e 2d 52 65 6d 61 69 6e 64 65 72 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 | ct-Division-Remainder">..</a></h |
| 9a100 | 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 3a 3c 2f 70 | 2>........<p>At.compile-time:</p |
| 9a120 | 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 | >.......<p.class="file">test.zig |
| 9a140 | 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e | </p><pre><code.class="zig"><span |
| 9a160 | 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>. |
| 9a180 | 7b 0a 20 20 20 20 3c 73 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 |
| 9a1a0 | 3c 2f 73 70 61 6e 3e 20 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | </span>.a:.<span.class="tok-type |
| 9a1c0 | 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- |
| 9a1e0 | 6e 75 6d 62 65 72 22 3e 31 30 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | number">10</span>;.....<span.cla |
| 9a200 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 62 3a 20 3c 73 70 61 | ss="tok-kw">const</span>.b:.<spa |
| 9a220 | 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>.=. |
| 9a240 | 3c 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 |
| 9a260 | 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 |
| 9a280 | 74 3c 2f 73 70 61 6e 3e 20 63 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 | t</span>.c.=.<span.class="tok-bu |
| 9a2a0 | 69 6c 74 69 6e 22 3e 40 64 69 76 45 78 61 63 74 3c 2f 73 70 61 6e 3e 28 61 2c 20 62 29 3b 0a 7d | iltin">@divExact</span>(a,.b);.} |
| 9a2c0 | 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 | </code></pre><pre><code.class="s |
| 9a2e0 | 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 3c 73 70 61 6e 20 | hell">$.zig.test.test.zig.<span. |
| 9a300 | 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a | class="t0_1">./docgen_tmp/test.z |
| 9a320 | 69 67 3a 34 3a 31 35 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 31 | ig:4:15:.</span><span.class="t31 |
| 9a340 | 5f 31 22 3e 65 72 72 6f 72 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | _1">error:.</span><span.class="t |
| 9a360 | 30 5f 31 22 3e 65 78 61 63 74 20 64 69 76 69 73 69 6f 6e 20 68 61 64 20 61 20 72 65 6d 61 69 6e | 0_1">exact.division.had.a.remain |
| 9a380 | 64 65 72 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 63 6f 6e 73 74 20 63 20 3d 20 40 64 69 76 45 78 61 | der</span>.....const.c.=.@divExa |
| 9a3a0 | 63 74 28 61 2c 20 62 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c | ct(a,.b);...............<span.cl |
| 9a3c0 | 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 | ass="t32_1">^</span>.</code></pr |
| 9a3e0 | 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>.... |
| 9a400 | 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c | ...<p.class="file">test.zig</p>< |
| 9a420 | 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 | pre><code.class="zig"><span.clas |
| 9a440 | 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 |
| 9a460 | 70 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< |
| 9a480 | 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 |
| 9a4a0 | 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 |
| 9a4c0 | 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 |
| 9a4e0 | 73 73 3d 22 74 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 |
| 9a500 | 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 |
| 9a520 | 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>.{... |
| 9a540 | 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 |
| 9a560 | 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< |
| 9a580 | 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 |
| 9a5a0 | 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 |
| 9a5c0 | 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= |
| 9a5e0 | 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 |
| 9a600 | 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>;.....< |
| 9a620 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 63 | span.class="tok-kw">var</span>.c |
| 9a640 | 20 3d 20 3c 73 70 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 | .=.<span.class="tok-builtin">@di |
| 9a660 | 76 45 78 61 63 74 3c 2f 73 70 61 6e 3e 28 61 2c 20 62 29 3b 0a 20 20 20 20 73 74 64 2e 64 65 62 | vExact</span>(a,.b);.....std.deb |
| 9a680 | 75 67 2e 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 | ug.print(<span.class="tok-str">& |
| 9a6a0 | 71 75 6f 74 3b 76 61 6c 75 65 3a 20 7b 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e | quot;value:.{}\n"</span>,.. |
| 9a6c0 | 7b 63 7d 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 | {c});.}</code></pre><pre><code.c |
| 9a6e0 | 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 74 65 73 | lass="shell">$.zig.build-exe.tes |
| 9a700 | 74 2e 7a 69 67 0a 24 20 2e 2f 74 65 73 74 0a 65 78 61 63 74 20 64 69 76 69 73 69 6f 6e 20 70 72 | t.zig.$../test.exact.division.pr |
| 9a720 | 6f 64 75 63 65 64 20 72 65 6d 61 69 6e 64 65 72 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 | oduced.remainder.<span.class="t3 |
| 9a740 | 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 64 6f | 7_1">/home/andy/Downloads/zig/do |
| 9a760 | 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 36 3a 31 33 3c 2f 73 70 61 6e 3e 3a 20 3c | cgen_tmp/test.zig:6:13</span>:.< |
| 9a780 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 62 30 65 64 20 69 6e 20 6d 61 | span.class="t2_0">0x22b0ed.in.ma |
| 9a7a0 | 69 6e 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 76 61 72 20 63 20 3d 20 40 64 69 | in.(test)</span>.....var.c.=.@di |
| 9a7c0 | 76 45 78 61 63 74 28 61 2c 20 62 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 | vExact(a,.b);.............<span. |
| 9a7e0 | 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 | class="t32_1">^</span>.<span.cla |
| 9a800 | 73 73 3d 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f | ss="t37_1">/home/andy/Downloads/ |
| 9a820 | 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 33 32 34 3a 32 32 3c 2f 73 70 | zig/lib/std/start.zig:324:22</sp |
| 9a840 | 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 30 34 63 62 66 | an>:.<span.class="t2_0">0x204cbf |
| 9a860 | 20 69 6e 20 73 74 64 2e 73 74 61 72 74 2e 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 | .in.std.start.posixCallMainAndEx |
| 9a880 | 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 6f | it.(test)</span>.............roo |
| 9a8a0 | 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();......................< |
| 9a8c0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 | span.class="t32_1">^</span>.<spa |
| 9a8e0 | 6e 20 63 6c 61 73 73 3d 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c | n.class="t37_1">/home/andy/Downl |
| 9a900 | 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 31 36 32 3a 35 | oads/zig/lib/std/start.zig:162:5 |
| 9a920 | 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 30 | </span>:.<span.class="t2_0">0x20 |
| 9a940 | 34 61 39 32 20 69 6e 20 73 74 64 2e 73 74 61 72 74 2e 5f 73 74 61 72 74 20 28 74 65 73 74 29 3c | 4a92.in.std.start._start.(test)< |
| 9a960 | 2f 73 70 61 6e 3e 0a 20 20 20 20 40 63 61 6c 6c 28 2e 7b 20 2e 6d 6f 64 69 66 69 65 72 20 3d 20 | /span>.....@call(.{..modifier.=. |
| 9a980 | 2e 6e 65 76 65 72 5f 69 6e 6c 69 6e 65 20 7d 2c 20 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e | .never_inline.},.posixCallMainAn |
| 9a9a0 | 64 45 78 69 74 2c 20 2e 7b 7d 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 | dExit,..{});.....<span.class="t3 |
| 9a9c0 | 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 28 70 72 6f 63 65 73 73 20 74 65 72 6d 69 6e 61 74 65 | 2_1">^</span>.(process.terminate |
| 9a9e0 | 64 20 62 79 20 73 69 67 6e 61 6c 29 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 | d.by.signal)</code></pre>....... |
| 9aa00 | 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 41 74 74 65 6d 70 74 2d 74 6f 2d 55 6e 77 72 61 | ........<h2.id="Attempt-to-Unwra |
| 9aa20 | 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 74 6f | p-Null"><a.href="#toc-Attempt-to |
| 9aa40 | 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 70 20 | -Unwrap-Null">Attempt.to.Unwrap. |
| 9aa60 | 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 23 41 | Null</a>.<a.class="hdr".href="#A |
| 9aa80 | 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 2f 68 | ttempt-to-Unwrap-Null">..</a></h |
| 9aaa0 | 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 3a 3c 2f 70 | 2>........<p>At.compile-time:</p |
| 9aac0 | 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 | >.......<p.class="file">test.zig |
| 9aae0 | 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e | </p><pre><code.class="zig"><span |
| 9ab00 | 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>. |
| 9ab20 | 7b 0a 20 20 20 20 3c 73 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 |
| 9ab40 | 3c 2f 73 70 61 6e 3e 20 6f 70 74 69 6f 6e 61 6c 5f 6e 75 6d 62 65 72 3a 20 3f 3c 73 70 61 6e 20 | </span>.optional_number:.?<span. |
| 9ab60 | 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 |
| 9ab80 | 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> |
| 9aba0 | 3b 0a 20 20 20 20 3c 73 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 |
| 9abc0 | 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 65 72 | </span>.number.=.optional_number |
| 9abe0 | 2e 3f 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 | .?;.}</code></pre><pre><code.cla |
| 9ac00 | 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 3c | ss="shell">$.zig.test.test.zig.< |
| 9ac20 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 | span.class="t0_1">./docgen_tmp/t |
| 9ac40 | 65 73 74 2e 7a 69 67 3a 33 3a 33 35 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | est.zig:3:35:.</span><span.class |
| 9ac60 | 3d 22 74 33 31 5f 31 22 3e 65 72 72 6f 72 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 | ="t31_1">error:.</span><span.cla |
| 9ac80 | 73 73 3d 22 74 30 5f 31 22 3e 75 6e 61 62 6c 65 20 74 6f 20 75 6e 77 72 61 70 20 6e 75 6c 6c 3c | ss="t0_1">unable.to.unwrap.null< |
| 9aca0 | 2f 73 70 61 6e 3e 0a 20 20 20 20 63 6f 6e 73 74 20 6e 75 6d 62 65 72 20 3d 20 6f 70 74 69 6f 6e | /span>.....const.number.=.option |
| 9acc0 | 61 6c 5f 6e 75 6d 62 65 72 2e 3f 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | al_number.?;.................... |
| 9ace0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f | ...............<span.class="t32_ |
| 9ad00 | 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 | 1">^</span>.</code></pre>....... |
| 9ad20 | 20 3c 70 3e 41 74 20 72 75 6e 74 69 6d 65 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 | .<p>At.runtime:</p>.......<p.cla |
| 9ad40 | 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 | ss="file">test.zig</p><pre><code |
| 9ad60 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | .class="zig"><span.class="tok-kw |
| 9ad80 | 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 |
| 9ada0 | 3d 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 |
| 9adc0 | 70 61 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 |
| 9ade0 | 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 |
| 9ae00 | 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 |
| 9ae20 | 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 |
| 9ae40 | 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 |
| 9ae60 | 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 | -type">void</span>.{.....<span.c |
| 9ae80 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 6f 70 74 69 6f 6e 61 | lass="tok-kw">var</span>.optiona |
| 9aea0 | 6c 5f 6e 75 6d 62 65 72 3a 20 3f 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | l_number:.?<span.class="tok-type |
| 9aec0 | 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- |
| 9aee0 | 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 61 | null">null</span>;.....<span.cla |
| 9af00 | 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 3d 20 | ss="tok-kw">var</span>.number.=. |
| 9af20 | 6f 70 74 69 6f 6e 61 6c 5f 6e 75 6d 62 65 72 2e 3f 3b 0a 20 20 20 20 73 74 64 2e 64 65 62 75 67 | optional_number.?;.....std.debug |
| 9af40 | 2e 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 | .print(<span.class="tok-str">&qu |
| 9af60 | 6f 74 3b 76 61 6c 75 65 3a 20 7b 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 6e | ot;value:.{}\n"</span>,..{n |
| 9af80 | 75 6d 62 65 72 7d 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 | umber});.}</code></pre><pre><cod |
| 9afa0 | 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 | e.class="shell">$.zig.build-exe. |
| 9afc0 | 74 65 73 74 2e 7a 69 67 0a 24 20 2e 2f 74 65 73 74 0a 61 74 74 65 6d 70 74 20 74 6f 20 75 73 65 | test.zig.$../test.attempt.to.use |
| 9afe0 | 20 6e 75 6c 6c 20 76 61 6c 75 65 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 37 5f 31 22 3e | .null.value.<span.class="t37_1"> |
| 9b000 | 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f | /home/andy/Downloads/zig/docgen_ |
| 9b020 | 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 35 3a 33 33 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 | tmp/test.zig:5:33</span>:.<span. |
| 9b040 | 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 62 30 61 63 20 69 6e 20 6d 61 69 6e 20 28 74 | class="t2_0">0x22b0ac.in.main.(t |
| 9b060 | 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 76 61 72 20 6e 75 6d 62 65 72 20 3d 20 6f 70 74 | est)</span>.....var.number.=.opt |
| 9b080 | 69 6f 6e 61 6c 5f 6e 75 6d 62 65 72 2e 3f 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ional_number.?;................. |
| 9b0a0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 | ................<span.class="t32 |
| 9b0c0 | 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 37 5f 31 22 | _1">^</span>.<span.class="t37_1" |
| 9b0e0 | 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 | >/home/andy/Downloads/zig/lib/st |
| 9b100 | 64 2f 73 74 61 72 74 2e 7a 69 67 3a 33 32 34 3a 32 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e | d/start.zig:324:22</span>:.<span |
| 9b120 | 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 30 34 63 63 66 20 69 6e 20 73 74 64 2e 73 74 | .class="t2_0">0x204ccf.in.std.st |
| 9b140 | 61 72 74 2e 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 20 28 74 65 73 74 29 3c | art.posixCallMainAndExit.(test)< |
| 9b160 | 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();. |
| 9b180 | 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 |
| 9b1a0 | 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ="t32_1">^</span>.<span.class="t |
| 9b1c0 | 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c | 37_1">/home/andy/Downloads/zig/l |
| 9b1e0 | 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 31 36 32 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c | ib/std/start.zig:162:5</span>:.< |
| 9b200 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 30 34 61 61 32 20 69 6e 20 73 74 | span.class="t2_0">0x204aa2.in.st |
| 9b220 | 64 2e 73 74 61 72 74 2e 5f 73 74 61 72 74 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 | d.start._start.(test)</span>.... |
| 9b240 | 20 40 63 61 6c 6c 28 2e 7b 20 2e 6d 6f 64 69 66 69 65 72 20 3d 20 2e 6e 65 76 65 72 5f 69 6e 6c | .@call(.{..modifier.=..never_inl |
| 9b260 | 69 6e 65 20 7d 2c 20 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 2c 20 2e 7b 7d | ine.},.posixCallMainAndExit,..{} |
| 9b280 | 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 | );.....<span.class="t32_1">^</sp |
| 9b2a0 | 61 6e 3e 0a 28 70 72 6f 63 65 73 73 20 74 65 72 6d 69 6e 61 74 65 64 20 62 79 20 73 69 67 6e 61 | an>.(process.terminated.by.signa |
| 9b2c0 | 6c 29 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 4f 6e 65 20 77 61 | l)</code></pre>........<p>One.wa |
| 9b2e0 | 79 20 74 6f 20 61 76 6f 69 64 20 74 68 69 73 20 63 72 61 73 68 20 69 73 20 74 6f 20 74 65 73 74 | y.to.avoid.this.crash.is.to.test |
| 9b300 | 20 66 6f 72 20 6e 75 6c 6c 20 69 6e 73 74 65 61 64 20 6f 66 20 61 73 73 75 6d 69 6e 67 20 6e 6f | .for.null.instead.of.assuming.no |
| 9b320 | 6e 2d 6e 75 6c 6c 2c 20 77 69 74 68 0a 20 20 20 20 20 20 74 68 65 20 3c 63 6f 64 65 20 63 6c 61 | n-null,.with.......the.<code.cla |
| 9b340 | 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 | ss="zig"><span.class="tok-kw">if |
| 9b360 | 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 0a 20 | </span></code>.expression:</p>.. |
| 9b380 | 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 | .....<p.class="file">test.zig</p |
| 9b3a0 | 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c | ><pre><code.class="zig"><span.cl |
| 9b3c0 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 70 72 69 6e 74 20 | ass="tok-kw">const</span>.print. |
| 9b3e0 | 3d 20 3c 73 70 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 |
| 9b400 | 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" |
| 9b420 | 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 64 65 62 75 67 2e 70 | >"std"</span>).debug.p |
| 9b440 | 72 69 6e 74 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f | rint;.<span.class="tok-kw">pub</ |
| 9b460 | 73 70 61 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 |
| 9b480 | 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</ |
| 9b4a0 | 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 |
| 9b4c0 | 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 |
| 9b4e0 | 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 6e 75 6d 62 | k-kw">const</span>.optional_numb |
| 9b500 | 65 72 3a 20 3f 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c | er:.?<span.class="tok-type">i32< |
| 9b520 | 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e | /span>.=.<span.class="tok-null"> |
| 9b540 | 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | null</span>;......<span.class="t |
| 9b560 | 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 6f 70 74 69 6f 6e 61 6c 5f 6e 75 6d 62 65 | ok-kw">if</span>.(optional_numbe |
| 9b580 | 72 29 20 7c 6e 75 6d 62 65 72 7c 20 7b 0a 20 20 20 20 20 20 20 20 70 72 69 6e 74 28 3c 73 70 61 | r).|number|.{.........print(<spa |
| 9b5a0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 67 6f 74 20 6e 75 6d 62 | n.class="tok-str">"got.numb |
| 9b5c0 | 65 72 3a 20 7b 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 6e 75 6d 62 65 72 7d | er:.{}\n"</span>,..{number} |
| 9b5e0 | 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 |
| 9b600 | 73 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 70 72 69 6e 74 28 3c 73 70 61 6e 20 | se</span>.{.........print(<span. |
| 9b620 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 69 74 27 73 20 6e 75 6c 6c 5c | class="tok-str">"it's.null\ |
| 9b640 | 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 7d 29 3b 0a 20 20 20 20 7d 0a 7d 3c 2f 63 | n"</span>,..{});.....}.}</c |
| 9b660 | 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c | ode></pre><pre><code.class="shel |
| 9b680 | 6c 22 3e 24 20 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 74 65 73 74 2e 7a 69 67 0a 24 20 2e 2f | l">$.zig.build-exe.test.zig.$../ |
| 9b6a0 | 74 65 73 74 0a 69 74 27 73 20 6e 75 6c 6c 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 | test.it's.null.</code></pre>.... |
| 9b6c0 | 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. |
| 9b6e0 | 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>< |
| 9b700 | 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d | /li>.</ul>...............<h2.id= |
| 9b720 | 22 41 74 74 65 6d 70 74 2d 74 6f 2d 55 6e 77 72 61 70 2d 45 72 72 6f 72 22 3e 3c 61 20 68 72 65 | "Attempt-to-Unwrap-Error"><a.hre |
| 9b740 | 66 3d 22 23 74 6f 63 2d 41 74 74 65 6d 70 74 2d 74 6f 2d 55 6e 77 72 61 70 2d 45 72 72 6f 72 22 | f="#toc-Attempt-to-Unwrap-Error" |
| 9b760 | 3e 41 74 74 65 6d 70 74 20 74 6f 20 55 6e 77 72 61 70 20 45 72 72 6f 72 3c 2f 61 3e 20 3c 61 20 | >Attempt.to.Unwrap.Error</a>.<a. |
| 9b780 | 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 41 74 74 65 6d 70 74 2d 74 6f 2d 55 6e | class="hdr".href="#Attempt-to-Un |
| 9b7a0 | 77 72 61 70 2d 45 72 72 6f 72 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c | wrap-Error">..</a></h2>........< |
| 9b7c0 | 70 3e 41 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 | p>At.compile-time:</p>.......<p. |
| 9b7e0 | 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 | class="file">test.zig</p><pre><c |
| 9b800 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ode.class="zig"><span.class="tok |
| 9b820 | 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e | -kw">comptime</span>.{.....<span |
| 9b840 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6e 75 6d | .class="tok-kw">const</span>.num |
| 9b860 | 62 65 72 20 3d 20 67 65 74 4e 75 6d 62 65 72 4f 72 46 61 69 6c 28 29 20 3c 73 70 61 6e 20 63 6c | ber.=.getNumberOrFail().<span.cl |
| 9b880 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 61 74 63 68 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 | ass="tok-kw">catch</span>.<span. |
| 9b8a0 | 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 |
| 9b8c0 | 3e 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 | >;.}..<span.class="tok-kw">fn</s |
| 9b8e0 | 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 |
| 9b900 | 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= |
| 9b920 | 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 |
| 9b940 | 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>.< |
| 9b960 | 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> |
| 9b980 | 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>< |
| 9b9a0 | 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 | /pre><pre><code.class="shell">$. |
| 9b9c0 | 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | zig.test.test.zig.<span.class="t |
| 9b9e0 | 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 32 3a 33 38 3a | 0_1">./docgen_tmp/test.zig:2:38: |
| 9ba00 | 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 31 5f 31 22 3e 65 72 72 6f | .</span><span.class="t31_1">erro |
| 9ba20 | 72 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 63 61 75 | r:.</span><span.class="t0_1">cau |
| 9ba40 | 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 52 65 | ght.unexpected.error.'UnableToRe |
| 9ba60 | 74 75 72 6e 4e 75 6d 62 65 72 27 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 63 6f 6e 73 74 20 6e 75 6d | turnNumber'</span>.....const.num |
| 9ba80 | 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 75 6e | ber.=.getNumberOrFail().catch.un |
| 9baa0 | 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 20 20 | reachable;...................... |
| 9bac0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 | ................<span.class="t32 |
| 9bae0 | 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 | _1">^</span>.</code></pre>...... |
| 9bb00 | 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 70 20 63 6c | ..<p>At.runtime:</p>.......<p.cl |
| 9bb20 | 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 | ass="file">test.zig</p><pre><cod |
| 9bb40 | 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | e.class="zig"><span.class="tok-k |
| 9bb60 | 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 |
| 9bb80 | 73 3d 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>(< |
| 9bba0 | 73 70 61 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 |
| 9bbc0 | 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | uot;</span>);..<span.class="tok- |
| 9bbe0 | 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- |
| 9bc00 | 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 |
| 9bc20 | 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 |
| 9bc40 | 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. |
| 9bc60 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6e 75 6d 62 | class="tok-kw">const</span>.numb |
| 9bc80 | 65 72 20 3d 20 67 65 74 4e 75 6d 62 65 72 4f 72 46 61 69 6c 28 29 20 3c 73 70 61 6e 20 63 6c 61 | er.=.getNumberOrFail().<span.cla |
| 9bca0 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 61 74 63 68 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 | ss="tok-kw">catch</span>.<span.c |
| 9bcc0 | 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> |
| 9bce0 | 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 |
| 9bd00 | 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 |
| 9bd20 | 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 6e 75 6d 62 65 72 7d 29 3b 0a 7d 0a 0a 3c 73 70 61 6e | ot;</span>,..{number});.}..<span |
| 9bd40 | 20 63 6c 61 73 73 3d 22 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. |
| 9bd60 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 67 65 74 4e 75 6d 62 65 72 4f 72 46 61 69 6c 3c 2f | class="tok-fn">getNumberOrFail</ |
| 9bd80 | 73 70 61 6e 3e 28 29 20 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | span>().!<span.class="tok-type"> |
| 9bda0 | 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 |
| 9bdc0 | 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= |
| 9bde0 | 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 55 6e 61 62 6c 65 54 6f 52 65 | "tok-kw">error</span>.UnableToRe |
| 9be00 | 74 75 72 6e 4e 75 6d 62 65 72 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c | turnNumber;.}</code></pre><pre>< |
| 9be20 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 62 75 69 6c 64 2d 65 | code.class="shell">$.zig.build-e |
| 9be40 | 78 65 20 74 65 73 74 2e 7a 69 67 0a 24 20 2e 2f 74 65 73 74 0a 61 74 74 65 6d 70 74 20 74 6f 20 | xe.test.zig.$../test.attempt.to. |
| 9be60 | 75 6e 77 72 61 70 20 65 72 72 6f 72 3a 20 55 6e 61 62 6c 65 54 6f 52 65 74 75 72 6e 4e 75 6d 62 | unwrap.error:.UnableToReturnNumb |
| 9be80 | 65 72 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 | er.<span.class="t37_1">/home/and |
| 9bea0 | 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e | y/Downloads/zig/docgen_tmp/test. |
| 9bec0 | 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 74 32 5f | zig:9:5</span>:.<span.class="t2_ |
| 9bee0 | 30 22 3e 30 78 32 33 32 30 66 63 20 69 6e 20 67 65 74 4e 75 6d 62 65 72 4f 72 46 61 69 6c 20 28 | 0">0x2320fc.in.getNumberOrFail.( |
| 9bf00 | 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 72 65 74 75 72 6e 20 65 72 72 6f 72 2e 55 6e | test)</span>.....return.error.Un |
| 9bf20 | 61 62 6c 65 54 6f 52 65 74 75 72 6e 4e 75 6d 62 65 72 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | ableToReturnNumber;.....<span.cl |
| 9bf40 | 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | ass="t32_1">^</span>.<span.class |
| 9bf60 | 3d 22 74 33 37 5f 31 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 | ="t37_1">???:?:?</span>:.<span.c |
| 9bf80 | 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 30 36 63 63 63 20 69 6e 20 3f 3f 3f 20 28 3f 3f 3f | lass="t2_0">0x206ccc.in.???.(??? |
| 9bfa0 | 29 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 37 5f 31 22 3e 2f 68 6f | )</span>.<span.class="t37_1">/ho |
| 9bfc0 | 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 | me/andy/Downloads/zig/docgen_tmp |
| 9bfe0 | 2f 74 65 73 74 2e 7a 69 67 3a 34 3a 33 38 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 | /test.zig:4:38</span>:.<span.cla |
| 9c000 | 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 62 30 66 62 20 69 6e 20 6d 61 69 6e 20 28 74 65 73 74 | ss="t2_0">0x22b0fb.in.main.(test |
| 9c020 | 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 63 6f 6e 73 74 20 6e 75 6d 62 65 72 20 3d 20 67 65 74 4e | )</span>.....const.number.=.getN |
| 9c040 | 75 6d 62 65 72 4f 72 46 61 69 6c 28 29 20 63 61 74 63 68 20 75 6e 72 65 61 63 68 61 62 6c 65 3b | umberOrFail().catch.unreachable; |
| 9c060 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ................................ |
| 9c080 | 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 | ......<span.class="t32_1">^</spa |
| 9c0a0 | 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 | n>.<span.class="t37_1">/home/and |
| 9c0c0 | 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 | y/Downloads/zig/lib/std/start.zi |
| 9c0e0 | 67 3a 33 32 34 3a 32 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 | g:324:22</span>:.<span.class="t2 |
| 9c100 | 5f 30 22 3e 30 78 32 30 34 63 64 66 20 69 6e 20 73 74 64 2e 73 74 61 72 74 2e 70 6f 73 69 78 43 | _0">0x204cdf.in.std.start.posixC |
| 9c120 | 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 | allMainAndExit.(test)</span>.... |
| 9c140 | 20 20 20 20 20 20 20 20 20 72 6f 6f 74 2e 6d 61 69 6e 28 29 3b 0a 20 20 20 20 20 20 20 20 20 20 | .........root.main();........... |
| 9c160 | 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e | ...........<span.class="t32_1">^ |
| 9c180 | 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 37 5f 31 22 3e 2f 68 6f 6d | </span>.<span.class="t37_1">/hom |
| 9c1a0 | 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 | e/andy/Downloads/zig/lib/std/sta |
| 9c1c0 | 72 74 2e 7a 69 67 3a 31 36 32 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 | rt.zig:162:5</span>:.<span.class |
| 9c1e0 | 3d 22 74 32 5f 30 22 3e 30 78 32 30 34 61 62 32 20 69 6e 20 73 74 64 2e 73 74 61 72 74 2e 5f 73 | ="t2_0">0x204ab2.in.std.start._s |
| 9c200 | 74 61 72 74 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 40 63 61 6c 6c 28 2e 7b 20 | tart.(test)</span>.....@call(.{. |
| 9c220 | 2e 6d 6f 64 69 66 69 65 72 20 3d 20 2e 6e 65 76 65 72 5f 69 6e 6c 69 6e 65 20 7d 2c 20 70 6f 73 | .modifier.=..never_inline.},.pos |
| 9c240 | 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 2c 20 2e 7b 7d 29 3b 0a 20 20 20 20 3c 73 70 | ixCallMainAndExit,..{});.....<sp |
| 9c260 | 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 28 70 72 6f 63 65 | an.class="t32_1">^</span>.(proce |
| 9c280 | 73 73 20 74 65 72 6d 69 6e 61 74 65 64 20 62 79 20 73 69 67 6e 61 6c 29 3c 2f 63 6f 64 65 3e 3c | ss.terminated.by.signal)</code>< |
| 9c2a0 | 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 4f 6e 65 20 77 61 79 20 74 6f 20 61 76 6f 69 64 | /pre>........<p>One.way.to.avoid |
| 9c2c0 | 20 74 68 69 73 20 63 72 61 73 68 20 69 73 20 74 6f 20 74 65 73 74 20 66 6f 72 20 61 6e 20 65 72 | .this.crash.is.to.test.for.an.er |
| 9c2e0 | 72 6f 72 20 69 6e 73 74 65 61 64 20 6f 66 20 61 73 73 75 6d 69 6e 67 20 61 20 73 75 63 63 65 73 | ror.instead.of.assuming.a.succes |
| 9c300 | 73 66 75 6c 20 72 65 73 75 6c 74 2c 20 77 69 74 68 0a 20 20 20 20 20 20 74 68 65 20 3c 63 6f 64 | sful.result,.with.......the.<cod |
| 9c320 | 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | e.class="zig"><span.class="tok-k |
| 9c340 | 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 65 78 70 72 65 73 73 69 6f 6e 3a 3c | w">if</span></code>.expression:< |
| 9c360 | 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a | /p>.......<p.class="file">test.z |
| 9c380 | 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 | ig</p><pre><code.class="zig"><sp |
| 9c3a0 | 61 6e 20 63 6c 61 73 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 |
| 9c3c0 | 72 69 6e 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 | rint.=.<span.class="tok-builtin" |
| 9c3e0 | 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 |
| 9c400 | 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 64 65 | -str">"std"</span>).de |
| 9c420 | 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" |
| 9c440 | 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" |
| 9c460 | 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"> |
| 9c480 | 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 |
| 9c4a0 | 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 |
| 9c4c0 | 73 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. |
| 9c4e0 | 3d 20 67 65 74 4e 75 6d 62 65 72 4f 72 46 61 69 6c 28 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 | =.getNumberOrFail();......<span. |
| 9c500 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 72 65 73 75 6c 74 | class="tok-kw">if</span>.(result |
| 9c520 | 29 20 7c 6e 75 6d 62 65 72 7c 20 7b 0a 20 20 20 20 20 20 20 20 70 72 69 6e 74 28 3c 73 70 61 6e | ).|number|.{.........print(<span |
| 9c540 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 67 6f 74 20 6e 75 6d 62 65 | .class="tok-str">"got.numbe |
| 9c560 | 72 3a 20 7b 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 6e 75 6d 62 65 72 7d 29 | r:.{}\n"</span>,..{number}) |
| 9c580 | 3b 0a 20 20 20 20 7d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 | ;.....}.<span.class="tok-kw">els |
| 9c5a0 | 65 3c 2f 73 70 61 6e 3e 20 7c 65 72 72 7c 20 7b 0a 20 20 20 20 20 20 20 20 70 72 69 6e 74 28 3c | e</span>.|err|.{.........print(< |
| 9c5c0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 67 6f 74 20 65 | span.class="tok-str">"got.e |
| 9c5e0 | 72 72 6f 72 3a 20 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 | rror:.{}\n"</span>,..{<span |
| 9c600 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 65 72 72 6f 72 4e 61 6d 65 3c | .class="tok-builtin">@errorName< |
| 9c620 | 2f 73 70 61 6e 3e 28 65 72 72 29 7d 29 3b 0a 20 20 20 20 7d 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c | /span>(err)});.....}.}..<span.cl |
| 9c640 | 61 73 73 3d 22 74 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 |
| 9c660 | 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 67 65 74 4e 75 6d 62 65 72 4f 72 46 61 69 6c 3c 2f 73 70 61 | ss="tok-fn">getNumberOrFail</spa |
| 9c680 | 6e 3e 28 29 20 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 | n>().!<span.class="tok-type">i32 |
| 9c6a0 | 3c 2f 73 70 61 6e 3e 20 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 |
| 9c6c0 | 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 |
| 9c6e0 | 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 55 6e 61 62 6c 65 54 6f 52 65 74 75 72 | k-kw">error</span>.UnableToRetur |
| 9c700 | 6e 4e 75 6d 62 65 72 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 | nNumber;.}</code></pre><pre><cod |
| 9c720 | 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 | e.class="shell">$.zig.build-exe. |
| 9c740 | 74 65 73 74 2e 7a 69 67 0a 24 20 2e 2f 74 65 73 74 0a 67 6f 74 20 65 72 72 6f 72 3a 20 55 6e 61 | test.zig.$../test.got.error:.Una |
| 9c760 | 62 6c 65 54 6f 52 65 74 75 72 6e 4e 75 6d 62 65 72 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a | bleToReturnNumber.</code></pre>. |
| 9c780 | 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> |
| 9c7a0 | 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 69 | <a.href="#Errors">Errors</a></li |
| 9c7c0 | 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 49 6e | >.</ul>...............<h2.id="In |
| 9c7e0 | 76 61 6c 69 64 2d 45 72 72 6f 72 2d 43 6f 64 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d | valid-Error-Code"><a.href="#toc- |
| 9c800 | 49 6e 76 61 6c 69 64 2d 45 72 72 6f 72 2d 43 6f 64 65 22 3e 49 6e 76 61 6c 69 64 20 45 72 72 6f | Invalid-Error-Code">Invalid.Erro |
| 9c820 | 72 20 43 6f 64 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 | r.Code</a>.<a.class="hdr".href=" |
| 9c840 | 23 49 6e 76 61 6c 69 64 2d 45 72 72 6f 72 2d 43 6f 64 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e | #Invalid-Error-Code">..</a></h2> |
| 9c860 | 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>. |
| 9c880 | 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f | ......<p.class="file">test.zig</ |
| 9c8a0 | 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 | p><pre><code.class="zig"><span.c |
| 9c8c0 | 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>.{. |
| 9c8e0 | 20 20 20 20 3c 73 70 61 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</ |
| 9c900 | 73 70 61 6e 3e 20 65 72 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | span>.err.=.<span.class="tok-kw" |
| 9c920 | 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 41 6e 45 72 72 6f 72 3b 0a 20 20 20 20 3c 73 70 61 6e | >error</span>.AnError;.....<span |
| 9c940 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6e 75 6d | .class="tok-kw">const</span>.num |
| 9c960 | 62 65 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e | ber.=.<span.class="tok-builtin"> |
| 9c980 | 40 65 72 72 6f 72 54 6f 49 6e 74 3c 2f 73 70 61 6e 3e 28 65 72 72 29 20 2b 20 3c 73 70 61 6e 20 | @errorToInt</span>(err).+.<span. |
| 9c9a0 | 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 20 | class="tok-number">10</span>;... |
| 9c9c0 | 20 20 3c 73 70 61 6e 20 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 |
| 9c9e0 | 61 6e 3e 20 69 6e 76 61 6c 69 64 5f 65 72 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | an>.invalid_err.=.<span.class="t |
| 9ca00 | 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6e 74 54 6f 45 72 72 6f 72 3c 2f 73 70 61 6e 3e 28 6e | ok-builtin">@intToError</span>(n |
| 9ca20 | 75 6d 62 65 72 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 | umber);.}</code></pre><pre><code |
| 9ca40 | 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a | .class="shell">$.zig.test.test.z |
| 9ca60 | 69 67 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 | ig.<span.class="t0_1">./docgen_t |
| 9ca80 | 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 34 3a 32 35 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 | mp/test.zig:4:25:.</span><span.c |
| 9caa0 | 6c 61 73 73 3d 22 74 33 31 5f 31 22 3e 65 72 72 6f 72 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e | lass="t31_1">error:.</span><span |
| 9cac0 | 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 69 6e 74 65 67 65 72 20 76 61 6c 75 65 20 31 31 20 72 | .class="t0_1">integer.value.11.r |
| 9cae0 | 65 70 72 65 73 65 6e 74 73 20 6e 6f 20 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 63 6f | epresents.no.error</span>.....co |
| 9cb00 | 6e 73 74 20 69 6e 76 61 6c 69 64 5f 65 72 72 20 3d 20 40 69 6e 74 54 6f 45 72 72 6f 72 28 6e 75 | nst.invalid_err.=.@intToError(nu |
| 9cb20 | 6d 62 65 72 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c | mber);.........................< |
| 9cb40 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 2f 63 6f | span.class="t32_1">^</span>.</co |
| 9cb60 | 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 74 20 72 75 6e 74 69 6d 65 3a 3c | de></pre>........<p>At.runtime:< |
| 9cb80 | 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a | /p>.......<p.class="file">test.z |
| 9cba0 | 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 | ig</p><pre><code.class="zig"><sp |
| 9cbc0 | 61 6e 20 63 6c 61 73 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 |
| 9cbe0 | 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">@ |
| 9cc00 | 69 6d 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 |
| 9cc20 | 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 3c 73 | tr">"std"</span>);..<s |
| 9cc40 | 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 |
| 9cc60 | 70 61 6e 20 63 6c 61 73 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 |
| 9cc80 | 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>(). |
| 9cca0 | 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 |
| 9ccc0 | 6e 3e 20 7b 0a 20 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 |
| 9cce0 | 72 3c 2f 73 70 61 6e 3e 20 65 72 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | r</span>.err.=.<span.class="tok- |
| 9cd00 | 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 41 6e 45 72 72 6f 72 3b 0a 20 20 20 20 3c 73 | kw">error</span>.AnError;.....<s |
| 9cd20 | 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 75 | pan.class="tok-kw">var</span>.nu |
| 9cd40 | 6d 62 65 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 | mber.=.<span.class="tok-builtin" |
| 9cd60 | 3e 40 65 72 72 6f 72 54 6f 49 6e 74 3c 2f 73 70 61 6e 3e 28 65 72 72 29 20 2b 20 3c 73 70 61 6e | >@errorToInt</span>(err).+.<span |
| 9cd80 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 30 30 3c 2f 73 70 61 6e 3e 3b 0a | .class="tok-number">500</span>;. |
| 9cda0 | 20 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 |
| 9cdc0 | 61 6e 3e 20 69 6e 76 61 6c 69 64 5f 65 72 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | an>.invalid_err.=.<span.class="t |
| 9cde0 | 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6e 74 54 6f 45 72 72 6f 72 3c 2f 73 70 61 6e 3e 28 6e | ok-builtin">@intToError</span>(n |
| 9ce00 | 75 6d 62 65 72 29 3b 0a 20 20 20 20 73 74 64 2e 64 65 62 75 67 2e 70 72 69 6e 74 28 3c 73 70 61 | umber);.....std.debug.print(<spa |
| 9ce20 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 76 61 6c 75 65 3a 20 7b | n.class="tok-str">"value:.{ |
| 9ce40 | 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 6e 75 6d 62 65 72 7d 29 3b 0a 7d 3c | }\n"</span>,..{number});.}< |
| 9ce60 | 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 | /code></pre><pre><code.class="sh |
| 9ce80 | 65 6c 6c 22 3e 24 20 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 74 65 73 74 2e 7a 69 67 0a 24 20 | ell">$.zig.build-exe.test.zig.$. |
| 9cea0 | 2e 2f 74 65 73 74 0a 69 6e 76 61 6c 69 64 20 65 72 72 6f 72 20 63 6f 64 65 0a 3c 73 70 61 6e 20 | ./test.invalid.error.code.<span. |
| 9cec0 | 63 6c 61 73 73 3d 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 | class="t37_1">/home/andy/Downloa |
| 9cee0 | 64 73 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 36 3a 32 33 3c | ds/zig/docgen_tmp/test.zig:6:23< |
| 9cf00 | 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 62 | /span>:.<span.class="t2_0">0x22b |
| 9cf20 | 31 31 34 20 69 6e 20 6d 61 69 6e 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 76 61 | 114.in.main.(test)</span>.....va |
| 9cf40 | 72 20 69 6e 76 61 6c 69 64 5f 65 72 72 20 3d 20 40 69 6e 74 54 6f 45 72 72 6f 72 28 6e 75 6d 62 | r.invalid_err.=.@intToError(numb |
| 9cf60 | 65 72 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e | er);.......................<span |
| 9cf80 | 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c | .class="t32_1">^</span>.<span.cl |
| 9cfa0 | 61 73 73 3d 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 | ass="t37_1">/home/andy/Downloads |
| 9cfc0 | 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 33 32 34 3a 32 32 3c 2f 73 | /zig/lib/std/start.zig:324:22</s |
| 9cfe0 | 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 30 34 63 66 | pan>:.<span.class="t2_0">0x204cf |
| 9d000 | 66 20 69 6e 20 73 74 64 2e 73 74 61 72 74 2e 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 | f.in.std.start.posixCallMainAndE |
| 9d020 | 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 |
| 9d040 | 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();...................... |
| 9d060 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 | <span.class="t32_1">^</span>.<sp |
| 9d080 | 61 6e 20 63 6c 61 73 73 3d 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e | an.class="t37_1">/home/andy/Down |
| 9d0a0 | 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 31 36 32 3a | loads/zig/lib/std/start.zig:162: |
| 9d0c0 | 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 | 5</span>:.<span.class="t2_0">0x2 |
| 9d0e0 | 30 34 61 64 32 20 69 6e 20 73 74 64 2e 73 74 61 72 74 2e 5f 73 74 61 72 74 20 28 74 65 73 74 29 | 04ad2.in.std.start._start.(test) |
| 9d100 | 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 40 63 61 6c 6c 28 2e 7b 20 2e 6d 6f 64 69 66 69 65 72 20 3d | </span>.....@call(.{..modifier.= |
| 9d120 | 20 2e 6e 65 76 65 72 5f 69 6e 6c 69 6e 65 20 7d 2c 20 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 | ..never_inline.},.posixCallMainA |
| 9d140 | 6e 64 45 78 69 74 2c 20 2e 7b 7d 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ndExit,..{});.....<span.class="t |
| 9d160 | 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 28 70 72 6f 63 65 73 73 20 74 65 72 6d 69 6e 61 74 | 32_1">^</span>.(process.terminat |
| 9d180 | 65 64 20 62 79 20 73 69 67 6e 61 6c 29 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 | ed.by.signal)</code></pre>...... |
| 9d1a0 | 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 49 6e 76 61 6c 69 64 2d 45 6e 75 6d 2d 43 61 | .........<h2.id="Invalid-Enum-Ca |
| 9d1c0 | 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 6e 75 6d 2d 43 | st"><a.href="#toc-Invalid-Enum-C |
| 9d1e0 | 61 73 74 22 3e 49 6e 76 61 6c 69 64 20 45 6e 75 6d 20 43 61 73 74 3c 2f 61 3e 20 3c 61 20 63 6c | ast">Invalid.Enum.Cast</a>.<a.cl |
| 9d200 | 61 73 73 3d 22 68 64 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 | ass="hdr".href="#Invalid-Enum-Ca |
| 9d220 | 73 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 74 20 63 6f 6d | st">..</a></h2>........<p>At.com |
| 9d240 | 70 69 6c 65 2d 74 69 6d 65 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 | pile-time:</p>.......<p.class="f |
| 9d260 | 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 | ile">test.zig</p><pre><code.clas |
| 9d280 | 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e | s="zig"><span.class="tok-kw">con |
| 9d2a0 | 73 74 3c 2f 73 70 61 6e 3e 20 46 6f 6f 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | st</span>.Foo.=.<span.class="tok |
| 9d2c0 | 2d 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 | -kw">enum</span>.{.....a,.....b, |
| 9d2e0 | 0a 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 | .....c,.};.<span.class="tok-kw"> |
| 9d300 | 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 |
| 9d320 | 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 6e | s="tok-kw">const</span>.a:.<span |
| 9d340 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 | .class="tok-type">u2</span>.=.<s |
| 9d360 | 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>; |
| 9d380 | 0a 20 20 20 20 3c 73 70 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< |
| 9d3a0 | 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 6c | /span>.b.=.<span.class="tok-buil |
| 9d3c0 | 74 69 6e 22 3e 40 69 6e 74 54 6f 45 6e 75 6d 3c 2f 73 70 61 6e 3e 28 46 6f 6f 2c 20 61 29 3b 0a | tin">@intToEnum</span>(Foo,.a);. |
| 9d3e0 | 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | }</code></pre><pre><code.class=" |
| 9d400 | 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 3c 73 70 61 6e | shell">$.zig.test.test.zig.<span |
| 9d420 | 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e | .class="t0_1">./docgen_tmp/test. |
| 9d440 | 7a 69 67 3a 38 3a 31 35 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 | zig:8:15:.</span><span.class="t3 |
| 9d460 | 31 5f 31 22 3e 65 72 72 6f 72 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | 1_1">error:.</span><span.class=" |
| 9d480 | 74 30 5f 31 22 3e 65 6e 75 6d 20 27 46 6f 6f 27 20 68 61 73 20 6e 6f 20 74 61 67 20 6d 61 74 63 | t0_1">enum.'Foo'.has.no.tag.matc |
| 9d4a0 | 68 69 6e 67 20 69 6e 74 65 67 65 72 20 76 61 6c 75 65 20 33 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 | hing.integer.value.3</span>..... |
| 9d4c0 | 63 6f 6e 73 74 20 62 20 3d 20 40 69 6e 74 54 6f 45 6e 75 6d 28 46 6f 6f 2c 20 61 29 3b 0a 20 20 | const.b.=.@intToEnum(Foo,.a);... |
| 9d4e0 | 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e | ............<span.class="t32_1"> |
| 9d500 | 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f | ^</span>.<span.class="t0_1">./do |
| 9d520 | 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 31 3a 31 33 3a 20 3c 2f 73 70 61 6e 3e 3c | cgen_tmp/test.zig:1:13:.</span>< |
| 9d540 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 36 5f 31 22 3e 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e 3e | span.class="t36_1">note:.</span> |
| 9d560 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 27 46 6f 6f 27 20 64 65 63 6c 61 72 65 | <span.class="t0_1">'Foo'.declare |
| 9d580 | 64 20 68 65 72 65 3c 2f 73 70 61 6e 3e 0a 63 6f 6e 73 74 20 46 6f 6f 20 3d 20 65 6e 75 6d 20 7b | d.here</span>.const.Foo.=.enum.{ |
| 9d5a0 | 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 33 32 5f 31 22 | .............<span.class="t32_1" |
| 9d5c0 | 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c | >^</span>.</code></pre>........< |
| 9d5e0 | 70 3e 41 74 20 72 75 6e 74 69 6d 65 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 | p>At.runtime:</p>.......<p.class |
| 9d600 | 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 | ="file">test.zig</p><pre><code.c |
| 9d620 | 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | lass="zig"><span.class="tok-kw"> |
| 9d640 | 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=" |
| 9d660 | 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 |
| 9d680 | 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" |
| 9d6a0 | 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | ;</span>);..<span.class="tok-kw" |
| 9d6c0 | 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= |
| 9d6e0 | 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 2c 0a 20 20 | "tok-kw">enum</span>.{.....a,... |
| 9d700 | 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 73 3d 22 74 6f 6b | ..b,.....c,.};..<span.class="tok |
| 9d720 | 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 |
| 9d740 | 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- |
| 9d760 | 66 6e 22 3e 6d 61 69 6e 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | fn">main</span>().<span.class="t |
| 9d780 | 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 |
| 9d7a0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 61 3a 20 3c 73 | .class="tok-kw">var</span>.a:.<s |
| 9d7c0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 32 3c 2f 73 70 61 6e 3e 20 3d | pan.class="tok-type">u2</span>.= |
| 9d7e0 | 20 3c 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 |
| 9d800 | 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 | n>;.....<span.class="tok-kw">var |
| 9d820 | 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 |
| 9d840 | 6c 74 69 6e 22 3e 40 69 6e 74 54 6f 45 6e 75 6d 3c 2f 73 70 61 6e 3e 28 46 6f 6f 2c 20 61 29 3b | ltin">@intToEnum</span>(Foo,.a); |
| 9d860 | 0a 20 20 20 20 73 74 64 2e 64 65 62 75 67 2e 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 | .....std.debug.print(<span.class |
| 9d880 | 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 76 61 6c 75 65 3a 20 7b 7d 5c 6e 26 71 75 6f | ="tok-str">"value:.{}\n&quo |
| 9d8a0 | 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 | t;</span>,..{<span.class="tok-bu |
| 9d8c0 | 69 6c 74 69 6e 22 3e 40 74 61 67 4e 61 6d 65 3c 2f 73 70 61 6e 3e 28 62 29 7d 29 3b 0a 7d 3c 2f | iltin">@tagName</span>(b)});.}</ |
| 9d8e0 | 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 | code></pre><pre><code.class="she |
| 9d900 | 6c 6c 22 3e 24 20 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 74 65 73 74 2e 7a 69 67 0a 24 20 2e | ll">$.zig.build-exe.test.zig.$.. |
| 9d920 | 2f 74 65 73 74 0a 69 6e 76 61 6c 69 64 20 65 6e 75 6d 20 76 61 6c 75 65 0a 3c 73 70 61 6e 20 63 | /test.invalid.enum.value.<span.c |
| 9d940 | 6c 61 73 73 3d 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 | lass="t37_1">/home/andy/Download |
| 9d960 | 73 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 31 31 3a 31 33 3c | s/zig/docgen_tmp/test.zig:11:13< |
| 9d980 | 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 62 | /span>:.<span.class="t2_0">0x22b |
| 9d9a0 | 31 32 63 20 69 6e 20 6d 61 69 6e 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 76 61 | 12c.in.main.(test)</span>.....va |
| 9d9c0 | 72 20 62 20 3d 20 40 69 6e 74 54 6f 45 6e 75 6d 28 46 6f 6f 2c 20 61 29 3b 0a 20 20 20 20 20 20 | r.b.=.@intToEnum(Foo,.a);....... |
| 9d9e0 | 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 | ......<span.class="t32_1">^</spa |
| 9da00 | 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 | n>.<span.class="t37_1">/home/and |
| 9da20 | 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 | y/Downloads/zig/lib/std/start.zi |
| 9da40 | 67 3a 33 32 34 3a 32 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 | g:324:22</span>:.<span.class="t2 |
| 9da60 | 5f 30 22 3e 30 78 32 30 34 64 33 66 20 69 6e 20 73 74 64 2e 73 74 61 72 74 2e 70 6f 73 69 78 43 | _0">0x204d3f.in.std.start.posixC |
| 9da80 | 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 | allMainAndExit.(test)</span>.... |
| 9daa0 | 20 20 20 20 20 20 20 20 20 72 6f 6f 74 2e 6d 61 69 6e 28 29 3b 0a 20 20 20 20 20 20 20 20 20 20 | .........root.main();........... |
| 9dac0 | 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e | ...........<span.class="t32_1">^ |
| 9dae0 | 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 37 5f 31 22 3e 2f 68 6f 6d | </span>.<span.class="t37_1">/hom |
| 9db00 | 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 | e/andy/Downloads/zig/lib/std/sta |
| 9db20 | 72 74 2e 7a 69 67 3a 31 36 32 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 | rt.zig:162:5</span>:.<span.class |
| 9db40 | 3d 22 74 32 5f 30 22 3e 30 78 32 30 34 62 31 32 20 69 6e 20 73 74 64 2e 73 74 61 72 74 2e 5f 73 | ="t2_0">0x204b12.in.std.start._s |
| 9db60 | 74 61 72 74 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 40 63 61 6c 6c 28 2e 7b 20 | tart.(test)</span>.....@call(.{. |
| 9db80 | 2e 6d 6f 64 69 66 69 65 72 20 3d 20 2e 6e 65 76 65 72 5f 69 6e 6c 69 6e 65 20 7d 2c 20 70 6f 73 | .modifier.=..never_inline.},.pos |
| 9dba0 | 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 2c 20 2e 7b 7d 29 3b 0a 20 20 20 20 3c 73 70 | ixCallMainAndExit,..{});.....<sp |
| 9dbc0 | 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 28 70 72 6f 63 65 | an.class="t32_1">^</span>.(proce |
| 9dbe0 | 73 73 20 74 65 72 6d 69 6e 61 74 65 64 20 62 79 20 73 69 67 6e 61 6c 29 3c 2f 63 6f 64 65 3e 3c | ss.terminated.by.signal)</code>< |
| 9dc00 | 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 49 6e 76 | /pre>................<h2.id="Inv |
| 9dc20 | 61 6c 69 64 2d 45 72 72 6f 72 2d 53 65 74 2d 43 61 73 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 | alid-Error-Set-Cast"><a.href="#t |
| 9dc40 | 6f 63 2d 49 6e 76 61 6c 69 64 2d 45 72 72 6f 72 2d 53 65 74 2d 43 61 73 74 22 3e 49 6e 76 61 6c | oc-Invalid-Error-Set-Cast">Inval |
| 9dc60 | 69 64 20 45 72 72 6f 72 20 53 65 74 20 43 61 73 74 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 | id.Error.Set.Cast</a>.<a.class=" |
| 9dc80 | 68 64 72 22 20 68 72 65 66 3d 22 23 49 6e 76 61 6c 69 64 2d 45 72 72 6f 72 2d 53 65 74 2d 43 61 | hdr".href="#Invalid-Error-Set-Ca |
| 9dca0 | 73 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 74 20 63 6f 6d | st">..</a></h2>........<p>At.com |
| 9dcc0 | 70 69 6c 65 2d 74 69 6d 65 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 | pile-time:</p>.......<p.class="f |
| 9dce0 | 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 | ile">test.zig</p><pre><code.clas |
| 9dd00 | 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e | s="zig"><span.class="tok-kw">con |
| 9dd20 | 73 74 3c 2f 73 70 61 6e 3e 20 53 65 74 31 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | st</span>.Set1.=.<span.class="to |
| 9dd40 | 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 7b 0a 20 20 20 20 41 2c 0a 20 20 20 20 42 | k-kw">error</span>{.....A,.....B |
| 9dd60 | 2c 0a 7d 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c | ,.};.<span.class="tok-kw">const< |
| 9dd80 | 2f 73 70 61 6e 3e 20 53 65 74 32 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | /span>.Set2.=.<span.class="tok-k |
| 9dda0 | 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 7b 0a 20 20 20 20 41 2c 0a 20 20 20 20 43 2c 0a 7d | w">error</span>{.....A,.....C,.} |
| 9ddc0 | 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 65 3c | ;.<span.class="tok-kw">comptime< |
| 9dde0 | 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 5f 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | /span>.{....._.=.<span.class="to |
| 9de00 | 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 65 72 72 53 65 74 43 61 73 74 3c 2f 73 70 61 6e 3e 28 53 65 | k-builtin">@errSetCast</span>(Se |
| 9de20 | 74 32 2c 20 53 65 74 31 2e 42 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e | t2,.Set1.B);.}</code></pre><pre> |
| 9de40 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 | <code.class="shell">$.zig.test.t |
| 9de60 | 65 73 74 2e 7a 69 67 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 | est.zig.<span.class="t0_1">./doc |
| 9de80 | 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 31 30 3a 39 3a 20 3c 2f 73 70 61 6e 3e 3c 73 | gen_tmp/test.zig:10:9:.</span><s |
| 9dea0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 31 5f 31 22 3e 65 72 72 6f 72 3a 20 3c 2f 73 70 61 6e 3e | pan.class="t31_1">error:.</span> |
| 9dec0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 65 72 72 6f 72 2e 42 20 6e 6f 74 20 61 | <span.class="t0_1">error.B.not.a |
| 9dee0 | 20 6d 65 6d 62 65 72 20 6f 66 20 65 72 72 6f 72 20 73 65 74 20 27 53 65 74 32 27 3c 2f 73 70 61 | .member.of.error.set.'Set2'</spa |
| 9df00 | 6e 3e 0a 20 20 20 20 5f 20 3d 20 40 65 72 72 53 65 74 43 61 73 74 28 53 65 74 32 2c 20 53 65 74 | n>....._.=.@errSetCast(Set2,.Set |
| 9df20 | 31 2e 42 29 3b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 | 1.B);.........<span.class="t32_1 |
| 9df40 | 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 | ">^</span>.</code></pre>........ |
| 9df60 | 3c 70 3e 41 74 20 72 75 6e 74 69 6d 65 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 | <p>At.runtime:</p>.......<p.clas |
| 9df80 | 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 | s="file">test.zig</p><pre><code. |
| 9dfa0 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | class="zig"><span.class="tok-kw" |
| 9dfc0 | 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= |
| 9dfe0 | 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 |
| 9e000 | 61 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 |
| 9e020 | 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 |
| 9e040 | 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 53 65 74 31 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | ">const</span>.Set1.=.<span.clas |
| 9e060 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 7b 0a 20 20 20 20 41 2c 0a | s="tok-kw">error</span>{.....A,. |
| 9e080 | 20 20 20 20 42 2c 0a 7d 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 | ....B,.};.<span.class="tok-kw">c |
| 9e0a0 | 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 53 65 74 32 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | onst</span>.Set2.=.<span.class=" |
| 9e0c0 | 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 7b 0a 20 20 20 20 41 2c 0a 20 20 20 | tok-kw">error</span>{.....A,.... |
| 9e0e0 | 20 43 2c 0a 7d 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c | .C,.};.<span.class="tok-kw">pub< |
| 9e100 | 2f 73 70 61 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</ |
| 9e120 | 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< |
| 9e140 | 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"> |
| 9e160 | 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 66 6f 6f 28 53 65 74 31 2e 42 29 3b 0a 7d | void</span>.{.....foo(Set1.B);.} |
| 9e180 | 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>. |
| 9e1a0 | 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>( |
| 9e1c0 | 73 65 74 31 3a 20 53 65 74 31 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | set1:.Set1).<span.class="tok-typ |
| 9e1e0 | 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 |
| 9e200 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 78 20 3d 20 3c 73 70 61 6e | ="tok-kw">const</span>.x.=.<span |
| 9e220 | 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 53 65 74 43 61 73 74 | .class="tok-builtin">@errSetCast |
| 9e240 | 3c 2f 73 70 61 6e 3e 28 53 65 74 32 2c 20 73 65 74 31 29 3b 0a 20 20 20 20 73 74 64 2e 64 65 62 | </span>(Set2,.set1);.....std.deb |
| 9e260 | 75 67 2e 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 | ug.print(<span.class="tok-str">& |
| 9e280 | 71 75 6f 74 3b 76 61 6c 75 65 3a 20 7b 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e | quot;value:.{}\n"</span>,.. |
| 9e2a0 | 7b 78 7d 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 | {x});.}</code></pre><pre><code.c |
| 9e2c0 | 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 74 65 73 | lass="shell">$.zig.build-exe.tes |
| 9e2e0 | 74 2e 7a 69 67 0a 24 20 2e 2f 74 65 73 74 0a 69 6e 76 61 6c 69 64 20 65 72 72 6f 72 20 63 6f 64 | t.zig.$../test.invalid.error.cod |
| 9e300 | 65 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 | e.<span.class="t37_1">/home/andy |
| 9e320 | 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a | /Downloads/zig/docgen_tmp/test.z |
| 9e340 | 69 67 3a 31 35 3a 31 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 | ig:15:15</span>:.<span.class="t2 |
| 9e360 | 5f 30 22 3e 30 78 32 33 32 31 30 63 20 69 6e 20 66 6f 6f 20 28 74 65 73 74 29 3c 2f 73 70 61 6e | _0">0x23210c.in.foo.(test)</span |
| 9e380 | 3e 0a 20 20 20 20 63 6f 6e 73 74 20 78 20 3d 20 40 65 72 72 53 65 74 43 61 73 74 28 53 65 74 32 | >.....const.x.=.@errSetCast(Set2 |
| 9e3a0 | 2c 20 73 65 74 31 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | ,.set1);...............<span.cla |
| 9e3c0 | 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ss="t32_1">^</span>.<span.class= |
| 9e3e0 | 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 | "t37_1">/home/andy/Downloads/zig |
| 9e400 | 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 31 32 3a 38 3c 2f 73 70 61 6e 3e | /docgen_tmp/test.zig:12:8</span> |
| 9e420 | 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 62 30 66 64 20 69 6e | :.<span.class="t2_0">0x22b0fd.in |
| 9e440 | 20 6d 61 69 6e 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 66 6f 6f 28 53 65 74 31 | .main.(test)</span>.....foo(Set1 |
| 9e460 | 2e 42 29 3b 0a 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e | .B);........<span.class="t32_1"> |
| 9e480 | 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 37 5f 31 22 3e 2f 68 6f | ^</span>.<span.class="t37_1">/ho |
| 9e4a0 | 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 | me/andy/Downloads/zig/lib/std/st |
| 9e4c0 | 61 72 74 2e 7a 69 67 3a 33 32 34 3a 32 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 | art.zig:324:22</span>:.<span.cla |
| 9e4e0 | 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 30 34 64 33 66 20 69 6e 20 73 74 64 2e 73 74 61 72 74 2e | ss="t2_0">0x204d3f.in.std.start. |
| 9e500 | 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 20 28 74 65 73 74 29 3c 2f 73 70 61 | posixCallMainAndExit.(test)</spa |
| 9e520 | 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();..... |
| 9e540 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 | .................<span.class="t3 |
| 9e560 | 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 37 5f 31 | 2_1">^</span>.<span.class="t37_1 |
| 9e580 | 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 | ">/home/andy/Downloads/zig/lib/s |
| 9e5a0 | 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 31 36 32 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e | td/start.zig:162:5</span>:.<span |
| 9e5c0 | 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 30 34 62 31 32 20 69 6e 20 73 74 64 2e 73 74 | .class="t2_0">0x204b12.in.std.st |
| 9e5e0 | 61 72 74 2e 5f 73 74 61 72 74 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 40 63 61 | art._start.(test)</span>.....@ca |
| 9e600 | 6c 6c 28 2e 7b 20 2e 6d 6f 64 69 66 69 65 72 20 3d 20 2e 6e 65 76 65 72 5f 69 6e 6c 69 6e 65 20 | ll(.{..modifier.=..never_inline. |
| 9e620 | 7d 2c 20 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 2c 20 2e 7b 7d 29 3b 0a 20 | },.posixCallMainAndExit,..{});.. |
| 9e640 | 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a | ...<span.class="t32_1">^</span>. |
| 9e660 | 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 3c 2f | (process.terminated.by.signal)</ |
| 9e680 | 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 | code></pre>................<h2.i |
| 9e6a0 | 64 3d 22 49 6e 63 6f 72 72 65 63 74 2d 50 6f 69 6e 74 65 72 2d 41 6c 69 67 6e 6d 65 6e 74 22 3e | d="Incorrect-Pointer-Alignment"> |
| 9e6c0 | 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 49 6e 63 6f 72 72 65 63 74 2d 50 6f 69 6e 74 65 72 2d | <a.href="#toc-Incorrect-Pointer- |
| 9e6e0 | 41 6c 69 67 6e 6d 65 6e 74 22 3e 49 6e 63 6f 72 72 65 63 74 20 50 6f 69 6e 74 65 72 20 41 6c 69 | Alignment">Incorrect.Pointer.Ali |
| 9e700 | 67 6e 6d 65 6e 74 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 | gnment</a>.<a.class="hdr".href=" |
| 9e720 | 23 49 6e 63 6f 72 72 65 63 74 2d 50 6f 69 6e 74 65 72 2d 41 6c 69 67 6e 6d 65 6e 74 22 3e c2 a7 | #Incorrect-Pointer-Alignment">.. |
| 9e740 | 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 74 20 63 6f 6d 70 69 6c 65 2d 74 | </a></h2>........<p>At.compile-t |
| 9e760 | 69 6d 65 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 | ime:</p>.......<p.class="file">t |
| 9e780 | 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | est.zig</p><pre><code.class="zig |
| 9e7a0 | 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c | "><span.class="tok-kw">comptime< |
| 9e7c0 | 2f 73 70 61 6e 3e 20 7b 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 |
| 9e7e0 | 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 70 74 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ">const</span>.ptr.=.<span.class |
| 9e800 | 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6e 74 54 6f 50 74 72 3c 2f 73 70 61 6e 3e 28 | ="tok-builtin">@intToPtr</span>( |
| 9e820 | 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 |
| 9e840 | 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 | n>(<span.class="tok-number">1</s |
| 9e860 | 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 |
| 9e880 | 3c 2f 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 |
| 9e8a0 | 22 3e 30 78 31 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ">0x1</span>);.....<span.class=" |
| 9e8c0 | 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 6c 69 67 6e 65 64 20 3d 20 3c | tok-kw">const</span>.aligned.=.< |
| 9e8e0 | 73 70 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 43 | span.class="tok-builtin">@alignC |
| 9e900 | 61 73 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | ast</span>(<span.class="tok-numb |
| 9e920 | 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 2c 20 70 74 72 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 | er">4</span>,.ptr);.}</code></pr |
| 9e940 | 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 | e><pre><code.class="shell">$.zig |
| 9e960 | 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 | .test.test.zig.<span.class="t0_1 |
| 9e980 | 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 33 3a 33 35 3a 20 3c 2f | ">./docgen_tmp/test.zig:3:35:.</ |
| 9e9a0 | 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 31 5f 31 22 3e 65 72 72 6f 72 3a 20 | span><span.class="t31_1">error:. |
| 9e9c0 | 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 70 6f 69 6e 74 65 | </span><span.class="t0_1">pointe |
| 9e9e0 | 72 20 61 64 64 72 65 73 73 20 30 78 31 20 69 73 20 6e 6f 74 20 61 6c 69 67 6e 65 64 20 74 6f 20 | r.address.0x1.is.not.aligned.to. |
| 9ea00 | 34 20 62 79 74 65 73 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 63 6f 6e 73 74 20 61 6c 69 67 6e 65 64 | 4.bytes</span>.....const.aligned |
| 9ea20 | 20 3d 20 40 61 6c 69 67 6e 43 61 73 74 28 34 2c 20 70 74 72 29 3b 0a 20 20 20 20 20 20 20 20 20 | .=.@alignCast(4,.ptr);.......... |
| 9ea40 | 20 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 |
| 9ea60 | 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 | lass="t32_1">^</span>.<span.clas |
| 9ea80 | 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 33 | s="t0_1">./docgen_tmp/test.zig:3 |
| 9eaa0 | 3a 32 31 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 36 5f 31 22 3e | :21:.</span><span.class="t36_1"> |
| 9eac0 | 6e 6f 74 65 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e | note:.</span><span.class="t0_1"> |
| 9eae0 | 72 65 66 65 72 65 6e 63 65 64 20 68 65 72 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 63 6f 6e 73 74 | referenced.here</span>.....const |
| 9eb00 | 20 61 6c 69 67 6e 65 64 20 3d 20 40 61 6c 69 67 6e 43 61 73 74 28 34 2c 20 70 74 72 29 3b 0a 20 | .aligned.=.@alignCast(4,.ptr);.. |
| 9eb20 | 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=" |
| 9eb40 | 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 | t32_1">^</span>.</code></pre>... |
| 9eb60 | 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 70 | .....<p>At.runtime:</p>.......<p |
| 9eb80 | 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c | .class="file">test.zig</p><pre>< |
| 9eba0 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | code.class="zig"><span.class="to |
| 9ebc0 | 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6d 65 6d 20 3d 20 3c 73 70 61 6e 20 63 | k-kw">const</span>.mem.=.<span.c |
| 9ebe0 | 6c 61 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 |
| 9ec00 | 3e 28 3c 73 70 61 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 |
| 9ec20 | 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 6d 65 6d 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | d"</span>).mem;.<span.class |
| 9ec40 | 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 |
| 9ec60 | 3d 22 74 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= |
| 9ec80 | 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 63 6c | "tok-fn">main</span>().!<span.cl |
| 9eca0 | 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>.{.... |
| 9ecc0 | 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> |
| 9ece0 | 20 61 72 72 61 79 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6c 69 67 | .array.<span.class="tok-kw">alig |
| 9ed00 | 6e 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | n</span>(<span.class="tok-number |
| 9ed20 | 22 3e 34 3c 2f 73 70 61 6e 3e 29 20 3d 20 5b 5f 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ">4</span>).=.[_]<span.class="to |
| 9ed40 | 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 7b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | k-type">u32</span>{.<span.class= |
| 9ed60 | 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 2c 20 | "tok-number">0x11111111</span>,. |
| 9ed80 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 31 31 31 31 31 | <span.class="tok-number">0x11111 |
| 9eda0 | 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 3d 22 74 | 111</span>.};.....<span.class="t |
| 9edc0 | 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 6d 65 6d 2e | ok-kw">const</span>.bytes.=.mem. |
| 9ede0 | 73 6c 69 63 65 41 73 42 79 74 65 73 28 61 72 72 61 79 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | sliceAsBytes(array[<span.class=" |
| 9ee00 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 2e 2e 5d 29 3b 0a 20 20 20 20 3c 73 | tok-number">0</span>..]);.....<s |
| 9ee20 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 66 6f | pan.class="tok-kw">if</span>.(fo |
| 9ee40 | 6f 28 62 79 74 65 73 29 20 21 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | o(bytes).!=.<span.class="tok-num |
| 9ee60 | 62 65 72 22 3e 30 78 31 31 31 31 31 31 31 31 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c | ber">0x11111111</span>).<span.cl |
| 9ee80 | 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 |
| 9eea0 | 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 57 72 6f | .class="tok-kw">error</span>.Wro |
| 9eec0 | 6e 67 3b 0a 7d 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 | ng;.}.<span.class="tok-kw">fn</s |
| 9eee0 | 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 66 6f 6f 3c 2f 73 | pan>.<span.class="tok-fn">foo</s |
| 9ef00 | 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 2d 74 | pan>(bytes:.[]<span.class="tok-t |
| 9ef20 | 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 6b | ype">u8</span>).<span.class="tok |
| 9ef40 | 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 6c | -type">u32</span>.{.....<span.cl |
| 9ef60 | 61 73 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 34 | ass="tok-kw">const</span>.slice4 |
| 9ef80 | 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 65 72 | .=.bytes[<span.class="tok-number |
| 9efa0 | 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 |
| 9efc0 | 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 73 3d | ber">5</span>];.....<span.class= |
| 9efe0 | 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 65 20 | "tok-kw">const</span>.int_slice. |
| 9f000 | 3d 20 6d 65 6d 2e 62 79 74 65 73 41 73 53 6c 69 63 65 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | =.mem.bytesAsSlice(<span.class=" |
| 9f020 | 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 | tok-type">u32</span>,.<span.clas |
| 9f040 | 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 61 6c 69 67 6e 43 61 73 74 3c 2f 73 70 61 6e | s="tok-builtin">@alignCast</span |
| 9f060 | 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 | >(<span.class="tok-number">4</sp |
| 9f080 | 61 6e 3e 2c 20 73 6c 69 63 65 34 29 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | an>,.slice4));.....<span.class=" |
| 9f0a0 | 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 69 6e 74 5f 73 6c 69 63 65 5b | tok-kw">return</span>.int_slice[ |
| 9f0c0 | 3c 73 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 |
| 9f0e0 | 3e 5d 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 | >];.}</code></pre><pre><code.cla |
| 9f100 | 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 74 65 73 74 2e | ss="shell">$.zig.build-exe.test. |
| 9f120 | 7a 69 67 0a 24 20 2e 2f 74 65 73 74 0a 69 6e 63 6f 72 72 65 63 74 20 61 6c 69 67 6e 6d 65 6e 74 | zig.$../test.incorrect.alignment |
| 9f140 | 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f | .<span.class="t37_1">/home/andy/ |
| 9f160 | 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 | Downloads/zig/docgen_tmp/test.zi |
| 9f180 | 67 3a 39 3a 35 39 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 | g:9:59</span>:.<span.class="t2_0 |
| 9f1a0 | 22 3e 30 78 32 33 32 33 64 62 20 69 6e 20 66 6f 6f 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a | ">0x2323db.in.foo.(test)</span>. |
| 9f1c0 | 20 20 20 20 63 6f 6e 73 74 20 69 6e 74 5f 73 6c 69 63 65 20 3d 20 6d 65 6d 2e 62 79 74 65 73 41 | ....const.int_slice.=.mem.bytesA |
| 9f1e0 | 73 53 6c 69 63 65 28 75 33 32 2c 20 40 61 6c 69 67 6e 43 61 73 74 28 34 2c 20 73 6c 69 63 65 34 | sSlice(u32,.@alignCast(4,.slice4 |
| 9f200 | 29 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ));............................. |
| 9f220 | 20 20 20 20 20 20 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 |
| 9f240 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e | pan.class="t32_1">^</span>.<span |
| 9f260 | 20 63 6c 61 73 73 3d 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f | .class="t37_1">/home/andy/Downlo |
| 9f280 | 61 64 73 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 35 3a 31 32 | ads/zig/docgen_tmp/test.zig:5:12 |
| 9f2a0 | 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 | </span>:.<span.class="t2_0">0x22 |
| 9f2c0 | 62 32 61 39 20 69 6e 20 6d 61 69 6e 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 69 | b2a9.in.main.(test)</span>.....i |
| 9f2e0 | 66 20 28 66 6f 6f 28 62 79 74 65 73 29 20 21 3d 20 30 78 31 31 31 31 31 31 31 31 29 20 72 65 74 | f.(foo(bytes).!=.0x11111111).ret |
| 9f300 | 75 72 6e 20 65 72 72 6f 72 2e 57 72 6f 6e 67 3b 0a 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 | urn.error.Wrong;............<spa |
| 9f320 | 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 | n.class="t32_1">^</span>.<span.c |
| 9f340 | 6c 61 73 73 3d 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 | lass="t37_1">/home/andy/Download |
| 9f360 | 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 33 33 34 3a 33 37 3c 2f | s/zig/lib/std/start.zig:334:37</ |
| 9f380 | 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 30 34 64 | span>:.<span.class="t2_0">0x204d |
| 9f3a0 | 38 64 20 69 6e 20 73 74 64 2e 73 74 61 72 74 2e 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 | 8d.in.std.start.posixCallMainAnd |
| 9f3c0 | 45 78 69 74 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 63 | Exit.(test)</span>.............c |
| 9f3e0 | 6f 6e 73 74 20 72 65 73 75 6c 74 20 3d 20 72 6f 6f 74 2e 6d 61 69 6e 28 29 20 63 61 74 63 68 20 | onst.result.=.root.main().catch. |
| 9f400 | 7c 65 72 72 7c 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | |err|.{......................... |
| 9f420 | 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e | ............<span.class="t32_1"> |
| 9f440 | 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 37 5f 31 22 3e 2f 68 6f | ^</span>.<span.class="t37_1">/ho |
| 9f460 | 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 | me/andy/Downloads/zig/lib/std/st |
| 9f480 | 61 72 74 2e 7a 69 67 3a 31 36 32 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 | art.zig:162:5</span>:.<span.clas |
| 9f4a0 | 73 3d 22 74 32 5f 30 22 3e 30 78 32 30 34 61 63 32 20 69 6e 20 73 74 64 2e 73 74 61 72 74 2e 5f | s="t2_0">0x204ac2.in.std.start._ |
| 9f4c0 | 73 74 61 72 74 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 40 63 61 6c 6c 28 2e 7b | start.(test)</span>.....@call(.{ |
| 9f4e0 | 20 2e 6d 6f 64 69 66 69 65 72 20 3d 20 2e 6e 65 76 65 72 5f 69 6e 6c 69 6e 65 20 7d 2c 20 70 6f | ..modifier.=..never_inline.},.po |
| 9f500 | 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 2c 20 2e 7b 7d 29 3b 0a 20 20 20 20 3c 73 | sixCallMainAndExit,..{});.....<s |
| 9f520 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 28 70 72 6f 63 | pan.class="t32_1">^</span>.(proc |
| 9f540 | 65 73 73 20 74 65 72 6d 69 6e 61 74 65 64 20 62 79 20 73 69 67 6e 61 6c 29 3c 2f 63 6f 64 65 3e | ess.terminated.by.signal)</code> |
| 9f560 | 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 57 72 6f | </pre>...............<h2.id="Wro |
| 9f580 | 6e 67 2d 55 6e 69 6f 6e 2d 46 69 65 6c 64 2d 41 63 63 65 73 73 22 3e 3c 61 20 68 72 65 66 3d 22 | ng-Union-Field-Access"><a.href=" |
| 9f5a0 | 23 74 6f 63 2d 57 72 6f 6e 67 2d 55 6e 69 6f 6e 2d 46 69 65 6c 64 2d 41 63 63 65 73 73 22 3e 57 | #toc-Wrong-Union-Field-Access">W |
| 9f5c0 | 72 6f 6e 67 20 55 6e 69 6f 6e 20 46 69 65 6c 64 20 41 63 63 65 73 73 3c 2f 61 3e 20 3c 61 20 63 | rong.Union.Field.Access</a>.<a.c |
| 9f5e0 | 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 57 72 6f 6e 67 2d 55 6e 69 6f 6e 2d 46 69 | lass="hdr".href="#Wrong-Union-Fi |
| 9f600 | 65 6c 64 2d 41 63 63 65 73 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c | eld-Access">..</a></h2>........< |
| 9f620 | 70 3e 41 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 | p>At.compile-time:</p>.......<p. |
| 9f640 | 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 | class="file">test.zig</p><pre><c |
| 9f660 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ode.class="zig"><span.class="tok |
| 9f680 | 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e | -kw">comptime</span>.{.....<span |
| 9f6a0 | 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 20 3d 20 46 | .class="tok-kw">var</span>.f.=.F |
| 9f6c0 | 6f 6f 7b 20 2e 69 6e 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | oo{..int.=.<span.class="tok-numb |
| 9f6e0 | 65 72 22 3e 34 32 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 20 20 20 20 66 2e 66 6c 6f 61 74 20 3d 20 3c | er">42</span>.};.....f.float.=.< |
| 9f700 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 2e 33 34 3c 2f 73 | span.class="tok-number">12.34</s |
| 9f720 | 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 63 6f | pan>;.}..<span.class="tok-kw">co |
| 9f740 | 6e 73 74 3c 2f 73 70 61 6e 3e 20 46 6f 6f 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | nst</span>.Foo.=.<span.class="to |
| 9f760 | 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 61 74 3a 20 | k-kw">union</span>.{.....float:. |
| 9f780 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e | <span.class="tok-type">f32</span |
| 9f7a0 | 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 2d 74 79 70 | >,.....int:.<span.class="tok-typ |
| 9f7c0 | 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 2c 0a 7d 3b 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 | e">u32</span>,.};</code></pre><p |
| 9f7e0 | 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 | re><code.class="shell">$.zig.tes |
| 9f800 | 74 20 74 65 73 74 2e 7a 69 67 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f | t.test.zig.<span.class="t0_1">./ |
| 9f820 | 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 33 3a 36 3a 20 3c 2f 73 70 61 6e 3e | docgen_tmp/test.zig:3:6:.</span> |
| 9f840 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 31 5f 31 22 3e 65 72 72 6f 72 3a 20 3c 2f 73 70 61 | <span.class="t31_1">error:.</spa |
| 9f860 | 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 61 63 63 65 73 73 69 6e 67 20 75 | n><span.class="t0_1">accessing.u |
| 9f880 | 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 6c 64 20 27 | nion.field.'float'.while.field.' |
| 9f8a0 | 69 6e 74 27 20 69 73 20 73 65 74 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 66 2e 66 6c 6f 61 74 20 3d | int'.is.set</span>.....f.float.= |
| 9f8c0 | 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 74 33 32 5f 31 22 | .12.34;......<span.class="t32_1" |
| 9f8e0 | 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c | >^</span>.</code></pre>........< |
| 9f900 | 70 3e 41 74 20 72 75 6e 74 69 6d 65 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 | p>At.runtime:</p>.......<p.class |
| 9f920 | 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 | ="file">test.zig</p><pre><code.c |
| 9f940 | 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | lass="zig"><span.class="tok-kw"> |
| 9f960 | 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=" |
| 9f980 | 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 |
| 9f9a0 | 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" |
| 9f9c0 | 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | ;</span>);..<span.class="tok-kw" |
| 9f9e0 | 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= |
| 9fa00 | 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 61 | "tok-kw">union</span>.{.....floa |
| 9fa20 | 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 73 | t:.<span.class="tok-type">f32</s |
| 9fa40 | 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 2d | pan>,.....int:.<span.class="tok- |
| 9fa60 | 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 73 | type">u32</span>,.};..<span.clas |
| 9fa80 | 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 |
| 9faa0 | 73 3d 22 74 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 |
| 9fac0 | 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 |
| 9fae0 | 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>.{.... |
| 9fb00 | 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> |
| 9fb20 | 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 6f | .f.=.Foo{..int.=.<span.class="to |
| 9fb40 | 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 26 | k-number">42</span>.};.....bar(& |
| 9fb60 | 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 3e | amp;f);.}..<span.class="tok-kw"> |
| 9fb80 | 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 62 | fn</span>.<span.class="tok-fn">b |
| 9fba0 | 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 22 | ar</span>(f:.*Foo).<span.class=" |
| 9fbc0 | 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 6c | tok-type">void</span>.{.....f.fl |
| 9fbe0 | 6f 61 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 | oat.=.<span.class="tok-number">1 |
| 9fc00 | 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 74 | 2.34</span>;.....std.debug.print |
| 9fc20 | 28 3c 73 70 61 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 |
| 9fc40 | 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 |
| 9fc60 | 7d 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 | });.}</code></pre><pre><code.cla |
| 9fc80 | 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 74 65 73 74 2e | ss="shell">$.zig.build-exe.test. |
| 9fca0 | 7a 69 67 0a 24 20 2e 2f 74 65 73 74 0a 61 63 63 65 73 73 20 6f 66 20 69 6e 61 63 74 69 76 65 20 | zig.$../test.access.of.inactive. |
| 9fcc0 | 75 6e 69 6f 6e 20 66 69 65 6c 64 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 37 5f 31 22 3e | union.field.<span.class="t37_1"> |
| 9fce0 | 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f | /home/andy/Downloads/zig/docgen_ |
| 9fd00 | 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 31 34 3a 36 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 | tmp/test.zig:14:6</span>:.<span. |
| 9fd20 | 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 33 66 38 62 61 20 69 6e 20 62 61 72 20 28 74 65 | class="t2_0">0x23f8ba.in.bar.(te |
| 9fd40 | 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 66 2e 66 6c 6f 61 74 20 3d 20 31 32 2e 33 34 3b 0a | st)</span>.....f.float.=.12.34;. |
| 9fd60 | 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e | .....<span.class="t32_1">^</span |
| 9fd80 | 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 | >.<span.class="t37_1">/home/andy |
| 9fda0 | 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a | /Downloads/zig/docgen_tmp/test.z |
| 9fdc0 | 69 67 3a 31 30 3a 38 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f | ig:10:8</span>:.<span.class="t2_ |
| 9fde0 | 30 22 3e 30 78 32 33 38 38 61 63 20 69 6e 20 6d 61 69 6e 20 28 74 65 73 74 29 3c 2f 73 70 61 6e | 0">0x2388ac.in.main.(test)</span |
| 9fe00 | 3e 0a 20 20 20 20 62 61 72 28 26 61 6d 70 3b 66 29 3b 0a 20 20 20 20 20 20 20 3c 73 70 61 6e 20 | >.....bar(&f);........<span. |
| 9fe20 | 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 | class="t32_1">^</span>.<span.cla |
| 9fe40 | 73 73 3d 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f | ss="t37_1">/home/andy/Downloads/ |
| 9fe60 | 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 33 32 34 3a 32 32 3c 2f 73 70 | zig/lib/std/start.zig:324:22</sp |
| 9fe80 | 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 31 32 34 64 66 | an>:.<span.class="t2_0">0x2124df |
| 9fea0 | 20 69 6e 20 73 74 64 2e 73 74 61 72 74 2e 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 | .in.std.start.posixCallMainAndEx |
| 9fec0 | 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 6f | it.(test)</span>.............roo |
| 9fee0 | 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();......................< |
| 9ff00 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 | span.class="t32_1">^</span>.<spa |
| 9ff20 | 6e 20 63 6c 61 73 73 3d 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c | n.class="t37_1">/home/andy/Downl |
| 9ff40 | 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a 31 36 32 3a 35 | oads/zig/lib/std/start.zig:162:5 |
| 9ff60 | 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 31 | </span>:.<span.class="t2_0">0x21 |
| 9ff80 | 32 32 62 32 20 69 6e 20 73 74 64 2e 73 74 61 72 74 2e 5f 73 74 61 72 74 20 28 74 65 73 74 29 3c | 22b2.in.std.start._start.(test)< |
| 9ffa0 | 2f 73 70 61 6e 3e 0a 20 20 20 20 40 63 61 6c 6c 28 2e 7b 20 2e 6d 6f 64 69 66 69 65 72 20 3d 20 | /span>.....@call(.{..modifier.=. |
| 9ffc0 | 2e 6e 65 76 65 72 5f 69 6e 6c 69 6e 65 20 7d 2c 20 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e | .never_inline.},.posixCallMainAn |
| 9ffe0 | 64 45 78 69 74 2c 20 2e 7b 7d 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 | dExit,..{});.....<span.class="t3 |
| a0000 | 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 28 70 72 6f 63 65 73 73 20 74 65 72 6d 69 6e 61 74 65 | 2_1">^</span>.(process.terminate |
| a0020 | 64 20 62 79 20 73 69 67 6e 61 6c 29 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 | d.by.signal)</code></pre>....... |
| a0040 | 20 3c 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 | .<p>.......This.safety.is.not.av |
| a0060 | 61 69 6c 61 62 6c 65 20 66 6f 72 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 | ailable.for.<code.class="zig"><s |
| a0080 | 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> |
| a00a0 | 3c 2f 63 6f 64 65 3e 20 6f 72 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 | </code>.or.<code.class="zig"><sp |
| a00c0 | 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 3c | an.class="tok-kw">packed</span>< |
| a00e0 | 2f 63 6f 64 65 3e 20 75 6e 69 6f 6e 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 | /code>.unions........</p>....... |
| a0100 | 3c 70 3e 0a 20 20 20 20 20 20 54 6f 20 63 68 61 6e 67 65 20 74 68 65 20 61 63 74 69 76 65 20 66 | <p>.......To.change.the.active.f |
| a0120 | 69 65 6c 64 20 6f 66 20 61 20 75 6e 69 6f 6e 2c 20 61 73 73 69 67 6e 20 74 68 65 20 65 6e 74 69 | ield.of.a.union,.assign.the.enti |
| a0140 | 72 65 20 75 6e 69 6f 6e 2c 20 6c 69 6b 65 20 74 68 69 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a | re.union,.like.this:.......</p>. |
| a0160 | 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f | ......<p.class="file">test.zig</ |
| a0180 | 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 | p><pre><code.class="zig"><span.c |
| a01a0 | 6c 61 73 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.= |
| a01c0 | 20 3c 73 70 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 |
| a01e0 | 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"> |
| a0200 | 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. |
| a0220 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 46 6f 6f 20 | class="tok-kw">const</span>.Foo. |
| a0240 | 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 |
| a0260 | 61 6e 3e 20 7b 0a 20 20 20 20 66 6c 6f 61 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | an>.{.....float:.<span.class="to |
| a0280 | 6b 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 69 6e 74 3a 20 3c 73 70 | k-type">f32</span>,.....int:.<sp |
| a02a0 | 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>,. |
| a02c0 | 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 70 | };..<span.class="tok-kw">pub</sp |
| a02e0 | 61 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 |
| a0300 | 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 |
| a0320 | 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 |
| a0340 | 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- |
| a0360 | 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 66 20 3d 20 46 6f 6f 7b 20 2e 69 6e 74 20 3d 20 3c | kw">var</span>.f.=.Foo{..int.=.< |
| a0380 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 32 3c 2f 73 70 61 6e | span.class="tok-number">42</span |
| a03a0 | 3e 20 7d 3b 0a 20 20 20 20 62 61 72 28 26 61 6d 70 3b 66 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 | >.};.....bar(&f);.}..<span.c |
| a03c0 | 6c 61 73 73 3d 22 74 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 |
| a03e0 | 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 62 61 72 3c 2f 73 70 61 6e 3e 28 66 3a 20 2a 46 6f 6f 29 | ass="tok-fn">bar</span>(f:.*Foo) |
| a0400 | 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 |
| a0420 | 61 6e 3e 20 7b 0a 20 20 20 20 66 2e 2a 20 3d 20 46 6f 6f 7b 20 2e 66 6c 6f 61 74 20 3d 20 3c 73 | an>.{.....f.*.=.Foo{..float.=.<s |
| a0440 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 2e 33 34 3c 2f 73 70 | pan.class="tok-number">12.34</sp |
| a0460 | 61 6e 3e 20 7d 3b 0a 20 20 20 20 73 74 64 2e 64 65 62 75 67 2e 70 72 69 6e 74 28 3c 73 70 61 6e | an>.};.....std.debug.print(<span |
| a0480 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 76 61 6c 75 65 3a 20 7b 7d | .class="tok-str">"value:.{} |
| a04a0 | 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 66 2e 66 6c 6f 61 74 7d 29 3b 0a 7d 3c | \n"</span>,..{f.float});.}< |
| a04c0 | 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 | /code></pre><pre><code.class="sh |
| a04e0 | 65 6c 6c 22 3e 24 20 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 74 65 73 74 2e 7a 69 67 0a 24 20 | ell">$.zig.build-exe.test.zig.$. |
| a0500 | 2e 2f 74 65 73 74 0a 76 61 6c 75 65 3a 20 31 2e 32 33 34 30 30 30 30 31 65 2b 30 31 0a 3c 2f 63 | ./test.value:.1.23400001e+01.</c |
| a0520 | 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 6f 20 63 | ode></pre>........<p>.......To.c |
| a0540 | 68 61 6e 67 65 20 74 68 65 20 61 63 74 69 76 65 20 66 69 65 6c 64 20 6f 66 20 61 20 75 6e 69 6f | hange.the.active.field.of.a.unio |
| a0560 | 6e 20 77 68 65 6e 20 61 20 6d 65 61 6e 69 6e 67 66 75 6c 20 76 61 6c 75 65 20 66 6f 72 20 74 68 | n.when.a.meaningful.value.for.th |
| a0580 | 65 20 66 69 65 6c 64 20 69 73 20 6e 6f 74 20 6b 6e 6f 77 6e 2c 0a 20 20 20 20 20 20 75 73 65 20 | e.field.is.not.known,.......use. |
| a05a0 | 3c 61 20 68 72 65 66 3d 22 23 75 6e 64 65 66 69 6e 65 64 22 3e 75 6e 64 65 66 69 6e 65 64 3c 2f | <a.href="#undefined">undefined</ |
| a05c0 | 61 3e 2c 20 6c 69 6b 65 20 74 68 69 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 | a>,.like.this:.......</p>....... |
| a05e0 | 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 | <p.class="file">test.zig</p><pre |
| a0600 | 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ><code.class="zig"><span.class=" |
| a0620 | 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 |
| a0640 | 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 |
| a0660 | 61 6e 3e 28 3c 73 70 61 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">" |
| a0680 | 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | std"</span>);..<span.class= |
| a06a0 | 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 46 6f 6f 20 3d 20 3c 73 70 61 | "tok-kw">const</span>.Foo.=.<spa |
| a06c0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 69 6f 6e 3c 2f 73 70 61 6e 3e 20 7b 0a | n.class="tok-kw">union</span>.{. |
| a06e0 | 20 20 20 20 66 6c 6f 61 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | ....float:.<span.class="tok-type |
| a0700 | 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 69 6e 74 3a 20 3c 73 70 61 6e 20 63 6c 61 | ">f32</span>,.....int:.<span.cla |
| a0720 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 2c 0a 7d 3b 0a 0a 3c 73 | ss="tok-type">u32</span>,.};..<s |
| a0740 | 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 |
| a0760 | 70 61 6e 20 63 6c 61 73 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 |
| a0780 | 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>(). |
| a07a0 | 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 |
| a07c0 | 6e 3e 20 7b 0a 20 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 |
| a07e0 | 72 3c 2f 73 70 61 6e 3e 20 66 20 3d 20 46 6f 6f 7b 20 2e 69 6e 74 20 3d 20 3c 73 70 61 6e 20 63 | r</span>.f.=.Foo{..int.=.<span.c |
| a0800 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 32 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 20 | lass="tok-number">42</span>.};.. |
| a0820 | 20 20 20 66 20 3d 20 46 6f 6f 7b 20 2e 66 6c 6f 61 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ...f.=.Foo{..float.=.<span.class |
| a0840 | 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 20 7d 3b 0a | ="tok-null">undefined</span>.};. |
| a0860 | 20 20 20 20 62 61 72 28 26 61 6d 70 3b 66 29 3b 0a 20 20 20 20 73 74 64 2e 64 65 62 75 67 2e 70 | ....bar(&f);.....std.debug.p |
| a0880 | 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">" |
| a08a0 | 3b 76 61 6c 75 65 3a 20 7b 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 66 2e 66 | ;value:.{}\n"</span>,..{f.f |
| a08c0 | 6c 6f 61 74 7d 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | loat});.}..<span.class="tok-kw"> |
| a08e0 | 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 62 | fn</span>.<span.class="tok-fn">b |
| a0900 | 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 22 | ar</span>(f:.*Foo).<span.class=" |
| a0920 | 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 6c | tok-type">void</span>.{.....f.fl |
| a0940 | 6f 61 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 | oat.=.<span.class="tok-number">1 |
| a0960 | 32 2e 33 34 3c 2f 73 70 61 6e 3e 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e | 2.34</span>;.}</code></pre><pre> |
| a0980 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 62 75 69 6c 64 2d | <code.class="shell">$.zig.build- |
| a09a0 | 65 78 65 20 74 65 73 74 2e 7a 69 67 0a 24 20 2e 2f 74 65 73 74 0a 76 61 6c 75 65 3a 20 31 2e 32 | exe.test.zig.$../test.value:.1.2 |
| a09c0 | 33 34 30 30 30 30 31 65 2b 30 31 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 | 3400001e+01.</code></pre>....... |
| a09e0 | 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 |
| a0a00 | 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 3c 6c 69 3e 3c 61 | f="#union">union</a></li>.<li><a |
| a0a20 | 20 68 72 65 66 3d 22 23 65 78 74 65 72 6e 2d 75 6e 69 6f 6e 22 3e 65 78 74 65 72 6e 20 75 6e 69 | .href="#extern-union">extern.uni |
| a0a40 | 6f 6e 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 | on</a></li>.</ul>............... |
| a0a60 | 20 3c 68 32 20 69 64 3d 22 4f 75 74 2d 6f 66 2d 42 6f 75 6e 64 73 2d 46 6c 6f 61 74 2d 74 6f 2d | .<h2.id="Out-of-Bounds-Float-to- |
| a0a80 | 49 6e 74 65 67 65 72 2d 43 61 73 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 4f 75 74 2d | Integer-Cast"><a.href="#toc-Out- |
| a0aa0 | 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 22 | of-Bounds-Float-to-Integer-Cast" |
| a0ac0 | 3e 4f 75 74 20 6f 66 20 42 6f 75 6e 64 73 20 46 6c 6f 61 74 20 74 6f 20 49 6e 74 65 67 65 72 20 | >Out.of.Bounds.Float.to.Integer. |
| a0ae0 | 43 61 73 74 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 4f | Cast</a>.<a.class="hdr".href="#O |
| a0b00 | 75 74 2d 6f 66 2d 42 6f 75 6e 64 73 2d 46 6c 6f 61 74 2d 74 6f 2d 49 6e 74 65 67 65 72 2d 43 61 | ut-of-Bounds-Float-to-Integer-Ca |
| a0b20 | 73 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 54 4f 44 4f 3c 2f | st">..</a></h2>........<p>TODO</ |
| a0b40 | 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 50 6f 69 6e 74 65 72 | p>...............<h2.id="Pointer |
| a0b60 | 2d 43 61 73 74 2d 49 6e 76 61 6c 69 64 2d 4e 75 6c 6c 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f | -Cast-Invalid-Null"><a.href="#to |
| a0b80 | 63 2d 50 6f 69 6e 74 65 72 2d 43 61 73 74 2d 49 6e 76 61 6c 69 64 2d 4e 75 6c 6c 22 3e 50 6f 69 | c-Pointer-Cast-Invalid-Null">Poi |
| a0ba0 | 6e 74 65 72 20 43 61 73 74 20 49 6e 76 61 6c 69 64 20 4e 75 6c 6c 3c 2f 61 3e 20 3c 61 20 63 6c | nter.Cast.Invalid.Null</a>.<a.cl |
| a0bc0 | 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 50 6f 69 6e 74 65 72 2d 43 61 73 74 2d 49 6e | ass="hdr".href="#Pointer-Cast-In |
| a0be0 | 76 61 6c 69 64 2d 4e 75 6c 6c 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c | valid-Null">..</a></h2>........< |
| a0c00 | 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 68 61 70 70 65 6e 73 20 77 68 65 6e 20 63 61 73 74 69 | p>.......This.happens.when.casti |
| a0c20 | 6e 67 20 61 20 70 6f 69 6e 74 65 72 20 77 69 74 68 20 74 68 65 20 61 64 64 72 65 73 73 20 30 20 | ng.a.pointer.with.the.address.0. |
| a0c40 | 74 6f 20 61 20 70 6f 69 6e 74 65 72 20 77 68 69 63 68 20 6d 61 79 20 6e 6f 74 20 68 61 76 65 20 | to.a.pointer.which.may.not.have. |
| a0c60 | 74 68 65 20 61 64 64 72 65 73 73 20 30 2e 0a 20 20 20 20 20 20 46 6f 72 20 65 78 61 6d 70 6c 65 | the.address.0........For.example |
| a0c80 | 2c 20 3c 61 20 68 72 65 66 3d 22 23 43 2d 50 6f 69 6e 74 65 72 73 22 3e 43 20 50 6f 69 6e 74 65 | ,.<a.href="#C-Pointers">C.Pointe |
| a0ca0 | 72 73 3c 2f 61 3e 2c 20 3c 61 20 68 72 65 66 3d 22 23 4f 70 74 69 6f 6e 61 6c 2d 50 6f 69 6e 74 | rs</a>,.<a.href="#Optional-Point |
| a0cc0 | 65 72 73 22 3e 4f 70 74 69 6f 6e 61 6c 20 50 6f 69 6e 74 65 72 73 3c 2f 61 3e 2c 20 61 6e 64 20 | ers">Optional.Pointers</a>,.and. |
| a0ce0 | 3c 61 20 68 72 65 66 3d 22 23 61 6c 6c 6f 77 7a 65 72 6f 22 3e 61 6c 6c 6f 77 7a 65 72 6f 3c 2f | <a.href="#allowzero">allowzero</ |
| a0d00 | 61 3e 20 70 6f 69 6e 74 65 72 73 0a 20 20 20 20 20 20 61 6c 6c 6f 77 20 61 64 64 72 65 73 73 20 | a>.pointers.......allow.address. |
| a0d20 | 7a 65 72 6f 2c 20 62 75 74 20 6e 6f 72 6d 61 6c 20 3c 61 20 68 72 65 66 3d 22 23 50 6f 69 6e 74 | zero,.but.normal.<a.href="#Point |
| a0d40 | 65 72 73 22 3e 50 6f 69 6e 74 65 72 73 3c 2f 61 3e 20 64 6f 20 6e 6f 74 2e 0a 20 20 20 20 20 20 | ers">Pointers</a>.do.not........ |
| a0d60 | 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 41 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 3a 3c 2f | </p>.......<p>At.compile-time:</ |
| a0d80 | 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 | p>.......<p.class="file">test.zi |
| a0da0 | 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 | g</p><pre><code.class="zig"><spa |
| a0dc0 | 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> |
| a0de0 | 20 7b 0a 20 20 20 20 3c 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 |
| a0e00 | 74 3c 2f 73 70 61 6e 3e 20 6f 70 74 5f 70 74 72 3a 20 3f 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | t</span>.opt_ptr:.?*<span.class= |
| a0e20 | 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c | "tok-type">i32</span>.=.<span.cl |
| a0e40 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 | ass="tok-null">null</span>;..... |
| a0e60 | 3c 73 70 61 6e 20 63 6c 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 |
| a0e80 | 3e 20 70 74 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e | >.ptr.=.<span.class="tok-builtin |
| a0ea0 | 22 3e 40 70 74 72 43 61 73 74 3c 2f 73 70 61 6e 3e 28 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ">@ptrCast</span>(*<span.class=" |
| a0ec0 | 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 2c 20 6f 70 74 5f 70 74 72 29 3b 0a | tok-type">i32</span>,.opt_ptr);. |
| a0ee0 | 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | }</code></pre><pre><code.class=" |
| a0f00 | 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 3c 73 70 61 6e | shell">$.zig.test.test.zig.<span |
| a0f20 | 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e | .class="t0_1">./docgen_tmp/test. |
| a0f40 | 7a 69 67 3a 33 3a 31 37 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 | zig:3:17:.</span><span.class="t3 |
| a0f60 | 31 5f 31 22 3e 65 72 72 6f 72 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | 1_1">error:.</span><span.class=" |
| a0f80 | 74 30 5f 31 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 74 79 70 | t0_1">null.pointer.casted.to.typ |
| a0fa0 | 65 20 27 2a 69 33 32 27 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 63 6f 6e 73 74 20 70 74 72 20 3d 20 | e.'*i32'</span>.....const.ptr.=. |
| a0fc0 | 40 70 74 72 43 61 73 74 28 2a 69 33 32 2c 20 6f 70 74 5f 70 74 72 29 3b 0a 20 20 20 20 20 20 20 | @ptrCast(*i32,.opt_ptr);........ |
| a0fe0 | 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f | .........<span.class="t32_1">^</ |
| a1000 | 73 70 61 6e 3e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 74 | span>.</code></pre>........<p>At |
| a1020 | 20 72 75 6e 74 69 6d 65 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 | .runtime:</p>.......<p.class="fi |
| a1040 | 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 | le">test.zig</p><pre><code.class |
| a1060 | 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c | ="zig"><span.class="tok-kw">pub< |
| a1080 | 2f 73 70 61 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</ |
| a10a0 | 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< |
| a10c0 | 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"> |
| a10e0 | 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 |
| a1100 | 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 6f 70 74 5f 70 74 72 3a 20 3f 2a 3c 73 70 | ok-kw">var</span>.opt_ptr:.?*<sp |
| a1120 | 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>.= |
| a1140 | 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 |
| a1160 | 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 | an>;.....<span.class="tok-kw">va |
| a1180 | 72 3c 2f 73 70 61 6e 3e 20 70 74 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | r</span>.ptr.=.<span.class="tok- |
| a11a0 | 62 75 69 6c 74 69 6e 22 3e 40 70 74 72 43 61 73 74 3c 2f 73 70 61 6e 3e 28 2a 3c 73 70 61 6e 20 | builtin">@ptrCast</span>(*<span. |
| a11c0 | 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 6f 70 74 | class="tok-type">i32</span>,.opt |
| a11e0 | 5f 70 74 72 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 | _ptr);.}</code></pre><pre><code. |
| a1200 | 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 74 65 | class="shell">$.zig.build-exe.te |
| a1220 | 73 74 2e 7a 69 67 0a 24 20 2e 2f 74 65 73 74 0a 63 61 73 74 20 63 61 75 73 65 73 20 70 6f 69 6e | st.zig.$../test.cast.causes.poin |
| a1240 | 74 65 72 20 74 6f 20 62 65 20 6e 75 6c 6c 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 37 5f | ter.to.be.null.<span.class="t37_ |
| a1260 | 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 64 6f 63 67 | 1">/home/andy/Downloads/zig/docg |
| a1280 | 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 33 3a 31 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 | en_tmp/test.zig:3:15</span>:.<sp |
| a12a0 | 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 62 30 36 30 20 69 6e 20 6d 61 69 6e | an.class="t2_0">0x22b060.in.main |
| a12c0 | 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 76 61 72 20 70 74 72 20 3d 20 40 70 74 | .(test)</span>.....var.ptr.=.@pt |
| a12e0 | 72 43 61 73 74 28 2a 69 33 32 2c 20 6f 70 74 5f 70 74 72 29 3b 0a 20 20 20 20 20 20 20 20 20 20 | rCast(*i32,.opt_ptr);........... |
| a1300 | 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e | ....<span.class="t32_1">^</span> |
| a1320 | 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f | .<span.class="t37_1">/home/andy/ |
| a1340 | 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 2e 7a 69 67 3a | Downloads/zig/lib/std/start.zig: |
| a1360 | 33 32 34 3a 32 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 | 324:22</span>:.<span.class="t2_0 |
| a1380 | 22 3e 30 78 32 30 34 63 37 66 20 69 6e 20 73 74 64 2e 73 74 61 72 74 2e 70 6f 73 69 78 43 61 6c | ">0x204c7f.in.std.start.posixCal |
| a13a0 | 6c 4d 61 69 6e 41 6e 64 45 78 69 74 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 | lMainAndExit.(test)</span>...... |
| a13c0 | 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();............. |
| a13e0 | 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f | .........<span.class="t32_1">^</ |
| a1400 | 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f | span>.<span.class="t37_1">/home/ |
| a1420 | 61 6e 64 79 2f 44 6f 77 6e 6c 6f 61 64 73 2f 7a 69 67 2f 6c 69 62 2f 73 74 64 2f 73 74 61 72 74 | andy/Downloads/zig/lib/std/start |
| a1440 | 2e 7a 69 67 3a 31 36 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 | .zig:162:5</span>:.<span.class=" |
| a1460 | 74 32 5f 30 22 3e 30 78 32 30 34 61 35 32 20 69 6e 20 73 74 64 2e 73 74 61 72 74 2e 5f 73 74 61 | t2_0">0x204a52.in.std.start._sta |
| a1480 | 72 74 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 40 63 61 6c 6c 28 2e 7b 20 2e 6d | rt.(test)</span>.....@call(.{..m |
| a14a0 | 6f 64 69 66 69 65 72 20 3d 20 2e 6e 65 76 65 72 5f 69 6e 6c 69 6e 65 20 7d 2c 20 70 6f 73 69 78 | odifier.=..never_inline.},.posix |
| a14c0 | 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 2c 20 2e 7b 7d 29 3b 0a 20 20 20 20 3c 73 70 61 6e | CallMainAndExit,..{});.....<span |
| a14e0 | 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 28 70 72 6f 63 65 73 73 | .class="t32_1">^</span>.(process |
| a1500 | 20 74 65 72 6d 69 6e 61 74 65 64 20 62 79 20 73 69 67 6e 61 6c 29 3c 2f 63 6f 64 65 3e 3c 2f 70 | .terminated.by.signal)</code></p |
| a1520 | 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 31 20 69 64 | re>.......................<h1.id |
| a1540 | 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 72 79 22 3e | ="Memory"><a.href="#toc-Memory"> |
| a1560 | 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 65 66 3d 22 | Memory</a>.<a.class="hdr".href=" |
| a1580 | 23 4d 65 6d 6f 72 79 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 31 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a | #Memory">..</a></h1>........<p>. |
| a15a0 | 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 72 6d 73 20 | ......The.Zig.language.performs. |
| a15c0 | 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 6c 66 20 6f | no.memory.management.on.behalf.o |
| a15e0 | 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 20 20 20 20 | f.the.programmer..This.is....... |
| a1600 | 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 77 68 79 20 | why.Zig.has.no.runtime,.and.why. |
| a1620 | 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 20 73 6f 20 | Zig.code.works.seamlessly.in.so. |
| a1640 | 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 6c 75 64 69 | many.environments,.......includi |
| a1660 | 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 74 69 6e 67 | ng.real-time.software,.operating |
| a1680 | 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 76 69 63 65 | .system.kernels,.embedded.device |
| a16a0 | 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 76 65 72 73 | s,.and.......low.latency.servers |
| a16c0 | 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 72 61 6d 6d | ..As.a.consequence,.Zig.programm |
| a16e0 | 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 6e 73 77 65 | ers.must.always.be.able.to.answe |
| a1700 | 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 3c 2f 70 3e | r.......the.question:.......</p> |
| a1720 | 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 65 2d 74 68 | .......<p><a.href="#Where-are-th |
| a1740 | 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 61 | e-bytes">Where.are.the.bytes?</a |
| a1760 | 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 69 67 2c 20 | ></p>.......<p>.......Like.Zig,. |
| a1780 | 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 61 73 20 6d | the.C.programming.language.has.m |
| a17a0 | 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 65 76 65 72 | anual.memory.management..However |
| a17c0 | 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 64 65 66 61 | ,.unlike.Zig,.......C.has.a.defa |
| a17e0 | 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 3c 2f 63 6f | ult.allocator.-.<code>malloc</co |
| a1800 | 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 6e 64 20 3c | de>,.<code>realloc</code>,.and.< |
| a1820 | 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 20 6c 69 6e | code>free</code>........When.lin |
| a1840 | 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 65 73 20 74 | king.against.libc,.Zig.exposes.t |
| a1860 | 68 69 73 20 61 6c 6c 6f 63 61 74 6f 72 20 77 69 74 68 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | his.allocator.with.<code.class=" |
| a1880 | 7a 69 67 22 3e 73 74 64 2e 68 65 61 70 2e 63 5f 61 6c 6c 6f 63 61 74 6f 72 3c 2f 63 6f 64 65 3e | zig">std.heap.c_allocator</code> |
| a18a0 | 2e 0a 20 20 20 20 20 20 48 6f 77 65 76 65 72 2c 20 62 79 20 63 6f 6e 76 65 6e 74 69 6f 6e 2c 20 | ........However,.by.convention,. |
| a18c0 | 74 68 65 72 65 20 69 73 20 6e 6f 20 64 65 66 61 75 6c 74 20 61 6c 6c 6f 63 61 74 6f 72 20 69 6e | there.is.no.default.allocator.in |
| a18e0 | 20 5a 69 67 2e 20 49 6e 73 74 65 61 64 2c 20 66 75 6e 63 74 69 6f 6e 73 20 77 68 69 63 68 20 6e | .Zig..Instead,.functions.which.n |
| a1900 | 65 65 64 20 74 6f 0a 20 20 20 20 20 20 61 6c 6c 6f 63 61 74 65 20 61 63 63 65 70 74 20 61 6e 20 | eed.to.......allocate.accept.an. |
| a1920 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 2a 41 6c 6c 6f 63 61 74 6f 72 3c 2f 63 6f | <code.class="zig">*Allocator</co |
| a1940 | 64 65 3e 20 70 61 72 61 6d 65 74 65 72 2e 20 4c 69 6b 65 77 69 73 65 2c 20 64 61 74 61 20 73 74 | de>.parameter..Likewise,.data.st |
| a1960 | 72 75 63 74 75 72 65 73 20 73 75 63 68 20 61 73 0a 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 | ructures.such.as.......<code.cla |
| a1980 | 73 73 3d 22 7a 69 67 22 3e 73 74 64 2e 41 72 72 61 79 4c 69 73 74 3c 2f 63 6f 64 65 3e 20 61 63 | ss="zig">std.ArrayList</code>.ac |
| a19a0 | 63 65 70 74 20 61 6e 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 2a 41 6c 6c 6f 63 | cept.an.<code.class="zig">*Alloc |
| a19c0 | 61 74 6f 72 3c 2f 63 6f 64 65 3e 20 70 61 72 61 6d 65 74 65 72 20 69 6e 0a 20 20 20 20 20 20 74 | ator</code>.parameter.in.......t |
| a19e0 | 68 65 69 72 20 69 6e 69 74 69 61 6c 69 7a 61 74 69 6f 6e 20 66 75 6e 63 74 69 6f 6e 73 3a 0a 20 | heir.initialization.functions:.. |
| a1a00 | 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e | .....</p>.......<p.class="file"> |
| a1a20 | 61 6c 6c 6f 63 61 74 6f 72 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 | allocator.zig</p><pre><code.clas |
| a1a40 | 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e | s="zig"><span.class="tok-kw">con |
| a1a60 | 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 |
| a1a80 | 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 |
| a1aa0 | 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"</ |
| a1ac0 | 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 |
| a1ae0 | 73 74 3c 2f 73 70 61 6e 3e 20 41 6c 6c 6f 63 61 74 6f 72 20 3d 20 73 74 64 2e 6d 65 6d 2e 41 6c | st</span>.Allocator.=.std.mem.Al |
| a1b00 | 6c 6f 63 61 74 6f 72 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f | locator;.<span.class="tok-kw">co |
| a1b20 | 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. |
| a1b40 | 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 |
| a1b60 | 73 74 3c 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"> |
| a1b80 | 26 71 75 6f 74 3b 75 73 69 6e 67 20 61 6e 20 61 6c 6c 6f 63 61 74 6f 72 26 71 75 6f 74 3b 3c 2f | "using.an.allocator"</ |
| a1ba0 | 73 70 61 6e 3e 20 7b 0a 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" |
| a1bc0 | 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 62 75 66 66 65 72 3a 20 5b 3c 73 70 61 6e 20 63 6c 61 73 73 | >var</span>.buffer:.[<span.class |
| a1be0 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 30 3c 2f 73 70 61 6e 3e 5d 3c 73 70 61 6e 20 63 | ="tok-number">100</span>]<span.c |
| a1c00 | 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 | lass="tok-type">u8</span>.=.<spa |
| a1c20 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 75 6e 64 65 66 69 6e 65 64 3c 2f 73 70 | n.class="tok-null">undefined</sp |
| a1c40 | 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f | an>;.....<span.class="tok-kw">co |
| a1c60 | 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 6c 6c 6f 63 61 74 6f 72 20 3d 20 26 61 6d 70 3b 73 74 64 2e | nst</span>.allocator.=.&std. |
| a1c80 | 68 65 61 70 2e 46 69 78 65 64 42 75 66 66 65 72 41 6c 6c 6f 63 61 74 6f 72 2e 69 6e 69 74 28 26 | heap.FixedBufferAllocator.init(& |
| a1ca0 | 61 6d 70 3b 62 75 66 66 65 72 29 2e 61 6c 6c 6f 63 61 74 6f 72 3b 0a 20 20 20 20 3c 73 70 61 6e | amp;buffer).allocator;.....<span |
| a1cc0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 72 65 73 | .class="tok-kw">const</span>.res |
| a1ce0 | 75 6c 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f | ult.=.<span.class="tok-kw">try</ |
| a1d00 | 73 70 61 6e 3e 20 63 6f 6e 63 61 74 28 61 6c 6c 6f 63 61 74 6f 72 2c 20 3c 73 70 61 6e 20 63 6c | span>.concat(allocator,.<span.cl |
| a1d20 | 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 66 6f 6f 26 71 75 6f 74 3b 3c 2f 73 | ass="tok-str">"foo"</s |
| a1d40 | 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f | pan>,.<span.class="tok-str">&quo |
| a1d60 | 74 3b 62 61 72 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 65 78 70 65 63 74 28 | t;bar"</span>);.....expect( |
| a1d80 | 73 74 64 2e 6d 65 6d 2e 65 71 6c 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | std.mem.eql(<span.class="tok-typ |
| a1da0 | 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 73 | e">u8</span>,.<span.class="tok-s |
| a1dc0 | 74 72 22 3e 26 71 75 6f 74 3b 66 6f 6f 62 61 72 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 72 | tr">"foobar"</span>,.r |
| a1de0 | 65 73 75 6c 74 29 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | esult));.}..<span.class="tok-kw" |
| a1e00 | 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"> |
| a1e20 | 63 6f 6e 63 61 74 3c 2f 73 70 61 6e 3e 28 61 6c 6c 6f 63 61 74 6f 72 3a 20 2a 41 6c 6c 6f 63 61 | concat</span>(allocator:.*Alloca |
| a1e40 | 74 6f 72 2c 20 61 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 | tor,.a:.[]<span.class="tok-kw">c |
| a1e60 | 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 |
| a1e80 | 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 62 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | e">u8</span>,.b:.[]<span.class=" |
| a1ea0 | 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 |
| a1ec0 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 20 21 5b 5d 3c 73 70 61 6e 20 | ="tok-type">u8</span>).![]<span. |
| a1ee0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 | class="tok-type">u8</span>.{.... |
| a1f00 | 20 3c 73 70 61 6e 20 63 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 |
| a1f20 | 6e 3e 20 72 65 73 75 6c 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | n>.result.=.<span.class="tok-kw" |
| a1f40 | 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 61 6c 6c 6f 63 61 74 6f 72 2e 61 6c 6c 6f 63 28 3c 73 70 61 | >try</span>.allocator.alloc(<spa |
| a1f60 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 61 2e | n.class="tok-type">u8</span>,.a. |
| a1f80 | 6c 65 6e 20 2b 20 62 2e 6c 65 6e 29 3b 0a 20 20 20 20 73 74 64 2e 6d 65 6d 2e 63 6f 70 79 28 3c | len.+.b.len);.....std.mem.copy(< |
| a1fa0 | 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>, |
| a1fc0 | 20 72 65 73 75 6c 74 2c 20 61 29 3b 0a 20 20 20 20 73 74 64 2e 6d 65 6d 2e 63 6f 70 79 28 3c 73 | .result,.a);.....std.mem.copy(<s |
| a1fe0 | 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>,. |
| a2000 | 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 3c 73 70 61 6e 20 63 | result[a.len..],.b);.....<span.c |
| a2020 | 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 |
| a2040 | 6c 74 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 | lt;.}</code></pre><pre><code.cla |
| a2060 | 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 61 6c 6c 6f 63 61 74 6f 72 2e | ss="shell">$.zig.test.allocator. |
| a2080 | 7a 69 67 0a 31 2f 31 20 74 65 73 74 20 26 71 75 6f 74 3b 75 73 69 6e 67 20 61 6e 20 61 6c 6c 6f | zig.1/1.test."using.an.allo |
| a20a0 | 63 61 74 6f 72 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 | cator"....OK.All.1.tests.pa |
| a20c0 | 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 | ssed..</code></pre>........<p>.. |
| a20e0 | 20 20 20 20 20 49 6e 20 74 68 65 20 61 62 6f 76 65 20 65 78 61 6d 70 6c 65 2c 20 31 30 30 20 62 | .....In.the.above.example,.100.b |
| a2100 | 79 74 65 73 20 6f 66 20 73 74 61 63 6b 20 6d 65 6d 6f 72 79 20 61 72 65 20 75 73 65 64 20 74 6f | ytes.of.stack.memory.are.used.to |
| a2120 | 20 69 6e 69 74 69 61 6c 69 7a 65 20 61 0a 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d | .initialize.a.......<code.class= |
| a2140 | 22 7a 69 67 22 3e 46 69 78 65 64 42 75 66 66 65 72 41 6c 6c 6f 63 61 74 6f 72 3c 2f 63 6f 64 65 | "zig">FixedBufferAllocator</code |
| a2160 | 3e 2c 20 77 68 69 63 68 20 69 73 20 74 68 65 6e 20 70 61 73 73 65 64 20 74 6f 20 61 20 66 75 6e | >,.which.is.then.passed.to.a.fun |
| a2180 | 63 74 69 6f 6e 2e 0a 20 20 20 20 20 20 41 73 20 61 20 63 6f 6e 76 65 6e 69 65 6e 63 65 20 74 68 | ction........As.a.convenience.th |
| a21a0 | 65 72 65 20 69 73 20 61 20 67 6c 6f 62 61 6c 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | ere.is.a.global.<code.class="zig |
| a21c0 | 22 3e 46 69 78 65 64 42 75 66 66 65 72 41 6c 6c 6f 63 61 74 6f 72 3c 2f 63 6f 64 65 3e 0a 20 20 | ">FixedBufferAllocator</code>... |
| a21e0 | 20 20 20 20 61 76 61 69 6c 61 62 6c 65 20 66 6f 72 20 71 75 69 63 6b 20 74 65 73 74 73 20 61 74 | ....available.for.quick.tests.at |
| a2200 | 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 73 74 64 2e 74 65 73 74 69 6e 67 2e 61 | .<code.class="zig">std.testing.a |
| a2220 | 6c 6c 6f 63 61 74 6f 72 3c 2f 63 6f 64 65 3e 2c 0a 20 20 20 20 20 20 77 68 69 63 68 20 77 69 6c | llocator</code>,.......which.wil |
| a2240 | 6c 20 61 6c 73 6f 20 64 6f 20 70 65 72 66 6f 72 6d 20 62 61 73 69 63 20 6c 65 61 6b 20 64 65 74 | l.also.do.perform.basic.leak.det |
| a2260 | 65 63 74 69 6f 6e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 | ection........</p>.......<p>.... |
| a2280 | 20 20 20 5a 69 67 20 68 61 73 20 61 20 67 65 6e 65 72 61 6c 20 70 75 72 70 6f 73 65 20 61 6c 6c | ...Zig.has.a.general.purpose.all |
| a22a0 | 6f 63 61 74 6f 72 20 61 76 61 69 6c 61 62 6c 65 20 74 6f 20 62 65 20 69 6d 70 6f 72 74 65 64 0a | ocator.available.to.be.imported. |
| a22c0 | 20 20 20 20 20 20 77 69 74 68 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 73 74 64 | ......with.<code.class="zig">std |
| a22e0 | 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 2f 63 | .heap.GeneralPurposeAllocator</c |
| a2300 | 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 6f 6d | ode>..However,.it.is.still.recom |
| a2320 | 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 68 72 | mended.to.......follow.the.<a.hr |
| a2340 | 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 6f 6f | ef="#Choosing-an-Allocator">Choo |
| a2360 | 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 20 20 | sing.an.Allocator</a>.guide..... |
| a2380 | 20 20 20 3c 2f 70 3e 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 43 68 6f 6f 73 69 6e 67 2d | ...</p>........<h2.id="Choosing- |
| a23a0 | 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 6f 6f | an-Allocator"><a.href="#toc-Choo |
| a23c0 | 73 69 6e 67 2d 61 6e 2d 41 6c 6c 6f 63 61 74 6f 72 22 3e 43 68 6f 6f 73 69 6e 67 20 61 6e 20 41 | sing-an-Allocator">Choosing.an.A |
| a23e0 | 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 65 66 | llocator</a>.<a.class="hdr".href |
| a2400 | 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 61 3e | ="#Choosing-an-Allocator">..</a> |
| a2420 | 3c 2f 68 32 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 20 74 | </h2>........<p>What.allocator.t |
| a2440 | 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 61 63 | o.use.depends.on.a.number.of.fac |
| a2460 | 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 68 65 | tors..Here.is.a.flow.chart.to.he |
| a2480 | 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 20 20 | lp.you.decide:.......</p>....... |
| a24a0 | 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 20 20 | <ol>...........<li>............. |
| a24c0 | 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 20 74 | ..Are.you.making.a.library?.In.t |
| a24e0 | 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 6f 64 | his.case,.best.to.accept.an.<cod |
| a2500 | 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 2a 41 6c 6c 6f 63 61 74 6f 72 3c 2f 63 6f 64 65 3e 0a | e.class="zig">*Allocator</code>. |
| a2520 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 61 73 20 61 20 70 61 72 61 6d 65 74 65 72 20 61 6e 64 | ..............as.a.parameter.and |
| a2540 | 20 61 6c 6c 6f 77 20 79 6f 75 72 20 6c 69 62 72 61 72 79 27 73 20 75 73 65 72 73 20 74 6f 20 64 | .allow.your.library's.users.to.d |
| a2560 | 65 63 69 64 65 20 77 68 61 74 20 61 6c 6c 6f 63 61 74 6f 72 20 74 6f 20 75 73 65 2e 0a 20 20 20 | ecide.what.allocator.to.use..... |
| a2580 | 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 41 72 65 20 79 | .......</li>...........<li>Are.y |
| a25a0 | 6f 75 20 6c 69 6e 6b 69 6e 67 20 6c 69 62 63 3f 20 49 6e 20 74 68 69 73 20 63 61 73 65 2c 20 3c | ou.linking.libc?.In.this.case,.< |
| a25c0 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 73 74 64 2e 68 65 61 70 2e 63 5f 61 6c 6c 6f | code.class="zig">std.heap.c_allo |
| a25e0 | 63 61 74 6f 72 3c 2f 63 6f 64 65 3e 20 69 73 20 6c 69 6b 65 6c 79 0a 20 20 20 20 20 20 20 20 20 | cator</code>.is.likely.......... |
| a2600 | 20 20 20 20 20 74 68 65 20 72 69 67 68 74 20 63 68 6f 69 63 65 2c 20 61 74 20 6c 65 61 73 74 20 | .....the.right.choice,.at.least. |
| a2620 | 66 6f 72 20 79 6f 75 72 20 6d 61 69 6e 20 61 6c 6c 6f 63 61 74 6f 72 2e 3c 2f 6c 69 3e 0a 20 20 | for.your.main.allocator.</li>... |
| a2640 | 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 49 73 20 74 68 | ........<li>...............Is.th |
| a2660 | 65 20 6d 61 78 69 6d 75 6d 20 6e 75 6d 62 65 72 20 6f 66 20 62 79 74 65 73 20 74 68 61 74 20 79 | e.maximum.number.of.bytes.that.y |
| a2680 | 6f 75 20 77 69 6c 6c 20 6e 65 65 64 20 62 6f 75 6e 64 65 64 20 62 79 20 61 20 6e 75 6d 62 65 72 | ou.will.need.bounded.by.a.number |
| a26a0 | 20 6b 6e 6f 77 6e 20 61 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d | .known.at...............<a.href= |
| a26c0 | 22 23 63 6f 6d 70 74 69 6d 65 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 61 3e 3f 20 49 6e 20 74 68 69 | "#comptime">comptime</a>?.In.thi |
| a26e0 | 73 20 63 61 73 65 2c 20 75 73 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 73 74 | s.case,.use.<code.class="zig">st |
| a2700 | 64 2e 68 65 61 70 2e 46 69 78 65 64 42 75 66 66 65 72 41 6c 6c 6f 63 61 74 6f 72 3c 2f 63 6f 64 | d.heap.FixedBufferAllocator</cod |
| a2720 | 65 3e 20 6f 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d | e>.or...............<code.class= |
| a2740 | 22 7a 69 67 22 3e 73 74 64 2e 68 65 61 70 2e 54 68 72 65 61 64 53 61 66 65 46 69 78 65 64 42 75 | "zig">std.heap.ThreadSafeFixedBu |
| a2760 | 66 66 65 72 41 6c 6c 6f 63 61 74 6f 72 3c 2f 63 6f 64 65 3e 20 64 65 70 65 6e 64 69 6e 67 20 6f | fferAllocator</code>.depending.o |
| a2780 | 6e 20 77 68 65 74 68 65 72 20 79 6f 75 20 6e 65 65 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 | n.whether.you.need.............. |
| a27a0 | 20 74 68 72 65 61 64 2d 73 61 66 65 74 79 20 6f 72 20 6e 6f 74 2e 0a 20 20 20 20 20 20 20 20 20 | .thread-safety.or.not........... |
| a27c0 | 20 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 | .</li>...........<li>........... |
| a27e0 | 20 20 20 20 49 73 20 79 6f 75 72 20 70 72 6f 67 72 61 6d 20 61 20 63 6f 6d 6d 61 6e 64 20 6c 69 | ....Is.your.program.a.command.li |
| a2800 | 6e 65 20 61 70 70 6c 69 63 61 74 69 6f 6e 20 77 68 69 63 68 20 72 75 6e 73 20 66 72 6f 6d 20 73 | ne.application.which.runs.from.s |
| a2820 | 74 61 72 74 20 74 6f 20 65 6e 64 20 77 69 74 68 6f 75 74 20 61 6e 79 20 66 75 6e 64 61 6d 65 6e | tart.to.end.without.any.fundamen |
| a2840 | 74 61 6c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 79 63 6c 69 63 61 6c 20 70 61 74 74 65 | tal...............cyclical.patte |
| a2860 | 72 6e 20 28 73 75 63 68 20 61 73 20 61 20 76 69 64 65 6f 20 67 61 6d 65 20 6d 61 69 6e 20 6c 6f | rn.(such.as.a.video.game.main.lo |
| a2880 | 6f 70 2c 20 6f 72 20 61 20 77 65 62 20 73 65 72 76 65 72 20 72 65 71 75 65 73 74 20 68 61 6e 64 | op,.or.a.web.server.request.hand |
| a28a0 | 6c 65 72 29 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 75 63 68 20 74 68 61 74 20 69 74 | ler),...............such.that.it |
| a28c0 | 20 77 6f 75 6c 64 20 6d 61 6b 65 20 73 65 6e 73 65 20 74 6f 20 66 72 65 65 20 65 76 65 72 79 74 | .would.make.sense.to.free.everyt |
| a28e0 | 68 69 6e 67 20 61 74 20 6f 6e 63 65 20 61 74 20 74 68 65 20 65 6e 64 3f 0a 20 20 20 20 20 20 20 | hing.at.once.at.the.end?........ |
| a2900 | 20 20 20 20 20 20 20 49 6e 20 74 68 69 73 20 63 61 73 65 2c 20 69 74 20 69 73 20 72 65 63 6f 6d | .......In.this.case,.it.is.recom |
| a2920 | 6d 65 6e 64 65 64 20 74 6f 20 66 6f 6c 6c 6f 77 20 74 68 69 73 20 70 61 74 74 65 72 6e 3a 0a 20 | mended.to.follow.this.pattern:.. |
| a2940 | 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 63 6c 69 | .............<p.class="file">cli |
| a2960 | 5f 61 6c 6c 6f 63 61 74 69 6f 6e 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c | _allocation.zig</p><pre><code.cl |
| a2980 | 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 | ass="zig"><span.class="tok-kw">c |
| a29a0 | 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 |
| a29c0 | 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 |
| a29e0 | 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" |
| a2a00 | 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"> |
| a2a20 | 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"> |
| a2a40 | 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 6d | fn</span>.<span.class="tok-fn">m |
| a2a60 | 61 69 6e 3c 2f 73 70 61 6e 3e 28 29 20 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | ain</span>().!<span.class="tok-t |
| a2a80 | 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 |
| a2aa0 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 61 72 65 6e 61 20 3d 20 73 | ss="tok-kw">var</span>.arena.=.s |
| a2ac0 | 74 64 2e 68 65 61 70 2e 41 72 65 6e 61 41 6c 6c 6f 63 61 74 6f 72 2e 69 6e 69 74 28 73 74 64 2e | td.heap.ArenaAllocator.init(std. |
| a2ae0 | 68 65 61 70 2e 70 61 67 65 5f 61 6c 6c 6f 63 61 74 6f 72 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 | heap.page_allocator);.....<span. |
| a2b00 | 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 |
| a2b20 | 61 2e 64 65 69 6e 69 74 28 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | a.deinit();......<span.class="to |
| a2b40 | 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 6c 6c 6f 63 61 74 6f 72 20 3d 20 26 | k-kw">const</span>.allocator.=.& |
| a2b60 | 61 6d 70 3b 61 72 65 6e 61 2e 61 6c 6c 6f 63 61 74 6f 72 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 | amp;arena.allocator;......<span. |
| a2b80 | 63 6c 61 73 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 | class="tok-kw">const</span>.ptr. |
| a2ba0 | 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 |
| a2bc0 | 3e 20 61 6c 6c 6f 63 61 74 6f 72 2e 63 72 65 61 74 65 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | >.allocator.create(<span.class=" |
| a2be0 | 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 73 74 64 2e 64 | tok-type">i32</span>);.....std.d |
| a2c00 | 65 62 75 67 2e 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 | ebug.print(<span.class="tok-str" |
| a2c20 | 3e 26 71 75 6f 74 3b 70 74 72 3d 7b 2a 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e | >"ptr={*}\n"</span>,.. |
| a2c40 | 7b 70 74 72 7d 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 | {ptr});.}</code></pre><pre><code |
| a2c60 | 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 63 | .class="shell">$.zig.build-exe.c |
| a2c80 | 6c 69 5f 61 6c 6c 6f 63 61 74 69 6f 6e 2e 7a 69 67 0a 24 20 2e 2f 63 6c 69 5f 61 6c 6c 6f 63 61 | li_allocation.zig.$../cli_alloca |
| a2ca0 | 74 69 6f 6e 0a 70 74 72 3d 69 33 32 40 37 66 37 64 38 32 39 35 66 30 31 38 0a 3c 2f 63 6f 64 65 | tion.ptr=i32@7f7d8295f018.</code |
| a2cc0 | 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 57 68 65 6e 20 75 73 69 6e | ></pre>................When.usin |
| a2ce0 | 67 20 74 68 69 73 20 6b 69 6e 64 20 6f 66 20 61 6c 6c 6f 63 61 74 6f 72 2c 20 74 68 65 72 65 20 | g.this.kind.of.allocator,.there. |
| a2d00 | 69 73 20 6e 6f 20 6e 65 65 64 20 74 6f 20 66 72 65 65 20 61 6e 79 74 68 69 6e 67 20 6d 61 6e 75 | is.no.need.to.free.anything.manu |
| a2d20 | 61 6c 6c 79 2e 20 45 76 65 72 79 74 68 69 6e 67 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 67 | ally..Everything...............g |
| a2d40 | 65 74 73 20 66 72 65 65 64 20 61 74 20 6f 6e 63 65 20 77 69 74 68 20 74 68 65 20 63 61 6c 6c 20 | ets.freed.at.once.with.the.call. |
| a2d60 | 74 6f 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 61 72 65 6e 61 2e 64 65 69 6e 69 | to.<code.class="zig">arena.deini |
| a2d80 | 74 28 29 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 | t()</code>............</li>..... |
| a2da0 | 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 74 68 65 | ......<li>...............Are.the |
| a2dc0 | 20 61 6c 6c 6f 63 61 74 69 6f 6e 73 20 70 61 72 74 20 6f 66 20 61 20 63 79 63 6c 69 63 61 6c 20 | .allocations.part.of.a.cyclical. |
| a2de0 | 70 61 74 74 65 72 6e 20 73 75 63 68 20 61 73 20 61 20 76 69 64 65 6f 20 67 61 6d 65 20 6d 61 69 | pattern.such.as.a.video.game.mai |
| a2e00 | 6e 20 6c 6f 6f 70 2c 20 6f 72 20 61 20 77 65 62 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 | n.loop,.or.a.web...............s |
| a2e20 | 65 72 76 65 72 20 72 65 71 75 65 73 74 20 68 61 6e 64 6c 65 72 3f 20 49 66 20 74 68 65 20 61 6c | erver.request.handler?.If.the.al |
| a2e40 | 6c 6f 63 61 74 69 6f 6e 73 20 63 61 6e 20 61 6c 6c 20 62 65 20 66 72 65 65 64 20 61 74 20 6f 6e | locations.can.all.be.freed.at.on |
| a2e60 | 63 65 2c 20 61 74 20 74 68 65 20 65 6e 64 20 6f 66 20 74 68 65 20 63 79 63 6c 65 2c 0a 20 20 20 | ce,.at.the.end.of.the.cycle,.... |
| a2e80 | 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 20 65 78 61 6d 70 6c 65 20 6f 6e 63 65 20 74 68 65 20 | ...........for.example.once.the. |
| a2ea0 | 76 69 64 65 6f 20 67 61 6d 65 20 66 72 61 6d 65 20 68 61 73 20 62 65 65 6e 20 66 75 6c 6c 79 20 | video.game.frame.has.been.fully. |
| a2ec0 | 72 65 6e 64 65 72 65 64 2c 20 6f 72 20 74 68 65 20 77 65 62 20 73 65 72 76 65 72 20 72 65 71 75 | rendered,.or.the.web.server.requ |
| a2ee0 | 65 73 74 20 68 61 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 62 65 65 6e 20 73 65 72 76 65 | est.has...............been.serve |
| a2f00 | 64 2c 20 74 68 65 6e 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 73 74 64 2e 68 65 | d,.then.<code.class="zig">std.he |
| a2f20 | 61 70 2e 41 72 65 6e 61 41 6c 6c 6f 63 61 74 6f 72 3c 2f 63 6f 64 65 3e 20 69 73 20 61 20 67 72 | ap.ArenaAllocator</code>.is.a.gr |
| a2f40 | 65 61 74 20 63 61 6e 64 69 64 61 74 65 2e 20 41 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | eat.candidate..As............... |
| a2f60 | 64 65 6d 6f 6e 73 74 72 61 74 65 64 20 69 6e 20 74 68 65 20 70 72 65 76 69 6f 75 73 20 62 75 6c | demonstrated.in.the.previous.bul |
| a2f80 | 6c 65 74 20 70 6f 69 6e 74 2c 20 74 68 69 73 20 61 6c 6c 6f 77 73 20 79 6f 75 20 74 6f 20 66 72 | let.point,.this.allows.you.to.fr |
| a2fa0 | 65 65 20 65 6e 74 69 72 65 20 61 72 65 6e 61 73 20 61 74 20 6f 6e 63 65 2e 0a 20 20 20 20 20 20 | ee.entire.arenas.at.once........ |
| a2fc0 | 20 20 20 20 20 20 20 20 4e 6f 74 65 20 61 6c 73 6f 20 74 68 61 74 20 69 66 20 61 6e 20 75 70 70 | ........Note.also.that.if.an.upp |
| a2fe0 | 65 72 20 62 6f 75 6e 64 20 6f 66 20 6d 65 6d 6f 72 79 20 63 61 6e 20 62 65 20 65 73 74 61 62 6c | er.bound.of.memory.can.be.establ |
| a3000 | 69 73 68 65 64 2c 20 74 68 65 6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 20 | ished,.then...............<code. |
| a3020 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 73 74 64 2e 68 65 61 70 2e 46 69 78 65 64 42 75 66 66 65 72 | class="zig">std.heap.FixedBuffer |
| a3040 | 41 6c 6c 6f 63 61 74 6f 72 3c 2f 63 6f 64 65 3e 20 63 61 6e 20 62 65 20 75 73 65 64 20 61 73 20 | Allocator</code>.can.be.used.as. |
| a3060 | 61 20 66 75 72 74 68 65 72 20 6f 70 74 69 6d 69 7a 61 74 69 6f 6e 2e 0a 20 20 20 20 20 20 20 20 | a.further.optimization.......... |
| a3080 | 20 20 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 | ..</li>...........<li>.......... |
| a30a0 | 20 20 20 20 20 41 72 65 20 79 6f 75 20 77 72 69 74 69 6e 67 20 61 20 74 65 73 74 2c 20 61 6e 64 | .....Are.you.writing.a.test,.and |
| a30c0 | 20 79 6f 75 20 77 61 6e 74 20 74 6f 20 6d 61 6b 65 20 73 75 72 65 20 3c 63 6f 64 65 20 63 6c 61 | .you.want.to.make.sure.<code.cla |
| a30e0 | 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 | ss="zig"><span.class="tok-kw">er |
| a3100 | 72 6f 72 3c 2f 73 70 61 6e 3e 2e 4f 75 74 4f 66 4d 65 6d 6f 72 79 3c 2f 63 6f 64 65 3e 0a 20 20 | ror</span>.OutOfMemory</code>... |
| a3120 | 20 20 20 20 20 20 20 20 20 20 20 20 69 73 20 68 61 6e 64 6c 65 64 20 63 6f 72 72 65 63 74 6c 79 | ............is.handled.correctly |
| a3140 | 3f 20 49 6e 20 74 68 69 73 20 63 61 73 65 2c 20 75 73 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d | ?.In.this.case,.use.<code.class= |
| a3160 | 22 7a 69 67 22 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 | "zig">std.testing.FailingAllocat |
| a3180 | 6f 72 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 6c 69 3e 0a 20 20 20 20 20 | or</code>............</li>...... |
| a31a0 | 20 20 20 20 20 3c 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 41 72 65 20 79 6f 75 20 | .....<li>...............Are.you. |
| a31c0 | 77 72 69 74 69 6e 67 20 61 20 74 65 73 74 3f 20 49 6e 20 74 68 69 73 20 63 61 73 65 2c 20 75 73 | writing.a.test?.In.this.case,.us |
| a31e0 | 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 73 74 64 2e 74 65 73 74 69 6e 67 2e | e.<code.class="zig">std.testing. |
| a3200 | 61 6c 6c 6f 63 61 74 6f 72 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 6c 69 | allocator</code>............</li |
| a3220 | 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 |
| a3240 | 69 6e 61 6c 6c 79 2c 20 69 66 20 6e 6f 6e 65 20 6f 66 20 74 68 65 20 61 62 6f 76 65 20 61 70 70 | inally,.if.none.of.the.above.app |
| a3260 | 6c 79 2c 20 79 6f 75 20 6e 65 65 64 20 61 20 67 65 6e 65 72 61 6c 20 70 75 72 70 6f 73 65 20 61 | ly,.you.need.a.general.purpose.a |
| a3280 | 6c 6c 6f 63 61 74 6f 72 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 5a 69 67 27 73 20 67 65 | llocator................Zig's.ge |
| a32a0 | 6e 65 72 61 6c 20 70 75 72 70 6f 73 65 20 61 6c 6c 6f 63 61 74 6f 72 20 69 73 20 61 76 61 69 6c | neral.purpose.allocator.is.avail |
| a32c0 | 61 62 6c 65 20 61 73 20 61 20 66 75 6e 63 74 69 6f 6e 20 74 68 61 74 20 74 61 6b 65 73 20 61 20 | able.as.a.function.that.takes.a. |
| a32e0 | 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> |
| a3300 | 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 73 74 72 75 63 74 22 | ...............<a.href="#struct" |
| a3320 | 3e 73 74 72 75 63 74 3c 2f 61 3e 20 6f 66 20 63 6f 6e 66 69 67 75 72 61 74 69 6f 6e 20 6f 70 74 | >struct</a>.of.configuration.opt |
| a3340 | 69 6f 6e 73 20 61 6e 64 20 72 65 74 75 72 6e 73 20 61 20 74 79 70 65 2e 0a 20 20 20 20 20 20 20 | ions.and.returns.a.type......... |
| a3360 | 20 20 20 20 20 20 20 47 65 6e 65 72 61 6c 6c 79 2c 20 79 6f 75 20 77 69 6c 6c 20 73 65 74 20 75 | .......Generally,.you.will.set.u |
| a3380 | 70 20 6f 6e 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 73 74 64 2e 68 65 61 70 | p.one.<code.class="zig">std.heap |
| a33a0 | 2e 47 65 6e 65 72 61 6c 50 75 72 70 6f 73 65 41 6c 6c 6f 63 61 74 6f 72 3c 2f 63 6f 64 65 3e 20 | .GeneralPurposeAllocator</code>. |
| a33c0 | 69 6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 79 6f 75 72 20 6d 61 69 6e 20 66 75 6e 63 74 | in...............your.main.funct |
| a33e0 | 69 6f 6e 2c 20 61 6e 64 20 74 68 65 6e 20 70 61 73 73 20 69 74 20 6f 72 20 73 75 62 2d 61 6c 6c | ion,.and.then.pass.it.or.sub-all |
| a3400 | 6f 63 61 74 6f 72 73 20 61 72 6f 75 6e 64 20 74 6f 20 76 61 72 69 6f 75 73 20 70 61 72 74 73 20 | ocators.around.to.various.parts. |
| a3420 | 6f 66 20 79 6f 75 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 61 70 70 6c 69 63 61 74 69 6f | of.your...............applicatio |
| a3440 | 6e 2e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 | n............</li>...........<li |
| a3460 | 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 59 6f 75 20 63 61 6e 20 61 6c 73 6f 20 63 6f 6e | >...............You.can.also.con |
| a3480 | 73 69 64 65 72 20 3c 61 20 68 72 65 66 3d 22 23 49 6d 70 6c 65 6d 65 6e 74 69 6e 67 2d 61 6e 2d | sider.<a.href="#Implementing-an- |
| a34a0 | 41 6c 6c 6f 63 61 74 6f 72 22 3e 49 6d 70 6c 65 6d 65 6e 74 69 6e 67 20 61 6e 20 41 6c 6c 6f 63 | Allocator">Implementing.an.Alloc |
| a34c0 | 61 74 6f 72 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | ator</a>............</li>....... |
| a34e0 | 3c 2f 6f 6c 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 57 68 65 72 | </ol>...............<h2.id="Wher |
| a3500 | 65 2d 61 72 65 2d 74 68 65 2d 62 79 74 65 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 57 | e-are-the-bytes"><a.href="#toc-W |
| a3520 | 68 65 72 65 2d 61 72 65 2d 74 68 65 2d 62 79 74 65 73 22 3e 57 68 65 72 65 20 61 72 65 20 74 68 | here-are-the-bytes">Where.are.th |
| a3540 | 65 20 62 79 74 65 73 3f 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 | e.bytes?</a>.<a.class="hdr".href |
| a3560 | 3d 22 23 57 68 65 72 65 2d 61 72 65 2d 74 68 65 2d 62 79 74 65 73 22 3e c2 a7 3c 2f 61 3e 3c 2f | ="#Where-are-the-bytes">..</a></ |
| a3580 | 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 53 74 72 69 6e 67 20 6c 69 74 65 72 61 6c 73 20 73 75 | h2>........<p>String.literals.su |
| a35a0 | 63 68 20 61 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c | ch.as.<code.class="zig"><span.cl |
| a35c0 | 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 66 6f 6f 26 71 75 6f 74 3b 3c 2f 73 | ass="tok-str">"foo"</s |
| a35e0 | 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 61 72 65 20 69 6e 20 74 68 65 20 67 6c 6f 62 61 6c 20 63 6f | pan></code>.are.in.the.global.co |
| a3600 | 6e 73 74 61 6e 74 20 64 61 74 61 20 73 65 63 74 69 6f 6e 2e 0a 20 20 20 20 20 20 54 68 69 73 20 | nstant.data.section........This. |
| a3620 | 69 73 20 77 68 79 20 69 74 20 69 73 20 61 6e 20 65 72 72 6f 72 20 74 6f 20 70 61 73 73 20 61 20 | is.why.it.is.an.error.to.pass.a. |
| a3640 | 73 74 72 69 6e 67 20 6c 69 74 65 72 61 6c 20 74 6f 20 61 20 6d 75 74 61 62 6c 65 20 73 6c 69 63 | string.literal.to.a.mutable.slic |
| a3660 | 65 2c 20 6c 69 6b 65 20 74 68 69 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c | e,.like.this:.......</p>.......< |
| a3680 | 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e | p.class="file">test.zig</p><pre> |
| a36a0 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | <code.class="zig"><span.class="t |
| a36c0 | 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 |
| a36e0 | 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 |
| a3700 | 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 |
| a3720 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 7d 0a 0a 3c | ass="tok-type">void</span>.{}..< |
| a3740 | 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>. |
| a3760 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 72 69 | <span.class="tok-str">"stri |
| a3780 | 6e 67 20 6c 69 74 65 72 61 6c 20 74 6f 20 6d 75 74 61 62 6c 65 20 73 6c 69 63 65 26 71 75 6f 74 | ng.literal.to.mutable.slice" |
| a37a0 | 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 66 6f 6f 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ;</span>.{.....foo(<span.class=" |
| a37c0 | 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 |
| a37e0 | 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 | >);.}</code></pre><pre><code.cla |
| a3800 | 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 3c | ss="shell">$.zig.test.test.zig.< |
| a3820 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2e 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 | span.class="t0_1">./docgen_tmp/t |
| a3840 | 65 73 74 2e 7a 69 67 3a 34 3a 39 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | est.zig:4:9:.</span><span.class= |
| a3860 | 22 74 33 31 5f 31 22 3e 65 72 72 6f 72 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 | "t31_1">error:.</span><span.clas |
| a3880 | 73 3d 22 74 30 5f 31 22 3e 65 78 70 65 63 74 65 64 20 74 79 70 65 20 27 5b 5d 75 38 27 2c 20 66 | s="t0_1">expected.type.'[]u8',.f |
| a38a0 | 6f 75 6e 64 20 27 2a 63 6f 6e 73 74 20 5b 35 3a 30 5d 75 38 27 3c 2f 73 70 61 6e 3e 0a 20 20 20 | ound.'*const.[5:0]u8'</span>.... |
| a38c0 | 20 66 6f 6f 28 26 71 75 6f 74 3b 68 65 6c 6c 6f 26 71 75 6f 74 3b 29 3b 0a 20 20 20 20 20 20 20 | .foo("hello");........ |
| a38e0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 2f | .<span.class="t32_1">^</span>.</ |
| a3900 | 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 48 6f 77 65 76 65 72 20 69 66 | code></pre>........<p>However.if |
| a3920 | 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 20 74 68 | .you.make.the.slice.constant,.th |
| a3940 | 65 6e 20 69 74 20 77 6f 72 6b 73 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d | en.it.works:</p>.......<p.class= |
| a3960 | 22 66 69 6c 65 22 3e 73 74 72 6c 69 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 | "file">strlit.zig</p><pre><code. |
| a3980 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | class="zig"><span.class="tok-kw" |
| a39a0 | 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"> |
| a39c0 | 66 6f 6f 3c 2f 73 70 61 6e 3e 28 73 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | foo</span>(s:.[]<span.class="tok |
| a39e0 | 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 |
| a3a00 | 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 3d | ok-type">u8</span>).<span.class= |
| a3a20 | 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 7d 0a 0a 3c 73 70 61 6e | "tok-type">void</span>.{}..<span |
| a3a40 | 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 |
| a3a60 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 72 69 6e 67 20 6c | n.class="tok-str">"string.l |
| a3a80 | 69 74 65 72 61 6c 20 74 6f 20 63 6f 6e 73 74 61 6e 74 20 73 6c 69 63 65 26 71 75 6f 74 3b 3c 2f | iteral.to.constant.slice"</ |
| a3aa0 | 73 70 61 6e 3e 20 7b 0a 20 20 20 20 66 6f 6f 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | span>.{.....foo(<span.class="tok |
| a3ac0 | 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 3b | -str">"hello"</span>); |
| a3ae0 | 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d | .}</code></pre><pre><code.class= |
| a3b00 | 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 73 74 72 6c 69 74 2e 7a 69 67 0a 31 2f | "shell">$.zig.test.strlit.zig.1/ |
| a3b20 | 31 20 74 65 73 74 20 26 71 75 6f 74 3b 73 74 72 69 6e 67 20 6c 69 74 65 72 61 6c 20 74 6f 20 63 | 1.test."string.literal.to.c |
| a3b40 | 6f 6e 73 74 61 6e 74 20 73 6c 69 63 65 26 71 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 41 6c 6c 20 31 20 | onstant.slice"....OK.All.1. |
| a3b60 | 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 | tests.passed..</code></pre>..... |
| a3b80 | 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 4a 75 73 74 20 6c 69 6b 65 20 73 74 72 69 6e 67 20 6c 69 | ...<p>.......Just.like.string.li |
| a3ba0 | 74 65 72 61 6c 73 2c 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 | terals,.<code.class="zig"><span. |
| a3bc0 | 63 6c 61 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 |
| a3be0 | 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 75 65 20 | e>.declarations,.when.the.value. |
| a3c00 | 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 65 22 3e | is.known.at.<a.href="#comptime"> |
| a3c20 | 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 64 20 69 | comptime</a>,.......are.stored.i |
| a3c40 | 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 63 74 69 | n.the.global.constant.data.secti |
| a3c60 | 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 6d 65 2d | on..Also.<a.href="#Compile-Time- |
| a3c80 | 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 62 6c 65 | Variables">Compile.Time.Variable |
| a3ca0 | 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 20 67 6c | s</a>.are.stored.......in.the.gl |
| a3cc0 | 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 20 20 20 | obal.constant.data.section...... |
| a3ce0 | 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 20 63 6c 61 | ..</p>.......<p>.......<code.cla |
| a3d00 | 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 | ss="zig"><span.class="tok-kw">va |
| a3d20 | 72 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 64 65 63 6c 61 72 61 74 69 6f 6e 73 20 69 6e 73 | r</span></code>.declarations.ins |
| a3d40 | 69 64 65 20 66 75 6e 63 74 69 6f 6e 73 20 61 72 65 20 73 74 6f 72 65 64 20 69 6e 20 74 68 65 20 | ide.functions.are.stored.in.the. |
| a3d60 | 66 75 6e 63 74 69 6f 6e 27 73 20 73 74 61 63 6b 20 66 72 61 6d 65 2e 20 4f 6e 63 65 20 61 20 66 | function's.stack.frame..Once.a.f |
| a3d80 | 75 6e 63 74 69 6f 6e 20 72 65 74 75 72 6e 73 2c 0a 20 20 20 20 20 20 61 6e 79 20 3c 61 20 68 72 | unction.returns,.......any.<a.hr |
| a3da0 | 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 74 6f 20 76 | ef="#Pointers">Pointers</a>.to.v |
| a3dc0 | 61 72 69 61 62 6c 65 73 20 69 6e 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 27 73 20 73 74 61 63 6b | ariables.in.the.function's.stack |
| a3de0 | 20 66 72 61 6d 65 20 62 65 63 6f 6d 65 20 69 6e 76 61 6c 69 64 20 72 65 66 65 72 65 6e 63 65 73 | .frame.become.invalid.references |
| a3e00 | 2c 20 61 6e 64 0a 20 20 20 20 20 20 64 65 72 65 66 65 72 65 6e 63 69 6e 67 20 74 68 65 6d 20 62 | ,.and.......dereferencing.them.b |
| a3e20 | 65 63 6f 6d 65 73 20 75 6e 63 68 65 63 6b 65 64 20 3c 61 20 68 72 65 66 3d 22 23 55 6e 64 65 66 | ecomes.unchecked.<a.href="#Undef |
| a3e40 | 69 6e 65 64 2d 42 65 68 61 76 69 6f 72 22 3e 55 6e 64 65 66 69 6e 65 64 20 42 65 68 61 76 69 6f | ined-Behavior">Undefined.Behavio |
| a3e60 | 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 20 20 20 | r</a>........</p>.......<p>..... |
| a3e80 | 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ..<code.class="zig"><span.class= |
| a3ea0 | 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 64 65 63 6c 61 | "tok-kw">var</span></code>.decla |
| a3ec0 | 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 6f 72 20 69 6e 20 3c | rations.at.the.top.level.or.in.< |
| a3ee0 | 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 64 65 63 6c | a.href="#struct">struct</a>.decl |
| a3f00 | 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 65 20 67 6c 6f 62 61 | arations.are.stored.in.the.globa |
| a3f20 | 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 20 20 20 3c 2f 70 3e | l.......data.section........</p> |
| a3f40 | 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 74 69 6f 6e 20 6f 66 | .......<p>.......The.location.of |
| a3f60 | 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 6f 64 65 20 63 6c 61 | .memory.allocated.with.<code.cla |
| a3f80 | 73 73 3d 22 7a 69 67 22 3e 61 6c 6c 6f 63 61 74 6f 72 2e 61 6c 6c 6f 63 3c 2f 63 6f 64 65 3e 20 | ss="zig">allocator.alloc</code>. |
| a3fa0 | 6f 72 0a 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 61 6c 6c 6f 63 | or.......<code.class="zig">alloc |
| a3fc0 | 61 74 6f 72 2e 63 72 65 61 74 65 3c 2f 63 6f 64 65 3e 20 69 73 20 64 65 74 65 72 6d 69 6e 65 64 | ator.create</code>.is.determined |
| a3fe0 | 20 62 79 20 74 68 65 20 61 6c 6c 6f 63 61 74 6f 72 27 73 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 | .by.the.allocator's.implementati |
| a4000 | 6f 6e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 54 4f 44 4f 3a 20 74 68 | on........</p>.......<p>TODO:.th |
| a4020 | 72 65 61 64 20 6c 6f 63 61 6c 20 76 61 72 69 61 62 6c 65 73 3c 2f 70 3e 0a 20 20 20 20 20 20 0a | read.local.variables</p>........ |
| a4040 | 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 49 6d 70 6c 65 6d 65 6e 74 69 6e 67 2d 61 6e 2d 41 | .......<h2.id="Implementing-an-A |
| a4060 | 6c 6c 6f 63 61 74 6f 72 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 49 6d 70 6c 65 6d 65 6e | llocator"><a.href="#toc-Implemen |
| a4080 | 74 69 6e 67 2d 61 6e 2d 41 6c 6c 6f 63 61 74 6f 72 22 3e 49 6d 70 6c 65 6d 65 6e 74 69 6e 67 20 | ting-an-Allocator">Implementing. |
| a40a0 | 61 6e 20 41 6c 6c 6f 63 61 74 6f 72 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 | an.Allocator</a>.<a.class="hdr". |
| a40c0 | 68 72 65 66 3d 22 23 49 6d 70 6c 65 6d 65 6e 74 69 6e 67 2d 61 6e 2d 41 6c 6c 6f 63 61 74 6f 72 | href="#Implementing-an-Allocator |
| a40e0 | 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 5a 69 67 20 70 72 6f 67 | ">..</a></h2>........<p>Zig.prog |
| a4100 | 72 61 6d 6d 65 72 73 20 63 61 6e 20 69 6d 70 6c 65 6d 65 6e 74 20 74 68 65 69 72 20 6f 77 6e 20 | rammers.can.implement.their.own. |
| a4120 | 61 6c 6c 6f 63 61 74 6f 72 73 20 62 79 20 66 75 6c 66 69 6c 6c 69 6e 67 20 74 68 65 20 41 6c 6c | allocators.by.fulfilling.the.All |
| a4140 | 6f 63 61 74 6f 72 20 69 6e 74 65 72 66 61 63 65 2e 0a 20 20 20 20 20 20 49 6e 20 6f 72 64 65 72 | ocator.interface........In.order |
| a4160 | 20 74 6f 20 64 6f 20 74 68 69 73 20 6f 6e 65 20 6d 75 73 74 20 72 65 61 64 20 63 61 72 65 66 75 | .to.do.this.one.must.read.carefu |
| a4180 | 6c 6c 79 20 74 68 65 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 20 63 6f 6d 6d 65 6e 74 73 20 69 | lly.the.documentation.comments.i |
| a41a0 | 6e 20 73 74 64 2f 6d 65 6d 2e 7a 69 67 20 61 6e 64 0a 20 20 20 20 20 20 74 68 65 6e 20 73 75 70 | n.std/mem.zig.and.......then.sup |
| a41c0 | 70 6c 79 20 61 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 72 65 61 6c 6c 6f 63 46 | ply.a.<code.class="zig">reallocF |
| a41e0 | 6e 3c 2f 63 6f 64 65 3e 20 61 6e 64 20 61 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | n</code>.and.a.<code.class="zig" |
| a4200 | 3e 73 68 72 69 6e 6b 46 6e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 | >shrinkFn</code>........</p>.... |
| a4220 | 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 72 65 20 61 72 65 20 6d 61 6e 79 20 65 78 61 6d | ...<p>.......There.are.many.exam |
| a4240 | 70 6c 65 20 61 6c 6c 6f 63 61 74 6f 72 73 20 74 6f 20 6c 6f 6f 6b 20 61 74 20 66 6f 72 20 69 6e | ple.allocators.to.look.at.for.in |
| a4260 | 73 70 69 72 61 74 69 6f 6e 2e 20 4c 6f 6f 6b 20 61 74 20 73 74 64 2f 68 65 61 70 2e 7a 69 67 20 | spiration..Look.at.std/heap.zig. |
| a4280 | 61 6e 64 0a 20 20 20 20 20 20 61 74 20 74 68 69 73 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d | and.......at.this.......<a.href= |
| a42a0 | 22 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 61 6e 64 72 65 77 72 6b 2f 7a 69 67 | "https://github.com/andrewrk/zig |
| a42c0 | 2d 67 65 6e 65 72 61 6c 2d 70 75 72 70 6f 73 65 2d 61 6c 6c 6f 63 61 74 6f 72 2f 22 3e 77 6f 72 | -general-purpose-allocator/">wor |
| a42e0 | 6b 2d 69 6e 2d 70 72 6f 67 72 65 73 73 20 67 65 6e 65 72 61 6c 20 70 75 72 70 6f 73 65 20 61 6c | k-in-progress.general.purpose.al |
| a4300 | 6c 6f 63 61 74 6f 72 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 54 4f 44 4f 3a 20 6f 6e 63 65 20 3c 61 | locator</a>........TODO:.once.<a |
| a4320 | 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 7a 69 67 6c 61 6e | .href="https://github.com/ziglan |
| a4340 | 67 2f 7a 69 67 2f 69 73 73 75 65 73 2f 32 31 22 3e 23 32 31 3c 2f 61 3e 20 69 73 20 64 6f 6e 65 | g/zig/issues/21">#21</a>.is.done |
| a4360 | 2c 20 6c 69 6e 6b 20 74 6f 20 74 68 65 20 64 6f 63 73 0a 20 20 20 20 20 20 68 65 72 65 2e 0a 20 | ,.link.to.the.docs.......here... |
| a4380 | 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 | .....</p>...............<h2.id=" |
| a43a0 | 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 3c 61 20 68 72 65 66 | Heap-Allocation-Failure"><a.href |
| a43c0 | 3d 22 23 74 6f 63 2d 48 65 61 70 2d 41 6c 6c 6f 63 61 74 69 6f 6e 2d 46 61 69 6c 75 72 65 22 3e | ="#toc-Heap-Allocation-Failure"> |
| a43e0 | 48 65 61 70 20 41 6c 6c 6f 63 61 74 69 6f 6e 20 46 61 69 6c 75 72 65 3c 2f 61 3e 20 3c 61 20 63 | Heap.Allocation.Failure</a>.<a.c |
| a4400 | 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 48 65 61 70 2d 41 6c 6c 6f 63 61 74 69 6f | lass="hdr".href="#Heap-Allocatio |
| a4420 | 6e 2d 46 61 69 6c 75 72 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 | n-Failure">..</a></h2>........<p |
| a4440 | 3e 0a 20 20 20 20 20 20 4d 61 6e 79 20 70 72 6f 67 72 61 6d 6d 69 6e 67 20 6c 61 6e 67 75 61 67 | >.......Many.programming.languag |
| a4460 | 65 73 20 63 68 6f 6f 73 65 20 74 6f 20 68 61 6e 64 6c 65 20 74 68 65 20 70 6f 73 73 69 62 69 6c | es.choose.to.handle.the.possibil |
| a4480 | 69 74 79 20 6f 66 20 68 65 61 70 20 61 6c 6c 6f 63 61 74 69 6f 6e 20 66 61 69 6c 75 72 65 20 62 | ity.of.heap.allocation.failure.b |
| a44a0 | 79 0a 20 20 20 20 20 20 75 6e 63 6f 6e 64 69 74 69 6f 6e 61 6c 6c 79 20 63 72 61 73 68 69 6e 67 | y.......unconditionally.crashing |
| a44c0 | 2e 20 42 79 20 63 6f 6e 76 65 6e 74 69 6f 6e 2c 20 5a 69 67 20 70 72 6f 67 72 61 6d 6d 65 72 73 | ..By.convention,.Zig.programmers |
| a44e0 | 20 64 6f 20 6e 6f 74 20 63 6f 6e 73 69 64 65 72 20 74 68 69 73 20 74 6f 20 62 65 20 61 0a 20 20 | .do.not.consider.this.to.be.a... |
| a4500 | 20 20 20 20 73 61 74 69 73 66 61 63 74 6f 72 79 20 73 6f 6c 75 74 69 6f 6e 2e 20 49 6e 73 74 65 | ....satisfactory.solution..Inste |
| a4520 | 61 64 2c 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 | ad,.<code.class="zig"><span.clas |
| a4540 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 4f 75 74 4f 66 4d 65 6d | s="tok-kw">error</span>.OutOfMem |
| a4560 | 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 65 61 70 | ory</code>.represents.......heap |
| a4580 | 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 6c 69 62 | .allocation.failure,.and.Zig.lib |
| a45a0 | 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 20 77 68 | raries.return.this.error.code.wh |
| a45c0 | 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 66 61 69 | enever.heap.allocation.......fai |
| a45e0 | 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 72 6f 6d | lure.prevented.an.operation.from |
| a4600 | 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 20 20 20 | .completing.successfully........ |
| a4620 | 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 65 20 61 | </p>.......<p>.......Some.have.a |
| a4640 | 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 74 69 6e | rgued.that.because.some.operatin |
| a4660 | 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 6d 65 6d | g.systems.such.as.Linux.have.mem |
| a4680 | 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 20 20 20 | ory.overcommit.enabled.by....... |
| a46a0 | 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 61 6e 64 | default,.it.is.pointless.to.hand |
| a46c0 | 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 68 65 72 | le.heap.allocation.failure..Ther |
| a46e0 | 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 20 72 65 | e.are.many.problems.with.this.re |
| a4700 | 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 3e 0a 20 | asoning:.......</p>.......<ul>.. |
| a4720 | 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 69 6e 67 | .........<li>Only.some.operating |
| a4740 | 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 65 61 74 | .systems.have.an.overcommit.feat |
| a4760 | 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 20 20 20 | ure................<ul>......... |
| a4780 | 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 61 62 6c | ..........<li>Linux.has.it.enabl |
| a47a0 | 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 69 67 75 | ed.by.default,.but.it.is.configu |
| a47c0 | 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 20 3c 6c | rable.</li>...................<l |
| a47e0 | 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 2e 3c 2f | i>Windows.does.not.overcommit.</ |
| a4800 | 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 65 64 64 | li>...................<li>Embedd |
| a4820 | 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 6d 6d 69 | ed.systems.do.not.have.overcommi |
| a4840 | 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 3e 48 6f | t.</li>...................<li>Ho |
| a4860 | 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 6d 61 79 | bby.operating.systems.may.or.may |
| a4880 | 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 20 20 20 | .not.have.overcommit.</li>...... |
| a48a0 | 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 6c 69 3e 0a 20 | .........</ul>...........</li>.. |
| a48c0 | 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 6f 72 20 | .........<li>...............For. |
| a48e0 | 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 73 20 74 | real-time.systems,.not.only.is.t |
| a4900 | 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 61 6c 6c | here.no.overcommit,.but.typicall |
| a4920 | 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 20 20 20 | y.the.maximum.amount............ |
| a4940 | 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 69 73 20 | ...of.memory.per.application.is. |
| a4960 | 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 20 20 20 | determined.ahead.of.time........ |
| a4980 | 20 20 20 20 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 0a 20 20 20 20 20 20 20 | ....</li>...........<li>........ |
| a49a0 | 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 2c 20 6f | .......When.writing.a.library,.o |
| a49c0 | 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 72 65 75 | ne.of.the.main.goals.is.code.reu |
| a49e0 | 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 20 20 20 | se..By.making.code.handle....... |
| a4a00 | 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 72 72 65 | ........allocation.failure.corre |
| a4a20 | 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 62 6c 65 | ctly,.a.library.becomes.eligible |
| a4a40 | 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 20 20 6d | .to.be.reused.in...............m |
| a4a60 | 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 0a 20 20 | ore.contexts............</li>... |
| a4a80 | 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 74 68 6f | ........<li>...............Altho |
| a4aa0 | 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 6f 20 64 | ugh.some.software.has.grown.to.d |
| a4ac0 | 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 62 6c 65 | epend.on.overcommit.being.enable |
| a4ae0 | 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 20 20 69 | d,.its.existence...............i |
| a4b00 | 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 72 20 65 | s.the.source.of.countless.user.e |
| a4b20 | 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 79 73 74 | xperience.disasters..When.a.syst |
| a4b40 | 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 20 20 20 | em.with.overcommit.enabled,..... |
| a4b60 | 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 66 61 75 | ..........such.as.Linux.on.defau |
| a4b80 | 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 65 6d 6f | lt.settings,.comes.close.to.memo |
| a4ba0 | 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 6b 73 20 | ry.exhaustion,.the.system.locks. |
| a4bc0 | 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 75 6e 75 | up...............and.becomes.unu |
| a4be0 | 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 20 4b 69 | sable..At.this.point,.the.OOM.Ki |
| a4c00 | 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 6f 20 6b | ller.selects.an.application.to.k |
| a4c20 | 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 75 72 69 | ill...............based.on.heuri |
| a4c40 | 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 20 64 65 | stics..This.non-deterministic.de |
| a4c60 | 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 70 6f 72 | cision.often.results.in.an.impor |
| a4c80 | 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 69 6e 67 | tant.process...............being |
| a4ca0 | 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 65 74 75 | .killed,.and.often.fails.to.retu |
| a4cc0 | 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 20 6f 72 | rn.the.system.back.to.working.or |
| a4ce0 | 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 75 6c 3e | der............</li>.......</ul> |
| a4d00 | 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 63 75 72 73 69 6f 6e | ...............<h2.id="Recursion |
| a4d20 | 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 63 75 72 | "><a.href="#toc-Recursion">Recur |
| a4d40 | 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 22 23 52 | sion</a>.<a.class="hdr".href="#R |
| a4d60 | 65 63 75 72 73 69 6f 6e 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e | ecursion">..</a></h2>........<p> |
| a4d80 | 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 6e 74 61 | .......Recursion.is.a.fundamenta |
| a4da0 | 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 48 6f 77 | l.tool.in.modeling.software..How |
| a4dc0 | 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 65 64 20 | ever.it.has.an.often-overlooked. |
| a4de0 | 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 72 79 20 | problem:.......unbounded.memory. |
| a4e00 | 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 3c 70 3e | allocation........</p>.......<p> |
| a4e20 | 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 66 20 61 | .......Recursion.is.an.area.of.a |
| a4e40 | 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 61 6e 64 | ctive.experimentation.in.Zig.and |
| a4e60 | 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 20 6e 6f | .so.the.documentation.here.is.no |
| a4e80 | 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 0a 20 20 | t.final........You.can.read.a... |
| a4ea0 | 20 20 20 20 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 7a 69 67 6c 61 6e 67 2e 6f 72 67 | ....<a.href="https://ziglang.org |
| a4ec0 | 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 2e 68 74 | /download/0.3.0/release-notes.ht |
| a4ee0 | 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 72 73 69 | ml#recursion">summary.of.recursi |
| a4f00 | 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 65 20 6e | on.status.in.the.0.3.0.release.n |
| a4f20 | 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 3e 0a 20 | otes</a>........</p>.......<p>.. |
| a4f40 | 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 74 20 63 | .....The.short.summary.is.that.c |
| a4f60 | 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 61 6c 6c | urrently.recursion.works.normall |
| a4f80 | 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 67 68 20 | y.as.you.would.expect..Although. |
| a4fa0 | 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 74 65 63 | Zig.code.......is.not.yet.protec |
| a4fc0 | 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 73 20 70 | ted.from.stack.overflow,.it.is.p |
| a4fe0 | 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 6f 66 20 | lanned.that.a.future.version.of. |
| a5000 | 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 72 6f 74 | Zig.will.provide.......such.prot |
| a5020 | 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 6f 6f 70 | ection,.with.some.degree.of.coop |
| a5040 | 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 64 2e 0a | eration.from.Zig.code.required.. |
| a5060 | 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d | ......</p>...............<h2.id= |
| a5080 | 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 72 65 66 | "Lifetime-and-Ownership"><a.href |
| a50a0 | 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 22 3e 4c | ="#toc-Lifetime-and-Ownership">L |
| a50c0 | 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 63 6c 61 | ifetime.and.Ownership</a>.<a.cla |
| a50e0 | 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 4f 77 6e | ss="hdr".href="#Lifetime-and-Own |
| a5100 | 65 72 73 68 69 70 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 | ership">..</a></h2>........<p>.. |
| a5120 | 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 27 73 20 | .....It.is.the.Zig.programmer's. |
| a5140 | 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 20 61 20 | responsibility.to.ensure.that.a. |
| a5160 | 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 61 3e 20 | <a.href="#Pointers">pointer</a>. |
| a5180 | 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 65 20 6d | is.not.......accessed.when.the.m |
| a51a0 | 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 20 61 76 | emory.pointed.to.is.no.longer.av |
| a51c0 | 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 22 23 53 | ailable..Note.that.a.<a.href="#S |
| a51e0 | 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 6f 72 6d | lices">slice</a>.......is.a.form |
| a5200 | 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 65 6e 63 | .of.pointer,.in.that.it.referenc |
| a5220 | 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 20 20 20 | es.other.memory........</p>..... |
| a5240 | 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 6e 74 20 | ..<p>.......In.order.to.prevent. |
| a5260 | 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 63 6f 6e | bugs,.there.are.some.helpful.con |
| a5280 | 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 6e 67 20 | ventions.to.follow.when.dealing. |
| a52a0 | 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 61 6c 2c | with.pointers........In.general, |
| a52c0 | 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 69 6e 74 | .when.a.function.returns.a.point |
| a52e0 | 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 20 66 75 | er,.the.documentation.for.the.fu |
| a5300 | 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 68 6f 20 | nction.should.explain.......who. |
| a5320 | 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 65 70 74 | "owns".the.pointer..This.concept |
| a5340 | 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 77 68 65 | .helps.the.programmer.decide.whe |
| a5360 | 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 0a 20 20 | n.it.is.appropriate,.if.ever,... |
| a5380 | 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 20 20 3c | ....to.free.the.pointer........< |
| a53a0 | 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 46 6f 72 20 65 78 61 6d 70 6c 65 2c | /p>.......<p>.......For.example, |
| a53c0 | 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 20 6d 61 | .the.function's.documentation.ma |
| a53e0 | 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 65 64 20 | y.say."caller.owns.the.returned. |
| a5400 | 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 74 68 65 | memory",.in.which.case.......the |
| a5420 | 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 20 6d 75 | .code.that.calls.the.function.mu |
| a5440 | 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 65 65 20 | st.have.a.plan.for.when.to.free. |
| a5460 | 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 20 73 69 | that.memory..Probably.in.this.si |
| a5480 | 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 69 6c 6c | tuation,.......the.function.will |
| a54a0 | 20 61 63 63 65 70 74 20 61 6e 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 2a 41 6c | .accept.an.<code.class="zig">*Al |
| a54c0 | 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 0a 20 20 20 20 20 20 | locator</code>.parameter........ |
| a54e0 | 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 74 69 6d 65 73 20 74 | </p>.......<p>.......Sometimes.t |
| a5500 | 68 65 20 6c 69 66 65 74 69 6d 65 20 6f 66 20 61 20 70 6f 69 6e 74 65 72 20 6d 61 79 20 62 65 20 | he.lifetime.of.a.pointer.may.be. |
| a5520 | 6d 6f 72 65 20 63 6f 6d 70 6c 69 63 61 74 65 64 2e 20 46 6f 72 20 65 78 61 6d 70 6c 65 2c 20 74 | more.complicated..For.example,.t |
| a5540 | 68 65 0a 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 73 74 64 2e 41 | he.......<code.class="zig">std.A |
| a5560 | 72 72 61 79 4c 69 73 74 28 54 29 2e 69 74 65 6d 73 3c 2f 63 6f 64 65 3e 20 73 6c 69 63 65 20 68 | rrayList(T).items</code>.slice.h |
| a5580 | 61 73 20 61 20 6c 69 66 65 74 69 6d 65 20 74 68 61 74 20 72 65 6d 61 69 6e 73 0a 20 20 20 20 20 | as.a.lifetime.that.remains...... |
| a55a0 | 20 76 61 6c 69 64 20 75 6e 74 69 6c 20 74 68 65 20 6e 65 78 74 20 74 69 6d 65 20 74 68 65 20 6c | .valid.until.the.next.time.the.l |
| a55c0 | 69 73 74 20 69 73 20 72 65 73 69 7a 65 64 2c 20 73 75 63 68 20 61 73 20 62 79 20 61 70 70 65 6e | ist.is.resized,.such.as.by.appen |
| a55e0 | 64 69 6e 67 20 6e 65 77 20 65 6c 65 6d 65 6e 74 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 | ding.new.elements........</p>... |
| a5600 | 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 20 41 50 49 20 64 6f 63 75 6d 65 6e 74 61 74 | ....<p>.......The.API.documentat |
| a5620 | 69 6f 6e 20 66 6f 72 20 66 75 6e 63 74 69 6f 6e 73 20 61 6e 64 20 64 61 74 61 20 73 74 72 75 63 | ion.for.functions.and.data.struc |
| a5640 | 74 75 72 65 73 20 73 68 6f 75 6c 64 20 74 61 6b 65 20 67 72 65 61 74 20 63 61 72 65 20 74 6f 20 | tures.should.take.great.care.to. |
| a5660 | 65 78 70 6c 61 69 6e 0a 20 20 20 20 20 20 74 68 65 20 6f 77 6e 65 72 73 68 69 70 20 61 6e 64 20 | explain.......the.ownership.and. |
| a5680 | 6c 69 66 65 74 69 6d 65 20 73 65 6d 61 6e 74 69 63 73 20 6f 66 20 70 6f 69 6e 74 65 72 73 2e 20 | lifetime.semantics.of.pointers.. |
| a56a0 | 4f 77 6e 65 72 73 68 69 70 20 64 65 74 65 72 6d 69 6e 65 73 20 77 68 6f 73 65 20 72 65 73 70 6f | Ownership.determines.whose.respo |
| a56c0 | 6e 73 69 62 69 6c 69 74 79 20 69 74 0a 20 20 20 20 20 20 69 73 20 74 6f 20 66 72 65 65 20 74 68 | nsibility.it.......is.to.free.th |
| a56e0 | 65 20 6d 65 6d 6f 72 79 20 72 65 66 65 72 65 6e 63 65 64 20 62 79 20 74 68 65 20 70 6f 69 6e 74 | e.memory.referenced.by.the.point |
| a5700 | 65 72 2c 20 61 6e 64 20 6c 69 66 65 74 69 6d 65 20 64 65 74 65 72 6d 69 6e 65 73 20 74 68 65 20 | er,.and.lifetime.determines.the. |
| a5720 | 70 6f 69 6e 74 20 61 74 20 77 68 69 63 68 0a 20 20 20 20 20 20 74 68 65 20 6d 65 6d 6f 72 79 20 | point.at.which.......the.memory. |
| a5740 | 62 65 63 6f 6d 65 73 20 69 6e 61 63 63 65 73 73 69 62 6c 65 20 28 6c 65 73 74 20 3c 61 20 68 72 | becomes.inaccessible.(lest.<a.hr |
| a5760 | 65 66 3d 22 23 55 6e 64 65 66 69 6e 65 64 2d 42 65 68 61 76 69 6f 72 22 3e 55 6e 64 65 66 69 6e | ef="#Undefined-Behavior">Undefin |
| a5780 | 65 64 20 42 65 68 61 76 69 6f 72 3c 2f 61 3e 20 6f 63 63 75 72 29 2e 0a 20 20 20 20 20 20 3c 2f | ed.Behavior</a>.occur)........</ |
| a57a0 | 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 31 20 69 64 3d 22 | p>......................<h1.id=" |
| a57c0 | 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 3d 22 23 74 6f 63 | Compile-Variables"><a.href="#toc |
| a57e0 | 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 65 20 56 61 72 69 | -Compile-Variables">Compile.Vari |
| a5800 | 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="# |
| a5820 | 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 2f 68 31 3e 0a 0a | Compile-Variables">..</a></h1>.. |
| a5840 | 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 72 69 61 62 6c 65 | ......<p>.......Compile.variable |
| a5860 | 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 69 6e 67 20 74 68 | s.are.accessible.by.importing.th |
| a5880 | 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | e.<code.class="zig"><span.class= |
| a58a0 | 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 62 75 69 6c 74 69 6e 26 71 75 6f 74 3b 3c 2f 73 | "tok-str">"builtin"</s |
| a58c0 | 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 70 61 63 6b 61 67 65 2c 0a 20 20 20 20 20 20 77 68 69 63 68 | pan></code>.package,.......which |
| a58e0 | 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 20 6d 61 6b 65 73 20 61 76 61 69 6c 61 62 6c 65 20 74 6f | .the.compiler.makes.available.to |
| a5900 | 20 65 76 65 72 79 20 5a 69 67 20 73 6f 75 72 63 65 20 66 69 6c 65 2e 20 49 74 20 63 6f 6e 74 61 | .every.Zig.source.file..It.conta |
| a5920 | 69 6e 73 0a 20 20 20 20 20 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 63 6f 6e 73 74 61 6e 74 73 | ins.......compile-time.constants |
| a5940 | 20 73 75 63 68 20 61 73 20 74 68 65 20 63 75 72 72 65 6e 74 20 74 61 72 67 65 74 2c 20 65 6e 64 | .such.as.the.current.target,.end |
| a5960 | 69 61 6e 6e 65 73 73 2c 20 61 6e 64 20 72 65 6c 65 61 73 65 20 6d 6f 64 65 2e 0a 20 20 20 20 20 | ianness,.and.release.mode....... |
| a5980 | 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | .</p>.......<pre><code.class="zi |
| a59a0 | 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 | g"><span.class="tok-kw">const</s |
| a59c0 | 70 61 6e 3e 20 62 75 69 6c 74 69 6e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | pan>.builtin.=.<span.class="tok- |
| a59e0 | 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 |
| a5a00 | 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 62 75 69 6c 74 69 6e 26 71 75 6f 74 | ass="tok-str">"builtin" |
| a5a20 | 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"> |
| a5a40 | 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 65 70 61 72 61 74 6f 72 20 3d 20 3c 73 70 61 6e 20 63 | const</span>.separator.=.<span.c |
| a5a60 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 62 75 69 6c 74 69 6e | lass="tok-kw">if</span>.(builtin |
| a5a80 | 2e 6f 73 20 3d 3d 20 62 75 69 6c 74 69 6e 2e 4f 73 2e 77 69 6e 64 6f 77 73 29 20 3c 73 70 61 6e | .os.==.builtin.Os.windows).<span |
| a5aa0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 5c 5c 27 3c 2f 73 70 61 6e 3e 20 3c 73 70 | .class="tok-str">'\\'</span>.<sp |
| a5ac0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 3c 73 | an.class="tok-kw">else</span>.<s |
| a5ae0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 2f 27 3c 2f 73 70 61 6e 3e 3b 3c | pan.class="tok-str">'/'</span>;< |
| a5b00 | 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 45 78 61 | /code></pre>.......<p>.......Exa |
| a5b20 | 6d 70 6c 65 20 6f 66 20 77 68 61 74 20 69 73 20 69 6d 70 6f 72 74 65 64 20 77 69 74 68 20 3c 63 | mple.of.what.is.imported.with.<c |
| a5b40 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ode.class="zig"><span.class="tok |
| a5b60 | 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 |
| a5b80 | 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 |
| a5ba0 | 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 2f 70 3e 0a 20 20 | t;</span>)</code>:.......</p>... |
| a5bc0 | 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e | ....<pre><code.class="zig"><span |
| a5be0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 73 69 6e 67 6e 61 6d 65 73 70 61 63 65 3c 2f | .class="tok-kw">usingnamespace</ |
| a5c00 | 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e | span>.<span.class="tok-builtin"> |
| a5c20 | 40 69 6d 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- |
| a5c40 | 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 62 75 69 | str">"std"</span>).bui |
| a5c60 | 6c 74 69 6e 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 | ltin;.<span.class="tok-comment"> |
| a5c80 | 2f 2f 2f 20 44 65 70 72 65 63 61 74 65 64 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 | ///.Deprecated</span>.<span.clas |
| a5ca0 | 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 |
| a5cc0 | 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 63 68 20 3d 20 54 | s="tok-kw">const</span>.arch.=.T |
| a5ce0 | 61 72 67 65 74 2e 63 75 72 72 65 6e 74 2e 63 70 75 2e 61 72 63 68 3b 0a 3c 73 70 61 6e 20 63 6c | arget.current.cpu.arch;.<span.cl |
| a5d00 | 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 44 65 70 72 65 63 61 74 65 64 | ass="tok-comment">///.Deprecated |
| a5d20 | 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 |
| a5d40 | 3c 2f 73 70 61 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 |
| a5d60 | 73 74 3c 2f 73 70 61 6e 3e 20 65 6e 64 69 61 6e 20 3d 20 54 61 72 67 65 74 2e 63 75 72 72 65 6e | st</span>.endian.=.Target.curren |
| a5d80 | 74 2e 63 70 75 2e 61 72 63 68 2e 65 6e 64 69 61 6e 28 29 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | t.cpu.arch.endian();.<span.class |
| a5da0 | 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 |
| a5dc0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6f 75 74 70 75 74 5f 6d 6f | ="tok-kw">const</span>.output_mo |
| a5de0 | 64 65 20 3d 20 4f 75 74 70 75 74 4d 6f 64 65 2e 4f 62 6a 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | de.=.OutputMode.Obj;.<span.class |
| a5e00 | 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 |
| a5e20 | 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 |
| a5e40 | 20 3d 20 4c 69 6e 6b 4d 6f 64 65 2e 53 74 61 74 69 63 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | .=.LinkMode.Static;.<span.class= |
| a5e60 | 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= |
| a5e80 | 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 69 73 5f 74 65 73 74 20 3d 20 | "tok-kw">const</span>.is_test.=. |
| a5ea0 | 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 |
| a5ec0 | 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 | an>;.<span.class="tok-kw">pub</s |
| a5ee0 | 70 61 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< |
| a5f00 | 2f 73 70 61 6e 3e 20 73 69 6e 67 6c 65 5f 74 68 72 65 61 64 65 64 20 3d 20 3c 73 70 61 6e 20 63 | /span>.single_threaded.=.<span.c |
| a5f20 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 | lass="tok-null">false</span>;.<s |
| a5f40 | 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 |
| a5f60 | 70 61 6e 20 63 6c 61 73 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>. |
| a5f80 | 61 62 69 20 3d 20 41 62 69 2e 67 6e 75 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | abi.=.Abi.gnu;.<span.class="tok- |
| a5fa0 | 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- |
| a5fc0 | 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 63 70 75 3a 20 43 70 75 20 3d 20 43 70 75 7b | kw">const</span>.cpu:.Cpu.=.Cpu{ |
| a5fe0 | 0a 20 20 20 20 2e 61 72 63 68 20 3d 20 2e 78 38 36 5f 36 34 2c 0a 20 20 20 20 2e 6d 6f 64 65 6c | ......arch.=..x86_64,......model |
| a6000 | 20 3d 20 26 61 6d 70 3b 54 61 72 67 65 74 2e 78 38 36 2e 63 70 75 2e 73 6b 79 6c 61 6b 65 2c 0a | .=.&Target.x86.cpu.skylake,. |
| a6020 | 20 20 20 20 2e 66 65 61 74 75 72 65 73 20 3d 20 54 61 72 67 65 74 2e 78 38 36 2e 66 65 61 74 75 | .....features.=.Target.x86.featu |
| a6040 | 72 65 53 65 74 28 26 61 6d 70 3b 5b 5f 5d 54 61 72 67 65 74 2e 78 38 36 2e 46 65 61 74 75 72 65 | reSet(&[_]Target.x86.Feature |
| a6060 | 7b 0a 20 20 20 20 20 20 20 20 2e 40 26 71 75 6f 74 3b 36 34 62 69 74 26 71 75 6f 74 3b 2c 0a 20 | {..........@"64bit",.. |
| a6080 | 20 20 20 20 20 20 20 2e 40 26 71 75 6f 74 3b 61 64 78 26 71 75 6f 74 3b 2c 0a 20 20 20 20 20 20 | ........@"adx",....... |
| a60a0 | 20 20 2e 40 26 71 75 6f 74 3b 61 65 73 26 71 75 6f 74 3b 2c 0a 20 20 20 20 20 20 20 20 2e 40 26 | ...@"aes",..........@& |
| a60c0 | 71 75 6f 74 3b 61 76 78 26 71 75 6f 74 3b 2c 0a 20 20 20 20 20 20 20 20 2e 40 26 71 75 6f 74 3b | quot;avx",..........@" |
| a60e0 | 61 76 78 32 26 71 75 6f 74 3b 2c 0a 20 20 20 20 20 20 20 20 2e 40 26 71 75 6f 74 3b 62 6d 69 26 | avx2",..........@"bmi& |
| a6100 | 71 75 6f 74 3b 2c 0a 20 20 20 20 20 20 20 20 2e 40 26 71 75 6f 74 3b 62 6d 69 32 26 71 75 6f 74 | quot;,..........@"bmi2" |
| a6120 | 3b 2c 0a 20 20 20 20 20 20 20 20 2e 40 26 71 75 6f 74 3b 63 6c 66 6c 75 73 68 6f 70 74 26 71 75 | ;,..........@"clflushopt&qu |
| a6140 | 6f 74 3b 2c 0a 20 20 20 20 20 20 20 20 2e 40 26 71 75 6f 74 3b 63 6d 6f 76 26 71 75 6f 74 3b 2c | ot;,..........@"cmov", |
| a6160 | 0a 20 20 20 20 20 20 20 20 2e 40 26 71 75 6f 74 3b 63 78 31 36 26 71 75 6f 74 3b 2c 0a 20 20 20 | ..........@"cx16",.... |
| a6180 | 20 20 20 20 20 2e 40 26 71 75 6f 74 3b 63 78 38 26 71 75 6f 74 3b 2c 0a 20 20 20 20 20 20 20 20 | ......@"cx8",......... |
| a61a0 | 2e 40 26 71 75 6f 74 3b 65 72 6d 73 62 26 71 75 6f 74 3b 2c 0a 20 20 20 20 20 20 20 20 2e 40 26 | .@"ermsb",..........@& |
| a61c0 | 71 75 6f 74 3b 66 31 36 63 26 71 75 6f 74 3b 2c 0a 20 20 20 20 20 20 20 20 2e 40 26 71 75 6f 74 | quot;f16c",..........@" |
| a61e0 | 3b 66 61 6c 73 65 5f 64 65 70 73 5f 70 6f 70 63 6e 74 26 71 75 6f 74 3b 2c 0a 20 20 20 20 20 20 | ;false_deps_popcnt",....... |
| a6200 | 20 20 2e 40 26 71 75 6f 74 3b 66 61 73 74 5f 31 35 62 79 74 65 6e 6f 70 26 71 75 6f 74 3b 2c 0a | ...@"fast_15bytenop",. |
| a6220 | 20 20 20 20 20 20 20 20 2e 40 26 71 75 6f 74 3b 66 61 73 74 5f 67 61 74 68 65 72 26 71 75 6f 74 | .........@"fast_gather" |
| a6240 | 3b 2c 0a 20 20 20 20 20 20 20 20 2e 40 26 71 75 6f 74 3b 66 61 73 74 5f 73 63 61 6c 61 72 5f 66 | ;,..........@"fast_scalar_f |
| a6260 | 73 71 72 74 26 71 75 6f 74 3b 2c 0a 20 20 20 20 20 20 20 20 2e 40 26 71 75 6f 74 3b 66 61 73 74 | sqrt",..........@"fast |
| a6280 | 5f 73 68 6c 64 5f 72 6f 74 61 74 65 26 71 75 6f 74 3b 2c 0a 20 20 20 20 20 20 20 20 2e 40 26 71 | _shld_rotate",..........@&q |
| a62a0 | 75 6f 74 3b 66 61 73 74 5f 76 61 72 69 61 62 6c 65 5f 73 68 75 66 66 6c 65 26 71 75 6f 74 3b 2c | uot;fast_variable_shuffle", |
| a62c0 | 0a 20 20 20 20 20 20 20 20 2e 40 26 71 75 6f 74 3b 66 61 73 74 5f 76 65 63 74 6f 72 5f 66 73 71 | ..........@"fast_vector_fsq |
| a62e0 | 72 74 26 71 75 6f 74 3b 2c 0a 20 20 20 20 20 20 20 20 2e 40 26 71 75 6f 74 3b 66 6d 61 26 71 75 | rt",..........@"fma&qu |
| a6300 | 6f 74 3b 2c 0a 20 20 20 20 20 20 20 20 2e 40 26 71 75 6f 74 3b 66 73 67 73 62 61 73 65 26 71 75 | ot;,..........@"fsgsbase&qu |
| a6320 | 6f 74 3b 2c 0a 20 20 20 20 20 20 20 20 2e 40 26 71 75 6f 74 3b 66 78 73 72 26 71 75 6f 74 3b 2c | ot;,..........@"fxsr", |
| a6340 | 0a 20 20 20 20 20 20 20 20 2e 40 26 71 75 6f 74 3b 69 64 69 76 71 5f 74 6f 5f 64 69 76 6c 26 71 | ..........@"idivq_to_divl&q |
| a6360 | 75 6f 74 3b 2c 0a 20 20 20 20 20 20 20 20 2e 40 26 71 75 6f 74 3b 69 6e 76 70 63 69 64 26 71 75 | uot;,..........@"invpcid&qu |
| a6380 | 6f 74 3b 2c 0a 20 20 20 20 20 20 20 20 2e 40 26 71 75 6f 74 3b 6c 7a 63 6e 74 26 71 75 6f 74 3b | ot;,..........@"lzcnt" |
| a63a0 | 2c 0a 20 20 20 20 20 20 20 20 2e 40 26 71 75 6f 74 3b 6d 61 63 72 6f 66 75 73 69 6f 6e 26 71 75 | ,..........@"macrofusion&qu |
| a63c0 | 6f 74 3b 2c 0a 20 20 20 20 20 20 20 20 2e 40 26 71 75 6f 74 3b 6d 65 72 67 65 5f 74 6f 5f 74 68 | ot;,..........@"merge_to_th |
| a63e0 | 72 65 65 77 61 79 5f 62 72 61 6e 63 68 26 71 75 6f 74 3b 2c 0a 20 20 20 20 20 20 20 20 2e 40 26 | reeway_branch",..........@& |
| a6400 | 71 75 6f 74 3b 6d 6d 78 26 71 75 6f 74 3b 2c 0a 20 20 20 20 20 20 20 20 2e 40 26 71 75 6f 74 3b | quot;mmx",..........@" |
| a6420 | 6d 6f 76 62 65 26 71 75 6f 74 3b 2c 0a 20 20 20 20 20 20 20 20 2e 40 26 71 75 6f 74 3b 6e 6f 70 | movbe",..........@"nop |
| a6440 | 6c 26 71 75 6f 74 3b 2c 0a 20 20 20 20 20 20 20 20 2e 40 26 71 75 6f 74 3b 70 63 6c 6d 75 6c 26 | l",..........@"pclmul& |
| a6460 | 71 75 6f 74 3b 2c 0a 20 20 20 20 20 20 20 20 2e 40 26 71 75 6f 74 3b 70 6f 70 63 6e 74 26 71 75 | quot;,..........@"popcnt&qu |
| a6480 | 6f 74 3b 2c 0a 20 20 20 20 20 20 20 20 2e 40 26 71 75 6f 74 3b 70 72 66 63 68 77 26 71 75 6f 74 | ot;,..........@"prfchw" |
| a64a0 | 3b 2c 0a 20 20 20 20 20 20 20 20 2e 40 26 71 75 6f 74 3b 72 64 72 6e 64 26 71 75 6f 74 3b 2c 0a | ;,..........@"rdrnd",. |
| a64c0 | 20 20 20 20 20 20 20 20 2e 40 26 71 75 6f 74 3b 72 64 73 65 65 64 26 71 75 6f 74 3b 2c 0a 20 20 | .........@"rdseed",... |
| a64e0 | 20 20 20 20 20 20 2e 40 26 71 75 6f 74 3b 73 61 68 66 26 71 75 6f 74 3b 2c 0a 20 20 20 20 20 20 | .......@"sahf",....... |
| a6500 | 20 20 2e 40 26 71 75 6f 74 3b 73 67 78 26 71 75 6f 74 3b 2c 0a 20 20 20 20 20 20 20 20 2e 40 26 | ...@"sgx",..........@& |
| a6520 | 71 75 6f 74 3b 73 6c 6f 77 5f 33 6f 70 73 5f 6c 65 61 26 71 75 6f 74 3b 2c 0a 20 20 20 20 20 20 | quot;slow_3ops_lea",....... |
| a6540 | 20 20 2e 40 26 71 75 6f 74 3b 73 73 65 26 71 75 6f 74 3b 2c 0a 20 20 20 20 20 20 20 20 2e 40 26 | ...@"sse",..........@& |
| a6560 | 71 75 6f 74 3b 73 73 65 32 26 71 75 6f 74 3b 2c 0a 20 20 20 20 20 20 20 20 2e 40 26 71 75 6f 74 | quot;sse2",..........@" |
| a6580 | 3b 73 73 65 33 26 71 75 6f 74 3b 2c 0a 20 20 20 20 20 20 20 20 2e 40 26 71 75 6f 74 3b 73 73 65 | ;sse3",..........@"sse |
| a65a0 | 34 5f 31 26 71 75 6f 74 3b 2c 0a 20 20 20 20 20 20 20 20 2e 40 26 71 75 6f 74 3b 73 73 65 34 5f | 4_1",..........@"sse4_ |
| a65c0 | 32 26 71 75 6f 74 3b 2c 0a 20 20 20 20 20 20 20 20 2e 40 26 71 75 6f 74 3b 73 73 73 65 33 26 71 | 2",..........@"ssse3&q |
| a65e0 | 75 6f 74 3b 2c 0a 20 20 20 20 20 20 20 20 2e 40 26 71 75 6f 74 3b 76 7a 65 72 6f 75 70 70 65 72 | uot;,..........@"vzeroupper |
| a6600 | 26 71 75 6f 74 3b 2c 0a 20 20 20 20 20 20 20 20 2e 40 26 71 75 6f 74 3b 78 38 37 26 71 75 6f 74 | ",..........@"x87" |
| a6620 | 3b 2c 0a 20 20 20 20 20 20 20 20 2e 40 26 71 75 6f 74 3b 78 73 61 76 65 26 71 75 6f 74 3b 2c 0a | ;,..........@"xsave",. |
| a6640 | 20 20 20 20 20 20 20 20 2e 40 26 71 75 6f 74 3b 78 73 61 76 65 63 26 71 75 6f 74 3b 2c 0a 20 20 | .........@"xsavec",... |
| a6660 | 20 20 20 20 20 20 2e 40 26 71 75 6f 74 3b 78 73 61 76 65 6f 70 74 26 71 75 6f 74 3b 2c 0a 20 20 | .......@"xsaveopt",... |
| a6680 | 20 20 20 20 20 20 2e 40 26 71 75 6f 74 3b 78 73 61 76 65 73 26 71 75 6f 74 3b 2c 0a 20 20 20 20 | .......@"xsaves",..... |
| a66a0 | 7d 29 2c 0a 7d 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c | }),.};.<span.class="tok-kw">pub< |
| a66c0 | 2f 73 70 61 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 |
| a66e0 | 74 3c 2f 73 70 61 6e 3e 20 6f 73 20 3d 20 4f 73 7b 0a 20 20 20 20 2e 74 61 67 20 3d 20 2e 6c 69 | t</span>.os.=.Os{......tag.=..li |
| a6700 | 6e 75 78 2c 0a 20 20 20 20 2e 76 65 72 73 69 6f 6e 5f 72 61 6e 67 65 20 3d 20 2e 7b 20 2e 6c 69 | nux,......version_range.=..{..li |
| a6720 | 6e 75 78 20 3d 20 2e 7b 0a 20 20 20 20 20 20 20 20 2e 72 61 6e 67 65 20 3d 20 2e 7b 0a 20 20 20 | nux.=..{..........range.=..{.... |
| a6740 | 20 20 20 20 20 20 20 20 20 2e 6d 69 6e 20 3d 20 2e 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 | ..........min.=..{.............. |
| a6760 | 20 20 20 2e 6d 61 6a 6f 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | ....major.=.<span.class="tok-num |
| a6780 | 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2e | ber">5</span>,.................. |
| a67a0 | 6d 69 6e 6f 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 | minor.=.<span.class="tok-number" |
| a67c0 | 3e 34 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2e 70 61 74 63 | >4</span>,..................patc |
| a67e0 | 68 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 37 37 3c | h.=.<span.class="tok-number">77< |
| a6800 | 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 20 | /span>,.............},.......... |
| a6820 | 20 20 20 2e 6d 61 78 20 3d 20 2e 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2e 6d 61 | ....max.=..{..................ma |
| a6840 | 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 3e 35 | jor.=.<span.class="tok-number">5 |
| a6860 | 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 72 20 | </span>,..................minor. |
| a6880 | 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 | =.<span.class="tok-number">4</sp |
| a68a0 | 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2e 70 61 74 63 68 20 3d 20 3c 73 | an>,..................patch.=.<s |
| a68c0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 37 37 3c 2f 73 70 61 6e 3e | pan.class="tok-number">77</span> |
| a68e0 | 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 | ,.............},.........},..... |
| a6900 | 20 20 20 20 2e 67 6c 69 62 63 20 3d 20 2e 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 2e 6d 61 6a | .....glibc.=..{..............maj |
| a6920 | 6f 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c | or.=.<span.class="tok-number">2< |
| a6940 | 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 2e 6d 69 6e 6f 72 20 3d 20 3c 73 70 | /span>,..............minor.=.<sp |
| a6960 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 31 3c 2f 73 70 61 6e 3e 2c | an.class="tok-number">31</span>, |
| a6980 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 2e 70 61 74 63 68 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | ..............patch.=.<span.clas |
| a69a0 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 | s="tok-number">0</span>,........ |
| a69c0 | 20 7d 2c 0a 20 20 20 20 7d 7d 2c 0a 7d 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | .},.....}},.};.<span.class="tok- |
| a69e0 | 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- |
| a6a00 | 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6f 62 6a 65 63 74 5f 66 6f 72 6d 61 74 20 3d | kw">const</span>.object_format.= |
| a6a20 | 20 4f 62 6a 65 63 74 46 6f 72 6d 61 74 2e 65 6c 66 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | .ObjectFormat.elf;.<span.class=" |
| a6a40 | 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=" |
| a6a60 | 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 20 3d 20 4d 6f 64 65 | tok-kw">const</span>.mode.=.Mode |
| a6a80 | 2e 44 65 62 75 67 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 | .Debug;.<span.class="tok-kw">pub |
| a6aa0 | 3c 2f 73 70 61 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 |
| a6ac0 | 73 74 3c 2f 73 70 61 6e 3e 20 6c 69 6e 6b 5f 6c 69 62 63 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | st</span>.link_libc.=.<span.clas |
| a6ae0 | 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e | s="tok-null">false</span>;.<span |
| a6b00 | 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 |
| a6b20 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6c 69 6e | .class="tok-kw">const</span>.lin |
| a6b40 | 6b 5f 6c 69 62 63 70 70 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c | k_libcpp.=.<span.class="tok-null |
| a6b60 | 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ">false</span>;.<span.class="tok |
| a6b80 | 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 |
| a6ba0 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 68 61 76 65 5f 65 72 72 6f 72 5f 72 65 74 | -kw">const</span>.have_error_ret |
| a6bc0 | 75 72 6e 5f 74 72 61 63 69 6e 67 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | urn_tracing.=.<span.class="tok-n |
| a6be0 | 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ull">true</span>;.<span.class="t |
| a6c00 | 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 |
| a6c20 | 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 76 61 6c 67 72 69 6e 64 5f 73 75 70 | ok-kw">const</span>.valgrind_sup |
| a6c40 | 70 6f 72 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 | port.=.<span.class="tok-null">tr |
| a6c60 | 75 65 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | ue</span>;.<span.class="tok-kw"> |
| a6c80 | 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"> |
| a6ca0 | 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 |
| a6cc0 | 74 5f 63 6f 64 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e | t_code.=.<span.class="tok-null"> |
| a6ce0 | 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 |
| a6d00 | 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 |
| a6d20 | 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 67 5f 69 6e 66 6f | w">const</span>.strip_debug_info |
| a6d40 | 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< |
| a6d60 | 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 |
| a6d80 | 3c 2f 73 70 61 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 |
| a6da0 | 73 74 3c 2f 73 70 61 6e 3e 20 63 6f 64 65 5f 6d 6f 64 65 6c 20 3d 20 43 6f 64 65 4d 6f 64 65 6c | st</span>.code_model.=.CodeModel |
| a6dc0 | 2e 64 65 66 61 75 6c 74 3b 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e | .default;</code></pre>.......<p> |
| a6de0 | 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="# |
| a6e00 | 42 75 69 6c 64 2d 4d 6f 64 65 22 3e 42 75 69 6c 64 20 4d 6f 64 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a | Build-Mode">Build.Mode</a></li>. |
| a6e20 | 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 31 20 69 64 3d 22 52 6f 6f 74 | </ul>...............<h1.id="Root |
| a6e40 | 2d 53 6f 75 72 63 65 2d 46 69 6c 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 52 6f 6f 74 | -Source-File"><a.href="#toc-Root |
| a6e60 | 2d 53 6f 75 72 63 65 2d 46 69 6c 65 22 3e 52 6f 6f 74 20 53 6f 75 72 63 65 20 46 69 6c 65 3c 2f | -Source-File">Root.Source.File</ |
| a6e80 | 61 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 6f 6f 74 2d 53 6f | a>.<a.class="hdr".href="#Root-So |
| a6ea0 | 75 72 63 65 2d 46 69 6c 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 31 3e 0a 0a 20 20 20 20 20 20 3c 70 | urce-File">..</a></h1>........<p |
| a6ec0 | 3e 54 4f 44 4f 3a 20 65 78 70 6c 61 69 6e 20 68 6f 77 20 72 6f 6f 74 20 73 6f 75 72 63 65 20 66 | >TODO:.explain.how.root.source.f |
| a6ee0 | 69 6c 65 20 66 69 6e 64 73 20 6f 74 68 65 72 20 66 69 6c 65 73 3c 2f 70 3e 0a 20 20 20 20 20 20 | ile.finds.other.files</p>....... |
| a6f00 | 3c 70 3e 54 4f 44 4f 3a 20 70 75 62 20 66 6e 20 6d 61 69 6e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c | <p>TODO:.pub.fn.main</p>.......< |
| a6f20 | 70 3e 54 4f 44 4f 3a 20 70 75 62 20 66 6e 20 70 61 6e 69 63 3c 2f 70 3e 0a 20 20 20 20 20 20 3c | p>TODO:.pub.fn.panic</p>.......< |
| a6f40 | 70 3e 54 4f 44 4f 3a 20 69 66 20 6c 69 6e 6b 69 6e 67 20 77 69 74 68 20 6c 69 62 63 20 79 6f 75 | p>TODO:.if.linking.with.libc.you |
| a6f60 | 20 63 61 6e 20 75 73 65 20 65 78 70 6f 72 74 20 66 6e 20 6d 61 69 6e 3c 2f 70 3e 0a 20 20 20 20 | .can.use.export.fn.main</p>..... |
| a6f80 | 20 20 3c 70 3e 54 4f 44 4f 3a 20 6f 72 64 65 72 20 69 6e 64 65 70 65 6e 64 65 6e 74 20 74 6f 70 | ..<p>TODO:.order.independent.top |
| a6fa0 | 20 6c 65 76 65 6c 20 64 65 63 6c 61 72 61 74 69 6f 6e 73 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 | .level.declarations</p>.......<p |
| a6fc0 | 3e 54 4f 44 4f 3a 20 6c 61 7a 79 20 61 6e 61 6c 79 73 69 73 3c 2f 70 3e 0a 20 20 20 20 20 20 3c | >TODO:.lazy.analysis</p>.......< |
| a6fe0 | 70 3e 54 4f 44 4f 3a 20 75 73 69 6e 67 20 63 6f 6d 70 74 69 6d 65 20 7b 20 5f 20 3d 20 40 69 6d | p>TODO:.using.comptime.{._.=.@im |
| a7000 | 70 6f 72 74 28 29 20 7d 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 31 20 69 64 | port().}</p>..............<h1.id |
| a7020 | 3d 22 5a 69 67 2d 54 65 73 74 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 5a 69 67 2d 54 65 | ="Zig-Test"><a.href="#toc-Zig-Te |
| a7040 | 73 74 22 3e 5a 69 67 20 54 65 73 74 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 | st">Zig.Test</a>.<a.class="hdr". |
| a7060 | 68 72 65 66 3d 22 23 5a 69 67 2d 54 65 73 74 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 31 3e 0a 0a 20 20 | href="#Zig-Test">..</a></h1>.... |
| a7080 | 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 7a 69 67 20 74 65 73 74 3c 2f 63 6f | ....<p>.......<code>zig.test</co |
| a70a0 | 64 65 3e 20 69 73 20 61 20 74 6f 6f 6c 20 74 68 61 74 20 63 61 6e 20 62 65 20 75 73 65 64 20 74 | de>.is.a.tool.that.can.be.used.t |
| a70c0 | 6f 20 71 75 69 63 6b 6c 79 20 62 75 69 6c 64 20 61 6e 64 20 72 75 6e 20 5a 69 67 20 63 6f 64 65 | o.quickly.build.and.run.Zig.code |
| a70e0 | 0a 20 20 20 20 20 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 | .......to.make.sure.behavior.mee |
| a7100 | 74 73 20 65 78 70 65 63 74 61 74 69 6f 6e 73 2e 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | ts.expectations..<code.class="zi |
| a7120 | 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6d | g"><span.class="tok-builtin">@im |
| a7140 | 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 |
| a7160 | 22 3e 26 71 75 6f 74 3b 62 75 69 6c 74 69 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 69 73 | ">"builtin"</span>).is |
| a7180 | 5f 74 65 73 74 3c 2f 63 6f 64 65 3e 0a 20 20 20 20 20 20 69 73 20 61 76 61 69 6c 61 62 6c 65 20 | _test</code>.......is.available. |
| a71a0 | 66 6f 72 20 63 6f 64 65 20 74 6f 20 64 65 74 65 63 74 20 77 68 65 74 68 65 72 20 74 68 65 20 63 | for.code.to.detect.whether.the.c |
| a71c0 | 75 72 72 65 6e 74 20 62 75 69 6c 64 20 69 73 20 61 20 74 65 73 74 20 62 75 69 6c 64 2e 0a 20 20 | urrent.build.is.a.test.build.... |
| a71e0 | 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 64 | ....</p>.......<p.class="file">d |
| a7200 | 65 74 65 63 74 5f 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 | etect_test.zig</p><pre><code.cla |
| a7220 | 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f | ss="zig"><span.class="tok-kw">co |
| a7240 | 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 |
| a7260 | 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. |
| a7280 | 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"< |
| a72a0 | 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 |
| a72c0 | 6e 73 74 3c 2f 73 70 61 6e 3e 20 62 75 69 6c 74 69 6e 20 3d 20 73 74 64 2e 62 75 69 6c 74 69 6e | nst</span>.builtin.=.std.builtin |
| a72e0 | 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 |
| a7300 | 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; |
| a7320 | 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 |
| a7340 | 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 62 | n>.<span.class="tok-str">"b |
| a7360 | 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 0a 20 20 | uiltin.is_test"</span>.{... |
| a7380 | 20 20 65 78 70 65 63 74 28 62 75 69 6c 74 69 6e 2e 69 73 5f 74 65 73 74 29 3b 0a 7d 3c 2f 63 6f | ..expect(builtin.is_test);.}</co |
| a73a0 | 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c | de></pre><pre><code.class="shell |
| a73c0 | 22 3e 24 20 7a 69 67 20 74 65 73 74 20 64 65 74 65 63 74 5f 74 65 73 74 2e 7a 69 67 0a 31 2f 31 | ">$.zig.test.detect_test.zig.1/1 |
| a73e0 | 20 74 65 73 74 20 26 71 75 6f 74 3b 62 75 69 6c 74 69 6e 2e 69 73 5f 74 65 73 74 26 71 75 6f 74 | .test."builtin.is_test" |
| a7400 | 3b 2e 2e 2e 20 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f | ;....OK.All.1.tests.passed..</co |
| a7420 | 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 5a 69 67 20 68 | de></pre>........<p>.......Zig.h |
| a7440 | 61 73 20 6c 61 7a 79 20 74 6f 70 20 6c 65 76 65 6c 20 64 65 63 6c 61 72 61 74 69 6f 6e 20 61 6e | as.lazy.top.level.declaration.an |
| a7460 | 61 6c 79 73 69 73 2c 20 77 68 69 63 68 20 6d 65 61 6e 73 20 74 68 61 74 20 69 66 20 61 20 66 75 | alysis,.which.means.that.if.a.fu |
| a7480 | 6e 63 74 69 6f 6e 20 69 73 20 6e 6f 74 20 63 61 6c 6c 65 64 2c 0a 20 20 20 20 20 20 6f 72 20 6f | nction.is.not.called,.......or.o |
| a74a0 | 74 68 65 72 77 69 73 65 20 75 73 65 64 2c 20 69 74 20 69 73 20 6e 6f 74 20 61 6e 61 6c 79 7a 65 | therwise.used,.it.is.not.analyze |
| a74c0 | 64 2e 20 54 68 69 73 20 6d 65 61 6e 73 20 74 68 61 74 20 74 68 65 72 65 20 6d 61 79 20 62 65 20 | d..This.means.that.there.may.be. |
| a74e0 | 61 6e 20 75 6e 64 69 73 63 6f 76 65 72 65 64 0a 20 20 20 20 20 20 63 6f 6d 70 69 6c 65 20 65 72 | an.undiscovered.......compile.er |
| a7500 | 72 6f 72 20 69 6e 20 61 20 66 75 6e 63 74 69 6f 6e 20 62 65 63 61 75 73 65 20 69 74 20 69 73 20 | ror.in.a.function.because.it.is. |
| a7520 | 6e 65 76 65 72 20 63 61 6c 6c 65 64 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c | never.called........</p>.......< |
| a7540 | 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 75 6e 75 73 65 64 5f 66 6e 2e 7a 69 67 3c 2f 70 3e | p.class="file">unused_fn.zig</p> |
| a7560 | 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 | <pre><code.class="zig"><span.cla |
| a7580 | 73 73 3d 22 74 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 |
| a75a0 | 73 3d 22 74 6f 6b 2d 66 6e 22 3e 75 6e 75 73 65 64 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e | s="tok-fn">unused</span>().<span |
| a75c0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 7b 0a 20 | .class="tok-type">i32</span>.{.. |
| a75e0 | 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</ |
| a7600 | 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 |
| a7620 | 74 3b 77 72 6f 6e 67 20 72 65 74 75 72 6e 20 74 79 70 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e | t;wrong.return.type"</span> |
| a7640 | 3b 0a 7d 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 | ;.}.<span.class="tok-kw">test</s |
| a7660 | 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">" |
| a7680 | 3b 75 6e 75 73 65 64 20 66 75 6e 63 74 69 6f 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 20 | ;unused.function"</span>.{. |
| a76a0 | 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | }</code></pre><pre><code.class=" |
| a76c0 | 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 75 6e 75 73 65 64 5f 66 6e 2e 7a 69 67 0a | shell">$.zig.test.unused_fn.zig. |
| a76e0 | 31 2f 31 20 74 65 73 74 20 26 71 75 6f 74 3b 75 6e 75 73 65 64 20 66 75 6e 63 74 69 6f 6e 26 71 | 1/1.test."unused.function&q |
| a7700 | 75 6f 74 3b 2e 2e 2e 20 4f 4b 0a 41 6c 6c 20 31 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c | uot;....OK.All.1.tests.passed..< |
| a7720 | 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 4e 6f | /code></pre>........<p>.......No |
| a7740 | 74 65 20 74 68 61 74 2c 20 77 68 69 6c 65 20 69 6e 20 3c 61 20 68 72 65 66 3d 22 23 44 65 62 75 | te.that,.while.in.<a.href="#Debu |
| a7760 | 67 22 3e 44 65 62 75 67 3c 2f 61 3e 20 61 6e 64 20 3c 61 20 68 72 65 66 3d 22 23 52 65 6c 65 61 | g">Debug</a>.and.<a.href="#Relea |
| a7780 | 73 65 53 61 66 65 22 3e 52 65 6c 65 61 73 65 53 61 66 65 3c 2f 61 3e 20 6d 6f 64 65 73 2c 20 3c | seSafe">ReleaseSafe</a>.modes,.< |
| a77a0 | 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 6c | a.href="#unreachable">unreachabl |
| a77c0 | 65 3c 2f 61 3e 20 65 6d 69 74 73 20 61 0a 20 20 20 20 20 20 63 61 6c 6c 20 74 6f 20 3c 61 20 68 | e</a>.emits.a.......call.to.<a.h |
| a77e0 | 72 65 66 3d 22 23 70 61 6e 69 63 22 3e 40 70 61 6e 69 63 3c 2f 61 3e 2c 20 69 6e 20 3c 61 20 68 | ref="#panic">@panic</a>,.in.<a.h |
| a7800 | 72 65 66 3d 22 23 52 65 6c 65 61 73 65 46 61 73 74 22 3e 52 65 6c 65 61 73 65 46 61 73 74 3c 2f | ref="#ReleaseFast">ReleaseFast</ |
| a7820 | 61 3e 20 61 6e 64 20 3c 61 20 68 72 65 66 3d 22 23 52 65 6c 65 61 73 65 53 6d 61 6c 6c 22 3e 52 | a>.and.<a.href="#ReleaseSmall">R |
| a7840 | 65 6c 65 61 73 65 53 6d 61 6c 6c 3c 2f 61 3e 20 6d 6f 64 65 73 2c 20 69 74 20 69 73 20 72 65 61 | eleaseSmall</a>.modes,.it.is.rea |
| a7860 | 6c 6c 79 0a 20 20 20 20 20 20 75 6e 64 65 66 69 6e 65 64 20 62 65 68 61 76 69 6f 72 2e 20 54 68 | lly.......undefined.behavior..Th |
| a7880 | 65 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 20 6f 66 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d | e.implementation.of.<code.class= |
| a78a0 | 22 7a 69 67 22 3e 73 74 64 2e 64 65 62 75 67 2e 61 73 73 65 72 74 3c 2f 63 6f 64 65 3e 20 69 73 | "zig">std.debug.assert</code>.is |
| a78c0 | 20 61 73 0a 20 20 20 20 20 20 73 69 6d 70 6c 65 20 61 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a | .as.......simple.as:.......</p>. |
| a78e0 | 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 | ......<pre><code.class="zig"><sp |
| a7900 | 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 |
| a7920 | 61 6e 20 63 6c 61 73 73 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 |
| a7940 | 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 3e 28 6f | n.class="tok-fn">assert</span>(o |
| a7960 | 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 6c 3c 2f | k:.<span.class="tok-type">bool</ |
| a7980 | 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 |
| a79a0 | 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 |
| a79c0 | 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 61 73 73 | -kw">if</span>.(!ok).<span.class |
| a79e0 | 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 7d 3c | ="tok-kw">unreachable</span>;.}< |
| a7a00 | 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 |
| a7a20 | 73 20 6d 65 61 6e 73 20 74 68 61 74 20 77 68 65 6e 20 74 65 73 74 69 6e 67 20 69 6e 20 52 65 6c | s.means.that.when.testing.in.Rel |
| a7a40 | 65 61 73 65 46 61 73 74 20 6f 72 20 52 65 6c 65 61 73 65 53 6d 61 6c 6c 20 6d 6f 64 65 2c 20 3c | easeFast.or.ReleaseSmall.mode,.< |
| a7a60 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 61 73 73 65 72 74 3c 2f 63 6f 64 65 3e 0a 20 | code.class="zig">assert</code>.. |
| a7a80 | 20 20 20 20 20 69 73 20 6e 6f 74 20 73 75 66 66 69 63 69 65 6e 74 20 74 6f 20 63 68 65 63 6b 20 | .....is.not.sufficient.to.check. |
| a7aa0 | 74 68 65 20 72 65 73 75 6c 74 20 6f 66 20 61 20 63 6f 6d 70 75 74 61 74 69 6f 6e 3a 0a 20 20 20 | the.result.of.a.computation:.... |
| a7ac0 | 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | ...</p>.......<pre><code.class=" |
| a7ae0 | 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c | zig"><span.class="tok-kw">const< |
| a7b00 | 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 |
| a7b20 | 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 |
| a7b40 | 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 |
| a7b60 | 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< |
| a7b80 | 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 65 72 74 | /span>.assert.=.std.debug.assert |
| a7ba0 | 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 |
| a7bc0 | 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">" |
| a7be0 | 61 73 73 65 72 74 20 69 6e 20 72 65 6c 65 61 73 65 20 66 61 73 74 20 6d 6f 64 65 26 71 75 6f 74 | assert.in.release.fast.mode" |
| a7c00 | 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 61 73 73 65 72 74 28 3c 73 70 61 6e 20 63 6c 61 73 | ;</span>.{.....assert(<span.clas |
| a7c20 | 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 | s="tok-null">false</span>);.}</c |
| a7c40 | 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 57 68 65 6e 20 | ode></pre>.......<p>.......When. |
| a7c60 | 63 6f 6d 70 69 6c 69 6e 67 20 74 68 69 73 20 74 65 73 74 20 69 6e 20 3c 61 20 68 72 65 66 3d 22 | compiling.this.test.in.<a.href=" |
| a7c80 | 23 52 65 6c 65 61 73 65 46 61 73 74 22 3e 52 65 6c 65 61 73 65 46 61 73 74 3c 2f 61 3e 20 6d 6f | #ReleaseFast">ReleaseFast</a>.mo |
| a7ca0 | 64 65 2c 20 69 74 20 69 6e 76 6f 6b 65 73 20 75 6e 63 68 65 63 6b 65 64 0a 20 20 20 20 20 20 3c | de,.it.invokes.unchecked.......< |
| a7cc0 | 61 20 68 72 65 66 3d 22 23 55 6e 64 65 66 69 6e 65 64 2d 42 65 68 61 76 69 6f 72 22 3e 55 6e 64 | a.href="#Undefined-Behavior">Und |
| a7ce0 | 65 66 69 6e 65 64 20 42 65 68 61 76 69 6f 72 3c 2f 61 3e 2e 20 53 69 6e 63 65 20 74 68 61 74 20 | efined.Behavior</a>..Since.that. |
| a7d00 | 63 6f 75 6c 64 20 64 6f 20 61 6e 79 74 68 69 6e 67 2c 20 74 68 69 73 20 64 6f 63 75 6d 65 6e 74 | could.do.anything,.this.document |
| a7d20 | 61 74 69 6f 6e 0a 20 20 20 20 20 20 63 61 6e 6e 6f 74 20 73 68 6f 77 20 79 6f 75 20 74 68 65 20 | ation.......cannot.show.you.the. |
| a7d40 | 6f 75 74 70 75 74 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 | output........</p>.......<p>.... |
| a7d60 | 20 20 20 42 65 74 74 65 72 20 70 72 61 63 74 69 63 65 20 66 6f 72 20 63 68 65 63 6b 69 6e 67 20 | ...Better.practice.for.checking. |
| a7d80 | 74 68 65 20 6f 75 74 70 75 74 20 77 68 65 6e 20 74 65 73 74 69 6e 67 20 69 73 20 74 6f 20 75 73 | the.output.when.testing.is.to.us |
| a7da0 | 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 73 74 64 2e 74 65 73 74 69 6e 67 2e | e.<code.class="zig">std.testing. |
| a7dc0 | 65 78 70 65 63 74 3c 2f 63 6f 64 65 3e 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 | expect</code>:.......</p>....... |
| a7de0 | 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 | <p.class="file">test.zig</p><pre |
| a7e00 | 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ><code.class="zig"><span.class=" |
| a7e20 | 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 |
| a7e40 | 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 |
| a7e60 | 61 6e 3e 28 3c 73 70 61 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">" |
| a7e80 | 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=" |
| a7ea0 | 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 |
| a7ec0 | 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=" |
| a7ee0 | 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= |
| a7f00 | 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 65 78 70 65 63 74 20 69 6e 20 72 65 6c 65 61 73 | "tok-str">"expect.in.releas |
| a7f20 | 65 20 66 61 73 74 20 6d 6f 64 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 65 | e.fast.mode"</span>.{.....e |
| a7f40 | 78 70 65 63 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c | xpect(<span.class="tok-null">fal |
| a7f60 | 73 65 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c | se</span>);.}</code></pre><pre>< |
| a7f80 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 | code.class="shell">$.zig.test.te |
| a7fa0 | 73 74 2e 7a 69 67 20 2d 4f 20 52 65 6c 65 61 73 65 46 61 73 74 0a 31 2f 31 20 74 65 73 74 20 26 | st.zig.-O.ReleaseFast.1/1.test.& |
| a7fc0 | 71 75 6f 74 3b 65 78 70 65 63 74 20 69 6e 20 72 65 6c 65 61 73 65 20 66 61 73 74 20 6d 6f 64 65 | quot;expect.in.release.fast.mode |
| a7fe0 | 26 71 75 6f 74 3b 2e 2e 2e 20 74 65 73 74 20 66 61 69 6c 75 72 65 0a 65 72 72 6f 72 3a 20 74 68 | "....test.failure.error:.th |
| a8000 | 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 |
| a8020 | 3a 0a 64 6f 63 67 65 6e 5f 74 6d 70 2f 7a 69 67 2d 63 61 63 68 65 2f 6f 2f 64 37 36 30 66 66 39 | :.docgen_tmp/zig-cache/o/d760ff9 |
| a8040 | 64 63 31 32 37 36 31 31 32 36 38 32 34 36 37 36 62 62 35 64 34 30 64 36 32 2f 74 65 73 74 0a 3c | dc12761126824676bb5d40d62/test.< |
| a8060 | 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 74 68 65 20 72 | /code></pre>........<p>See.the.r |
| a8080 | 65 73 74 20 6f 66 20 74 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 73 74 64 | est.of.the.<code.class="zig">std |
| a80a0 | 2e 74 65 73 74 69 6e 67 3c 2f 63 6f 64 65 3e 20 6e 61 6d 65 73 70 61 63 65 20 66 6f 72 20 6d 6f | .testing</code>.namespace.for.mo |
| a80c0 | 72 65 20 61 76 61 69 6c 61 62 6c 65 20 66 75 6e 63 74 69 6f 6e 73 2e 3c 2f 70 3e 0a 20 20 20 20 | re.available.functions.</p>..... |
| a80e0 | 20 20 3c 70 3e 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 7a 69 67 20 74 65 73 74 3c 2f 63 6f 64 65 | ..<p>.......<code>zig.test</code |
| a8100 | 3e 20 68 61 73 20 61 20 66 65 77 20 63 6f 6d 6d 61 6e 64 20 6c 69 6e 65 20 70 61 72 61 6d 65 74 | >.has.a.few.command.line.paramet |
| a8120 | 65 72 73 20 77 68 69 63 68 20 61 66 66 65 63 74 20 74 68 65 20 63 6f 6d 70 69 6c 61 74 69 6f 6e | ers.which.affect.the.compilation |
| a8140 | 2e 20 53 65 65 0a 20 20 20 20 20 20 3c 63 6f 64 65 3e 7a 69 67 20 2d 2d 68 65 6c 70 3c 2f 63 6f | ..See.......<code>zig.--help</co |
| a8160 | 64 65 3e 20 66 6f 72 20 61 20 66 75 6c 6c 20 6c 69 73 74 2e 20 54 68 65 20 6d 6f 73 74 20 69 6e | de>.for.a.full.list..The.most.in |
| a8180 | 74 65 72 65 73 74 69 6e 67 20 6f 6e 65 20 69 73 20 3c 63 6f 64 65 3e 2d 2d 74 65 73 74 2d 66 69 | teresting.one.is.<code>--test-fi |
| a81a0 | 6c 74 65 72 20 5b 74 65 78 74 5d 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 54 68 69 73 20 6d | lter.[text]</code>........This.m |
| a81c0 | 61 6b 65 73 20 74 68 65 20 74 65 73 74 20 62 75 69 6c 64 20 6f 6e 6c 79 20 69 6e 63 6c 75 64 65 | akes.the.test.build.only.include |
| a81e0 | 20 74 65 73 74 73 20 77 68 6f 73 65 20 6e 61 6d 65 20 63 6f 6e 74 61 69 6e 73 20 74 68 65 20 73 | .tests.whose.name.contains.the.s |
| a8200 | 75 70 70 6c 69 65 64 20 66 69 6c 74 65 72 20 74 65 78 74 2e 0a 20 20 20 20 20 20 41 67 61 69 6e | upplied.filter.text........Again |
| a8220 | 2c 20 74 68 61 6e 6b 73 20 74 6f 20 6c 61 7a 79 20 61 6e 61 6c 79 73 69 73 2c 20 74 68 69 73 20 | ,.thanks.to.lazy.analysis,.this. |
| a8240 | 63 61 6e 20 61 6c 6c 6f 77 20 79 6f 75 20 74 6f 20 6e 61 72 72 6f 77 20 61 20 62 75 69 6c 64 20 | can.allow.you.to.narrow.a.build. |
| a8260 | 74 6f 20 6f 6e 6c 79 20 61 20 66 65 77 20 66 75 6e 63 74 69 6f 6e 73 20 69 6e 0a 20 20 20 20 20 | to.only.a.few.functions.in...... |
| a8280 | 20 69 73 6f 6c 61 74 69 6f 6e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 | .isolation........</p>.......... |
| a82a0 | 20 20 20 20 20 3c 68 31 20 69 64 3d 22 5a 69 67 2d 42 75 69 6c 64 2d 53 79 73 74 65 6d 22 3e 3c | .....<h1.id="Zig-Build-System">< |
| a82c0 | 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 5a 69 67 2d 42 75 69 6c 64 2d 53 79 73 74 65 6d 22 3e 5a | a.href="#toc-Zig-Build-System">Z |
| a82e0 | 69 67 20 42 75 69 6c 64 20 53 79 73 74 65 6d 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 | ig.Build.System</a>.<a.class="hd |
| a8300 | 72 22 20 68 72 65 66 3d 22 23 5a 69 67 2d 42 75 69 6c 64 2d 53 79 73 74 65 6d 22 3e c2 a7 3c 2f | r".href="#Zig-Build-System">..</ |
| a8320 | 61 3e 3c 2f 68 31 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 20 5a 69 67 | a></h1>........<p>.......The.Zig |
| a8340 | 20 42 75 69 6c 64 20 53 79 73 74 65 6d 20 70 72 6f 76 69 64 65 73 20 61 20 63 72 6f 73 73 2d 70 | .Build.System.provides.a.cross-p |
| a8360 | 6c 61 74 66 6f 72 6d 2c 20 64 65 70 65 6e 64 65 6e 63 79 2d 66 72 65 65 20 77 61 79 20 74 6f 20 | latform,.dependency-free.way.to. |
| a8380 | 64 65 63 6c 61 72 65 0a 20 20 20 20 20 20 74 68 65 20 6c 6f 67 69 63 20 72 65 71 75 69 72 65 64 | declare.......the.logic.required |
| a83a0 | 20 74 6f 20 62 75 69 6c 64 20 61 20 70 72 6f 6a 65 63 74 2e 20 57 69 74 68 20 74 68 69 73 20 73 | .to.build.a.project..With.this.s |
| a83c0 | 79 73 74 65 6d 2c 20 74 68 65 20 6c 6f 67 69 63 20 74 6f 20 62 75 69 6c 64 0a 20 20 20 20 20 20 | ystem,.the.logic.to.build....... |
| a83e0 | 61 20 70 72 6f 6a 65 63 74 20 69 73 20 77 72 69 74 74 65 6e 20 69 6e 20 61 20 62 75 69 6c 64 2e | a.project.is.written.in.a.build. |
| a8400 | 7a 69 67 20 66 69 6c 65 2c 20 75 73 69 6e 67 20 74 68 65 20 5a 69 67 20 42 75 69 6c 64 20 53 79 | zig.file,.using.the.Zig.Build.Sy |
| a8420 | 73 74 65 6d 20 41 50 49 20 74 6f 0a 20 20 20 20 20 20 64 65 63 6c 61 72 65 20 61 6e 64 20 63 6f | stem.API.to.......declare.and.co |
| a8440 | 6e 66 69 67 75 72 65 20 62 75 69 6c 64 20 61 72 74 69 66 61 63 74 73 20 61 6e 64 20 6f 74 68 65 | nfigure.build.artifacts.and.othe |
| a8460 | 72 20 74 61 73 6b 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 | r.tasks........</p>.......<p>... |
| a8480 | 20 20 20 20 53 6f 6d 65 20 65 78 61 6d 70 6c 65 73 20 6f 66 20 74 61 73 6b 73 20 74 68 65 20 62 | ....Some.examples.of.tasks.the.b |
| a84a0 | 75 69 6c 64 20 73 79 73 74 65 6d 20 63 61 6e 20 68 65 6c 70 20 77 69 74 68 3a 0a 20 20 20 20 20 | uild.system.can.help.with:...... |
| a84c0 | 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 43 72 65 | .</p>.......<ul>.........<li>Cre |
| a84e0 | 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 69 | ating.build.artifacts.by.executi |
| a8500 | 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 64 | ng.the.Zig.compiler..This.includ |
| a8520 | 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 65 | es...........building.Zig.source |
| a8540 | 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 63 | .code.as.well.as.C.and.C++.sourc |
| a8560 | 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 69 | e.code.</li>.........<li>Capturi |
| a8580 | 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 75 | ng.user-configured.options.and.u |
| a85a0 | 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 0a | sing.those.options.to.configure. |
| a85c0 | 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 20 | ..........the.build.</li>....... |
| a85e0 | 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 74 | ..<li>Surfacing.build.configurat |
| a8600 | 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 74 | ion.as.<a.href="#comptime">compt |
| a8620 | 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 20 | ime</a>.values.by.providing.a... |
| a8640 | 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 66 | ........file.that.can.be.<a.href |
| a8660 | 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 63 | ="#import">imported</a>.by.Zig.c |
| a8680 | 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 75 | ode.</li>.........<li>Caching.bu |
| a86a0 | 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 61 | ild.artifacts.to.avoid.unnecessa |
| a86c0 | 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 20 | rily.repeating.steps.</li>...... |
| a86e0 | 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 73 | ...<li>Executing.build.artifacts |
| a8700 | 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 3e | .or.system-installed.tools.</li> |
| a8720 | 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 76 | .........<li>Running.tests.and.v |
| a8740 | 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 67 | erifying.the.output.of.executing |
| a8760 | 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 20 | .a.build.artifact.matches....... |
| a8780 | 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 20 | ..the.expected.value.</li>...... |
| a87a0 | 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 6f | ...<li>Running.<code>zig.fmt</co |
| a87c0 | 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 66 | de>.on.a.codebase.or.a.subset.of |
| a87e0 | 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 73 | .it.</li>.........<li>Custom.tas |
| a8800 | 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 20 | ks.</li>.......</ul>.......<p>.. |
| a8820 | 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 75 | .....To.use.the.build.system,.ru |
| a8840 | 6e 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 7a 69 67 20 62 75 69 6c 64 20 | n.<code.class="shell">zig.build. |
| a8860 | 2d 2d 68 65 6c 70 3c 2f 63 6f 64 65 3e 0a 20 20 20 20 20 20 74 6f 20 73 65 65 20 61 20 63 6f 6d | --help</code>.......to.see.a.com |
| a8880 | 6d 61 6e 64 2d 6c 69 6e 65 20 75 73 61 67 65 20 68 65 6c 70 20 6d 65 6e 75 2e 20 54 68 69 73 20 | mand-line.usage.help.menu..This. |
| a88a0 | 77 69 6c 6c 20 69 6e 63 6c 75 64 65 20 70 72 6f 6a 65 63 74 2d 73 70 65 63 69 66 69 63 0a 20 20 | will.include.project-specific... |
| a88c0 | 20 20 20 20 6f 70 74 69 6f 6e 73 20 74 68 61 74 20 77 65 72 65 20 64 65 63 6c 61 72 65 64 20 69 | ....options.that.were.declared.i |
| a88e0 | 6e 20 74 68 65 20 62 75 69 6c 64 2e 7a 69 67 20 73 63 72 69 70 74 2e 0a 20 20 20 20 20 20 3c 2f | n.the.build.zig.script........</ |
| a8900 | 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 42 75 69 6c 64 69 6e 67 | p>..............<h2.id="Building |
| a8920 | 2d 61 6e 2d 45 78 65 63 75 74 61 62 6c 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 42 75 | -an-Executable"><a.href="#toc-Bu |
| a8940 | 69 6c 64 69 6e 67 2d 61 6e 2d 45 78 65 63 75 74 61 62 6c 65 22 3e 42 75 69 6c 64 69 6e 67 20 61 | ilding-an-Executable">Building.a |
| a8960 | 6e 20 45 78 65 63 75 74 61 62 6c 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 | n.Executable</a>.<a.class="hdr". |
| a8980 | 68 72 65 66 3d 22 23 42 75 69 6c 64 69 6e 67 2d 61 6e 2d 45 78 65 63 75 74 61 62 6c 65 22 3e c2 | href="#Building-an-Executable">. |
| a89a0 | a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 54 68 69 73 20 3c 63 6f 64 65 3e | .</a></h2>........<p>This.<code> |
| a89c0 | 62 75 69 6c 64 2e 7a 69 67 3c 2f 63 6f 64 65 3e 20 66 69 6c 65 20 69 73 20 61 75 74 6f 6d 61 74 | build.zig</code>.file.is.automat |
| a89e0 | 69 63 61 6c 6c 79 20 67 65 6e 65 72 61 74 65 64 0a 20 20 20 20 20 20 20 20 62 79 20 3c 63 6f 64 | ically.generated.........by.<cod |
| a8a00 | 65 3e 7a 69 67 20 69 6e 69 74 2d 65 78 65 3c 2f 63 6f 64 65 3e 2e 3c 2f 70 3e 0a 20 20 20 20 20 | e>zig.init-exe</code>.</p>...... |
| a8a20 | 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c | .<pre><code.class="zig"><span.cl |
| a8a40 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 42 75 69 6c 64 65 | ass="tok-kw">const</span>.Builde |
| a8a60 | 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 | r.=.<span.class="tok-builtin">@i |
| a8a80 | 6d 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 |
| a8aa0 | 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 62 75 69 6c 64 | r">"std"</span>).build |
| a8ac0 | 2e 42 75 69 6c 64 65 72 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | .Builder;..<span.class="tok-kw"> |
| a8ae0 | 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"> |
| a8b00 | 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 62 | fn</span>.<span.class="tok-fn">b |
| a8b20 | 75 69 6c 64 3c 2f 73 70 61 6e 3e 28 62 3a 20 2a 42 75 69 6c 64 65 72 29 20 3c 73 70 61 6e 20 63 | uild</span>(b:.*Builder).<span.c |
| a8b40 | 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>.{... |
| a8b60 | 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 53 | ..<span.class="tok-comment">//.S |
| a8b80 | 74 61 6e 64 61 72 64 20 74 61 72 67 65 74 20 6f 70 74 69 6f 6e 73 20 61 6c 6c 6f 77 73 20 74 68 | tandard.target.options.allows.th |
| a8ba0 | 65 20 70 65 72 73 6f 6e 20 72 75 6e 6e 69 6e 67 20 60 7a 69 67 20 62 75 69 6c 64 60 20 74 6f 20 | e.person.running.`zig.build`.to. |
| a8bc0 | 63 68 6f 6f 73 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 | choose</span>.....<span.class="t |
| a8be0 | 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 77 68 61 74 20 74 61 72 67 65 74 20 74 6f 20 62 75 | ok-comment">//.what.target.to.bu |
| a8c00 | 69 6c 64 20 66 6f 72 2e 20 48 65 72 65 20 77 65 20 64 6f 20 6e 6f 74 20 6f 76 65 72 72 69 64 65 | ild.for..Here.we.do.not.override |
| a8c20 | 20 74 68 65 20 64 65 66 61 75 6c 74 73 2c 20 77 68 69 63 68 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 | .the.defaults,.which</span>..... |
| a8c40 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 6d 65 61 | <span.class="tok-comment">//.mea |
| a8c60 | 6e 73 20 61 6e 79 20 74 61 72 67 65 74 20 69 73 20 61 6c 6c 6f 77 65 64 2c 20 61 6e 64 20 74 68 | ns.any.target.is.allowed,.and.th |
| a8c80 | 65 20 64 65 66 61 75 6c 74 20 69 73 20 6e 61 74 69 76 65 2e 20 4f 74 68 65 72 20 6f 70 74 69 6f | e.default.is.native..Other.optio |
| a8ca0 | 6e 73 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 | ns</span>.....<span.class="tok-c |
| a8cc0 | 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 66 6f 72 20 72 65 73 74 72 69 63 74 69 6e 67 20 73 75 70 70 6f | omment">//.for.restricting.suppo |
| a8ce0 | 72 74 65 64 20 74 61 72 67 65 74 20 73 65 74 20 61 72 65 20 61 76 61 69 6c 61 62 6c 65 2e 3c 2f | rted.target.set.are.available.</ |
| a8d00 | 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 |
| a8d20 | 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 74 61 72 67 65 74 20 3d 20 62 2e 73 74 61 6e 64 61 72 64 54 | onst</span>.target.=.b.standardT |
| a8d40 | 61 72 67 65 74 4f 70 74 69 6f 6e 73 28 2e 7b 7d 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | argetOptions(.{});......<span.cl |
| a8d60 | 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 53 74 61 6e 64 61 72 64 20 72 65 | ass="tok-comment">//.Standard.re |
| a8d80 | 6c 65 61 73 65 20 6f 70 74 69 6f 6e 73 20 61 6c 6c 6f 77 20 74 68 65 20 70 65 72 73 6f 6e 20 72 | lease.options.allow.the.person.r |
| a8da0 | 75 6e 6e 69 6e 67 20 60 7a 69 67 20 62 75 69 6c 64 60 20 74 6f 20 73 65 6c 65 63 74 3c 2f 73 70 | unning.`zig.build`.to.select</sp |
| a8dc0 | 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 |
| a8de0 | 22 3e 2f 2f 20 62 65 74 77 65 65 6e 20 44 65 62 75 67 2c 20 52 65 6c 65 61 73 65 53 61 66 65 2c | ">//.between.Debug,.ReleaseSafe, |
| a8e00 | 20 52 65 6c 65 61 73 65 46 61 73 74 2c 20 61 6e 64 20 52 65 6c 65 61 73 65 53 6d 61 6c 6c 2e 3c | .ReleaseFast,.and.ReleaseSmall.< |
| a8e20 | 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"> |
| a8e40 | 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6d 6f 64 65 20 3d 20 62 2e 73 74 61 6e 64 61 72 64 52 65 | const</span>.mode.=.b.standardRe |
| a8e60 | 6c 65 61 73 65 4f 70 74 69 6f 6e 73 28 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | leaseOptions();......<span.class |
| a8e80 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 78 65 20 3d 20 62 2e 61 | ="tok-kw">const</span>.exe.=.b.a |
| a8ea0 | 64 64 45 78 65 63 75 74 61 62 6c 65 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 | ddExecutable(<span.class="tok-st |
| a8ec0 | 72 22 3e 26 71 75 6f 74 3b 65 78 61 6d 70 6c 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 3c | r">"example"</span>,.< |
| a8ee0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 72 63 2f 6d | span.class="tok-str">"src/m |
| a8f00 | 61 69 6e 2e 7a 69 67 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 65 78 65 2e 73 | ain.zig"</span>);.....exe.s |
| a8f20 | 65 74 54 61 72 67 65 74 28 74 61 72 67 65 74 29 3b 0a 20 20 20 20 65 78 65 2e 73 65 74 42 75 69 | etTarget(target);.....exe.setBui |
| a8f40 | 6c 64 4d 6f 64 65 28 6d 6f 64 65 29 3b 0a 20 20 20 20 65 78 65 2e 69 6e 73 74 61 6c 6c 28 29 3b | ldMode(mode);.....exe.install(); |
| a8f60 | 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 |
| a8f80 | 3c 2f 73 70 61 6e 3e 20 72 75 6e 5f 63 6d 64 20 3d 20 65 78 65 2e 72 75 6e 28 29 3b 0a 20 20 20 | </span>.run_cmd.=.exe.run();.... |
| a8fa0 | 20 72 75 6e 5f 63 6d 64 2e 73 74 65 70 2e 64 65 70 65 6e 64 4f 6e 28 62 2e 67 65 74 49 6e 73 74 | .run_cmd.step.dependOn(b.getInst |
| a8fc0 | 61 6c 6c 53 74 65 70 28 29 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | allStep());.....<span.class="tok |
| a8fe0 | 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 62 2e 61 72 67 73 29 20 7c 61 72 67 73 7c 20 7b | -kw">if</span>.(b.args).|args|.{ |
| a9000 | 0a 20 20 20 20 20 20 20 20 72 75 6e 5f 63 6d 64 2e 61 64 64 41 72 67 73 28 61 72 67 73 29 3b 0a | .........run_cmd.addArgs(args);. |
| a9020 | 20 20 20 20 7d 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | ....}......<span.class="tok-kw"> |
| a9040 | 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 72 75 6e 5f 73 74 65 70 20 3d 20 62 2e 73 74 65 70 28 3c | const</span>.run_step.=.b.step(< |
| a9060 | 73 70 61 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 26 71 | span.class="tok-str">"run&q |
| a9080 | 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 | uot;</span>,.<span.class="tok-st |
| a90a0 | 72 22 3e 26 71 75 6f 74 3b 52 75 6e 20 74 68 65 20 61 70 70 26 71 75 6f 74 3b 3c 2f 73 70 61 6e | r">"Run.the.app"</span |
| a90c0 | 3e 29 3b 0a 20 20 20 20 72 75 6e 5f 73 74 65 70 2e 64 65 70 65 6e 64 4f 6e 28 26 61 6d 70 3b 72 | >);.....run_step.dependOn(&r |
| a90e0 | 75 6e 5f 63 6d 64 2e 73 74 65 70 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 | un_cmd.step);.}</code></pre>.... |
| a9100 | 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 42 75 69 6c 64 69 6e 67 2d 61 2d 4c 69 | ...........<h2.id="Building-a-Li |
| a9120 | 62 72 61 72 79 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 42 75 69 6c 64 69 6e 67 2d 61 2d | brary"><a.href="#toc-Building-a- |
| a9140 | 4c 69 62 72 61 72 79 22 3e 42 75 69 6c 64 69 6e 67 20 61 20 4c 69 62 72 61 72 79 3c 2f 61 3e 20 | Library">Building.a.Library</a>. |
| a9160 | 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 42 75 69 6c 64 69 6e 67 2d 61 | <a.class="hdr".href="#Building-a |
| a9180 | 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 3e | -Library">..</a></h2>........<p> |
| a91a0 | 54 68 69 73 20 3c 63 6f 64 65 3e 62 75 69 6c 64 2e 7a 69 67 3c 2f 63 6f 64 65 3e 20 66 69 6c 65 | This.<code>build.zig</code>.file |
| a91c0 | 20 69 73 20 61 75 74 6f 6d 61 74 69 63 61 6c 6c 79 20 67 65 6e 65 72 61 74 65 64 0a 20 20 20 20 | .is.automatically.generated..... |
| a91e0 | 20 20 20 20 62 79 20 3c 63 6f 64 65 3e 7a 69 67 20 69 6e 69 74 2d 6c 69 62 3c 2f 63 6f 64 65 3e | ....by.<code>zig.init-lib</code> |
| a9200 | 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | .</p>.......<pre><code.class="zi |
| a9220 | 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 | g"><span.class="tok-kw">const</s |
| a9240 | 70 61 6e 3e 20 42 75 69 6c 64 65 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | pan>.Builder.=.<span.class="tok- |
| a9260 | 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 |
| a9280 | 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 |
| a92a0 | 70 61 6e 3e 29 2e 62 75 69 6c 64 2e 42 75 69 6c 64 65 72 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 | pan>).build.Builder;..<span.clas |
| a92c0 | 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 |
| a92e0 | 73 3d 22 74 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 |
| a9300 | 3d 22 74 6f 6b 2d 66 6e 22 3e 62 75 69 6c 64 3c 2f 73 70 61 6e 3e 28 62 3a 20 2a 42 75 69 6c 64 | ="tok-fn">build</span>(b:.*Build |
| a9320 | 65 72 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c | er).<span.class="tok-type">void< |
| a9340 | 2f 73 70 61 6e 3e 20 7b 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 |
| a9360 | 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6d 6f 64 65 20 3d 20 62 2e 73 74 61 6e 64 61 72 64 | ">const</span>.mode.=.b.standard |
| a9380 | 52 65 6c 65 61 73 65 4f 70 74 69 6f 6e 73 28 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | ReleaseOptions();.....<span.clas |
| a93a0 | 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 62 20 3d 20 62 2e | s="tok-kw">const</span>.lib.=.b. |
| a93c0 | 61 64 64 53 74 61 74 69 63 4c 69 62 72 61 72 79 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | addStaticLibrary(<span.class="to |
| a93e0 | 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 |
| a9400 | 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 73 | >,.<span.class="tok-str">"s |
| a9420 | 72 63 2f 6d 61 69 6e 2e 7a 69 67 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 6c | rc/main.zig"</span>);.....l |
| a9440 | 69 62 2e 73 65 74 42 75 69 6c 64 4d 6f 64 65 28 6d 6f 64 65 29 3b 0a 20 20 20 20 6c 69 62 2e 69 | ib.setBuildMode(mode);.....lib.i |
| a9460 | 6e 73 74 61 6c 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 | nstall();......<span.class="tok- |
| a9480 | 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 6d 61 69 6e 5f 74 65 73 74 73 20 3d 20 62 2e 61 64 | kw">var</span>.main_tests.=.b.ad |
| a94a0 | 64 54 65 73 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 | dTest(<span.class="tok-str">&quo |
| a94c0 | 74 3b 73 72 63 2f 6d 61 69 6e 2e 7a 69 67 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 | t;src/main.zig"</span>);... |
| a94e0 | 20 20 6d 61 69 6e 5f 74 65 73 74 73 2e 73 65 74 42 75 69 6c 64 4d 6f 64 65 28 6d 6f 64 65 29 3b | ..main_tests.setBuildMode(mode); |
| a9500 | 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 |
| a9520 | 3c 2f 73 70 61 6e 3e 20 74 65 73 74 5f 73 74 65 70 20 3d 20 62 2e 73 74 65 70 28 3c 73 70 61 6e | </span>.test_step.=.b.step(<span |
| a9540 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 74 65 73 74 26 71 75 6f 74 | .class="tok-str">"test" |
| a9560 | 3b 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e | ;</span>,.<span.class="tok-str"> |
| a9580 | 26 71 75 6f 74 3b 52 75 6e 20 6c 69 62 72 61 72 79 20 74 65 73 74 73 26 71 75 6f 74 3b 3c 2f 73 | "Run.library.tests"</s |
| a95a0 | 70 61 6e 3e 29 3b 0a 20 20 20 20 74 65 73 74 5f 73 74 65 70 2e 64 65 70 65 6e 64 4f 6e 28 26 61 | pan>);.....test_step.dependOn(&a |
| a95c0 | 6d 70 3b 6d 61 69 6e 5f 74 65 73 74 73 2e 73 74 65 70 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 | mp;main_tests.step);.}</code></p |
| a95e0 | 72 65 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 43 6f 6d 70 69 6c | re>...............<h2.id="Compil |
| a9600 | 69 6e 67 2d 43 2d 53 6f 75 72 63 65 2d 43 6f 64 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 | ing-C-Source-Code"><a.href="#toc |
| a9620 | 2d 43 6f 6d 70 69 6c 69 6e 67 2d 43 2d 53 6f 75 72 63 65 2d 43 6f 64 65 22 3e 43 6f 6d 70 69 6c | -Compiling-C-Source-Code">Compil |
| a9640 | 69 6e 67 20 43 20 53 6f 75 72 63 65 20 43 6f 64 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 | ing.C.Source.Code</a>.<a.class=" |
| a9660 | 68 64 72 22 20 68 72 65 66 3d 22 23 43 6f 6d 70 69 6c 69 6e 67 2d 43 2d 53 6f 75 72 63 65 2d 43 | hdr".href="#Compiling-C-Source-C |
| a9680 | 6f 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 72 65 3e 3c 63 6f | ode">..</a></h2>........<pre><co |
| a96a0 | 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 6c 69 62 2e 61 64 64 43 53 6f 75 72 63 65 46 69 6c | de.class="zig">lib.addCSourceFil |
| a96c0 | 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 73 72 | e(<span.class="tok-str">"sr |
| a96e0 | 63 2f 6c 69 62 2e 63 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 26 61 6d 70 3b 5b 5f 5d 5b 5d | c/lib.c"</span>,.&[_][] |
| a9700 | 3c 73 70 61 6e 20 63 6c 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 |
| a9720 | 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 |
| a9740 | 6e 3e 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 | n>{.....<span.class="tok-str">&q |
| a9760 | 75 6f 74 3b 2d 57 61 6c 6c 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 3c 73 70 61 | uot;-Wall"</span>,.....<spa |
| a9780 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 2d 57 65 78 74 72 61 26 | n.class="tok-str">"-Wextra& |
| a97a0 | 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | quot;</span>,.....<span.class="t |
| a97c0 | 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 2d 57 65 72 72 6f 72 26 71 75 6f 74 3b 3c 2f 73 70 61 | ok-str">"-Werror"</spa |
| a97e0 | 6e 3e 2c 0a 7d 29 3b 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 | n>,.});</code></pre>............ |
| a9800 | 20 20 20 0a 20 20 20 20 20 20 3c 68 31 20 69 64 3d 22 43 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 | ..........<h1.id="C"><a.href="#t |
| a9820 | 6f 63 2d 43 22 3e 43 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d | oc-C">C</a>.<a.class="hdr".href= |
| a9840 | 22 23 43 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 31 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 | "#C">..</a></h1>........<p>..... |
| a9860 | 20 20 41 6c 74 68 6f 75 67 68 20 5a 69 67 20 69 73 20 69 6e 64 65 70 65 6e 64 65 6e 74 20 6f 66 | ..Although.Zig.is.independent.of |
| a9880 | 20 43 2c 20 61 6e 64 2c 20 75 6e 6c 69 6b 65 20 6d 6f 73 74 20 6f 74 68 65 72 20 6c 61 6e 67 75 | .C,.and,.unlike.most.other.langu |
| a98a0 | 61 67 65 73 2c 20 64 6f 65 73 20 6e 6f 74 20 64 65 70 65 6e 64 20 6f 6e 20 6c 69 62 63 2c 0a 20 | ages,.does.not.depend.on.libc,.. |
| a98c0 | 20 20 20 20 20 5a 69 67 20 61 63 6b 6e 6f 77 6c 65 64 67 65 73 20 74 68 65 20 69 6d 70 6f 72 74 | .....Zig.acknowledges.the.import |
| a98e0 | 61 6e 63 65 20 6f 66 20 69 6e 74 65 72 61 63 74 69 6e 67 20 77 69 74 68 20 65 78 69 73 74 69 6e | ance.of.interacting.with.existin |
| a9900 | 67 20 43 20 63 6f 64 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 | g.C.code........</p>.......<p>.. |
| a9920 | 20 20 20 20 20 54 68 65 72 65 20 61 72 65 20 61 20 66 65 77 20 77 61 79 73 20 74 68 61 74 20 5a | .....There.are.a.few.ways.that.Z |
| a9940 | 69 67 20 66 61 63 69 6c 69 74 61 74 65 73 20 43 20 69 6e 74 65 72 6f 70 2e 0a 20 20 20 20 20 20 | ig.facilitates.C.interop........ |
| a9960 | 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 43 2d 54 79 70 65 2d 50 72 69 6d 69 74 | </p>.......<h2.id="C-Type-Primit |
| a9980 | 69 76 65 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 43 2d 54 79 70 65 2d 50 72 69 6d 69 | ives"><a.href="#toc-C-Type-Primi |
| a99a0 | 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 20 3c 61 20 | tives">C.Type.Primitives</a>.<a. |
| a99c0 | 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 43 2d 54 79 70 65 2d 50 72 69 6d 69 74 | class="hdr".href="#C-Type-Primit |
| a99e0 | 69 76 65 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 | ives">..</a></h2>........<p>.... |
| a9a00 | 20 20 20 54 68 65 73 65 20 68 61 76 65 20 67 75 61 72 61 6e 74 65 65 64 20 43 20 41 42 49 20 63 | ...These.have.guaranteed.C.ABI.c |
| a9a20 | 6f 6d 70 61 74 69 62 69 6c 69 74 79 20 61 6e 64 20 63 61 6e 20 62 65 20 75 73 65 64 20 6c 69 6b | ompatibility.and.can.be.used.lik |
| a9a40 | 65 20 61 6e 79 20 6f 74 68 65 72 20 74 79 70 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 | e.any.other.type........</p>.... |
| a9a60 | 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 | ...<ul>...........<li><code.clas |
| a9a80 | 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 63 | s="zig"><span.class="tok-type">c |
| a9aa0 | 5f 73 68 6f 72 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 | _short</span></code></li>....... |
| a9ac0 | 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 | ....<li><code.class="zig"><span. |
| a9ae0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 63 5f 75 73 68 6f 72 74 3c 2f 73 70 61 6e 3e | class="tok-type">c_ushort</span> |
| a9b00 | 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 |
| a9b20 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | .class="zig"><span.class="tok-ty |
| a9b40 | 70 65 22 3e 63 5f 69 6e 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 | pe">c_int</span></code></li>.... |
| a9b60 | 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 | .......<li><code.class="zig"><sp |
| a9b80 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 63 5f 75 69 6e 74 3c 2f 73 70 61 6e | an.class="tok-type">c_uint</span |
| a9ba0 | 3e 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 | ></code></li>...........<li><cod |
| a9bc0 | 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | e.class="zig"><span.class="tok-t |
| a9be0 | 79 70 65 22 3e 63 5f 6c 6f 6e 67 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 | ype">c_long</span></code></li>.. |
| a9c00 | 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c | .........<li><code.class="zig">< |
| a9c20 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 63 5f 75 6c 6f 6e 67 3c 2f 73 | span.class="tok-type">c_ulong</s |
| a9c40 | 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c | pan></code></li>...........<li>< |
| a9c60 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | code.class="zig"><span.class="to |
| a9c80 | 6b 2d 74 79 70 65 22 3e 63 5f 6c 6f 6e 67 6c 6f 6e 67 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e | k-type">c_longlong</span></code> |
| a9ca0 | 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d | </li>...........<li><code.class= |
| a9cc0 | 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 63 5f 75 | "zig"><span.class="tok-type">c_u |
| a9ce0 | 6c 6f 6e 67 6c 6f 6e 67 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 | longlong</span></code></li>..... |
| a9d00 | 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 | ......<li><code.class="zig"><spa |
| a9d20 | 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< |
| a9d40 | 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 |
| a9d60 | 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ><code.class="zig"><span.class=" |
| a9d80 | 74 6f 6b 2d 74 79 70 65 22 3e 63 5f 76 6f 69 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f | tok-type">c_void</span></code></ |
| a9da0 | 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 | li>.......</ul>.......<p>See.als |
| a9dc0 | 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 50 72 69 6d 69 74 69 | o:</p><ul>.<li><a.href="#Primiti |
| a9de0 | 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 |
| a9e00 | 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 | i>.</ul>................<h2.id=" |
| a9e20 | 49 6d 70 6f 72 74 2d 66 72 6f 6d 2d 43 2d 48 65 61 64 65 72 2d 46 69 6c 65 22 3e 3c 61 20 68 72 | Import-from-C-Header-File"><a.hr |
| a9e40 | 65 66 3d 22 23 74 6f 63 2d 49 6d 70 6f 72 74 2d 66 72 6f 6d 2d 43 2d 48 65 61 64 65 72 2d 46 69 | ef="#toc-Import-from-C-Header-Fi |
| a9e60 | 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 61 | le">Import.from.C.Header.File</a |
| a9e80 | 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 49 6d 70 6f 72 74 2d 66 | >.<a.class="hdr".href="#Import-f |
| a9ea0 | 72 6f 6d 2d 43 2d 48 65 61 64 65 72 2d 46 69 6c 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a | rom-C-Header-File">..</a></h2>.. |
| a9ec0 | 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d | ......<p>.......The.<code.class= |
| a9ee0 | 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e | "zig"><span.class="tok-builtin"> |
| a9f00 | 40 63 49 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 62 75 69 6c 74 69 6e 20 66 | @cImport</span></code>.builtin.f |
| a9f20 | 75 6e 63 74 69 6f 6e 20 63 61 6e 20 62 65 20 75 73 65 64 0a 20 20 20 20 20 20 74 6f 20 64 69 72 | unction.can.be.used.......to.dir |
| a9f40 | 65 63 74 6c 79 20 69 6d 70 6f 72 74 20 73 79 6d 62 6f 6c 73 20 66 72 6f 6d 20 2e 68 20 66 69 6c | ectly.import.symbols.from..h.fil |
| a9f60 | 65 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 | es:.......</p>.......<p.class="f |
| a9f80 | 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 | ile">test.zig</p><pre><code.clas |
| a9fa0 | 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e | s="zig"><span.class="tok-kw">con |
| a9fc0 | 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 |
| a9fe0 | 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 |
| aa000 | 70 61 6e 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 | pan.class="tok-comment">//.See.h |
| aa020 | 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 |
| aa040 | 73 75 65 73 2f 35 31 35 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | sues/515</span>.....<span.class= |
| aa060 | 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 73 | "tok-builtin">@cDefine</span>(<s |
| aa080 | 70 61 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 | pan.class="tok-str">"_NO_CR |
| aa0a0 | 54 5f 53 54 44 49 4f 5f 49 4e 4c 49 4e 45 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 | T_STDIO_INLINE"</span>,.<sp |
| aa0c0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 31 26 71 75 6f 74 3b | an.class="tok-str">"1" |
| aa0e0 | 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 | </span>);.....<span.class="tok-b |
| aa100 | 75 69 6c 74 69 6e 22 3e 40 63 49 6e 63 6c 75 64 65 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 | uiltin">@cInclude</span>(<span.c |
| aa120 | 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 69 6f 2e 68 26 71 75 6f | lass="tok-str">"stdio.h&quo |
| aa140 | 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 29 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | t;</span>);.});.<span.class="tok |
| aa160 | 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 |
| aa180 | 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- |
| aa1a0 | 66 6e 22 3e 6d 61 69 6e 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | fn">main</span>().<span.class="t |
| aa1c0 | 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 20 63 | ok-type">void</span>.{....._.=.c |
| aa1e0 | 2e 70 72 69 6e 74 66 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 | .printf(<span.class="tok-str">&q |
| aa200 | 75 6f 74 3b 68 65 6c 6c 6f 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f | uot;hello\n"</span>);.}</co |
| aa220 | 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c | de></pre><pre><code.class="shell |
| aa240 | 22 3e 24 20 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 74 65 73 74 2e 7a 69 67 20 2d 6c 63 0a 24 | ">$.zig.build-exe.test.zig.-lc.$ |
| aa260 | 20 2e 2f 74 65 73 74 0a 68 65 6c 6c 6f 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 | ../test.hello.</code></pre>..... |
| aa280 | 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | ...<p>.......The.<code.class="zi |
| aa2a0 | 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 49 | g"><span.class="tok-builtin">@cI |
| aa2c0 | 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 66 75 6e 63 74 69 6f 6e 20 74 61 6b | mport</span></code>.function.tak |
| aa2e0 | 65 73 20 61 6e 20 65 78 70 72 65 73 73 69 6f 6e 20 61 73 20 61 20 70 61 72 61 6d 65 74 65 72 2e | es.an.expression.as.a.parameter. |
| aa300 | 0a 20 20 20 20 20 20 54 68 69 73 20 65 78 70 72 65 73 73 69 6f 6e 20 69 73 20 65 76 61 6c 75 61 | .......This.expression.is.evalua |
| aa320 | 74 65 64 20 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 61 6e 64 20 69 73 20 75 73 65 64 20 | ted.at.compile-time.and.is.used. |
| aa340 | 74 6f 20 63 6f 6e 74 72 6f 6c 0a 20 20 20 20 20 20 70 72 65 70 72 6f 63 65 73 73 6f 72 20 64 69 | to.control.......preprocessor.di |
| aa360 | 72 65 63 74 69 76 65 73 20 61 6e 64 20 69 6e 63 6c 75 64 65 20 6d 75 6c 74 69 70 6c 65 20 2e 68 | rectives.and.include.multiple..h |
| aa380 | 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 70 72 65 3e 3c 63 | .files:.......</p>.......<pre><c |
| aa3a0 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ode.class="zig"><span.class="tok |
| aa3c0 | 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 |
| aa3e0 | 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 |
| aa400 | 70 61 6e 3e 28 3c 73 70 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">" |
| aa420 | 3b 62 75 69 6c 74 69 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 3c 73 70 61 6e 20 63 | ;builtin"</span>);..<span.c |
| aa440 | 6c 61 73 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 | lass="tok-kw">const</span>.c.=.< |
| aa460 | 73 70 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 | span.class="tok-builtin">@cImpor |
| aa480 | 74 3c 2f 73 70 61 6e 3e 28 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | t</span>({.....<span.class="tok- |
| aa4a0 | 62 75 69 6c 74 69 6e 22 3e 40 63 44 65 66 69 6e 65 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 | builtin">@cDefine</span>(<span.c |
| aa4c0 | 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 4e 44 45 42 55 47 26 71 75 6f 74 | lass="tok-str">"NDEBUG" |
| aa4e0 | 3b 3c 2f 73 70 61 6e 3e 2c 20 62 75 69 6c 74 69 6e 2e 6d 6f 64 65 20 3d 3d 20 2e 52 65 6c 65 61 | ;</span>,.builtin.mode.==..Relea |
| aa500 | 73 65 46 61 73 74 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | seFast);.....<span.class="tok-kw |
| aa520 | 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 73 6f 6d 65 74 68 69 6e 67 29 20 7b 0a 20 20 20 20 20 20 | ">if</span>.(something).{....... |
| aa540 | 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 44 65 | ..<span.class="tok-builtin">@cDe |
| aa560 | 66 69 6e 65 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 | fine</span>(<span.class="tok-str |
| aa580 | 22 3e 26 71 75 6f 74 3b 5f 47 4e 55 5f 53 4f 55 52 43 45 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e | ">"_GNU_SOURCE"</span> |
| aa5a0 | 2c 20 7b 7d 29 3b 0a 20 20 20 20 7d 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ,.{});.....}.....<span.class="to |
| aa5c0 | 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 49 6e 63 6c 75 64 65 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 | k-builtin">@cInclude</span>(<spa |
| aa5e0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 6c 69 62 2e 68 | n.class="tok-str">"stdlib.h |
| aa600 | 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | "</span>);.....<span.class= |
| aa620 | 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 73 6f 6d 65 74 68 69 6e 67 29 20 7b | "tok-kw">if</span>.(something).{ |
| aa640 | 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 |
| aa660 | 6e 22 3e 40 63 55 6e 64 65 66 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | n">@cUndef</span>(<span.class="t |
| aa680 | 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"< |
| aa6a0 | 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 7d 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | /span>);.....}.....<span.class=" |
| aa6c0 | 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 49 6e 63 6c 75 64 65 3c 2f 73 70 61 6e 3e 28 3c 73 | tok-builtin">@cInclude</span>(<s |
| aa6e0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 6f 75 6e 64 69 | pan.class="tok-str">"soundi |
| aa700 | 6f 2e 68 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 29 3b 3c 2f 63 6f 64 65 3e 3c 2f 70 | o.h"</span>);.});</code></p |
| aa720 | 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c | re>.......<p>See.also:</p><ul>.< |
| aa740 | 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 63 49 6d 70 6f 72 74 22 3e 40 63 49 6d 70 6f 72 74 3c 2f | li><a.href="#cImport">@cImport</ |
| aa760 | 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"> |
| aa780 | 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=" |
| aa7a0 | 23 63 44 65 66 69 6e 65 22 3e 40 63 44 65 66 69 6e 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e | #cDefine">@cDefine</a></li>.<li> |
| aa7c0 | 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 |
| aa7e0 | 69 3e 0a 3c 6c 69 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 | i>.<li><a.href="#import">@import |
| aa800 | 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>................< |
| aa820 | 68 32 20 69 64 3d 22 43 2d 50 6f 69 6e 74 65 72 73 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 | h2.id="C-Pointers"><a.href="#toc |
| aa840 | 2d 43 2d 50 6f 69 6e 74 65 72 73 22 3e 43 20 50 6f 69 6e 74 65 72 73 3c 2f 61 3e 20 3c 61 20 63 | -C-Pointers">C.Pointers</a>.<a.c |
| aa860 | 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 43 2d 50 6f 69 6e 74 65 72 73 22 3e c2 a7 | lass="hdr".href="#C-Pointers">.. |
| aa880 | 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 | </a></h2>........<p>.......This. |
| aa8a0 | 74 79 70 65 20 69 73 20 74 6f 20 62 65 20 61 76 6f 69 64 65 64 20 77 68 65 6e 65 76 65 72 20 70 | type.is.to.be.avoided.whenever.p |
| aa8c0 | 6f 73 73 69 62 6c 65 2e 20 54 68 65 20 6f 6e 6c 79 20 76 61 6c 69 64 20 72 65 61 73 6f 6e 20 66 | ossible..The.only.valid.reason.f |
| aa8e0 | 6f 72 20 75 73 69 6e 67 20 61 20 43 20 70 6f 69 6e 74 65 72 20 69 73 20 69 6e 0a 20 20 20 20 20 | or.using.a.C.pointer.is.in...... |
| aa900 | 20 61 75 74 6f 2d 67 65 6e 65 72 61 74 65 64 20 63 6f 64 65 20 66 72 6f 6d 20 74 72 61 6e 73 6c | .auto-generated.code.from.transl |
| aa920 | 61 74 69 6e 67 20 43 20 63 6f 64 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c | ating.C.code........</p>.......< |
| aa940 | 70 3e 0a 20 20 20 20 20 20 57 68 65 6e 20 69 6d 70 6f 72 74 69 6e 67 20 43 20 68 65 61 64 65 72 | p>.......When.importing.C.header |
| aa960 | 20 66 69 6c 65 73 2c 20 69 74 20 69 73 20 61 6d 62 69 67 75 6f 75 73 20 77 68 65 74 68 65 72 20 | .files,.it.is.ambiguous.whether. |
| aa980 | 70 6f 69 6e 74 65 72 73 20 73 68 6f 75 6c 64 20 62 65 20 74 72 61 6e 73 6c 61 74 65 64 20 61 73 | pointers.should.be.translated.as |
| aa9a0 | 0a 20 20 20 20 20 20 73 69 6e 67 6c 65 2d 69 74 65 6d 20 70 6f 69 6e 74 65 72 73 20 28 3c 63 6f | .......single-item.pointers.(<co |
| aa9c0 | 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 2a 54 3c 2f 63 6f 64 65 3e 29 20 6f 72 20 75 6e 6b | de.class="zig">*T</code>).or.unk |
| aa9e0 | 6e 6f 77 6e 2d 6c 65 6e 67 74 68 20 70 6f 69 6e 74 65 72 73 20 28 3c 63 6f 64 65 20 63 6c 61 73 | nown-length.pointers.(<code.clas |
| aaa00 | 73 3d 22 7a 69 67 22 3e 5b 2a 5d 54 3c 2f 63 6f 64 65 3e 29 2e 0a 20 20 20 20 20 20 43 20 70 6f | s="zig">[*]T</code>)........C.po |
| aaa20 | 69 6e 74 65 72 73 20 61 72 65 20 61 20 63 6f 6d 70 72 6f 6d 69 73 65 20 73 6f 20 74 68 61 74 20 | inters.are.a.compromise.so.that. |
| aaa40 | 5a 69 67 20 63 6f 64 65 20 63 61 6e 20 75 74 69 6c 69 7a 65 20 74 72 61 6e 73 6c 61 74 65 64 20 | Zig.code.can.utilize.translated. |
| aaa60 | 68 65 61 64 65 72 20 66 69 6c 65 73 20 64 69 72 65 63 74 6c 79 2e 0a 20 20 20 20 20 20 3c 2f 70 | header.files.directly........</p |
| aaa80 | 3e 0a 20 20 20 20 20 20 3c 70 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 5b 2a 63 | >.......<p><code.class="zig">[*c |
| aaaa0 | 5d 54 3c 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 | ]T</code>.-.C.pointer.</p>...... |
| aaac0 | 20 3c 75 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 | .<ul>.........<li>Supports.all.t |
| aaae0 | 68 65 20 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 | he.syntax.of.the.other.two.point |
| aab00 | 65 72 20 74 79 70 65 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 43 6f 65 72 63 | er.types.</li>.........<li>Coerc |
| aab20 | 65 73 20 74 6f 20 6f 74 68 65 72 20 70 6f 69 6e 74 65 72 20 74 79 70 65 73 2c 20 61 73 20 77 65 | es.to.other.pointer.types,.as.we |
| aab40 | 6c 6c 20 61 73 20 3c 61 20 68 72 65 66 3d 22 23 4f 70 74 69 6f 6e 61 6c 2d 50 6f 69 6e 74 65 72 | ll.as.<a.href="#Optional-Pointer |
| aab60 | 73 22 3e 4f 70 74 69 6f 6e 61 6c 20 50 6f 69 6e 74 65 72 73 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 | s">Optional.Pointers</a>........ |
| aab80 | 20 20 20 20 20 20 57 68 65 6e 20 61 20 43 20 70 6f 69 6e 74 65 72 20 69 73 20 63 6f 65 72 63 65 | ......When.a.C.pointer.is.coerce |
| aaba0 | 64 20 74 6f 20 61 20 6e 6f 6e 2d 6f 70 74 69 6f 6e 61 6c 20 70 6f 69 6e 74 65 72 2c 20 73 61 66 | d.to.a.non-optional.pointer,.saf |
| aabc0 | 65 74 79 2d 63 68 65 63 6b 65 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d | ety-checked.............<a.href= |
| aabe0 | 22 23 55 6e 64 65 66 69 6e 65 64 2d 42 65 68 61 76 69 6f 72 22 3e 55 6e 64 65 66 69 6e 65 64 20 | "#Undefined-Behavior">Undefined. |
| aac00 | 42 65 68 61 76 69 6f 72 3c 2f 61 3e 20 6f 63 63 75 72 73 20 69 66 20 74 68 65 20 61 64 64 72 65 | Behavior</a>.occurs.if.the.addre |
| aac20 | 73 73 20 69 73 20 30 2e 0a 20 20 20 20 20 20 20 20 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c | ss.is.0..........</li>.........< |
| aac40 | 6c 69 3e 41 6c 6c 6f 77 73 20 61 64 64 72 65 73 73 20 30 2e 20 4f 6e 20 6e 6f 6e 2d 66 72 65 65 | li>Allows.address.0..On.non-free |
| aac60 | 73 74 61 6e 64 69 6e 67 20 74 61 72 67 65 74 73 2c 20 64 65 72 65 66 65 72 65 6e 63 69 6e 67 20 | standing.targets,.dereferencing. |
| aac80 | 61 64 64 72 65 73 73 20 30 20 69 73 20 73 61 66 65 74 79 2d 63 68 65 63 6b 65 64 0a 20 20 20 20 | address.0.is.safety-checked..... |
| aaca0 | 20 20 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 55 6e 64 65 66 69 6e 65 64 2d 42 65 68 61 | ........<a.href="#Undefined-Beha |
| aacc0 | 76 69 6f 72 22 3e 55 6e 64 65 66 69 6e 65 64 20 42 65 68 61 76 69 6f 72 3c 2f 61 3e 2e 20 4f 70 | vior">Undefined.Behavior</a>..Op |
| aace0 | 74 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 | tional.C.pointers.introduce.anot |
| aad00 | 68 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 | her.bit.to.keep.track.of........ |
| aad20 | 20 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 20 63 6c 61 73 73 | .....null,.just.like.<code.class |
| aad40 | 3d 22 7a 69 67 22 3e 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 | ="zig">?<span.class="tok-type">u |
| aad60 | 73 69 7a 65 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 63 72 | size</span></code>..Note.that.cr |
| aad80 | 65 61 74 69 6e 67 20 61 6e 20 6f 70 74 69 6f 6e 61 6c 20 43 20 70 6f 69 6e 74 65 72 0a 20 20 20 | eating.an.optional.C.pointer.... |
| aada0 | 20 20 20 20 20 20 20 20 20 69 73 20 75 6e 6e 65 63 65 73 73 61 72 79 20 61 73 20 6f 6e 65 20 63 | .........is.unnecessary.as.one.c |
| aadc0 | 61 6e 20 75 73 65 20 6e 6f 72 6d 61 6c 20 3c 61 20 68 72 65 66 3d 22 23 4f 70 74 69 6f 6e 61 6c | an.use.normal.<a.href="#Optional |
| aade0 | 2d 50 6f 69 6e 74 65 72 73 22 3e 4f 70 74 69 6f 6e 61 6c 20 50 6f 69 6e 74 65 72 73 3c 2f 61 3e | -Pointers">Optional.Pointers</a> |
| aae00 | 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 53 75 70 70 | ..........</li>.........<li>Supp |
| aae20 | 6f 72 74 73 20 3c 61 20 68 72 65 66 3d 22 23 54 79 70 65 2d 43 6f 65 72 63 69 6f 6e 22 3e 54 79 | orts.<a.href="#Type-Coercion">Ty |
| aae40 | 70 65 20 43 6f 65 72 63 69 6f 6e 3c 2f 61 3e 20 74 6f 20 61 6e 64 20 66 72 6f 6d 20 69 6e 74 65 | pe.Coercion</a>.to.and.from.inte |
| aae60 | 67 65 72 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 75 70 70 6f 72 74 73 20 | gers.</li>.........<li>Supports. |
| aae80 | 63 6f 6d 70 61 72 69 73 6f 6e 20 77 69 74 68 20 69 6e 74 65 67 65 72 73 2e 3c 2f 6c 69 3e 0a 20 | comparison.with.integers.</li>.. |
| aaea0 | 20 20 20 20 20 20 20 3c 6c 69 3e 44 6f 65 73 20 6e 6f 74 20 73 75 70 70 6f 72 74 20 5a 69 67 2d | .......<li>Does.not.support.Zig- |
| aaec0 | 6f 6e 6c 79 20 70 6f 69 6e 74 65 72 20 61 74 74 72 69 62 75 74 65 73 20 73 75 63 68 20 61 73 20 | only.pointer.attributes.such.as. |
| aaee0 | 61 6c 69 67 6e 6d 65 6e 74 2e 20 55 73 65 20 6e 6f 72 6d 61 6c 20 3c 61 20 68 72 65 66 3d 22 23 | alignment..Use.normal.<a.href="# |
| aaf00 | 50 6f 69 6e 74 65 72 73 22 3e 50 6f 69 6e 74 65 72 73 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 70 | Pointers">Pointers</a>.........p |
| aaf20 | 6c 65 61 73 65 21 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 | lease!</li>.......</ul>.......<p |
| aaf40 | 3e 57 68 65 6e 20 61 20 43 20 70 6f 69 6e 74 65 72 20 69 73 20 70 6f 69 6e 74 69 6e 67 20 74 6f | >When.a.C.pointer.is.pointing.to |
| aaf60 | 20 61 20 73 69 6e 67 6c 65 20 73 74 72 75 63 74 20 28 6e 6f 74 20 61 6e 20 61 72 72 61 79 29 2c | .a.single.struct.(not.an.array), |
| aaf80 | 20 64 65 72 65 66 65 72 65 6e 63 65 20 74 68 65 20 43 20 70 6f 69 6e 74 65 72 20 74 6f 0a 20 20 | .dereference.the.C.pointer.to... |
| aafa0 | 20 20 20 20 20 20 61 63 63 65 73 73 20 74 6f 20 74 68 65 20 73 74 72 75 63 74 27 73 20 66 69 65 | ......access.to.the.struct's.fie |
| aafc0 | 6c 64 73 20 6f 72 20 6d 65 6d 62 65 72 20 64 61 74 61 2e 20 54 68 61 74 20 73 79 6e 74 61 78 20 | lds.or.member.data..That.syntax. |
| aafe0 | 6c 6f 6f 6b 73 20 6c 69 6b 65 0a 20 20 20 20 20 20 20 20 74 68 69 73 3a 20 3c 2f 70 3e 0a 20 20 | looks.like.........this:.</p>... |
| ab000 | 20 20 20 20 20 20 3c 70 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 70 74 72 5f 74 | ......<p><code.class="zig">ptr_t |
| ab020 | 6f 5f 73 74 72 75 63 74 2e 2a 2e 73 74 72 75 63 74 5f 6d 65 6d 62 65 72 3c 2f 63 6f 64 65 3e 3c | o_struct.*.struct_member</code>< |
| ab040 | 2f 70 3e 0a 20 20 20 20 20 20 20 20 3c 70 3e 54 68 69 73 20 69 73 20 63 6f 6d 70 61 72 61 62 6c | /p>.........<p>This.is.comparabl |
| ab060 | 65 20 74 6f 20 64 6f 69 6e 67 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 2d 26 67 | e.to.doing.<code.class="zig">-&g |
| ab080 | 74 3b 3c 2f 63 6f 64 65 3e 20 69 6e 20 43 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 20 20 3c 70 3e 20 | t;</code>.in.C.</p>.........<p>. |
| ab0a0 | 57 68 65 6e 20 61 20 43 20 70 6f 69 6e 74 65 72 20 69 73 20 70 6f 69 6e 74 69 6e 67 20 74 6f 20 | When.a.C.pointer.is.pointing.to. |
| ab0c0 | 61 6e 20 61 72 72 61 79 20 6f 66 20 73 74 72 75 63 74 73 2c 20 74 68 65 20 73 79 6e 74 61 78 20 | an.array.of.structs,.the.syntax. |
| ab0e0 | 72 65 76 65 72 74 73 20 74 6f 20 74 68 69 73 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 20 20 3c 70 3e | reverts.to.this:</p>.........<p> |
| ab100 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 70 74 72 5f 74 6f 5f 73 74 72 75 63 74 5f | <code.class="zig">ptr_to_struct_ |
| ab120 | 61 72 72 61 79 5b 69 6e 64 65 78 5d 2e 73 74 72 75 63 74 5f 6d 65 6d 62 65 72 3c 2f 63 6f 64 65 | array[index].struct_member</code |
| ab140 | 3e 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 45 78 70 6f | ></p>...............<h2.id="Expo |
| ab160 | 72 74 69 6e 67 2d 61 2d 43 2d 4c 69 62 72 61 72 79 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 | rting-a-C-Library"><a.href="#toc |
| ab180 | 2d 45 78 70 6f 72 74 69 6e 67 2d 61 2d 43 2d 4c 69 62 72 61 72 79 22 3e 45 78 70 6f 72 74 69 6e | -Exporting-a-C-Library">Exportin |
| ab1a0 | 67 20 61 20 43 20 4c 69 62 72 61 72 79 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 | g.a.C.Library</a>.<a.class="hdr" |
| ab1c0 | 20 68 72 65 66 3d 22 23 45 78 70 6f 72 74 69 6e 67 2d 61 2d 43 2d 4c 69 62 72 61 72 79 22 3e c2 | .href="#Exporting-a-C-Library">. |
| ab1e0 | 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 4f 6e 65 20 | .</a></h2>........<p>.......One. |
| ab200 | 6f 66 20 74 68 65 20 70 72 69 6d 61 72 79 20 75 73 65 20 63 61 73 65 73 20 66 6f 72 20 5a 69 67 | of.the.primary.use.cases.for.Zig |
| ab220 | 20 69 73 20 65 78 70 6f 72 74 69 6e 67 20 61 20 6c 69 62 72 61 72 79 20 77 69 74 68 20 74 68 65 | .is.exporting.a.library.with.the |
| ab240 | 20 43 20 41 42 49 20 66 6f 72 20 6f 74 68 65 72 20 70 72 6f 67 72 61 6d 6d 69 6e 67 20 6c 61 6e | .C.ABI.for.other.programming.lan |
| ab260 | 67 75 61 67 65 73 0a 20 20 20 20 20 20 74 6f 20 63 61 6c 6c 20 69 6e 74 6f 2e 20 54 68 65 20 3c | guages.......to.call.into..The.< |
| ab280 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | code.class="zig"><span.class="to |
| ab2a0 | 6b 2d 6b 77 22 3e 65 78 70 6f 72 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6b 65 79 77 6f | k-kw">export</span></code>.keywo |
| ab2c0 | 72 64 20 69 6e 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 | rd.in.front.of.functions,.variab |
| ab2e0 | 6c 65 73 2c 20 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 | les,.and.types.causes.them.to... |
| ab300 | 20 20 20 20 62 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 | ....be.part.of.the.library.API:. |
| ab320 | 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 | ......</p>.......<p.class="file" |
| ab340 | 3e 6d 61 74 68 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f | >mathtest.zig</p>.......<pre><co |
| ab360 | 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | de.class="zig"><span.class="tok- |
| ab380 | 6b 77 22 3e 65 78 70 6f 72 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | kw">export</span>.<span.class="t |
| ab3a0 | 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 |
| ab3c0 | 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 6c 61 73 73 3d | k-fn">add</span>(a:.<span.class= |
| ab3e0 | 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 70 61 6e 20 | "tok-type">i32</span>,.b:.<span. |
| ab400 | 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 |
| ab420 | 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>.{ |
| ab440 | 0a 20 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 |
| ab460 | 3c 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 0a 20 20 | </span>.a.+.b;.}</code></pre>... |
| ab480 | 20 20 20 20 3c 70 3e 54 6f 20 6d 61 6b 65 20 61 20 73 74 61 74 69 63 20 6c 69 62 72 61 72 79 3a | ....<p>To.make.a.static.library: |
| ab4a0 | 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 | </p>.......<pre><code.class="she |
| ab4c0 | 6c 6c 22 3e 24 20 7a 69 67 20 62 75 69 6c 64 2d 6c 69 62 20 6d 61 74 68 74 65 73 74 2e 7a 69 67 | ll">$.zig.build-lib.mathtest.zig |
| ab4e0 | 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 54 6f 20 6d 61 6b 65 20 | .</code></pre>.......<p>To.make. |
| ab500 | 61 20 73 68 61 72 65 64 20 6c 69 62 72 61 72 79 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 72 65 | a.shared.library:</p>.......<pre |
| ab520 | 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 62 75 69 6c 64 | ><code.class="shell">$.zig.build |
| ab540 | 2d 6c 69 62 20 6d 61 74 68 74 65 73 74 2e 7a 69 67 20 2d 64 79 6e 61 6d 69 63 0a 3c 2f 63 6f 64 | -lib.mathtest.zig.-dynamic.</cod |
| ab560 | 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 48 65 72 65 20 69 73 20 61 6e 20 65 78 61 | e></pre>.......<p>Here.is.an.exa |
| ab580 | 6d 70 6c 65 20 77 69 74 68 20 74 68 65 20 3c 61 20 68 72 65 66 3d 22 23 5a 69 67 2d 42 75 69 6c | mple.with.the.<a.href="#Zig-Buil |
| ab5a0 | 64 2d 53 79 73 74 65 6d 22 3e 5a 69 67 20 42 75 69 6c 64 20 53 79 73 74 65 6d 3c 2f 61 3e 3a 3c | d-System">Zig.Build.System</a>:< |
| ab5c0 | 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 63 | /p>.......<p.class="file">test.c |
| ab5e0 | 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 63 70 70 | </p>.......<pre><code.class="cpp |
| ab600 | 22 3e 2f 2f 20 54 68 69 73 20 68 65 61 64 65 72 20 69 73 20 67 65 6e 65 72 61 74 65 64 20 62 79 | ">//.This.header.is.generated.by |
| ab620 | 20 7a 69 67 20 66 72 6f 6d 20 6d 61 74 68 74 65 73 74 2e 7a 69 67 0a 23 69 6e 63 6c 75 64 65 20 | .zig.from.mathtest.zig.#include. |
| ab640 | 22 6d 61 74 68 74 65 73 74 2e 68 22 0a 23 69 6e 63 6c 75 64 65 20 26 6c 74 3b 73 74 64 69 6f 2e | "mathtest.h".#include.<stdio. |
| ab660 | 68 26 67 74 3b 0a 0a 69 6e 74 20 6d 61 69 6e 28 69 6e 74 20 61 72 67 63 2c 20 63 68 61 72 20 2a | h>..int.main(int.argc,.char.* |
| ab680 | 2a 61 72 67 76 29 20 7b 0a 20 20 20 20 69 6e 74 33 32 5f 74 20 72 65 73 75 6c 74 20 3d 20 61 64 | *argv).{.....int32_t.result.=.ad |
| ab6a0 | 64 28 34 32 2c 20 31 33 33 37 29 3b 0a 20 20 20 20 70 72 69 6e 74 66 28 22 25 64 5c 6e 22 2c 20 | d(42,.1337);.....printf("%d\n",. |
| ab6c0 | 72 65 73 75 6c 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 | result);.....return.0;.}</code>< |
| ab6e0 | 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 62 75 69 6c | /pre>.......<p.class="file">buil |
| ab700 | 64 2e 7a 69 67 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 | d.zig</p>.......<pre><code.class |
| ab720 | 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 | ="zig"><span.class="tok-kw">cons |
| ab740 | 74 3c 2f 73 70 61 6e 3e 20 42 75 69 6c 64 65 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | t</span>.Builder.=.<span.class=" |
| ab760 | 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 |
| ab780 | 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" |
| ab7a0 | 3b 3c 2f 73 70 61 6e 3e 29 2e 62 75 69 6c 64 2e 42 75 69 6c 64 65 72 3b 0a 0a 3c 73 70 61 6e 20 | ;</span>).build.Builder;..<span. |
| ab7c0 | 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. |
| ab7e0 | 63 6c 61 73 73 3d 22 74 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 |
| ab800 | 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 62 75 69 6c 64 3c 2f 73 70 61 6e 3e 28 62 3a 20 2a 42 | lass="tok-fn">build</span>(b:.*B |
| ab820 | 75 69 6c 64 65 72 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 | uilder).<span.class="tok-type">v |
| ab840 | 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 |
| ab860 | 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6c 69 62 20 3d 20 62 2e 61 64 64 53 68 | k-kw">const</span>.lib.=.b.addSh |
| ab880 | 61 72 65 64 4c 69 62 72 61 72 79 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 | aredLibrary(<span.class="tok-str |
| ab8a0 | 22 3e 26 71 75 6f 74 3b 6d 61 74 68 74 65 73 74 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 3c | ">"mathtest"</span>,.< |
| ab8c0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 6d 61 74 68 74 | span.class="tok-str">"matht |
| ab8e0 | 65 73 74 2e 7a 69 67 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 62 2e 76 65 72 73 69 6f 6e 28 | est.zig"</span>,.b.version( |
| ab900 | 3c 73 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 |
| ab920 | 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 |
| ab940 | 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 |
| ab960 | 3c 2f 73 70 61 6e 3e 29 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | </span>));......<span.class="tok |
| ab980 | 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 78 65 | -kw">const</span>.exe.=.b.addExe |
| ab9a0 | 63 75 74 61 62 6c 65 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 | cutable(<span.class="tok-str">&q |
| ab9c0 | 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 6c 61 | uot;test"</span>,.<span.cla |
| ab9e0 | 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 20 20 20 20 | ss="tok-null">null</span>);..... |
| aba00 | 65 78 65 2e 61 64 64 43 53 6f 75 72 63 65 46 69 6c 65 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | exe.addCSourceFile(<span.class=" |
| aba20 | 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 74 65 73 74 2e 63 26 71 75 6f 74 3b 3c 2f 73 70 61 | tok-str">"test.c"</spa |
| aba40 | 6e 3e 2c 20 26 61 6d 70 3b 5b 5f 5d 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | n>,.&[_][]<span.class="tok-k |
| aba60 | 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 |
| aba80 | 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 7b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | -type">u8</span>{<span.class="to |
| abaa0 | 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 2d 73 74 64 3d 63 39 39 26 71 75 6f 74 3b 3c 2f 73 70 61 | k-str">"-std=c99"</spa |
| abac0 | 6e 3e 7d 29 3b 0a 20 20 20 20 65 78 65 2e 6c 69 6e 6b 4c 69 62 72 61 72 79 28 6c 69 62 29 3b 0a | n>});.....exe.linkLibrary(lib);. |
| abae0 | 20 20 20 20 65 78 65 2e 6c 69 6e 6b 53 79 73 74 65 6d 4c 69 62 72 61 72 79 28 3c 73 70 61 6e 20 | ....exe.linkSystemLibrary(<span. |
| abb00 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 63 26 71 75 6f 74 3b 3c 2f 73 | class="tok-str">"c"</s |
| abb20 | 70 61 6e 3e 29 3b 0a 0a 20 20 20 20 62 2e 64 65 66 61 75 6c 74 5f 73 74 65 70 2e 64 65 70 65 6e | pan>);......b.default_step.depen |
| abb40 | 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 |
| abb60 | 6c 61 73 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 |
| abb80 | 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 |
| abba0 | 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 |
| abbc0 | 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"> |
| abbe0 | 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 |
| abc00 | 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 |
| abc20 | 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 |
| abc40 | 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);. |
| abc60 | 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 | }</code></pre>.......<p.class="f |
| abc80 | 69 6c 65 22 3e 74 65 72 6d 69 6e 61 6c 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f | ile">terminal</p>.......<pre><co |
| abca0 | 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 62 75 69 6c 64 20 74 65 73 | de.class="shell">$.zig.build.tes |
| abcc0 | 74 0a 31 33 37 39 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 | t.1379.</code></pre>.......<p>Se |
| abce0 | 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 65 78 | e.also:</p><ul>.<li><a.href="#ex |
| abd00 | 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 0a 0a 20 20 20 | port">export</a></li>.</ul>..... |
| abd20 | 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 4d 69 78 69 6e 67 2d 4f 62 6a 65 63 74 2d | ..........<h2.id="Mixing-Object- |
| abd40 | 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 2d 4f 62 6a 65 | Files"><a.href="#toc-Mixing-Obje |
| abd60 | 63 74 2d 46 69 6c 65 73 22 3e 4d 69 78 69 6e 67 20 4f 62 6a 65 63 74 20 46 69 6c 65 73 3c 2f 61 | ct-Files">Mixing.Object.Files</a |
| abd80 | 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 69 6e 67 2d 4f | >.<a.class="hdr".href="#Mixing-O |
| abda0 | 62 6a 65 63 74 2d 46 69 6c 65 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 | bject-Files">..</a></h2>........ |
| abdc0 | 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 62 6a 65 63 74 | <p>.......You.can.mix.Zig.object |
| abde0 | 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 74 20 66 69 6c | .files.with.any.other.object.fil |
| abe00 | 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 45 78 61 6d 70 | es.that.respect.the.C.ABI..Examp |
| abe20 | 6c 65 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 | le:.......</p>.......<p.class="f |
| abe40 | 69 6c 65 22 3e 62 61 73 65 36 34 2e 7a 69 67 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c | ile">base64.zig</p>.......<pre>< |
| abe60 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | code.class="zig"><span.class="to |
| abe80 | 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 62 61 73 65 36 34 20 3d 20 3c 73 70 61 | k-kw">const</span>.base64.=.<spa |
| abea0 | 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 |
| abec0 | 70 61 6e 3e 28 3c 73 70 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">" |
| abee0 | 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 62 61 73 65 36 34 3b 0a 0a 3c 73 70 61 | ;std"</span>).base64;..<spa |
| abf00 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 78 70 6f 72 74 3c 2f 73 70 61 6e 3e 20 3c | n.class="tok-kw">export</span>.< |
| abf20 | 73 70 61 6e 20 63 6c 61 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 |
| abf40 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 64 65 63 6f 64 65 5f 62 61 73 65 5f 36 | pan.class="tok-fn">decode_base_6 |
| abf60 | 34 3c 2f 73 70 61 6e 3e 28 0a 20 20 20 20 64 65 73 74 5f 70 74 72 3a 20 5b 2a 5d 3c 73 70 61 6e | 4</span>(.....dest_ptr:.[*]<span |
| abf80 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 | .class="tok-type">u8</span>,.... |
| abfa0 | 20 64 65 73 74 5f 6c 65 6e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | .dest_len:.<span.class="tok-type |
| abfc0 | 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 73 6f 75 72 63 65 5f 70 74 72 3a 20 | ">usize</span>,.....source_ptr:. |
| abfe0 | 5b 2a 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 | [*]<span.class="tok-kw">const</s |
| ac000 | 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</ |
| ac020 | 73 70 61 6e 3e 2c 0a 20 20 20 20 73 6f 75 72 63 65 5f 6c 65 6e 3a 20 3c 73 70 61 6e 20 63 6c 61 | span>,.....source_len:.<span.cla |
| ac040 | 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 29 20 3c 73 | ss="tok-type">usize</span>,.).<s |
| ac060 | 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 |
| ac080 | 3e 20 7b 0a 20 20 20 20 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 |
| ac0a0 | 73 74 3c 2f 73 70 61 6e 3e 20 73 72 63 20 3d 20 73 6f 75 72 63 65 5f 70 74 72 5b 3c 73 70 61 6e | st</span>.src.=.source_ptr[<span |
| ac0c0 | 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 73 6f | .class="tok-number">0</span>..so |
| ac0e0 | 75 72 63 65 5f 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 | urce_len];.....<span.class="tok- |
| ac100 | 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 64 65 73 74 20 3d 20 64 65 73 74 5f 70 74 72 | kw">const</span>.dest.=.dest_ptr |
| ac120 | 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 | [<span.class="tok-number">0</spa |
| ac140 | 6e 3e 2e 2e 64 65 73 74 5f 6c 65 6e 5d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | n>..dest_len];.....<span.class=" |
| ac160 | 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 36 34 5f 64 65 63 6f | tok-kw">const</span>.base64_deco |
| ac180 | 64 65 72 20 3d 20 62 61 73 65 36 34 2e 73 74 61 6e 64 61 72 64 5f 64 65 63 6f 64 65 72 5f 75 6e | der.=.base64.standard_decoder_un |
| ac1a0 | 73 61 66 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 | safe;.....<span.class="tok-kw">c |
| ac1c0 | 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 65 36 | onst</span>.decoded_size.=.base6 |
| ac1e0 | 34 5f 64 65 63 6f 64 65 72 2e 63 61 6c 63 53 69 7a 65 28 73 72 63 29 3b 0a 20 20 20 20 62 61 73 | 4_decoder.calcSize(src);.....bas |
| ac200 | 65 36 34 5f 64 65 63 6f 64 65 72 2e 64 65 63 6f 64 65 28 64 65 73 74 5b 3c 73 70 61 6e 20 63 6c | e64_decoder.decode(dest[<span.cl |
| ac220 | 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 64 65 63 6f 64 | ass="tok-number">0</span>..decod |
| ac240 | 65 64 5f 73 69 7a 65 5d 2c 20 73 72 63 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ed_size],.src);.....<span.class= |
| ac260 | 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 64 65 63 6f 64 65 64 5f 73 | "tok-kw">return</span>.decoded_s |
| ac280 | 69 7a 65 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 | ize;.}</code></pre>.......<p.cla |
| ac2a0 | 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 63 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 72 65 3e | ss="file">test.c</p>.......<pre> |
| ac2c0 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 63 70 70 22 3e 2f 2f 20 54 68 69 73 20 68 65 61 64 65 72 | <code.class="cpp">//.This.header |
| ac2e0 | 20 69 73 20 67 65 6e 65 72 61 74 65 64 20 62 79 20 7a 69 67 20 66 72 6f 6d 20 62 61 73 65 36 34 | .is.generated.by.zig.from.base64 |
| ac300 | 2e 7a 69 67 0a 23 69 6e 63 6c 75 64 65 20 22 62 61 73 65 36 34 2e 68 22 0a 0a 23 69 6e 63 6c 75 | .zig.#include."base64.h"..#inclu |
| ac320 | 64 65 20 26 6c 74 3b 73 74 72 69 6e 67 2e 68 26 67 74 3b 0a 23 69 6e 63 6c 75 64 65 20 26 6c 74 | de.<string.h>.#include.< |
| ac340 | 3b 73 74 64 69 6f 2e 68 26 67 74 3b 0a 0a 69 6e 74 20 6d 61 69 6e 28 69 6e 74 20 61 72 67 63 2c | ;stdio.h>..int.main(int.argc, |
| ac360 | 20 63 68 61 72 20 2a 2a 61 72 67 76 29 20 7b 0a 20 20 20 20 63 6f 6e 73 74 20 63 68 61 72 20 2a | .char.**argv).{.....const.char.* |
| ac380 | 65 6e 63 6f 64 65 64 20 3d 20 22 59 57 78 73 49 48 6c 76 64 58 49 67 59 6d 46 7a 5a 53 42 68 63 | encoded.=."YWxsIHlvdXIgYmFzZSBhc |
| ac3a0 | 6d 55 67 59 6d 56 73 62 32 35 6e 49 48 52 76 49 48 56 7a 22 3b 0a 20 20 20 20 63 68 61 72 20 62 | mUgYmVsb25nIHRvIHVz";.....char.b |
| ac3c0 | 75 66 5b 32 30 30 5d 3b 0a 0a 20 20 20 20 73 69 7a 65 5f 74 20 6c 65 6e 20 3d 20 64 65 63 6f 64 | uf[200];......size_t.len.=.decod |
| ac3e0 | 65 5f 62 61 73 65 5f 36 34 28 62 75 66 2c 20 32 30 30 2c 20 65 6e 63 6f 64 65 64 2c 20 73 74 72 | e_base_64(buf,.200,.encoded,.str |
| ac400 | 6c 65 6e 28 65 6e 63 6f 64 65 64 29 29 3b 0a 20 20 20 20 62 75 66 5b 6c 65 6e 5d 20 3d 20 30 3b | len(encoded));.....buf[len].=.0; |
| ac420 | 0a 20 20 20 20 70 75 74 73 28 62 75 66 29 3b 0a 0a 20 20 20 20 72 65 74 75 72 6e 20 30 3b 0a 7d | .....puts(buf);......return.0;.} |
| ac440 | 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 | </code></pre>.......<p.class="fi |
| ac460 | 6c 65 22 3e 62 75 69 6c 64 2e 7a 69 67 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f | le">build.zig</p>.......<pre><co |
| ac480 | 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | de.class="zig"><span.class="tok- |
| ac4a0 | 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 42 75 69 6c 64 65 72 20 3d 20 3c 73 70 61 6e | kw">const</span>.Builder.=.<span |
| ac4c0 | 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 |
| ac4e0 | 61 6e 3e 28 3c 73 70 61 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">" |
| ac500 | 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 62 75 69 6c 64 2e 42 75 69 6c 64 65 72 3b | std"</span>).build.Builder; |
| ac520 | 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 |
| ac540 | 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> |
| ac560 | 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 |
| ac580 | 6e 3e 28 62 3a 20 2a 42 75 69 6c 64 65 72 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | n>(b:.*Builder).<span.class="tok |
| ac5a0 | 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 | -type">void</span>.{.....<span.c |
| ac5c0 | 6c 61 73 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 20 3d | lass="tok-kw">const</span>.obj.= |
| ac5e0 | 20 62 2e 61 64 64 4f 62 6a 65 63 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 | .b.addObject(<span.class="tok-st |
| ac600 | 72 22 3e 26 71 75 6f 74 3b 62 61 73 65 36 34 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 3c 73 | r">"base64"</span>,.<s |
| ac620 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 62 61 73 65 36 34 | pan.class="tok-str">"base64 |
| ac640 | 2e 7a 69 67 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 | .zig"</span>);......<span.c |
| ac660 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 78 65 20 3d | lass="tok-kw">const</span>.exe.= |
| ac680 | 20 62 2e 61 64 64 45 78 65 63 75 74 61 62 6c 65 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | .b.addExecutable(<span.class="to |
| ac6a0 | 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 74 65 73 74 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 | k-str">"test"</span>,. |
| ac6c0 | 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 |
| ac6e0 | 6e 3e 29 3b 0a 20 20 20 20 65 78 65 2e 61 64 64 43 53 6f 75 72 63 65 46 69 6c 65 28 3c 73 70 61 | n>);.....exe.addCSourceFile(<spa |
| ac700 | 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 2e 63 26 71 | n.class="tok-str">"test.c&q |
| ac720 | 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 26 61 6d 70 3b 5b 5f 5d 5b 5d 3c 73 70 61 6e 20 63 6c 61 | uot;</span>,.&[_][]<span.cla |
| ac740 | 73 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 |
| ac760 | 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 3c 73 70 61 6e 20 | lass="tok-type">u8</span>{<span. |
| ac780 | 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 39 26 71 | class="tok-str">"-std=c99&q |
| ac7a0 | 75 6f 74 3b 3c 2f 73 70 61 6e 3e 7d 29 3b 0a 20 20 20 20 65 78 65 2e 61 64 64 4f 62 6a 65 63 74 | uot;</span>});.....exe.addObject |
| ac7c0 | 28 6f 62 6a 29 3b 0a 20 20 20 20 65 78 65 2e 6c 69 6e 6b 53 79 73 74 65 6d 4c 69 62 72 61 72 79 | (obj);.....exe.linkSystemLibrary |
| ac7e0 | 28 3c 73 70 61 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 | (<span.class="tok-str">"c&q |
| ac800 | 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 65 78 65 2e 69 6e 73 74 61 6c 6c 28 29 3b | uot;</span>);.....exe.install(); |
| ac820 | 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 | .}</code></pre>.......<p.class=" |
| ac840 | 66 69 6c 65 22 3e 74 65 72 6d 69 6e 61 6c 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 | file">terminal</p>.......<pre><c |
| ac860 | 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 62 75 69 6c 64 0a 24 20 | ode.class="shell">$.zig.build.$. |
| ac880 | 2e 2f 7a 69 67 2d 63 61 63 68 65 2f 62 69 6e 2f 74 65 73 74 0a 61 6c 6c 20 79 6f 75 72 20 62 61 | ./zig-cache/bin/test.all.your.ba |
| ac8a0 | 73 65 20 61 72 65 20 62 65 6c 6f 6e 67 20 74 6f 20 75 73 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e | se.are.belong.to.us</code></pre> |
| ac8c0 | 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> |
| ac8e0 | 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 3c 2f | <a.href="#Targets">Targets</a></ |
| ac900 | 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 73 74 | li>.<li><a.href="#Zig-Build-Syst |
| ac920 | 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 3c 2f | em">Zig.Build.System</a></li>.</ |
| ac940 | 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 31 20 69 64 3d | ul>......................<h1.id= |
| ac960 | 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 62 41 | "WebAssembly"><a.href="#toc-WebA |
| ac980 | 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 61 73 | ssembly">WebAssembly</a>.<a.clas |
| ac9a0 | 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 3c 2f | s="hdr".href="#WebAssembly">..</ |
| ac9c0 | 61 3e 3c 2f 68 31 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 5a 69 67 20 73 75 70 70 6f 72 74 73 20 62 | a></h1>........<p>Zig.supports.b |
| ac9e0 | 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 20 74 | uilding.for.WebAssembly.out.of.t |
| aca00 | 68 65 20 62 6f 78 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 46 72 65 65 73 74 | he.box.</p>.......<h2.id="Freest |
| aca20 | 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 64 69 | anding"><a.href="#toc-Freestandi |
| aca40 | 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 22 68 | ng">Freestanding</a>.<a.class="h |
| aca60 | 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 3e 3c | dr".href="#Freestanding">..</a>< |
| aca80 | 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 46 6f 72 20 68 6f 73 74 20 65 6e 76 69 72 6f 6e 6d | /h2>........<p>For.host.environm |
| acaa0 | 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 6e 6f | ents.like.the.web.browser.and.no |
| acac0 | 64 65 6a 73 2c 20 62 75 69 6c 64 20 61 73 20 61 20 6c 69 62 72 61 72 79 20 75 73 69 6e 67 20 74 | dejs,.build.as.a.library.using.t |
| acae0 | 68 65 20 66 72 65 65 73 74 61 6e 64 69 6e 67 20 4f 53 20 74 61 72 67 65 74 2e 0a 20 20 20 20 20 | he.freestanding.OS.target....... |
| acb00 | 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 69 6e 67 20 5a 69 | .Here's.an.example.of.running.Zi |
| acb20 | 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 6d 62 6c 79 20 77 | g.code.compiled.to.WebAssembly.w |
| acb40 | 69 74 68 20 6e 6f 64 65 6a 73 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 | ith.nodejs.</p>.......<p.class=" |
| acb60 | 66 69 6c 65 22 3e 6d 61 74 68 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 | file">math.zig</p><pre><code.cla |
| acb80 | 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 78 | ss="zig"><span.class="tok-kw">ex |
| acba0 | 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" |
| acbc0 | 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"> |
| acbe0 | 70 72 69 6e 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | print</span>(<span.class="tok-ty |
| acc00 | 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 |
| acc20 | 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | -type">void</span>;..<span.class |
| acc40 | 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 |
| acc60 | 61 73 73 3d 22 74 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 |
| acc80 | 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 61 64 64 3c 2f 73 70 61 6e 3e 28 61 3a 20 3c 73 70 61 6e 20 | ss="tok-fn">add</span>(a:.<span. |
| acca0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 2c 20 62 3a 20 | class="tok-type">i32</span>,.b:. |
| accc0 | 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 |
| acce0 | 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f | >).<span.class="tok-type">void</ |
| acd00 | 73 70 61 6e 3e 20 7b 0a 20 20 20 20 70 72 69 6e 74 28 61 20 2b 20 62 29 3b 0a 7d 3c 2f 63 6f 64 | span>.{.....print(a.+.b);.}</cod |
| acd20 | 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 | e></pre><pre><code.class="shell" |
| acd40 | 3e 24 20 7a 69 67 20 62 75 69 6c 64 2d 6c 69 62 20 6d 61 74 68 2e 7a 69 67 20 2d 74 61 72 67 65 | >$.zig.build-lib.math.zig.-targe |
| acd60 | 74 20 77 61 73 6d 33 32 2d 66 72 65 65 73 74 61 6e 64 69 6e 67 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 | t.wasm32-freestanding.</code></p |
| acd80 | 72 65 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 | re>...............<p.class="file |
| acda0 | 22 3e 74 65 73 74 2e 6a 73 3c 2f 70 3e 0a 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 63 6f 6e | ">test.js</p>.....<pre><code>con |
| acdc0 | 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 6f 75 | st.fs.=.require('fs');.const.sou |
| acde0 | 72 63 65 20 3d 20 66 73 2e 72 65 61 64 46 69 6c 65 53 79 6e 63 28 22 2e 2f 6d 61 74 68 2e 77 61 | rce.=.fs.readFileSync("./math.wa |
| ace00 | 73 6d 22 29 3b 0a 63 6f 6e 73 74 20 74 79 70 65 64 41 72 72 61 79 20 3d 20 6e 65 77 20 55 69 6e | sm");.const.typedArray.=.new.Uin |
| ace20 | 74 38 41 72 72 61 79 28 73 6f 75 72 63 65 29 3b 0a 0a 57 65 62 41 73 73 65 6d 62 6c 79 2e 69 6e | t8Array(source);..WebAssembly.in |
| ace40 | 73 74 61 6e 74 69 61 74 65 28 74 79 70 65 64 41 72 72 61 79 2c 20 7b 0a 20 20 65 6e 76 3a 20 7b | stantiate(typedArray,.{...env:.{ |
| ace60 | 0a 20 20 20 20 70 72 69 6e 74 3a 20 28 72 65 73 75 6c 74 29 20 3d 26 67 74 3b 20 7b 20 63 6f 6e | .....print:.(result).=>.{.con |
| ace80 | 73 6f 6c 65 2e 6c 6f 67 28 60 54 68 65 20 72 65 73 75 6c 74 20 69 73 20 24 7b 72 65 73 75 6c 74 | sole.log(`The.result.is.${result |
| acea0 | 7d 60 29 3b 20 7d 0a 20 20 7d 7d 29 2e 74 68 65 6e 28 72 65 73 75 6c 74 20 3d 26 67 74 3b 20 7b | }`);.}...}}).then(result.=>.{ |
| acec0 | 0a 20 20 63 6f 6e 73 74 20 61 64 64 20 3d 20 72 65 73 75 6c 74 2e 69 6e 73 74 61 6e 63 65 2e 65 | ...const.add.=.result.instance.e |
| acee0 | 78 70 6f 72 74 73 2e 61 64 64 3b 0a 20 20 61 64 64 28 31 2c 20 32 29 3b 0a 7d 29 3b 3c 2f 63 6f | xports.add;...add(1,.2);.});</co |
| acf00 | 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 24 20 6e 6f 64 65 20 | de></pre>.....<pre><code>$.node. |
| acf20 | 74 65 73 74 2e 6a 73 0a 54 68 65 20 72 65 73 75 6c 74 20 69 73 20 33 3c 2f 63 6f 64 65 3e 3c 2f | test.js.The.result.is.3</code></ |
| acf40 | 70 72 65 3e 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 57 41 53 49 22 3e 3c 61 20 68 72 65 66 | pre>.......<h2.id="WASI"><a.href |
| acf60 | 3d 22 23 74 6f 63 2d 57 41 53 49 22 3e 57 41 53 49 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 | ="#toc-WASI">WASI</a>.<a.class=" |
| acf80 | 68 64 72 22 20 68 72 65 66 3d 22 23 57 41 53 49 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 | hdr".href="#WASI">..</a></h2>... |
| acfa0 | 20 20 20 20 20 3c 70 3e 5a 69 67 27 73 20 73 75 70 70 6f 72 74 20 66 6f 72 20 57 65 62 41 73 73 | .....<p>Zig's.support.for.WebAss |
| acfc0 | 65 6d 62 6c 79 20 53 79 73 74 65 6d 20 49 6e 74 65 72 66 61 63 65 20 28 57 41 53 49 29 20 69 73 | embly.System.Interface.(WASI).is |
| acfe0 | 20 75 6e 64 65 72 20 61 63 74 69 76 65 20 64 65 76 65 6c 6f 70 6d 65 6e 74 2e 0a 20 20 20 20 20 | .under.active.development....... |
| ad000 | 20 45 78 61 6d 70 6c 65 20 6f 66 20 75 73 69 6e 67 20 74 68 65 20 73 74 61 6e 64 61 72 64 20 6c | .Example.of.using.the.standard.l |
| ad020 | 69 62 72 61 72 79 20 61 6e 64 20 72 65 61 64 69 6e 67 20 63 6f 6d 6d 61 6e 64 20 6c 69 6e 65 20 | ibrary.and.reading.command.line. |
| ad040 | 61 72 67 75 6d 65 6e 74 73 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 | arguments:</p>.......<p.class="f |
| ad060 | 69 6c 65 22 3e 61 72 67 73 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 | ile">args.zig</p><pre><code.clas |
| ad080 | 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e | s="zig"><span.class="tok-kw">con |
| ad0a0 | 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 |
| ad0c0 | 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 |
| ad0e0 | 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"</ |
| ad100 | 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 |
| ad120 | 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 |
| ad140 | 3c 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 |
| ad160 | 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 70 | n</span>().!<span.class="tok-typ |
| ad180 | 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 |
| ad1a0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 67 65 6e 65 72 61 6c 5f 70 75 72 | ="tok-kw">var</span>.general_pur |
| ad1c0 | 70 6f 73 65 5f 61 6c 6c 6f 63 61 74 6f 72 20 3d 20 73 74 64 2e 68 65 61 70 2e 47 65 6e 65 72 61 | pose_allocator.=.std.heap.Genera |
| ad1e0 | 6c 50 75 72 70 6f 73 65 41 6c 6c 6f 63 61 74 6f 72 28 2e 7b 7d 29 7b 7d 3b 0a 20 20 20 20 3c 73 | lPurposeAllocator(.{}){};.....<s |
| ad200 | 70 61 6e 20 63 6c 61 73 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>. |
| ad220 | 67 70 61 20 3d 20 26 61 6d 70 3b 67 65 6e 65 72 61 6c 5f 70 75 72 70 6f 73 65 5f 61 6c 6c 6f 63 | gpa.=.&general_purpose_alloc |
| ad240 | 61 74 6f 72 2e 61 6c 6c 6f 63 61 74 6f 72 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ator.allocator;.....<span.class= |
| ad260 | 22 74 6f 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 | "tok-kw">const</span>.args.=.<sp |
| ad280 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 73 74 64 | an.class="tok-kw">try</span>.std |
| ad2a0 | 2e 70 72 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 | .process.argsAlloc(gpa);.....<sp |
| ad2c0 | 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 73 | an.class="tok-kw">defer</span>.s |
| ad2e0 | 74 64 2e 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 | td.process.argsFree(gpa,.args);. |
| ad300 | 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6f 72 3c 2f 73 | .....<span.class="tok-kw">for</s |
| ad320 | 70 61 6e 3e 20 28 61 72 67 73 29 20 7c 61 72 67 2c 20 69 7c 20 7b 0a 20 20 20 20 20 20 20 20 73 | pan>.(args).|arg,.i|.{.........s |
| ad340 | 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- |
| ad360 | 73 74 72 22 3e 26 71 75 6f 74 3b 7b 7d 3a 20 7b 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e | str">"{}:.{}\n"</span> |
| ad380 | 2c 20 2e 7b 20 69 2c 20 61 72 67 20 7d 29 3b 0a 20 20 20 20 7d 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f | ,..{.i,.arg.});.....}.}</code></ |
| ad3a0 | 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a | pre><pre><code.class="shell">$.z |
| ad3c0 | 69 67 20 62 75 69 6c 64 2d 65 78 65 20 61 72 67 73 2e 7a 69 67 20 2d 74 61 72 67 65 74 20 77 61 | ig.build-exe.args.zig.-target.wa |
| ad3e0 | 73 6d 33 32 2d 77 61 73 69 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 | sm32-wasi</code></pre>........<p |
| ad400 | 72 65 3e 3c 63 6f 64 65 3e 24 20 77 61 73 6d 74 69 6d 65 20 61 72 67 73 2e 77 61 73 6d 20 31 32 | re><code>$.wasmtime.args.wasm.12 |
| ad420 | 33 20 68 65 6c 6c 6f 0a 30 3a 20 61 72 67 73 2e 77 61 73 6d 0a 31 3a 20 31 32 33 0a 32 3a 20 68 | 3.hello.0:.args.wasm.1:.123.2:.h |
| ad440 | 65 6c 6c 6f 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 41 20 6d 6f 72 | ello</code></pre>.......<p>A.mor |
| ad460 | 65 20 69 6e 74 65 72 65 73 74 69 6e 67 20 65 78 61 6d 70 6c 65 20 77 6f 75 6c 64 20 62 65 20 65 | e.interesting.example.would.be.e |
| ad480 | 78 74 72 61 63 74 69 6e 67 20 74 68 65 20 6c 69 73 74 20 6f 66 20 70 72 65 6f 70 65 6e 73 20 66 | xtracting.the.list.of.preopens.f |
| ad4a0 | 72 6f 6d 20 74 68 65 20 72 75 6e 74 69 6d 65 2e 0a 20 20 20 20 20 20 54 68 69 73 20 69 73 20 6e | rom.the.runtime........This.is.n |
| ad4c0 | 6f 77 20 73 75 70 70 6f 72 74 65 64 20 69 6e 20 74 68 65 20 73 74 61 6e 64 61 72 64 20 6c 69 62 | ow.supported.in.the.standard.lib |
| ad4e0 | 72 61 72 79 20 76 69 61 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 73 74 64 2e 66 | rary.via.<code.class="zig">std.f |
| ad500 | 73 2e 77 61 73 69 2e 50 72 65 6f 70 65 6e 4c 69 73 74 3c 2f 63 6f 64 65 3e 3a 3c 2f 70 3e 0a 20 | s.wasi.PreopenList</code>:</p>.. |
| ad520 | 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 70 72 65 6f 70 65 6e 73 2e 7a 69 | .....<p.class="file">preopens.zi |
| ad540 | 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 | g</p><pre><code.class="zig"><spa |
| ad560 | 6e 20 63 6c 61 73 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 |
| ad580 | 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 |
| ad5a0 | 6d 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 |
| ad5c0 | 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 3c 73 70 61 | r">"std"</span>);.<spa |
| ad5e0 | 6e 20 63 6c 61 73 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 72 | n.class="tok-kw">const</span>.Pr |
| ad600 | 65 6f 70 65 6e 4c 69 73 74 20 3d 20 73 74 64 2e 66 73 2e 77 61 73 69 2e 50 72 65 6f 70 65 6e 4c | eopenList.=.std.fs.wasi.PreopenL |
| ad620 | 69 73 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 | ist;..<span.class="tok-kw">pub</ |
| ad640 | 73 70 61 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 |
| ad660 | 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</ |
| ad680 | 73 70 61 6e 3e 28 29 20 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | span>().!<span.class="tok-type"> |
| ad6a0 | 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 |
| ad6c0 | 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 67 65 6e 65 72 61 6c 5f 70 75 72 70 6f 73 | ok-kw">var</span>.general_purpos |
| ad6e0 | 65 5f 61 6c 6c 6f 63 61 74 6f 72 20 3d 20 73 74 64 2e 68 65 61 70 2e 47 65 6e 65 72 61 6c 50 75 | e_allocator.=.std.heap.GeneralPu |
| ad700 | 72 70 6f 73 65 41 6c 6c 6f 63 61 74 6f 72 28 2e 7b 7d 29 7b 7d 3b 0a 20 20 20 20 3c 73 70 61 6e | rposeAllocator(.{}){};.....<span |
| ad720 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 67 70 61 | .class="tok-kw">const</span>.gpa |
| ad740 | 20 3d 20 26 61 6d 70 3b 67 65 6e 65 72 61 6c 5f 70 75 72 70 6f 73 65 5f 61 6c 6c 6f 63 61 74 6f | .=.&general_purpose_allocato |
| ad760 | 72 2e 61 6c 6c 6f 63 61 74 6f 72 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | r.allocator;......<span.class="t |
| ad780 | 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 70 72 65 6f 70 65 6e 73 20 3d 20 50 72 65 | ok-kw">var</span>.preopens.=.Pre |
| ad7a0 | 6f 70 65 6e 4c 69 73 74 2e 69 6e 69 74 28 67 70 61 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | openList.init(gpa);.....<span.cl |
| ad7c0 | 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 70 72 65 6f 70 65 | ass="tok-kw">defer</span>.preope |
| ad7e0 | 6e 73 2e 64 65 69 6e 69 74 28 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ns.deinit();......<span.class="t |
| ad800 | 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 70 72 65 6f 70 65 6e 73 2e 70 6f 70 75 6c | ok-kw">try</span>.preopens.popul |
| ad820 | 61 74 65 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 | ate();......<span.class="tok-kw" |
| ad840 | 3e 66 6f 72 3c 2f 73 70 61 6e 3e 20 28 70 72 65 6f 70 65 6e 73 2e 61 73 53 6c 69 63 65 28 29 29 | >for</span>.(preopens.asSlice()) |
| ad860 | 20 7c 70 72 65 6f 70 65 6e 2c 20 69 7c 20 7b 0a 20 20 20 20 20 20 20 20 73 74 64 2e 64 65 62 75 | .|preopen,.i|.{.........std.debu |
| ad880 | 67 2e 70 72 69 6e 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 | g.print(<span.class="tok-str">&q |
| ad8a0 | 75 6f 74 3b 7b 7d 3a 20 7b 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 7b 20 69 2c | uot;{}:.{}\n"</span>,..{.i, |
| ad8c0 | 20 70 72 65 6f 70 65 6e 20 7d 29 3b 0a 20 20 20 20 7d 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 | .preopen.});.....}.}</code></pre |
| ad8e0 | 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 | ><pre><code.class="shell">$.zig. |
| ad900 | 62 75 69 6c 64 2d 65 78 65 20 70 72 65 6f 70 65 6e 73 2e 7a 69 67 20 2d 74 61 72 67 65 74 20 77 | build-exe.preopens.zig.-target.w |
| ad920 | 61 73 6d 33 32 2d 77 61 73 69 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c | asm32-wasi</code></pre>........< |
| ad940 | 70 72 65 3e 3c 63 6f 64 65 3e 24 20 77 61 73 6d 74 69 6d 65 20 2d 2d 64 69 72 3d 2e 20 70 72 65 | pre><code>$.wasmtime.--dir=..pre |
| ad960 | 6f 70 65 6e 73 2e 77 61 73 6d 0a 30 3a 20 50 72 65 6f 70 65 6e 7b 20 2e 66 64 20 3d 20 33 2c 20 | opens.wasm.0:.Preopen{..fd.=.3,. |
| ad980 | 2e 74 79 70 65 20 3d 20 50 72 65 6f 70 65 6e 54 79 70 65 7b 20 2e 44 69 72 20 3d 20 27 2e 27 20 | .type.=.PreopenType{..Dir.=.'.'. |
| ad9a0 | 7d 20 7d 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 0a | }.}.</code></pre>............... |
| ad9c0 | 20 20 20 20 20 20 3c 68 31 20 69 64 3d 22 54 61 72 67 65 74 73 22 3e 3c 61 20 68 72 65 66 3d 22 | ......<h1.id="Targets"><a.href=" |
| ad9e0 | 23 74 6f 63 2d 54 61 72 67 65 74 73 22 3e 54 61 72 67 65 74 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 | #toc-Targets">Targets</a>.<a.cla |
| ada00 | 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 54 61 72 67 65 74 73 22 3e c2 a7 3c 2f 61 3e 3c | ss="hdr".href="#Targets">..</a>< |
| ada20 | 2f 68 31 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 5a 69 67 20 73 75 70 70 6f 72 | /h1>........<p>.......Zig.suppor |
| ada40 | 74 73 20 67 65 6e 65 72 61 74 69 6e 67 20 63 6f 64 65 20 66 6f 72 20 61 6c 6c 20 74 61 72 67 65 | ts.generating.code.for.all.targe |
| ada60 | 74 73 20 74 68 61 74 20 4c 4c 56 4d 20 73 75 70 70 6f 72 74 73 2e 20 48 65 72 65 20 69 73 0a 20 | ts.that.LLVM.supports..Here.is.. |
| ada80 | 20 20 20 20 20 77 68 61 74 20 69 74 20 6c 6f 6f 6b 73 20 6c 69 6b 65 20 74 6f 20 65 78 65 63 75 | .....what.it.looks.like.to.execu |
| adaa0 | 74 65 20 3c 63 6f 64 65 3e 7a 69 67 20 74 61 72 67 65 74 73 3c 2f 63 6f 64 65 3e 20 6f 6e 20 61 | te.<code>zig.targets</code>.on.a |
| adac0 | 20 4c 69 6e 75 78 20 78 38 36 5f 36 34 0a 20 20 20 20 20 20 63 6f 6d 70 75 74 65 72 3a 0a 20 20 | .Linux.x86_64.......computer:... |
| adae0 | 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= |
| adb00 | 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 61 72 67 65 74 73 0a 41 72 63 68 69 74 65 63 74 75 | "shell">$.zig.targets.Architectu |
| adb20 | 72 65 73 3a 0a 20 20 61 72 6d 0a 20 20 20 20 76 38 5f 34 61 0a 20 20 20 20 76 38 5f 33 61 0a 20 | res:...arm.....v8_4a.....v8_3a.. |
| adb40 | 20 20 20 76 38 5f 32 61 0a 20 20 20 20 76 38 5f 31 61 0a 20 20 20 20 76 38 0a 20 20 20 20 76 38 | ...v8_2a.....v8_1a.....v8.....v8 |
| adb60 | 72 0a 20 20 20 20 76 38 6d 5f 62 61 73 65 6c 69 6e 65 0a 20 20 20 20 76 38 6d 5f 6d 61 69 6e 6c | r.....v8m_baseline.....v8m_mainl |
| adb80 | 69 6e 65 0a 20 20 20 20 76 37 0a 20 20 20 20 76 37 65 6d 0a 20 20 20 20 76 37 6d 0a 20 20 20 20 | ine.....v7.....v7em.....v7m..... |
| adba0 | 76 37 73 0a 20 20 20 20 76 37 6b 0a 20 20 20 20 76 37 76 65 0a 20 20 20 20 76 36 0a 20 20 20 20 | v7s.....v7k.....v7ve.....v6..... |
| adbc0 | 76 36 6d 0a 20 20 20 20 76 36 6b 0a 20 20 20 20 76 36 74 32 0a 20 20 20 20 76 35 0a 20 20 20 20 | v6m.....v6k.....v6t2.....v5..... |
| adbe0 | 76 35 74 65 0a 20 20 20 20 76 34 74 0a 20 20 61 72 6d 65 62 0a 20 20 20 20 76 38 5f 34 61 0a 20 | v5te.....v4t...armeb.....v8_4a.. |
| adc00 | 20 20 20 76 38 5f 33 61 0a 20 20 20 20 76 38 5f 32 61 0a 20 20 20 20 76 38 5f 31 61 0a 20 20 20 | ...v8_3a.....v8_2a.....v8_1a.... |
| adc20 | 20 76 38 0a 20 20 20 20 76 38 72 0a 20 20 20 20 76 38 6d 5f 62 61 73 65 6c 69 6e 65 0a 20 20 20 | .v8.....v8r.....v8m_baseline.... |
| adc40 | 20 76 38 6d 5f 6d 61 69 6e 6c 69 6e 65 0a 20 20 20 20 76 37 0a 20 20 20 20 76 37 65 6d 0a 20 20 | .v8m_mainline.....v7.....v7em... |
| adc60 | 20 20 76 37 6d 0a 20 20 20 20 76 37 73 0a 20 20 20 20 76 37 6b 0a 20 20 20 20 76 37 76 65 0a 20 | ..v7m.....v7s.....v7k.....v7ve.. |
| adc80 | 20 20 20 76 36 0a 20 20 20 20 76 36 6d 0a 20 20 20 20 76 36 6b 0a 20 20 20 20 76 36 74 32 0a 20 | ...v6.....v6m.....v6k.....v6t2.. |
| adca0 | 20 20 20 76 35 0a 20 20 20 20 76 35 74 65 0a 20 20 20 20 76 34 74 0a 20 20 61 61 72 63 68 36 34 | ...v5.....v5te.....v4t...aarch64 |
| adcc0 | 0a 20 20 20 20 76 38 5f 34 61 0a 20 20 20 20 76 38 5f 33 61 0a 20 20 20 20 76 38 5f 32 61 0a 20 | .....v8_4a.....v8_3a.....v8_2a.. |
| adce0 | 20 20 20 76 38 5f 31 61 0a 20 20 20 20 76 38 0a 20 20 20 20 76 38 72 0a 20 20 20 20 76 38 6d 5f | ...v8_1a.....v8.....v8r.....v8m_ |
| add00 | 62 61 73 65 6c 69 6e 65 0a 20 20 20 20 76 38 6d 5f 6d 61 69 6e 6c 69 6e 65 0a 20 20 61 61 72 63 | baseline.....v8m_mainline...aarc |
| add20 | 68 36 34 5f 62 65 0a 20 20 20 20 76 38 5f 34 61 0a 20 20 20 20 76 38 5f 33 61 0a 20 20 20 20 76 | h64_be.....v8_4a.....v8_3a.....v |
| add40 | 38 5f 32 61 0a 20 20 20 20 76 38 5f 31 61 0a 20 20 20 20 76 38 0a 20 20 20 20 76 38 72 0a 20 20 | 8_2a.....v8_1a.....v8.....v8r... |
| add60 | 20 20 76 38 6d 5f 62 61 73 65 6c 69 6e 65 0a 20 20 20 20 76 38 6d 5f 6d 61 69 6e 6c 69 6e 65 0a | ..v8m_baseline.....v8m_mainline. |
| add80 | 20 20 61 76 72 0a 20 20 62 70 66 65 6c 0a 20 20 62 70 66 65 62 0a 20 20 68 65 78 61 67 6f 6e 0a | ..avr...bpfel...bpfeb...hexagon. |
| adda0 | 20 20 6d 69 70 73 0a 20 20 6d 69 70 73 65 6c 0a 20 20 6d 69 70 73 36 34 0a 20 20 6d 69 70 73 36 | ..mips...mipsel...mips64...mips6 |
| addc0 | 34 65 6c 0a 20 20 6d 73 70 34 33 30 0a 20 20 70 6f 77 65 72 70 63 0a 20 20 70 6f 77 65 72 70 63 | 4el...msp430...powerpc...powerpc |
| adde0 | 36 34 0a 20 20 70 6f 77 65 72 70 63 36 34 6c 65 0a 20 20 72 36 30 30 0a 20 20 61 6d 64 67 63 6e | 64...powerpc64le...r600...amdgcn |
| ade00 | 0a 20 20 72 69 73 63 76 33 32 0a 20 20 72 69 73 63 76 36 34 0a 20 20 73 70 61 72 63 0a 20 20 73 | ...riscv32...riscv64...sparc...s |
| ade20 | 70 61 72 63 76 39 0a 20 20 73 70 61 72 63 65 6c 0a 20 20 73 33 39 30 78 0a 20 20 74 68 75 6d 62 | parcv9...sparcel...s390x...thumb |
| ade40 | 0a 20 20 20 20 76 38 5f 34 61 0a 20 20 20 20 76 38 5f 33 61 0a 20 20 20 20 76 38 5f 32 61 0a 20 | .....v8_4a.....v8_3a.....v8_2a.. |
| ade60 | 20 20 20 76 38 5f 31 61 0a 20 20 20 20 76 38 0a 20 20 20 20 76 38 72 0a 20 20 20 20 76 38 6d 5f | ...v8_1a.....v8.....v8r.....v8m_ |
| ade80 | 62 61 73 65 6c 69 6e 65 0a 20 20 20 20 76 38 6d 5f 6d 61 69 6e 6c 69 6e 65 0a 20 20 20 20 76 37 | baseline.....v8m_mainline.....v7 |
| adea0 | 0a 20 20 20 20 76 37 65 6d 0a 20 20 20 20 76 37 6d 0a 20 20 20 20 76 37 73 0a 20 20 20 20 76 37 | .....v7em.....v7m.....v7s.....v7 |
| adec0 | 6b 0a 20 20 20 20 76 37 76 65 0a 20 20 20 20 76 36 0a 20 20 20 20 76 36 6d 0a 20 20 20 20 76 36 | k.....v7ve.....v6.....v6m.....v6 |
| adee0 | 6b 0a 20 20 20 20 76 36 74 32 0a 20 20 20 20 76 35 0a 20 20 20 20 76 35 74 65 0a 20 20 20 20 76 | k.....v6t2.....v5.....v5te.....v |
| adf00 | 34 74 0a 20 20 74 68 75 6d 62 65 62 0a 20 20 20 20 76 38 5f 34 61 0a 20 20 20 20 76 38 5f 33 61 | 4t...thumbeb.....v8_4a.....v8_3a |
| adf20 | 0a 20 20 20 20 76 38 5f 32 61 0a 20 20 20 20 76 38 5f 31 61 0a 20 20 20 20 76 38 0a 20 20 20 20 | .....v8_2a.....v8_1a.....v8..... |
| adf40 | 76 38 72 0a 20 20 20 20 76 38 6d 5f 62 61 73 65 6c 69 6e 65 0a 20 20 20 20 76 38 6d 5f 6d 61 69 | v8r.....v8m_baseline.....v8m_mai |
| adf60 | 6e 6c 69 6e 65 0a 20 20 20 20 76 37 0a 20 20 20 20 76 37 65 6d 0a 20 20 20 20 76 37 6d 0a 20 20 | nline.....v7.....v7em.....v7m... |
| adf80 | 20 20 76 37 73 0a 20 20 20 20 76 37 6b 0a 20 20 20 20 76 37 76 65 0a 20 20 20 20 76 36 0a 20 20 | ..v7s.....v7k.....v7ve.....v6... |
| adfa0 | 20 20 76 36 6d 0a 20 20 20 20 76 36 6b 0a 20 20 20 20 76 36 74 32 0a 20 20 20 20 76 35 0a 20 20 | ..v6m.....v6k.....v6t2.....v5... |
| adfc0 | 20 20 76 35 74 65 0a 20 20 20 20 76 34 74 0a 20 20 69 33 38 36 0a 20 20 78 38 36 5f 36 34 20 28 | ..v5te.....v4t...i386...x86_64.( |
| adfe0 | 6e 61 74 69 76 65 29 0a 20 20 78 63 6f 72 65 0a 20 20 6e 76 70 74 78 0a 20 20 6e 76 70 74 78 36 | native)...xcore...nvptx...nvptx6 |
| ae000 | 34 0a 20 20 6c 61 6e 61 69 0a 20 20 77 61 73 6d 33 32 0a 20 20 77 61 73 6d 36 34 0a 0a 4f 70 65 | 4...lanai...wasm32...wasm64..Ope |
| ae020 | 72 61 74 69 6e 67 20 53 79 73 74 65 6d 73 3a 0a 20 20 66 72 65 65 73 74 61 6e 64 69 6e 67 0a 20 | rating.Systems:...freestanding.. |
| ae040 | 20 61 6e 61 6e 61 73 0a 20 20 63 6c 6f 75 64 61 62 69 0a 20 20 64 72 61 67 6f 6e 66 6c 79 0a 20 | .ananas...cloudabi...dragonfly.. |
| ae060 | 20 66 72 65 65 62 73 64 0a 20 20 66 75 63 68 73 69 61 0a 20 20 69 6f 73 0a 20 20 6b 66 72 65 65 | .freebsd...fuchsia...ios...kfree |
| ae080 | 62 73 64 0a 20 20 6c 69 6e 75 78 20 28 6e 61 74 69 76 65 29 0a 20 20 6c 76 32 0a 20 20 6d 61 63 | bsd...linux.(native)...lv2...mac |
| ae0a0 | 6f 73 0a 20 20 6e 65 74 62 73 64 0a 20 20 6f 70 65 6e 62 73 64 0a 20 20 73 6f 6c 61 72 69 73 0a | os...netbsd...openbsd...solaris. |
| ae0c0 | 20 20 77 69 6e 64 6f 77 73 0a 20 20 68 61 69 6b 75 0a 20 20 6d 69 6e 69 78 0a 20 20 72 74 65 6d | ..windows...haiku...minix...rtem |
| ae0e0 | 73 0a 20 20 6e 61 63 6c 0a 20 20 63 6e 6b 0a 20 20 61 69 78 0a 20 20 63 75 64 61 0a 20 20 6e 76 | s...nacl...cnk...aix...cuda...nv |
| ae100 | 63 6c 0a 20 20 61 6d 64 68 73 61 0a 20 20 70 73 34 0a 20 20 65 6c 66 69 61 6d 63 75 0a 20 20 74 | cl...amdhsa...ps4...elfiamcu...t |
| ae120 | 76 6f 73 0a 20 20 77 61 74 63 68 6f 73 0a 20 20 6d 65 73 61 33 64 0a 20 20 63 6f 6e 74 69 6b 69 | vos...watchos...mesa3d...contiki |
| ae140 | 0a 20 20 61 6d 64 70 61 6c 0a 20 20 7a 65 6e 0a 20 20 75 65 66 69 0a 0a 43 20 41 42 49 73 3a 0a | ...amdpal...zen...uefi..C.ABIs:. |
| ae160 | 20 20 6e 6f 6e 65 0a 20 20 67 6e 75 20 28 6e 61 74 69 76 65 29 0a 20 20 67 6e 75 61 62 69 6e 33 | ..none...gnu.(native)...gnuabin3 |
| ae180 | 32 0a 20 20 67 6e 75 61 62 69 36 34 0a 20 20 67 6e 75 65 61 62 69 0a 20 20 67 6e 75 65 61 62 69 | 2...gnuabi64...gnueabi...gnueabi |
| ae1a0 | 68 66 0a 20 20 67 6e 75 78 33 32 0a 20 20 63 6f 64 65 31 36 0a 20 20 65 61 62 69 0a 20 20 65 61 | hf...gnux32...code16...eabi...ea |
| ae1c0 | 62 69 68 66 0a 20 20 61 6e 64 72 6f 69 64 0a 20 20 6d 75 73 6c 0a 20 20 6d 75 73 6c 65 61 62 69 | bihf...android...musl...musleabi |
| ae1e0 | 0a 20 20 6d 75 73 6c 65 61 62 69 68 66 0a 20 20 6d 73 76 63 0a 20 20 69 74 61 6e 69 75 6d 0a 20 | ...musleabihf...msvc...itanium.. |
| ae200 | 20 63 79 67 6e 75 73 0a 20 20 63 6f 72 65 63 6c 72 0a 20 20 73 69 6d 75 6c 61 74 6f 72 0a 0a 41 | .cygnus...coreclr...simulator..A |
| ae220 | 76 61 69 6c 61 62 6c 65 20 6c 69 62 63 73 3a 0a 20 20 61 61 72 63 68 36 34 5f 62 65 2d 6c 69 6e | vailable.libcs:...aarch64_be-lin |
| ae240 | 75 78 2d 67 6e 75 0a 20 20 61 61 72 63 68 36 34 5f 62 65 2d 6c 69 6e 75 78 2d 6d 75 73 6c 0a 20 | ux-gnu...aarch64_be-linux-musl.. |
| ae260 | 20 61 61 72 63 68 36 34 2d 6c 69 6e 75 78 2d 67 6e 75 0a 20 20 61 61 72 63 68 36 34 2d 6c 69 6e | .aarch64-linux-gnu...aarch64-lin |
| ae280 | 75 78 2d 6d 75 73 6c 65 61 62 69 0a 20 20 61 72 6d 65 62 2d 6c 69 6e 75 78 2d 67 6e 75 65 61 62 | ux-musleabi...armeb-linux-gnueab |
| ae2a0 | 69 0a 20 20 61 72 6d 65 62 2d 6c 69 6e 75 78 2d 67 6e 75 65 61 62 69 68 66 0a 20 20 61 72 6d 65 | i...armeb-linux-gnueabihf...arme |
| ae2c0 | 62 2d 6c 69 6e 75 78 2d 6d 75 73 6c 65 61 62 69 0a 20 20 61 72 6d 65 62 2d 6c 69 6e 75 78 2d 6d | b-linux-musleabi...armeb-linux-m |
| ae2e0 | 75 73 6c 65 61 62 69 68 66 0a 20 20 61 72 6d 2d 6c 69 6e 75 78 2d 67 6e 75 65 61 62 69 0a 20 20 | usleabihf...arm-linux-gnueabi... |
| ae300 | 61 72 6d 2d 6c 69 6e 75 78 2d 67 6e 75 65 61 62 69 68 66 0a 20 20 61 72 6d 2d 6c 69 6e 75 78 2d | arm-linux-gnueabihf...arm-linux- |
| ae320 | 6d 75 73 6c 65 61 62 69 0a 20 20 61 72 6d 2d 6c 69 6e 75 78 2d 6d 75 73 6c 65 61 62 69 68 66 0a | musleabi...arm-linux-musleabihf. |
| ae340 | 20 20 69 33 38 36 2d 6c 69 6e 75 78 2d 67 6e 75 0a 20 20 69 33 38 36 2d 6c 69 6e 75 78 2d 6d 75 | ..i386-linux-gnu...i386-linux-mu |
| ae360 | 73 6c 0a 20 20 6d 69 70 73 36 34 65 6c 2d 6c 69 6e 75 78 2d 67 6e 75 61 62 69 36 34 0a 20 20 6d | sl...mips64el-linux-gnuabi64...m |
| ae380 | 69 70 73 36 34 65 6c 2d 6c 69 6e 75 78 2d 67 6e 75 61 62 69 6e 33 32 0a 20 20 6d 69 70 73 36 34 | ips64el-linux-gnuabin32...mips64 |
| ae3a0 | 65 6c 2d 6c 69 6e 75 78 2d 6d 75 73 6c 0a 20 20 6d 69 70 73 36 34 2d 6c 69 6e 75 78 2d 67 6e 75 | el-linux-musl...mips64-linux-gnu |
| ae3c0 | 61 62 69 36 34 0a 20 20 6d 69 70 73 36 34 2d 6c 69 6e 75 78 2d 67 6e 75 61 62 69 6e 33 32 0a 20 | abi64...mips64-linux-gnuabin32.. |
| ae3e0 | 20 6d 69 70 73 36 34 2d 6c 69 6e 75 78 2d 6d 75 73 6c 0a 20 20 6d 69 70 73 65 6c 2d 6c 69 6e 75 | .mips64-linux-musl...mipsel-linu |
| ae400 | 78 2d 67 6e 75 0a 20 20 6d 69 70 73 65 6c 2d 6c 69 6e 75 78 2d 6d 75 73 6c 0a 20 20 6d 69 70 73 | x-gnu...mipsel-linux-musl...mips |
| ae420 | 2d 6c 69 6e 75 78 2d 67 6e 75 0a 20 20 6d 69 70 73 2d 6c 69 6e 75 78 2d 6d 75 73 6c 0a 20 20 6e | -linux-gnu...mips-linux-musl...n |
| ae440 | 69 6f 73 32 2d 6c 69 6e 75 78 2d 67 6e 75 0a 20 20 70 6f 77 65 72 70 63 36 34 6c 65 2d 6c 69 6e | ios2-linux-gnu...powerpc64le-lin |
| ae460 | 75 78 2d 67 6e 75 0a 20 20 70 6f 77 65 72 70 63 36 34 6c 65 2d 6c 69 6e 75 78 2d 6d 75 73 6c 0a | ux-gnu...powerpc64le-linux-musl. |
| ae480 | 20 20 70 6f 77 65 72 70 63 36 34 2d 6c 69 6e 75 78 2d 67 6e 75 0a 20 20 70 6f 77 65 72 70 63 36 | ..powerpc64-linux-gnu...powerpc6 |
| ae4a0 | 34 2d 6c 69 6e 75 78 2d 6d 75 73 6c 0a 20 20 70 6f 77 65 72 70 63 2d 6c 69 6e 75 78 2d 67 6e 75 | 4-linux-musl...powerpc-linux-gnu |
| ae4c0 | 0a 20 20 70 6f 77 65 72 70 63 2d 6c 69 6e 75 78 2d 6d 75 73 6c 0a 20 20 72 69 73 63 76 33 32 2d | ...powerpc-linux-musl...riscv32- |
| ae4e0 | 6c 69 6e 75 78 2d 6d 75 73 6c 0a 20 20 72 69 73 63 76 36 34 2d 6c 69 6e 75 78 2d 67 6e 75 0a 20 | linux-musl...riscv64-linux-gnu.. |
| ae500 | 20 72 69 73 63 76 36 34 2d 6c 69 6e 75 78 2d 6d 75 73 6c 0a 20 20 73 33 39 30 78 2d 6c 69 6e 75 | .riscv64-linux-musl...s390x-linu |
| ae520 | 78 2d 67 6e 75 0a 20 20 73 33 39 30 78 2d 6c 69 6e 75 78 2d 6d 75 73 6c 0a 20 20 73 70 61 72 63 | x-gnu...s390x-linux-musl...sparc |
| ae540 | 2d 6c 69 6e 75 78 2d 67 6e 75 0a 20 20 73 70 61 72 63 76 39 2d 6c 69 6e 75 78 2d 67 6e 75 0a 20 | -linux-gnu...sparcv9-linux-gnu.. |
| ae560 | 20 77 61 73 6d 33 32 2d 66 72 65 65 73 74 61 6e 64 69 6e 67 2d 6d 75 73 6c 0a 20 20 78 38 36 5f | .wasm32-freestanding-musl...x86_ |
| ae580 | 36 34 2d 6c 69 6e 75 78 2d 67 6e 75 0a 20 20 78 38 36 5f 36 34 2d 6c 69 6e 75 78 2d 67 6e 75 78 | 64-linux-gnu...x86_64-linux-gnux |
| ae5a0 | 33 32 0a 20 20 78 38 36 5f 36 34 2d 6c 69 6e 75 78 2d 6d 75 73 6c 3c 2f 63 6f 64 65 3e 3c 2f 70 | 32...x86_64-linux-musl</code></p |
| ae5c0 | 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 20 5a 69 67 20 53 74 61 6e | re>.......<p>.......The.Zig.Stan |
| ae5e0 | 64 61 72 64 20 4c 69 62 72 61 72 79 20 28 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e | dard.Library.(<code.class="zig"> |
| ae600 | 3c 73 70 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 |
| ae620 | 74 3c 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">& |
| ae640 | 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3c 2f 63 6f 64 65 3e 29 20 68 | quot;std"</span>)</code>).h |
| ae660 | 61 73 20 61 72 63 68 69 74 65 63 74 75 72 65 2c 20 65 6e 76 69 72 6f 6e 6d 65 6e 74 2c 20 61 6e | as.architecture,.environment,.an |
| ae680 | 64 20 6f 70 65 72 61 74 69 6e 67 20 73 79 73 74 65 6d 0a 20 20 20 20 20 20 61 62 73 74 72 61 63 | d.operating.system.......abstrac |
| ae6a0 | 74 69 6f 6e 73 2c 20 61 6e 64 20 74 68 75 73 20 74 61 6b 65 73 20 61 64 64 69 74 69 6f 6e 61 6c | tions,.and.thus.takes.additional |
| ae6c0 | 20 77 6f 72 6b 20 74 6f 20 73 75 70 70 6f 72 74 20 6d 6f 72 65 20 70 6c 61 74 66 6f 72 6d 73 2e | .work.to.support.more.platforms. |
| ae6e0 | 0a 20 20 20 20 20 20 4e 6f 74 20 61 6c 6c 20 73 74 61 6e 64 61 72 64 20 6c 69 62 72 61 72 79 20 | .......Not.all.standard.library. |
| ae700 | 63 6f 64 65 20 72 65 71 75 69 72 65 73 20 6f 70 65 72 61 74 69 6e 67 20 73 79 73 74 65 6d 20 61 | code.requires.operating.system.a |
| ae720 | 62 73 74 72 61 63 74 69 6f 6e 73 2c 20 68 6f 77 65 76 65 72 2c 0a 20 20 20 20 20 20 73 6f 20 74 | bstractions,.however,.......so.t |
| ae740 | 68 69 6e 67 73 20 73 75 63 68 20 61 73 20 67 65 6e 65 72 69 63 20 64 61 74 61 20 73 74 72 75 63 | hings.such.as.generic.data.struc |
| ae760 | 74 75 72 65 73 20 77 6f 72 6b 20 6f 6e 20 61 6c 6c 20 61 62 6f 76 65 20 70 6c 61 74 66 6f 72 6d | tures.work.on.all.above.platform |
| ae780 | 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 54 68 65 20 63 75 72 72 65 | s........</p>.......<p>The.curre |
| ae7a0 | 6e 74 20 6c 69 73 74 20 6f 66 20 74 61 72 67 65 74 73 20 73 75 70 70 6f 72 74 65 64 20 62 79 20 | nt.list.of.targets.supported.by. |
| ae7c0 | 74 68 65 20 5a 69 67 20 53 74 61 6e 64 61 72 64 20 4c 69 62 72 61 72 79 20 69 73 3a 3c 2f 70 3e | the.Zig.Standard.Library.is:</p> |
| ae7e0 | 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 3c 6c 69 3e 4c 69 6e 75 78 20 78 38 36 5f | .......<ul>.......<li>Linux.x86_ |
| ae800 | 36 34 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 6c 69 3e 57 69 6e 64 6f 77 73 20 78 38 36 5f 36 34 | 64</li>.......<li>Windows.x86_64 |
| ae820 | 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 6c 69 3e 6d 61 63 4f 53 20 78 38 36 5f 36 34 3c 2f 6c 69 | </li>.......<li>macOS.x86_64</li |
| ae840 | 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 31 20 69 | >.......</ul>..............<h1.i |
| ae860 | 64 3d 22 53 74 79 6c 65 2d 47 75 69 64 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 53 74 | d="Style-Guide"><a.href="#toc-St |
| ae880 | 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 20 3c 61 20 63 6c | yle-Guide">Style.Guide</a>.<a.cl |
| ae8a0 | 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 53 74 79 6c 65 2d 47 75 69 64 65 22 3e c2 a7 | ass="hdr".href="#Style-Guide">.. |
| ae8c0 | 3c 2f 61 3e 3c 2f 68 31 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 54 68 65 73 65 20 63 6f 64 69 6e | </a></h1>........<p>.These.codin |
| ae8e0 | 67 20 63 6f 6e 76 65 6e 74 69 6f 6e 73 20 61 72 65 20 6e 6f 74 20 65 6e 66 6f 72 63 65 64 20 62 | g.conventions.are.not.enforced.b |
| ae900 | 79 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 2c 20 62 75 74 20 74 68 65 79 20 61 72 65 20 73 68 69 | y.the.compiler,.but.they.are.shi |
| ae920 | 70 70 65 64 20 69 6e 0a 74 68 69 73 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 20 61 6c 6f 6e 67 | pped.in.this.documentation.along |
| ae940 | 20 77 69 74 68 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 20 69 6e 20 6f 72 64 65 72 20 74 6f 20 70 | .with.the.compiler.in.order.to.p |
| ae960 | 72 6f 76 69 64 65 20 61 20 70 6f 69 6e 74 20 6f 66 0a 72 65 66 65 72 65 6e 63 65 2c 20 73 68 6f | rovide.a.point.of.reference,.sho |
| ae980 | 75 6c 64 20 61 6e 79 6f 6e 65 20 77 69 73 68 20 74 6f 20 70 6f 69 6e 74 20 74 6f 20 61 6e 20 61 | uld.anyone.wish.to.point.to.an.a |
| ae9a0 | 75 74 68 6f 72 69 74 79 20 6f 6e 20 61 67 72 65 65 64 20 75 70 6f 6e 20 5a 69 67 0a 63 6f 64 69 | uthority.on.agreed.upon.Zig.codi |
| ae9c0 | 6e 67 20 73 74 79 6c 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 68 32 20 69 | ng.style........</p>.......<h2.i |
| ae9e0 | 64 3d 22 57 68 69 74 65 73 70 61 63 65 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 57 68 69 | d="Whitespace"><a.href="#toc-Whi |
| aea00 | 74 65 73 70 61 63 65 22 3e 57 68 69 74 65 73 70 61 63 65 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 | tespace">Whitespace</a>.<a.class |
| aea20 | 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 57 68 69 74 65 73 70 61 63 65 22 3e c2 a7 3c 2f 61 3e | ="hdr".href="#Whitespace">..</a> |
| aea40 | 3c 2f 68 32 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 | </h2>........<ul>.........<li>.. |
| aea60 | 20 20 20 20 20 20 20 20 20 34 20 73 70 61 63 65 20 69 6e 64 65 6e 74 61 74 69 6f 6e 0a 20 20 20 | .........4.space.indentation.... |
| aea80 | 20 20 20 20 20 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 0a 20 20 20 20 20 20 20 20 | .....</li>.........<li>......... |
| aeaa0 | 20 20 4f 70 65 6e 20 62 72 61 63 65 73 20 6f 6e 20 73 61 6d 65 20 6c 69 6e 65 2c 20 75 6e 6c 65 | ..Open.braces.on.same.line,.unle |
| aeac0 | 73 73 20 79 6f 75 20 6e 65 65 64 20 74 6f 20 77 72 61 70 2e 0a 20 20 20 20 20 20 20 20 3c 2f 6c | ss.you.need.to.wrap..........</l |
| aeae0 | 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 49 66 20 61 20 6c 69 73 74 20 6f 66 20 74 68 69 6e | i>.........<li>If.a.list.of.thin |
| aeb00 | 67 73 20 69 73 20 6c 6f 6e 67 65 72 20 74 68 61 6e 20 32 2c 20 70 75 74 20 65 61 63 68 20 69 74 | gs.is.longer.than.2,.put.each.it |
| aeb20 | 65 6d 20 6f 6e 20 69 74 73 20 6f 77 6e 20 6c 69 6e 65 20 61 6e 64 0a 20 20 20 20 20 20 20 20 20 | em.on.its.own.line.and.......... |
| aeb40 | 20 65 78 65 72 63 69 73 65 20 74 68 65 20 61 62 69 6c 69 74 79 20 74 6f 20 70 75 74 20 61 6e 20 | .exercise.the.ability.to.put.an. |
| aeb60 | 65 78 74 72 61 20 63 6f 6d 6d 61 20 61 74 20 74 68 65 20 65 6e 64 2e 0a 20 20 20 20 20 20 20 20 | extra.comma.at.the.end.......... |
| aeb80 | 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 4c 69 6e | </li>.........<li>...........Lin |
| aeba0 | 65 20 6c 65 6e 67 74 68 3a 20 61 69 6d 20 66 6f 72 20 31 30 30 3b 20 75 73 65 20 63 6f 6d 6d 6f | e.length:.aim.for.100;.use.commo |
| aebc0 | 6e 20 73 65 6e 73 65 2e 0a 20 20 20 20 20 20 20 20 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 | n.sense..........</li>.......</u |
| aebe0 | 6c 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 4e 61 6d 65 73 22 3e 3c | l>..............<h2.id="Names">< |
| aec00 | 61 20 68 72 65 66 3d 22 23 74 6f 63 2d 4e 61 6d 65 73 22 3e 4e 61 6d 65 73 3c 2f 61 3e 20 3c 61 | a.href="#toc-Names">Names</a>.<a |
| aec20 | 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 4e 61 6d 65 73 22 3e c2 a7 3c 2f 61 | .class="hdr".href="#Names">..</a |
| aec40 | 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 52 6f 75 67 68 6c 79 20 | ></h2>........<p>.......Roughly. |
| aec60 | 73 70 65 61 6b 69 6e 67 3a 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 63 61 6d 65 | speaking:.<code.class="zig">came |
| aec80 | 6c 43 61 73 65 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 20 | lCaseFunctionName</code>,.<code. |
| aeca0 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 54 69 74 6c 65 43 61 73 65 54 79 70 65 4e 61 6d 65 3c 2f 63 | class="zig">TitleCaseTypeName</c |
| aecc0 | 6f 64 65 3e 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d | ode>,...............<code.class= |
| aece0 | 22 7a 69 67 22 3e 73 6e 61 6b 65 5f 63 61 73 65 5f 76 61 72 69 61 62 6c 65 5f 6e 61 6d 65 3c 2f | "zig">snake_case_variable_name</ |
| aed00 | 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 3c 2f 70 | code>..More.precisely:.......</p |
| aed20 | 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 20 20 20 | >.......<ul>.........<li>....... |
| aed40 | 20 20 20 20 20 20 49 66 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 78 3c 2f 63 6f | ......If.<code.class="zig">x</co |
| aed60 | 64 65 3e 20 69 73 20 61 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e | de>.is.a.<code.class="zig"><span |
| aed80 | 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 |
| aeda0 | 6f 64 65 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 74 68 65 6e 20 3c 63 6f 64 65 20 63 6c 61 73 | ode>.............then.<code.clas |
| aedc0 | 73 3d 22 7a 69 67 22 3e 78 3c 2f 63 6f 64 65 3e 20 73 68 6f 75 6c 64 20 62 65 20 3c 63 6f 64 65 | s="zig">x</code>.should.be.<code |
| aede0 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 54 69 74 6c 65 43 61 73 65 3c 2f 63 6f 64 65 3e 2c 20 75 | .class="zig">TitleCase</code>,.u |
| aee00 | 6e 6c 65 73 73 20 69 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 73 20 61 20 3c 63 6f 64 65 20 | nless.it.............is.a.<code. |
| aee20 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | class="zig"><span.class="tok-kw" |
| aee40 | 3e 73 74 72 75 63 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 77 69 74 68 20 30 20 66 69 65 | >struct</span></code>.with.0.fie |
| aee60 | 6c 64 73 20 61 6e 64 20 69 73 20 6e 65 76 65 72 20 6d 65 61 6e 74 20 74 6f 20 62 65 20 69 6e 73 | lds.and.is.never.meant.to.be.ins |
| aee80 | 74 61 6e 74 69 61 74 65 64 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 6e 20 77 68 69 63 68 20 | tantiated,.............in.which. |
| aeea0 | 63 61 73 65 20 69 74 20 69 73 20 63 6f 6e 73 69 64 65 72 65 64 20 74 6f 20 62 65 20 61 20 22 6e | case.it.is.considered.to.be.a."n |
| aeec0 | 61 6d 65 73 70 61 63 65 22 20 61 6e 64 20 75 73 65 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | amespace".and.uses.<code.class=" |
| aeee0 | 7a 69 67 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 20 20 | zig">snake_case</code>.......... |
| aef00 | 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 49 | </li>.........<li>.............I |
| aef20 | 66 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 78 3c 2f 63 6f 64 65 3e 20 69 73 20 | f.<code.class="zig">x</code>.is. |
| aef40 | 63 61 6c 6c 61 62 6c 65 2c 20 61 6e 64 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e | callable,.and.<code.class="zig"> |
| aef60 | 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 20 20 20 | x</code>'s.return.type.is....... |
| aef80 | 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c | ......<code.class="zig"><span.cl |
| aefa0 | 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 |
| aefc0 | 3e 2c 20 74 68 65 6e 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 78 3c 2f 63 6f 64 | >,.then.<code.class="zig">x</cod |
| aefe0 | 65 3e 20 73 68 6f 75 6c 64 20 62 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 54 | e>.should.be.<code.class="zig">T |
| af000 | 69 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 | itleCase</code>..........</li>.. |
| af020 | 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 64 65 | .......<li>.............If.<code |
| af040 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 78 3c 2f 63 6f 64 65 3e 20 69 73 20 6f 74 68 65 72 77 69 | .class="zig">x</code>.is.otherwi |
| af060 | 73 65 20 63 61 6c 6c 61 62 6c 65 2c 20 74 68 65 6e 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a | se.callable,.then.<code.class="z |
| af080 | 69 67 22 3e 78 3c 2f 63 6f 64 65 3e 20 73 68 6f 75 6c 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 | ig">x</code>.should............. |
| af0a0 | 62 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 63 61 6d 65 6c 43 61 73 65 3c 2f | be.<code.class="zig">camelCase</ |
| af0c0 | 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 20 20 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 | code>..........</li>.........<li |
| af0e0 | 3e 0a 20 20 20 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 20 63 | >.............Otherwise,.<code.c |
| af100 | 6c 61 73 73 3d 22 7a 69 67 22 3e 78 3c 2f 63 6f 64 65 3e 20 73 68 6f 75 6c 64 20 62 65 20 3c 63 | lass="zig">x</code>.should.be.<c |
| af120 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 73 6e 61 6b 65 5f 63 61 73 65 3c 2f 63 6f 64 65 | ode.class="zig">snake_case</code |
| af140 | 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 20 20 20 | >..........</li>.......</ul>.... |
| af160 | 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 6c 69 73 | ...<p>.......Acronyms,.initialis |
| af180 | 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 72 20 77 | ms,.proper.nouns,.or.any.other.w |
| af1a0 | 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 20 20 20 | ord.that.has.capitalization..... |
| af1c0 | 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 65 20 73 | ..rules.in.written.English.are.s |
| af1e0 | 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 6a 75 73 | ubject.to.naming.conventions.jus |
| af200 | 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 45 76 65 | t.like.any.other.......word..Eve |
| af220 | 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 74 74 65 | n.acronyms.that.are.only.2.lette |
| af240 | 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 20 20 20 | rs.long.are.subject.to.these.... |
| af260 | 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 20 20 20 | ...conventions........</p>...... |
| af280 | 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 74 6f 20 | .<p>.......File.names.fall.into. |
| af2a0 | 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 65 73 70 | two.categories:.types.and.namesp |
| af2c0 | 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 69 63 69 | aces..If.the.file.......(implici |
| af2e0 | 74 79 20 61 20 73 74 72 75 63 74 29 20 68 61 73 20 74 6f 70 20 6c 65 76 65 6c 20 66 69 65 6c 64 | ty.a.struct).has.top.level.field |
| af300 | 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 6e 79 0a 20 | s,.it.should.be.named.like.any.. |
| af320 | 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 73 20 75 73 | .....other.struct.with.fields.us |
| af340 | 69 6e 67 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 54 69 74 6c 65 43 61 73 65 3c | ing.<code.class="zig">TitleCase< |
| af360 | 2f 63 6f 64 65 3e 2e 20 4f 74 68 65 72 77 69 73 65 2c 0a 20 20 20 20 20 20 69 74 20 73 68 6f 75 | /code>..Otherwise,.......it.shou |
| af380 | 6c 64 20 75 73 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 73 6e 61 6b 65 5f 63 | ld.use.<code.class="zig">snake_c |
| af3a0 | 61 73 65 3c 2f 63 6f 64 65 3e 2e 20 44 69 72 65 63 74 6f 72 79 20 6e 61 6d 65 73 20 73 68 6f 75 | ase</code>..Directory.names.shou |
| af3c0 | 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 7a 69 67 22 3e 73 6e | ld.be.......<code.class="zig">sn |
| af3e0 | 61 6b 65 5f 63 61 73 65 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 | ake_case</code>........</p>..... |
| af400 | 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 73 65 20 61 72 65 20 67 65 6e 65 72 61 6c 20 72 75 | ..<p>.......These.are.general.ru |
| af420 | 6c 65 73 20 6f 66 20 74 68 75 6d 62 3b 20 69 66 20 69 74 20 6d 61 6b 65 73 20 73 65 6e 73 65 20 | les.of.thumb;.if.it.makes.sense. |
| af440 | 74 6f 20 64 6f 20 73 6f 6d 65 74 68 69 6e 67 20 64 69 66 66 65 72 65 6e 74 2c 0a 20 20 20 20 20 | to.do.something.different,...... |
| af460 | 20 64 6f 20 77 68 61 74 20 6d 61 6b 65 73 20 73 65 6e 73 65 2e 20 46 6f 72 20 65 78 61 6d 70 6c | .do.what.makes.sense..For.exampl |
| af480 | 65 2c 20 69 66 20 74 68 65 72 65 20 69 73 20 61 6e 20 65 73 74 61 62 6c 69 73 68 65 64 20 63 6f | e,.if.there.is.an.established.co |
| af4a0 | 6e 76 65 6e 74 69 6f 6e 20 73 75 63 68 20 61 73 0a 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 | nvention.such.as.......<code.cla |
| af4c0 | 73 73 3d 22 7a 69 67 22 3e 45 4e 4f 45 4e 54 3c 2f 63 6f 64 65 3e 2c 20 66 6f 6c 6c 6f 77 20 74 | ss="zig">ENOENT</code>,.follow.t |
| af4e0 | 68 65 20 65 73 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 | he.established.convention....... |
| af500 | 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 45 78 61 6d 70 | .</p>..............<h2.id="Examp |
| af520 | 6c 65 73 22 3e 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 | les"><a.href="#toc-Examples">Exa |
| af540 | 6d 70 6c 65 73 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 66 3d 22 23 | mples</a>.<a.class="hdr".href="# |
| af560 | 45 78 61 6d 70 6c 65 73 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 | Examples">..</a></h2>........<pr |
| af580 | 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | e><code.class="zig"><span.class= |
| af5a0 | 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6e 61 6d 65 73 70 61 63 65 5f | "tok-kw">const</span>.namespace_ |
| af5c0 | 6e 61 6d 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 | name.=.<span.class="tok-builtin" |
| af5e0 | 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 |
| af600 | 2d 73 74 72 22 3e 26 71 75 6f 74 3b 64 69 72 5f 6e 61 6d 65 2f 66 69 6c 65 5f 6e 61 6d 65 2e 7a | -str">"dir_name/file_name.z |
| af620 | 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 22 74 | ig"</span>);.<span.class="t |
| af640 | 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 54 79 70 65 4e 61 6d 65 20 3d 20 3c | ok-kw">const</span>.TypeName.=.< |
| af660 | 73 70 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 |
| af680 | 3c 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 |
| af6a0 | 75 6f 74 3b 64 69 72 5f 6e 61 6d 65 2f 54 79 70 65 4e 61 6d 65 2e 7a 69 67 26 71 75 6f 74 3b 3c | uot;dir_name/TypeName.zig"< |
| af6c0 | 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 76 61 | /span>);.<span.class="tok-kw">va |
| af6e0 | 72 3c 2f 73 70 61 6e 3e 20 67 6c 6f 62 61 6c 5f 76 61 72 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 | r</span>.global_var:.<span.class |
| af700 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 | ="tok-type">i32</span>.=.<span.c |
| af720 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 75 6e 64 65 66 69 6e 65 64 3c 2f 73 70 61 6e 3e | lass="tok-null">undefined</span> |
| af740 | 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 |
| af760 | 61 6e 3e 20 63 6f 6e 73 74 5f 6e 61 6d 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | an>.const_name.=.<span.class="to |
| af780 | 6b 2d 6e 75 6d 62 65 72 22 3e 34 32 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | k-number">42</span>;.<span.class |
| af7a0 | 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 6d 69 74 69 76 65 | ="tok-kw">const</span>.primitive |
| af7c0 | 5f 74 79 70 65 5f 61 6c 69 61 73 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | _type_alias.=.<span.class="tok-t |
| af7e0 | 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ype">f32</span>;.<span.class="to |
| af800 | 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 74 72 69 6e 67 5f 61 6c 69 61 73 20 | k-kw">const</span>.string_alias. |
| af820 | 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 75 38 3c 2f 73 | =.[]<span.class="tok-type">u8</s |
| af840 | 70 61 6e 3e 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 | pan>;..<span.class="tok-kw">cons |
| af860 | 74 3c 2f 73 70 61 6e 3e 20 53 74 72 75 63 74 4e 61 6d 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | t</span>.StructName.=.<span.clas |
| af880 | 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 66 | s="tok-kw">struct</span>.{.....f |
| af8a0 | 69 65 6c 64 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 | ield:.<span.class="tok-type">i32 |
| af8c0 | 3c 2f 73 70 61 6e 3e 2c 0a 7d 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | </span>,.};.<span.class="tok-kw" |
| af8e0 | 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 53 74 72 75 63 74 41 6c 69 61 73 20 3d 20 53 74 72 75 | >const</span>.StructAlias.=.Stru |
| af900 | 63 74 4e 61 6d 65 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e | ctName;..<span.class="tok-kw">fn |
| af920 | 3c 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 75 6e | </span>.<span.class="tok-fn">fun |
| af940 | 63 74 69 6f 6e 4e 61 6d 65 3c 2f 73 70 61 6e 3e 28 70 61 72 61 6d 5f 6e 61 6d 65 3a 20 54 79 70 | ctionName</span>(param_name:.Typ |
| af960 | 65 4e 61 6d 65 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f | eName).<span.class="tok-type">vo |
| af980 | 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 |
| af9a0 | 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 66 75 6e 63 74 69 6f 6e 50 6f 69 6e 74 65 72 20 | -kw">var</span>.functionPointer. |
| af9c0 | 3d 20 66 75 6e 63 74 69 6f 6e 4e 61 6d 65 3b 0a 20 20 20 20 66 75 6e 63 74 69 6f 6e 50 6f 69 6e | =.functionName;.....functionPoin |
| af9e0 | 74 65 72 28 29 3b 0a 20 20 20 20 66 75 6e 63 74 69 6f 6e 50 6f 69 6e 74 65 72 20 3d 20 6f 74 68 | ter();.....functionPointer.=.oth |
| afa00 | 65 72 46 75 6e 63 74 69 6f 6e 3b 0a 20 20 20 20 66 75 6e 63 74 69 6f 6e 50 6f 69 6e 74 65 72 28 | erFunction;.....functionPointer( |
| afa20 | 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 63 6f 6e 73 74 3c | );.}.<span.class="tok-kw">const< |
| afa40 | 2f 73 70 61 6e 3e 20 66 75 6e 63 74 69 6f 6e 41 6c 69 61 73 20 3d 20 66 75 6e 63 74 69 6f 6e 4e | /span>.functionAlias.=.functionN |
| afa60 | 61 6d 65 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 | ame;..<span.class="tok-kw">fn</s |
| afa80 | 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 54 65 | pan>.<span.class="tok-fn">ListTe |
| afaa0 | 6d 70 6c 61 74 65 46 75 6e 63 74 69 6f 6e 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 | mplateFunction</span>(<span.clas |
| afac0 | 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 68 69 6c 64 | s="tok-kw">comptime</span>.Child |
| afae0 | 54 79 70 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 | Type:.<span.class="tok-type">typ |
| afb00 | 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 |
| afb20 | 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 66 69 78 65 64 5f 73 69 7a 65 3a 20 3c 73 70 61 6e | omptime</span>.fixed_size:.<span |
| afb40 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 29 20 | .class="tok-type">usize</span>). |
| afb60 | 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 |
| afb80 | 6e 3e 20 7b 0a 20 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 |
| afba0 | 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 4c 69 73 74 28 43 68 69 6c 64 54 79 70 65 2c 20 66 69 78 65 | turn</span>.List(ChildType,.fixe |
| afbc0 | 64 5f 73 69 7a 65 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | d_size);.}..<span.class="tok-kw" |
| afbe0 | 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"> |
| afc00 | 53 68 6f 72 74 4c 69 73 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ShortList</span>(<span.class="to |
| afc20 | 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 |
| afc40 | 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 | lass="tok-type">type</span>,.<sp |
| afc60 | 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 |
| afc80 | 3e 20 6e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a | >.n:.<span.class="tok-type">usiz |
| afca0 | 65 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 | e</span>).<span.class="tok-type" |
| afcc0 | 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | >type</span>.{.....<span.class=" |
| afce0 | 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 | tok-kw">return</span>.<span.clas |
| afd00 | 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>.{...... |
| afd20 | 20 20 20 66 69 65 6c 64 5f 6e 61 6d 65 3a 20 5b 6e 5d 54 2c 0a 20 20 20 20 20 20 20 20 3c 73 70 | ...field_name:.[n]T,.........<sp |
| afd40 | 61 6e 20 63 6c 61 73 73 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 |
| afd60 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 6d 65 74 68 6f 64 4e 61 6d 65 3c 2f 73 70 61 | n.class="tok-fn">methodName</spa |
| afd80 | 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 |
| afda0 | 3c 2f 73 70 61 6e 3e 20 7b 7d 0a 20 20 20 20 7d 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | </span>.{}.....};.}..<span.class |
| afdc0 | 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 65 20 77 6f 72 64 20 58 4d 4c 20 6c | ="tok-comment">//.The.word.XML.l |
| afde0 | 6f 73 65 73 20 69 74 73 20 63 61 73 69 6e 67 20 77 68 65 6e 20 75 73 65 64 20 69 6e 20 5a 69 67 | oses.its.casing.when.used.in.Zig |
| afe00 | 20 69 64 65 6e 74 69 66 69 65 72 73 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | .identifiers.</span>.<span.class |
| afe20 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 78 6d 6c 5f 64 6f 63 75 6d | ="tok-kw">const</span>.xml_docum |
| afe40 | 65 6e 74 20 3d 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e | ent.=.....<span.class="tok-str"> |
| afe60 | 5c 5c 26 6c 74 3b 3f 78 6d 6c 20 76 65 72 73 69 6f 6e 3d 26 71 75 6f 74 3b 31 2e 30 26 71 75 6f | \\<?xml.version="1.0&quo |
| afe80 | 74 3b 20 65 6e 63 6f 64 69 6e 67 3d 26 71 75 6f 74 3b 55 54 46 2d 38 26 71 75 6f 74 3b 3f 26 67 | t;.encoding="UTF-8"?&g |
| afea0 | 74 3b 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 | t;.</span>....<span.class="tok-s |
| afec0 | 74 72 22 3e 5c 5c 26 6c 74 3b 64 6f 63 75 6d 65 6e 74 26 67 74 3b 0a 3c 2f 73 70 61 6e 3e 20 20 | tr">\\<document>.</span>.. |
| afee0 | 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 5c 5c 26 6c 74 3b 2f 64 | ..<span.class="tok-str">\\</d |
| aff00 | 6f 63 75 6d 65 6e 74 26 67 74 3b 0a 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | ocument>.</span>;.<span.class |
| aff20 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 58 6d 6c 50 61 72 73 65 72 | ="tok-kw">const</span>.XmlParser |
| aff40 | 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 74 72 75 63 74 3c 2f | .=.<span.class="tok-kw">struct</ |
| aff60 | 73 70 61 6e 3e 20 7b 0a 20 20 20 20 66 69 65 6c 64 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | span>.{.....field:.<span.class=" |
| aff80 | 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 | tok-type">i32</span>,.};..<span. |
| affa0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 65 20 69 6e 69 74 69 | class="tok-comment">//.The.initi |
| affc0 | 61 6c 73 20 42 45 20 28 42 69 67 20 45 6e 64 69 61 6e 29 20 61 72 65 20 6a 75 73 74 20 61 6e 6f | als.BE.(Big.Endian).are.just.ano |
| affe0 | 74 68 65 72 20 77 6f 72 64 20 69 6e 20 5a 69 67 20 69 64 65 6e 74 69 66 69 65 72 20 6e 61 6d 65 | ther.word.in.Zig.identifier.name |
| b0000 | 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 66 | s.</span>.<span.class="tok-kw">f |
| b0020 | 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 72 65 | n</span>.<span.class="tok-fn">re |
| b0040 | 61 64 55 33 32 42 65 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | adU32Be</span>().<span.class="to |
| b0060 | 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 20 7b 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 | k-type">u32</span>.{}</code></pr |
| b0080 | 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 53 65 65 20 74 68 65 20 5a 69 67 20 53 | e>.......<p>.......See.the.Zig.S |
| b00a0 | 74 61 6e 64 61 72 64 20 4c 69 62 72 61 72 79 20 66 6f 72 20 6d 6f 72 65 20 65 78 61 6d 70 6c 65 | tandard.Library.for.more.example |
| b00c0 | 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 0a 20 20 20 20 | s........</p>................... |
| b00e0 | 20 20 3c 68 31 20 69 64 3d 22 53 6f 75 72 63 65 2d 45 6e 63 6f 64 69 6e 67 22 3e 3c 61 20 68 72 | ..<h1.id="Source-Encoding"><a.hr |
| b0100 | 65 66 3d 22 23 74 6f 63 2d 53 6f 75 72 63 65 2d 45 6e 63 6f 64 69 6e 67 22 3e 53 6f 75 72 63 65 | ef="#toc-Source-Encoding">Source |
| b0120 | 20 45 6e 63 6f 64 69 6e 67 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 65 | .Encoding</a>.<a.class="hdr".hre |
| b0140 | 66 3d 22 23 53 6f 75 72 63 65 2d 45 6e 63 6f 64 69 6e 67 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 31 3e | f="#Source-Encoding">..</a></h1> |
| b0160 | 0a 0a 20 20 20 20 20 20 3c 70 3e 5a 69 67 20 73 6f 75 72 63 65 20 63 6f 64 65 20 69 73 20 65 6e | ........<p>Zig.source.code.is.en |
| b0180 | 63 6f 64 65 64 20 69 6e 20 55 54 46 2d 38 2e 20 41 6e 20 69 6e 76 61 6c 69 64 20 55 54 46 2d 38 | coded.in.UTF-8..An.invalid.UTF-8 |
| b01a0 | 20 62 79 74 65 20 73 65 71 75 65 6e 63 65 20 72 65 73 75 6c 74 73 20 69 6e 20 61 20 63 6f 6d 70 | .byte.sequence.results.in.a.comp |
| b01c0 | 69 6c 65 20 65 72 72 6f 72 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 54 68 72 6f 75 67 68 6f | ile.error.</p>.......<p>Througho |
| b01e0 | 75 74 20 61 6c 6c 20 7a 69 67 20 73 6f 75 72 63 65 20 63 6f 64 65 20 28 69 6e 63 6c 75 64 69 6e | ut.all.zig.source.code.(includin |
| b0200 | 67 20 69 6e 20 63 6f 6d 6d 65 6e 74 73 29 2c 20 73 6f 6d 65 20 63 6f 64 65 70 6f 69 6e 74 73 20 | g.in.comments),.some.codepoints. |
| b0220 | 61 72 65 20 6e 65 76 65 72 20 61 6c 6c 6f 77 65 64 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c | are.never.allowed:</p>.......<ul |
| b0240 | 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 41 73 63 69 69 20 63 6f 6e 74 72 6f 6c 20 63 68 61 72 | >.........<li>Ascii.control.char |
| b0260 | 61 63 74 65 72 73 2c 20 65 78 63 65 70 74 20 66 6f 72 20 55 2b 30 30 30 61 20 28 4c 46 29 3a 20 | acters,.except.for.U+000a.(LF):. |
| b0280 | 55 2b 30 30 30 30 20 2d 20 55 2b 30 30 30 39 2c 20 55 2b 30 30 30 62 20 2d 20 55 2b 30 30 30 31 | U+0000.-.U+0009,.U+000b.-.U+0001 |
| b02a0 | 66 2c 20 55 2b 30 30 37 66 2e 20 28 4e 6f 74 65 20 74 68 61 74 20 57 69 6e 64 6f 77 73 20 6c 69 | f,.U+007f..(Note.that.Windows.li |
| b02c0 | 6e 65 20 65 6e 64 69 6e 67 73 20 28 43 52 4c 46 29 20 61 72 65 20 6e 6f 74 20 61 6c 6c 6f 77 65 | ne.endings.(CRLF).are.not.allowe |
| b02e0 | 64 2c 20 61 6e 64 20 68 61 72 64 20 74 61 62 73 20 61 72 65 20 6e 6f 74 20 61 6c 6c 6f 77 65 64 | d,.and.hard.tabs.are.not.allowed |
| b0300 | 2e 29 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 20 55 6e | .)</li>.........<li>Non-Ascii.Un |
| b0320 | 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 45 4c 29 | icode.line.endings:.U+0085.(NEL) |
| b0340 | 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 6c 69 3e | ,.U+2028.(LS),.U+2029.(PS).</li> |
| b0360 | 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c 70 3e 54 68 65 20 63 6f 64 65 70 6f | .......</ul>.......<p>The.codepo |
| b0380 | 69 6e 74 20 55 2b 30 30 30 61 20 28 4c 46 29 20 28 77 68 69 63 68 20 69 73 20 65 6e 63 6f 64 65 | int.U+000a.(LF).(which.is.encode |
| b03a0 | 64 20 61 73 20 74 68 65 20 73 69 6e 67 6c 65 2d 62 79 74 65 20 76 61 6c 75 65 20 30 78 30 61 29 | d.as.the.single-byte.value.0x0a) |
| b03c0 | 20 69 73 20 74 68 65 20 6c 69 6e 65 20 74 65 72 6d 69 6e 61 74 6f 72 20 63 68 61 72 61 63 74 65 | .is.the.line.terminator.characte |
| b03e0 | 72 2e 20 54 68 69 73 20 63 68 61 72 61 63 74 65 72 20 61 6c 77 61 79 73 20 74 65 72 6d 69 6e 61 | r..This.character.always.termina |
| b0400 | 74 65 73 20 61 20 6c 69 6e 65 20 6f 66 20 7a 69 67 20 73 6f 75 72 63 65 20 63 6f 64 65 20 28 65 | tes.a.line.of.zig.source.code.(e |
| b0420 | 78 63 65 70 74 20 70 6f 73 73 69 62 6c 79 20 74 68 65 20 6c 61 73 74 20 6c 69 6e 65 20 6f 66 20 | xcept.possibly.the.last.line.of. |
| b0440 | 74 68 65 20 66 69 6c 65 29 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 46 6f 72 20 73 6f 6d 65 | the.file).</p>.......<p>For.some |
| b0460 | 20 64 69 73 63 75 73 73 69 6f 6e 20 6f 6e 20 74 68 65 20 72 61 74 69 6f 6e 61 6c 65 20 62 65 68 | .discussion.on.the.rationale.beh |
| b0480 | 69 6e 64 20 74 68 65 73 65 20 64 65 73 69 67 6e 20 64 65 63 69 73 69 6f 6e 73 2c 20 73 65 65 20 | ind.these.design.decisions,.see. |
| b04a0 | 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 7a 69 67 6c | <a.href="https://github.com/zigl |
| b04c0 | 61 6e 67 2f 7a 69 67 2f 69 73 73 75 65 73 2f 36 36 33 22 3e 69 73 73 75 65 20 23 36 36 33 3c 2f | ang/zig/issues/663">issue.#663</ |
| b04e0 | 61 3e 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 31 20 69 64 3d 22 4b 65 79 | a></p>...............<h1.id="Key |
| b0500 | 77 6f 72 64 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 | word-Reference"><a.href="#toc-Ke |
| b0520 | 79 77 6f 72 64 2d 52 65 66 65 72 65 6e 63 65 22 3e 4b 65 79 77 6f 72 64 20 52 65 66 65 72 65 6e | yword-Reference">Keyword.Referen |
| b0540 | 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 4b 65 79 | ce</a>.<a.class="hdr".href="#Key |
| b0560 | 77 6f 72 64 2d 52 65 66 65 72 65 6e 63 65 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 31 3e 0a 0a 20 20 20 | word-Reference">..</a></h1>..... |
| b0580 | 20 20 20 3c 64 69 76 20 63 6c 61 73 73 3d 22 74 61 62 6c 65 2d 77 72 61 70 70 65 72 22 3e 0a 20 | ...<div.class="table-wrapper">.. |
| b05a0 | 20 20 20 20 20 3c 74 61 62 6c 65 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 | .....<table>.........<tr>....... |
| b05c0 | 20 20 20 20 3c 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 4b 65 79 77 6f 72 64 0a 20 20 20 | ....<th>.............Keyword.... |
| b05e0 | 20 20 20 20 20 20 20 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 68 3e 0a 20 20 20 20 | .......</th>...........<th>..... |
| b0600 | 20 20 20 20 20 20 20 20 44 65 73 63 72 69 70 74 69 6f 6e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f | ........Description...........</ |
| b0620 | 74 68 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 | th>.........</tr>.........<tr>.. |
| b0640 | 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c | .........<td>.............<pre>< |
| b0660 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | code.class="zig"><span.class="to |
| b0680 | 6b 2d 6b 77 22 3e 61 6c 69 67 6e 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a | k-kw">align</span></code></pre>. |
| b06a0 | 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>.. |
| b06c0 | 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 | ...........<code.class="zig"><sp |
| b06e0 | 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 3c 2f | an.class="tok-kw">align</span></ |
| b0700 | 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 74 68 65 | code>.can.be.used.to.specify.the |
| b0720 | 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 20 20 20 | .alignment.of.a.pointer......... |
| b0740 | 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 72 20 61 | .....It.can.also.be.used.after.a |
| b0760 | 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 74 69 6f | .variable.or.function.declaratio |
| b0780 | 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 20 70 6f | n.to.specify.the.alignment.of.po |
| b07a0 | 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 6e 63 74 | inters.to.that.variable.or.funct |
| b07c0 | 69 6f 6e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 | ion..............<ul>........... |
| b07e0 | 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 69 67 6e | ....<li>See.also.<a.href="#Align |
| b0800 | 6d 65 6e 74 22 3e 41 6c 69 67 6e 6d 65 6e 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 | ment">Alignment</a></li>........ |
| b0820 | 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>...... |
| b0840 | 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 | ...</tr>.........<tr>........... |
| b0860 | 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 | <td>.............<pre><code.clas |
| b0880 | 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6c 6c | s="zig"><span.class="tok-kw">all |
| b08a0 | 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 20 20 20 | owzero</span></code></pre>...... |
| b08c0 | 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>....... |
| b08e0 | 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 63 6f 64 | ......The.pointer.attribute.<cod |
| b0900 | 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | e.class="zig"><span.class="tok-k |
| b0920 | 77 22 3e 61 6c 6c 6f 77 7a 65 72 6f 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 61 6c 6c 6f 77 | w">allowzero</span></code>.allow |
| b0940 | 73 20 61 20 70 6f 69 6e 74 65 72 20 74 6f 20 68 61 76 65 20 61 64 64 72 65 73 73 20 7a 65 72 6f | s.a.pointer.to.have.address.zero |
| b0960 | 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>.............. |
| b0980 | 20 3c 6c 69 3e 53 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 61 6c 6c 6f 77 7a 65 72 | .<li>See.also.<a.href="#allowzer |
| b09a0 | 6f 22 3e 61 6c 6c 6f 77 7a 65 72 6f 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 | o">allowzero</a></li>........... |
| b09c0 | 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>......... |
| b09e0 | 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 |
| b0a00 | 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | >.............<pre><code.class=" |
| b0a20 | 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 64 3c 2f 73 | zig"><span.class="tok-kw">and</s |
| b0a40 | 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 |
| b0a60 | 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 54 68 65 | >...........<td>.............The |
| b0a80 | 20 62 6f 6f 6c 65 61 6e 20 6f 70 65 72 61 74 6f 72 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a | .boolean.operator.<code.class="z |
| b0aa0 | 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 64 3c 2f 73 70 | ig"><span.class="tok-kw">and</sp |
| b0ac0 | 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 | an></code>..............<ul>.... |
| b0ae0 | 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= |
| b0b00 | 22 23 4f 70 65 72 61 74 6f 72 73 22 3e 4f 70 65 72 61 74 6f 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a | "#Operators">Operators</a></li>. |
| b0b20 | 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 | ............</ul>...........</td |
| b0b40 | 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>.... |
| b0b60 | 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 |
| b0b80 | 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | de.class="zig"><span.class="tok- |
| b0ba0 | 6b 77 22 3e 61 6e 79 66 72 61 6d 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e | kw">anyframe</span></code></pre> |
| b0bc0 | 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>. |
| b0be0 | 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 | ............<code.class="zig"><s |
| b0c00 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 79 66 72 61 6d 65 3c 2f 73 70 61 | pan.class="tok-kw">anyframe</spa |
| b0c20 | 6e 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 | n></code>.can.be.used.as.a.type. |
| b0c40 | 66 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 | for.variables.which.hold.pointer |
| b0c60 | 73 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 | s.to.function.frames............ |
| b0c80 | 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 |
| b0ca0 | 6f 20 3c 61 20 68 72 65 66 3d 22 23 41 73 79 6e 63 2d 46 75 6e 63 74 69 6f 6e 73 22 3e 41 73 79 | o.<a.href="#Async-Functions">Asy |
| b0cc0 | 6e 63 20 46 75 6e 63 74 69 6f 6e 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 | nc.Functions</a></li>........... |
| b0ce0 | 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>......... |
| b0d00 | 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 |
| b0d20 | 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | >.............<pre><code.class=" |
| b0d40 | 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 79 74 79 70 | zig"><span.class="tok-kw">anytyp |
| b0d60 | 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>........... |
| b0d80 | 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>............ |
| b0da0 | 20 46 75 6e 63 74 69 6f 6e 20 70 61 72 61 6d 65 74 65 72 73 20 61 6e 64 20 73 74 72 75 63 74 20 | .Function.parameters.and.struct. |
| b0dc0 | 66 69 65 6c 64 73 20 63 61 6e 20 62 65 20 64 65 63 6c 61 72 65 64 20 77 69 74 68 20 3c 63 6f 64 | fields.can.be.declared.with.<cod |
| b0de0 | 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | e.class="zig"><span.class="tok-k |
| b0e00 | 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 63 | w">anytype</span></code>.in.plac |
| b0e20 | 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 74 | e.of.the.type..............The.t |
| b0e40 | 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 66 | ype.will.be.inferred.where.the.f |
| b0e60 | 75 6e 63 74 69 6f 6e 20 69 73 20 63 61 6c 6c 65 64 20 6f 72 20 74 68 65 20 73 74 72 75 63 74 20 | unction.is.called.or.the.struct. |
| b0e80 | 69 73 20 69 6e 73 74 61 6e 74 69 61 74 65 64 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c | is.instantiated..............<ul |
| b0ea0 | 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 65 65 20 61 6c 73 6f 20 3c 61 20 | >...............<li>See.also.<a. |
| b0ec0 | 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 49 | href="#Function-Parameter-Type-I |
| b0ee0 | 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 79 70 | nference">Function.Parameter.Typ |
| b0f00 | 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 20 20 20 | e.Inference</a></li>............ |
| b0f20 | 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>.........< |
| b0f40 | 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e | /tr>.........<tr>...........<td> |
| b0f60 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a | .............<pre><code.class="z |
| b0f80 | 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 73 6d 3c 2f 73 70 | ig"><span.class="tok-kw">asm</sp |
| b0fa0 | 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> |
| b0fc0 | 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 | ...........<td>.............<cod |
| b0fe0 | 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | e.class="zig"><span.class="tok-k |
| b1000 | 77 22 3e 61 73 6d 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 62 65 67 69 6e 73 20 61 6e 20 69 | w">asm</span></code>.begins.an.i |
| b1020 | 6e 6c 69 6e 65 20 61 73 73 65 6d 62 6c 79 20 65 78 70 72 65 73 73 69 6f 6e 2e 20 54 68 69 73 20 | nline.assembly.expression..This. |
| b1040 | 61 6c 6c 6f 77 73 20 66 6f 72 20 64 69 72 65 63 74 6c 79 20 63 6f 6e 74 72 6f 6c 6c 69 6e 67 20 | allows.for.directly.controlling. |
| b1060 | 74 68 65 20 6d 61 63 68 69 6e 65 20 63 6f 64 65 20 67 65 6e 65 72 61 74 65 64 20 6f 6e 20 63 6f | the.machine.code.generated.on.co |
| b1080 | 6d 70 69 6c 61 74 69 6f 6e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 | mpilation..............<ul>..... |
| b10a0 | 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=" |
| b10c0 | 23 41 73 73 65 6d 62 6c 79 22 3e 41 73 73 65 6d 62 6c 79 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 | #Assembly">Assembly</a></li>.... |
| b10e0 | 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>.. |
| b1100 | 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>....... |
| b1120 | 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 20 | ....<td>.............<pre><code. |
| b1140 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | class="zig"><span.class="tok-kw" |
| b1160 | 3e 61 73 79 6e 63 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 | >async</span></code></pre>...... |
| b1180 | 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>....... |
| b11a0 | 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c | ......<code.class="zig"><span.cl |
| b11c0 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 73 79 6e 63 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e | ass="tok-kw">async</span></code> |
| b11e0 | 20 63 61 6e 20 62 65 20 75 73 65 64 20 62 65 66 6f 72 65 20 61 20 66 75 6e 63 74 69 6f 6e 20 63 | .can.be.used.before.a.function.c |
| b1200 | 61 6c 6c 20 74 6f 20 67 65 74 20 61 20 70 6f 69 6e 74 65 72 20 74 6f 20 74 68 65 20 66 75 6e 63 | all.to.get.a.pointer.to.the.func |
| b1220 | 74 69 6f 6e 27 73 20 66 72 61 6d 65 20 77 68 65 6e 20 69 74 20 73 75 73 70 65 6e 64 73 2e 0a 20 | tion's.frame.when.it.suspends... |
| b1240 | 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 |
| b1260 | 69 3e 53 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 41 73 79 6e 63 2d 46 75 6e 63 74 | i>See.also.<a.href="#Async-Funct |
| b1280 | 69 6f 6e 73 22 3e 41 73 79 6e 63 20 46 75 6e 63 74 69 6f 6e 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 | ions">Async.Functions</a></li>.. |
| b12a0 | 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> |
| b12c0 | 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>..... |
| b12e0 | 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 | ......<td>.............<pre><cod |
| b1300 | 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | e.class="zig"><span.class="tok-k |
| b1320 | 77 22 3e 61 77 61 69 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 | w">await</span></code></pre>.... |
| b1340 | 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>..... |
| b1360 | 20 20 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 | ........<code.class="zig"><span. |
| b1380 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 77 61 69 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 | class="tok-kw">await</span></cod |
| b13a0 | 65 3e 20 63 61 6e 20 62 65 20 75 73 65 64 20 74 6f 20 73 75 73 70 65 6e 64 20 74 68 65 20 63 75 | e>.can.be.used.to.suspend.the.cu |
| b13c0 | 72 72 65 6e 74 20 66 75 6e 63 74 69 6f 6e 20 75 6e 74 69 6c 20 74 68 65 20 66 72 61 6d 65 20 70 | rrent.function.until.the.frame.p |
| b13e0 | 72 6f 76 69 64 65 64 20 61 66 74 65 72 20 74 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a | rovided.after.the.<code.class="z |
| b1400 | 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 77 61 69 74 3c 2f | ig"><span.class="tok-kw">await</ |
| b1420 | 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 63 6f 6d 70 6c 65 74 65 73 2e 0a 20 20 20 20 20 20 20 20 | span></code>.completes.......... |
| b1440 | 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 | ....<code.class="zig"><span.clas |
| b1460 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 77 61 69 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 63 | s="tok-kw">await</span></code>.c |
| b1480 | 6f 70 69 65 73 20 74 68 65 20 76 61 6c 75 65 20 72 65 74 75 72 6e 65 64 20 66 72 6f 6d 20 74 68 | opies.the.value.returned.from.th |
| b14a0 | 65 20 74 61 72 67 65 74 20 66 75 6e 63 74 69 6f 6e 27 73 20 66 72 61 6d 65 20 74 6f 20 74 68 65 | e.target.function's.frame.to.the |
| b14c0 | 20 63 61 6c 6c 65 72 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 | .caller..............<ul>....... |
| b14e0 | 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 41 | ........<li>See.also.<a.href="#A |
| b1500 | 73 79 6e 63 2d 46 75 6e 63 74 69 6f 6e 73 22 3e 41 73 79 6e 63 20 46 75 6e 63 74 69 6f 6e 73 3c | sync-Functions">Async.Functions< |
| b1520 | 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>...... |
| b1540 | 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>........ |
| b1560 | 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 | .<tr>...........<td>............ |
| b1580 | 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c | .<pre><code.class="zig"><span.cl |
| b15a0 | 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> |
| b15c0 | 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 | </pre>...........</td>.......... |
| b15e0 | 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a | .<td>.............<code.class="z |
| b1600 | 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 62 72 65 61 6b 3c 2f | ig"><span.class="tok-kw">break</ |
| b1620 | 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 77 69 74 68 20 61 20 | span></code>.can.be.used.with.a. |
| b1640 | 62 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 | block.label.to.return.a.value.fr |
| b1660 | 6f 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 | om.the.block..............It.can |
| b1680 | 20 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 | .also.be.used.to.exit.a.loop.bef |
| b16a0 | 6f 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 | ore.iteration.completes.naturall |
| b16c0 | 79 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | y..............<ul>............. |
| b16e0 | 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 62 6c 6f 63 6b 73 22 | ..<li>See.also.<a.href="#blocks" |
| b1700 | 3e 62 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 | >blocks</a>,.<a.href="#while">wh |
| b1720 | 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 3c | ile</a>,.<a.href="#for">for</a>< |
| b1740 | 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>.......... |
| b1760 | 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 | .</td>.........</tr>.........<tr |
| b1780 | 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 |
| b17a0 | 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | e><code.class="zig"><span.class= |
| b17c0 | 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 3c 2f 70 72 | "tok-kw">catch</span></code></pr |
| b17e0 | 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 |
| b1800 | 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e | >.............<code.class="zig"> |
| b1820 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 61 74 63 68 3c 2f 73 70 61 6e | <span.class="tok-kw">catch</span |
| b1840 | 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 76 61 6c 75 61 74 65 | ></code>.can.be.used.to.evaluate |
| b1860 | 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 72 65 73 73 69 6f 6e | .an.expression.if.the.expression |
| b1880 | 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 6e 20 65 72 72 6f 72 | .before.it.evaluates.to.an.error |
| b18a0 | 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 69 6f 6e 20 61 66 74 | ..............The.expression.aft |
| b18c0 | 65 72 20 74 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 | er.the.<code.class="zig"><span.c |
| b18e0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 61 74 63 68 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 | lass="tok-kw">catch</span></code |
| b1900 | 3e 20 63 61 6e 20 6f 70 74 69 6f 6e 61 6c 6c 79 20 63 61 70 74 75 72 65 20 74 68 65 20 65 72 72 | >.can.optionally.capture.the.err |
| b1920 | 6f 72 20 76 61 6c 75 65 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 | or.value..............<ul>...... |
| b1940 | 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="# |
| b1960 | 63 61 74 63 68 22 3e 63 61 74 63 68 3c 2f 61 3e 2c 20 3c 61 20 68 72 65 66 3d 22 23 4f 70 65 72 | catch">catch</a>,.<a.href="#Oper |
| b1980 | 61 74 6f 72 73 22 3e 4f 70 65 72 61 74 6f 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | ators">Operators</a></li>....... |
| b19a0 | 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>..... |
| b19c0 | 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>.......... |
| b19e0 | 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 | .<td>.............<pre><code.cla |
| b1a00 | 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f | ss="zig"><span.class="tok-kw">co |
| b1a20 | 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 | mptime</span></code></pre>...... |
| b1a40 | 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>....... |
| b1a60 | 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c | ......<code.class="zig"><span.cl |
| b1a80 | 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 |
| b1aa0 | 64 65 3e 20 62 65 66 6f 72 65 20 61 20 64 65 63 6c 61 72 61 74 69 6f 6e 20 63 61 6e 20 62 65 20 | de>.before.a.declaration.can.be. |
| b1ac0 | 75 73 65 64 20 74 6f 20 6c 61 62 65 6c 20 76 61 72 69 61 62 6c 65 73 20 6f 72 20 66 75 6e 63 74 | used.to.label.variables.or.funct |
| b1ae0 | 69 6f 6e 20 70 61 72 61 6d 65 74 65 72 73 20 61 73 20 6b 6e 6f 77 6e 20 61 74 20 63 6f 6d 70 69 | ion.parameters.as.known.at.compi |
| b1b00 | 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 61 6c 73 6f | le.time..............It.can.also |
| b1b20 | 20 62 65 20 75 73 65 64 20 74 6f 20 67 75 61 72 61 6e 74 65 65 20 61 6e 20 65 78 70 72 65 73 73 | .be.used.to.guarantee.an.express |
| b1b40 | 69 6f 6e 20 69 73 20 72 75 6e 20 61 74 20 63 6f 6d 70 69 6c 65 20 74 69 6d 65 2e 0a 20 20 20 20 | ion.is.run.at.compile.time...... |
| b1b60 | 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 |
| b1b80 | 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 63 6f 6d 70 74 69 6d 65 22 3e 63 6f 6d 70 | ee.also.<a.href="#comptime">comp |
| b1ba0 | 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 2f 75 6c 3e 0a | time</a></li>.............</ul>. |
| b1bc0 | 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>... |
| b1be0 | 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 | ......<tr>...........<td>....... |
| b1c00 | 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 | ......<pre><code.class="zig"><sp |
| b1c20 | 61 6e 20 63 6c 61 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></ |
| b1c40 | 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>..... |
| b1c60 | 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 | ......<td>.............<code.cla |
| b1c80 | 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f | ss="zig"><span.class="tok-kw">co |
| b1ca0 | 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 76 61 72 | nst</span></code>.declares.a.var |
| b1cc0 | 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 64 2e 0a | iable.that.can.not.be.modified.. |
| b1ce0 | 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 20 61 74 | ............Used.as.a.pointer.at |
| b1d00 | 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 20 72 65 | tribute,.it.denotes.the.value.re |
| b1d20 | 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 74 20 62 | ferenced.by.the.pointer.cannot.b |
| b1d40 | 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 20 20 20 | e.modified..............<ul>.... |
| b1d60 | 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= |
| b1d80 | 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 69 3e 0a | "#Variables">Variables</a></li>. |
| b1da0 | 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 | ............</ul>...........</td |
| b1dc0 | 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>.... |
| b1de0 | 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 |
| b1e00 | 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | de.class="zig"><span.class="tok- |
| b1e20 | 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 72 65 3e | kw">continue</span></code></pre> |
| b1e40 | 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>. |
| b1e60 | 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 | ............<code.class="zig"><s |
| b1e80 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 74 69 6e 75 65 3c 2f 73 70 61 | pan.class="tok-kw">continue</spa |
| b1ea0 | 6e 3e 3c 2f 63 6f 64 65 3e 20 63 61 6e 20 62 65 20 75 73 65 64 20 69 6e 20 61 20 6c 6f 6f 70 20 | n></code>.can.be.used.in.a.loop. |
| b1ec0 | 74 6f 20 6a 75 6d 70 20 62 61 63 6b 20 74 6f 20 74 68 65 20 62 65 67 69 6e 6e 69 6e 67 20 6f 66 | to.jump.back.to.the.beginning.of |
| b1ee0 | 20 74 68 65 20 6c 6f 6f 70 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 | .the.loop..............<ul>..... |
| b1f00 | 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=" |
| b1f20 | 23 77 68 69 6c 65 22 3e 77 68 69 6c 65 3c 2f 61 3e 2c 20 3c 61 20 68 72 65 66 3d 22 23 66 6f 72 | #while">while</a>,.<a.href="#for |
| b1f40 | 22 3e 66 6f 72 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e | ">for</a></li>.............</ul> |
| b1f60 | 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>.. |
| b1f80 | 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 | .......<tr>...........<td>...... |
| b1fa0 | 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 | .......<pre><code.class="zig"><s |
| b1fc0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 64 65 66 65 72 3c 2f 73 70 61 6e 3e 3c | pan.class="tok-kw">defer</span>< |
| b1fe0 | 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 | /code></pre>...........</td>.... |
| b2000 | 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c | .......<td>.............<code.cl |
| b2020 | 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 64 | ass="zig"><span.class="tok-kw">d |
| b2040 | 65 66 65 72 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 77 69 6c 6c 20 65 78 65 63 75 74 65 20 | efer</span></code>.will.execute. |
| b2060 | 61 6e 20 65 78 70 72 65 73 73 69 6f 6e 20 77 68 65 6e 20 63 6f 6e 74 72 6f 6c 20 66 6c 6f 77 20 | an.expression.when.control.flow. |
| b2080 | 6c 65 61 76 65 73 20 74 68 65 20 63 75 72 72 65 6e 74 20 62 6c 6f 63 6b 2e 0a 20 20 20 20 20 20 | leaves.the.current.block........ |
| b20a0 | 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 |
| b20c0 | 20 61 6c 73 6f 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 | .also.<a.href="#defer">defer</a> |
| b20e0 | 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>......... |
| b2100 | 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 |
| b2120 | 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 | r>...........<td>.............<p |
| b2140 | 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | re><code.class="zig"><span.class |
| b2160 | 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 3c 2f 70 72 | ="tok-kw">else</span></code></pr |
| b2180 | 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 |
| b21a0 | 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e | >.............<code.class="zig"> |
| b21c0 | 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> |
| b21e0 | 3c 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 | </code>.can.be.used.to.provide.a |
| b2200 | 6e 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 20 63 6c 61 | n.alternate.branch.for.<code.cla |
| b2220 | 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 | ss="zig"><span.class="tok-kw">if |
| b2240 | 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | </span></code>,.<code.class="zig |
| b2260 | 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 77 69 74 63 68 3c 2f 73 | "><span.class="tok-kw">switch</s |
| b2280 | 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 3c 63 6f 64 65 20 63 | pan></code>,.............<code.c |
| b22a0 | 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | lass="zig"><span.class="tok-kw"> |
| b22c0 | 77 68 69 6c 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 61 6e 64 20 3c 63 6f 64 65 20 63 | while</span></code>,.and.<code.c |
| b22e0 | 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | lass="zig"><span.class="tok-kw"> |
| b2300 | 66 6f 72 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 65 78 70 72 65 73 73 69 6f 6e 73 2e 0a 20 | for</span></code>.expressions... |
| b2320 | 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 |
| b2340 | 69 3e 49 66 20 75 73 65 64 20 61 66 74 65 72 20 61 6e 20 69 66 20 65 78 70 72 65 73 73 69 6f 6e | i>If.used.after.an.if.expression |
| b2360 | 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 75 74 | ,.the.else.branch.will.be.execut |
| b2380 | 65 64 20 69 66 20 74 68 65 20 74 65 73 74 20 76 61 6c 75 65 20 72 65 74 75 72 6e 73 20 66 61 6c | ed.if.the.test.value.returns.fal |
| b23a0 | 73 65 2c 20 6e 75 6c 6c 2c 20 6f 72 20 61 6e 20 65 72 72 6f 72 2e 3c 2f 6c 69 3e 0a 20 20 20 20 | se,.null,.or.an.error.</li>..... |
| b23c0 | 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 49 66 20 75 73 65 64 20 77 69 74 68 69 6e 20 61 20 73 | ..........<li>If.used.within.a.s |
| b23e0 | 77 69 74 63 68 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 | witch.expression,.the.else.branc |
| b2400 | 68 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 | h.will.be.executed.if.the.test.v |
| b2420 | 61 6c 75 65 20 6d 61 74 63 68 65 73 20 6e 6f 20 6f 74 68 65 72 20 63 61 73 65 73 2e 3c 2f 6c 69 | alue.matches.no.other.cases.</li |
| b2440 | 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 49 66 20 75 73 65 64 20 61 66 74 65 | >...............<li>If.used.afte |
| b2460 | 72 20 61 20 6c 6f 6f 70 20 65 78 70 72 65 73 73 69 6f 6e 2c 20 74 68 65 20 65 6c 73 65 20 62 72 | r.a.loop.expression,.the.else.br |
| b2480 | 61 6e 63 68 20 77 69 6c 6c 20 62 65 20 65 78 65 63 75 74 65 64 20 69 66 20 74 68 65 20 6c 6f 6f | anch.will.be.executed.if.the.loo |
| b24a0 | 70 20 66 69 6e 69 73 68 65 73 20 77 69 74 68 6f 75 74 20 62 72 65 61 6b 69 6e 67 2e 3c 2f 6c 69 | p.finishes.without.breaking.</li |
| b24c0 | 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 65 65 20 61 6c 73 6f 20 3c 61 20 | >...............<li>See.also.<a. |
| b24e0 | 68 72 65 66 3d 22 23 69 66 22 3e 69 66 3c 2f 61 3e 2c 20 3c 61 20 68 72 65 66 3d 22 23 73 77 69 | href="#if">if</a>,.<a.href="#swi |
| b2500 | 74 63 68 22 3e 73 77 69 74 63 68 3c 2f 61 3e 2c 20 3c 61 20 68 72 65 66 3d 22 23 77 68 69 6c 65 | tch">switch</a>,.<a.href="#while |
| b2520 | 22 3e 77 68 69 6c 65 3c 2f 61 3e 2c 20 3c 61 20 68 72 65 66 3d 22 23 66 6f 72 22 3e 66 6f 72 3c | ">while</a>,.<a.href="#for">for< |
| b2540 | 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>...... |
| b2560 | 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>........ |
| b2580 | 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 | .<tr>...........<td>............ |
| b25a0 | 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c | .<pre><code.class="zig"><span.cl |
| b25c0 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6e 75 6d 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c | ass="tok-kw">enum</span></code>< |
| b25e0 | 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 | /pre>...........</td>........... |
| b2600 | 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | <td>.............<code.class="zi |
| b2620 | 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6e 75 6d 3c 2f 73 70 | g"><span.class="tok-kw">enum</sp |
| b2640 | 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 70 65 2e | an></code>.defines.an.enum.type. |
| b2660 | 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>............... |
| b2680 | 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 65 6e 75 | <li>See.also.<a.href="#enum">enu |
| b26a0 | 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 20 20 20 | m</a></li>.............</ul>.... |
| b26c0 | 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>...... |
| b26e0 | 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 | ...<tr>...........<td>.......... |
| b2700 | 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 | ...<pre><code.class="zig"><span. |
| b2720 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 64 65 66 65 72 3c 2f 73 70 61 6e 3e 3c 2f | class="tok-kw">errdefer</span></ |
| b2740 | 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>..... |
| b2760 | 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 | ......<td>.............<code.cla |
| b2780 | 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 | ss="zig"><span.class="tok-kw">er |
| b27a0 | 72 64 65 66 65 72 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 77 69 6c 6c 20 65 78 65 63 75 74 | rdefer</span></code>.will.execut |
| b27c0 | 65 20 61 6e 20 65 78 70 72 65 73 73 69 6f 6e 20 77 68 65 6e 20 63 6f 6e 74 72 6f 6c 20 66 6c 6f | e.an.expression.when.control.flo |
| b27e0 | 77 20 6c 65 61 76 65 73 20 74 68 65 20 63 75 72 72 65 6e 74 20 62 6c 6f 63 6b 20 69 66 20 74 68 | w.leaves.the.current.block.if.th |
| b2800 | 65 20 66 75 6e 63 74 69 6f 6e 20 72 65 74 75 72 6e 73 20 61 6e 20 65 72 72 6f 72 2e 0a 20 20 20 | e.function.returns.an.error..... |
| b2820 | 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> |
| b2840 | 53 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 65 72 72 64 65 66 65 72 22 3e 65 72 72 | See.also.<a.href="#errdefer">err |
| b2860 | 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 6c 3e | defer</a></li>.............</ul> |
| b2880 | 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>.. |
| b28a0 | 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 | .......<tr>...........<td>...... |
| b28c0 | 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 | .......<pre><code.class="zig"><s |
| b28e0 | 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 3c | pan.class="tok-kw">error</span>< |
| b2900 | 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 | /code></pre>...........</td>.... |
| b2920 | 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c | .......<td>.............<code.cl |
| b2940 | 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 | ass="zig"><span.class="tok-kw">e |
| b2960 | 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 6e 20 65 72 | rror</span></code>.defines.an.er |
| b2980 | 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 20 20 20 20 | ror.type..............<ul>...... |
| b29a0 | 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="# |
| b29c0 | 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 20 20 20 20 | Errors">Errors</a></li>......... |
| b29e0 | 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>....... |
| b2a00 | 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>...........< |
| b2a20 | 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 | td>.............<pre><code.class |
| b2a40 | 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 78 70 6f | ="zig"><span.class="tok-kw">expo |
| b2a60 | 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 20 20 20 20 | rt</span></code></pre>.......... |
| b2a80 | 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>........... |
| b2aa0 | 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ..<code.class="zig"><span.class= |
| b2ac0 | 22 74 6f 6b 2d 6b 77 22 3e 65 78 70 6f 72 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6d 61 | "tok-kw">export</span></code>.ma |
| b2ae0 | 6b 65 73 20 61 20 66 75 6e 63 74 69 6f 6e 20 6f 72 20 76 61 72 69 61 62 6c 65 20 65 78 74 65 72 | kes.a.function.or.variable.exter |
| b2b00 | 6e 61 6c 6c 79 20 76 69 73 69 62 6c 65 20 69 6e 20 74 68 65 20 67 65 6e 65 72 61 74 65 64 20 6f | nally.visible.in.the.generated.o |
| b2b20 | 62 6a 65 63 74 20 66 69 6c 65 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 45 78 70 6f 72 74 65 64 | bject.file..............Exported |
| b2b40 | 20 66 75 6e 63 74 69 6f 6e 73 20 64 65 66 61 75 6c 74 20 74 6f 20 74 68 65 20 43 20 63 61 6c 6c | .functions.default.to.the.C.call |
| b2b60 | 69 6e 67 20 63 6f 6e 76 65 6e 74 69 6f 6e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e | ing.convention..............<ul> |
| b2b80 | 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 |
| b2ba0 | 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></ |
| b2bc0 | 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>........... |
| b2be0 | 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> |
| b2c00 | 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 | ...........<td>.............<pre |
| b2c20 | 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ><code.class="zig"><span.class=" |
| b2c40 | 74 6f 6b 2d 6b 77 22 3e 65 78 74 65 72 6e 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 | tok-kw">extern</span></code></pr |
| b2c60 | 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 |
| b2c80 | 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e | >.............<code.class="zig"> |
| b2ca0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 78 74 65 72 6e 3c 2f 73 70 61 | <span.class="tok-kw">extern</spa |
| b2cc0 | 6e 3e 3c 2f 63 6f 64 65 3e 20 63 61 6e 20 62 65 20 75 73 65 64 20 74 6f 20 64 65 63 6c 61 72 65 | n></code>.can.be.used.to.declare |
| b2ce0 | 20 61 20 66 75 6e 63 74 69 6f 6e 20 6f 72 20 76 61 72 69 61 62 6c 65 20 74 68 61 74 20 77 69 6c | .a.function.or.variable.that.wil |
| b2d00 | 6c 20 62 65 20 72 65 73 6f 6c 76 65 64 20 61 74 20 6c 69 6e 6b 20 74 69 6d 65 2c 20 77 68 65 6e | l.be.resolved.at.link.time,.when |
| b2d20 | 20 6c 69 6e 6b 69 6e 67 20 73 74 61 74 69 63 61 6c 6c 79 0a 20 20 20 20 20 20 20 20 20 20 20 20 | .linking.statically............. |
| b2d40 | 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 20 64 79 6e 61 | or.at.runtime,.when.linking.dyna |
| b2d60 | 6d 69 63 61 6c 6c 79 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 | mically..............<ul>....... |
| b2d80 | 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 46 | ........<li>See.also.<a.href="#F |
| b2da0 | 75 6e 63 74 69 6f 6e 73 22 3e 46 75 6e 63 74 69 6f 6e 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 | unctions">Functions</a></li>.... |
| b2dc0 | 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>.. |
| b2de0 | 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>....... |
| b2e00 | 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 20 | ....<td>.............<pre><code. |
| b2e20 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c | class="zig"><span.class="tok-nul |
| b2e40 | 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>.... |
| b2e60 | 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>..... |
| b2e80 | 20 20 20 20 20 20 20 20 54 68 65 20 62 6f 6f 6c 65 61 6e 20 76 61 6c 75 65 20 3c 63 6f 64 65 20 | ........The.boolean.value.<code. |
| b2ea0 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c | class="zig"><span.class="tok-nul |
| b2ec0 | 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 20 20 | l">false</span></code>.......... |
| b2ee0 | 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 65 65 20 61 | ....<ul>...............<li>See.a |
| b2f00 | 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 50 72 69 6d 69 74 69 76 65 2d 56 61 6c 75 65 73 22 3e | lso.<a.href="#Primitive-Values"> |
| b2f20 | 50 72 69 6d 69 74 69 76 65 20 56 61 6c 75 65 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | Primitive.Values</a></li>....... |
| b2f40 | 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>..... |
| b2f60 | 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>.......... |
| b2f80 | 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 | .<td>.............<pre><code.cla |
| b2fa0 | 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e | ss="zig"><span.class="tok-kw">fn |
| b2fc0 | 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>...........< |
| b2fe0 | 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>............. |
| b3000 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | <code.class="zig"><span.class="t |
| b3020 | 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 72 65 73 | ok-kw">fn</span></code>.declares |
| b3040 | 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 0a 20 20 | .a.function..............<ul>... |
| b3060 | 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 |
| b3080 | 3d 22 23 46 75 6e 63 74 69 6f 6e 73 22 3e 46 75 6e 63 74 69 6f 6e 73 3c 2f 61 3e 3c 2f 6c 69 3e | ="#Functions">Functions</a></li> |
| b30a0 | 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 |
| b30c0 | 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>... |
| b30e0 | 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 |
| b3100 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ode.class="zig"><span.class="tok |
| b3120 | 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 20 20 20 | -kw">for</span></code></pre>.... |
| b3140 | 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>..... |
| b3160 | 20 20 20 20 20 20 20 20 41 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 | ........A.<code.class="zig"><spa |
| b3180 | 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 |
| b31a0 | 65 3e 20 65 78 70 72 65 73 73 69 6f 6e 20 63 61 6e 20 62 65 20 75 73 65 64 20 74 6f 20 69 74 65 | e>.expression.can.be.used.to.ite |
| b31c0 | 72 61 74 65 20 6f 76 65 72 20 74 68 65 20 65 6c 65 6d 65 6e 74 73 20 6f 66 20 61 20 73 6c 69 63 | rate.over.the.elements.of.a.slic |
| b31e0 | 65 2c 20 61 72 72 61 79 2c 20 6f 72 20 74 75 70 6c 65 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | e,.array,.or.tuple.............. |
| b3200 | 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. |
| b3220 | 3c 61 20 68 72 65 66 3d 22 23 66 6f 72 22 3e 66 6f 72 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 | <a.href="#for">for</a></li>..... |
| b3240 | 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>... |
| b3260 | 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>........ |
| b3280 | 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 | ...<td>.............<pre><code.c |
| b32a0 | 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | lass="zig"><span.class="tok-kw"> |
| b32c0 | 69 66 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 | if</span></code></pre>.......... |
| b32e0 | 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>........... |
| b3300 | 20 20 41 6e 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 | ..An.<code.class="zig"><span.cla |
| b3320 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 65 78 70 | ss="tok-kw">if</span></code>.exp |
| b3340 | 72 65 73 73 69 6f 6e 20 63 61 6e 20 74 65 73 74 20 62 6f 6f 6c 65 61 6e 20 65 78 70 72 65 73 73 | ression.can.test.boolean.express |
| b3360 | 69 6f 6e 73 2c 20 6f 70 74 69 6f 6e 61 6c 20 76 61 6c 75 65 73 2c 20 6f 72 20 65 72 72 6f 72 20 | ions,.optional.values,.or.error. |
| b3380 | 75 6e 69 6f 6e 73 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 46 6f 72 20 6f 70 74 69 6f 6e 61 6c | unions..............For.optional |
| b33a0 | 20 76 61 6c 75 65 73 20 6f 72 20 65 72 72 6f 72 20 75 6e 69 6f 6e 73 2c 20 74 68 65 20 69 66 20 | .values.or.error.unions,.the.if. |
| b33c0 | 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 61 | expression.can.capture.the.unwra |
| b33e0 | 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 20 | pped.value..............<ul>.... |
| b3400 | 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= |
| b3420 | 22 23 69 66 22 3e 69 66 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f | "#if">if</a></li>.............</ |
| b3440 | 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 |
| b3460 | 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 | >.........<tr>...........<td>... |
| b3480 | 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | ..........<pre><code.class="zig" |
| b34a0 | 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 |
| b34c0 | 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> |
| b34e0 | 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 | ...........<td>.............<cod |
| b3500 | 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | e.class="zig"><span.class="tok-k |
| b3520 | 77 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 | w">inline</span></code>.can.be.u |
| b3540 | 73 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 | sed.to.label.a.loop.expression.s |
| b3560 | 75 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 | uch.that.it.will.be.unrolled.at. |
| b3580 | 63 6f 6d 70 69 6c 65 20 74 69 6d 65 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 49 74 20 63 61 6e | compile.time..............It.can |
| b35a0 | 20 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 | .also.be.used.to.force.a.functio |
| b35c0 | 6e 20 74 6f 20 62 65 20 69 6e 6c 69 6e 65 64 20 61 74 20 61 6c 6c 20 63 61 6c 6c 20 73 69 74 65 | n.to.be.inlined.at.all.call.site |
| b35e0 | 73 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | s..............<ul>............. |
| b3600 | 20 20 3c 6c 69 3e 53 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 69 6e 6c 69 6e 65 2d | ..<li>See.also.<a.href="#inline- |
| b3620 | 77 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 | while">inline.while</a>,.<a.href |
| b3640 | 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 2c 20 3c | ="#inline-for">inline.for</a>,.< |
| b3660 | 61 20 68 72 65 66 3d 22 23 46 75 6e 63 74 69 6f 6e 73 22 3e 46 75 6e 63 74 69 6f 6e 73 3c 2f 61 | a.href="#Functions">Functions</a |
| b3680 | 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>........ |
| b36a0 | 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>.........< |
| b36c0 | 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c | tr>...........<td>.............< |
| b36e0 | 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 | pre><code.class="zig"><span.clas |
| b3700 | 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 3c 2f 63 6f 64 65 3e | s="tok-kw">noalias</span></code> |
| b3720 | 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 | </pre>...........</td>.......... |
| b3740 | 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 54 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 | .<td>.............The.<code.clas |
| b3760 | 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 6e 6f 61 | s="zig"><span.class="tok-kw">noa |
| b3780 | 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 20 | lias</span></code>.keyword...... |
| b37a0 | 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 54 | ........<ul>...............<li>T |
| b37c0 | 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 61 | ODO.add.documentation.for.noalia |
| b37e0 | 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 20 | s</li>.............</ul>........ |
| b3800 | 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>.........< |
| b3820 | 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c | tr>...........<td>.............< |
| b3840 | 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 | pre><code.class="zig"><span.clas |
| b3860 | 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 |
| b3880 | 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>........ |
| b38a0 | 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 54 68 65 20 3c 63 6f 64 65 20 63 6c | ...<td>.............The.<code.cl |
| b38c0 | 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 6e | ass="zig"><span.class="tok-kw">n |
| b38e0 | 6f 73 75 73 70 65 6e 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6b 65 79 77 6f 72 64 2e 0a | osuspend</span></code>.keyword.. |
| b3900 | 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>...............< |
| b3920 | 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 72 20 6e 6f | li>TODO.add.documentation.for.no |
| b3940 | 73 75 73 70 65 6e 64 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 | suspend</li>.............</ul>.. |
| b3960 | 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>.... |
| b3980 | 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 | .....<tr>...........<td>........ |
| b39a0 | 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 | .....<pre><code.class="zig"><spa |
| b39c0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 3c 2f | n.class="tok-null">null</span></ |
| b39e0 | 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>..... |
| b3a00 | 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 6f 70 74 69 6f | ......<td>.............The.optio |
| b3a20 | 6e 61 6c 20 76 61 6c 75 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 | nal.value.<code.class="zig"><spa |
| b3a40 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 3c 2f | n.class="tok-null">null</span></ |
| b3a60 | 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 | code>..............<ul>......... |
| b3a80 | 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 6e 75 6c | ......<li>See.also.<a.href="#nul |
| b3aa0 | 6c 22 3e 6e 75 6c 6c 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 | l">null</a></li>.............</u |
| b3ac0 | 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> |
| b3ae0 | 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 | .........<tr>...........<td>.... |
| b3b00 | 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e | .........<pre><code.class="zig"> |
| b3b20 | 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 3c 2f | <span.class="tok-kw">or</span></ |
| b3b40 | 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>..... |
| b3b60 | 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 54 68 65 20 62 6f 6f 6c 65 | ......<td>.............The.boole |
| b3b80 | 61 6e 20 6f 70 65 72 61 74 6f 72 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 | an.operator.<code.class="zig"><s |
| b3ba0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 6f 72 3c 2f 73 70 61 6e 3e 3c 2f 63 6f | pan.class="tok-kw">or</span></co |
| b3bc0 | 64 65 3e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 | de>..............<ul>........... |
| b3be0 | 20 20 20 20 3c 6c 69 3e 53 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 4f 70 65 72 61 | ....<li>See.also.<a.href="#Opera |
| b3c00 | 74 6f 72 73 22 3e 4f 70 65 72 61 74 6f 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 | tors">Operators</a></li>........ |
| b3c20 | 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>...... |
| b3c40 | 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 | ...</tr>.........<tr>........... |
| b3c60 | 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 | <td>.............<pre><code.clas |
| b3c80 | 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 6f 72 65 | s="zig"><span.class="tok-kw">ore |
| b3ca0 | 6c 73 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 | lse</span></code></pre>......... |
| b3cc0 | 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>.......... |
| b3ce0 | 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | ...<code.class="zig"><span.class |
| b3d00 | 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 65 3e 20 63 | ="tok-kw">orelse</span></code>.c |
| b3d20 | 61 6e 20 62 65 20 75 73 65 64 20 74 6f 20 65 76 61 6c 75 61 74 65 20 61 6e 20 65 78 70 72 65 73 | an.be.used.to.evaluate.an.expres |
| b3d40 | 73 69 6f 6e 20 69 66 20 74 68 65 20 65 78 70 72 65 73 73 69 6f 6e 20 62 65 66 6f 72 65 20 69 74 | sion.if.the.expression.before.it |
| b3d60 | 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 20 20 20 20 20 | .evaluates.to.null.............. |
| b3d80 | 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. |
| b3da0 | 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</ |
| b3dc0 | 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 65 72 61 74 6f | a>,.<a.href="#Operators">Operato |
| b3de0 | 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 | rs</a></li>.............</ul>... |
| b3e00 | 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>..... |
| b3e20 | 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 | ....<tr>...........<td>......... |
| b3e40 | 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e | ....<pre><code.class="zig"><span |
| b3e60 | 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 63 | .class="tok-kw">packed</span></c |
| b3e80 | 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 | ode></pre>...........</td>...... |
| b3ea0 | 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 54 68 65 20 3c 63 6f 64 65 20 | .....<td>.............The.<code. |
| b3ec0 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | class="zig"><span.class="tok-kw" |
| b3ee0 | 3e 70 61 63 6b 65 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6b 65 79 77 6f 72 64 20 62 65 | >packed</span></code>.keyword.be |
| b3f00 | 66 6f 72 65 20 61 20 73 74 72 75 63 74 20 64 65 66 69 6e 69 74 69 6f 6e 20 63 68 61 6e 67 65 73 | fore.a.struct.definition.changes |
| b3f20 | 20 74 68 65 20 73 74 72 75 63 74 27 73 20 69 6e 2d 6d 65 6d 6f 72 79 20 6c 61 79 6f 75 74 0a 20 | .the.struct's.in-memory.layout.. |
| b3f40 | 20 20 20 20 20 20 20 20 20 20 20 74 6f 20 74 68 65 20 67 75 61 72 61 6e 74 65 65 64 20 3c 63 6f | ...........to.the.guaranteed.<co |
| b3f60 | 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | de.class="zig"><span.class="tok- |
| b3f80 | 6b 77 22 3e 70 61 63 6b 65 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6c 61 79 6f 75 74 2e | kw">packed</span></code>.layout. |
| b3fa0 | 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>............... |
| b3fc0 | 3c 6c 69 3e 53 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 70 61 63 6b 65 64 2d 73 74 | <li>See.also.<a.href="#packed-st |
| b3fe0 | 72 75 63 74 22 3e 70 61 63 6b 65 64 20 73 74 72 75 63 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 | ruct">packed.struct</a></li>.... |
| b4000 | 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>.. |
| b4020 | 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>....... |
| b4040 | 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 20 | ....<td>.............<pre><code. |
| b4060 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | class="zig"><span.class="tok-kw" |
| b4080 | 3e 70 75 62 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 | >pub</span></code></pre>........ |
| b40a0 | 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>......... |
| b40c0 | 20 20 20 20 54 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 | ....The.<code.class="zig"><span. |
| b40e0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e | class="tok-kw">pub</span></code> |
| b4100 | 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 61 | .in.front.of.a.top.level.declara |
| b4120 | 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 6c | tion.makes.the.declaration.avail |
| b4140 | 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 72 | able.............to.reference.fr |
| b4160 | 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 65 | om.a.different.file.than.the.one |
| b4180 | 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 20 | .it.is.declared.in.............. |
| b41a0 | 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. |
| b41c0 | 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 69 | <a.href="#import">import</a></li |
| b41e0 | 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>...........</ |
| b4200 | 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>.. |
| b4220 | 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c | .........<td>.............<pre>< |
| b4240 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | code.class="zig"><span.class="to |
| b4260 | 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 3e | k-kw">resume</span></code></pre> |
| b4280 | 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>. |
| b42a0 | 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 | ............<code.class="zig"><s |
| b42c0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 73 75 6d 65 3c 2f 73 70 61 6e 3e | pan.class="tok-kw">resume</span> |
| b42e0 | 3c 2f 63 6f 64 65 3e 20 77 69 6c 6c 20 63 6f 6e 74 69 6e 75 65 20 65 78 65 63 75 74 69 6f 6e 20 | </code>.will.continue.execution. |
| b4300 | 6f 66 20 61 20 66 75 6e 63 74 69 6f 6e 20 66 72 61 6d 65 20 61 66 74 65 72 20 74 68 65 20 70 6f | of.a.function.frame.after.the.po |
| b4320 | 69 6e 74 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 77 61 73 20 73 75 73 70 65 6e 64 65 64 2e 0a | int.the.function.was.suspended.. |
| b4340 | 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>...............< |
| b4360 | 6c 69 3e 53 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 53 75 73 70 65 6e 64 2d 61 6e | li>See.also.<a.href="#Suspend-an |
| b4380 | 64 2d 52 65 73 75 6d 65 22 3e 53 75 73 70 65 6e 64 20 61 6e 64 20 52 65 73 75 6d 65 3c 2f 61 3e | d-Resume">Suspend.and.Resume</a> |
| b43a0 | 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>......... |
| b43c0 | 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 |
| b43e0 | 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 | r>...........<td>.............<p |
| b4400 | 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | re><code.class="zig"><span.class |
| b4420 | 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f | ="tok-kw">return</span></code></ |
| b4440 | 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c | pre>...........</td>...........< |
| b4460 | 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | td>.............<code.class="zig |
| b4480 | 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 | "><span.class="tok-kw">return</s |
| b44a0 | 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 65 78 69 74 73 20 61 20 66 75 6e 63 74 69 6f 6e 20 77 69 74 | pan></code>.exits.a.function.wit |
| b44c0 | 68 20 61 20 76 61 6c 75 65 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 | h.a.value..............<ul>..... |
| b44e0 | 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=" |
| b4500 | 23 46 75 6e 63 74 69 6f 6e 73 22 3e 46 75 6e 63 74 69 6f 6e 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 | #Functions">Functions</a></li>.. |
| b4520 | 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> |
| b4540 | 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>..... |
| b4560 | 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 | ......<td>.............<pre><cod |
| b4580 | 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | e.class="zig"><span.class="tok-k |
| b45a0 | 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 64 65 3e 3c 2f 70 72 | w">linksection</span></code></pr |
| b45c0 | 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 |
| b45e0 | 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 54 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a | >.............The.<code.class="z |
| b4600 | 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 6c 69 6e 6b 73 65 63 | ig"><span.class="tok-kw">linksec |
| b4620 | 74 69 6f 6e 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6b 65 79 77 6f 72 64 2e 0a 20 20 20 20 | tion</span></code>.keyword...... |
| b4640 | 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 54 | ........<ul>...............<li>T |
| b4660 | 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 6c 69 6e 6b 73 65 | ODO.add.documentation.for.linkse |
| b4680 | 63 74 69 6f 6e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 | ction</li>.............</ul>.... |
| b46a0 | 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>...... |
| b46c0 | 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 | ...<tr>...........<td>.......... |
| b46e0 | 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 | ...<pre><code.class="zig"><span. |
| b4700 | 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 2f 63 6f | class="tok-kw">struct</span></co |
| b4720 | 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>....... |
| b4740 | 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 | ....<td>.............<code.class |
| b4760 | 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 74 72 75 | ="zig"><span.class="tok-kw">stru |
| b4780 | 63 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 64 65 66 69 6e 65 73 20 61 20 73 74 72 75 63 | ct</span></code>.defines.a.struc |
| b47a0 | 74 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | t..............<ul>............. |
| b47c0 | 20 20 3c 6c 69 3e 53 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 73 74 72 75 63 74 22 | ..<li>See.also.<a.href="#struct" |
| b47e0 | 3e 73 74 72 75 63 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 | >struct</a></li>.............</u |
| b4800 | 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> |
| b4820 | 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 | .........<tr>...........<td>.... |
| b4840 | 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e | .........<pre><code.class="zig"> |
| b4860 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 75 73 70 65 6e 64 3c 2f 73 70 | <span.class="tok-kw">suspend</sp |
| b4880 | 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> |
| b48a0 | 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 | ...........<td>.............<cod |
| b48c0 | 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | e.class="zig"><span.class="tok-k |
| b48e0 | 77 22 3e 73 75 73 70 65 6e 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 77 69 6c 6c 20 63 61 | w">suspend</span></code>.will.ca |
| b4900 | 75 73 65 20 63 6f 6e 74 72 6f 6c 20 66 6c 6f 77 20 74 6f 20 72 65 74 75 72 6e 20 74 6f 20 74 68 | use.control.flow.to.return.to.th |
| b4920 | 65 20 63 61 6c 6c 20 73 69 74 65 20 6f 72 20 72 65 73 75 6d 65 72 20 6f 66 20 74 68 65 20 66 75 | e.call.site.or.resumer.of.the.fu |
| b4940 | 6e 63 74 69 6f 6e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d | nction..............<code.class= |
| b4960 | 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 75 73 70 65 | "zig"><span.class="tok-kw">suspe |
| b4980 | 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 65 | nd</span></code>.can.also.be.use |
| b49a0 | 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 69 | d.before.a.block.within.a.functi |
| b49c0 | 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 6e | on,.............to.allow.the.fun |
| b49e0 | 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 65 | ction.access.to.its.frame.before |
| b4a00 | 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 6c | .control.flow.returns.to.the.cal |
| b4a20 | 6c 20 73 69 74 65 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 | l.site..............<ul>........ |
| b4a40 | 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 53 75 | .......<li>See.also.<a.href="#Su |
| b4a60 | 73 70 65 6e 64 2d 61 6e 64 2d 52 65 73 75 6d 65 22 3e 53 75 73 70 65 6e 64 20 61 6e 64 20 52 65 | spend-and-Resume">Suspend.and.Re |
| b4a80 | 73 75 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 2f 75 6c 3e 0a | sume</a></li>.............</ul>. |
| b4aa0 | 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>... |
| b4ac0 | 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 | ......<tr>...........<td>....... |
| b4ae0 | 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 | ......<pre><code.class="zig"><sp |
| b4b00 | 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>< |
| b4b20 | 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 | /code></pre>...........</td>.... |
| b4b40 | 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 41 20 3c 63 6f 64 65 20 | .......<td>.............A.<code. |
| b4b60 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | class="zig"><span.class="tok-kw" |
| b4b80 | 3e 73 77 69 74 63 68 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 65 78 70 72 65 73 73 69 6f 6e | >switch</span></code>.expression |
| b4ba0 | 20 63 61 6e 20 62 65 20 75 73 65 64 20 74 6f 20 74 65 73 74 20 76 61 6c 75 65 73 20 6f 66 20 61 | .can.be.used.to.test.values.of.a |
| b4bc0 | 20 63 6f 6d 6d 6f 6e 20 74 79 70 65 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 20 | .common.type..............<code. |
| b4be0 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | class="zig"><span.class="tok-kw" |
| b4c00 | 3e 73 77 69 74 63 68 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 63 61 73 65 73 20 63 61 6e 20 | >switch</span></code>.cases.can. |
| b4c20 | 63 61 70 74 75 72 65 20 66 69 65 6c 64 20 76 61 6c 75 65 73 20 6f 66 20 61 20 3c 61 20 68 72 65 | capture.field.values.of.a.<a.hre |
| b4c40 | 66 3d 22 23 54 61 67 67 65 64 2d 75 6e 69 6f 6e 22 3e 54 61 67 67 65 64 20 75 6e 69 6f 6e 3c 2f | f="#Tagged-union">Tagged.union</ |
| b4c60 | 61 3e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 | a>..............<ul>............ |
| b4c80 | 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 77 69 74 63 68 | ...<li>See.also.<a.href="#switch |
| b4ca0 | 22 3e 73 77 69 74 63 68 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f | ">switch</a></li>.............</ |
| b4cc0 | 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 |
| b4ce0 | 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 | >.........<tr>...........<td>... |
| b4d00 | 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | ..........<pre><code.class="zig" |
| b4d20 | 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 |
| b4d40 | 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>.. |
| b4d60 | 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 63 | .........<td>.............The.<c |
| b4d80 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ode.class="zig"><span.class="tok |
| b4da0 | 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 77 6f 72 64 20 | -kw">test</span></code>.keyword. |
| b4dc0 | 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 2d 6c 65 76 65 | can.be.used.to.denote.a.top-leve |
| b4de0 | 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 20 75 73 65 64 | l.block.of.code.............used |
| b4e00 | 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 73 20 65 78 70 | .to.make.sure.behavior.meets.exp |
| b4e20 | 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 0a 20 20 20 20 | ectations..............<ul>..... |
| b4e40 | 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=" |
| b4e60 | 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 3e 0a 20 20 20 | #Zig-Test">Zig.Test</a></li>.... |
| b4e80 | 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>.. |
| b4ea0 | 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>....... |
| b4ec0 | 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 20 | ....<td>.............<pre><code. |
| b4ee0 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | class="zig"><span.class="tok-kw" |
| b4f00 | 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 2f 70 72 65 3e | >threadlocal</span></code></pre> |
| b4f20 | 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>. |
| b4f40 | 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 | ............<code.class="zig"><s |
| b4f60 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 68 72 65 61 64 6c 6f 63 61 6c 3c 2f | pan.class="tok-kw">threadlocal</ |
| b4f80 | 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 63 61 6e 20 62 65 20 75 73 65 64 20 74 6f 20 73 70 65 63 | span></code>.can.be.used.to.spec |
| b4fa0 | 69 66 79 20 61 20 76 61 72 69 61 62 6c 65 20 61 73 20 74 68 72 65 61 64 2d 6c 6f 63 61 6c 2e 0a | ify.a.variable.as.thread-local.. |
| b4fc0 | 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>...............< |
| b4fe0 | 6c 69 3e 53 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 54 68 72 65 61 64 2d 4c 6f 63 | li>See.also.<a.href="#Thread-Loc |
| b5000 | 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 61 | al-Variables">Thread.Local.Varia |
| b5020 | 62 6c 65 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a | bles</a></li>.............</ul>. |
| b5040 | 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>... |
| b5060 | 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 | ......<tr>...........<td>....... |
| b5080 | 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 | ......<pre><code.class="zig"><sp |
| b50a0 | 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>< |
| b50c0 | 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 | /code></pre>...........</td>.... |
| b50e0 | 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 62 6f 6f 6c | .......<td>.............The.bool |
| b5100 | 65 61 6e 20 76 61 6c 75 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 | ean.value.<code.class="zig"><spa |
| b5120 | 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></ |
| b5140 | 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 | code>..............<ul>......... |
| b5160 | 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 50 72 69 | ......<li>See.also.<a.href="#Pri |
| b5180 | 6d 69 74 69 76 65 2d 56 61 6c 75 65 73 22 3e 50 72 69 6d 69 74 69 76 65 20 56 61 6c 75 65 73 3c | mitive-Values">Primitive.Values< |
| b51a0 | 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>...... |
| b51c0 | 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>........ |
| b51e0 | 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 | .<tr>...........<td>............ |
| b5200 | 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c | .<pre><code.class="zig"><span.cl |
| b5220 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f | ass="tok-kw">try</span></code></ |
| b5240 | 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c | pre>...........</td>...........< |
| b5260 | 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | td>.............<code.class="zig |
| b5280 | 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e | "><span.class="tok-kw">try</span |
| b52a0 | 3e 3c 2f 63 6f 64 65 3e 20 65 76 61 6c 75 61 74 65 73 20 61 6e 20 65 72 72 6f 72 20 75 6e 69 6f | ></code>.evaluates.an.error.unio |
| b52c0 | 6e 20 65 78 70 72 65 73 73 69 6f 6e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 49 66 20 69 74 20 | n.expression..............If.it. |
| b52e0 | 69 73 20 61 6e 20 65 72 72 6f 72 2c 20 69 74 20 72 65 74 75 72 6e 73 20 66 72 6f 6d 20 74 68 65 | is.an.error,.it.returns.from.the |
| b5300 | 20 63 75 72 72 65 6e 74 20 66 75 6e 63 74 69 6f 6e 20 77 69 74 68 20 74 68 65 20 73 61 6d 65 20 | .current.function.with.the.same. |
| b5320 | 65 72 72 6f 72 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 4f 74 68 65 72 77 69 73 65 2c 20 74 68 | error..............Otherwise,.th |
| b5340 | 65 20 65 78 70 72 65 73 73 69 6f 6e 20 72 65 73 75 6c 74 73 20 69 6e 20 74 68 65 20 75 6e 77 72 | e.expression.results.in.the.unwr |
| b5360 | 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>... |
| b5380 | 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 |
| b53a0 | 3d 22 23 74 72 79 22 3e 74 72 79 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 | ="#try">try</a></li>............ |
| b53c0 | 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>.........< |
| b53e0 | 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e | /tr>.........<tr>...........<td> |
| b5400 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a | .............<pre><code.class="z |
| b5420 | 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 75 6e 64 65 66 | ig"><span.class="tok-null">undef |
| b5440 | 69 6e 65 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 | ined</span></code></pre>........ |
| b5460 | 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>......... |
| b5480 | 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 | ....<code.class="zig"><span.clas |
| b54a0 | 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 |
| b54c0 | 6f 64 65 3e 20 63 61 6e 20 62 65 20 75 73 65 64 20 74 6f 20 6c 65 61 76 65 20 61 20 76 61 6c 75 | ode>.can.be.used.to.leave.a.valu |
| b54e0 | 65 20 75 6e 69 6e 69 74 69 61 6c 69 7a 65 64 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c | e.uninitialized..............<ul |
| b5500 | 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 65 65 20 61 6c 73 6f 20 3c 61 20 | >...............<li>See.also.<a. |
| b5520 | 68 72 65 66 3d 22 23 75 6e 64 65 66 69 6e 65 64 22 3e 75 6e 64 65 66 69 6e 65 64 3c 2f 61 3e 3c | href="#undefined">undefined</a>< |
| b5540 | 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>.......... |
| b5560 | 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 | .</td>.........</tr>.........<tr |
| b5580 | 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 |
| b55a0 | 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | e><code.class="zig"><span.class= |
| b55c0 | 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 70 72 | "tok-kw">union</span></code></pr |
| b55e0 | 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 |
| b5600 | 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e | >.............<code.class="zig"> |
| b5620 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 69 6f 6e 3c 2f 73 70 61 6e | <span.class="tok-kw">union</span |
| b5640 | 3e 3c 2f 63 6f 64 65 3e 20 64 65 66 69 6e 65 73 20 61 20 75 6e 69 6f 6e 2e 0a 20 20 20 20 20 20 | ></code>.defines.a.union........ |
| b5660 | 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 |
| b5680 | 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 75 6e 69 6f 6e 22 3e 75 6e 69 6f 6e 3c 2f 61 3e | .also.<a.href="#union">union</a> |
| b56a0 | 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>......... |
| b56c0 | 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 |
| b56e0 | 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 | r>...........<td>.............<p |
| b5700 | 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | re><code.class="zig"><span.class |
| b5720 | 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f | ="tok-kw">unreachable</span></co |
| b5740 | 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>....... |
| b5760 | 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 | ....<td>.............<code.class |
| b5780 | 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 72 65 | ="zig"><span.class="tok-kw">unre |
| b57a0 | 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 63 61 6e 20 62 65 20 75 73 65 | achable</span></code>.can.be.use |
| b57c0 | 64 20 74 6f 20 61 73 73 65 72 74 20 74 68 61 74 20 63 6f 6e 74 72 6f 6c 20 66 6c 6f 77 20 77 69 | d.to.assert.that.control.flow.wi |
| b57e0 | 6c 6c 20 6e 65 76 65 72 20 68 61 70 70 65 6e 20 75 70 6f 6e 20 61 20 70 61 72 74 69 63 75 6c 61 | ll.never.happen.upon.a.particula |
| b5800 | 72 20 6c 6f 63 61 74 69 6f 6e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 44 65 70 65 6e 64 69 6e | r.location..............Dependin |
| b5820 | 67 20 6f 6e 20 74 68 65 20 62 75 69 6c 64 20 6d 6f 64 65 2c 20 3c 63 6f 64 65 20 63 6c 61 73 73 | g.on.the.build.mode,.<code.class |
| b5840 | 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 72 65 | ="zig"><span.class="tok-kw">unre |
| b5860 | 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6d 61 79 20 65 6d 69 74 20 61 | achable</span></code>.may.emit.a |
| b5880 | 20 70 61 6e 69 63 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 | .panic..............<ul>........ |
| b58a0 | 20 20 20 20 20 20 20 3c 6c 69 3e 45 6d 69 74 73 20 61 20 70 61 6e 69 63 20 69 6e 20 3c 63 6f 64 | .......<li>Emits.a.panic.in.<cod |
| b58c0 | 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 44 65 62 75 67 3c 2f 63 6f 64 65 3e 20 61 6e 64 20 3c | e.class="zig">Debug</code>.and.< |
| b58e0 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 52 65 6c 65 61 73 65 53 61 66 65 3c 2f 63 6f | code.class="zig">ReleaseSafe</co |
| b5900 | 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 63 6f 64 65 3e 7a 69 | de>.mode,.or.when.using.<code>zi |
| b5920 | 67 20 74 65 73 74 3c 2f 63 6f 64 65 3e 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | g.test</code>.</li>............. |
| b5940 | 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 69 6e 20 3c | ..<li>Does.not.emit.a.panic.in.< |
| b5960 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 52 65 6c 65 61 73 65 46 61 73 74 3c 2f 63 6f | code.class="zig">ReleaseFast</co |
| b5980 | 64 65 3e 20 6d 6f 64 65 2c 20 75 6e 6c 65 73 73 20 3c 63 6f 64 65 3e 7a 69 67 20 74 65 73 74 3c | de>.mode,.unless.<code>zig.test< |
| b59a0 | 2f 63 6f 64 65 3e 20 69 73 20 62 65 69 6e 67 20 75 73 65 64 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 | /code>.is.being.used.</li>...... |
| b59c0 | 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="# |
| b59e0 | 75 6e 72 65 61 63 68 61 62 6c 65 22 3e 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 61 3e 3c 2f 6c 69 | unreachable">unreachable</a></li |
| b5a00 | 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>...........</ |
| b5a20 | 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>.. |
| b5a40 | 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c | .........<td>.............<pre>< |
| b5a60 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | code.class="zig"><span.class="to |
| b5a80 | 6b 2d 6b 77 22 3e 75 73 69 6e 67 6e 61 6d 65 73 70 61 63 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 | k-kw">usingnamespace</span></cod |
| b5aa0 | 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>........ |
| b5ac0 | 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d | ...<td>.............<code.class= |
| b5ae0 | 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 73 69 6e 67 | "zig"><span.class="tok-kw">using |
| b5b00 | 6e 61 6d 65 73 70 61 63 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 69 73 20 61 20 74 6f 70 | namespace</span></code>.is.a.top |
| b5b20 | 2d 6c 65 76 65 6c 20 64 65 63 6c 61 72 61 74 69 6f 6e 20 74 68 61 74 20 69 6d 70 6f 72 74 73 20 | -level.declaration.that.imports. |
| b5b40 | 61 6c 6c 20 74 68 65 20 70 75 62 6c 69 63 20 64 65 63 6c 61 72 61 74 69 6f 6e 73 20 6f 66 20 74 | all.the.public.declarations.of.t |
| b5b60 | 68 65 20 6f 70 65 72 61 6e 64 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 77 68 69 63 68 20 6d 75 | he.operand,.............which.mu |
| b5b80 | 73 74 20 62 65 20 61 20 73 74 72 75 63 74 2c 20 75 6e 69 6f 6e 2c 20 6f 72 20 65 6e 75 6d 2c 20 | st.be.a.struct,.union,.or.enum,. |
| b5ba0 | 69 6e 74 6f 20 74 68 65 20 63 75 72 72 65 6e 74 20 73 63 6f 70 65 2e 0a 20 20 20 20 20 20 20 20 | into.the.current.scope.......... |
| b5bc0 | 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 65 65 20 61 | ....<ul>...............<li>See.a |
| b5be0 | 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 75 73 69 6e 67 6e 61 6d 65 73 70 61 63 65 22 3e 75 73 | lso.<a.href="#usingnamespace">us |
| b5c00 | 69 6e 67 6e 61 6d 65 73 70 61 63 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 | ingnamespace</a></li>........... |
| b5c20 | 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>......... |
| b5c40 | 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 |
| b5c60 | 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | >.............<pre><code.class=" |
| b5c80 | 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 | zig"><span.class="tok-kw">var</s |
| b5ca0 | 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 |
| b5cc0 | 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 |
| b5ce0 | 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | de.class="zig"><span.class="tok- |
| b5d00 | 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 64 65 63 6c 61 72 65 73 20 61 | kw">var</span></code>.declares.a |
| b5d20 | 20 76 61 72 69 61 62 6c 65 20 74 68 61 74 20 6d 61 79 20 62 65 20 6d 6f 64 69 66 69 65 64 2e 0a | .variable.that.may.be.modified.. |
| b5d40 | 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>...............< |
| b5d60 | 6c 69 3e 53 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 56 61 72 69 61 62 6c 65 73 22 | li>See.also.<a.href="#Variables" |
| b5d80 | 3e 56 61 72 69 61 62 6c 65 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | >Variables</a></li>............. |
| b5da0 | 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>.........</ |
| b5dc0 | 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a | tr>.........<tr>...........<td>. |
| b5de0 | 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | ............<pre><code.class="zi |
| b5e00 | 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 6f 6c 61 74 69 6c 65 | g"><span.class="tok-kw">volatile |
| b5e20 | 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>...........< |
| b5e40 | 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>............. |
| b5e60 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | <code.class="zig"><span.class="t |
| b5e80 | 6f 6b 2d 6b 77 22 3e 76 6f 6c 61 74 69 6c 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 63 61 | ok-kw">volatile</span></code>.ca |
| b5ea0 | 6e 20 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 | n.be.used.to.denote.loads.or.sto |
| b5ec0 | 72 65 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 | res.of.a.pointer.have.side.effec |
| b5ee0 | 74 73 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 | ts..............It.can.also.modi |
| b5f00 | 66 79 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 | fy.an.inline.assembly.expression |
| b5f20 | 20 74 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 | .to.denote.it.has.side.effects.. |
| b5f40 | 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>...............< |
| b5f60 | 6c 69 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 | li>See.also.<a.href="#volatile"> |
| b5f80 | 76 6f 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 | volatile</a>,.<a.href="#Assembly |
| b5fa0 | 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>............. |
| b5fc0 | 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>.........</ |
| b5fe0 | 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a | tr>.........<tr>...........<td>. |
| b6000 | 20 20 20 20 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | ............<pre><code.class="zi |
| b6020 | 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 77 68 69 6c 65 3c 2f 73 | g"><span.class="tok-kw">while</s |
| b6040 | 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 |
| b6060 | 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 41 20 3c | >...........<td>.............A.< |
| b6080 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | code.class="zig"><span.class="to |
| b60a0 | 6b 2d 6b 77 22 3e 77 68 69 6c 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 65 78 70 72 65 73 | k-kw">while</span></code>.expres |
| b60c0 | 73 69 6f 6e 20 63 61 6e 20 62 65 20 75 73 65 64 20 74 6f 20 72 65 70 65 61 74 65 64 6c 79 20 74 | sion.can.be.used.to.repeatedly.t |
| b60e0 | 65 73 74 20 61 20 62 6f 6f 6c 65 61 6e 2c 20 6f 70 74 69 6f 6e 61 6c 2c 20 6f 72 20 65 72 72 6f | est.a.boolean,.optional,.or.erro |
| b6100 | 72 20 75 6e 69 6f 6e 20 65 78 70 72 65 73 73 69 6f 6e 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 | r.union.expression,............. |
| b6120 | 61 6e 64 20 63 65 61 73 65 20 6c 6f 6f 70 69 6e 67 20 77 68 65 6e 20 74 68 61 74 20 65 78 70 72 | and.cease.looping.when.that.expr |
| b6140 | 65 73 73 69 6f 6e 20 65 76 61 6c 75 61 74 65 73 20 74 6f 20 66 61 6c 73 65 2c 20 6e 75 6c 6c 2c | ession.evaluates.to.false,.null, |
| b6160 | 20 6f 72 20 61 6e 20 65 72 72 6f 72 2c 20 72 65 73 70 65 63 74 69 76 65 6c 79 2e 0a 20 20 20 20 | .or.an.error,.respectively...... |
| b6180 | 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 |
| b61a0 | 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 68 69 6c 65 3c 2f | ee.also.<a.href="#while">while</ |
| b61c0 | 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>....... |
| b61e0 | 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 3c 2f | ....</td>.........</tr>.......</ |
| b6200 | 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 20 20 20 | table>.......</div>............. |
| b6220 | 20 20 3c 68 31 20 69 64 3d 22 47 72 61 6d 6d 61 72 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f 63 | ..<h1.id="Grammar"><a.href="#toc |
| b6240 | 2d 47 72 61 6d 6d 61 72 22 3e 47 72 61 6d 6d 61 72 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 | -Grammar">Grammar</a>.<a.class=" |
| b6260 | 68 64 72 22 20 68 72 65 66 3d 22 23 47 72 61 6d 6d 61 72 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 31 3e | hdr".href="#Grammar">..</a></h1> |
| b6280 | 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 3e 52 6f 6f 74 20 26 6c 74 3b 2d 20 73 6b | ........<pre><code>Root.<-.sk |
| b62a0 | 69 70 20 43 6f 6e 74 61 69 6e 65 72 4d 65 6d 62 65 72 73 20 65 6f 66 0a 0a 23 20 2a 2a 2a 20 54 | ip.ContainerMembers.eof..#.***.T |
| b62c0 | 6f 70 20 6c 65 76 65 6c 20 2a 2a 2a 0a 43 6f 6e 74 61 69 6e 65 72 4d 65 6d 62 65 72 73 0a 20 20 | op.level.***.ContainerMembers... |
| b62e0 | 20 20 26 6c 74 3b 2d 20 54 65 73 74 44 65 63 6c 20 43 6f 6e 74 61 69 6e 65 72 4d 65 6d 62 65 72 | ..<-.TestDecl.ContainerMember |
| b6300 | 73 0a 20 20 20 20 20 2f 20 54 6f 70 4c 65 76 65 6c 43 6f 6d 70 74 69 6d 65 20 43 6f 6e 74 61 69 | s....../.TopLevelComptime.Contai |
| b6320 | 6e 65 72 4d 65 6d 62 65 72 73 0a 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f 70 75 62 3f 20 54 | nerMembers....../.KEYWORD_pub?.T |
| b6340 | 6f 70 4c 65 76 65 6c 44 65 63 6c 20 43 6f 6e 74 61 69 6e 65 72 4d 65 6d 62 65 72 73 0a 20 20 20 | opLevelDecl.ContainerMembers.... |
| b6360 | 20 20 2f 20 43 6f 6e 74 61 69 6e 65 72 46 69 65 6c 64 20 43 4f 4d 4d 41 20 43 6f 6e 74 61 69 6e | ../.ContainerField.COMMA.Contain |
| b6380 | 65 72 4d 65 6d 62 65 72 73 0a 20 20 20 20 20 2f 20 43 6f 6e 74 61 69 6e 65 72 46 69 65 6c 64 0a | erMembers....../.ContainerField. |
| b63a0 | 20 20 20 20 20 2f 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 | ...../..TestDecl.<-.KEYWORD_t |
| b63c0 | 65 73 74 20 53 54 52 49 4e 47 4c 49 54 45 52 41 4c 53 49 4e 47 4c 45 20 42 6c 6f 63 6b 0a 0a 54 | est.STRINGLITERALSINGLE.Block..T |
| b63e0 | 6f 70 4c 65 76 65 6c 43 6f 6d 70 74 69 6d 65 20 26 6c 74 3b 2d 20 4b 45 59 57 4f 52 44 5f 63 6f | opLevelComptime.<-.KEYWORD_co |
| b6400 | 6d 70 74 69 6d 65 20 42 6c 6f 63 6b 45 78 70 72 0a 0a 54 6f 70 4c 65 76 65 6c 44 65 63 6c 0a 20 | mptime.BlockExpr..TopLevelDecl.. |
| b6420 | 20 20 20 26 6c 74 3b 2d 20 28 4b 45 59 57 4f 52 44 5f 65 78 70 6f 72 74 20 2f 20 4b 45 59 57 4f | ...<-.(KEYWORD_export./.KEYWO |
| b6440 | 52 44 5f 65 78 74 65 72 6e 20 53 54 52 49 4e 47 4c 49 54 45 52 41 4c 53 49 4e 47 4c 45 3f 20 2f | RD_extern.STRINGLITERALSINGLE?./ |
| b6460 | 20 4b 45 59 57 4f 52 44 5f 69 6e 6c 69 6e 65 29 3f 20 46 6e 50 72 6f 74 6f 20 28 53 45 4d 49 43 | .KEYWORD_inline)?.FnProto.(SEMIC |
| b6480 | 4f 4c 4f 4e 20 2f 20 42 6c 6f 63 6b 29 0a 20 20 20 20 20 2f 20 28 4b 45 59 57 4f 52 44 5f 65 78 | OLON./.Block)....../.(KEYWORD_ex |
| b64a0 | 70 6f 72 74 20 2f 20 4b 45 59 57 4f 52 44 5f 65 78 74 65 72 6e 20 53 54 52 49 4e 47 4c 49 54 45 | port./.KEYWORD_extern.STRINGLITE |
| b64c0 | 52 41 4c 53 49 4e 47 4c 45 3f 29 3f 20 4b 45 59 57 4f 52 44 5f 74 68 72 65 61 64 6c 6f 63 61 6c | RALSINGLE?)?.KEYWORD_threadlocal |
| b64e0 | 3f 20 56 61 72 44 65 63 6c 0a 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f 75 73 69 6e 67 6e 61 | ?.VarDecl....../.KEYWORD_usingna |
| b6500 | 6d 65 73 70 61 63 65 20 45 78 70 72 20 53 45 4d 49 43 4f 4c 4f 4e 0a 0a 46 6e 50 72 6f 74 6f 20 | mespace.Expr.SEMICOLON..FnProto. |
| b6520 | 26 6c 74 3b 2d 20 4b 45 59 57 4f 52 44 5f 66 6e 20 49 44 45 4e 54 49 46 49 45 52 3f 20 4c 50 41 | <-.KEYWORD_fn.IDENTIFIER?.LPA |
| b6540 | 52 45 4e 20 50 61 72 61 6d 44 65 63 6c 4c 69 73 74 20 52 50 41 52 45 4e 20 42 79 74 65 41 6c 69 | REN.ParamDeclList.RPAREN.ByteAli |
| b6560 | 67 6e 3f 20 4c 69 6e 6b 53 65 63 74 69 6f 6e 3f 20 45 58 43 4c 41 4d 41 54 49 4f 4e 4d 41 52 4b | gn?.LinkSection?.EXCLAMATIONMARK |
| b6580 | 3f 20 28 4b 45 59 57 4f 52 44 5f 61 6e 79 74 79 70 65 20 2f 20 54 79 70 65 45 78 70 72 29 0a 0a | ?.(KEYWORD_anytype./.TypeExpr).. |
| b65a0 | 56 61 72 44 65 63 6c 20 26 6c 74 3b 2d 20 28 4b 45 59 57 4f 52 44 5f 63 6f 6e 73 74 20 2f 20 4b | VarDecl.<-.(KEYWORD_const./.K |
| b65c0 | 45 59 57 4f 52 44 5f 76 61 72 29 20 49 44 45 4e 54 49 46 49 45 52 20 28 43 4f 4c 4f 4e 20 54 79 | EYWORD_var).IDENTIFIER.(COLON.Ty |
| b65e0 | 70 65 45 78 70 72 29 3f 20 42 79 74 65 41 6c 69 67 6e 3f 20 4c 69 6e 6b 53 65 63 74 69 6f 6e 3f | peExpr)?.ByteAlign?.LinkSection? |
| b6600 | 20 28 45 51 55 41 4c 20 45 78 70 72 29 3f 20 53 45 4d 49 43 4f 4c 4f 4e 0a 0a 43 6f 6e 74 61 69 | .(EQUAL.Expr)?.SEMICOLON..Contai |
| b6620 | 6e 65 72 46 69 65 6c 64 20 26 6c 74 3b 2d 20 4b 45 59 57 4f 52 44 5f 63 6f 6d 70 74 69 6d 65 3f | nerField.<-.KEYWORD_comptime? |
| b6640 | 20 49 44 45 4e 54 49 46 49 45 52 20 28 43 4f 4c 4f 4e 20 54 79 70 65 45 78 70 72 29 3f 20 28 45 | .IDENTIFIER.(COLON.TypeExpr)?.(E |
| b6660 | 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.* |
| b6680 | 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 |
| b66a0 | 6f 6d 70 74 69 6d 65 3f 20 56 61 72 44 65 63 6c 0a 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f | omptime?.VarDecl....../.KEYWORD_ |
| b66c0 | 63 6f 6d 70 74 69 6d 65 20 42 6c 6f 63 6b 45 78 70 72 53 74 61 74 65 6d 65 6e 74 0a 20 20 20 20 | comptime.BlockExprStatement..... |
| b66e0 | 20 2f 20 4b 45 59 57 4f 52 44 5f 6e 6f 73 75 73 70 65 6e 64 20 42 6c 6f 63 6b 45 78 70 72 53 74 | ./.KEYWORD_nosuspend.BlockExprSt |
| b6700 | 61 74 65 6d 65 6e 74 0a 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f 73 75 73 70 65 6e 64 20 28 | atement....../.KEYWORD_suspend.( |
| b6720 | 53 45 4d 49 43 4f 4c 4f 4e 20 2f 20 42 6c 6f 63 6b 45 78 70 72 53 74 61 74 65 6d 65 6e 74 29 0a | SEMICOLON./.BlockExprStatement). |
| b6740 | 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f 64 65 66 65 72 20 42 6c 6f 63 6b 45 78 70 72 53 74 | ...../.KEYWORD_defer.BlockExprSt |
| b6760 | 61 74 65 6d 65 6e 74 0a 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f 65 72 72 64 65 66 65 72 20 | atement....../.KEYWORD_errdefer. |
| b6780 | 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 49 66 53 74 61 74 | BlockExprStatement....../.IfStat |
| b67a0 | 65 6d 65 6e 74 0a 20 20 20 20 20 2f 20 4c 61 62 65 6c 65 64 53 74 61 74 65 6d 65 6e 74 0a 20 20 | ement....../.LabeledStatement... |
| b67c0 | 20 20 20 2f 20 53 77 69 74 63 68 45 78 70 72 0a 20 20 20 20 20 2f 20 41 73 73 69 67 6e 45 78 70 | .../.SwitchExpr....../.AssignExp |
| b67e0 | 72 20 53 45 4d 49 43 4f 4c 4f 4e 0a 0a 49 66 53 74 61 74 65 6d 65 6e 74 0a 20 20 20 20 26 6c 74 | r.SEMICOLON..IfStatement.....< |
| b6800 | 3b 2d 20 49 66 50 72 65 66 69 78 20 42 6c 6f 63 6b 45 78 70 72 20 28 20 4b 45 59 57 4f 52 44 5f | ;-.IfPrefix.BlockExpr.(.KEYWORD_ |
| b6820 | 65 6c 73 65 20 50 61 79 6c 6f 61 64 3f 20 53 74 61 74 65 6d 65 6e 74 20 29 3f 0a 20 20 20 20 20 | else.Payload?.Statement.)?...... |
| b6840 | 2f 20 49 66 50 72 65 66 69 78 20 41 73 73 69 67 6e 45 78 70 72 20 28 20 53 45 4d 49 43 4f 4c 4f | /.IfPrefix.AssignExpr.(.SEMICOLO |
| b6860 | 4e 20 2f 20 4b 45 59 57 4f 52 44 5f 65 6c 73 65 20 50 61 79 6c 6f 61 64 3f 20 53 74 61 74 65 6d | N./.KEYWORD_else.Payload?.Statem |
| b6880 | 65 6e 74 20 29 0a 0a 4c 61 62 65 6c 65 64 53 74 61 74 65 6d 65 6e 74 20 26 6c 74 3b 2d 20 42 6c | ent.)..LabeledStatement.<-.Bl |
| b68a0 | 6f 63 6b 4c 61 62 65 6c 3f 20 28 42 6c 6f 63 6b 20 2f 20 4c 6f 6f 70 53 74 61 74 65 6d 65 6e 74 | ockLabel?.(Block./.LoopStatement |
| b68c0 | 29 0a 0a 4c 6f 6f 70 53 74 61 74 65 6d 65 6e 74 20 26 6c 74 3b 2d 20 4b 45 59 57 4f 52 44 5f 69 | )..LoopStatement.<-.KEYWORD_i |
| b68e0 | 6e 6c 69 6e 65 3f 20 28 46 6f 72 53 74 61 74 65 6d 65 6e 74 20 2f 20 57 68 69 6c 65 53 74 61 74 | nline?.(ForStatement./.WhileStat |
| b6900 | 65 6d 65 6e 74 29 0a 0a 46 6f 72 53 74 61 74 65 6d 65 6e 74 0a 20 20 20 20 26 6c 74 3b 2d 20 46 | ement)..ForStatement.....<-.F |
| b6920 | 6f 72 50 72 65 66 69 78 20 42 6c 6f 63 6b 45 78 70 72 20 28 20 4b 45 59 57 4f 52 44 5f 65 6c 73 | orPrefix.BlockExpr.(.KEYWORD_els |
| b6940 | 65 20 53 74 61 74 65 6d 65 6e 74 20 29 3f 0a 20 20 20 20 20 2f 20 46 6f 72 50 72 65 66 69 78 20 | e.Statement.)?....../.ForPrefix. |
| b6960 | 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 4b 45 59 57 4f 52 44 | AssignExpr.(.SEMICOLON./.KEYWORD |
| b6980 | 5f 65 6c 73 65 20 53 74 61 74 65 6d 65 6e 74 20 29 0a 0a 57 68 69 6c 65 53 74 61 74 65 6d 65 6e | _else.Statement.)..WhileStatemen |
| b69a0 | 74 0a 20 20 20 20 26 6c 74 3b 2d 20 57 68 69 6c 65 50 72 65 66 69 78 20 42 6c 6f 63 6b 45 78 70 | t.....<-.WhilePrefix.BlockExp |
| b69c0 | 72 20 28 20 4b 45 59 57 4f 52 44 5f 65 6c 73 65 20 50 61 79 6c 6f 61 64 3f 20 53 74 61 74 65 6d | r.(.KEYWORD_else.Payload?.Statem |
| b69e0 | 65 6e 74 20 29 3f 0a 20 20 20 20 20 2f 20 57 68 69 6c 65 50 72 65 66 69 78 20 41 73 73 69 67 6e | ent.)?....../.WhilePrefix.Assign |
| b6a00 | 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 65 20 | Expr.(.SEMICOLON./.KEYWORD_else. |
| b6a20 | 50 61 79 6c 6f 61 64 3f 20 53 74 61 74 65 6d 65 6e 74 20 29 0a 0a 42 6c 6f 63 6b 45 78 70 72 53 | Payload?.Statement.)..BlockExprS |
| b6a40 | 74 61 74 65 6d 65 6e 74 0a 20 20 20 20 26 6c 74 3b 2d 20 42 6c 6f 63 6b 45 78 70 72 0a 20 20 20 | tatement.....<-.BlockExpr.... |
| b6a60 | 20 20 2f 20 41 73 73 69 67 6e 45 78 70 72 20 53 45 4d 49 43 4f 4c 4f 4e 0a 0a 42 6c 6f 63 6b 45 | ../.AssignExpr.SEMICOLON..BlockE |
| b6a80 | 78 70 72 20 26 6c 74 3b 2d 20 42 6c 6f 63 6b 4c 61 62 65 6c 3f 20 42 6c 6f 63 6b 0a 0a 23 20 2a | xpr.<-.BlockLabel?.Block..#.* |
| b6aa0 | 2a 2a 20 45 78 70 72 65 73 73 69 6f 6e 20 4c 65 76 65 6c 20 2a 2a 2a 0a 41 73 73 69 67 6e 45 78 | **.Expression.Level.***.AssignEx |
| b6ac0 | 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 0a 0a | pr.<-.Expr.(AssignOp.Expr)?.. |
| b6ae0 | 45 78 70 72 20 26 6c 74 3b 2d 20 4b 45 59 57 4f 52 44 5f 74 72 79 2a 20 42 6f 6f 6c 4f 72 45 78 | Expr.<-.KEYWORD_try*.BoolOrEx |
| b6b00 | 70 72 0a 0a 42 6f 6f 6c 4f 72 45 78 70 72 20 26 6c 74 3b 2d 20 42 6f 6f 6c 41 6e 64 45 78 70 72 | pr..BoolOrExpr.<-.BoolAndExpr |
| b6b20 | 20 28 4b 45 59 57 4f 52 44 5f 6f 72 20 42 6f 6f 6c 41 6e 64 45 78 70 72 29 2a 0a 0a 42 6f 6f 6c | .(KEYWORD_or.BoolAndExpr)*..Bool |
| b6b40 | 41 6e 64 45 78 70 72 20 26 6c 74 3b 2d 20 43 6f 6d 70 61 72 65 45 78 70 72 20 28 4b 45 59 57 4f | AndExpr.<-.CompareExpr.(KEYWO |
| b6b60 | 52 44 5f 61 6e 64 20 43 6f 6d 70 61 72 65 45 78 70 72 29 2a 0a 0a 43 6f 6d 70 61 72 65 45 78 70 | RD_and.CompareExpr)*..CompareExp |
| b6b80 | 72 20 26 6c 74 3b 2d 20 42 69 74 77 69 73 65 45 78 70 72 20 28 43 6f 6d 70 61 72 65 4f 70 20 42 | r.<-.BitwiseExpr.(CompareOp.B |
| b6ba0 | 69 74 77 69 73 65 45 78 70 72 29 3f 0a 0a 42 69 74 77 69 73 65 45 78 70 72 20 26 6c 74 3b 2d 20 | itwiseExpr)?..BitwiseExpr.<-. |
| b6bc0 | 42 69 74 53 68 69 66 74 45 78 70 72 20 28 42 69 74 77 69 73 65 4f 70 20 42 69 74 53 68 69 66 74 | BitShiftExpr.(BitwiseOp.BitShift |
| b6be0 | 45 78 70 72 29 2a 0a 0a 42 69 74 53 68 69 66 74 45 78 70 72 20 26 6c 74 3b 2d 20 41 64 64 69 74 | Expr)*..BitShiftExpr.<-.Addit |
| b6c00 | 69 6f 6e 45 78 70 72 20 28 42 69 74 53 68 69 66 74 4f 70 20 41 64 64 69 74 69 6f 6e 45 78 70 72 | ionExpr.(BitShiftOp.AdditionExpr |
| b6c20 | 29 2a 0a 0a 41 64 64 69 74 69 6f 6e 45 78 70 72 20 26 6c 74 3b 2d 20 4d 75 6c 74 69 70 6c 79 45 | )*..AdditionExpr.<-.MultiplyE |
| b6c40 | 78 70 72 20 28 41 64 64 69 74 69 6f 6e 4f 70 20 4d 75 6c 74 69 70 6c 79 45 78 70 72 29 2a 0a 0a | xpr.(AdditionOp.MultiplyExpr)*.. |
| b6c60 | 4d 75 6c 74 69 70 6c 79 45 78 70 72 20 26 6c 74 3b 2d 20 50 72 65 66 69 78 45 78 70 72 20 28 4d | MultiplyExpr.<-.PrefixExpr.(M |
| b6c80 | 75 6c 74 69 70 6c 79 4f 70 20 50 72 65 66 69 78 45 78 70 72 29 2a 0a 0a 50 72 65 66 69 78 45 78 | ultiplyOp.PrefixExpr)*..PrefixEx |
| b6ca0 | 70 72 20 26 6c 74 3b 2d 20 50 72 65 66 69 78 4f 70 2a 20 50 72 69 6d 61 72 79 45 78 70 72 0a 0a | pr.<-.PrefixOp*.PrimaryExpr.. |
| b6cc0 | 50 72 69 6d 61 72 79 45 78 70 72 0a 20 20 20 20 26 6c 74 3b 2d 20 41 73 6d 45 78 70 72 0a 20 20 | PrimaryExpr.....<-.AsmExpr... |
| b6ce0 | 20 20 20 2f 20 49 66 45 78 70 72 0a 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f 62 72 65 61 6b | .../.IfExpr....../.KEYWORD_break |
| b6d00 | 20 42 72 65 61 6b 4c 61 62 65 6c 3f 20 45 78 70 72 3f 0a 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 | .BreakLabel?.Expr?....../.KEYWOR |
| b6d20 | 44 5f 63 6f 6d 70 74 69 6d 65 20 45 78 70 72 0a 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f 6e | D_comptime.Expr....../.KEYWORD_n |
| b6d40 | 6f 73 75 73 70 65 6e 64 20 45 78 70 72 0a 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f 63 6f 6e | osuspend.Expr....../.KEYWORD_con |
| b6d60 | 74 69 6e 75 65 20 42 72 65 61 6b 4c 61 62 65 6c 3f 0a 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 | tinue.BreakLabel?....../.KEYWORD |
| b6d80 | 5f 72 65 73 75 6d 65 20 45 78 70 72 0a 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f 72 65 74 75 | _resume.Expr....../.KEYWORD_retu |
| b6da0 | 72 6e 20 45 78 70 72 3f 0a 20 20 20 20 20 2f 20 42 6c 6f 63 6b 4c 61 62 65 6c 3f 20 4c 6f 6f 70 | rn.Expr?....../.BlockLabel?.Loop |
| b6dc0 | 45 78 70 72 0a 20 20 20 20 20 2f 20 42 6c 6f 63 6b 0a 20 20 20 20 20 2f 20 43 75 72 6c 79 53 75 | Expr....../.Block....../.CurlySu |
| b6de0 | 66 66 69 78 45 78 70 72 0a 0a 49 66 45 78 70 72 20 26 6c 74 3b 2d 20 49 66 50 72 65 66 69 78 20 | ffixExpr..IfExpr.<-.IfPrefix. |
| b6e00 | 45 78 70 72 20 28 4b 45 59 57 4f 52 44 5f 65 6c 73 65 20 50 61 79 6c 6f 61 64 3f 20 45 78 70 72 | Expr.(KEYWORD_else.Payload?.Expr |
| b6e20 | 29 3f 0a 0a 42 6c 6f 63 6b 20 26 6c 74 3b 2d 20 4c 42 52 41 43 45 20 53 74 61 74 65 6d 65 6e 74 | )?..Block.<-.LBRACE.Statement |
| b6e40 | 2a 20 52 42 52 41 43 45 0a 0a 4c 6f 6f 70 45 78 70 72 20 26 6c 74 3b 2d 20 4b 45 59 57 4f 52 44 | *.RBRACE..LoopExpr.<-.KEYWORD |
| b6e60 | 5f 69 6e 6c 69 6e 65 3f 20 28 46 6f 72 45 78 70 72 20 2f 20 57 68 69 6c 65 45 78 70 72 29 0a 0a | _inline?.(ForExpr./.WhileExpr).. |
| b6e80 | 46 6f 72 45 78 70 72 20 26 6c 74 3b 2d 20 46 6f 72 50 72 65 66 69 78 20 45 78 70 72 20 28 4b 45 | ForExpr.<-.ForPrefix.Expr.(KE |
| b6ea0 | 59 57 4f 52 44 5f 65 6c 73 65 20 45 78 70 72 29 3f 0a 0a 57 68 69 6c 65 45 78 70 72 20 26 6c 74 | YWORD_else.Expr)?..WhileExpr.< |
| b6ec0 | 3b 2d 20 57 68 69 6c 65 50 72 65 66 69 78 20 45 78 70 72 20 28 4b 45 59 57 4f 52 44 5f 65 6c 73 | ;-.WhilePrefix.Expr.(KEYWORD_els |
| b6ee0 | 65 20 50 61 79 6c 6f 61 64 3f 20 45 78 70 72 29 3f 0a 0a 43 75 72 6c 79 53 75 66 66 69 78 45 78 | e.Payload?.Expr)?..CurlySuffixEx |
| b6f00 | 70 72 20 26 6c 74 3b 2d 20 54 79 70 65 45 78 70 72 20 49 6e 69 74 4c 69 73 74 3f 0a 0a 49 6e 69 | pr.<-.TypeExpr.InitList?..Ini |
| b6f20 | 74 4c 69 73 74 0a 20 20 20 20 26 6c 74 3b 2d 20 4c 42 52 41 43 45 20 46 69 65 6c 64 49 6e 69 74 | tList.....<-.LBRACE.FieldInit |
| b6f40 | 20 28 43 4f 4d 4d 41 20 46 69 65 6c 64 49 6e 69 74 29 2a 20 43 4f 4d 4d 41 3f 20 52 42 52 41 43 | .(COMMA.FieldInit)*.COMMA?.RBRAC |
| b6f60 | 45 0a 20 20 20 20 20 2f 20 4c 42 52 41 43 45 20 45 78 70 72 20 28 43 4f 4d 4d 41 20 45 78 70 72 | E....../.LBRACE.Expr.(COMMA.Expr |
| b6f80 | 29 2a 20 43 4f 4d 4d 41 3f 20 52 42 52 41 43 45 0a 20 20 20 20 20 2f 20 4c 42 52 41 43 45 20 52 | )*.COMMA?.RBRACE....../.LBRACE.R |
| b6fa0 | 42 52 41 43 45 0a 0a 54 79 70 65 45 78 70 72 20 26 6c 74 3b 2d 20 50 72 65 66 69 78 54 79 70 65 | BRACE..TypeExpr.<-.PrefixType |
| b6fc0 | 4f 70 2a 20 45 72 72 6f 72 55 6e 69 6f 6e 45 78 70 72 0a 0a 45 72 72 6f 72 55 6e 69 6f 6e 45 78 | Op*.ErrorUnionExpr..ErrorUnionEx |
| b6fe0 | 70 72 20 26 6c 74 3b 2d 20 53 75 66 66 69 78 45 78 70 72 20 28 45 58 43 4c 41 4d 41 54 49 4f 4e | pr.<-.SuffixExpr.(EXCLAMATION |
| b7000 | 4d 41 52 4b 20 54 79 70 65 45 78 70 72 29 3f 0a 0a 53 75 66 66 69 78 45 78 70 72 0a 20 20 20 20 | MARK.TypeExpr)?..SuffixExpr..... |
| b7020 | 26 6c 74 3b 2d 20 4b 45 59 57 4f 52 44 5f 61 73 79 6e 63 20 50 72 69 6d 61 72 79 54 79 70 65 45 | <-.KEYWORD_async.PrimaryTypeE |
| b7040 | 78 70 72 20 53 75 66 66 69 78 4f 70 2a 20 46 6e 43 61 6c 6c 41 72 67 75 6d 65 6e 74 73 0a 20 20 | xpr.SuffixOp*.FnCallArguments... |
| b7060 | 20 20 20 2f 20 50 72 69 6d 61 72 79 54 79 70 65 45 78 70 72 20 28 53 75 66 66 69 78 4f 70 20 2f | .../.PrimaryTypeExpr.(SuffixOp./ |
| b7080 | 20 46 6e 43 61 6c 6c 41 72 67 75 6d 65 6e 74 73 29 2a 0a 0a 50 72 69 6d 61 72 79 54 79 70 65 45 | .FnCallArguments)*..PrimaryTypeE |
| b70a0 | 78 70 72 0a 20 20 20 20 26 6c 74 3b 2d 20 42 55 49 4c 54 49 4e 49 44 45 4e 54 49 46 49 45 52 20 | xpr.....<-.BUILTINIDENTIFIER. |
| b70c0 | 46 6e 43 61 6c 6c 41 72 67 75 6d 65 6e 74 73 0a 20 20 20 20 20 2f 20 43 48 41 52 5f 4c 49 54 45 | FnCallArguments....../.CHAR_LITE |
| b70e0 | 52 41 4c 0a 20 20 20 20 20 2f 20 43 6f 6e 74 61 69 6e 65 72 44 65 63 6c 0a 20 20 20 20 20 2f 20 | RAL....../.ContainerDecl....../. |
| b7100 | 44 4f 54 20 49 44 45 4e 54 49 46 49 45 52 0a 20 20 20 20 20 2f 20 44 4f 54 20 49 6e 69 74 4c 69 | DOT.IDENTIFIER....../.DOT.InitLi |
| b7120 | 73 74 0a 20 20 20 20 20 2f 20 45 72 72 6f 72 53 65 74 44 65 63 6c 0a 20 20 20 20 20 2f 20 46 4c | st....../.ErrorSetDecl....../.FL |
| b7140 | 4f 41 54 0a 20 20 20 20 20 2f 20 46 6e 50 72 6f 74 6f 0a 20 20 20 20 20 2f 20 47 72 6f 75 70 65 | OAT....../.FnProto....../.Groupe |
| b7160 | 64 45 78 70 72 0a 20 20 20 20 20 2f 20 4c 61 62 65 6c 65 64 54 79 70 65 45 78 70 72 0a 20 20 20 | dExpr....../.LabeledTypeExpr.... |
| b7180 | 20 20 2f 20 49 44 45 4e 54 49 46 49 45 52 0a 20 20 20 20 20 2f 20 49 66 54 79 70 65 45 78 70 72 | ../.IDENTIFIER....../.IfTypeExpr |
| b71a0 | 0a 20 20 20 20 20 2f 20 49 4e 54 45 47 45 52 0a 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f 63 | ....../.INTEGER....../.KEYWORD_c |
| b71c0 | 6f 6d 70 74 69 6d 65 20 54 79 70 65 45 78 70 72 0a 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f | omptime.TypeExpr....../.KEYWORD_ |
| b71e0 | 65 72 72 6f 72 20 44 4f 54 20 49 44 45 4e 54 49 46 49 45 52 0a 20 20 20 20 20 2f 20 4b 45 59 57 | error.DOT.IDENTIFIER....../.KEYW |
| b7200 | 4f 52 44 5f 66 61 6c 73 65 0a 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f 6e 75 6c 6c 0a 20 20 | ORD_false....../.KEYWORD_null... |
| b7220 | 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f 61 6e 79 66 72 61 6d 65 0a 20 20 20 20 20 2f 20 4b 45 59 | .../.KEYWORD_anyframe....../.KEY |
| b7240 | 57 4f 52 44 5f 74 72 75 65 0a 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f 75 6e 64 65 66 69 6e | WORD_true....../.KEYWORD_undefin |
| b7260 | 65 64 0a 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f 75 6e 72 65 61 63 68 61 62 6c 65 0a 20 20 | ed....../.KEYWORD_unreachable... |
| b7280 | 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 |
| b72a0 | 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 |
| b72c0 | 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 |
| b72e0 | 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.< |
| b7300 | 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 |
| b7320 | 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.<- |
| b7340 | 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. |
| b7360 | 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 |
| b7380 | 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 |
| b73a0 | 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. |
| b73c0 | 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 |
| b73e0 | 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 |
| b7400 | 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 |
| b7420 | 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 |
| b7440 | 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 |
| b7460 | 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 |
| b7480 | 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 |
| b74a0 | 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.& |
| b74c0 | 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. |
| b74e0 | 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 |
| b7500 | 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 |
| b7520 | 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 |
| b7540 | 69 6c 65 3f 20 4c 50 41 52 45 4e 20 53 54 52 49 4e 47 4c 49 54 45 52 41 4c 20 41 73 6d 4f 75 74 | ile?.LPAREN.STRINGLITERAL.AsmOut |
| b7560 | 70 75 74 3f 20 52 50 41 52 45 4e 0a 0a 41 73 6d 4f 75 74 70 75 74 20 26 6c 74 3b 2d 20 43 4f 4c | put?.RPAREN..AsmOutput.<-.COL |
| b7580 | 4f 4e 20 41 73 6d 4f 75 74 70 75 74 4c 69 73 74 20 41 73 6d 49 6e 70 75 74 3f 0a 0a 41 73 6d 4f | ON.AsmOutputList.AsmInput?..AsmO |
| b75a0 | 75 74 70 75 74 49 74 65 6d 20 26 6c 74 3b 2d 20 4c 42 52 41 43 4b 45 54 20 49 44 45 4e 54 49 46 | utputItem.<-.LBRACKET.IDENTIF |
| b75c0 | 49 45 52 20 52 42 52 41 43 4b 45 54 20 53 54 52 49 4e 47 4c 49 54 45 52 41 4c 20 4c 50 41 52 45 | IER.RBRACKET.STRINGLITERAL.LPARE |
| b75e0 | 4e 20 28 4d 49 4e 55 53 52 41 52 52 4f 57 20 54 79 70 65 45 78 70 72 20 2f 20 49 44 45 4e 54 49 | N.(MINUSRARROW.TypeExpr./.IDENTI |
| b7600 | 46 49 45 52 29 20 52 50 41 52 45 4e 0a 0a 41 73 6d 49 6e 70 75 74 20 26 6c 74 3b 2d 20 43 4f 4c | FIER).RPAREN..AsmInput.<-.COL |
| b7620 | 4f 4e 20 41 73 6d 49 6e 70 75 74 4c 69 73 74 20 41 73 6d 43 6c 6f 62 62 65 72 73 3f 0a 0a 41 73 | ON.AsmInputList.AsmClobbers?..As |
| b7640 | 6d 49 6e 70 75 74 49 74 65 6d 20 26 6c 74 3b 2d 20 4c 42 52 41 43 4b 45 54 20 49 44 45 4e 54 49 | mInputItem.<-.LBRACKET.IDENTI |
| b7660 | 46 49 45 52 20 52 42 52 41 43 4b 45 54 20 53 54 52 49 4e 47 4c 49 54 45 52 41 4c 20 4c 50 41 52 | FIER.RBRACKET.STRINGLITERAL.LPAR |
| b7680 | 45 4e 20 45 78 70 72 20 52 50 41 52 45 4e 0a 0a 41 73 6d 43 6c 6f 62 62 65 72 73 20 26 6c 74 3b | EN.Expr.RPAREN..AsmClobbers.< |
| b76a0 | 2d 20 43 4f 4c 4f 4e 20 53 74 72 69 6e 67 4c 69 73 74 0a 0a 23 20 2a 2a 2a 20 48 65 6c 70 65 72 | -.COLON.StringList..#.***.Helper |
| b76c0 | 20 67 72 61 6d 6d 61 72 20 2a 2a 2a 0a 42 72 65 61 6b 4c 61 62 65 6c 20 26 6c 74 3b 2d 20 43 4f | .grammar.***.BreakLabel.<-.CO |
| b76e0 | 4c 4f 4e 20 49 44 45 4e 54 49 46 49 45 52 0a 0a 42 6c 6f 63 6b 4c 61 62 65 6c 20 26 6c 74 3b 2d | LON.IDENTIFIER..BlockLabel.<- |
| b7700 | 20 49 44 45 4e 54 49 46 49 45 52 20 43 4f 4c 4f 4e 0a 0a 46 69 65 6c 64 49 6e 69 74 20 26 6c 74 | .IDENTIFIER.COLON..FieldInit.< |
| b7720 | 3b 2d 20 44 4f 54 20 49 44 45 4e 54 49 46 49 45 52 20 45 51 55 41 4c 20 45 78 70 72 0a 0a 57 68 | ;-.DOT.IDENTIFIER.EQUAL.Expr..Wh |
| b7740 | 69 6c 65 43 6f 6e 74 69 6e 75 65 45 78 70 72 20 26 6c 74 3b 2d 20 43 4f 4c 4f 4e 20 4c 50 41 52 | ileContinueExpr.<-.COLON.LPAR |
| b7760 | 45 4e 20 41 73 73 69 67 6e 45 78 70 72 20 52 50 41 52 45 4e 0a 0a 4c 69 6e 6b 53 65 63 74 69 6f | EN.AssignExpr.RPAREN..LinkSectio |
| b7780 | 6e 20 26 6c 74 3b 2d 20 4b 45 59 57 4f 52 44 5f 6c 69 6e 6b 73 65 63 74 69 6f 6e 20 4c 50 41 52 | n.<-.KEYWORD_linksection.LPAR |
| b77a0 | 45 4e 20 45 78 70 72 20 52 50 41 52 45 4e 0a 0a 50 61 72 61 6d 44 65 63 6c 20 26 6c 74 3b 2d 20 | EN.Expr.RPAREN..ParamDecl.<-. |
| b77c0 | 28 4b 45 59 57 4f 52 44 5f 6e 6f 61 6c 69 61 73 20 2f 20 4b 45 59 57 4f 52 44 5f 63 6f 6d 70 74 | (KEYWORD_noalias./.KEYWORD_compt |
| b77e0 | 69 6d 65 29 3f 20 28 49 44 45 4e 54 49 46 49 45 52 20 43 4f 4c 4f 4e 29 3f 20 50 61 72 61 6d 54 | ime)?.(IDENTIFIER.COLON)?.ParamT |
| b7800 | 79 70 65 0a 0a 50 61 72 61 6d 54 79 70 65 0a 20 20 20 20 26 6c 74 3b 2d 20 4b 45 59 57 4f 52 44 | ype..ParamType.....<-.KEYWORD |
| b7820 | 5f 61 6e 79 74 79 70 65 0a 20 20 20 20 20 2f 20 44 4f 54 33 0a 20 20 20 20 20 2f 20 54 79 70 65 | _anytype....../.DOT3....../.Type |
| b7840 | 45 78 70 72 0a 0a 23 20 43 6f 6e 74 72 6f 6c 20 66 6c 6f 77 20 70 72 65 66 69 78 65 73 0a 49 66 | Expr..#.Control.flow.prefixes.If |
| b7860 | 50 72 65 66 69 78 20 26 6c 74 3b 2d 20 4b 45 59 57 4f 52 44 5f 69 66 20 4c 50 41 52 45 4e 20 45 | Prefix.<-.KEYWORD_if.LPAREN.E |
| b7880 | 78 70 72 20 52 50 41 52 45 4e 20 50 74 72 50 61 79 6c 6f 61 64 3f 0a 0a 57 68 69 6c 65 50 72 65 | xpr.RPAREN.PtrPayload?..WhilePre |
| b78a0 | 66 69 78 20 26 6c 74 3b 2d 20 4b 45 59 57 4f 52 44 5f 77 68 69 6c 65 20 4c 50 41 52 45 4e 20 45 | fix.<-.KEYWORD_while.LPAREN.E |
| b78c0 | 78 70 72 20 52 50 41 52 45 4e 20 50 74 72 50 61 79 6c 6f 61 64 3f 20 57 68 69 6c 65 43 6f 6e 74 | xpr.RPAREN.PtrPayload?.WhileCont |
| b78e0 | 69 6e 75 65 45 78 70 72 3f 0a 0a 46 6f 72 50 72 65 66 69 78 20 26 6c 74 3b 2d 20 4b 45 59 57 4f | inueExpr?..ForPrefix.<-.KEYWO |
| b7900 | 52 44 5f 66 6f 72 20 4c 50 41 52 45 4e 20 45 78 70 72 20 52 50 41 52 45 4e 20 50 74 72 49 6e 64 | RD_for.LPAREN.Expr.RPAREN.PtrInd |
| b7920 | 65 78 50 61 79 6c 6f 61 64 0a 0a 23 20 50 61 79 6c 6f 61 64 73 0a 50 61 79 6c 6f 61 64 20 26 6c | exPayload..#.Payloads.Payload.&l |
| b7940 | 74 3b 2d 20 50 49 50 45 20 49 44 45 4e 54 49 46 49 45 52 20 50 49 50 45 0a 0a 50 74 72 50 61 79 | t;-.PIPE.IDENTIFIER.PIPE..PtrPay |
| b7960 | 6c 6f 61 64 20 26 6c 74 3b 2d 20 50 49 50 45 20 41 53 54 45 52 49 53 4b 3f 20 49 44 45 4e 54 49 | load.<-.PIPE.ASTERISK?.IDENTI |
| b7980 | 46 49 45 52 20 50 49 50 45 0a 0a 50 74 72 49 6e 64 65 78 50 61 79 6c 6f 61 64 20 26 6c 74 3b 2d | FIER.PIPE..PtrIndexPayload.<- |
| b79a0 | 20 50 49 50 45 20 41 53 54 45 52 49 53 4b 3f 20 49 44 45 4e 54 49 46 49 45 52 20 28 43 4f 4d 4d | .PIPE.ASTERISK?.IDENTIFIER.(COMM |
| b79c0 | 41 20 49 44 45 4e 54 49 46 49 45 52 29 3f 20 50 49 50 45 0a 0a 0a 23 20 53 77 69 74 63 68 20 73 | A.IDENTIFIER)?.PIPE...#.Switch.s |
| b79e0 | 70 65 63 69 66 69 63 0a 53 77 69 74 63 68 50 72 6f 6e 67 20 26 6c 74 3b 2d 20 53 77 69 74 63 68 | pecific.SwitchProng.<-.Switch |
| b7a00 | 43 61 73 65 20 45 51 55 41 4c 52 41 52 52 4f 57 20 50 74 72 50 61 79 6c 6f 61 64 3f 20 41 73 73 | Case.EQUALRARROW.PtrPayload?.Ass |
| b7a20 | 69 67 6e 45 78 70 72 0a 0a 53 77 69 74 63 68 43 61 73 65 0a 20 20 20 20 26 6c 74 3b 2d 20 53 77 | ignExpr..SwitchCase.....<-.Sw |
| b7a40 | 69 74 63 68 49 74 65 6d 20 28 43 4f 4d 4d 41 20 53 77 69 74 63 68 49 74 65 6d 29 2a 20 43 4f 4d | itchItem.(COMMA.SwitchItem)*.COM |
| b7a60 | 4d 41 3f 0a 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f 65 6c 73 65 0a 0a 53 77 69 74 63 68 49 | MA?....../.KEYWORD_else..SwitchI |
| b7a80 | 74 65 6d 20 26 6c 74 3b 2d 20 45 78 70 72 20 28 44 4f 54 33 20 45 78 70 72 29 3f 0a 0a 23 20 4f | tem.<-.Expr.(DOT3.Expr)?..#.O |
| b7aa0 | 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 54 45 | perators.AssignOp.....<-.ASTE |
| b7ac0 | 52 49 53 4b 45 51 55 41 4c 0a 20 20 20 20 20 2f 20 53 4c 41 53 48 45 51 55 41 4c 0a 20 20 20 20 | RISKEQUAL....../.SLASHEQUAL..... |
| b7ae0 | 20 2f 20 50 45 52 43 45 4e 54 45 51 55 41 4c 0a 20 20 20 20 20 2f 20 50 4c 55 53 45 51 55 41 4c | ./.PERCENTEQUAL....../.PLUSEQUAL |
| b7b00 | 0a 20 20 20 20 20 2f 20 4d 49 4e 55 53 45 51 55 41 4c 0a 20 20 20 20 20 2f 20 4c 41 52 52 4f 57 | ....../.MINUSEQUAL....../.LARROW |
| b7b20 | 32 45 51 55 41 4c 0a 20 20 20 20 20 2f 20 52 41 52 52 4f 57 32 45 51 55 41 4c 0a 20 20 20 20 20 | 2EQUAL....../.RARROW2EQUAL...... |
| b7b40 | 2f 20 41 4d 50 45 52 53 41 4e 44 45 51 55 41 4c 0a 20 20 20 20 20 2f 20 43 41 52 45 54 45 51 55 | /.AMPERSANDEQUAL....../.CARETEQU |
| b7b60 | 41 4c 0a 20 20 20 20 20 2f 20 50 49 50 45 45 51 55 41 4c 0a 20 20 20 20 20 2f 20 41 53 54 45 52 | AL....../.PIPEEQUAL....../.ASTER |
| b7b80 | 49 53 4b 50 45 52 43 45 4e 54 45 51 55 41 4c 0a 20 20 20 20 20 2f 20 50 4c 55 53 50 45 52 43 45 | ISKPERCENTEQUAL....../.PLUSPERCE |
| b7ba0 | 4e 54 45 51 55 41 4c 0a 20 20 20 20 20 2f 20 4d 49 4e 55 53 50 45 52 43 45 4e 54 45 51 55 41 4c | NTEQUAL....../.MINUSPERCENTEQUAL |
| b7bc0 | 0a 20 20 20 20 20 2f 20 45 51 55 41 4c 0a 0a 43 6f 6d 70 61 72 65 4f 70 0a 20 20 20 20 26 6c 74 | ....../.EQUAL..CompareOp.....< |
| b7be0 | 3b 2d 20 45 51 55 41 4c 45 51 55 41 4c 0a 20 20 20 20 20 2f 20 45 58 43 4c 41 4d 41 54 49 4f 4e | ;-.EQUALEQUAL....../.EXCLAMATION |
| b7c00 | 4d 41 52 4b 45 51 55 41 4c 0a 20 20 20 20 20 2f 20 4c 41 52 52 4f 57 0a 20 20 20 20 20 2f 20 52 | MARKEQUAL....../.LARROW....../.R |
| b7c20 | 41 52 52 4f 57 0a 20 20 20 20 20 2f 20 4c 41 52 52 4f 57 45 51 55 41 4c 0a 20 20 20 20 20 2f 20 | ARROW....../.LARROWEQUAL....../. |
| b7c40 | 52 41 52 52 4f 57 45 51 55 41 4c 0a 0a 42 69 74 77 69 73 65 4f 70 0a 20 20 20 20 26 6c 74 3b 2d | RARROWEQUAL..BitwiseOp.....<- |
| b7c60 | 20 41 4d 50 45 52 53 41 4e 44 0a 20 20 20 20 20 2f 20 43 41 52 45 54 0a 20 20 20 20 20 2f 20 50 | .AMPERSAND....../.CARET....../.P |
| b7c80 | 49 50 45 0a 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f 6f 72 65 6c 73 65 0a 20 20 20 20 20 2f | IPE....../.KEYWORD_orelse....../ |
| b7ca0 | 20 4b 45 59 57 4f 52 44 5f 63 61 74 63 68 20 50 61 79 6c 6f 61 64 3f 0a 0a 42 69 74 53 68 69 66 | .KEYWORD_catch.Payload?..BitShif |
| b7cc0 | 74 4f 70 0a 20 20 20 20 26 6c 74 3b 2d 20 4c 41 52 52 4f 57 32 0a 20 20 20 20 20 2f 20 52 41 52 | tOp.....<-.LARROW2....../.RAR |
| b7ce0 | 52 4f 57 32 0a 0a 41 64 64 69 74 69 6f 6e 4f 70 0a 20 20 20 20 26 6c 74 3b 2d 20 50 4c 55 53 0a | ROW2..AdditionOp.....<-.PLUS. |
| b7d00 | 20 20 20 20 20 2f 20 4d 49 4e 55 53 0a 20 20 20 20 20 2f 20 50 4c 55 53 32 0a 20 20 20 20 20 2f | ...../.MINUS....../.PLUS2....../ |
| b7d20 | 20 50 4c 55 53 50 45 52 43 45 4e 54 0a 20 20 20 20 20 2f 20 4d 49 4e 55 53 50 45 52 43 45 4e 54 | .PLUSPERCENT....../.MINUSPERCENT |
| b7d40 | 0a 0a 4d 75 6c 74 69 70 6c 79 4f 70 0a 20 20 20 20 26 6c 74 3b 2d 20 50 49 50 45 32 0a 20 20 20 | ..MultiplyOp.....<-.PIPE2.... |
| b7d60 | 20 20 2f 20 41 53 54 45 52 49 53 4b 0a 20 20 20 20 20 2f 20 53 4c 41 53 48 0a 20 20 20 20 20 2f | ../.ASTERISK....../.SLASH....../ |
| b7d80 | 20 50 45 52 43 45 4e 54 0a 20 20 20 20 20 2f 20 41 53 54 45 52 49 53 4b 32 0a 20 20 20 20 20 2f | .PERCENT....../.ASTERISK2....../ |
| b7da0 | 20 41 53 54 45 52 49 53 4b 50 45 52 43 45 4e 54 0a 0a 50 72 65 66 69 78 4f 70 0a 20 20 20 20 26 | .ASTERISKPERCENT..PrefixOp.....& |
| b7dc0 | 6c 74 3b 2d 20 45 58 43 4c 41 4d 41 54 49 4f 4e 4d 41 52 4b 0a 20 20 20 20 20 2f 20 4d 49 4e 55 | lt;-.EXCLAMATIONMARK....../.MINU |
| b7de0 | 53 0a 20 20 20 20 20 2f 20 54 49 4c 44 45 0a 20 20 20 20 20 2f 20 4d 49 4e 55 53 50 45 52 43 45 | S....../.TILDE....../.MINUSPERCE |
| b7e00 | 4e 54 0a 20 20 20 20 20 2f 20 41 4d 50 45 52 53 41 4e 44 0a 20 20 20 20 20 2f 20 4b 45 59 57 4f | NT....../.AMPERSAND....../.KEYWO |
| b7e20 | 52 44 5f 74 72 79 0a 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f 61 77 61 69 74 0a 0a 50 72 65 | RD_try....../.KEYWORD_await..Pre |
| b7e40 | 66 69 78 54 79 70 65 4f 70 0a 20 20 20 20 26 6c 74 3b 2d 20 51 55 45 53 54 49 4f 4e 4d 41 52 4b | fixTypeOp.....<-.QUESTIONMARK |
| b7e60 | 0a 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f 61 6e 79 66 72 61 6d 65 20 4d 49 4e 55 53 52 41 | ....../.KEYWORD_anyframe.MINUSRA |
| b7e80 | 52 52 4f 57 0a 20 20 20 20 20 2f 20 41 72 72 61 79 54 79 70 65 53 74 61 72 74 20 28 42 79 74 65 | RROW....../.ArrayTypeStart.(Byte |
| b7ea0 | 41 6c 69 67 6e 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 | Align./.KEYWORD_const./.KEYWORD_ |
| b7ec0 | 76 6f 6c 61 74 69 6c 65 20 2f 20 4b 45 59 57 4f 52 44 5f 61 6c 6c 6f 77 7a 65 72 6f 29 2a 0a 20 | volatile./.KEYWORD_allowzero)*.. |
| b7ee0 | 20 20 20 20 2f 20 50 74 72 54 79 70 65 53 74 61 72 74 20 28 4b 45 59 57 4f 52 44 5f 61 6c 69 67 | ..../.PtrTypeStart.(KEYWORD_alig |
| b7f00 | 6e 20 4c 50 41 52 45 4e 20 45 78 70 72 20 28 43 4f 4c 4f 4e 20 49 4e 54 45 47 45 52 20 43 4f 4c | n.LPAREN.Expr.(COLON.INTEGER.COL |
| b7f20 | 4f 4e 20 49 4e 54 45 47 45 52 29 3f 20 52 50 41 52 45 4e 20 2f 20 4b 45 59 57 4f 52 44 5f 63 6f | ON.INTEGER)?.RPAREN./.KEYWORD_co |
| b7f40 | 6e 73 74 20 2f 20 4b 45 59 57 4f 52 44 5f 76 6f 6c 61 74 69 6c 65 20 2f 20 4b 45 59 57 4f 52 44 | nst./.KEYWORD_volatile./.KEYWORD |
| b7f60 | 5f 61 6c 6c 6f 77 7a 65 72 6f 29 2a 0a 0a 53 75 66 66 69 78 4f 70 0a 20 20 20 20 26 6c 74 3b 2d | _allowzero)*..SuffixOp.....<- |
| b7f80 | 20 4c 42 52 41 43 4b 45 54 20 45 78 70 72 20 28 44 4f 54 32 20 45 78 70 72 3f 29 3f 20 52 42 52 | .LBRACKET.Expr.(DOT2.Expr?)?.RBR |
| b7fa0 | 41 43 4b 45 54 0a 20 20 20 20 20 2f 20 44 4f 54 20 49 44 45 4e 54 49 46 49 45 52 0a 20 20 20 20 | ACKET....../.DOT.IDENTIFIER..... |
| b7fc0 | 20 2f 20 44 4f 54 41 53 54 45 52 49 53 4b 0a 20 20 20 20 20 2f 20 44 4f 54 51 55 45 53 54 49 4f | ./.DOTASTERISK....../.DOTQUESTIO |
| b7fe0 | 4e 4d 41 52 4b 0a 0a 46 6e 43 61 6c 6c 41 72 67 75 6d 65 6e 74 73 20 26 6c 74 3b 2d 20 4c 50 41 | NMARK..FnCallArguments.<-.LPA |
| b8000 | 52 45 4e 20 45 78 70 72 4c 69 73 74 20 52 50 41 52 45 4e 0a 0a 23 20 50 74 72 20 73 70 65 63 69 | REN.ExprList.RPAREN..#.Ptr.speci |
| b8020 | 66 69 63 0a 41 72 72 61 79 54 79 70 65 53 74 61 72 74 20 26 6c 74 3b 2d 20 4c 42 52 41 43 4b 45 | fic.ArrayTypeStart.<-.LBRACKE |
| b8040 | 54 20 45 78 70 72 3f 20 52 42 52 41 43 4b 45 54 0a 0a 50 74 72 54 79 70 65 53 74 61 72 74 0a 20 | T.Expr?.RBRACKET..PtrTypeStart.. |
| b8060 | 20 20 20 26 6c 74 3b 2d 20 41 53 54 45 52 49 53 4b 0a 20 20 20 20 20 2f 20 41 53 54 45 52 49 53 | ...<-.ASTERISK....../.ASTERIS |
| b8080 | 4b 32 0a 20 20 20 20 20 2f 20 50 54 52 55 4e 4b 4e 4f 57 4e 0a 20 20 20 20 20 2f 20 50 54 52 43 | K2....../.PTRUNKNOWN....../.PTRC |
| b80a0 | 0a 0a 23 20 43 6f 6e 74 61 69 6e 65 72 44 65 63 6c 20 73 70 65 63 69 66 69 63 0a 43 6f 6e 74 61 | ..#.ContainerDecl.specific.Conta |
| b80c0 | 69 6e 65 72 44 65 63 6c 41 75 74 6f 20 26 6c 74 3b 2d 20 43 6f 6e 74 61 69 6e 65 72 44 65 63 6c | inerDeclAuto.<-.ContainerDecl |
| b80e0 | 54 79 70 65 20 4c 42 52 41 43 45 20 43 6f 6e 74 61 69 6e 65 72 4d 65 6d 62 65 72 73 20 52 42 52 | Type.LBRACE.ContainerMembers.RBR |
| b8100 | 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.....<- |
| b8120 | 20 28 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 65 6e 75 6d 20 | .(KEYWORD_struct./.KEYWORD_enum. |
| b8140 | 2f 20 4b 45 59 57 4f 52 44 5f 6f 70 61 71 75 65 29 20 28 4c 50 41 52 45 4e 20 45 78 70 72 20 52 | /.KEYWORD_opaque).(LPAREN.Expr.R |
| b8160 | 50 41 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 | PAREN)?....../.KEYWORD_union.(LP |
| b8180 | 41 52 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 | AREN.(KEYWORD_enum.(LPAREN.Expr. |
| b81a0 | 52 50 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 | RPAREN)?./.Expr).RPAREN)?..#.Ali |
| b81c0 | 67 6e 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 | gnment.ByteAlign.<-.KEYWORD_a |
| b81e0 | 6c 69 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 | lign.LPAREN.Expr.RPAREN..#.Lists |
| b8200 | 0a 49 64 65 6e 74 69 66 69 65 72 4c 69 73 74 20 26 6c 74 3b 2d 20 28 49 44 45 4e 54 49 46 49 45 | .IdentifierList.<-.(IDENTIFIE |
| b8220 | 52 20 43 4f 4d 4d 41 29 2a 20 49 44 45 4e 54 49 46 49 45 52 3f 0a 0a 53 77 69 74 63 68 50 72 6f | R.COMMA)*.IDENTIFIER?..SwitchPro |
| b8240 | 6e 67 4c 69 73 74 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 | ngList.<-.(SwitchProng.COMMA) |
| b8260 | 2a 20 53 77 69 74 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 | *.SwitchProng?..AsmOutputList.&l |
| b8280 | 74 3b 2d 20 28 41 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 | t;-.(AsmOutputItem.COMMA)*.AsmOu |
| b82a0 | 74 70 75 74 49 74 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 | tputItem?..AsmInputList.<-.(A |
| b82c0 | 73 6d 49 6e 70 75 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 | smInputItem.COMMA)*.AsmInputItem |
| b82e0 | 3f 0a 0a 53 74 72 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 | ?..StringList.<-.(STRINGLITER |
| b8300 | 41 4c 20 43 4f 4d 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 | AL.COMMA)*.STRINGLITERAL?..Param |
| b8320 | 44 65 63 6c 4c 69 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 | DeclList.<-.(ParamDecl.COMMA) |
| b8340 | 2a 20 50 61 72 61 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 | *.ParamDecl?..ExprList.<-.(Ex |
| b8360 | 70 72 20 43 4f 4d 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 | pr.COMMA)*.Expr?..#.***.Tokens.* |
| b8380 | 2a 2a 0a 65 6f 66 20 26 6c 74 3b 2d 20 21 2e 0a 68 65 78 20 26 6c 74 3b 2d 20 5b 30 2d 39 61 2d | **.eof.<-.!..hex.<-.[0-9a- |
| b83a0 | 66 41 2d 46 5d 0a 63 68 61 72 5f 65 73 63 61 70 65 0a 20 20 20 20 26 6c 74 3b 2d 20 22 5c 5c 78 | fA-F].char_escape.....<-."\\x |
| b83c0 | 22 20 68 65 78 20 68 65 78 0a 20 20 20 20 20 2f 20 22 5c 5c 75 7b 22 20 68 65 78 2b 20 22 7d 22 | ".hex.hex....../."\\u{".hex+."}" |
| b83e0 | 0a 20 20 20 20 20 2f 20 22 5c 5c 22 20 5b 6e 72 5c 5c 74 27 22 5d 0a 63 68 61 72 5f 63 68 61 72 | ....../."\\".[nr\\t'"].char_char |
| b8400 | 0a 20 20 20 20 26 6c 74 3b 2d 20 63 68 61 72 5f 65 73 63 61 70 65 0a 20 20 20 20 20 2f 20 5b 5e | .....<-.char_escape....../.[^ |
| b8420 | 5c 5c 27 5c 6e 5d 0a 73 74 72 69 6e 67 5f 63 68 61 72 0a 20 20 20 20 26 6c 74 3b 2d 20 63 68 61 | \\'\n].string_char.....<-.cha |
| b8440 | 72 5f 65 73 63 61 70 65 0a 20 20 20 20 20 2f 20 5b 5e 5c 5c 22 5c 6e 5d 0a 0a 6c 69 6e 65 5f 63 | r_escape....../.[^\\"\n]..line_c |
| b8460 | 6f 6d 6d 65 6e 74 20 26 6c 74 3b 2d 20 27 2f 2f 27 5b 5e 5c 6e 5d 2a 0a 6c 69 6e 65 5f 73 74 72 | omment.<-.'//'[^\n]*.line_str |
| b8480 | 69 6e 67 20 26 6c 74 3b 2d 20 28 22 5c 5c 5c 5c 22 20 5b 5e 5c 6e 5d 2a 20 5b 20 5c 6e 5d 2a 29 | ing.<-.("\\\\".[^\n]*.[.\n]*) |
| b84a0 | 2b 0a 73 6b 69 70 20 26 6c 74 3b 2d 20 28 5b 20 5c 6e 5d 20 2f 20 6c 69 6e 65 5f 63 6f 6d 6d 65 | +.skip.<-.([.\n]./.line_comme |
| b84c0 | 6e 74 29 2a 0a 0a 43 48 41 52 5f 4c 49 54 45 52 41 4c 20 26 6c 74 3b 2d 20 22 27 22 20 63 68 61 | nt)*..CHAR_LITERAL.<-."'".cha |
| b84e0 | 72 5f 63 68 61 72 20 22 27 22 20 73 6b 69 70 0a 46 4c 4f 41 54 0a 20 20 20 20 26 6c 74 3b 2d 20 | r_char."'".skip.FLOAT.....<-. |
| b8500 | 22 30 78 22 20 68 65 78 2b 20 20 20 22 2e 22 20 68 65 78 2b 20 20 20 28 5b 70 50 5d 20 5b 2d 2b | "0x".hex+...".".hex+...([pP].[-+ |
| b8520 | 5d 3f 20 68 65 78 2b 29 3f 20 20 20 73 6b 69 70 0a 20 20 20 20 20 2f 20 20 20 20 20 20 5b 30 2d | ]?.hex+)?...skip....../......[0- |
| b8540 | 39 5d 2b 20 22 2e 22 20 5b 30 2d 39 5d 2b 20 28 5b 65 45 5d 20 5b 2d 2b 5d 3f 20 5b 30 2d 39 5d | 9]+.".".[0-9]+.([eE].[-+]?.[0-9] |
| b8560 | 2b 29 3f 20 73 6b 69 70 0a 20 20 20 20 20 2f 20 22 30 78 22 20 68 65 78 2b 20 20 20 22 2e 22 3f | +)?.skip....../."0x".hex+..."."? |
| b8580 | 20 5b 70 50 5d 20 5b 2d 2b 5d 3f 20 68 65 78 2b 20 20 20 73 6b 69 70 0a 20 20 20 20 20 2f 20 20 | .[pP].[-+]?.hex+...skip....../.. |
| b85a0 | 20 20 20 20 5b 30 2d 39 5d 2b 20 22 2e 22 3f 20 5b 65 45 5d 20 5b 2d 2b 5d 3f 20 5b 30 2d 39 5d | ....[0-9]+."."?.[eE].[-+]?.[0-9] |
| b85c0 | 2b 20 73 6b 69 70 0a 49 4e 54 45 47 45 52 0a 20 20 20 20 26 6c 74 3b 2d 20 22 30 62 22 20 5b 30 | +.skip.INTEGER.....<-."0b".[0 |
| b85e0 | 31 5d 2b 20 20 73 6b 69 70 0a 20 20 20 20 20 2f 20 22 30 6f 22 20 5b 30 2d 37 5d 2b 20 73 6b 69 | 1]+..skip....../."0o".[0-7]+.ski |
| b8600 | 70 0a 20 20 20 20 20 2f 20 22 30 78 22 20 68 65 78 2b 20 20 20 73 6b 69 70 0a 20 20 20 20 20 2f | p....../."0x".hex+...skip....../ |
| b8620 | 20 20 20 20 20 20 5b 30 2d 39 5d 2b 20 73 6b 69 70 0a 53 54 52 49 4e 47 4c 49 54 45 52 41 4c 53 | ......[0-9]+.skip.STRINGLITERALS |
| b8640 | 49 4e 47 4c 45 20 26 6c 74 3b 2d 20 22 5c 22 22 20 73 74 72 69 6e 67 5f 63 68 61 72 2a 20 22 5c | INGLE.<-."\"".string_char*."\ |
| b8660 | 22 22 20 73 6b 69 70 0a 53 54 52 49 4e 47 4c 49 54 45 52 41 4c 0a 20 20 20 20 26 6c 74 3b 2d 20 | "".skip.STRINGLITERAL.....<-. |
| b8680 | 53 54 52 49 4e 47 4c 49 54 45 52 41 4c 53 49 4e 47 4c 45 0a 20 20 20 20 20 2f 20 6c 69 6e 65 5f | STRINGLITERALSINGLE....../.line_ |
| b86a0 | 73 74 72 69 6e 67 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 6b 69 70 0a 49 44 45 4e | string.................skip.IDEN |
| b86c0 | 54 49 46 49 45 52 0a 20 20 20 20 26 6c 74 3b 2d 20 21 6b 65 79 77 6f 72 64 20 5b 41 2d 5a 61 2d | TIFIER.....<-.!keyword.[A-Za- |
| b86e0 | 7a 5f 5d 20 5b 41 2d 5a 61 2d 7a 30 2d 39 5f 5d 2a 20 73 6b 69 70 0a 20 20 20 20 20 2f 20 22 40 | z_].[A-Za-z0-9_]*.skip....../."@ |
| b8700 | 5c 22 22 20 73 74 72 69 6e 67 5f 63 68 61 72 2a 20 22 5c 22 22 20 20 20 20 20 20 20 20 20 20 20 | \"".string_char*."\""........... |
| b8720 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 6b 69 70 0a 42 55 49 4c 54 49 4e 49 44 45 | .................skip.BUILTINIDE |
| b8740 | 4e 54 49 46 49 45 52 20 26 6c 74 3b 2d 20 22 40 22 5b 41 2d 5a 61 2d 7a 5f 5d 5b 41 2d 5a 61 2d | NTIFIER.<-."@"[A-Za-z_][A-Za- |
| b8760 | 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 20 | z0-9_]*.skip...AMPERSAND........ |
| b8780 | 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 20 | ....<-.'&'......![=]..... |
| b87a0 | 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 2d | .skip.AMPERSANDEQUAL.......<- |
| b87c0 | 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 54 | .'&='...............skip.AST |
| b87e0 | 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 20 | ERISK.............<-.'*'..... |
| b8800 | 20 21 5b 2a 25 3d 5d 20 20 20 20 73 6b 69 70 0a 41 53 54 45 52 49 53 4b 32 20 20 20 20 20 20 20 | .![*%=]....skip.ASTERISK2....... |
| b8820 | 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 6b | .....<-.'**'...............sk |
| b8840 | 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 2a | ip.ASTERISKEQUAL........<-.'* |
| b8860 | 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 45 | ='...............skip.ASTERISKPE |
| b8880 | 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 20 | RCENT......<-.'*%'.....![=].. |
| b88a0 | 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 6c | ....skip.ASTERISKPERCENTEQUAL.&l |
| b88c0 | 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 43 41 52 45 | t;-.'*%='..............skip.CARE |
| b88e0 | 54 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 5e 27 20 20 20 20 20 20 | T................<-.'^'...... |
| b8900 | 21 5b 3d 5d 20 20 20 20 20 20 73 6b 69 70 0a 43 41 52 45 54 45 51 55 41 4c 20 20 20 20 20 20 20 | ![=]......skip.CARETEQUAL....... |
| b8920 | 20 20 20 20 26 6c 74 3b 2d 20 27 5e 3d 27 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 6b 69 | ....<-.'^='...............ski |
| b8940 | 70 0a 43 4f 4c 4f 4e 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 3a 27 | p.COLON................<-.':' |
| b8960 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 6b 69 70 0a 43 4f 4d 4d 41 20 20 20 20 20 20 | ................skip.COMMA...... |
| b8980 | 20 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 2c 27 20 20 20 20 20 20 20 20 20 20 20 20 20 | ..........<-.','............. |
| b89a0 | 20 20 20 73 6b 69 70 0a 44 4f 54 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 26 6c 74 | ...skip.DOT..................< |
| b89c0 | 3b 2d 20 27 2e 27 20 20 20 20 20 20 21 5b 2a 2e 3f 5d 20 20 20 20 73 6b 69 70 0a 44 4f 54 32 20 | ;-.'.'......![*.?]....skip.DOT2. |
| b89e0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 2e 2e 27 20 20 20 20 20 21 | ................<-.'..'.....! |
| b8a00 | 5b 2e 5d 20 20 20 20 20 20 73 6b 69 70 0a 44 4f 54 33 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | [.]......skip.DOT3.............. |
| b8a20 | 20 20 20 26 6c 74 3b 2d 20 27 2e 2e 2e 27 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 6b 69 70 | ...<-.'...'..............skip |
| b8a40 | 0a 44 4f 54 41 53 54 45 52 49 53 4b 20 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 2e 2a 27 | .DOTASTERISK..........<-.'.*' |
| b8a60 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 6b 69 70 0a 44 4f 54 51 55 45 53 54 49 4f 4e 4d | ...............skip.DOTQUESTIONM |
| b8a80 | 41 52 4b 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 2e 3f 27 20 20 20 20 20 20 20 20 20 20 20 20 20 | ARK......<-.'.?'............. |
| b8aa0 | 20 20 73 6b 69 70 0a 45 51 55 41 4c 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 26 6c 74 3b | ..skip.EQUAL................< |
| b8ac0 | 2d 20 27 3d 27 20 20 20 20 20 20 21 5b 26 67 74 3b 3d 5d 20 20 20 20 20 73 6b 69 70 0a 45 51 55 | -.'='......![>=].....skip.EQU |
| b8ae0 | 41 4c 45 51 55 41 4c 20 20 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 3d 3d 27 20 20 20 20 | ALEQUAL...........<-.'=='.... |
| b8b00 | 20 20 20 20 20 20 20 20 20 20 20 73 6b 69 70 0a 45 51 55 41 4c 52 41 52 52 4f 57 20 20 20 20 20 | ...........skip.EQUALRARROW..... |
| b8b20 | 20 20 20 20 20 26 6c 74 3b 2d 20 27 3d 26 67 74 3b 27 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | .....<-.'=>'.............. |
| b8b40 | 20 73 6b 69 70 0a 45 58 43 4c 41 4d 41 54 49 4f 4e 4d 41 52 4b 20 20 20 20 20 20 26 6c 74 3b 2d | .skip.EXCLAMATIONMARK......<- |
| b8b60 | 20 27 21 27 20 20 20 20 20 20 21 5b 3d 5d 20 20 20 20 20 20 73 6b 69 70 0a 45 58 43 4c 41 4d 41 | .'!'......![=]......skip.EXCLAMA |
| b8b80 | 54 49 4f 4e 4d 41 52 4b 45 51 55 41 4c 20 26 6c 74 3b 2d 20 27 21 3d 27 20 20 20 20 20 20 20 20 | TIONMARKEQUAL.<-.'!='........ |
| b8ba0 | 20 20 20 20 20 20 20 73 6b 69 70 0a 4c 41 52 52 4f 57 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | .......skip.LARROW.............. |
| b8bc0 | 20 26 6c 74 3b 2d 20 27 26 6c 74 3b 27 20 20 20 20 20 20 21 5b 26 6c 74 3b 3d 5d 20 20 20 20 20 | .<-.'<'......![<=]..... |
| b8be0 | 73 6b 69 70 0a 4c 41 52 52 4f 57 32 20 20 20 20 20 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 | skip.LARROW2..............<-. |
| b8c00 | 27 26 6c 74 3b 26 6c 74 3b 27 20 20 20 20 20 21 5b 3d 5d 20 20 20 20 20 20 73 6b 69 70 0a 4c 41 | '<<'.....![=]......skip.LA |
| b8c20 | 52 52 4f 57 32 45 51 55 41 4c 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 26 6c 74 3b 26 6c | RROW2EQUAL.........<-.'<&l |
| b8c40 | 74 3b 3d 27 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 6b 69 70 0a 4c 41 52 52 4f 57 45 51 55 | t;='..............skip.LARROWEQU |
| b8c60 | 41 4c 20 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 26 6c 74 3b 3d 27 20 20 20 20 20 20 20 | AL..........<-.'<='....... |
| b8c80 | 20 20 20 20 20 20 20 20 73 6b 69 70 0a 4c 42 52 41 43 45 20 20 20 20 20 20 20 20 20 20 20 20 20 | ........skip.LBRACE............. |
| b8ca0 | 20 20 26 6c 74 3b 2d 20 27 7b 27 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 6b 69 70 0a | ..<-.'{'................skip. |
| b8cc0 | 4c 42 52 41 43 4b 45 54 20 20 20 20 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 5b 27 20 20 | LBRACKET.............<-.'['.. |
| b8ce0 | 20 20 20 20 21 5b 2a 5d 20 20 20 20 20 20 73 6b 69 70 0a 4c 50 41 52 45 4e 20 20 20 20 20 20 20 | ....![*]......skip.LPAREN....... |
| b8d00 | 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 28 27 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ........<-.'('............... |
| b8d20 | 20 73 6b 69 70 0a 4d 49 4e 55 53 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d | .skip.MINUS................<- |
| b8d40 | 20 27 2d 27 20 20 20 20 20 20 21 5b 25 3d 26 67 74 3b 5d 20 20 20 20 73 6b 69 70 0a 4d 49 4e 55 | .'-'......![%=>]....skip.MINU |
| b8d60 | 53 45 51 55 41 4c 20 20 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 2d 3d 27 20 20 20 20 20 | SEQUAL...........<-.'-='..... |
| b8d80 | 20 20 20 20 20 20 20 20 20 20 73 6b 69 70 0a 4d 49 4e 55 53 50 45 52 43 45 4e 54 20 20 20 20 20 | ..........skip.MINUSPERCENT..... |
| b8da0 | 20 20 20 20 26 6c 74 3b 2d 20 27 2d 25 27 20 20 20 20 20 21 5b 3d 5d 20 20 20 20 20 20 73 6b 69 | ....<-.'-%'.....![=]......ski |
| b8dc0 | 70 0a 4d 49 4e 55 53 50 45 52 43 45 4e 54 45 51 55 41 4c 20 20 20 20 26 6c 74 3b 2d 20 27 2d 25 | p.MINUSPERCENTEQUAL....<-.'-% |
| b8de0 | 3d 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 | ='..............skip.MINUSRARROW |
| b8e00 | 20 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 | ..........<-.'->'......... |
| b8e20 | 20 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 | ......skip.PERCENT.............. |
| b8e40 | 26 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 | <-.'%'......![=]......skip.PE |
| b8e60 | 52 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 | RCENTEQUAL.........<-.'%='... |
| b8e80 | 20 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 | ............skip.PIPE........... |
| b8ea0 | 20 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 | ......<-.'|'......![|=].....s |
| b8ec0 | 6b 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 | kip.PIPE2................<-.' |
| b8ee0 | 7c 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 | ||'...............skip.PIPEEQUAL |
| b8f00 | 20 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 | ............<-.'|='.......... |
| b8f20 | 20 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 | .....skip.PLUS.................& |
| b8f40 | 6c 74 3b 2d 20 27 2b 27 20 20 20 20 20 20 21 5b 25 2b 3d 5d 20 20 20 20 73 6b 69 70 0a 50 4c 55 | lt;-.'+'......![%+=]....skip.PLU |
| b8f60 | 53 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 | S2................<-.'++'.... |
| b8f80 | 20 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 | ...........skip.PLUSEQUAL....... |
| b8fa0 | 20 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 | .....<-.'+='...............sk |
| b8fc0 | 69 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 | ip.PLUSPERCENT..........<-.'+ |
| b8fe0 | 25 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 | %'.....![=]......skip.PLUSPERCEN |
| b9000 | 54 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 | TEQUAL.....<-.'+%='.......... |
| b9020 | 20 20 20 20 73 6b 69 70 0a 50 54 52 43 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 26 6c | ....skip.PTRC.................&l |
| b9040 | 74 3b 2d 20 27 5b 2a 63 5d 27 20 20 20 20 20 20 20 20 20 20 20 20 20 73 6b 69 70 0a 50 54 52 55 | t;-.'[*c]'.............skip.PTRU |
| b9060 | 4e 4b 4e 4f 57 4e 20 20 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 5b 2a 5d 27 20 20 20 20 | NKNOWN...........<-.'[*]'.... |
| b9080 | 20 20 20 20 20 20 20 20 20 20 73 6b 69 70 0a 51 55 45 53 54 49 4f 4e 4d 41 52 4b 20 20 20 20 20 | ..........skip.QUESTIONMARK..... |
| b90a0 | 20 20 20 20 26 6c 74 3b 2d 20 27 3f 27 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 6b 69 | ....<-.'?'................ski |
| b90c0 | 70 0a 52 41 52 52 4f 57 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 26 67 | p.RARROW...............<-.'&g |
| b90e0 | 74 3b 27 20 20 20 20 20 20 21 5b 26 67 74 3b 3d 5d 20 20 20 20 20 73 6b 69 70 0a 52 41 52 52 4f | t;'......![>=].....skip.RARRO |
| b9100 | 57 32 20 20 20 20 20 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 26 67 74 3b 26 67 74 3b 27 | W2..............<-.'>>' |
| b9120 | 20 20 20 20 20 21 5b 3d 5d 20 20 20 20 20 20 73 6b 69 70 0a 52 41 52 52 4f 57 32 45 51 55 41 4c | .....![=]......skip.RARROW2EQUAL |
| b9140 | 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 26 67 74 3b 26 67 74 3b 3d 27 20 20 20 20 20 20 | .........<-.'>>='...... |
| b9160 | 20 20 20 20 20 20 20 20 73 6b 69 70 0a 52 41 52 52 4f 57 45 51 55 41 4c 20 20 20 20 20 20 20 20 | ........skip.RARROWEQUAL........ |
| b9180 | 20 20 26 6c 74 3b 2d 20 27 26 67 74 3b 3d 27 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 6b | ..<-.'>='...............sk |
| b91a0 | 69 70 0a 52 42 52 41 43 45 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 7d | ip.RBRACE...............<-.'} |
| b91c0 | 27 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 6b 69 70 0a 52 42 52 41 43 4b 45 54 20 20 | '................skip.RBRACKET.. |
| b91e0 | 20 20 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 5d 27 20 20 20 20 20 20 20 20 20 20 20 20 | ...........<-.']'............ |
| b9200 | 20 20 20 20 73 6b 69 70 0a 52 50 41 52 45 4e 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 26 6c | ....skip.RPAREN...............&l |
| b9220 | 74 3b 2d 20 27 29 27 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 6b 69 70 0a 53 45 4d 49 | t;-.')'................skip.SEMI |
| b9240 | 43 4f 4c 4f 4e 20 20 20 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 3b 27 20 20 20 20 20 20 | COLON............<-.';'...... |
| b9260 | 20 20 20 20 20 20 20 20 20 20 73 6b 69 70 0a 53 4c 41 53 48 20 20 20 20 20 20 20 20 20 20 20 20 | ..........skip.SLASH............ |
| b9280 | 20 20 20 20 26 6c 74 3b 2d 20 27 2f 27 20 20 20 20 20 20 21 5b 3d 5d 20 20 20 20 20 20 73 6b 69 | ....<-.'/'......![=]......ski |
| b92a0 | 70 0a 53 4c 41 53 48 45 51 55 41 4c 20 20 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 2f 3d | p.SLASHEQUAL...........<-.'/= |
| b92c0 | 27 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 6b 69 70 0a 54 49 4c 44 45 20 20 20 20 20 20 | '...............skip.TILDE...... |
| b92e0 | 20 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 7e 27 20 20 20 20 20 20 20 20 20 20 20 20 20 | ..........<-.'~'............. |
| b9300 | 20 20 20 73 6b 69 70 0a 0a 65 6e 64 5f 6f 66 5f 77 6f 72 64 20 26 6c 74 3b 2d 20 21 5b 61 2d 7a | ...skip..end_of_word.<-.![a-z |
| b9320 | 41 2d 5a 30 2d 39 5f 5d 20 73 6b 69 70 0a 4b 45 59 57 4f 52 44 5f 61 6c 69 67 6e 20 20 20 20 20 | A-Z0-9_].skip.KEYWORD_align..... |
| b9340 | 20 20 26 6c 74 3b 2d 20 27 61 6c 69 67 6e 27 20 20 20 20 20 20 20 65 6e 64 5f 6f 66 5f 77 6f 72 | ..<-.'align'.......end_of_wor |
| b9360 | 64 0a 4b 45 59 57 4f 52 44 5f 61 6c 6c 6f 77 7a 65 72 6f 20 20 20 26 6c 74 3b 2d 20 27 61 6c 6c | d.KEYWORD_allowzero...<-.'all |
| b9380 | 6f 77 7a 65 72 6f 27 20 20 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 61 6e | owzero'...end_of_word.KEYWORD_an |
| b93a0 | 64 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 61 6e 64 27 20 20 20 20 20 20 20 20 20 65 6e | d.........<-.'and'.........en |
| b93c0 | 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 61 6e 79 66 72 61 6d 65 20 20 20 20 26 6c | d_of_word.KEYWORD_anyframe....&l |
| b93e0 | 74 3b 2d 20 27 61 6e 79 66 72 61 6d 65 27 20 20 20 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 | t;-.'anyframe'....end_of_word.KE |
| b9400 | 59 57 4f 52 44 5f 61 6e 79 74 79 70 65 20 20 20 20 20 26 6c 74 3b 2d 20 27 61 6e 79 74 79 70 65 | YWORD_anytype.....<-.'anytype |
| b9420 | 27 20 20 20 20 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 61 73 6d 20 20 20 | '.....end_of_word.KEYWORD_asm... |
| b9440 | 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 61 73 6d 27 20 20 20 20 20 20 20 20 20 65 6e 64 5f 6f 66 | ......<-.'asm'.........end_of |
| b9460 | 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 61 73 79 6e 63 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 | _word.KEYWORD_async.......<-. |
| b9480 | 27 61 73 79 6e 63 27 20 20 20 20 20 20 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 | 'async'.......end_of_word.KEYWOR |
| b94a0 | 44 5f 61 77 61 69 74 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 61 77 61 69 74 27 20 20 20 20 20 | D_await.......<-.'await'..... |
| b94c0 | 20 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 62 72 65 61 6b 20 20 20 20 20 | ..end_of_word.KEYWORD_break..... |
| b94e0 | 20 20 26 6c 74 3b 2d 20 27 62 72 65 61 6b 27 20 20 20 20 20 20 20 65 6e 64 5f 6f 66 5f 77 6f 72 | ..<-.'break'.......end_of_wor |
| b9500 | 64 0a 4b 45 59 57 4f 52 44 5f 63 61 74 63 68 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 63 61 74 | d.KEYWORD_catch.......<-.'cat |
| b9520 | 63 68 27 20 20 20 20 20 20 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 63 6f | ch'.......end_of_word.KEYWORD_co |
| b9540 | 6d 70 74 69 6d 65 20 20 20 20 26 6c 74 3b 2d 20 27 63 6f 6d 70 74 69 6d 65 27 20 20 20 20 65 6e | mptime....<-.'comptime'....en |
| b9560 | 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 63 6f 6e 73 74 20 20 20 20 20 20 20 26 6c | d_of_word.KEYWORD_const.......&l |
| b9580 | 74 3b 2d 20 27 63 6f 6e 73 74 27 20 20 20 20 20 20 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 | t;-.'const'.......end_of_word.KE |
| b95a0 | 59 57 4f 52 44 5f 63 6f 6e 74 69 6e 75 65 20 20 20 20 26 6c 74 3b 2d 20 27 63 6f 6e 74 69 6e 75 | YWORD_continue....<-.'continu |
| b95c0 | 65 27 20 20 20 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 64 65 66 65 72 20 | e'....end_of_word.KEYWORD_defer. |
| b95e0 | 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 64 65 66 65 72 27 20 20 20 20 20 20 20 65 6e 64 5f 6f 66 | ......<-.'defer'.......end_of |
| b9600 | 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 65 6c 73 65 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 | _word.KEYWORD_else........<-. |
| b9620 | 27 65 6c 73 65 27 20 20 20 20 20 20 20 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 | 'else'........end_of_word.KEYWOR |
| b9640 | 44 5f 65 6e 75 6d 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 65 6e 75 6d 27 20 20 20 20 20 20 | D_enum........<-.'enum'...... |
| b9660 | 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 64 65 66 65 72 20 20 | ..end_of_word.KEYWORD_errdefer.. |
| b9680 | 20 20 26 6c 74 3b 2d 20 27 65 72 72 64 65 66 65 72 27 20 20 20 20 65 6e 64 5f 6f 66 5f 77 6f 72 | ..<-.'errdefer'....end_of_wor |
| b96a0 | 64 0a 4b 45 59 57 4f 52 44 5f 65 72 72 6f 72 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 65 72 72 | d.KEYWORD_error.......<-.'err |
| b96c0 | 6f 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 65 78 | or'.......end_of_word.KEYWORD_ex |
| b96e0 | 70 6f 72 74 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 65 78 70 6f 72 74 27 20 20 20 20 20 20 65 6e | port......<-.'export'......en |
| b9700 | 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 65 78 74 65 72 6e 20 20 20 20 20 20 26 6c | d_of_word.KEYWORD_extern......&l |
| b9720 | 74 3b 2d 20 27 65 78 74 65 72 6e 27 20 20 20 20 20 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 | t;-.'extern'......end_of_word.KE |
| b9740 | 59 57 4f 52 44 5f 66 61 6c 73 65 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 66 61 6c 73 65 27 20 | YWORD_false.......<-.'false'. |
| b9760 | 20 20 20 20 20 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 66 6e 20 20 20 20 | ......end_of_word.KEYWORD_fn.... |
| b9780 | 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 66 6e 27 20 20 20 20 20 20 20 20 20 20 65 6e 64 5f 6f 66 | ......<-.'fn'..........end_of |
| b97a0 | 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 66 6f 72 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 | _word.KEYWORD_for.........<-. |
| b97c0 | 27 66 6f 72 27 20 20 20 20 20 20 20 20 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 | 'for'.........end_of_word.KEYWOR |
| b97e0 | 44 5f 69 66 20 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 69 66 27 20 20 20 20 20 20 20 20 | D_if..........<-.'if'........ |
| b9800 | 20 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 69 6e 6c 69 6e 65 20 20 20 20 | ..end_of_word.KEYWORD_inline.... |
| b9820 | 20 20 26 6c 74 3b 2d 20 27 69 6e 6c 69 6e 65 27 20 20 20 20 20 20 65 6e 64 5f 6f 66 5f 77 6f 72 | ..<-.'inline'......end_of_wor |
| b9840 | 64 0a 4b 45 59 57 4f 52 44 5f 6e 6f 61 6c 69 61 73 20 20 20 20 20 26 6c 74 3b 2d 20 27 6e 6f 61 | d.KEYWORD_noalias.....<-.'noa |
| b9860 | 6c 69 61 73 27 20 20 20 20 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 6e 6f | lias'.....end_of_word.KEYWORD_no |
| b9880 | 73 75 73 70 65 6e 64 20 20 20 26 6c 74 3b 2d 20 27 6e 6f 73 75 73 70 65 6e 64 27 20 20 20 65 6e | suspend...<-.'nosuspend'...en |
| b98a0 | 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 6e 75 6c 6c 20 20 20 20 20 20 20 20 26 6c | d_of_word.KEYWORD_null........&l |
| b98c0 | 74 3b 2d 20 27 6e 75 6c 6c 27 20 20 20 20 20 20 20 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 | t;-.'null'........end_of_word.KE |
| b98e0 | 59 57 4f 52 44 5f 6f 70 61 71 75 65 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 6f 70 61 71 75 65 27 | YWORD_opaque......<-.'opaque' |
| b9900 | 20 20 20 20 20 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 6f 72 20 20 20 20 | ......end_of_word.KEYWORD_or.... |
| b9920 | 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 6f 72 27 20 20 20 20 20 20 20 20 20 20 65 6e 64 5f 6f 66 | ......<-.'or'..........end_of |
| b9940 | 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 6f 72 65 6c 73 65 20 20 20 20 20 20 26 6c 74 3b 2d 20 | _word.KEYWORD_orelse......<-. |
| b9960 | 27 6f 72 65 6c 73 65 27 20 20 20 20 20 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 | 'orelse'......end_of_word.KEYWOR |
| b9980 | 44 5f 70 61 63 6b 65 64 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 70 61 63 6b 65 64 27 20 20 20 20 | D_packed......<-.'packed'.... |
| b99a0 | 20 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 70 75 62 20 20 20 20 20 20 20 | ..end_of_word.KEYWORD_pub....... |
| b99c0 | 20 20 26 6c 74 3b 2d 20 27 70 75 62 27 20 20 20 20 20 20 20 20 20 65 6e 64 5f 6f 66 5f 77 6f 72 | ..<-.'pub'.........end_of_wor |
| b99e0 | 64 0a 4b 45 59 57 4f 52 44 5f 72 65 73 75 6d 65 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 72 65 73 | d.KEYWORD_resume......<-.'res |
| b9a00 | 75 6d 65 27 20 20 20 20 20 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 72 65 | ume'......end_of_word.KEYWORD_re |
| b9a20 | 74 75 72 6e 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 72 65 74 75 72 6e 27 20 20 20 20 20 20 65 6e | turn......<-.'return'......en |
| b9a40 | 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 6c 69 6e 6b 73 65 63 74 69 6f 6e 20 26 6c | d_of_word.KEYWORD_linksection.&l |
| b9a60 | 74 3b 2d 20 27 6c 69 6e 6b 73 65 63 74 69 6f 6e 27 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 | t;-.'linksection'.end_of_word.KE |
| b9a80 | 59 57 4f 52 44 5f 73 74 72 75 63 74 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 73 74 72 75 63 74 27 | YWORD_struct......<-.'struct' |
| b9aa0 | 20 20 20 20 20 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 73 75 73 70 65 6e | ......end_of_word.KEYWORD_suspen |
| b9ac0 | 64 20 20 20 20 20 26 6c 74 3b 2d 20 27 73 75 73 70 65 6e 64 27 20 20 20 20 20 65 6e 64 5f 6f 66 | d.....<-.'suspend'.....end_of |
| b9ae0 | 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 73 77 69 74 63 68 20 20 20 20 20 20 26 6c 74 3b 2d 20 | _word.KEYWORD_switch......<-. |
| b9b00 | 27 73 77 69 74 63 68 27 20 20 20 20 20 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 | 'switch'......end_of_word.KEYWOR |
| b9b20 | 44 5f 74 65 73 74 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 74 65 73 74 27 20 20 20 20 20 20 | D_test........<-.'test'...... |
| b9b40 | 20 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 74 68 72 65 61 64 6c 6f 63 61 | ..end_of_word.KEYWORD_threadloca |
| b9b60 | 6c 20 26 6c 74 3b 2d 20 27 74 68 72 65 61 64 6c 6f 63 61 6c 27 20 65 6e 64 5f 6f 66 5f 77 6f 72 | l.<-.'threadlocal'.end_of_wor |
| b9b80 | 64 0a 4b 45 59 57 4f 52 44 5f 74 72 75 65 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 74 72 75 | d.KEYWORD_true........<-.'tru |
| b9ba0 | 65 27 20 20 20 20 20 20 20 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 74 72 | e'........end_of_word.KEYWORD_tr |
| b9bc0 | 79 20 20 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 74 72 79 27 20 20 20 20 20 20 20 20 20 65 6e | y.........<-.'try'.........en |
| b9be0 | 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 75 6e 64 65 66 69 6e 65 64 20 20 20 26 6c | d_of_word.KEYWORD_undefined...&l |
| b9c00 | 74 3b 2d 20 27 75 6e 64 65 66 69 6e 65 64 27 20 20 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 0a 4b 45 | t;-.'undefined'...end_of_word.KE |
| b9c20 | 59 57 4f 52 44 5f 75 6e 69 6f 6e 20 20 20 20 20 20 20 26 6c 74 3b 2d 20 27 75 6e 69 6f 6e 27 20 | YWORD_union.......<-.'union'. |
| b9c40 | 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 72 65 61 63 | ......end_of_word.KEYWORD_unreac |
| b9c60 | 68 61 62 6c 65 20 26 6c 74 3b 2d 20 27 75 6e 72 65 61 63 68 61 62 6c 65 27 20 65 6e 64 5f 6f 66 | hable.<-.'unreachable'.end_of |
| b9c80 | 5f 77 6f 72 64 0a 4b 45 59 57 4f 52 44 5f 75 73 69 6e 67 6e 61 6d 65 73 70 61 63 65 20 26 6c 74 | _word.KEYWORD_usingnamespace.< |
| b9ca0 | 3b 2d 20 27 75 73 69 6e 67 6e 61 6d 65 73 70 61 63 65 27 20 65 6e 64 5f 6f 66 5f 77 6f 72 64 0a | ;-.'usingnamespace'.end_of_word. |
| b9cc0 | 4b 45 59 57 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 | KEYWORD_var.........<-.'var'. |
| b9ce0 | 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 76 6f 6c 61 | ........end_of_word.KEYWORD_vola |
| b9d00 | 74 69 6c 65 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 | tile....<-.'volatile'....end_ |
| b9d20 | 6f 66 5f 77 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 | of_word.KEYWORD_while.......< |
| b9d40 | 2d 20 27 77 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 | -.'while'.......end_of_word..key |
| b9d60 | 77 6f 72 64 20 26 6c 74 3b 2d 20 4b 45 59 57 4f 52 44 5f 61 6c 69 67 6e 20 2f 20 4b 45 59 57 4f | word.<-.KEYWORD_align./.KEYWO |
| b9d80 | 52 44 5f 61 6e 64 20 2f 20 4b 45 59 57 4f 52 44 5f 61 6e 79 66 72 61 6d 65 20 2f 20 4b 45 59 57 | RD_and./.KEYWORD_anyframe./.KEYW |
| b9da0 | 4f 52 44 5f 61 6e 79 74 79 70 65 0a 20 20 20 20 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f 61 | ORD_anytype........../.KEYWORD_a |
| b9dc0 | 6c 6c 6f 77 7a 65 72 6f 20 2f 20 4b 45 59 57 4f 52 44 5f 61 73 6d 20 2f 20 4b 45 59 57 4f 52 44 | llowzero./.KEYWORD_asm./.KEYWORD |
| b9de0 | 5f 61 73 79 6e 63 20 2f 20 4b 45 59 57 4f 52 44 5f 61 77 61 69 74 20 2f 20 4b 45 59 57 4f 52 44 | _async./.KEYWORD_await./.KEYWORD |
| b9e00 | 5f 62 72 65 61 6b 0a 20 20 20 20 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f 63 61 74 63 68 20 | _break........../.KEYWORD_catch. |
| b9e20 | 2f 20 4b 45 59 57 4f 52 44 5f 63 6f 6d 70 74 69 6d 65 20 2f 20 4b 45 59 57 4f 52 44 5f 63 6f 6e | /.KEYWORD_comptime./.KEYWORD_con |
| b9e40 | 73 74 20 2f 20 4b 45 59 57 4f 52 44 5f 63 6f 6e 74 69 6e 75 65 0a 20 20 20 20 20 20 20 20 20 2f | st./.KEYWORD_continue........../ |
| b9e60 | 20 4b 45 59 57 4f 52 44 5f 64 65 66 65 72 20 2f 20 4b 45 59 57 4f 52 44 5f 65 6c 73 65 20 2f 20 | .KEYWORD_defer./.KEYWORD_else./. |
| b9e80 | 4b 45 59 57 4f 52 44 5f 65 6e 75 6d 20 2f 20 4b 45 59 57 4f 52 44 5f 65 72 72 64 65 66 65 72 0a | KEYWORD_enum./.KEYWORD_errdefer. |
| b9ea0 | 20 20 20 20 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f 65 72 72 6f 72 20 2f 20 4b 45 59 57 4f | ........./.KEYWORD_error./.KEYWO |
| b9ec0 | 52 44 5f 65 78 70 6f 72 74 20 2f 20 4b 45 59 57 4f 52 44 5f 65 78 74 65 72 6e 20 2f 20 4b 45 59 | RD_export./.KEYWORD_extern./.KEY |
| b9ee0 | 57 4f 52 44 5f 66 61 6c 73 65 0a 20 20 20 20 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f 66 6e | WORD_false........../.KEYWORD_fn |
| b9f00 | 20 2f 20 4b 45 59 57 4f 52 44 5f 66 6f 72 20 2f 20 4b 45 59 57 4f 52 44 5f 69 66 20 2f 20 4b 45 | ./.KEYWORD_for./.KEYWORD_if./.KE |
| b9f20 | 59 57 4f 52 44 5f 69 6e 6c 69 6e 65 0a 20 20 20 20 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f | YWORD_inline........../.KEYWORD_ |
| b9f40 | 6e 6f 61 6c 69 61 73 20 2f 20 4b 45 59 57 4f 52 44 5f 6e 75 6c 6c 20 2f 20 4b 45 59 57 4f 52 44 | noalias./.KEYWORD_null./.KEYWORD |
| b9f60 | 5f 6f 70 61 71 75 65 20 2f 20 4b 45 59 57 4f 52 44 5f 6f 72 0a 20 20 20 20 20 20 20 20 20 2f 20 | _opaque./.KEYWORD_or........../. |
| b9f80 | 4b 45 59 57 4f 52 44 5f 6f 72 65 6c 73 65 20 2f 20 4b 45 59 57 4f 52 44 5f 70 61 63 6b 65 64 20 | KEYWORD_orelse./.KEYWORD_packed. |
| b9fa0 | 2f 20 4b 45 59 57 4f 52 44 5f 70 75 62 0a 20 20 20 20 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 | /.KEYWORD_pub........../.KEYWORD |
| b9fc0 | 5f 72 65 73 75 6d 65 20 2f 20 4b 45 59 57 4f 52 44 5f 72 65 74 75 72 6e 20 2f 20 4b 45 59 57 4f | _resume./.KEYWORD_return./.KEYWO |
| b9fe0 | 52 44 5f 6c 69 6e 6b 73 65 63 74 69 6f 6e 0a 20 20 20 20 20 20 20 20 20 2f 20 4b 45 59 57 4f 52 | RD_linksection........../.KEYWOR |
| ba000 | 44 5f 73 74 72 75 63 74 20 2f 20 4b 45 59 57 4f 52 44 5f 73 75 73 70 65 6e 64 0a 20 20 20 20 20 | D_struct./.KEYWORD_suspend...... |
| ba020 | 20 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f 73 77 69 74 63 68 20 2f 20 4b 45 59 57 4f 52 44 5f 74 | ..../.KEYWORD_switch./.KEYWORD_t |
| ba040 | 65 73 74 20 2f 20 4b 45 59 57 4f 52 44 5f 74 68 72 65 61 64 6c 6f 63 61 6c 20 2f 20 4b 45 59 57 | est./.KEYWORD_threadlocal./.KEYW |
| ba060 | 4f 52 44 5f 74 72 75 65 20 2f 20 4b 45 59 57 4f 52 44 5f 74 72 79 0a 20 20 20 20 20 20 20 20 20 | ORD_true./.KEYWORD_try.......... |
| ba080 | 2f 20 4b 45 59 57 4f 52 44 5f 75 6e 64 65 66 69 6e 65 64 20 2f 20 4b 45 59 57 4f 52 44 5f 75 6e | /.KEYWORD_undefined./.KEYWORD_un |
| ba0a0 | 69 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 | ion./.KEYWORD_unreachable....... |
| ba0c0 | 20 20 20 2f 20 4b 45 59 57 4f 52 44 5f 75 73 69 6e 67 6e 61 6d 65 73 70 61 63 65 20 2f 20 4b 45 | .../.KEYWORD_usingnamespace./.KE |
| ba0e0 | 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 6c 65 20 2f 20 4b | YWORD_var./.KEYWORD_volatile./.K |
| ba100 | 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 0a 20 20 20 20 20 20 | EYWORD_while</code></pre>....... |
| ba120 | 0a 20 20 20 20 20 20 3c 68 31 20 69 64 3d 22 5a 65 6e 22 3e 3c 61 20 68 72 65 66 3d 22 23 74 6f | .......<h1.id="Zen"><a.href="#to |
| ba140 | 63 2d 5a 65 6e 22 3e 5a 65 6e 3c 2f 61 3e 20 3c 61 20 63 6c 61 73 73 3d 22 68 64 72 22 20 68 72 | c-Zen">Zen</a>.<a.class="hdr".hr |
| ba160 | 65 66 3d 22 23 5a 65 6e 22 3e c2 a7 3c 2f 61 3e 3c 2f 68 31 3e 0a 0a 20 20 20 20 20 20 3c 75 6c | ef="#Zen">..</a></h1>........<ul |
| ba180 | 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 43 6f 6d 6d 75 6e 69 63 61 74 65 20 69 6e 74 65 6e 74 | >.........<li>Communicate.intent |
| ba1a0 | 20 70 72 65 63 69 73 65 6c 79 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 45 64 67 | .precisely.</li>.........<li>Edg |
| ba1c0 | 65 20 63 61 73 65 73 20 6d 61 74 74 65 72 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 | e.cases.matter.</li>.........<li |
| ba1e0 | 3e 46 61 76 6f 72 20 72 65 61 64 69 6e 67 20 63 6f 64 65 20 6f 76 65 72 20 77 72 69 74 69 6e 67 | >Favor.reading.code.over.writing |
| ba200 | 20 63 6f 64 65 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 4f 6e 6c 79 20 6f 6e 65 | .code.</li>.........<li>Only.one |
| ba220 | 20 6f 62 76 69 6f 75 73 20 77 61 79 20 74 6f 20 64 6f 20 74 68 69 6e 67 73 2e 3c 2f 6c 69 3e 0a | .obvious.way.to.do.things.</li>. |
| ba240 | 20 20 20 20 20 20 20 20 3c 6c 69 3e 52 75 6e 74 69 6d 65 20 63 72 61 73 68 65 73 20 61 72 65 20 | ........<li>Runtime.crashes.are. |
| ba260 | 62 65 74 74 65 72 20 74 68 61 6e 20 62 75 67 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c | better.than.bugs.</li>.........< |
| ba280 | 6c 69 3e 43 6f 6d 70 69 6c 65 20 65 72 72 6f 72 73 20 61 72 65 20 62 65 74 74 65 72 20 74 68 61 | li>Compile.errors.are.better.tha |
| ba2a0 | 6e 20 72 75 6e 74 69 6d 65 20 63 72 61 73 68 65 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 | n.runtime.crashes.</li>......... |
| ba2c0 | 3c 6c 69 3e 49 6e 63 72 65 6d 65 6e 74 61 6c 20 69 6d 70 72 6f 76 65 6d 65 6e 74 73 2e 3c 2f 6c | <li>Incremental.improvements.</l |
| ba2e0 | 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 41 76 6f 69 64 20 6c 6f 63 61 6c 20 6d 61 78 69 6d | i>.........<li>Avoid.local.maxim |
| ba300 | 75 6d 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 52 65 64 75 63 65 20 74 68 65 | ums.</li>.........<li>Reduce.the |
| ba320 | 20 61 6d 6f 75 6e 74 20 6f 6e 65 20 6d 75 73 74 20 72 65 6d 65 6d 62 65 72 2e 3c 2f 6c 69 3e 0a | .amount.one.must.remember.</li>. |
| ba340 | 20 20 20 20 20 20 20 20 3c 6c 69 3e 46 6f 63 75 73 20 6f 6e 20 63 6f 64 65 20 72 61 74 68 65 72 | ........<li>Focus.on.code.rather |
| ba360 | 20 74 68 61 6e 20 73 74 79 6c 65 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 52 65 | .than.style.</li>.........<li>Re |
| ba380 | 73 6f 75 72 63 65 20 61 6c 6c 6f 63 61 74 69 6f 6e 20 6d 61 79 20 66 61 69 6c 3b 20 72 65 73 6f | source.allocation.may.fail;.reso |
| ba3a0 | 75 72 63 65 20 64 65 61 6c 6c 6f 63 61 74 69 6f 6e 20 6d 75 73 74 20 73 75 63 63 65 65 64 2e 3c | urce.deallocation.must.succeed.< |
| ba3c0 | 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 4d 65 6d 6f 72 79 20 69 73 20 61 20 72 65 73 | /li>.........<li>Memory.is.a.res |
| ba3e0 | 6f 75 72 63 65 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 54 6f 67 65 74 68 65 72 | ource.</li>.........<li>Together |
| ba400 | 20 77 65 20 73 65 72 76 65 20 74 68 65 20 75 73 65 72 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | .we.serve.the.users.</li>....... |
| ba420 | 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 2f 64 69 76 3e 3c 2f 64 69 76 3e 0a | </ul>..............</div></div>. |
| ba440 | 20 20 20 20 3c 2f 64 69 76 3e 0a 20 20 3c 2f 62 6f 64 79 3e 0a 3c 2f 68 74 6d 6c 3e 0a 50 4b 01 | ....</div>...</body>.</html>.PK. |
| ba460 | 02 14 00 14 00 00 00 00 00 00 00 21 52 6f 61 ab 2c 14 00 00 00 14 00 00 00 08 00 00 00 00 00 00 | ...........!Roa.,............... |
| ba480 | 00 00 00 00 00 00 00 00 00 00 00 6d 69 6d 65 74 79 70 65 50 4b 01 02 14 00 14 00 00 00 00 00 00 | ...........mimetypePK........... |
| ba4a0 | 00 21 52 6f 92 d0 0a fc 00 00 00 fc 00 00 00 16 00 00 00 00 00 00 00 00 00 00 00 00 00 3a 00 00 | .!Ro.........................:.. |
| ba4c0 | 00 4d 45 54 41 2d 49 4e 46 2f 63 6f 6e 74 61 69 6e 65 72 2e 78 6d 6c 50 4b 01 02 14 00 14 00 00 | .META-INF/container.xmlPK....... |
| ba4e0 | 00 00 00 00 00 21 52 10 36 a9 69 a7 02 00 00 a7 02 00 00 11 00 00 00 00 00 00 00 00 00 00 00 00 | .....!R.6.i..................... |
| ba500 | 00 6a 01 00 00 4f 45 42 50 53 2f 63 6f 6e 74 65 6e 74 2e 6f 70 66 50 4b 01 02 14 00 14 00 00 00 | .j...OEBPS/content.opfPK........ |
| ba520 | 00 00 00 00 21 52 a5 56 90 d3 86 01 00 00 86 01 00 00 0f 00 00 00 00 00 00 00 00 00 00 00 00 00 | ....!R.V........................ |
| ba540 | 40 04 00 00 4f 45 42 50 53 2f 6e 61 76 2e 78 68 74 6d 6c 50 4b 01 02 14 00 14 00 00 00 00 00 00 | @...OEBPS/nav.xhtmlPK........... |
| ba560 | 00 21 52 e9 d4 57 20 3b 9e 0b 00 3b 9e 0b 00 11 00 00 00 00 00 00 00 00 00 00 00 00 00 f3 05 00 | .!R..W.;...;.................... |
| ba580 | 00 4f 45 42 50 53 2f 69 6e 64 65 78 2e 78 68 74 6d 6c 50 4b 05 06 00 00 00 00 05 00 05 00 35 01 | .OEBPS/index.xhtmlPK..........5. |
| ba5a0 | 00 00 5d a4 0b 00 00 00 | ..]..... |